* feat(device): Add 'Save to keyboard' button
Created a 'Progress Button' that have 2 state in progress or not.
Able to set different text for different state:
- baseText for normal state
- progressText for in progress state
close: #377
* fix 'Save to keyboard' button visibility in web version
* remove success notification when save to keyboard success
* feat(notifier): Turn off auto hide of the notifier
* feat(device): Show saved state of 'Save to keyboard button'
* style: Format import in app.component.ts
* feat(device): Auto hide 'Save to Keyboard' button
* fix(device): Fix saving animation
* fix(device): Fix saving animation
* fix(device): Fix tslint
* Issue 388 - Device node (first version before review) (#388)
* fix: style linting issues
* review: revert the same padding size of the level 1 components on the sidebar
* feat(uhk-icon): Create uhk-icon set and fix USB device icon visibility in electron
* style: Use semicolon in js files
* add @angular/cli to the project
* increase nodejs version -> 8.2.1
* add lerna
* merge web and shared module
* move electron module into packages as uhk-agent
Electron agent functionality is not working
* delete symlinker
* convert private properties to public of component if used in html
* revert uhk-message.component
* fix component path
* fix the correct name of the uhk-message.component.scss
* building web and electron module
* delete uhk-renderer package
* handle device connect disconnect state
* add privilege detection
* fix set privilege functionality
* turn back download keymap functionality
* add bootstrap, select2 js and fix null pointer exception
* turn back upload data to keyboard
* fix send keymap
* fix test-serializer
* add missing package.json
* merging
* fix appveyor build
* fix linting
* turn back electron storage service
* commit the missing electron-datastorage-repository
* update node to 8.3.0 in .nvmrc and log node version in appveyor build
* set exact version number in appveyor build
* vertical align privilege and missing device components
* set back node version to 8 in appveyor
* move node-usb dependency from usb dir to root
maybe it is fix the appveyor build
* revert usb to root
* fix electron builder script
* fix electron builder script
* turn off electron devtools
* remove CTRL+U functionality
* fix CTRL+o
* fix lint error
* turnoff store freeze
* start process when got `Error: EPERM: operation not permitted` error
* move files from root usb dir -> packages/usb