Commit Graph

136 Commits

Author SHA1 Message Date
Róbert Kiss
bd49e26978 build: upgrade node to 8.8.1 (#471)
* build: upgrade to nodejs 8.8.1 and npm 5.5.1

* ci: upgrade the npm to the latest version in ci files

* build: remove duplication from clean script
2017-10-27 00:44:55 +02:00
Róbert Kiss
3ffaf918cd refactor(agent): Rename 'LongKeypressAction' to 'SecondaryRoleAction' (#462)
* refactor(agent): Rename 'LongKeypressAction' to 'SecondaryRoleAction'

* build: Change the build order of the modules

* fix(user-config): Fix hasSecondaryRoleAction() calculation

* fix(user-config): fix stylelint warnings
2017-10-18 21:16:56 +02:00
Róbert Kiss
a4056a8b8b feat(device): Add confirmation question before reset the configuration (#449)
* feat(device): Add confirmation question before reset the configuration

* feat(device): text change

* style: fix ts-lint error
2017-10-14 16:49:13 +02:00
Róbert Kiss
01b07a3ab7 feat(device): Wait for read user/hardware config until device is ready (#443)
* feat(device): Wait for read user/hardware config until device is ready

* ci: remove uhk-web test runners until not I will fix the chome on mac
2017-10-14 00:55:16 +02:00
Róbert Kiss
7baf9ad009 fix(user-config): Layer switcher key behaviour on non-base layers (#440)
* refactor(user-config): Optimize imports

* feat(user-config): Clone SwitchLayerAction to destination layer

* fix(user-config): Fix Keymap SwitchLayerAction normalization

* test(user-config): Remove spy callThrough

* build: Add uhk-common test runner

* build: delete test serialization files

* fix(user-config): Add missing "type": "basic" properties to the user-config.json

* test(user-config): Add KeyMacroAction tests

* fix(user-config): Delete SwitchLayerAction from non destination layer

* fix(user-config): Keymap normalize delete SwitchLayerActions from non base layers

* ci: turn of uhk-web tests

* ci: turn off karma watch mode in uhk-web test
2017-10-13 12:25:57 +02:00
József Farkas
50e0b64f6e Upgrade to ngrx v4 (#378)
* Update ngrx to v4

* package.json files

* release: Remove zadic references from release script

* fix(user-config): Fix user-config loading

* build: Lock package dependencies

* build: fix app version

* ci: remove build:test step

* fix(user-config): Revert switch-keymap-action modifications

* test(user-config): xit keystroke-action test

* fix(user-config): Fix user config loading

* fix(user-config): Fix user config loading
2017-10-08 18:31:16 +02:00
Róbert Kiss
9294bede50 feat(config): Read / write hardware configuration area (#423)
* add write-hca.js

* refactor: Move config serializer into the uhk-common package

* refactor: Move getTransferBuffers into the uhk-usb package

* refactor: delete obsoleted classes

* build: add uhk-usb build command

* refactor: move eeprom transfer to uhk-usb package

* fix: Fix write-hca.js

* feat: load hardware config from the device and

* style: fix ts lint errors

* build: fix rxjs dependency resolve

* test: Add jasmine unit test framework to the tet serializer

* fix(user-config): A "type": "basic", properties to the "keystroke" action types

* feat(usb): set chmod+x on write-hca.js

* feat(usb): Create USB logger

* style: Fix type

* build: Add chalk to dependencies.

Chalk will colorize the output
2017-09-26 16:57:27 +00:00
Attila Csanyi
c135aed7c9 Issue 388 - Device node (#397)
* 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
2017-09-10 22:56:03 +02:00
Róbert Kiss
be3e116130 build: Configure AOT (#394)
* build: Configure AOT

* build: Fix appveyor ENV settings
2017-08-26 00:56:28 +02:00
Róbert Kiss
0f558e4132 refactore: create feature modules (#387)
* 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
2017-08-19 20:02:17 +02:00
J??zsef Farkas
a2baedd53d Update dependencies
angular 4.3.4
2017-08-12 18:14:08 +02:00
Róbert Kiss
803ae8bb8f build: update dev dependencies (#370) 2017-07-24 22:17:25 +02:00
Róbert Kiss
a4d41f36d5 feat(app): Show add-on menu if start app with --addons arg (#359)
* refactor(store): Move app reducer from electron to shared module

* feat(app): Show add-on menu if start app with --addons arg

close: #351
2017-07-18 09:46:55 +02:00
József Farkas
3b0540f0d4 Update dependencies
* Angular 4.3.0
* Typescript 2.4.1
* ...
2017-07-15 11:02:29 +02:00
Attila Csanyi
6271802bbc Custom bootstrap tooltip with separate styles and directive (#345)
* Launch application scancodes (closes #328)

* simple directive to map bootstrap tooltip, add sample usage

* Custom bootstrap tooltip with separate styles and directive (closes #329)

* fix: linting issues

* fix: try to ignore stylelint for !important

* review: simple tooltip with html content and custom styles

* cleanup extra html tags for tooltip sample
2017-07-11 17:04:31 +02:00
József Farkas
e57a2f8637 Update dependencies (#344)
* Update angular to 4.2.6

* Update rxjs

* Update webpack

* Update type definitions

* Update tslint
2017-07-09 22:10:47 +02:00
József Farkas
d06892912f Update node and npm dependencies (#343)
node: >=8.1.0
npm: >=5.1.0
2017-07-09 12:09:15 +02:00
Róbert Kiss
1796e61f02 style: Fix styelint warning (#336)
Deprecation Warning: 'selector-no-id' has been deprecated and in 8.0 will be removed.
Instead use 'selector-max-id' with '0' as its primary option.
See: https://stylelint.io/user-guide/rules/selector-no-id/
2017-07-05 18:02:31 +02:00
Róbert Kiss
66525f7e84 style: Fix tslint warning: The 'no-use-before-declare' rule requires type checking (#335) 2017-07-05 18:00:37 +02:00
Róbert Kiss
c9a1e9853c feat(notification): display app errors, close #319 (#333)
* refactor(log): Refactor logging service

Removed the InjectionToken and changed LogService as default logger.
Finally ElectronLogService implements LogService directly.

* refactor: Optimize imports

* fix(app-update): Add missing rxjs imports

* style: Remove extra line

* refactor(store): Move app.actions.ts to shared module

* feat(notification): Add notification panel

Add angular-notifier to the app and created the ShowNotificationAction
to manage notifications

* style(notification): Fix tslint suggestion

* fix(notification): Add missing rxjs imports
2017-07-05 13:41:31 +02:00
Róbert Kiss
2df8f2ea54 Windows set up permission button #261 (#300)
* style(privilege): Fix typo 'excusive' -> 'exclusive'

* style(privilege): remove unused imports

* style(privilege): Fix typo 'initizalized$' -> 'initialized$'

* feat(log): Add application wide logger and error handler

It is help to debug electron install app on different device

* feat(privilege): Add windows USB driver installation

* build: I need the windows installer to test the app on windows

* fix(privilege): change wdi-simpler installer to zadic

* feat(log): change log level to debug in renderer process

* chore: Add author in package.json

* feat(privilege): Add privilege setter file as extraResource

* fix(log): Allowed transport level change only in main process

* fix(privilege): Fix app path calculation

* fix(privilege): Take the scriptPath between double quote

* build: revert the appveyor settings

* refactor(privilege): Extract vendor ID, product ID and MAX_PAYLOAD_SIZE into constants file

* refactor(privilege): Add both 32 and 64 bit zadics to extraResource of the installer

* feat(device): Add HID API communication protocol

* build: Fix npm install process

* build: Fix npm install process v2

* ci: Add libudev-dev as travis apt dependencies

* ci: Merge travis apt packages

* ci: remove node-hid from build:usb

* ci: try to fix linux build

* ci: node-hid use git repo

* ci: Add libusb-1.0-0-dev to travis apt dependency

* feat(device): Use logging service when communicate with the device

* build: create test build

* build: PUBLISH_FOR_PULL_REQUEST override

* build: revert TEST_BUILD to false

* build: node-hid use package version instead of git repo

* refactor: remove unused device store files from PR

* ci: Manage test build from environment variable

* fix(privilege): Set rules files dir base on dev or prod mode

* fix(log): Extract nested properties of the logged object

* feat(log): use util.inspect in logger service

* build: upgrade @types/node-hid -> 0.5.2

* fix(device): Add extra logging when try to open device.

* fix(device): log device description and not the device

* fix(device): add win specific write

* fix(device): add report id as first byte

* style(privilege): Reformat else and comment in privilege-checker component

* fix(privilege): Comment out windows branch
2017-07-02 20:33:28 +02:00
Róbert Kiss
121807a65a Add 'New update available' dialog to the electron version (#299)
* build(tsconfig): Rename root tsconfig.json -> tsconfig.base.json

* feat(auto-update): Add update dialog

When new update available than new message will visible of the top of the screen with 2 buttons 'Update' and 'Close'.
- Update button: Update the application (close and restart)
- Close button: Hide the updatePanel

* fix(auto-update): Add types to the event methods

* style: Add comma after SafeStylePipe import

I forgot add the comma when I rebased the branch

* fix(auto-update): Use electron-is-dev package to detect dev build

I removed the isDev() function from the shared util library because it is electron specific code.

* ci: Change osx_image: xcode8.3

Recommended after the last travis upgrade

* feat(auto-update): Add auto update settings page and save config save on electron platform

* ci: Fix osx image

* ci: Upgrade the electron builder -> 19.6.1

The builder now use the 2 package.json structure and build only
the necessary dependencies.
2017-06-22 14:22:54 +02:00
József Farkas
bd7add80cf Update dependencies
Angular 4.2.3
2017-06-17 10:56:12 +02:00
József Farkas
3ab808c61e Update electron-builder 2017-06-17 10:14:57 +02:00
Róbert Kiss
367bc42457 refactor(store): Refactor reducer initialisation (#298)
* refactor(store): Refactor reducer initialization

Refactored the ngrx/store reducer initialization, because hard to extend the original solution.
Bad practise the object initialization inside the components / services. The new solution use angular DI everywhere.
Separated the web and electron configuration store.

* Media key support (#294)

* Introduce type for KeystrokeAction

* Increment dataModelVersion

New property 'type' for KeystrokeAction

* Mapping for media keys

* Media key selecting support for KeypressTab

* refactor: Use more meaningful name (selectedScancodeOption)

* Store the keystroke type in key action type instead of a new field

* Fix NoneAction validation
Fixes #301

* Update electron version

It fixes electron build. The types are part of the electron package itself.

* Fix keystroke selection when additional field is given but no scancode (#306)

* Additional media keys with icons (#307)

* Add missing scancodes for media keystrokes

* Use icons for media keys

* Fix media scancodes.

* Create README.md

* build: upgrade electron and typescript version

Electron contains the typings files.

* refactor(store): Refactor reducer initialization

Refactored the ngrx/store reducer initialization, because hard to extend the original solution.
Bad practise the object initialization inside the components / services. The new solution use angular DI everywhere.
Separated the web and electron configuration store.

* build: upgrade electron and typescript version

Electron contains the typings files.

* fix(store): Remove the I prefix from IDataStorageRepositoryService

* fix(store): fix observer operator import

* fix(store): Add missing rxjs imports to user-config effect

* fix(store): Add missing rxjs imports to keymap effect
2017-06-13 14:41:40 +02:00
József Farkas
e2fef4fb3e Update electron version
It fixes electron build. The types are part of the electron package itself.
2017-06-11 16:16:27 +02:00
László Monda
e4a905d2e1 chore(release): 1.0.0 2017-06-05 23:44:16 +02:00
Róbert Kiss
f2b358ba96 Add electron-builder packager (#293)
* style(.editorconfig): Add json rule to editorconfig file

* build(build): Add application images

These images need to create installers
Contains images for:
- Win
- Mac
- Linux

* fix(device): Mac is not allow excusive right to use USB

* build(npm): Add standard-version script

* chore(device): Fix comment in UhkDeviceService

* chore(release): 1.0.0-alpha.1

* ci(travis): Change travis to c language and add osx, linux build matrix

* build(build): Windows icon size must be at least 256x256

* ci(appveyor): Add temporary GH_TOKEN to test msi installer

* build(tsconfig): Optimalize tsconfigs

Needed a tsconfig.json in the shared/src library because if it not exist the code builded after the second build on mac, and travis linux. Reproduce the error:
- Delete node_modules directory
- npm i
- npm run build
- error occured (ERROR in ./shared/src/polyfills.ts
Module build failed: error while parsing tsconfig.json)
Created a new tscfonfig.json in the project root folder.
The old config files extends this root configs.

* build(tsconfig): in tsconfig-electron-main not override module version

* chore(editorconfig): Delete json rule

* style: Reformat the main package.json to apply editorconfig style
2017-06-05 23:34:46 +02:00
Róbert Kiss
14392fe580 Add appveyor CI integration (#292)
* build(npm): Add .nvmrc file

* style(.editorconfig): Add json rule to editorconfig file

* build(npm): Add test srcipt command to the package.json file

* build(appveyor): Add appveyor CI

* build(appveyor): not npm upgrade to the latest version

* style(editorconfig): Revert json rule
2017-05-31 21:30:55 +02:00
József Farkas
a48b99ea05 Update dependencies 2017-04-23 21:26:40 +02:00
József Farkas
36d68d1a68 Update dependencies 2017-03-24 19:26:37 +01:00
J??zsef Farkas
f6744b737a Update angular to 4.0.0 2017-03-24 19:24:31 +01:00
József Farkas
0e8165a0b4 Update dependencies 2017-03-18 23:08:54 +01:00
József Farkas
242de59540 Use webpack watch mode when developing with electron
Closes #273
2017-03-12 20:10:41 +01:00
József Farkas
76a718c324 Update angular 2017-03-12 16:52:30 +01:00
József Farkas
d93409ca05 Update dependencies 2017-03-12 16:31:50 +01:00
József Farkas
9f18a2e975 Update electron 2017-03-12 15:50:30 +01:00
Farkas J??zsef
67c8b12eac Update to webpack 2.x 2017-03-12 15:47:09 +01:00
József Farkas
908c7e1e8c Fix building errors 2017-03-11 13:39:49 +01:00
József Farkas
971af0868c Linux permission setup
Closes #260
2017-03-11 12:23:02 +01:00
Farkas József
8aa2029f55 Add keymap downloading
Closes #199
2017-02-14 20:35:50 +01:00
Farkas József
61c20cd678 Improve npm scripts consistency
Closes #255
2017-02-13 23:10:22 +01:00
Farkas József
b883853a3c Update dependencies 2017-02-13 20:11:23 +01:00
Farkas József
bd05da4316 Replace template/styles with templateUrl/styleUrls 2017-02-05 21:39:18 +01:00
Farkas József
604e9cb2b0 Update dependencies 2017-02-05 20:38:46 +01:00
Farkas József
983eb72892 Seperate electron and web target building 2017-02-05 20:31:52 +01:00
Farkas József
517aed1b1c Transfer the layer/keymap/config with node-usb on shortcuts 2017-02-05 20:31:52 +01:00
Farkas József
c237d7ab09 Update dependencies 2017-01-19 23:14:19 +01:00
NejcZdovc
61bd915440 Version 1.0.0-alpha.1 2017-01-02 22:22:34 +01:00
Nejc Zdovc
28159ec9c0 Update ng2-select2 (#234)
Fixed init value for keypress tab 
Fixes #230
2016-12-25 16:47:57 +01:00