From e37efdb9f300ea4a703f9979f4e37cc160a73bb0 Mon Sep 17 00:00:00 2001 From: Heo Sangmin Date: Sat, 19 May 2018 02:16:39 +0900 Subject: [PATCH 01/41] refactor: upgrade to NodeJS 8, Angular 6, CLI 6, Electron 2.0, RxJS 6.1 --- .angular-cli.json | 63 ---------------------- .travis.yml | 3 +- LICENSE.md | 2 +- README.md | 8 +-- angular.json | 135 ++++++++++++++++++++++++++++++++++++++++++++++++ karma.conf.js | 11 ++-- package.json | 72 +++++++++++++------------- src/favicon.512x512.png | Bin 0 -> 27119 bytes src/test.ts | 2 - src/tsconfig.spec.json | 3 +- tsconfig.json | 2 + tslint.json | 1 - 12 files changed, 187 insertions(+), 115 deletions(-) delete mode 100644 .angular-cli.json create mode 100644 angular.json create mode 100644 src/favicon.512x512.png diff --git a/.angular-cli.json b/.angular-cli.json deleted file mode 100644 index eb9f1c9..0000000 --- a/.angular-cli.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "$schema": "./node_modules/@angular/cli/lib/config/schema.json", - "project": { - "name": "angularelectron" - }, - "apps": [ - { - "root": "src", - "outDir": "dist", - "assets": [ - "assets", - "favicon.ico", - "favicon.png", - "favicon.icns", - "favicon.256x256.png" - ], - "index": "index.html", - "main": "main.ts", - "polyfills": "polyfills.ts", - "test": "test.ts", - "tsconfig": "tsconfig.app.json", - "testTsconfig": "tsconfig.spec.json", - "prefix": "app", - "styles": [ - "styles.scss" - ], - "scripts": [], - "environmentSource": "environments/environment.ts", - "environments": { - "dev": "environments/environment.ts", - "prod": "environments/environment.prod.ts" - } - } - ], - "e2e": { - "protractor": { - "config": "./protractor.conf.js" - } - }, - "lint": [ - { - "project": "src/tsconfig.app.json", - "exclude": "**/node_modules/**" - }, - { - "project": "src/tsconfig.spec.json", - "exclude": "**/node_modules/**" - }, - { - "project": "e2e/tsconfig.e2e.json", - "exclude": "**/node_modules/**" - } - ], - "test": { - "karma": { - "config": "./karma.conf.js" - } - }, - "defaults": { - "styleExt": "scss", - "component": {} - } -} diff --git a/.travis.yml b/.travis.yml index e3d2b94..e4e5e2f 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,6 @@ language: node_js node_js: - - "7" - - "6" + - 8 install: - npm install script: diff --git a/LICENSE.md b/LICENSE.md index 03a2105..3444227 100644 --- a/LICENSE.md +++ b/LICENSE.md @@ -1,4 +1,4 @@ -Copyright 2017 - Maxime GRIS +Copyright 2018 - Maxime GRIS Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: diff --git a/README.md b/README.md index 68650f4..5f6df46 100644 --- a/README.md +++ b/README.md @@ -15,10 +15,10 @@ Bootstrap and package your project with Angular 5(+) and Electron (Typescript + Currently runs with: -- Angular v5.2.5 -- Angular-CLI v1.6.4 -- Electron v1.8.2 -- Electron Builder v20.0.4 +- Angular v6.0.2 +- Angular-CLI v6.0.3 +- Electron v2.0.1 +- Electron Builder v20.13.4 With this sample, you can : diff --git a/angular.json b/angular.json new file mode 100644 index 0000000..63f082d --- /dev/null +++ b/angular.json @@ -0,0 +1,135 @@ +{ + "$schema": "./node_modules/@angular/cli/lib/config/schema.json", + "version": 1, + "newProjectRoot": "projects", + "projects": { + "angular-electron": { + "root": "", + "sourceRoot": "src", + "projectType": "application", + "architect": { + "build": { + "builder": "@angular-devkit/build-angular:browser", + "options": { + "outputPath": "dist", + "index": "src/index.html", + "main": "src/main.ts", + "tsConfig": "src/tsconfig.app.json", + "polyfills": "src/polyfills.ts", + "assets": [ + "src/assets", + "src/favicon.ico", + "src/favicon.png", + "src/favicon.icns", + "src/favicon.256x256.png", + "src/favicon.512x512.png" + ], + "styles": [ + "src/styles.scss" + ], + "scripts": [] + }, + "configurations": { + "production": { + "optimization": true, + "outputHashing": "all", + "sourceMap": false, + "extractCss": true, + "namedChunks": false, + "aot": true, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": true, + "fileReplacements": [] + } + } + }, + "serve": { + "builder": "@angular-devkit/build-angular:dev-server", + "options": { + "browserTarget": "angular-electron:build" + }, + "configurations": { + "production": { + "browserTarget": "angular-electron:build:production" + } + } + }, + "extract-i18n": { + "builder": "@angular-devkit/build-angular:extract-i18n", + "options": { + "browserTarget": "angular-electron:build" + } + }, + "test": { + "builder": "@angular-devkit/build-angular:karma", + "options": { + "main": "src/test.ts", + "karmaConfig": "./karma.conf.js", + "polyfills": "src/polyfills.ts", + "tsConfig": "src/tsconfig.spec.json", + "scripts": [], + "styles": [ + "src/styles.scss" + ], + "assets": [ + "src/assets", + "src/favicon.ico", + "src/favicon.png", + "src/favicon.icns", + "src/favicon.256x256.png", + "src/favicon.512x512.png" + ] + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "src/tsconfig.app.json", + "src/tsconfig.spec.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + } + } + }, + "angular-electron-e2e": { + "root": "", + "sourceRoot": "", + "projectType": "application", + "architect": { + "e2e": { + "builder": "@angular-devkit/build-angular:protractor", + "options": { + "protractorConfig": "./protractor.conf.js", + "devServerTarget": "angular-electron:serve" + } + }, + "lint": { + "builder": "@angular-devkit/build-angular:tslint", + "options": { + "tsConfig": [ + "e2e/tsconfig.e2e.json" + ], + "exclude": [ + "**/node_modules/**" + ] + } + } + } + } + }, + "defaultProject": "angular-electron", + "schematics": { + "@schematics/angular:component": { + "prefix": "app", + "styleext": "scss" + }, + "@schematics/angular:directive": { + "prefix": "app" + } + } +} diff --git a/karma.conf.js b/karma.conf.js index 84b4cd5..74605c8 100644 --- a/karma.conf.js +++ b/karma.conf.js @@ -4,27 +4,28 @@ module.exports = function (config) { config.set({ basePath: '', - frameworks: ['jasmine', '@angular/cli'], + frameworks: ['jasmine', '@angular-devkit/build-angular'], plugins: [ require('karma-jasmine'), require('karma-chrome-launcher'), require('karma-jasmine-html-reporter'), require('karma-coverage-istanbul-reporter'), - require('@angular/cli/plugins/karma') + require('@angular-devkit/build-angular/plugins/karma') ], client:{ clearContext: false // leave Jasmine Spec Runner output visible in browser }, files: [ - { pattern: './src/test.ts', watched: false } + ], preprocessors: { - './src/test.ts': ['@angular/cli'] + }, mime: { 'text/x-typescript': ['ts','tsx'] }, coverageIstanbulReporter: { + dir: require('path').join(__dirname, 'coverage'), reports: [ 'html', 'lcovonly' ], fixWebpackSourcePaths: true }, @@ -39,6 +40,6 @@ module.exports = function (config) { logLevel: config.LOG_INFO, autoWatch: true, browsers: ['Chrome'], - singleRun: false + singleRun: true }); }; diff --git a/package.json b/package.json index 9b5f7b0..efe7450 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,7 @@ }, "keywords": [ "angular", - "angular 5", + "angular 6", "electron", "typescript", "sass" @@ -21,7 +21,7 @@ "ng": "ng", "start": "node hooks/environments/set_profile.js && npm-run-all -p ng:serve electron:serve", "build": "node hooks/environments/set_profile.js && ng build && npm run electron:tsc", - "build:prod": "node hooks/environments/set_profile.js && ng build --prod && npm run electron:tsc", + "build:prod": "node hooks/environments/set_profile.js && ng build -c production && npm run electron:tsc", "ng:serve": "ng serve -o", "electron:tsc": "tsc main.ts", "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:tsc && electron . --serve", @@ -29,53 +29,53 @@ "electron:linux": "npm run build:prod && npx electron-builder build --linux", "electron:windows": "npm run build:prod && npx electron-builder build --windows", "electron:mac": "npm run build:prod && npx electron-builder build --mac", - "test": "karma start ./karma.conf.js", + "test": "ng test", "pree2e:build": "webdriver-manager update --gecko false && npm run ng serve", "pree2e:protractor": "wait-on http-get://localhost:4200/ && protractor ./protractor.conf.js", "e2e": "npm-run-all -p -r pree2e:build pree2e:protractor" }, "dependencies": {}, "devDependencies": { - "@angular/cli": "1.7.4", - "@angular/common": "5.2.9", - "@angular/compiler": "5.2.9", - "@angular/compiler-cli": "5.2.9", - "@angular/core": "5.2.9", - "@angular/forms": "5.2.9", - "@angular/http": "5.2.9", - "@angular/language-service": "5.2.9", - "@angular/platform-browser": "5.2.9", - "@angular/platform-browser-dynamic": "5.2.9", - "@angular/router": "5.2.9", - "@ngx-translate/core": "9.1.1", - "@ngx-translate/http-loader": "2.0.1", - "@types/core-js": "0.9.36", - "@types/jasmine": "2.8.6", + "@angular-devkit/build-angular": "0.6.3", + "@angular/cli": "6.0.3", + "@angular/common": "6.0.2", + "@angular/compiler": "6.0.2", + "@angular/compiler-cli": "6.0.2", + "@angular/core": "6.0.2", + "@angular/forms": "6.0.2", + "@angular/http": "6.0.2", + "@angular/language-service": "6.0.2", + "@angular/platform-browser": "6.0.2", + "@angular/platform-browser-dynamic": "6.0.2", + "@angular/router": "6.0.2", + "@ngx-translate/core": "10.0.1", + "@ngx-translate/http-loader": "3.0.1", + "@types/jasmine": "2.8.7", "@types/jasminewd2": "2.0.3", - "@types/node": "7.0.7", + "@types/node": "8.0.58", "codelyzer": "4.2.1", - "core-js": "2.5.5", - "cross-env": "5.1.4", + "core-js": "2.5.6", + "cross-env": "5.1.5", "dotenv": "5.0.1", - "electron": "1.8.4", - "electron-builder": "20.8.1", + "electron": "2.0.1", + "electron-builder": "20.13.4", "electron-reload": "1.2.2", - "fs-extra": "5.0.0", - "jasmine-core": "2.99.1", + "fs-extra": "6.0.1", + "jasmine-core": "3.1.0", "jasmine-spec-reporter": "4.2.1", - "karma": "2.0.0", + "karma": "2.0.2", "karma-chrome-launcher": "2.2.0", - "karma-coverage-istanbul-reporter": "1.4.2", - "karma-jasmine": "1.1.1", - "karma-jasmine-html-reporter": "0.2.2", - "npm-run-all": "4.1.2", - "npx": "10.0.1", - "protractor": "5.3.1", + "karma-coverage-istanbul-reporter": "2.0.0", + "karma-jasmine": "1.1.2", + "karma-jasmine-html-reporter": "1.1.0", + "npm-run-all": "4.1.3", + "npx": "10.2.0", + "protractor": "5.3.2", "replace": "0.3.0", - "rxjs": "5.5.8", - "ts-node": "4.1.0", - "tslint": "5.9.1", - "typescript": "2.6.2", + "rxjs": "6.1.0", + "ts-node": "6.0.3", + "tslint": "5.10.0", + "typescript": "2.7.2", "wait-on": "2.1.0", "webdriver-manager": "12.0.6", "zone.js": "0.8.26" diff --git a/src/favicon.512x512.png b/src/favicon.512x512.png new file mode 100644 index 0000000000000000000000000000000000000000..c513ddceb7db5a8bfd5b248bdd24c0ac61a32aab GIT binary patch literal 27119 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 PT Date: Sat, 19 May 2018 02:39:28 +0900 Subject: [PATCH 02/41] fix(travis): set progress to false (speed up npm) --- .travis.yml | 1 + tslint.json | 6 ------ 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/.travis.yml b/.travis.yml index e4e5e2f..df546e5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,6 +2,7 @@ language: node_js node_js: - 8 install: + - npm set progress=false - npm install script: - npm run build diff --git a/tslint.json b/tslint.json index d8d3956..ae58080 100644 --- a/tslint.json +++ b/tslint.json @@ -116,12 +116,6 @@ "check-separator", "check-type" ], - "directive-selector": [ - true, - "attribute", - "app", - "camelCase" - ], "component-selector": [ true, "element", From 7fbc68cd1fa65bb129f5b894c9e7976375ae6a80 Mon Sep 17 00:00:00 2001 From: Heo Sangmin Date: Sat, 19 May 2018 16:38:21 +0900 Subject: [PATCH 03/41] fix(test): create polyfills-test.ts for karma test & setup Travis CI --- .gitignore | 1 + .travis.yml | 9 +++++++++ angular.json | 9 ++++----- protractor.conf.js => e2e/protractor.conf.js | 2 +- package.json | 8 +++----- karma.conf.js => src/karma.conf.js | 18 ++---------------- src/polyfills-test.ts | 3 +++ src/tsconfig.app.json | 2 +- src/tsconfig.spec.json | 4 +--- 9 files changed, 25 insertions(+), 31 deletions(-) rename protractor.conf.js => e2e/protractor.conf.js (96%) rename karma.conf.js => src/karma.conf.js (70%) create mode 100644 src/polyfills-test.ts diff --git a/.gitignore b/.gitignore index e9ee344..6ae0912 100644 --- a/.gitignore +++ b/.gitignore @@ -38,6 +38,7 @@ package-lock.json # e2e /e2e/*.js +!/e2e/protractor.conf.js /e2e/*.map # System Files diff --git a/.travis.yml b/.travis.yml index df546e5..af3206b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,8 +1,17 @@ language: node_js node_js: - 8 +sudo: required +addons: + chrome: stable +before_script: + - export DISPLAY=:99.0 + - sh -e /etc/init.d/xvfb start install: - npm set progress=false - npm install script: + - ng lint + - npm run test + - npm run e2e - npm run build diff --git a/angular.json b/angular.json index 63f082d..9d87564 100644 --- a/angular.json +++ b/angular.json @@ -65,9 +65,9 @@ "builder": "@angular-devkit/build-angular:karma", "options": { "main": "src/test.ts", - "karmaConfig": "./karma.conf.js", - "polyfills": "src/polyfills.ts", + "polyfills": "src/polyfills-test.ts", "tsConfig": "src/tsconfig.spec.json", + "karmaConfig": "src/karma.conf.js", "scripts": [], "styles": [ "src/styles.scss" @@ -97,14 +97,13 @@ } }, "angular-electron-e2e": { - "root": "", - "sourceRoot": "", + "root": "e2e", "projectType": "application", "architect": { "e2e": { "builder": "@angular-devkit/build-angular:protractor", "options": { - "protractorConfig": "./protractor.conf.js", + "protractorConfig": "e2e/protractor.conf.js", "devServerTarget": "angular-electron:serve" } }, diff --git a/protractor.conf.js b/e2e/protractor.conf.js similarity index 96% rename from protractor.conf.js rename to e2e/protractor.conf.js index 8e53771..e46f106 100644 --- a/protractor.conf.js +++ b/e2e/protractor.conf.js @@ -7,7 +7,7 @@ exports.config = { allScriptsTimeout: 25000, delayBrowserTimeInSeconds: 0, specs: [ - './e2e/**/*.e2e-spec.ts' + './**/*.e2e-spec.ts' ], capabilities: { 'browserName': 'chrome', diff --git a/package.json b/package.json index efe7450..774f77a 100644 --- a/package.json +++ b/package.json @@ -30,9 +30,7 @@ "electron:windows": "npm run build:prod && npx electron-builder build --windows", "electron:mac": "npm run build:prod && npx electron-builder build --mac", "test": "ng test", - "pree2e:build": "webdriver-manager update --gecko false && npm run ng serve", - "pree2e:protractor": "wait-on http-get://localhost:4200/ && protractor ./protractor.conf.js", - "e2e": "npm-run-all -p -r pree2e:build pree2e:protractor" + "e2e": "ng e2e" }, "dependencies": {}, "devDependencies": { @@ -52,7 +50,7 @@ "@ngx-translate/http-loader": "3.0.1", "@types/jasmine": "2.8.7", "@types/jasminewd2": "2.0.3", - "@types/node": "8.0.58", + "@types/node": "~8.9.4", "codelyzer": "4.2.1", "core-js": "2.5.6", "cross-env": "5.1.5", @@ -68,7 +66,7 @@ "karma-coverage-istanbul-reporter": "2.0.0", "karma-jasmine": "1.1.2", "karma-jasmine-html-reporter": "1.1.0", - "npm-run-all": "4.1.3", + "npm-run-all": "^4.1.3", "npx": "10.2.0", "protractor": "5.3.2", "replace": "0.3.0", diff --git a/karma.conf.js b/src/karma.conf.js similarity index 70% rename from karma.conf.js rename to src/karma.conf.js index 74605c8..886ca1b 100644 --- a/karma.conf.js +++ b/src/karma.conf.js @@ -15,26 +15,12 @@ module.exports = function (config) { client:{ clearContext: false // leave Jasmine Spec Runner output visible in browser }, - files: [ - - ], - preprocessors: { - - }, - mime: { - 'text/x-typescript': ['ts','tsx'] - }, coverageIstanbulReporter: { - dir: require('path').join(__dirname, 'coverage'), + dir: require('path').join(__dirname, '../coverage'), reports: [ 'html', 'lcovonly' ], fixWebpackSourcePaths: true }, - angularCli: { - environment: 'dev' - }, - reporters: config.angularCli && config.angularCli.codeCoverage - ? ['progress', 'coverage-istanbul'] - : ['progress', 'kjhtml'], + reporters: ['progress', 'kjhtml'], port: 9876, colors: true, logLevel: config.LOG_INFO, diff --git a/src/polyfills-test.ts b/src/polyfills-test.ts new file mode 100644 index 0000000..332646f --- /dev/null +++ b/src/polyfills-test.ts @@ -0,0 +1,3 @@ +import 'core-js/es7/reflect'; +import 'zone.js/dist/zone'; + diff --git a/src/tsconfig.app.json b/src/tsconfig.app.json index d826715..c4929a6 100644 --- a/src/tsconfig.app.json +++ b/src/tsconfig.app.json @@ -7,7 +7,7 @@ "types": [] }, "exclude": [ - "test.ts", + "src/test.ts", "**/*.spec.ts", "dist", "app-builds", diff --git a/src/tsconfig.spec.json b/src/tsconfig.spec.json index d309241..88a02f2 100644 --- a/src/tsconfig.spec.json +++ b/src/tsconfig.spec.json @@ -3,8 +3,6 @@ "compilerOptions": { "outDir": "../out-tsc/spec", "module": "commonjs", - "target": "es5", - "baseUrl": "", "types": [ "jasmine", "node" @@ -12,7 +10,7 @@ }, "files": [ "test.ts", - "polyfills.ts" + "polyfills-test.ts" ], "include": [ "**/*.spec.ts", From c940037211e88e5fff1a911ab0188a5db51cdb6b Mon Sep 17 00:00:00 2001 From: Heo Sangmin Date: Sat, 19 May 2018 18:55:27 +0900 Subject: [PATCH 04/41] refactor(hooks): replace hooks to ng-cli fileReplacements logic --- README.md | 2 +- angular.json | 27 ++- hooks/environments/README.md | 196 --------------------- hooks/environments/app.config.ts.tpl | 23 --- hooks/environments/set_profile.js | 20 --- hooks/src/app/app.config.ts | 23 --- hooks/src/app/appconfig.ts | 23 --- package.json | 7 +- src/app/app.component.ts | 2 +- src/app/app.config.ts | 23 --- src/environments/environment.dev.ts | 2 +- src/environments/environment.prod.ts | 2 +- .../{environment.local.ts => environment.ts} | 2 +- src/main.ts | 2 +- 14 files changed, 36 insertions(+), 318 deletions(-) delete mode 100644 hooks/environments/README.md delete mode 100644 hooks/environments/app.config.ts.tpl delete mode 100644 hooks/environments/set_profile.js delete mode 100644 hooks/src/app/app.config.ts delete mode 100644 hooks/src/app/appconfig.ts delete mode 100644 src/app/app.config.ts rename src/environments/{environment.local.ts => environment.ts} (62%) diff --git a/README.md b/README.md index 5f6df46..3f24aa4 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ # Introduction -Bootstrap and package your project with Angular 5(+) and Electron (Typescript + SASS + Hot Reload) for creating Desktop applications. +Bootstrap and package your project with Angular 6(+) and Electron (Typescript + SASS + Hot Reload) for creating Desktop applications. Currently runs with: diff --git a/angular.json b/angular.json index 9d87564..df1d202 100644 --- a/angular.json +++ b/angular.json @@ -30,6 +30,23 @@ "scripts": [] }, "configurations": { + "dev": { + "optimization": false, + "outputHashing": "all", + "sourceMap": true, + "extractCss": true, + "namedChunks": false, + "aot": false, + "extractLicenses": true, + "vendorChunk": false, + "buildOptimizer": false, + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.dev.ts" + } + ] + }, "production": { "optimization": true, "outputHashing": "all", @@ -40,7 +57,12 @@ "extractLicenses": true, "vendorChunk": false, "buildOptimizer": true, - "fileReplacements": [] + "fileReplacements": [ + { + "replace": "src/environments/environment.ts", + "with": "src/environments/environment.prod.ts" + } + ] } } }, @@ -50,6 +72,9 @@ "browserTarget": "angular-electron:build" }, "configurations": { + "dev": { + "browserTarget": "angular-electron:build:dev" + }, "production": { "browserTarget": "angular-electron:build:production" } diff --git a/hooks/environments/README.md b/hooks/environments/README.md deleted file mode 100644 index 62e58b4..0000000 --- a/hooks/environments/README.md +++ /dev/null @@ -1,196 +0,0 @@ - -# Cordova Hooks - -Cordova Hooks represent special scripts which could be added by application and plugin developers or even by your own build system to customize cordova commands. Hook scripts could be defined by adding them to the special predefined folder (`/hooks`) or via configuration files (`config.xml` and `plugin.xml`) and run serially in the following order: -* Application hooks from `/hooks`; -* Application hooks from `config.xml`; -* Plugin hooks from `plugins/.../plugin.xml`. - -__Remember__: Make your scripts executable. - -__Note__: `.cordova/hooks` directory is also supported for backward compatibility, but we don't recommend using it as it is deprecated. - -## Supported hook types -The following hook types are supported: - - after_build/ - after_compile/ - after_docs/ - after_emulate/ - after_platform_add/ - after_platform_rm/ - after_platform_ls/ - after_plugin_add/ - after_plugin_ls/ - after_plugin_rm/ - after_plugin_search/ - after_plugin_install/ <-- Plugin hooks defined in plugin.xml are executed exclusively for a plugin being installed - after_prepare/ - after_run/ - after_serve/ - before_build/ - before_compile/ - before_docs/ - before_emulate/ - before_platform_add/ - before_platform_rm/ - before_platform_ls/ - before_plugin_add/ - before_plugin_ls/ - before_plugin_rm/ - before_plugin_search/ - before_plugin_install/ <-- Plugin hooks defined in plugin.xml are executed exclusively for a plugin being installed - before_plugin_uninstall/ <-- Plugin hooks defined in plugin.xml are executed exclusively for a plugin being uninstalled - before_prepare/ - before_run/ - before_serve/ - pre_package/ <-- Windows 8 and Windows Phone only. - -## Ways to define hooks -### Via '/hooks' directory -To execute custom action when corresponding hook type is fired, use hook type as a name for a subfolder inside 'hooks' directory and place you script file here, for example: - - # script file will be automatically executed after each build - hooks/after_build/after_build_custom_action.js - - -### Config.xml - -Hooks can be defined in project's `config.xml` using `` elements, for example: - - - - - - - - - - ... - - - - - - - ... - - -### Plugin hooks (plugin.xml) - -As a plugin developer you can define hook scripts using `` elements in a `plugin.xml` like that: - - - - - - - - ... - - -`before_plugin_install`, `after_plugin_install`, `before_plugin_uninstall` plugin hooks will be fired exclusively for the plugin being installed/uninstalled. - -## Script Interface - -### Javascript - -If you are writing hooks in Javascript you should use the following module definition: -```javascript -module.exports = function(context) { - ... -} -``` - -You can make your scipts async using Q: -```javascript -module.exports = function(context) { - var Q = context.requireCordovaModule('q'); - var deferral = new Q.defer(); - - setTimeout(function(){ - console.log('hook.js>> end'); - deferral.resolve(); - }, 1000); - - return deferral.promise; -} -``` - -`context` object contains hook type, executed script full path, hook options, command-line arguments passed to Cordova and top-level "cordova" object: -```json -{ - "hook": "before_plugin_install", - "scriptLocation": "c:\\script\\full\\path\\appBeforePluginInstall.js", - "cmdLine": "The\\exact\\command\\cordova\\run\\with arguments", - "opts": { - "projectRoot":"C:\\path\\to\\the\\project", - "cordova": { - "platforms": ["wp8"], - "plugins": ["com.plugin.withhooks"], - "version": "0.21.7-dev" - }, - "plugin": { - "id": "com.plugin.withhooks", - "pluginInfo": { - ... - }, - "platform": "wp8", - "dir": "C:\\path\\to\\the\\project\\plugins\\com.plugin.withhooks" - } - }, - "cordova": {...} -} - -``` -`context.opts.plugin` object will only be passed to plugin hooks scripts. - -You can also require additional Cordova modules in your script using `context.requireCordovaModule` in the following way: -```javascript -var Q = context.requireCordovaModule('q'); -``` - -__Note__: new module loader script interface is used for the `.js` files defined via `config.xml` or `plugin.xml` only. -For compatibility reasons hook files specified via `/hooks` folders are run via Node child_process spawn, see 'Non-javascript' section below. - -### Non-javascript - -Non-javascript scripts are run via Node child_process spawn from the project's root directory and have the root directory passes as the first argument. All other options are passed to the script using environment variables: - -* CORDOVA_VERSION - The version of the Cordova-CLI. -* CORDOVA_PLATFORMS - Comma separated list of platforms that the command applies to (e.g.: android, ios). -* CORDOVA_PLUGINS - Comma separated list of plugin IDs that the command applies to (e.g.: org.apache.cordova.file, org.apache.cordova.file-transfer) -* CORDOVA_HOOK - Path to the hook that is being executed. -* CORDOVA_CMDLINE - The exact command-line arguments passed to cordova (e.g.: cordova run ios --emulate) - -If a script returns a non-zero exit code, then the parent cordova command will be aborted. - -## Writing hooks - -We highly recommend writing your hooks using Node.js so that they are -cross-platform. Some good examples are shown here: - -[http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/](http://devgirl.org/2013/11/12/three-hooks-your-cordovaphonegap-project-needs/) - -Also, note that even if you are working on Windows, and in case your hook scripts aren't bat files (which is recommended, if you want your scripts to work in non-Windows operating systems) Cordova CLI will expect a shebang line as the first line for it to know the interpreter it needs to use to launch the script. The shebang line should match the following example: - - #!/usr/bin/env [name_of_interpreter_executable] diff --git a/hooks/environments/app.config.ts.tpl b/hooks/environments/app.config.ts.tpl deleted file mode 100644 index b445260..0000000 --- a/hooks/environments/app.config.ts.tpl +++ /dev/null @@ -1,23 +0,0 @@ -import { CONF_LOCAL } from '../environments/environment.local'; -import { CONF_DEV } from '../environments/environment.dev'; -import { CONF_PROD } from '../environments/environment.prod'; - -const ENV = 'PROFILE'; - -const LOCAL: String = 'local'; -const DEV: String = 'dev'; -const PROD: String = 'prod'; - -let conf: any; - -console.log('Env', ENV); - -if (ENV === PROD) { - conf = CONF_PROD; -} else if (ENV === DEV) { - conf = CONF_DEV; -} else { - conf = CONF_LOCAL; -} - -export const AppConfig = Object.assign({}, conf); diff --git a/hooks/environments/set_profile.js b/hooks/environments/set_profile.js deleted file mode 100644 index 58d6987..0000000 --- a/hooks/environments/set_profile.js +++ /dev/null @@ -1,20 +0,0 @@ -// require: -var replace = require("replace"); -var fs = require('fs-extra'); -var path = require('path'); - -// use: -var profile = process.env.ENV ? process.env.ENV : 'local'; - -console.log('Déplacement du template de fichier de détection de configuration ...'); -fs.copySync(path.resolve(__dirname,'./app.config.ts.tpl'), path.resolve(__dirname,'../../src/app/app.config.ts')); - -console.log('Application du profil : ' + profile); - -replace({ - regex: "'PROFILE'", - replacement: "'" + profile + "'", - paths: ['src/app/app.config.ts'], - recursive: true, - silent: true, -}); diff --git a/hooks/src/app/app.config.ts b/hooks/src/app/app.config.ts deleted file mode 100644 index b445260..0000000 --- a/hooks/src/app/app.config.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { CONF_LOCAL } from '../environments/environment.local'; -import { CONF_DEV } from '../environments/environment.dev'; -import { CONF_PROD } from '../environments/environment.prod'; - -const ENV = 'PROFILE'; - -const LOCAL: String = 'local'; -const DEV: String = 'dev'; -const PROD: String = 'prod'; - -let conf: any; - -console.log('Env', ENV); - -if (ENV === PROD) { - conf = CONF_PROD; -} else if (ENV === DEV) { - conf = CONF_DEV; -} else { - conf = CONF_LOCAL; -} - -export const AppConfig = Object.assign({}, conf); diff --git a/hooks/src/app/appconfig.ts b/hooks/src/app/appconfig.ts deleted file mode 100644 index b445260..0000000 --- a/hooks/src/app/appconfig.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { CONF_LOCAL } from '../environments/environment.local'; -import { CONF_DEV } from '../environments/environment.dev'; -import { CONF_PROD } from '../environments/environment.prod'; - -const ENV = 'PROFILE'; - -const LOCAL: String = 'local'; -const DEV: String = 'dev'; -const PROD: String = 'prod'; - -let conf: any; - -console.log('Env', ENV); - -if (ENV === PROD) { - conf = CONF_PROD; -} else if (ENV === DEV) { - conf = CONF_DEV; -} else { - conf = CONF_LOCAL; -} - -export const AppConfig = Object.assign({}, conf); diff --git a/package.json b/package.json index 774f77a..46e334d 100644 --- a/package.json +++ b/package.json @@ -19,9 +19,10 @@ "scripts": { "postinstall": "npx electron-builder install-app-deps", "ng": "ng", - "start": "node hooks/environments/set_profile.js && npm-run-all -p ng:serve electron:serve", - "build": "node hooks/environments/set_profile.js && ng build && npm run electron:tsc", - "build:prod": "node hooks/environments/set_profile.js && ng build -c production && npm run electron:tsc", + "start": "npm-run-all -p ng:serve electron:serve", + "build": "npm run electron:tsc && ng build", + "build:dev": "npm run build -- -c dev", + "build:prod": "npm run build -- -c production", "ng:serve": "ng serve -o", "electron:tsc": "tsc main.ts", "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:tsc && electron . --serve", diff --git a/src/app/app.component.ts b/src/app/app.component.ts index 3354da3..11b2b55 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -1,7 +1,7 @@ import { Component } from '@angular/core'; import { ElectronService } from './providers/electron.service'; import { TranslateService } from '@ngx-translate/core'; -import { AppConfig } from './app.config'; +import { AppConfig } from '../environments/environment'; @Component({ selector: 'app-root', diff --git a/src/app/app.config.ts b/src/app/app.config.ts deleted file mode 100644 index ae0e97c..0000000 --- a/src/app/app.config.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { CONF_LOCAL } from '../environments/environment.local'; -import { CONF_DEV } from '../environments/environment.dev'; -import { CONF_PROD } from '../environments/environment.prod'; - -const ENV = 'prod'; - -const LOCAL: String = 'local'; -const DEV: String = 'dev'; -const PROD: String = 'prod'; - -let conf: any; - -console.log('Env', ENV); - -if (ENV === PROD) { - conf = CONF_PROD; -} else if (ENV === DEV) { - conf = CONF_DEV; -} else { - conf = CONF_LOCAL; -} - -export const AppConfig = Object.assign({}, conf); diff --git a/src/environments/environment.dev.ts b/src/environments/environment.dev.ts index 3621f04..7953ebf 100644 --- a/src/environments/environment.dev.ts +++ b/src/environments/environment.dev.ts @@ -3,7 +3,7 @@ // `ng build --env=prod` then `index.prod.ts` will be used instead. // The list of which env maps to which file can be found in `.angular-cli.json`. -export const CONF_DEV = { +export const AppConfig = { production: false, environment: 'DEV' }; diff --git a/src/environments/environment.prod.ts b/src/environments/environment.prod.ts index 7f65d33..047b3fc 100644 --- a/src/environments/environment.prod.ts +++ b/src/environments/environment.prod.ts @@ -1,4 +1,4 @@ -export const CONF_PROD = { +export const AppConfig = { production: true, environment: 'PROD' }; diff --git a/src/environments/environment.local.ts b/src/environments/environment.ts similarity index 62% rename from src/environments/environment.local.ts rename to src/environments/environment.ts index 165339f..ca0b6a9 100644 --- a/src/environments/environment.local.ts +++ b/src/environments/environment.ts @@ -1,4 +1,4 @@ -export const CONF_LOCAL = { +export const AppConfig = { production: false, environment: 'LOCAL' }; diff --git a/src/main.ts b/src/main.ts index 989d9a3..6ad7b10 100644 --- a/src/main.ts +++ b/src/main.ts @@ -2,7 +2,7 @@ import { enableProdMode } from '@angular/core'; import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import { AppModule } from './app/app.module'; -import { AppConfig } from './app/app.config'; +import { AppConfig } from './environments/environment'; if (AppConfig.production) { enableProdMode(); From 05c9e399a778fcf1009dd81410f4213f7665dd6c Mon Sep 17 00:00:00 2001 From: Konrad Koch Date: Mon, 21 May 2018 08:44:08 +0200 Subject: [PATCH 05/41] The file is unused The file is replaced with the propper app.config.ts file in the same folder --- hooks/src/app/appconfig.ts | 23 ----------------------- 1 file changed, 23 deletions(-) delete mode 100644 hooks/src/app/appconfig.ts diff --git a/hooks/src/app/appconfig.ts b/hooks/src/app/appconfig.ts deleted file mode 100644 index b445260..0000000 --- a/hooks/src/app/appconfig.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { CONF_LOCAL } from '../environments/environment.local'; -import { CONF_DEV } from '../environments/environment.dev'; -import { CONF_PROD } from '../environments/environment.prod'; - -const ENV = 'PROFILE'; - -const LOCAL: String = 'local'; -const DEV: String = 'dev'; -const PROD: String = 'prod'; - -let conf: any; - -console.log('Env', ENV); - -if (ENV === PROD) { - conf = CONF_PROD; -} else if (ENV === DEV) { - conf = CONF_DEV; -} else { - conf = CONF_LOCAL; -} - -export const AppConfig = Object.assign({}, conf); From 35354b1025d98fd14d0566d3aa3112bb9c36fc91 Mon Sep 17 00:00:00 2001 From: Konrad Koch Date: Mon, 21 May 2018 08:46:41 +0200 Subject: [PATCH 06/41] Translation issue Removed french description and translated them to english --- hooks/environments/set_profile.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hooks/environments/set_profile.js b/hooks/environments/set_profile.js index 58d6987..ff858df 100644 --- a/hooks/environments/set_profile.js +++ b/hooks/environments/set_profile.js @@ -6,10 +6,10 @@ var path = require('path'); // use: var profile = process.env.ENV ? process.env.ENV : 'local'; -console.log('Déplacement du template de fichier de détection de configuration ...'); +console.log('Moving the configuration detection file template ...'); fs.copySync(path.resolve(__dirname,'./app.config.ts.tpl'), path.resolve(__dirname,'../../src/app/app.config.ts')); -console.log('Application du profil : ' + profile); +console.log('Application profile: ' + profile); replace({ regex: "'PROFILE'", From f19e6ee7131d43fd1b5da1a45f39a1833259236e Mon Sep 17 00:00:00 2001 From: Heo Sangmin Date: Thu, 24 May 2018 02:14:40 +0900 Subject: [PATCH 07/41] refactor: update electron, electron-builder to latest (2.0.2, 20.14.7) --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 46e334d..4466bae 100644 --- a/package.json +++ b/package.json @@ -56,8 +56,8 @@ "core-js": "2.5.6", "cross-env": "5.1.5", "dotenv": "5.0.1", - "electron": "2.0.1", - "electron-builder": "20.13.4", + "electron": "2.0.2", + "electron-builder": "20.14.7", "electron-reload": "1.2.2", "fs-extra": "6.0.1", "jasmine-core": "3.1.0", From 0cf6899a1d0d1324f32b2874b7d65d90b1112ca7 Mon Sep 17 00:00:00 2001 From: Herve Thouzard Date: Thu, 24 May 2018 17:23:30 +0200 Subject: [PATCH 08/41] Modify electron builder configuration to remove source code and tests --- electron-builder.json | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/electron-builder.json b/electron-builder.json index bf32a49..7e60e22 100644 --- a/electron-builder.json +++ b/electron-builder.json @@ -3,6 +3,22 @@ "directories": { "output": "app-builds" }, + "files": [ + "**/*", + "!*.ts", + "!*.code-workspace", + "!LICENSE.md", + "!package.json", + "!package-lock.json", + "!src/", + "!e2e/", + "!hooks/", + "!.angular-cli.json", + "!_config.yml", + "!karma.conf.js", + "!tsconfig.json", + "!tslint.json" + ], "win": { "icon": "dist", "target": [ From 06d6b0f8c5de703a9c7f5dcfc880a9673aa6eec8 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 10:38:53 +0200 Subject: [PATCH 09/41] version 3.4.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 9b5f7b0..e166518 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-electron", - "version": "3.3.0", + "version": "3.4.0", "description": "Angular 5 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { From 6dc97a1ea857b48a7a111768f58498c91a3572b5 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 10:40:15 +0200 Subject: [PATCH 10/41] ref/ remove contributors --- README.md | 6 ------ 1 file changed, 6 deletions(-) diff --git a/README.md b/README.md index 68650f4..ae274a2 100644 --- a/README.md +++ b/README.md @@ -85,12 +85,6 @@ You can desactivate "Developer Tools" by commenting `win.webContents.openDevTool Maybe you want to execute the application in the browser (WITHOUT HOT RELOAD ACTUALLY...) ? You can do it with `npm run ng:serve`. Note that you can't use Electron or NodeJS native libraries in this case. Please check `providers/electron.service.ts` to watch how conditional import of electron/Native libraries is done. -## Contributors - -[Maxime GRIS](https://github.com/maximegris) | -:---: -|[Maxime GRIS](https://github.com/maximegris)| - [build-badge]: https://travis-ci.org/maximegris/angular-electron.svg?branch=master [build]: https://travis-ci.org/maximegris/angular-electron.svg?branch=master [dependencyci-badge]: https://dependencyci.com/github/maximegris/angular-electron/badge From 7d5eeb34f70648af92948076239c0ec03ca7878d Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 10:46:21 +0200 Subject: [PATCH 11/41] misc/ update changelog --- CHANGELOG.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 68b9085..a305169 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,13 @@ ### Changelog All notable changes to this project will be documented in this file. +#### [Unreleased](https://github.com/maximegris/angular-electron/compare/3.3.0...3.4.0) +- Resolved Translation issue [`#186`](https://github.com/maximegris/angular-electron/pull/186) +- Removed unused file [`#185`](https://github.com/maximegris/angular-electron/pull/185) +- ref/ remove contributors [`6dc97a1`](https://github.com/maximegris/angular-electron/commit/6dc97a1ea857b48a7a111768f58498c91a3572b5) +- Translation issue [`35354b1`](https://github.com/maximegris/angular-electron/commit/35354b1025d98fd14d0566d3aa3112bb9c36fc91) +- version 3.4.0 [`06d6b0f`](https://github.com/maximegris/angular-electron/commit/06d6b0f8c5de703a9c7f5dcfc880a9673aa6eec8) + #### [3.3.0](https://github.com/maximegris/angular-electron/compare/3.2.0...3.3.0) - add Changelog file [`71083f1`](https://github.com/maximegris/angular-electron/commit/71083f12bf1e20225769af20a8a054ab8af4a6f9) - version 3.3.0 [`a88bda6`](https://github.com/maximegris/angular-electron/commit/a88bda66d83690b1064bcb11a0cb1bb893894caf) From 308ea9c014781aa65c712ea69a844e77c8e651ef Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 10:55:30 +0200 Subject: [PATCH 12/41] version 3.4.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e166518..25fa83d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-electron", - "version": "3.4.0", + "version": "3.4.1", "description": "Angular 5 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { From 70b359f1183efb0c5397364dc316af72f6948ef9 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 10:56:26 +0200 Subject: [PATCH 13/41] misc/ update changelog --- CHANGELOG.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index a305169..94f5e6b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,10 @@ ### Changelog All notable changes to this project will be documented in this file. +#### [Unreleased](https://github.com/maximegris/angular-electron/compare/3.4.0...3.4.1) +- Modify electron builder configuration to remove source code and tests [`#190`](https://github.com/maximegris/angular-electron/pull/190) +- version 3.4.1 [`308ea9c`](https://github.com/maximegris/angular-electron/commit/308ea9c014781aa65c712ea69a844e77c8e651ef) + #### [Unreleased](https://github.com/maximegris/angular-electron/compare/3.3.0...3.4.0) - Resolved Translation issue [`#186`](https://github.com/maximegris/angular-electron/pull/186) - Removed unused file [`#185`](https://github.com/maximegris/angular-electron/pull/185) From a7e33b646f3c01e0c3f342c39775f884e8391ac7 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 11:49:03 +0200 Subject: [PATCH 14/41] misc/ remove unused packages --- main.ts | 6 ------ package.json | 12 ++++-------- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/main.ts b/main.ts index 7a0b741..1389621 100644 --- a/main.ts +++ b/main.ts @@ -6,12 +6,6 @@ let win, serve; const args = process.argv.slice(1); serve = args.some(val => val === '--serve'); -try { - require('dotenv').config(); -} catch { - console.log('asar'); -} - function createWindow() { const electronScreen = screen; diff --git a/package.json b/package.json index 2ea4abd..78f3ea0 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "angular-electron", - "version": "3.4.1", - "description": "Angular 5 with Electron (Typescript + SASS + Hot Reload)", + "version": "4.0.0", + "description": "Angular 6 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { "name": "Maxime GRIS", @@ -51,15 +51,12 @@ "@ngx-translate/http-loader": "3.0.1", "@types/jasmine": "2.8.7", "@types/jasminewd2": "2.0.3", - "@types/node": "~8.9.4", + "@types/node": "8.9.4", "codelyzer": "4.2.1", "core-js": "2.5.6", - "cross-env": "5.1.5", - "dotenv": "5.0.1", "electron": "2.0.2", "electron-builder": "20.14.7", "electron-reload": "1.2.2", - "fs-extra": "6.0.1", "jasmine-core": "3.1.0", "jasmine-spec-reporter": "4.2.1", "karma": "2.0.2", @@ -67,10 +64,9 @@ "karma-coverage-istanbul-reporter": "2.0.0", "karma-jasmine": "1.1.2", "karma-jasmine-html-reporter": "1.1.0", - "npm-run-all": "^4.1.3", + "npm-run-all": "4.1.3", "npx": "10.2.0", "protractor": "5.3.2", - "replace": "0.3.0", "rxjs": "6.1.0", "ts-node": "6.0.3", "tslint": "5.10.0", From e7fac6ed1f415ef9c20439c9f0eac2bed0dc7766 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 12:18:33 +0200 Subject: [PATCH 15/41] ref/ upgrade angular to 6.0.3 --- README.md | 22 +++++++++++++++------- package.json | 20 ++++++++++---------- 2 files changed, 25 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index cbabbf9..e71585e 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ Bootstrap and package your project with Angular 6(+) and Electron (Typescript + Currently runs with: -- Angular v6.0.2 +- Angular v6.0.3 - Angular-CLI v6.0.3 - Electron v2.0.1 - Electron Builder v20.13.4 @@ -60,12 +60,6 @@ The application code is managed by `main.ts`. In this sample, the app runs with The Angular component contains an example of Electron and NodeJS native lib import. You can desactivate "Developer Tools" by commenting `win.webContents.openDevTools();` in `main.ts`. -## Manage your environment variables - -- Using local variables : `npm start` or `cross-env ENV=local npm start` -- Using development variables : `cross-env ENV=dev npm start` -- Using production variables : `cross-env ENV=prod npm start` - ## Included Commands |Command|Description| @@ -85,6 +79,20 @@ You can desactivate "Developer Tools" by commenting `win.webContents.openDevTool Maybe you want to execute the application in the browser (WITHOUT HOT RELOAD ACTUALLY...) ? You can do it with `npm run ng:serve`. Note that you can't use Electron or NodeJS native libraries in this case. Please check `providers/electron.service.ts` to watch how conditional import of electron/Native libraries is done. +## Error with nodejs third party packages + +However since Angular 6 does not provide an eject anymore, you can't configure your webpack config file to import node externals. + +An issue in [Angular repository](https://github.com/angular/angular-cli/issues/10681) is opened about this feature. + +Please have a look at [Stack Overflow Post workaround](https://stackoverflow.com/questions/50234196/after-updating-from-angular-5-to-6-i-keep-getting-the-error-cant-resolve-timer) or use branch [angular5](https://github.com/maximegris/angular-electron/tree/angular5) and continue to eject your configuration file. + +## Branch & Packages version + +- Angular 4 & Electron 1 : Branch [angular4](https://github.com/maximegris/angular-electron/tree/angular4) +- Angular 5 & Electron 1 : Branch [angular5](https://github.com/maximegris/angular-electron/tree/angular5) +- Angular 6 & Electron 2 : (master) + [build-badge]: https://travis-ci.org/maximegris/angular-electron.svg?branch=master [build]: https://travis-ci.org/maximegris/angular-electron.svg?branch=master [dependencyci-badge]: https://dependencyci.com/github/maximegris/angular-electron/badge diff --git a/package.json b/package.json index 78f3ea0..83702da 100644 --- a/package.json +++ b/package.json @@ -37,16 +37,16 @@ "devDependencies": { "@angular-devkit/build-angular": "0.6.3", "@angular/cli": "6.0.3", - "@angular/common": "6.0.2", - "@angular/compiler": "6.0.2", - "@angular/compiler-cli": "6.0.2", - "@angular/core": "6.0.2", - "@angular/forms": "6.0.2", - "@angular/http": "6.0.2", - "@angular/language-service": "6.0.2", - "@angular/platform-browser": "6.0.2", - "@angular/platform-browser-dynamic": "6.0.2", - "@angular/router": "6.0.2", + "@angular/common": "6.0.3", + "@angular/compiler": "6.0.3", + "@angular/compiler-cli": "6.0.3", + "@angular/core": "6.0.3", + "@angular/forms": "6.0.3", + "@angular/http": "6.0.3", + "@angular/language-service": "6.0.3", + "@angular/platform-browser": "6.0.3", + "@angular/platform-browser-dynamic": "6.0.3", + "@angular/router": "6.0.3", "@ngx-translate/core": "10.0.1", "@ngx-translate/http-loader": "3.0.1", "@types/jasmine": "2.8.7", From b7581223e8132547386a2f873ac775ba70821860 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 12:20:14 +0200 Subject: [PATCH 16/41] misc/ update Changelog --- CHANGELOG.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 94f5e6b..3024aeb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,11 +1,16 @@ ### Changelog All notable changes to this project will be documented in this file. -#### [Unreleased](https://github.com/maximegris/angular-electron/compare/3.4.0...3.4.1) +#### [4.0.0](https://github.com/maximegris/angular-electron/compare/3.4.1...4.0.0) +- Update to NodeJS 8, Angular 6, electron 2.0.2, RxJS 6.1 [`#182`](https://github.com/maximegris/angular-electron/pull/182) +- ref/ upgrade angular to 6.0.3 [`e7fac6e`](https://github.com/maximegris/angular-electron/commit/e7fac6ed1f415ef9c20439c9f0eac2bed0dc7766) +- misc/ remove unused packages [`a7e33b6`](https://github.com/maximegris/angular-electron/commit/a7e33b646f3c01e0c3f342c39775f884e8391ac7) + +#### [3.4.1](https://github.com/maximegris/angular-electron/compare/3.4.0...3.4.1) - Modify electron builder configuration to remove source code and tests [`#190`](https://github.com/maximegris/angular-electron/pull/190) - version 3.4.1 [`308ea9c`](https://github.com/maximegris/angular-electron/commit/308ea9c014781aa65c712ea69a844e77c8e651ef) -#### [Unreleased](https://github.com/maximegris/angular-electron/compare/3.3.0...3.4.0) +#### [3.4.0](https://github.com/maximegris/angular-electron/compare/3.3.0...3.4.0) - Resolved Translation issue [`#186`](https://github.com/maximegris/angular-electron/pull/186) - Removed unused file [`#185`](https://github.com/maximegris/angular-electron/pull/185) - ref/ remove contributors [`6dc97a1`](https://github.com/maximegris/angular-electron/commit/6dc97a1ea857b48a7a111768f58498c91a3572b5) From 1d48e32c73aed91b8a7cb6ad2329ffb9800b25a9 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 25 May 2018 12:41:12 +0200 Subject: [PATCH 17/41] update README --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index e71585e..6f1ce55 100644 --- a/README.md +++ b/README.md @@ -81,11 +81,11 @@ Note that you can't use Electron or NodeJS native libraries in this case. Please ## Error with nodejs third party packages -However since Angular 6 does not provide an eject anymore, you can't configure your webpack config file to import node externals. +Since Angular 6 does not provide an eject anymore, you can't configure your webpack config file to import node externals. An issue in [Angular repository](https://github.com/angular/angular-cli/issues/10681) is opened about this feature. -Please have a look at [Stack Overflow Post workaround](https://stackoverflow.com/questions/50234196/after-updating-from-angular-5-to-6-i-keep-getting-the-error-cant-resolve-timer) or use branch [angular5](https://github.com/maximegris/angular-electron/tree/angular5) and continue to eject your configuration file. +Please have a look at [Stack Overflow Post workaround](https://stackoverflow.com/questions/50234196/after-updating-from-angular-5-to-6-i-keep-getting-the-error-cant-resolve-timer) that may work in some cases. Or use branch [angular5](https://github.com/maximegris/angular-electron/tree/angular5) and continue to eject your configuration file. ## Branch & Packages version From 01842e27948cfa8a94ba5c093a75bb020b2c59f6 Mon Sep 17 00:00:00 2001 From: "JiaLi.Passion" Date: Wed, 13 Jun 2018 18:08:06 +0900 Subject: [PATCH 18/41] feat(zone): add zone-patch-electron to patch Electron native APIs in polyfills --- src/polyfills.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/polyfills.ts b/src/polyfills.ts index 4474f2f..96d5645 100644 --- a/src/polyfills.ts +++ b/src/polyfills.ts @@ -72,7 +72,12 @@ import 'core-js/es7/reflect'; */ import 'zone.js/dist/zone-mix'; // Included with Angular CLI. - +/** + * You can load zone-patch-electron to allow electron native APIs + * (Such as dialog/shortcut/menu/getFileIcon/shell/session/ + * desktopCapturer/onEvent) in ngZone + */ +// import 'zone.js/dist/zone-patch-electron'; // add zone-patch-electron to patch Electron native API /*************************************************************************************************** * APPLICATION IMPORTS From ec705ee30170a5edd21b3cfba4e3dd50a94d40df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=9F=E5=AD=90=E6=98=93?= Date: Tue, 26 Jun 2018 20:23:27 +0800 Subject: [PATCH 19/41] Allow Angular Using Electron Modules --- package.json | 2 +- postinstall.js | 15 +++++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) create mode 100644 postinstall.js diff --git a/package.json b/package.json index 83702da..1988634 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "main": "main.js", "private": true, "scripts": { - "postinstall": "npx electron-builder install-app-deps", + "postinstall": "npx electron-builder install-app-deps && node postinstall", "ng": "ng", "start": "npm-run-all -p ng:serve electron:serve", "build": "npm run electron:tsc && ng build", diff --git a/postinstall.js b/postinstall.js new file mode 100644 index 0000000..a1c8b5f --- /dev/null +++ b/postinstall.js @@ -0,0 +1,15 @@ +// Allow angular using electron module (native node modules) +const fs = require('fs'); +const f_angular = 'node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/webpack-configs/browser.js'; + +fs.readFile(f_angular, 'utf8', function (err, data) { + if (err) { + return console.log(err); + } + var result = data.replace(/target: "electron-renderer",/g, ''); + var result = result.replace(/return \{/g, 'return {target: "electron-renderer",'); + + fs.writeFile(f_angular, result, 'utf8', function (err) { + if (err) return console.log(err); + }); +}); \ No newline at end of file From 50657d01265ec5c9dddc957e3d3e5288b1220753 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Wed, 27 Jun 2018 22:09:53 +0200 Subject: [PATCH 20/41] ref/ postinstall web & electron --- README.md | 17 ++++------------- package.json | 46 +++++++++++++++++++++++++--------------------- postinstall-web.js | 16 ++++++++++++++++ postinstall.js | 1 + src/polyfills.ts | 14 +++++++------- 5 files changed, 53 insertions(+), 41 deletions(-) create mode 100644 postinstall-web.js diff --git a/README.md b/README.md index 6f1ce55..5e169ae 100644 --- a/README.md +++ b/README.md @@ -15,9 +15,8 @@ Bootstrap and package your project with Angular 6(+) and Electron (Typescript + Currently runs with: -- Angular v6.0.3 -- Angular-CLI v6.0.3 -- Electron v2.0.1 +- Angular v6.0.6 +- Electron v2.0.3 - Electron Builder v20.13.4 With this sample, you can : @@ -64,7 +63,7 @@ You can desactivate "Developer Tools" by commenting `win.webContents.openDevTool |Command|Description| |--|--| -|`npm run ng:serve`| Execute the app in the browser | +|`npm run ng:serve:web`| Execute the app in the browser | |`npm run build`| Build the app. Your built files are in the /dist folder. | |`npm run build:prod`| Build the app with Angular aot. Your built files are in the /dist folder. | |`npm run electron:local`| Builds your application and start electron @@ -76,17 +75,9 @@ You can desactivate "Developer Tools" by commenting `win.webContents.openDevTool ## Browser mode -Maybe you want to execute the application in the browser (WITHOUT HOT RELOAD ACTUALLY...) ? You can do it with `npm run ng:serve`. +Maybe you want to execute the application in the browser with hot reload ? You can do it with `npm run ng:serve:web`. Note that you can't use Electron or NodeJS native libraries in this case. Please check `providers/electron.service.ts` to watch how conditional import of electron/Native libraries is done. -## Error with nodejs third party packages - -Since Angular 6 does not provide an eject anymore, you can't configure your webpack config file to import node externals. - -An issue in [Angular repository](https://github.com/angular/angular-cli/issues/10681) is opened about this feature. - -Please have a look at [Stack Overflow Post workaround](https://stackoverflow.com/questions/50234196/after-updating-from-angular-5-to-6-i-keep-getting-the-error-cant-resolve-timer) that may work in some cases. Or use branch [angular5](https://github.com/maximegris/angular-electron/tree/angular5) and continue to eject your configuration file. - ## Branch & Packages version - Angular 4 & Electron 1 : Branch [angular4](https://github.com/maximegris/angular-electron/tree/angular4) diff --git a/package.json b/package.json index 1988634..1b67d32 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-electron", - "version": "4.0.0", + "version": "4.1.0", "description": "Angular 6 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { @@ -17,36 +17,40 @@ "main": "main.js", "private": true, "scripts": { - "postinstall": "npx electron-builder install-app-deps && node postinstall", + "postinstall": "npm run postinstall:electron && npx electron-builder install-app-deps", + "postinstall:web": "node postinstall-web", + "postinstall:electron": "node postinstall", "ng": "ng", - "start": "npm-run-all -p ng:serve electron:serve", - "build": "npm run electron:tsc && ng build", + "start": "npm run postinstall:electron && npm-run-all -p ng:serve electron:serve", + "build": "npm run postinstall:electron && npm run electron:tsc && ng build", "build:dev": "npm run build -- -c dev", "build:prod": "npm run build -- -c production", - "ng:serve": "ng serve -o", + "ng:serve": "ng serve", + "ng:serve:web": "npm run postinstall:web && ng serve -o", "electron:tsc": "tsc main.ts", "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:tsc && electron . --serve", "electron:local": "npm run build:prod && electron .", "electron:linux": "npm run build:prod && npx electron-builder build --linux", "electron:windows": "npm run build:prod && npx electron-builder build --windows", "electron:mac": "npm run build:prod && npx electron-builder build --mac", - "test": "ng test", - "e2e": "ng e2e" + "test": "npm run postinstall:web && ng test", + "e2e": "npm run postinstall:web && ng e2e" + }, + "dependencies": { }, - "dependencies": {}, "devDependencies": { "@angular-devkit/build-angular": "0.6.3", - "@angular/cli": "6.0.3", - "@angular/common": "6.0.3", - "@angular/compiler": "6.0.3", - "@angular/compiler-cli": "6.0.3", - "@angular/core": "6.0.3", - "@angular/forms": "6.0.3", - "@angular/http": "6.0.3", - "@angular/language-service": "6.0.3", - "@angular/platform-browser": "6.0.3", - "@angular/platform-browser-dynamic": "6.0.3", - "@angular/router": "6.0.3", + "@angular/cli": "6.0.6", + "@angular/common": "6.0.6", + "@angular/compiler": "6.0.6", + "@angular/compiler-cli": "6.0.6", + "@angular/core": "6.0.6", + "@angular/forms": "6.0.6", + "@angular/http": "6.0.6", + "@angular/language-service": "6.0.6", + "@angular/platform-browser": "6.0.6", + "@angular/platform-browser-dynamic": "6.0.6", + "@angular/router": "6.0.6", "@ngx-translate/core": "10.0.1", "@ngx-translate/http-loader": "3.0.1", "@types/jasmine": "2.8.7", @@ -54,7 +58,7 @@ "@types/node": "8.9.4", "codelyzer": "4.2.1", "core-js": "2.5.6", - "electron": "2.0.2", + "electron": "2.0.3", "electron-builder": "20.14.7", "electron-reload": "1.2.2", "jasmine-core": "3.1.0", @@ -68,7 +72,7 @@ "npx": "10.2.0", "protractor": "5.3.2", "rxjs": "6.1.0", - "ts-node": "6.0.3", + "ts-node": "6.0.6", "tslint": "5.10.0", "typescript": "2.7.2", "wait-on": "2.1.0", diff --git a/postinstall-web.js b/postinstall-web.js new file mode 100644 index 0000000..7dce764 --- /dev/null +++ b/postinstall-web.js @@ -0,0 +1,16 @@ +// Allow angular using electron module (native node modules) +const fs = require('fs'); +const f_angular = 'node_modules/@angular-devkit/build-angular/src/angular-cli-files/models/webpack-configs/browser.js'; + +fs.readFile(f_angular, 'utf8', function (err, data) { + if (err) { + return console.log(err); + } + var result = data.replace(/target: "electron-renderer",/g, ''); + var result = result.replace(/target: "web",/g, ''); + var result = result.replace(/return \{/g, 'return {target: "web",'); + + fs.writeFile(f_angular, result, 'utf8', function (err) { + if (err) return console.log(err); + }); +}); \ No newline at end of file diff --git a/postinstall.js b/postinstall.js index a1c8b5f..1fb1275 100644 --- a/postinstall.js +++ b/postinstall.js @@ -7,6 +7,7 @@ fs.readFile(f_angular, 'utf8', function (err, data) { return console.log(err); } var result = data.replace(/target: "electron-renderer",/g, ''); + var result = result.replace(/target: "web",/g, ''); var result = result.replace(/return \{/g, 'return {target: "electron-renderer",'); fs.writeFile(f_angular, result, 'utf8', function (err) { diff --git a/src/polyfills.ts b/src/polyfills.ts index 96d5645..d3e73dd 100644 --- a/src/polyfills.ts +++ b/src/polyfills.ts @@ -57,14 +57,14 @@ import 'core-js/es7/reflect'; * user can disable parts of macroTask/DomEvents patch by setting following flags */ - // (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame - // (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick - // (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames +// (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame +// (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick +// (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames - /* - * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js - * with the following flag, it will bypass `zone.js` patch for IE/Edge - */ +/* +* in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js +* with the following flag, it will bypass `zone.js` patch for IE/Edge +*/ // (window as any).__Zone_enable_cross_context_check = true; /*************************************************************************************************** From 0d8341ae86e4dbe6f3fa1678c830a6dae9642623 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Wed, 27 Jun 2018 22:22:46 +0200 Subject: [PATCH 21/41] fix/ version ts-node --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 1b67d32..24bfbd9 100644 --- a/package.json +++ b/package.json @@ -72,7 +72,7 @@ "npx": "10.2.0", "protractor": "5.3.2", "rxjs": "6.1.0", - "ts-node": "6.0.6", + "ts-node": "6.0.3", "tslint": "5.10.0", "typescript": "2.7.2", "wait-on": "2.1.0", From 63a41b8450c41ca5129b76e0bc27ce470d94ff80 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Wed, 27 Jun 2018 22:24:09 +0200 Subject: [PATCH 22/41] fix/ version angular (revert 6.0.6 -> 6.0.5) --- README.md | 2 +- package.json | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 5e169ae..4738723 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ Bootstrap and package your project with Angular 6(+) and Electron (Typescript + Currently runs with: -- Angular v6.0.6 +- Angular v6.0.5 - Electron v2.0.3 - Electron Builder v20.13.4 diff --git a/package.json b/package.json index 24bfbd9..a5e881d 100644 --- a/package.json +++ b/package.json @@ -40,17 +40,17 @@ }, "devDependencies": { "@angular-devkit/build-angular": "0.6.3", - "@angular/cli": "6.0.6", - "@angular/common": "6.0.6", - "@angular/compiler": "6.0.6", - "@angular/compiler-cli": "6.0.6", - "@angular/core": "6.0.6", - "@angular/forms": "6.0.6", - "@angular/http": "6.0.6", - "@angular/language-service": "6.0.6", - "@angular/platform-browser": "6.0.6", - "@angular/platform-browser-dynamic": "6.0.6", - "@angular/router": "6.0.6", + "@angular/cli": "6.0.5", + "@angular/common": "6.0.5", + "@angular/compiler": "6.0.5", + "@angular/compiler-cli": "6.0.5", + "@angular/core": "6.0.5", + "@angular/forms": "6.0.5", + "@angular/http": "6.0.5", + "@angular/language-service": "6.0.5", + "@angular/platform-browser": "6.0.5", + "@angular/platform-browser-dynamic": "6.0.5", + "@angular/router": "6.0.5", "@ngx-translate/core": "10.0.1", "@ngx-translate/http-loader": "3.0.1", "@types/jasmine": "2.8.7", From 961c8b14e34fee6fa03924110784eec73f272230 Mon Sep 17 00:00:00 2001 From: sunao Date: Thu, 12 Jul 2018 22:47:14 +0800 Subject: [PATCH 23/41] Make sure tsconfig be used. --- main.ts | 4 ++++ package.json | 8 ++++---- tsconfig-serve.json | 28 ++++++++++++++++++++++++++++ tsconfig.json | 9 ++++++++- 4 files changed, 44 insertions(+), 5 deletions(-) create mode 100644 tsconfig-serve.json diff --git a/main.ts b/main.ts index 1389621..68d8103 100644 --- a/main.ts +++ b/main.ts @@ -2,6 +2,8 @@ import { app, BrowserWindow, screen } from 'electron'; import * as path from 'path'; import * as url from 'url'; +import {interval} from 'rxjs'; + let win, serve; const args = process.argv.slice(1); serve = args.some(val => val === '--serve'); @@ -40,6 +42,8 @@ function createWindow() { // when you should delete the corresponding element. win = null; }); + + interval(1000).subscribe(val => console.log(`ES5 works fine : @${val}s`)); } try { diff --git a/package.json b/package.json index a5e881d..aa50c75 100644 --- a/package.json +++ b/package.json @@ -27,8 +27,9 @@ "build:prod": "npm run build -- -c production", "ng:serve": "ng serve", "ng:serve:web": "npm run postinstall:web && ng serve -o", - "electron:tsc": "tsc main.ts", - "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:tsc && electron . --serve", + "electron:tsc": "tsc", + "electron:serve-tsc": "tsc -p tsconfig-serve.json", + "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:serve-tsc && electron . --serve", "electron:local": "npm run build:prod && electron .", "electron:linux": "npm run build:prod && npx electron-builder build --linux", "electron:windows": "npm run build:prod && npx electron-builder build --windows", @@ -36,8 +37,7 @@ "test": "npm run postinstall:web && ng test", "e2e": "npm run postinstall:web && ng e2e" }, - "dependencies": { - }, + "dependencies": {}, "devDependencies": { "@angular-devkit/build-angular": "0.6.3", "@angular/cli": "6.0.5", diff --git a/tsconfig-serve.json b/tsconfig-serve.json new file mode 100644 index 0000000..8bda27f --- /dev/null +++ b/tsconfig-serve.json @@ -0,0 +1,28 @@ +{ + "compilerOptions": { + "sourceMap": true, + "declaration": false, + "moduleResolution": "node", + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "target": "es5", + "typeRoots": [ + "node_modules/@types" + ], + "lib": [ + "es2017", + "es2016", + "es2015", + "dom" + ] + }, + "include": [ + "main.ts", + "src/**/*", + "e2e/**/*" + ], + "exclude": [ + "node_modules", + "**/*.spec.ts" + ] +} diff --git a/tsconfig.json b/tsconfig.json index c8009a0..dc9baa0 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -17,5 +17,12 @@ "es2015", "dom" ] - } + }, + "include": [ + "main.ts", + "src/**/*" + ], + "exclude": [ + "node_modules" + ] } From 0da3856b61e483b395f3cbbdf0176f815fc32a1b Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 19 Aug 2018 14:11:28 +0200 Subject: [PATCH 24/41] [Bumped Version] V4.2.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index aa50c75..d47a613 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-electron", - "version": "4.1.0", + "version": "4.2.0", "description": "Angular 6 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { From f4535e54b2cc7fa6354b5c8e0f28befbc0dd4cb0 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 19 Aug 2018 14:12:51 +0200 Subject: [PATCH 25/41] fix/ electron builder output directories #200 --- .gitignore | 1 + electron-builder.json | 2 +- src/tsconfig.app.json | 2 +- src/tsconfig.spec.json | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitignore b/.gitignore index 6ae0912..ebae9d9 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ /tmp /out-tsc /app-builds +/release main.js # dependencies diff --git a/electron-builder.json b/electron-builder.json index 7e60e22..b0a2fb1 100644 --- a/electron-builder.json +++ b/electron-builder.json @@ -1,7 +1,7 @@ { "productName": "angular-electron", "directories": { - "output": "app-builds" + "output": "release/" }, "files": [ "**/*", diff --git a/src/tsconfig.app.json b/src/tsconfig.app.json index c4929a6..8c1b8e2 100644 --- a/src/tsconfig.app.json +++ b/src/tsconfig.app.json @@ -10,7 +10,7 @@ "src/test.ts", "**/*.spec.ts", "dist", - "app-builds", + "release", "node_modules" ] } diff --git a/src/tsconfig.spec.json b/src/tsconfig.spec.json index 88a02f2..eb2aca6 100644 --- a/src/tsconfig.spec.json +++ b/src/tsconfig.spec.json @@ -18,7 +18,7 @@ ], "exclude": [ "dist", - "app-builds", + "release", "node_modules" ] } From 1adad4a6abba263fb153f6f947c0c872a098849f Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 19 Aug 2018 15:05:50 +0200 Subject: [PATCH 26/41] ref/ remove some directories of tsconfig.app.json --- src/tsconfig.app.json | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/tsconfig.app.json b/src/tsconfig.app.json index 8c1b8e2..fbae189 100644 --- a/src/tsconfig.app.json +++ b/src/tsconfig.app.json @@ -7,10 +7,6 @@ "types": [] }, "exclude": [ - "src/test.ts", - "**/*.spec.ts", - "dist", - "release", - "node_modules" + "**/*.spec.ts" ] } From d8818c18c0d9437385e4daa878b94254b09453e6 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 19 Aug 2018 15:06:09 +0200 Subject: [PATCH 27/41] Upgrade Angular (6.1.2) deps --- .gitignore | 2 ++ README.md | 6 +++--- main.ts | 9 ++++++--- package.json | 28 ++++++++++++++-------------- tsconfig-serve.json | 4 +--- 5 files changed, 26 insertions(+), 23 deletions(-) diff --git a/.gitignore b/.gitignore index ebae9d9..5e70f99 100644 --- a/.gitignore +++ b/.gitignore @@ -7,6 +7,8 @@ /app-builds /release main.js +src/**/*.js +*.js.map # dependencies /node_modules diff --git a/README.md b/README.md index 4738723..1203394 100644 --- a/README.md +++ b/README.md @@ -15,9 +15,9 @@ Bootstrap and package your project with Angular 6(+) and Electron (Typescript + Currently runs with: -- Angular v6.0.5 -- Electron v2.0.3 -- Electron Builder v20.13.4 +- Angular v6.1.2 +- Electron v2.0.7 +- Electron Builder v20.28.1 With this sample, you can : diff --git a/main.ts b/main.ts index 68d8103..1433b7c 100644 --- a/main.ts +++ b/main.ts @@ -2,7 +2,8 @@ import { app, BrowserWindow, screen } from 'electron'; import * as path from 'path'; import * as url from 'url'; -import {interval} from 'rxjs'; +import { of } from 'rxjs'; +import { timeout } from 'rxjs/operators'; let win, serve; const args = process.argv.slice(1); @@ -23,7 +24,8 @@ function createWindow() { if (serve) { require('electron-reload')(__dirname, { - electron: require(`${__dirname}/node_modules/electron`)}); + electron: require(`${__dirname}/node_modules/electron`) + }); win.loadURL('http://localhost:4200'); } else { win.loadURL(url.format({ @@ -43,7 +45,8 @@ function createWindow() { win = null; }); - interval(1000).subscribe(val => console.log(`ES5 works fine : @${val}s`)); + of(2000).pipe(timeout(1000)) + .subscribe(val => console.log(`ES5 works fine : @${val}`)); } try { diff --git a/package.json b/package.json index d47a613..434bb5f 100644 --- a/package.json +++ b/package.json @@ -40,17 +40,17 @@ "dependencies": {}, "devDependencies": { "@angular-devkit/build-angular": "0.6.3", - "@angular/cli": "6.0.5", - "@angular/common": "6.0.5", - "@angular/compiler": "6.0.5", - "@angular/compiler-cli": "6.0.5", - "@angular/core": "6.0.5", - "@angular/forms": "6.0.5", - "@angular/http": "6.0.5", - "@angular/language-service": "6.0.5", - "@angular/platform-browser": "6.0.5", - "@angular/platform-browser-dynamic": "6.0.5", - "@angular/router": "6.0.5", + "@angular/cli": "6.1.2", + "@angular/common": "6.1.2", + "@angular/compiler": "6.1.2", + "@angular/compiler-cli": "6.1.2", + "@angular/core": "6.1.2", + "@angular/forms": "6.1.2", + "@angular/http": "6.1.2", + "@angular/language-service": "6.1.2", + "@angular/platform-browser": "6.1.2", + "@angular/platform-browser-dynamic": "6.1.2", + "@angular/router": "6.1.2", "@ngx-translate/core": "10.0.1", "@ngx-translate/http-loader": "3.0.1", "@types/jasmine": "2.8.7", @@ -58,8 +58,8 @@ "@types/node": "8.9.4", "codelyzer": "4.2.1", "core-js": "2.5.6", - "electron": "2.0.3", - "electron-builder": "20.14.7", + "electron": "2.0.7", + "electron-builder": "20.28.1", "electron-reload": "1.2.2", "jasmine-core": "3.1.0", "jasmine-spec-reporter": "4.2.1", @@ -71,7 +71,7 @@ "npm-run-all": "4.1.3", "npx": "10.2.0", "protractor": "5.3.2", - "rxjs": "6.1.0", + "rxjs": "6.2.2", "ts-node": "6.0.3", "tslint": "5.10.0", "typescript": "2.7.2", diff --git a/tsconfig-serve.json b/tsconfig-serve.json index 8bda27f..56d7a0a 100644 --- a/tsconfig-serve.json +++ b/tsconfig-serve.json @@ -17,9 +17,7 @@ ] }, "include": [ - "main.ts", - "src/**/*", - "e2e/**/*" + "main.ts" ], "exclude": [ "node_modules", From ef33f5ed16d19671553368e6ea50dd8632817ae1 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Wed, 22 Aug 2018 10:25:26 +0200 Subject: [PATCH 28/41] fix/ jslib in main process error --- README.md | 4 ++++ main.ts | 5 ----- package.json | 5 +++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 1203394..4f50f87 100644 --- a/README.md +++ b/README.md @@ -73,6 +73,10 @@ You can desactivate "Developer Tools" by commenting `win.webContents.openDevTool **Your application is optimised. Only /dist folder and node dependencies are included in the executable.** +## You want to use a specific lib (like rxjs) in electron main thread ? + +You can to this! Just by importing your library in npm dependencies (not devDependencies) with `npm install --save`. It will be loaded by electron during build phase and added to the final package. Then use your librairy by importing it in `main.ts` file. Easy no ? + ## Browser mode Maybe you want to execute the application in the browser with hot reload ? You can do it with `npm run ng:serve:web`. diff --git a/main.ts b/main.ts index 1433b7c..44f897b 100644 --- a/main.ts +++ b/main.ts @@ -2,9 +2,6 @@ import { app, BrowserWindow, screen } from 'electron'; import * as path from 'path'; import * as url from 'url'; -import { of } from 'rxjs'; -import { timeout } from 'rxjs/operators'; - let win, serve; const args = process.argv.slice(1); serve = args.some(val => val === '--serve'); @@ -45,8 +42,6 @@ function createWindow() { win = null; }); - of(2000).pipe(timeout(1000)) - .subscribe(val => console.log(`ES5 works fine : @${val}`)); } try { diff --git a/package.json b/package.json index 434bb5f..e3d05ca 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-electron", - "version": "4.2.0", + "version": "4.2.1", "description": "Angular 6 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { @@ -37,7 +37,8 @@ "test": "npm run postinstall:web && ng test", "e2e": "npm run postinstall:web && ng e2e" }, - "dependencies": {}, + "dependencies": { + }, "devDependencies": { "@angular-devkit/build-angular": "0.6.3", "@angular/cli": "6.1.2", From a9448aa1acd4a59c9f72ef78fcd04633b2a252f4 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Wed, 22 Aug 2018 10:29:18 +0200 Subject: [PATCH 29/41] fix/ typo README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4f50f87..ce2a5c0 100644 --- a/README.md +++ b/README.md @@ -75,7 +75,7 @@ You can desactivate "Developer Tools" by commenting `win.webContents.openDevTool ## You want to use a specific lib (like rxjs) in electron main thread ? -You can to this! Just by importing your library in npm dependencies (not devDependencies) with `npm install --save`. It will be loaded by electron during build phase and added to the final package. Then use your librairy by importing it in `main.ts` file. Easy no ? +You can to this! Just by importing your library in npm dependencies (not devDependencies) with `npm install --save`. It will be loaded by electron during build phase and added to the final package. Then use your library by importing it in `main.ts` file. Easy no ? ## Browser mode From 9106c8fa4fa874e2fdfc8a5e6ecf2479ffd09828 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Wed, 22 Aug 2018 12:16:59 +0200 Subject: [PATCH 30/41] fix/ build serve & electron with single tsc command --- package.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index e3d05ca..bb14515 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-electron", - "version": "4.2.1", + "version": "4.2.2", "description": "Angular 6 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { @@ -22,12 +22,11 @@ "postinstall:electron": "node postinstall", "ng": "ng", "start": "npm run postinstall:electron && npm-run-all -p ng:serve electron:serve", - "build": "npm run postinstall:electron && npm run electron:tsc && ng build", + "build": "npm run postinstall:electron && npm run electron:serve-tsc && ng build", "build:dev": "npm run build -- -c dev", "build:prod": "npm run build -- -c production", "ng:serve": "ng serve", "ng:serve:web": "npm run postinstall:web && ng serve -o", - "electron:tsc": "tsc", "electron:serve-tsc": "tsc -p tsconfig-serve.json", "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:serve-tsc && electron . --serve", "electron:local": "npm run build:prod && electron .", From 82c7bcfc575af9a2ba5a4e9d6a0bb49cc22c906e Mon Sep 17 00:00:00 2001 From: louich Date: Thu, 23 Aug 2018 15:36:26 -0400 Subject: [PATCH 31/41] Update electron-builder.json files rule - ".angular-cli.json" has been renamed in Angular 6 for "angular.json" - Found out that some nested typscript files were still bundled --- electron-builder.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/electron-builder.json b/electron-builder.json index b0a2fb1..4126419 100644 --- a/electron-builder.json +++ b/electron-builder.json @@ -5,7 +5,7 @@ }, "files": [ "**/*", - "!*.ts", + "!**/*.ts", "!*.code-workspace", "!LICENSE.md", "!package.json", @@ -13,7 +13,7 @@ "!src/", "!e2e/", "!hooks/", - "!.angular-cli.json", + "!angular.json", "!_config.yml", "!karma.conf.js", "!tsconfig.json", From f083328bb7825d1a7bf02494238819aa30d92c8d Mon Sep 17 00:00:00 2001 From: nakeawvichit Date: Thu, 4 Oct 2018 01:09:46 +0700 Subject: [PATCH 32/41] Update Version Electron 2 to 3 #hacktoberfest --- package.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index bb14515..71cd8f3 100644 --- a/package.json +++ b/package.json @@ -36,8 +36,7 @@ "test": "npm run postinstall:web && ng test", "e2e": "npm run postinstall:web && ng e2e" }, - "dependencies": { - }, + "dependencies": {}, "devDependencies": { "@angular-devkit/build-angular": "0.6.3", "@angular/cli": "6.1.2", @@ -58,7 +57,7 @@ "@types/node": "8.9.4", "codelyzer": "4.2.1", "core-js": "2.5.6", - "electron": "2.0.7", + "electron": "^3.0.2", "electron-builder": "20.28.1", "electron-reload": "1.2.2", "jasmine-core": "3.1.0", From 0440ee94e8f2ec057e8a719c77c884120bdbd740 Mon Sep 17 00:00:00 2001 From: Aristeidis Bampakos Date: Thu, 4 Oct 2018 18:23:32 +0300 Subject: [PATCH 33/41] Fix typos in README file --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ce2a5c0..8dfea91 100644 --- a/README.md +++ b/README.md @@ -57,7 +57,7 @@ Voila! You can use your Angular + Electron app in a local development environmen The application code is managed by `main.ts`. In this sample, the app runs with a simple Angular App (http://localhost:4200) and an Electron window. The Angular component contains an example of Electron and NodeJS native lib import. -You can desactivate "Developer Tools" by commenting `win.webContents.openDevTools();` in `main.ts`. +You can disable "Developer Tools" by commenting `win.webContents.openDevTools();` in `main.ts`. ## Included Commands @@ -75,7 +75,7 @@ You can desactivate "Developer Tools" by commenting `win.webContents.openDevTool ## You want to use a specific lib (like rxjs) in electron main thread ? -You can to this! Just by importing your library in npm dependencies (not devDependencies) with `npm install --save`. It will be loaded by electron during build phase and added to the final package. Then use your library by importing it in `main.ts` file. Easy no ? +You can do this! Just by importing your library in npm dependencies (not devDependencies) with `npm install --save`. It will be loaded by electron during build phase and added to the final package. Then use your library by importing it in `main.ts` file. Easy no ? ## Browser mode From 315a79b1827e126d8feefd3aa96c14d5eeb02e18 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 11 Nov 2018 12:21:30 +0100 Subject: [PATCH 34/41] ref/ Upgrade to Angular 7 --- README.md | 4 ++-- package.json | 40 +++++++++++++++++++++------------------- src/app/app.module.ts | 1 - src/polyfills.ts | 42 +++++++++++++++++++----------------------- 4 files changed, 42 insertions(+), 45 deletions(-) diff --git a/README.md b/README.md index 8dfea91..c631726 100644 --- a/README.md +++ b/README.md @@ -15,8 +15,8 @@ Bootstrap and package your project with Angular 6(+) and Electron (Typescript + Currently runs with: -- Angular v6.1.2 -- Electron v2.0.7 +- Angular v7.0.3 +- Electron v3.0.2 - Electron Builder v20.28.1 With this sample, you can : diff --git a/package.json b/package.json index 71cd8f3..40d984e 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "angular-electron", - "version": "4.2.2", - "description": "Angular 6 with Electron (Typescript + SASS + Hot Reload)", + "version": "5.0.0", + "description": "Angular 7 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { "name": "Maxime GRIS", @@ -9,7 +9,7 @@ }, "keywords": [ "angular", - "angular 6", + "angular 7", "electron", "typescript", "sass" @@ -34,30 +34,32 @@ "electron:windows": "npm run build:prod && npx electron-builder build --windows", "electron:mac": "npm run build:prod && npx electron-builder build --mac", "test": "npm run postinstall:web && ng test", - "e2e": "npm run postinstall:web && ng e2e" + "e2e": "npm run postinstall:web && ng e2e", + "version": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md" }, "dependencies": {}, "devDependencies": { - "@angular-devkit/build-angular": "0.6.3", - "@angular/cli": "6.1.2", - "@angular/common": "6.1.2", - "@angular/compiler": "6.1.2", - "@angular/compiler-cli": "6.1.2", - "@angular/core": "6.1.2", - "@angular/forms": "6.1.2", - "@angular/http": "6.1.2", - "@angular/language-service": "6.1.2", - "@angular/platform-browser": "6.1.2", - "@angular/platform-browser-dynamic": "6.1.2", - "@angular/router": "6.1.2", + "@angular-devkit/build-angular": "~0.10.0", + "@angular/cli": "7.0.5", + "@angular/common": "7.0.3", + "@angular/compiler": "7.0.3", + "@angular/compiler-cli": "7.0.3", + "@angular/core": "7.0.3", + "@angular/forms": "7.0.3", + "@angular/http": "7.0.3", + "@angular/language-service": "7.0.3", + "@angular/platform-browser": "7.0.3", + "@angular/platform-browser-dynamic": "7.0.3", + "@angular/router": "7.0.3", "@ngx-translate/core": "10.0.1", "@ngx-translate/http-loader": "3.0.1", "@types/jasmine": "2.8.7", "@types/jasminewd2": "2.0.3", "@types/node": "8.9.4", "codelyzer": "4.2.1", + "conventional-changelog-cli": "^2.0.11", "core-js": "2.5.6", - "electron": "^3.0.2", + "electron": "3.0.8", "electron-builder": "20.28.1", "electron-reload": "1.2.2", "jasmine-core": "3.1.0", @@ -70,10 +72,10 @@ "npm-run-all": "4.1.3", "npx": "10.2.0", "protractor": "5.3.2", - "rxjs": "6.2.2", + "rxjs": "6.3.3", "ts-node": "6.0.3", "tslint": "5.10.0", - "typescript": "2.7.2", + "typescript": "3.1.6", "wait-on": "2.1.0", "webdriver-manager": "12.0.6", "zone.js": "0.8.26" diff --git a/src/app/app.module.ts b/src/app/app.module.ts index d9c04f7..9078630 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -1,4 +1,3 @@ -import 'zone.js/dist/zone-mix'; import 'reflect-metadata'; import '../polyfills'; import { BrowserModule } from '@angular/platform-browser'; diff --git a/src/polyfills.ts b/src/polyfills.ts index d3e73dd..ee8b84d 100644 --- a/src/polyfills.ts +++ b/src/polyfills.ts @@ -11,7 +11,7 @@ * automatically update themselves. This includes Safari >= 10, Chrome >= 55 (including Opera), * Edge >= 13 on the desktop, and iOS 10 and Chrome on mobile. * - * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html + * Learn more in https://angular.io/guide/browser-support */ /*************************************************************************************************** @@ -34,21 +34,23 @@ // import 'core-js/es6/weak-map'; // import 'core-js/es6/set'; +/** + * If the application will be indexed by Google Search, the following is required. + * Googlebot uses a renderer based on Chrome 41. + * https://developers.google.com/search/docs/guides/rendering + **/ +// import 'core-js/es6/array'; + /** IE10 and IE11 requires the following for NgClass support on SVG elements */ // import 'classlist.js'; // Run `npm install --save classlist.js`. /** IE10 and IE11 requires the following for the Reflect API. */ // import 'core-js/es6/reflect'; - -/** Evergreen browsers require these. **/ -// Used for reflect-metadata in JIT. If you use AOT (and only Angular decorators), you can remove. -import 'core-js/es7/reflect'; - - /** - * Required to support Web Animations `@angular/platform-browser/animations`. - * Needed for: All but Chrome, Firefox and Opera. http://caniuse.com/#feat=web-animation + * Web Animations `@angular/platform-browser/animations` + * Only required if AnimationBuilder is used within the application and using IE/Edge or Safari. + * Standard animation support in Angular DOES NOT require any polyfills (as of Angular 6.0). **/ // import 'web-animations-js'; // Run `npm install --save web-animations-js`. @@ -57,27 +59,21 @@ import 'core-js/es7/reflect'; * user can disable parts of macroTask/DomEvents patch by setting following flags */ -// (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame -// (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick -// (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames + // (window as any).__Zone_disable_requestAnimationFrame = true; // disable patch requestAnimationFrame + // (window as any).__Zone_disable_on_property = true; // disable patch onProperty such as onclick + // (window as any).__zone_symbol__BLACK_LISTED_EVENTS = ['scroll', 'mousemove']; // disable patch specified eventNames -/* -* in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js -* with the following flag, it will bypass `zone.js` patch for IE/Edge -*/ + /* + * in IE/Edge developer tools, the addEventListener will also be wrapped by zone.js + * with the following flag, it will bypass `zone.js` patch for IE/Edge + */ // (window as any).__Zone_enable_cross_context_check = true; /*************************************************************************************************** * Zone JS is required by default for Angular itself. */ -import 'zone.js/dist/zone-mix'; // Included with Angular CLI. +import 'zone.js/dist/zone'; // Included with Angular CLI. -/** - * You can load zone-patch-electron to allow electron native APIs - * (Such as dialog/shortcut/menu/getFileIcon/shell/session/ - * desktopCapturer/onEvent) in ngZone - */ -// import 'zone.js/dist/zone-patch-electron'; // add zone-patch-electron to patch Electron native API /*************************************************************************************************** * APPLICATION IMPORTS From a89b3ce4a6516d0476cc9ac77e0968c97a46ad8a Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 11 Nov 2018 12:22:56 +0100 Subject: [PATCH 35/41] ref/ Generate changelog --- CHANGELOG.md | 641 +++++++++++++++++++++++++++++++++++------------------------ package.json | 2 +- 2 files changed, 380 insertions(+), 263 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3024aeb..9d520a5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,311 +1,428 @@ -### Changelog -All notable changes to this project will be documented in this file. +## 5.0.0 (2018-11-11) -#### [4.0.0](https://github.com/maximegris/angular-electron/compare/3.4.1...4.0.0) -- Update to NodeJS 8, Angular 6, electron 2.0.2, RxJS 6.1 [`#182`](https://github.com/maximegris/angular-electron/pull/182) -- ref/ upgrade angular to 6.0.3 [`e7fac6e`](https://github.com/maximegris/angular-electron/commit/e7fac6ed1f415ef9c20439c9f0eac2bed0dc7766) -- misc/ remove unused packages [`a7e33b6`](https://github.com/maximegris/angular-electron/commit/a7e33b646f3c01e0c3f342c39775f884e8391ac7) +* Fix typos in README file ([0440ee9](https://github.com/maximegris/angular-electron/commit/0440ee9)) +* ref/ Upgrade to Angular 7 ([315a79b](https://github.com/maximegris/angular-electron/commit/315a79b)) +* Update electron-builder.json files rule ([82c7bcf](https://github.com/maximegris/angular-electron/commit/82c7bcf)) +* Update Version Electron 2 to 3 #hacktoberfest ([f083328](https://github.com/maximegris/angular-electron/commit/f083328)) -#### [3.4.1](https://github.com/maximegris/angular-electron/compare/3.4.0...3.4.1) -- Modify electron builder configuration to remove source code and tests [`#190`](https://github.com/maximegris/angular-electron/pull/190) -- version 3.4.1 [`308ea9c`](https://github.com/maximegris/angular-electron/commit/308ea9c014781aa65c712ea69a844e77c8e651ef) -#### [3.4.0](https://github.com/maximegris/angular-electron/compare/3.3.0...3.4.0) -- Resolved Translation issue [`#186`](https://github.com/maximegris/angular-electron/pull/186) -- Removed unused file [`#185`](https://github.com/maximegris/angular-electron/pull/185) -- ref/ remove contributors [`6dc97a1`](https://github.com/maximegris/angular-electron/commit/6dc97a1ea857b48a7a111768f58498c91a3572b5) -- Translation issue [`35354b1`](https://github.com/maximegris/angular-electron/commit/35354b1025d98fd14d0566d3aa3112bb9c36fc91) -- version 3.4.0 [`06d6b0f`](https://github.com/maximegris/angular-electron/commit/06d6b0f8c5de703a9c7f5dcfc880a9673aa6eec8) -#### [3.3.0](https://github.com/maximegris/angular-electron/compare/3.2.0...3.3.0) -- add Changelog file [`71083f1`](https://github.com/maximegris/angular-electron/commit/71083f12bf1e20225769af20a8a054ab8af4a6f9) -- version 3.3.0 [`a88bda6`](https://github.com/maximegris/angular-electron/commit/a88bda66d83690b1064bcb11a0cb1bb893894caf) +## 4.2.2 (2018-08-22) -#### [3.2.0](https://github.com/maximegris/angular-electron/compare/3.1.0...3.2.0) -> 15 April 2018 -- Terminate the npm process after test execution [`#165`](https://github.com/maximegris/angular-electron/pull/165) -- Update dependencies [`#164`](https://github.com/maximegris/angular-electron/pull/164) -- fix/ app e2e spec [`#161`](https://github.com/maximegris/angular-electron/pull/161) -- provide webFrame access [`#162`](https://github.com/maximegris/angular-electron/pull/162) -- Including electron to eliminate Electron not found err sg [`#153`](https://github.com/maximegris/angular-electron/pull/153) -- update dependencies [`89963ab`](https://github.com/maximegris/angular-electron/commit/89963ab996a9d96d2f611959fd0a3eb8f35a64ba) -- ref/ add node/electron module import as exemple : fs and remote [`e3ad12d`](https://github.com/maximegris/angular-electron/commit/e3ad12dd59f967c2e550131517afa7e5ea0d3389) -- fix e2e tests based on PR #161 and terminate the npm process after test execution [`fccf348`](https://github.com/maximegris/angular-electron/commit/fccf348abb323d15043be0dc9fdad136e80fc1a4) -- version 3.2.0 [`8dc69fa`](https://github.com/maximegris/angular-electron/commit/8dc69fa648dd26b74915701f80ba2bd2e3fc0bc3) -- remove copyfiles [`9af5138`](https://github.com/maximegris/angular-electron/commit/9af5138778c40e08a929322801be217c6d3a3f98) +* fix/ build serve & electron with single tsc command ([9106c8f](https://github.com/maximegris/angular-electron/commit/9106c8f)) +* fix/ typo README ([a9448aa](https://github.com/maximegris/angular-electron/commit/a9448aa)) -#### [3.1.0](https://github.com/maximegris/angular-electron/compare/3.0.1...3.1.0) -> 15 March 2018 -- Fix to change environment [`#145`](https://github.com/maximegris/angular-electron/pull/145) -- Added option -o to script npm run ng:serve so that it really open the browser [`#141`](https://github.com/maximegris/angular-electron/pull/141) -- version 3.1.0 [`f7c71e7`](https://github.com/maximegris/angular-electron/commit/f7c71e78a0e72ec9bc7fcc20765b3626b13d4af5) -#### [3.0.1](https://github.com/maximegris/angular-electron/compare/3.0.0...3.0.1) -> 7 March 2018 -- fix/ icon app [`22699ef`](https://github.com/maximegris/angular-electron/commit/22699efd6a5acc6c30ae1b2713228192af4d523a) -- version 3.0.1 [`5258ff1`](https://github.com/maximegris/angular-electron/commit/5258ff173b784d50fe6f1faefe10a36ce9525dd8) -### [3.0.0](https://github.com/maximegris/angular-electron/compare/2.7.1...3.0.0) -> 25 February 2018 -- Updated dependencies and fixed unit tests [`#129`](https://github.com/maximegris/angular-electron/pull/129) -- fix/ TranslateModule test [`7863aa9`](https://github.com/maximegris/angular-electron/commit/7863aa97d2fa37e7d1e0ef66a29ed95876e49260) -- merge conflict [`ce5724c`](https://github.com/maximegris/angular-electron/commit/ce5724c11f8fa3d79aeb927c305d031ae09c8845) -- Ng not ejected anymore [`67ab31c`](https://github.com/maximegris/angular-electron/commit/67ab31c458c572de0311f27ee8a7d7bc43765999) -- update dependencies and fix unit tests [`4d3ca6e`](https://github.com/maximegris/angular-electron/commit/4d3ca6e1b1fc46dea6b7d5e6a7dc09ea5d8d4d44) -- pin all dependency versions [`0558d6a`](https://github.com/maximegris/angular-electron/commit/0558d6a5faefcd0e3066b484e2e5bff55d6a368d) +## 4.2.1 (2018-08-22) -** BREAKING CHANGES** +* fix/ jslib in main process error ([ef33f5e](https://github.com/maximegris/angular-electron/commit/ef33f5e)) -The build process was migrated to using angular cli rather than webpack. It also makes it easier to migrate to newer Angular releases as they roll out (which was really painful during the last migration). Check the most recent commits for more details. -#### [2.7.1](https://github.com/maximegris/angular-electron/compare/2.7.0...2.7.1) -> 15 February 2018 -- ref/ dernière version cli [`3df8158`](https://github.com/maximegris/angular-electron/commit/3df81589404dd199efa3f75a1229f54bcc0f1890) -- version 2.7.1 [`1ae6f7a`](https://github.com/maximegris/angular-electron/commit/1ae6f7aedca7f099688bfce84a050f6ae014b995) -#### [2.7.0](https://github.com/maximegris/angular-electron/compare/2.6.0...2.7.0) -> 15 February 2018 -- fix: fixes maximegris/angular-electron#118 [`#121`](https://github.com/maximegris/angular-electron/pull/121) -- ref/ update angular & dep [`e3b1fab`](https://github.com/maximegris/angular-electron/commit/e3b1fabba35b1efa5c10156b423dcbb1515860b6) +## 4.2.0 (2018-08-19) -#### [2.6.0](https://github.com/maximegris/angular-electron/compare/2.5.0...2.6.0) -> 24 January 2018 -- version bump + logo resize [`#114`](https://github.com/maximegris/angular-electron/pull/114) -- feat/ add webview directive [`f3bc99a`](https://github.com/maximegris/angular-electron/commit/f3bc99adb16129e3fef41f5f089cabb59dd0fe54) -- feat/ add webview directive [`e1b5600`](https://github.com/maximegris/angular-electron/commit/e1b56002d8ad26df83a8c07f7d7744793f5a11a5) -- ref/ upgrade electron (security issue) [`f6a0c4e`](https://github.com/maximegris/angular-electron/commit/f6a0c4ecb97a5ec7c137528e037015d041dd5acc) -- ref/ Remove sponsor [`2a28239`](https://github.com/maximegris/angular-electron/commit/2a28239152a3dc4352cef8224e76f6f3c06d6ad5) +* [Bumped Version] V4.2.0 ([0da3856](https://github.com/maximegris/angular-electron/commit/0da3856)) +* fix/ electron builder output directories #200 ([f4535e5](https://github.com/maximegris/angular-electron/commit/f4535e5)), closes [#200](https://github.com/maximegris/angular-electron/issues/200) +* Make sure tsconfig be used. ([961c8b1](https://github.com/maximegris/angular-electron/commit/961c8b1)) +* ref/ remove some directories of tsconfig.app.json ([1adad4a](https://github.com/maximegris/angular-electron/commit/1adad4a)) +* Upgrade Angular (6.1.2) deps ([d8818c1](https://github.com/maximegris/angular-electron/commit/d8818c1)) -#### [2.5.0](https://github.com/maximegris/angular-electron/compare/2.4.1...2.5.0) -> 12 January 2018 -- fix: fixes maximegris/angular-electron#98 [`#105`](https://github.com/maximegris/angular-electron/pull/105) -- Correction of a word. [`#102`](https://github.com/maximegris/angular-electron/pull/102) -- migrate Angular to 5.2.0 [`b8cf343`](https://github.com/maximegris/angular-electron/commit/b8cf343f0f33d440feb9a7d7639a65be2790e410) -#### [2.4.1](https://github.com/maximegris/angular-electron/compare/2.4.0...2.4.1) -> 14 December 2017 -- fix/ Manage icons for linux binary generation [`#92`](https://github.com/maximegris/angular-electron/pull/92) -- version 2.4.1 [`5fcfca0`](https://github.com/maximegris/angular-electron/commit/5fcfca019da3426326cc3cbedeafaa662cd70deb) -#### [2.4.0](https://github.com/maximegris/angular-electron/compare/2.3.0...2.4.0) -> 8 December 2017 -- version 2.4.0 [`0437b33`](https://github.com/maximegris/angular-electron/commit/0437b33c36e6806d60a03463644bb7abe3de83a5) -- merge migration httpclient [`1e6113f`](https://github.com/maximegris/angular-electron/commit/1e6113f71aca9f76822ce39facbd31884f4603fb) +## 4.1.0 (2018-06-27) -#### [2.3.0](https://github.com/maximegris/angular-electron/compare/2.2.0...2.3.0) -> 4 December 2017 -- Use HttpClientModule [`#88`](https://github.com/maximegris/angular-electron/pull/88) -- add ngx translate [`facda37`](https://github.com/maximegris/angular-electron/commit/facda3726d9aab6320905ce78414c4f4f0ab901d) +* Allow Angular Using Electron Modules ([ec705ee](https://github.com/maximegris/angular-electron/commit/ec705ee)) +* fix/ version angular (revert 6.0.6 -> 6.0.5) ([63a41b8](https://github.com/maximegris/angular-electron/commit/63a41b8)) +* fix/ version ts-node ([0d8341a](https://github.com/maximegris/angular-electron/commit/0d8341a)) +* ref/ postinstall web & electron ([50657d0](https://github.com/maximegris/angular-electron/commit/50657d0)) +* update README ([1d48e32](https://github.com/maximegris/angular-electron/commit/1d48e32)) +* feat(zone): add zone-patch-electron to patch Electron native APIs in polyfills ([01842e2](https://github.com/maximegris/angular-electron/commit/01842e2)) -#### [2.2.0](https://github.com/maximegris/angular-electron/compare/2.1.1...2.2.0) -> 28 November 2017 -- Update to electron-builder [`#86`](https://github.com/maximegris/angular-electron/pull/86) -- Update LICENSE badge [`#85`](https://github.com/maximegris/angular-electron/pull/85) -- Brought back scripts defined in webpack.config.js [`#82`](https://github.com/maximegris/angular-electron/pull/82) -- migrate to Angular 5.0.3 [`f4bc5b2`](https://github.com/maximegris/angular-electron/commit/f4bc5b21bc63b4c3d2eb81ae1e0a87f0ab571001) -#### [2.1.1](https://github.com/maximegris/angular-electron/compare/2.1.0...2.1.1) -> 19 November 2017 -- Move codesponsor [`064be4c`](https://github.com/maximegris/angular-electron/commit/064be4cb3c1e733716793d9280dcaf2e661f0cbd) -#### [2.1.0](https://github.com/maximegris/angular-electron/compare/2.0.0...2.1.0) -> 19 November 2017 -- Add support for building a single executable for Windows [`#78`](https://github.com/maximegris/angular-electron/pull/78) -- fix/ refact webpack config (inspired by ng eject Angular 5) [`d1c30ac`](https://github.com/maximegris/angular-electron/commit/d1c30ac68ef871e65713a9310d8428a276cbdbc3) -- Mgrate to Angular 5.0.2 [`bd7bed6`](https://github.com/maximegris/angular-electron/commit/bd7bed6c17f2a9ba268a638e0130638eae27781c) -- fix/ Replace AotPlugin to AngularCompilerPlugin [`bef106e`](https://github.com/maximegris/angular-electron/commit/bef106e2f67a43f4548acde01dbfdf8094e8a734) -- Add support for building a Windows self-contained executable [`7cfa790`](https://github.com/maximegris/angular-electron/commit/7cfa79030e854d8d806c6b42cad02dab683b13b5) -- Add codesponsor [`87e695d`](https://github.com/maximegris/angular-electron/commit/87e695d736f0c0897457949c72c4aea17868ff55) -- fix/ replace aotPlugin in no prod mode [`a0caf1e`](https://github.com/maximegris/angular-electron/commit/a0caf1e29266c582ea1a9961942d3604eb3080ad) -- Version 2.1.0 [`fccef2f`](https://github.com/maximegris/angular-electron/commit/fccef2f338129e4ba770cccfdf94281886449e9a) -- fix/ webpack template path [`518b66b`](https://github.com/maximegris/angular-electron/commit/518b66b16ca0744c625abe26379064bafcd7ba98) -- Update package.json [`b16cf73`](https://github.com/maximegris/angular-electron/commit/b16cf7394d5b65e5ec2d014dfb382aa2b6914184) -- fix/ Update README Angular 5 [`93c6949`](https://github.com/maximegris/angular-electron/commit/93c694977ff3a3f669e69eb2b6c75565d5819392) -- Add script for winportable [`2be2dae`](https://github.com/maximegris/angular-electron/commit/2be2dae6c38ca6f38f5f21d3305251858127f4fb) -- fix/ electron-packager need favicon >= 256x256 on Windows [`d2c253f`](https://github.com/maximegris/angular-electron/commit/d2c253f2058f459f0ff2d163e87d9fe4dc33482a) +## 4.0.0 (2018-05-25) -### [2.0.0](https://github.com/maximegris/angular-electron/compare/1.9.0...2.0.0) -> 13 November 2017 -- Edit a typo on README [`#71`](https://github.com/maximegris/angular-electron/pull/71) -- Add buffer to externals [`#66`](https://github.com/maximegris/angular-electron/pull/66) -- Fix #55 removed bootstraps.css which for example purpose before. [`#55`](https://github.com/maximegris/angular-electron/issues/55) -- License MIT [`73494b7`](https://github.com/maximegris/angular-electron/commit/73494b7fe9077ee6f167de7ca3614d2e2462da55) -- Migrate to Angular 5 [`3a3ffe1`](https://github.com/maximegris/angular-electron/commit/3a3ffe189398324b10c769e0a50d99e305227126) +* misc/ remove unused packages ([a7e33b6](https://github.com/maximegris/angular-electron/commit/a7e33b6)) +* misc/ update Changelog ([b758122](https://github.com/maximegris/angular-electron/commit/b758122)) +* ref/ upgrade angular to 6.0.3 ([e7fac6e](https://github.com/maximegris/angular-electron/commit/e7fac6e)) -** BREAKING CHANGES** -Due to Angular 5 migration, all package.json dependencies and webpack.config.js was changed. -I also decided to change the license of this project. It is now under MIT license. -#### [1.9.0](https://github.com/maximegris/angular-electron/compare/1.8.1...1.9.0) -> 22 September 2017 -- feat/ launch electron & webpack in // (npm run start) [`8c37cc4`](https://github.com/maximegris/angular-electron/commit/8c37cc4c7fad3cdd25a76dd514df55e5dc6c39d8) -- ref/ Exclude node_modules (tslint) [`412a0a5`](https://github.com/maximegris/angular-electron/commit/412a0a5b626de73055a09137231ef6ba98faf868) +## 3.4.1 (2018-05-25) -#### [1.8.1](https://github.com/maximegris/angular-electron/compare/1.8.0...1.8.1) -> 22 September 2017 -- Fix #55 , and also added functionality for scripts global building [`#55`](https://github.com/maximegris/angular-electron/issues/55) -- remove package-lock [`8e98627`](https://github.com/maximegris/angular-electron/commit/8e986275ba9384575eb27126781bcfb879f86583) -- upgrade angular version 4.4.3 [`10d0f87`](https://github.com/maximegris/angular-electron/commit/10d0f870cebee68ded6e75b0775a3e3f25bd666f) -- version 1.8.1 [`70879d1`](https://github.com/maximegris/angular-electron/commit/70879d18c45fd65564f160c344552ea3c2195798) -- ref/ add package-lock in gitignore [`4edd98d`](https://github.com/maximegris/angular-electron/commit/4edd98d54676b76d3941e4abb93a0ed16a14e48c) +* misc/ update changelog ([70b359f](https://github.com/maximegris/angular-electron/commit/70b359f)) +* version 3.4.1 ([308ea9c](https://github.com/maximegris/angular-electron/commit/308ea9c)) -#### [1.8.0](https://github.com/maximegris/angular-electron/compare/1.7.0...1.8.0) -> 9 September 2017 -- upgrade lib version [`2ac2aa0`](https://github.com/maximegris/angular-electron/commit/2ac2aa0abc798a17b9aa66314c881cef0268c036) -#### [1.7.0](https://github.com/maximegris/angular-electron/compare/1.6.1...1.7.0) -> 18 August 2017 -- ref/ Update Angular (4.3.5) / Electron (1.7.2) / Electron Packager (8.7.2) / Typescript (2.5.0) [`f97cd81`](https://github.com/maximegris/angular-electron/commit/f97cd8169239c5f15713903207f7e48040b15317) -#### [1.6.1](https://github.com/maximegris/angular-electron/compare/1.6.0...1.6.1) -> 27 July 2017 -- fix/ angular-cli error in prod compilation with aot [`c26a5ae`](https://github.com/maximegris/angular-electron/commit/c26a5aec6aacd6def96721646ae2121b942d1a30) -- version 1.6.1 [`899babd`](https://github.com/maximegris/angular-electron/commit/899babd5bc22edffa439213c5c1e80112f8b26bb) +## 3.4.0 (2018-05-25) -#### [1.6.0](https://github.com/maximegris/angular-electron/compare/1.5.0...1.6.0) -> 16 July 2017 -- Fix npm run build:prod [`#38`](https://github.com/maximegris/angular-electron/pull/38) -- upgrade angular version to 4.3.0 [`ab16959`](https://github.com/maximegris/angular-electron/commit/ab16959ae23c830d412a690ebff04107b1361fae) -- increment version deps [`bde452c`](https://github.com/maximegris/angular-electron/commit/bde452c32cc7435acdf779026e8be17679daf785) -- fix/ e2e test with jasmine2 [`9c51f32`](https://github.com/maximegris/angular-electron/commit/9c51f3247be9e899d14716b8d38afa415191417d) -- fix/ typescript issues [`bb0a6ab`](https://github.com/maximegris/angular-electron/commit/bb0a6abd283e32be606caa0281d68a4fad07eb3c) -- fix/ Bindings not updating automatically #44 [`2a90191`](https://github.com/maximegris/angular-electron/commit/2a90191458de6371e59d53c3e32257782884cfaf) -- ajout package-lock npm v5 [`09c0840`](https://github.com/maximegris/angular-electron/commit/09c08408111c5d89548803ab9dfc878e85e29b08) -- Revert last pull request - break production compilation [`ccc9064`](https://github.com/maximegris/angular-electron/commit/ccc90648fead44107ea2f380289915aa94c1f19a) -- Change background img [`7e58717`](https://github.com/maximegris/angular-electron/commit/7e5871714f18e69b9e9769ae857c3b51d8bf74e6) +* misc/ update changelog ([7d5eeb3](https://github.com/maximegris/angular-electron/commit/7d5eeb3)) +* Modify electron builder configuration to remove source code and tests ([0cf6899](https://github.com/maximegris/angular-electron/commit/0cf6899)) +* ref/ remove contributors ([6dc97a1](https://github.com/maximegris/angular-electron/commit/6dc97a1)) +* The file is unused ([05c9e39](https://github.com/maximegris/angular-electron/commit/05c9e39)) +* Translation issue ([35354b1](https://github.com/maximegris/angular-electron/commit/35354b1)) +* version 3.4.0 ([06d6b0f](https://github.com/maximegris/angular-electron/commit/06d6b0f)) +* refactor: update electron, electron-builder to latest (2.0.2, 20.14.7) ([f19e6ee](https://github.com/maximegris/angular-electron/commit/f19e6ee)) +* refactor: upgrade to NodeJS 8, Angular 6, CLI 6, Electron 2.0, RxJS 6.1 ([e37efdb](https://github.com/maximegris/angular-electron/commit/e37efdb)) +* refactor(hooks): replace hooks to ng-cli fileReplacements logic ([c940037](https://github.com/maximegris/angular-electron/commit/c940037)) +* fix(test): create polyfills-test.ts for karma test & setup Travis CI ([7fbc68c](https://github.com/maximegris/angular-electron/commit/7fbc68c)) +* fix(travis): set progress to false (speed up npm) ([be48531](https://github.com/maximegris/angular-electron/commit/be48531)) -#### [1.5.0](https://github.com/maximegris/angular-electron/compare/1.4.4...1.5.0) -> 10 June 2017 -- fix/ remove yarn because of error with module dep in prod builds [`8a49a45`](https://github.com/maximegris/angular-electron/commit/8a49a454caba7dc05325ba0d99b06cb04a80b779) -- update yarn lock [`18c0e62`](https://github.com/maximegris/angular-electron/commit/18c0e62dbafe2f6468dfa02071e37ec7f7d0e51d) -- fix/ karma Unit test [`ea13d6d`](https://github.com/maximegris/angular-electron/commit/ea13d6d2e13a2b68f924694fd67d64d617eeada8) -#### [1.4.4](https://github.com/maximegris/angular-electron/compare/1.4.3...1.4.4) -> 8 June 2017 -- fix/ Fix npm run lint [`db7972a`](https://github.com/maximegris/angular-electron/commit/db7972aca4cabd9b4b55420e0e1dd029e7834de9) -- ref/ electron ./dist more generic [`7e71add`](https://github.com/maximegris/angular-electron/commit/7e71add264adb946ec2b5ad50fdb4c5376dd492e) -- Replace const icon to let icon [`dadf65f`](https://github.com/maximegris/angular-electron/commit/dadf65f89b76751e6fe22e00242e39f512a8da09) -#### [1.4.3](https://github.com/maximegris/angular-electron/compare/1.4.2...1.4.3) -> 6 June 2017 -- fix/ favicon path during packaging [`aa2b012`](https://github.com/maximegris/angular-electron/commit/aa2b0122878bb3b769e66d2a56a9f31584de1874) -- remove build node 8 till node-sass failed [`34f201d`](https://github.com/maximegris/angular-electron/commit/34f201d1d542ec149b76d450d255660f1ecf5d8e) +## 3.3.0 (2018-04-15) -#### [1.4.2](https://github.com/maximegris/angular-electron/compare/1.4.0...1.4.2) -> 31 May 2017 -- chore(package): bump dependencies [`#26`](https://github.com/maximegris/angular-electron/pull/26) -- upgrade ng/electron dependencies [`78b0f27`](https://github.com/maximegris/angular-electron/commit/78b0f27da33b14d1c26908109c4f984c3a2a4dd7) -- update Electron v1.6.10 [`f2f2080`](https://github.com/maximegris/angular-electron/commit/f2f20806c63d3fa8b425bf4df99f975c1c33d23b) -- Change dep versions [`62d08d3`](https://github.com/maximegris/angular-electron/commit/62d08d39a78c4b061f5e48e764a3b4d6e703fa30) -- Minor update [`5f282b7`](https://github.com/maximegris/angular-electron/commit/5f282b784c1e100c67ce1686a2cc163fea23217a) -- install npm dep when building [`56948d0`](https://github.com/maximegris/angular-electron/commit/56948d0fdbc05495c2e27013e0abd5f17c952d10) -- No hot reload in browser [`7892f0d`](https://github.com/maximegris/angular-electron/commit/7892f0d3a6859ca4d1c576959351535439279ada) +* add Changelog file ([71083f1](https://github.com/maximegris/angular-electron/commit/71083f1)) +* fix/ typo README.md (production variables) ([a8c2b63](https://github.com/maximegris/angular-electron/commit/a8c2b63)) +* version 3.3.0 ([a88bda6](https://github.com/maximegris/angular-electron/commit/a88bda6)) +* version 3.3.0 changelog ([ddfbbf9](https://github.com/maximegris/angular-electron/commit/ddfbbf9)) -#### [1.4.0](https://github.com/maximegris/angular-electron/compare/1.3.6...1.4.0) -> 23 May 2017 -- ref/ electron main from js to ts [`835d32b`](https://github.com/maximegris/angular-electron/commit/835d32bdcdb7d2e7febb30c6b396d2e1ae02046c) -- Change style home page [`93dcc52`](https://github.com/maximegris/angular-electron/commit/93dcc52ac960406c22bec9bf4cb7d358ff26923c) -#### [1.3.6](https://github.com/maximegris/angular-electron/compare/1.3.5...1.3.6) -> 21 May 2017 -- Fixed compiler warnings #21 [`#22`](https://github.com/maximegris/angular-electron/pull/22) -- Remove caret & tilde [`dd98155`](https://github.com/maximegris/angular-electron/commit/dd98155951b8bf9e6c4df10d37fc143544ab6afa) -- Fixed compiler warnings [`fca6b15`](https://github.com/maximegris/angular-electron/commit/fca6b15d30258d139f112bd547f4a33d385139ef) -#### [1.3.5](https://github.com/maximegris/angular-electron/compare/1.3.4...1.3.5) -> 18 May 2017 -- Add new tags [`cd07a86`](https://github.com/maximegris/angular-electron/commit/cd07a86ee85cccedd34d70fe033fce8a6c7f12e5) -- v 1.3.5 [`d528a71`](https://github.com/maximegris/angular-electron/commit/d528a71c4ed3b713881f0945d74f3ab0d54d3936) +## 3.2.0 (2018-04-15) -#### [1.3.4](https://github.com/maximegris/angular-electron/compare/1.3.3...1.3.4) -> 12 May 2017 -- Ref/ Electron packager in external file [`17b04e8`](https://github.com/maximegris/angular-electron/commit/17b04e8998a5aa9a514a6b2e3b09dc3c745238ae) -- feat/ add nodejs native lib in webpack config [`27d9bc6`](https://github.com/maximegris/angular-electron/commit/27d9bc65f84d90ac89d4fcfa3f8a84e6296348f5) -- version 1.3.4 [`374af16`](https://github.com/maximegris/angular-electron/commit/374af16f8c92483a09d4be35d501a0d574dc4d86) -- Fix issue #15 [`d77cbf1`](https://github.com/maximegris/angular-electron/commit/d77cbf18d6254ec95ad15f0d92dfe7d2a9881cf5) +* fix e2e tests based on PR #161 and terminate the npm process after test execution ([fccf348](https://github.com/maximegris/angular-electron/commit/fccf348)), closes [#161](https://github.com/maximegris/angular-electron/issues/161) +* fix/ app e2e spec ([8046b2a](https://github.com/maximegris/angular-electron/commit/8046b2a)) +* Including electron to eliminate Electron not found err sg ([d78203f](https://github.com/maximegris/angular-electron/commit/d78203f)) +* provide webFrame access ([6bd044e](https://github.com/maximegris/angular-electron/commit/6bd044e)) +* ref/ add node/electron module import as exemple : fs and remote ([e3ad12d](https://github.com/maximegris/angular-electron/commit/e3ad12d)) +* remove copyfiles ([9af5138](https://github.com/maximegris/angular-electron/commit/9af5138)) +* update dependencies ([89963ab](https://github.com/maximegris/angular-electron/commit/89963ab)) +* version 3.2.0 ([8dc69fa](https://github.com/maximegris/angular-electron/commit/8dc69fa)) -#### [1.3.3](https://github.com/maximegris/angular-electron/compare/1.3.2...1.3.3) -> 10 May 2017 -- Version 1.3.3 [`f4db75b`](https://github.com/maximegris/angular-electron/commit/f4db75bbd6474930c782949eca31f24564c8f6de) -- Fix issue #15 [`e7cd6e6`](https://github.com/maximegris/angular-electron/commit/e7cd6e6df307c9c781ef7b76206b108ca541e864) -- Move browser mode chapter [`89e34eb`](https://github.com/maximegris/angular-electron/commit/89e34ebe49123e9319662345d86a598dbf5d8a07) -- Chapters order [`a772b9c`](https://github.com/maximegris/angular-electron/commit/a772b9c74fd8c2d4aa1358caaa2f839bfa2a2d79) -- Chapters order [`06547e5`](https://github.com/maximegris/angular-electron/commit/06547e5c855bef81c1c9d1ded0b3e7cfc12fae8e) -- Delete spec file of electron.service [`083498e`](https://github.com/maximegris/angular-electron/commit/083498eab8cb7c72e84125e8d6b7f54b2838951d) -- Move Browser mode chapter [`8818750`](https://github.com/maximegris/angular-electron/commit/881875036a46f13ef6980e84a6064a665670f454) -#### [1.3.2](https://github.com/maximegris/angular-electron/compare/1.3.1...1.3.2) -> 6 May 2017 -- Suround electron browser by try/catch [`88be472`](https://github.com/maximegris/angular-electron/commit/88be4723793cddb7b21bbdfffaa245849b45d8fa) -- update version [`0849a0a`](https://github.com/maximegris/angular-electron/commit/0849a0a6c0e91b507b1f435401cee031f64bb37e) -- Fix indentation [`6a9836a`](https://github.com/maximegris/angular-electron/commit/6a9836a1e48e34060e826e747464ab63e654ab16) -- Conditional import of Electron/NodeJS libs - The app can be launch in browser mode [`c434f8a`](https://github.com/maximegris/angular-electron/commit/c434f8a8b0c0d1d8e5843af57465a24e900d967c) -- Update readme with e2e info [`01bbf13`](https://github.com/maximegris/angular-electron/commit/01bbf1343707527b5c26c322abfa6199d2937aa6) -- Set e2e tests [`d223974`](https://github.com/maximegris/angular-electron/commit/d2239745a2dc14ad6d6b07520f31ea1e51d03594) -- Fix prepree2e script [`b2af4fd`](https://github.com/maximegris/angular-electron/commit/b2af4fd24a3722f1fa4cc0d345f505214002f4f0) -- Add comments of how conditional import works [`e6c1b3b`](https://github.com/maximegris/angular-electron/commit/e6c1b3ba5d7633c9f47191113dab463163a7aa89) -- Update @types/node [`9d43304`](https://github.com/maximegris/angular-electron/commit/9d43304b678d64fa30ca9ded72cfa8e2e8bee089) -#### [1.3.1](https://github.com/maximegris/angular-electron/compare/1.3.0...1.3.1) -> 5 May 2017 -- Fixed hardcoded path in glob copy, blocking assets after eject [`#11`](https://github.com/maximegris/angular-electron/pull/11) -- Add routing module [`7334ce8`](https://github.com/maximegris/angular-electron/commit/7334ce89b5daabba9fa5d1c0c940ebc38aecbc9a) -- update comments in dev/prod env files [`7cf6a51`](https://github.com/maximegris/angular-electron/commit/7cf6a51532f589305fc488c769391c4d1a1d06b9) -- Version 1.3.1 [`f18ac77`](https://github.com/maximegris/angular-electron/commit/f18ac77e074a253dc9ece45dd16d1a3c23c18470) +## 3.1.0 (2018-03-15) -#### [1.3.0](https://github.com/maximegris/angular-electron/compare/1.2.1...1.3.0) -> 1 May 2017 -- Fix webpack prod/dev env [`8549da1`](https://github.com/maximegris/angular-electron/commit/8549da1a17d946b4cc272d8baf9d4ad64fe4e458) +* Added option -o to script npm run ng:serve so that it really open the browser ([72aff8d](https://github.com/maximegris/angular-electron/commit/72aff8d)) +* Fix to change environment ([448d68b](https://github.com/maximegris/angular-electron/commit/448d68b)) +* version 3.1.0 ([f7c71e7](https://github.com/maximegris/angular-electron/commit/f7c71e7)) -#### [1.2.1](https://github.com/maximegris/angular-electron/compare/1.2.0...1.2.1) -> 30 April 2017 -- html loader [`c55558a`](https://github.com/maximegris/angular-electron/commit/c55558a63291a7de55cbf4ae0d5f39dc8cd05b5d) -- Fix electron build (extract-zip workaround) [`a7ee90e`](https://github.com/maximegris/angular-electron/commit/a7ee90eb504737465526d306e74c723b730fa8ad) -- Fix webpack config url in css [`cea4be5`](https://github.com/maximegris/angular-electron/commit/cea4be57ba02d343f169eb024c8ac25074857062) -- Example url background in scss [`3705a35`](https://github.com/maximegris/angular-electron/commit/3705a35c7369b57d2798655af865dbdee385edba) -- update version 1.2.1 [`78e8da7`](https://github.com/maximegris/angular-electron/commit/78e8da71d2ace705fb8448284fc88d590a8eabb8) -- allowJs [`4efd188`](https://github.com/maximegris/angular-electron/commit/4efd1880a2e10af7cf2d8a01ecc0577abbe13756) -#### [1.2.0](https://github.com/maximegris/angular-electron/compare/1.1.2...1.2.0) -> 19 April 2017 -- Update npm dependencies [`0a93ebe`](https://github.com/maximegris/angular-electron/commit/0a93ebe96a7e60502fb99160ab0227ba1b879103) -- Set one example of css class in app component [`a15775f`](https://github.com/maximegris/angular-electron/commit/a15775fb7a98399852bb12dd39bdc3d9393be48d) -#### [1.1.2](https://github.com/maximegris/angular-electron/compare/1.1.1...1.1.2) -> 19 April 2017 -- update README [`23fc0a9`](https://github.com/maximegris/angular-electron/commit/23fc0a9b2117bd8056acbf4e69aeb4aeb0cf74dd) -- update README [`a8dcf6a`](https://github.com/maximegris/angular-electron/commit/a8dcf6ac58e232cadbb1c73c1f65c97a8e85d09f) -- update README [`97fa63d`](https://github.com/maximegris/angular-electron/commit/97fa63d7ee76fd269f65383441070d9d3565c824) -- Fix typo & fix script electron:mac [`bd06859`](https://github.com/maximegris/angular-electron/commit/bd068590765f3bb497c1f3656bb11556abbd5f3f) -- Set theme jekyll-theme-architect [`644d857`](https://github.com/maximegris/angular-electron/commit/644d8575e2d223c9490fbf03eda491d1daad8342) +## 3.0.1 (2018-03-07) -#### [1.1.1](https://github.com/maximegris/angular-electron/compare/1.1.0...1.1.1) -> 12 April 2017 -- Remove unused dependency (webpack-dev-server) [`e9150f4`](https://github.com/maximegris/angular-electron/commit/e9150f4a41e2a1b1a7af33e79e4af7ae1f96370a) -- live reload on disk [`7bb2f8b`](https://github.com/maximegris/angular-electron/commit/7bb2f8b20a027cfc4aea0988fd98fe5c74e69f03) -- Fix webpack.config file path (travisci) [`a172df9`](https://github.com/maximegris/angular-electron/commit/a172df94d918de4af0d0f223f9be4bcc471bd731) +* fix/ icon app ([22699ef](https://github.com/maximegris/angular-electron/commit/22699ef)) +* version 3.0.1 ([5258ff1](https://github.com/maximegris/angular-electron/commit/5258ff1)) -#### [1.1.0](https://github.com/maximegris/angular-electron/compare/1.0.3...1.1.0) -> 12 April 2017 -- Override webpack configuration [`60d6116`](https://github.com/maximegris/angular-electron/commit/60d6116b6df17e7451a487359471dbba7ba20882) -- add depdencies CI & Licence [`6ceb0f2`](https://github.com/maximegris/angular-electron/commit/6ceb0f2a10a68276c30e86a681d24cdd46c23280) -#### [1.0.3](https://github.com/maximegris/angular-electron/compare/1.0.2...1.0.3) -> 7 April 2017 -- Add TravisCI [`e5640fd`](https://github.com/maximegris/angular-electron/commit/e5640fd6052be0bd23a8052f2c717f0e5fc563dd) -#### [1.0.2](https://github.com/maximegris/angular-electron/compare/1.0.1...1.0.2) -> 7 April 2017 -- Update README [`3bb45b3`](https://github.com/maximegris/angular-electron/commit/3bb45b39b4a550caaf223a786b25f12ec37174c4) -- Add TravisCI [`ef4b80e`](https://github.com/maximegris/angular-electron/commit/ef4b80ed706a3a7e7918b291d9cc4a5f17cd9791) -- Update README with angular-cli doc [`5a57578`](https://github.com/maximegris/angular-electron/commit/5a57578b47c74f68277b78adb1dd53c9b1ba4f0f) -- Fix typo [`e42bb5e`](https://github.com/maximegris/angular-electron/commit/e42bb5ed01a8fe6acbe969e60f08647d5b4100e5) -- Fix typo [`f964c3f`](https://github.com/maximegris/angular-electron/commit/f964c3ffd9397977347a17740ff30b350eaa9006) +## 3.0.0 (2018-02-25) + +* fix/ TranslateModule test ([7863aa9](https://github.com/maximegris/angular-electron/commit/7863aa9)) +* Ng not ejected anymore ([67ab31c](https://github.com/maximegris/angular-electron/commit/67ab31c)) +* pin all dependency versions ([0558d6a](https://github.com/maximegris/angular-electron/commit/0558d6a)) +* update dependencies and fix unit tests ([4d3ca6e](https://github.com/maximegris/angular-electron/commit/4d3ca6e)) + + + +## 2.7.1 (2018-02-15) + +* ref/ dernière version cli ([3df8158](https://github.com/maximegris/angular-electron/commit/3df8158)) +* version 2.7.1 ([1ae6f7a](https://github.com/maximegris/angular-electron/commit/1ae6f7a)) + + + +## 2.7.0 (2018-02-15) + +* Correction of a word. ([d6655c7](https://github.com/maximegris/angular-electron/commit/d6655c7)) +* feat/ add webview directive ([e1b5600](https://github.com/maximegris/angular-electron/commit/e1b5600)) +* migrate Angular to 5.2.0 ([b8cf343](https://github.com/maximegris/angular-electron/commit/b8cf343)) +* ref/ Remove sponsor ([2a28239](https://github.com/maximegris/angular-electron/commit/2a28239)) +* ref/ update angular & dep ([e3b1fab](https://github.com/maximegris/angular-electron/commit/e3b1fab)) +* ref/ upgrade electron (security issue) ([f6a0c4e](https://github.com/maximegris/angular-electron/commit/f6a0c4e)) +* version bump + logo resize ([3545d16](https://github.com/maximegris/angular-electron/commit/3545d16)) +* fix: fixes maximegris/angular-electron#118 ([6d21e69](https://github.com/maximegris/angular-electron/commit/6d21e69)), closes [maximegris/angular-electron#118](https://github.com/maximegris/angular-electron/issues/118) +* fix: fixes maximegris/angular-electron#98 ([136344b](https://github.com/maximegris/angular-electron/commit/136344b)), closes [maximegris/angular-electron#98](https://github.com/maximegris/angular-electron/issues/98) + + + +## 2.4.1 (2017-12-14) + +* fix/ Manage icons for linux binary generation ([ccd0601](https://github.com/maximegris/angular-electron/commit/ccd0601)) +* version 2.4.1 ([5fcfca0](https://github.com/maximegris/angular-electron/commit/5fcfca0)) + + + +## 2.4.0 (2017-12-08) + +* version 2.4.0 ([0437b33](https://github.com/maximegris/angular-electron/commit/0437b33)) + + + +## 2.3.0 (2017-12-04) + +* add ngx translate ([facda37](https://github.com/maximegris/angular-electron/commit/facda37)) +* Use HttpClientModule ([5704e2e](https://github.com/maximegris/angular-electron/commit/5704e2e)) + + + +## 2.2.0 (2017-11-28) + +* Brought back scripts defined in webpack.config.js ([441da3d](https://github.com/maximegris/angular-electron/commit/441da3d)) +* migrate to Angular 5.0.3 ([f4bc5b2](https://github.com/maximegris/angular-electron/commit/f4bc5b2)) +* Update LICENSE badge ([fa783aa](https://github.com/maximegris/angular-electron/commit/fa783aa)) +* Update to electron-builder ([0e94b52](https://github.com/maximegris/angular-electron/commit/0e94b52)) + + + +## 2.1.1 (2017-11-19) + +* Move codesponsor ([064be4c](https://github.com/maximegris/angular-electron/commit/064be4c)) + + + +## 2.1.0 (2017-11-19) + +* Add codesponsor ([87e695d](https://github.com/maximegris/angular-electron/commit/87e695d)) +* Add script for winportable ([2be2dae](https://github.com/maximegris/angular-electron/commit/2be2dae)) +* Add support for building a Windows self-contained executable ([7cfa790](https://github.com/maximegris/angular-electron/commit/7cfa790)) +* fix/ electron-packager need favicon >= 256x256 on Windows ([d2c253f](https://github.com/maximegris/angular-electron/commit/d2c253f)) +* fix/ refact webpack config (inspired by ng eject Angular 5) ([d1c30ac](https://github.com/maximegris/angular-electron/commit/d1c30ac)) +* fix/ replace aotPlugin in no prod mode ([a0caf1e](https://github.com/maximegris/angular-electron/commit/a0caf1e)) +* fix/ Replace AotPlugin to AngularCompilerPlugin ([bef106e](https://github.com/maximegris/angular-electron/commit/bef106e)) +* fix/ Update README Angular 5 ([93c6949](https://github.com/maximegris/angular-electron/commit/93c6949)) +* fix/ webpack template path ([518b66b](https://github.com/maximegris/angular-electron/commit/518b66b)) +* Mgrate to Angular 5.0.2 ([bd7bed6](https://github.com/maximegris/angular-electron/commit/bd7bed6)) +* Update package.json ([b16cf73](https://github.com/maximegris/angular-electron/commit/b16cf73)) +* Version 2.1.0 ([fccef2f](https://github.com/maximegris/angular-electron/commit/fccef2f)) + + + +## 2.0.0 (2017-11-13) + +* Add buffer to externals ([7e797f0](https://github.com/maximegris/angular-electron/commit/7e797f0)) +* Edit a typo on README ([956a2bc](https://github.com/maximegris/angular-electron/commit/956a2bc)) +* Fix #55 removed bootstraps.css which for example purpose before. ([41445eb](https://github.com/maximegris/angular-electron/commit/41445eb)), closes [#55](https://github.com/maximegris/angular-electron/issues/55) +* License MIT ([73494b7](https://github.com/maximegris/angular-electron/commit/73494b7)) +* Migrate to Angular 5 ([3a3ffe1](https://github.com/maximegris/angular-electron/commit/3a3ffe1)) + + + +## 1.9.0 (2017-09-22) + +* feat/ launch electron & webpack in // (npm run start) ([8c37cc4](https://github.com/maximegris/angular-electron/commit/8c37cc4)) +* ref/ Exclude node_modules (tslint) ([412a0a5](https://github.com/maximegris/angular-electron/commit/412a0a5)) + + + +## 1.8.1 (2017-09-22) + +* Fix #55 , and also added functionality for scripts global building ([012a894](https://github.com/maximegris/angular-electron/commit/012a894)), closes [#55](https://github.com/maximegris/angular-electron/issues/55) +* ref/ add package-lock in gitignore ([4edd98d](https://github.com/maximegris/angular-electron/commit/4edd98d)) +* remove package-lock ([8e98627](https://github.com/maximegris/angular-electron/commit/8e98627)) +* upgrade angular version 4.4.3 ([10d0f87](https://github.com/maximegris/angular-electron/commit/10d0f87)) +* version 1.8.1 ([70879d1](https://github.com/maximegris/angular-electron/commit/70879d1)) + + + +## 1.8.0 (2017-09-09) + +* upgrade lib version ([2ac2aa0](https://github.com/maximegris/angular-electron/commit/2ac2aa0)) + + + +## 1.7.0 (2017-08-18) + +* ref/ Update Angular (4.3.5) / Electron (1.7.2) / Electron Packager (8.7.2) / Typescript (2.5.0) ([f97cd81](https://github.com/maximegris/angular-electron/commit/f97cd81)) + + + +## 1.6.1 (2017-07-27) + +* fix/ angular-cli error in prod compilation with aot ([c26a5ae](https://github.com/maximegris/angular-electron/commit/c26a5ae)) +* version 1.6.1 ([899babd](https://github.com/maximegris/angular-electron/commit/899babd)) + + + +## 1.6.0 (2017-07-16) + +* ajout package-lock npm v5 ([09c0840](https://github.com/maximegris/angular-electron/commit/09c0840)) +* Change background img ([7e58717](https://github.com/maximegris/angular-electron/commit/7e58717)) +* Fix npm run build:prod ([c23bade](https://github.com/maximegris/angular-electron/commit/c23bade)) +* fix/ Bindings not updating automatically #44 ([2a90191](https://github.com/maximegris/angular-electron/commit/2a90191)), closes [#44](https://github.com/maximegris/angular-electron/issues/44) +* fix/ e2e test with jasmine2 ([9c51f32](https://github.com/maximegris/angular-electron/commit/9c51f32)) +* fix/ typescript issues ([bb0a6ab](https://github.com/maximegris/angular-electron/commit/bb0a6ab)) +* increment version deps ([bde452c](https://github.com/maximegris/angular-electron/commit/bde452c)) +* Revert last pull request - break production compilation ([ccc9064](https://github.com/maximegris/angular-electron/commit/ccc9064)) +* upgrade angular version to 4.3.0 ([ab16959](https://github.com/maximegris/angular-electron/commit/ab16959)) + + + +## 1.5.0 (2017-06-10) + +* fix/ karma Unit test ([ea13d6d](https://github.com/maximegris/angular-electron/commit/ea13d6d)) +* fix/ remove yarn because of error with module dep in prod builds ([8a49a45](https://github.com/maximegris/angular-electron/commit/8a49a45)) +* update yarn lock ([18c0e62](https://github.com/maximegris/angular-electron/commit/18c0e62)) + + + +## 1.4.4 (2017-06-08) + +* fix/ Fix npm run lint ([db7972a](https://github.com/maximegris/angular-electron/commit/db7972a)) +* ref/ electron ./dist more generic ([7e71add](https://github.com/maximegris/angular-electron/commit/7e71add)) +* Replace const icon to let icon ([dadf65f](https://github.com/maximegris/angular-electron/commit/dadf65f)) + + + +## 1.4.3 (2017-06-06) + +* fix/ favicon path during packaging ([aa2b012](https://github.com/maximegris/angular-electron/commit/aa2b012)) +* remove build node 8 till node-sass failed ([34f201d](https://github.com/maximegris/angular-electron/commit/34f201d)) +* v1.4.3 ([4961fb0](https://github.com/maximegris/angular-electron/commit/4961fb0)) + + + +## 1.4.2 (2017-05-31) + +* Change dep versions ([62d08d3](https://github.com/maximegris/angular-electron/commit/62d08d3)) +* install npm dep when building ([56948d0](https://github.com/maximegris/angular-electron/commit/56948d0)) +* Minor update ([5f282b7](https://github.com/maximegris/angular-electron/commit/5f282b7)) +* No hot reload in browser ([7892f0d](https://github.com/maximegris/angular-electron/commit/7892f0d)) +* update Electron v1.6.10 ([f2f2080](https://github.com/maximegris/angular-electron/commit/f2f2080)) +* upgrade ng/electron dependencies ([78b0f27](https://github.com/maximegris/angular-electron/commit/78b0f27)) +* chore(package): bump dependencies ([b62c7b6](https://github.com/maximegris/angular-electron/commit/b62c7b6)) + + + +## 1.4.0 (2017-05-23) + +* 1.4.0 ([23213c4](https://github.com/maximegris/angular-electron/commit/23213c4)) +* Change style home page ([93dcc52](https://github.com/maximegris/angular-electron/commit/93dcc52)) +* Fixed compiler warnings ([fca6b15](https://github.com/maximegris/angular-electron/commit/fca6b15)) +* ref/ electron main from js to ts ([835d32b](https://github.com/maximegris/angular-electron/commit/835d32b)) +* Remove caret & tilde ([dd98155](https://github.com/maximegris/angular-electron/commit/dd98155)) + + + +## 1.3.5 (2017-05-18) + +* Add new tags ([cd07a86](https://github.com/maximegris/angular-electron/commit/cd07a86)) +* v 1.3.5 ([d528a71](https://github.com/maximegris/angular-electron/commit/d528a71)) + + + +## 1.3.4 (2017-05-12) + +* feat/ add nodejs native lib in webpack config ([27d9bc6](https://github.com/maximegris/angular-electron/commit/27d9bc6)) +* Fix issue #15 ([d77cbf1](https://github.com/maximegris/angular-electron/commit/d77cbf1)), closes [#15](https://github.com/maximegris/angular-electron/issues/15) +* Ref/ Electron packager in external file ([17b04e8](https://github.com/maximegris/angular-electron/commit/17b04e8)) +* version 1.3.4 ([374af16](https://github.com/maximegris/angular-electron/commit/374af16)) + + + +## 1.3.3 (2017-05-10) + +* Chapters order ([a772b9c](https://github.com/maximegris/angular-electron/commit/a772b9c)) +* Chapters order ([06547e5](https://github.com/maximegris/angular-electron/commit/06547e5)) +* Delete spec file of electron.service ([083498e](https://github.com/maximegris/angular-electron/commit/083498e)) +* Fix issue #15 ([e7cd6e6](https://github.com/maximegris/angular-electron/commit/e7cd6e6)), closes [#15](https://github.com/maximegris/angular-electron/issues/15) +* Move Browser mode chapter ([8818750](https://github.com/maximegris/angular-electron/commit/8818750)) +* Version 1.3.3 ([f4db75b](https://github.com/maximegris/angular-electron/commit/f4db75b)) + + + +## 1.3.2 (2017-05-05) + +* Add comments of how conditional import works ([e6c1b3b](https://github.com/maximegris/angular-electron/commit/e6c1b3b)) +* Conditional import of Electron/NodeJS libs - The app can be launch in browser mode ([c434f8a](https://github.com/maximegris/angular-electron/commit/c434f8a)) +* Fix indentation ([6a9836a](https://github.com/maximegris/angular-electron/commit/6a9836a)) +* Fix prepree2e script ([b2af4fd](https://github.com/maximegris/angular-electron/commit/b2af4fd)) +* Set e2e tests ([d223974](https://github.com/maximegris/angular-electron/commit/d223974)) +* Suround electron browser by try/catch ([88be472](https://github.com/maximegris/angular-electron/commit/88be472)) +* Update @types/node ([9d43304](https://github.com/maximegris/angular-electron/commit/9d43304)) +* Update readme with e2e info ([01bbf13](https://github.com/maximegris/angular-electron/commit/01bbf13)) +* update version ([0849a0a](https://github.com/maximegris/angular-electron/commit/0849a0a)) + + + +## 1.3.1 (2017-05-05) + +* Add routing module ([7334ce8](https://github.com/maximegris/angular-electron/commit/7334ce8)) +* Fixed hardcoded path in glob copy, blocking assets after eject ([815d519](https://github.com/maximegris/angular-electron/commit/815d519)) +* update comments in dev/prod env files ([7cf6a51](https://github.com/maximegris/angular-electron/commit/7cf6a51)) +* Version 1.3.1 ([f18ac77](https://github.com/maximegris/angular-electron/commit/f18ac77)) + + + +## 1.3.0 (2017-05-01) + +* Fix webpack prod/dev env ([8549da1](https://github.com/maximegris/angular-electron/commit/8549da1)) + + + +## 1.2.1 (2017-04-30) + +* allowJs ([4efd188](https://github.com/maximegris/angular-electron/commit/4efd188)) +* Example url background in scss ([3705a35](https://github.com/maximegris/angular-electron/commit/3705a35)) +* Fix electron build (extract-zip workaround) ([a7ee90e](https://github.com/maximegris/angular-electron/commit/a7ee90e)) +* Fix webpack config url in css ([cea4be5](https://github.com/maximegris/angular-electron/commit/cea4be5)) +* html loader ([c55558a](https://github.com/maximegris/angular-electron/commit/c55558a)) +* update version 1.2.1 ([78e8da7](https://github.com/maximegris/angular-electron/commit/78e8da7)) + + + +## 1.2.0 (2017-04-19) + +* Set one example of css class in app component ([a15775f](https://github.com/maximegris/angular-electron/commit/a15775f)) +* Update npm dependencies ([0a93ebe](https://github.com/maximegris/angular-electron/commit/0a93ebe)) + + + +## 1.1.2 (2017-04-18) + +* Fix typo & fix script electron:mac ([bd06859](https://github.com/maximegris/angular-electron/commit/bd06859)) +* Set theme jekyll-theme-architect ([644d857](https://github.com/maximegris/angular-electron/commit/644d857)) +* update README ([97fa63d](https://github.com/maximegris/angular-electron/commit/97fa63d)) +* update README ([23fc0a9](https://github.com/maximegris/angular-electron/commit/23fc0a9)) +* update README ([a8dcf6a](https://github.com/maximegris/angular-electron/commit/a8dcf6a)) +* v1.1.2 ([e29e467](https://github.com/maximegris/angular-electron/commit/e29e467)) + + + +## 1.1.1 (2017-04-12) + +* Fix webpack.config file path (travisci) ([a172df9](https://github.com/maximegris/angular-electron/commit/a172df9)) +* live reload on disk ([7bb2f8b](https://github.com/maximegris/angular-electron/commit/7bb2f8b)) +* Remove unused dependency (webpack-dev-server) ([e9150f4](https://github.com/maximegris/angular-electron/commit/e9150f4)) + + + +## 1.1.0 (2017-04-12) + +* add depdencies CI & Licence ([6ceb0f2](https://github.com/maximegris/angular-electron/commit/6ceb0f2)) +* Override webpack configuration ([60d6116](https://github.com/maximegris/angular-electron/commit/60d6116)) + + + +## 1.0.3 (2017-04-07) + +* Add TravisCI ([e5640fd](https://github.com/maximegris/angular-electron/commit/e5640fd)) +* v1.0.3 ([9866d53](https://github.com/maximegris/angular-electron/commit/9866d53)) + + + +## 1.0.2 (2017-04-07) + +* Add TravisCI ([ef4b80e](https://github.com/maximegris/angular-electron/commit/ef4b80e)) +* Fix typo ([f964c3f](https://github.com/maximegris/angular-electron/commit/f964c3f)) +* Fix typo ([e42bb5e](https://github.com/maximegris/angular-electron/commit/e42bb5e)) +* Update README ([3bb45b3](https://github.com/maximegris/angular-electron/commit/3bb45b3)) +* Update README with angular-cli doc ([5a57578](https://github.com/maximegris/angular-electron/commit/5a57578)) +* v1.0.2 ([1bd8e0e](https://github.com/maximegris/angular-electron/commit/1bd8e0e)) + + + +## 1.0.1 (2017-04-03) + +* feat/ Add electron-packager scripts ([57891dc](https://github.com/maximegris/angular-electron/commit/57891dc)) +* ref/ update README ([7fddc20](https://github.com/maximegris/angular-electron/commit/7fddc20)) +* update README ([9a983c1](https://github.com/maximegris/angular-electron/commit/9a983c1)) +* v1.0.0 ([7a21eb9](https://github.com/maximegris/angular-electron/commit/7a21eb9)) +* v1.0.1 ([68275a3](https://github.com/maximegris/angular-electron/commit/68275a3)) +* chore: initial commit from @angular/cli ([616a69e](https://github.com/maximegris/angular-electron/commit/616a69e)) + + -#### 1.0.1 -> 3 April 2017 -- ref/ update README [`7fddc20`](https://github.com/maximegris/angular-electron/commit/7fddc20484cbb23ff2128c209a7548408c311111) -- feat/ Add electron-packager scripts [`57891dc`](https://github.com/maximegris/angular-electron/commit/57891dc9f409f95d2a7f2ae88ebe7a0a40f06218) -- update README [`9a983c1`](https://github.com/maximegris/angular-electron/commit/9a983c1a1a1e23638d1660f513070aab35a90e10) -- chore: initial commit from @angular/cli [`616a69e`](https://github.com/maximegris/angular-electron/commit/616a69ea0b4d3601bfcda207aca238660458ac55) diff --git a/package.json b/package.json index 40d984e..ede8236 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "electron:mac": "npm run build:prod && npx electron-builder build --mac", "test": "npm run postinstall:web && ng test", "e2e": "npm run postinstall:web && ng e2e", - "version": "conventional-changelog -p angular -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md" + "version": "conventional-changelog -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md" }, "dependencies": {}, "devDependencies": { From f146d5def1f390abd395355686cefc452d95c6db Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 11 Nov 2018 12:37:26 +0100 Subject: [PATCH 36/41] update README --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c631726..c57c0ab 100644 --- a/README.md +++ b/README.md @@ -86,7 +86,8 @@ Note that you can't use Electron or NodeJS native libraries in this case. Please - Angular 4 & Electron 1 : Branch [angular4](https://github.com/maximegris/angular-electron/tree/angular4) - Angular 5 & Electron 1 : Branch [angular5](https://github.com/maximegris/angular-electron/tree/angular5) -- Angular 6 & Electron 2 : (master) +- Angular 6 & Electron 3 : Branch [angular5](https://github.com/maximegris/angular-electron/tree/angular6) +- Angular 7 & Electron 3 : (master) [build-badge]: https://travis-ci.org/maximegris/angular-electron.svg?branch=master [build]: https://travis-ci.org/maximegris/angular-electron.svg?branch=master From 723233c175d8b78d056374eab2af529dbc49e07e Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Sun, 11 Nov 2018 12:40:49 +0100 Subject: [PATCH 37/41] fix/ typo README --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c57c0ab..74757b4 100644 --- a/README.md +++ b/README.md @@ -86,7 +86,7 @@ Note that you can't use Electron or NodeJS native libraries in this case. Please - Angular 4 & Electron 1 : Branch [angular4](https://github.com/maximegris/angular-electron/tree/angular4) - Angular 5 & Electron 1 : Branch [angular5](https://github.com/maximegris/angular-electron/tree/angular5) -- Angular 6 & Electron 3 : Branch [angular5](https://github.com/maximegris/angular-electron/tree/angular6) +- Angular 6 & Electron 3 : Branch [angular6](https://github.com/maximegris/angular-electron/tree/angular6) - Angular 7 & Electron 3 : (master) [build-badge]: https://travis-ci.org/maximegris/angular-electron.svg?branch=master From fde371f5ae958db3b042388d8f40b675d424cf3c Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 30 Nov 2018 22:48:47 +0100 Subject: [PATCH 38/41] fix/ typo Angular 7 --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 74757b4..e93824c 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ # Introduction -Bootstrap and package your project with Angular 6(+) and Electron (Typescript + SASS + Hot Reload) for creating Desktop applications. +Bootstrap and package your project with Angular 7 and Electron (Typescript + SASS + Hot Reload) for creating Desktop applications. Currently runs with: From 41aeb57a3102328c9e224faa071cb485d7eb5058 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 30 Nov 2018 22:49:07 +0100 Subject: [PATCH 39/41] ref/ remve npx - fix vulnerabilities --- package.json | 71 ++++++++++++++++++++++++++++++------------------------------ 1 file changed, 35 insertions(+), 36 deletions(-) diff --git a/package.json b/package.json index ede8236..55d7da2 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular-electron", - "version": "5.0.0", + "version": "5.1.0", "description": "Angular 7 with Electron (Typescript + SASS + Hot Reload)", "homepage": "https://github.com/maximegris/angular-electron", "author": { @@ -17,7 +17,7 @@ "main": "main.js", "private": true, "scripts": { - "postinstall": "npm run postinstall:electron && npx electron-builder install-app-deps", + "postinstall": "npm run postinstall:electron && electron-builder install-app-deps", "postinstall:web": "node postinstall-web", "postinstall:electron": "node postinstall", "ng": "ng", @@ -30,9 +30,9 @@ "electron:serve-tsc": "tsc -p tsconfig-serve.json", "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:serve-tsc && electron . --serve", "electron:local": "npm run build:prod && electron .", - "electron:linux": "npm run build:prod && npx electron-builder build --linux", - "electron:windows": "npm run build:prod && npx electron-builder build --windows", - "electron:mac": "npm run build:prod && npx electron-builder build --mac", + "electron:linux": "npm run build:prod && electron-builder build --linux", + "electron:windows": "npm run build:prod && .electron-builder build --windows", + "electron:mac": "npm run build:prod && electron-builder build --mac", "test": "npm run postinstall:web && ng test", "e2e": "npm run postinstall:web && ng e2e", "version": "conventional-changelog -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md" @@ -40,44 +40,43 @@ "dependencies": {}, "devDependencies": { "@angular-devkit/build-angular": "~0.10.0", - "@angular/cli": "7.0.5", - "@angular/common": "7.0.3", - "@angular/compiler": "7.0.3", - "@angular/compiler-cli": "7.0.3", - "@angular/core": "7.0.3", - "@angular/forms": "7.0.3", - "@angular/http": "7.0.3", - "@angular/language-service": "7.0.3", - "@angular/platform-browser": "7.0.3", - "@angular/platform-browser-dynamic": "7.0.3", - "@angular/router": "7.0.3", - "@ngx-translate/core": "10.0.1", - "@ngx-translate/http-loader": "3.0.1", + "@angular/cli": "7.0.6", + "@angular/common": "7.1.1", + "@angular/compiler": "7.1.1", + "@angular/compiler-cli": "7.1.1", + "@angular/core": "7.1.1", + "@angular/forms": "7.1.1", + "@angular/http": "7.1.1", + "@angular/language-service": "7.1.1", + "@angular/platform-browser": "7.1.1", + "@angular/platform-browser-dynamic": "7.1.1", + "@angular/router": "7.1.1", + "@ngx-translate/core": "11.0.1", + "@ngx-translate/http-loader": "4.0.0", "@types/jasmine": "2.8.7", "@types/jasminewd2": "2.0.3", "@types/node": "8.9.4", - "codelyzer": "4.2.1", - "conventional-changelog-cli": "^2.0.11", - "core-js": "2.5.6", - "electron": "3.0.8", - "electron-builder": "20.28.1", - "electron-reload": "1.2.2", - "jasmine-core": "3.1.0", + "codelyzer": "4.5.0", + "conventional-changelog-cli": "2.0.11", + "core-js": "2.5.7", + "electron": "3.0.10", + "electron-builder": "20.36.2", + "electron-reload": "1.3.0", + "jasmine-core": "3.3.0", "jasmine-spec-reporter": "4.2.1", - "karma": "2.0.2", + "karma": "3.1.1", "karma-chrome-launcher": "2.2.0", - "karma-coverage-istanbul-reporter": "2.0.0", - "karma-jasmine": "1.1.2", - "karma-jasmine-html-reporter": "1.1.0", - "npm-run-all": "4.1.3", - "npx": "10.2.0", - "protractor": "5.3.2", + "karma-coverage-istanbul-reporter": "2.0.4", + "karma-jasmine": "2.0.1", + "karma-jasmine-html-reporter": "1.4.0", + "npm-run-all": "4.1.5", + "protractor": "5.4.1", "rxjs": "6.3.3", - "ts-node": "6.0.3", - "tslint": "5.10.0", + "ts-node": "7.0.1", + "tslint": "5.11.0", "typescript": "3.1.6", - "wait-on": "2.1.0", - "webdriver-manager": "12.0.6", + "wait-on": "3.2.0", + "webdriver-manager": "12.1.0", "zone.js": "0.8.26" } } From 45bab44fa220796b4d691320f7e2ffdbbae0b137 Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 30 Nov 2018 22:49:43 +0100 Subject: [PATCH 40/41] fix/ typo script npm electron:windows --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 55d7da2..efba9af 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "electron:serve": "wait-on http-get://localhost:4200/ && npm run electron:serve-tsc && electron . --serve", "electron:local": "npm run build:prod && electron .", "electron:linux": "npm run build:prod && electron-builder build --linux", - "electron:windows": "npm run build:prod && .electron-builder build --windows", + "electron:windows": "npm run build:prod && electron-builder build --windows", "electron:mac": "npm run build:prod && electron-builder build --mac", "test": "npm run postinstall:web && ng test", "e2e": "npm run postinstall:web && ng e2e", From b790e126ae4bbcef60185ddacb410f8737d28c0d Mon Sep 17 00:00:00 2001 From: Maxime GRIS Date: Fri, 30 Nov 2018 22:52:40 +0100 Subject: [PATCH 41/41] [Bumped Version] 5.1.0 --- CHANGELOG.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9d520a5..bc31a07 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,17 @@ +## 5.1.0 (2018-11-30) + +* fix/ typo Angular 7 ([fde371f](https://github.com/maximegris/angular-electron/commit/fde371f)) +* fix/ typo README ([723233c](https://github.com/maximegris/angular-electron/commit/723233c)) +* fix/ typo script npm electron:windows ([45bab44](https://github.com/maximegris/angular-electron/commit/45bab44)) +* ref/ remve npx - fix vulnerabilities ([41aeb57](https://github.com/maximegris/angular-electron/commit/41aeb57)) +* update README ([f146d5d](https://github.com/maximegris/angular-electron/commit/f146d5d)) + + + ## 5.0.0 (2018-11-11) * Fix typos in README file ([0440ee9](https://github.com/maximegris/angular-electron/commit/0440ee9)) +* ref/ Generate changelog ([a89b3ce](https://github.com/maximegris/angular-electron/commit/a89b3ce)) * ref/ Upgrade to Angular 7 ([315a79b](https://github.com/maximegris/angular-electron/commit/315a79b)) * Update electron-builder.json files rule ([82c7bcf](https://github.com/maximegris/angular-electron/commit/82c7bcf)) * Update Version Electron 2 to 3 #hacktoberfest ([f083328](https://github.com/maximegris/angular-electron/commit/f083328))