* Add nouislider
* Add LEDBrightnessComponent
* Move LEDBrightnessComponent to correct folder
* Add LED brightness page to side menu and device routes
* Add LEDBrightnessComponent to device index file
* Add LEDBrightnessComponent and NouisliderModule to shared module
* Remove ngModelChange from LEDBrightnessComponent until onChange is implemented
* Fix stylelint issue in led brightness component
* Add nouislider files to webpack.config.js
* Add adjusting LED brightness sliders with arrow keys
* Various tweaks to LEDBrightnessComponent
* Fix linting issues in LEDBrightnessComponent
* Allow "::ng-deep" pseudo element in stylelint config
* Add reading LED brightness settings from user configuration
* led-brightness save
* Move slider to its own wrapper component, add debounce for slider change events
* Small fixes to imports and exports of SliderWrapperComponent
* Fix slide component making change event when initial value is set
* Export SliderPips interface
* Fix LED Brightness slider pips
* Add support for value unit in SliderWrapperComponent
* Add a bit of space before LED brightness sliders so the slider handle doesn't go beyond the page in the min position
* Implement onDestroy, fix slider pip values and imports in LEDBrightnessComponent
* Fix imports, implement onDestroy in SliderWrapperComponent
* Move fix for slider pip value style to global styles file
* Reorder stylelint rules
* fix(device): check privilege on Linux
* device connected if also have permission
* fix rules sh path
* refactor permission detection
* fic hasPermission condition
* fix return value
* Add a number of properties to the user config that are related to mouse movement, LED brightness, data model versioning, and double tap switch layer timeout. Update firmware related version numbers.
* use default config if parse loaded config from device failed
* add asserts to the new user config fields
* separate user and hardware config parser
* fix indent
* fix user-config size read
* fix(device): fix IpcRenderer empty data messages
If IpcRenderer send null / undefined data as argument then IpcMain parse
it as empty array and not a NULL object
* fix else line break
* feat(device): Save user configuration length
* feat(device): Read only filled user configuration from EEPROM
* fix(agent): Close device connections and quit from app on Mac
* add device name to configuration
* feat(config): Rename user configuration
* style: fix tslint error
* test: Fix unit tests
* test: Add UserConfiguration device name test
* set device name if faild the user-config read from device
* feat(device): Remove the first 0 from USB[W] dump
* Remove the "Input the text you want to type with this macro action." sentence from the type text macro action.
* Move pointer and Scroll enhancement
* remove the extra vertical space above the mouse buttons
* macro delay enhancement
* not allow user select on a few elements
* fill the macro, keymap name the all space in the header