Commit Graph

49 Commits

Author SHA1 Message Date
József Farkas
c9d8e735de Detect uhk without async delay (#356)
Fixes #353
2017-07-17 02:06:06 +02:00
József Farkas
c1f96ae820 Hide UpdateAvailableComponent in AppComponent (#355)
Fixes #350
2017-07-15 17:57:22 +02:00
Róbert Kiss
131fdea0c5 refactor: Create uhk-header component (#354)
Create a header wrapper component that will contains the undo
notification component.
2017-07-15 14:41:06 +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
67a55363da build(webpack): Fix the request of a dependency is an expression (#337)
* build(webpack): Fix the request of a dependency is an expression

Critical dependency: the request of a dependency is an expression

* style: Fix spaces after object literal braces
2017-07-05 18:35:56 +02:00
Róbert Kiss
f7212320e6 refactor(auto-update): Show notification messages with the angular-notifier (#334)
* 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

* refactor(app-update): Refactor app-update notification

* fix(auto-update): Add missing rxjs imports
2017-07-05 13:41:45 +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
6bc2bc8331 fix(device): Agent-electron should always read the configuration from the UHK over USB. (#327)
The feature will implement later.
2017-07-02 22:38:29 +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
Attila Csanyi
22a59160fb renaming config-serializer upper camel case file names to dash case (#320)
* renaming: config-serializer upper camel case file names to dash case (closes #305)

* fix: remove then add same source with lowercase

* fix: d.ts file with lowercase
2017-06-27 09:41:07 +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
ecd495b7c2 perf: Cache SvgModules
It will prevent them to be parsed multiple times.
2017-06-17 14:31:25 +02:00
József Farkas
aa38762c42 ANSI and ISO layout handling (#309)
* Read left and right modules

* Add missing styles

* Calculate indices from ids

* Skip missing keys

* Align key actions to match the order specified by the svg

* Fix svg key hover

* Fix key hover

Without using css important
2017-06-13 23:04: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
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
László Monda
c0768503da Set final USB VID and PID. 2017-05-23 23:16:53 +02:00
József Farkas
a48b99ea05 Update dependencies 2017-04-23 21:26:40 +02:00
József Farkas
32fffaaf2b Use png icon instead of ico format
Fixes #266
2017-03-24 20:59:15 +01:00
József Farkas
195a02bae2 Add missing BrowserAnimationsModule to AppModule of the electron build 2017-03-24 20:36:07 +01:00
József Farkas
d45551c4fd Fixing device open right after attach
We should find a proper fix instead of this hack.
2017-03-19 15:47:22 +01:00
József Farkas
b055750e01 Add missing redirect from privilege screen to the main screen 2017-03-19 15:45:20 +01:00
József Farkas
ca31e5bb4d Add new tslint rules and fix rule breaks 2017-03-18 23:43:32 +01:00
József Farkas
242de59540 Use webpack watch mode when developing with electron
Closes #273
2017-03-12 20:10:41 +01:00
Farkas J??zsef
67c8b12eac Update to webpack 2.x 2017-03-12 15:47:09 +01:00
József Farkas
971af0868c Linux permission setup
Closes #260
2017-03-11 12:23:02 +01:00
József Farkas
46fdc61df3 Redirection accross components based on UHK state 2017-03-11 12:04:07 +01:00
József Farkas
2c17074ead Fix typo 2017-02-27 19:41:05 +01:00
József Farkas
dcf7f3ea1d Add privilige screen component
Closes #259
2017-02-27 19:26:08 +01:00
József Farkas
d1dd80eaa8 refactor: UHK Message component 2017-02-27 19:03:26 +01:00
Farkas József
715b924be0 UHK detection
Closes #258
2017-02-18 19:04:35 +01:00
Farkas József
c2103c7d50 Revert "Fixes node-usb requiring from electron's renderer thread"
This reverts commit 846fd8941e.
2017-02-18 19:04:35 +01:00
Farkas József
d3459f7c70 Minor changes at CopyWebpackPlugin options 2017-02-18 13:24:13 +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
846fd8941e Fixes node-usb requiring from electron's renderer thread 2017-02-13 23:07:50 +01:00
Farkas József
d51726a62f Rename electron window title 2017-02-12 23:08:36 +01:00
Farkas József
25aa61295d Hide electron menubar
Closes #265
2017-02-12 23:01:03 +01:00
Farkas József
e87f64b5e3 Show github ribbon only in web build
Closes #264
2017-02-12 22:39:07 +01:00
Farkas József
cbb5ab765f Enable sending user configuration from every screen 2017-02-11 23:48:50 +01:00
Farkas József
0d95b20e70 Send configuration with ctrl + o
Missing request of #213
2017-02-11 22:52:04 +01:00
Farkas József
f1f8a8d64e Add the whole user configuration to the AppState
Closes #252
Fixes #219
2017-02-11 10:08:04 +01:00
Farkas József
4031509acd Add app icon to electron
Closes #134
2017-02-07 19:24:59 +01:00
Farkas József
bd05da4316 Replace template/styles with templateUrl/styleUrls 2017-02-05 21:39:18 +01:00
Farkas József
983eb72892 Seperate electron and web target building 2017-02-05 20:31:52 +01:00
Farkas József
3cc5077f13 Make node integration work in electron 2016-12-18 14:53:40 +01:00
Farkas József
858fa0d87c Experimental electron support fixes 2016-09-04 20:15:25 +02:00
Farkas József
e5accdc939 Add experimental electron support 2016-09-04 19:49:21 +02:00