Added PWA support

This commit is contained in:
Eraldo Hasanaj
2019-02-15 11:41:29 +01:00
parent 3d6b7767df
commit 4ad50fe386
17 changed files with 328 additions and 312 deletions

View File

@@ -24,7 +24,8 @@
"tsConfig": "src/tsconfig.app.json",
"assets": [
"src/favicon.ico",
"src/assets"
"src/assets",
"src/manifest.webmanifest"
],
"styles": [
"src/styles.scss"
@@ -54,7 +55,8 @@
"maximumWarning": "2mb",
"maximumError": "5mb"
}
]
],
"serviceWorker": true
}
}
},
@@ -88,7 +90,8 @@
"scripts": [],
"assets": [
"src/favicon.ico",
"src/assets"
"src/assets",
"src/manifest.webmanifest"
]
}
},

27
ngsw-config.json Normal file
View File

@@ -0,0 +1,27 @@
{
"index": "/index.html",
"assetGroups": [
{
"name": "app",
"installMode": "prefetch",
"resources": {
"files": [
"/favicon.ico",
"/index.html",
"/*.css",
"/*.js"
]
}
}, {
"name": "assets",
"installMode": "lazy",
"updateMode": "prefetch",
"resources": {
"files": [
"/assets/**",
"/*.(eot|svg|cur|jpg|png|webp|gif|otf|ttf|woff|woff2|ani)"
]
}
}
]
}

465
package-lock.json generated
View File

File diff suppressed because it is too large Load Diff

View File

@@ -19,7 +19,9 @@
"@angular/forms": "~7.2.0",
"@angular/platform-browser": "~7.2.0",
"@angular/platform-browser-dynamic": "~7.2.0",
"@angular/pwa": "^0.13.1",
"@angular/router": "~7.2.0",
"@angular/service-worker": "~7.2.0",
"@ngxs/store": "^3.3.4",
"@zxing/ngx-scanner": "^1.3.0",
"angular2-signaturepad": "^2.8.0",

View File

@@ -37,6 +37,7 @@ import { AutocompleteState } from './core/store/state/autocomplete.state';
import { ScrollingModule } from '@angular/cdk/scrolling';
import { NotifierState } from './core/store/state/notifier.state';
import { ServiceWorkerModule } from '@angular/service-worker';
const states = [
FeedState,
@@ -87,7 +88,8 @@ export function _feedServiceEndpointProviderFactory(conf: ConfigService) {
FormsModule,
ReactiveFormsModule,
SharedModule,
ScrollingModule
ScrollingModule,
ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production })
],
providers: [
{

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 792 B

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 958 B

View File

@@ -9,8 +9,11 @@
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="icon" type="image/x-icon" href="favicon.ico">
<link href="https://fonts.googleapis.com/css?family=Open+Sans:400,600,700" rel="stylesheet">
<link rel="manifest" href="manifest.webmanifest">
<meta name="theme-color" content="#1976d2">
</head>
<body>
<app-root></app-root>
<noscript>Please enable JavaScript to continue using this application.</noscript>
</body>
</html>

52
src/manifest.webmanifest Normal file
View File

@@ -0,0 +1,52 @@
{
"name": "Hugendubel Instore Mitarbeiter App",
"short_name": "Hima",
"theme_color": "#1976d2",
"background_color": "#fafafa",
"scope": "/",
"lang": "de",
"start_url": "https://hugendubel.umwerk.net",
"display": "fullscreen",
"icons": [
{
"src": "assets/icons/icon-72x72.png",
"sizes": "72x72",
"type": "image/png"
},
{
"src": "assets/icons/icon-96x96.png",
"sizes": "96x96",
"type": "image/png"
},
{
"src": "assets/icons/icon-128x128.png",
"sizes": "128x128",
"type": "image/png"
},
{
"src": "assets/icons/icon-144x144.png",
"sizes": "144x144",
"type": "image/png"
},
{
"src": "assets/icons/icon-152x152.png",
"sizes": "152x152",
"type": "image/png"
},
{
"src": "assets/icons/icon-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
"src": "assets/icons/icon-384x384.png",
"sizes": "384x384",
"type": "image/png"
},
{
"src": "assets/icons/icon-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
]
}

View File

@@ -1,7 +1,7 @@
html {
overflow: scroll;
overflow-x: hidden;
overflow-y: hidden;
// overflow-y: hidden;
}
::-webkit-scrollbar {
width: 0px; // remove scrollbar space

View File

@@ -115,6 +115,17 @@
rxjs "6.3.3"
source-map "0.7.3"
"@angular-devkit/core@7.3.1":
version "7.3.1"
resolved "https://registry.yarnpkg.com/@angular-devkit/core/-/core-7.3.1.tgz#d92f6545796579cabdcfc29579a2c977f7a96c6c"
integrity sha512-56XDWWfIzOAkEk69lBLgmCYybPUA4yjunhmMlCk7vVdb7gbQUyzNjFD04Uj0GjlejatAQ5F76tRwygD9C+3RXQ==
dependencies:
ajv "6.7.0"
chokidar "2.0.4"
fast-json-stable-stringify "2.0.0"
rxjs "6.3.3"
source-map "0.7.3"
"@angular-devkit/schematics@7.2.2":
version "7.2.2"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-7.2.2.tgz#d8d667684603e1debcc4598d88a254560e787f87"
@@ -122,6 +133,14 @@
"@angular-devkit/core" "7.2.2"
rxjs "6.3.3"
"@angular-devkit/schematics@7.3.1":
version "7.3.1"
resolved "https://registry.yarnpkg.com/@angular-devkit/schematics/-/schematics-7.3.1.tgz#7dc704005b966ea6c1ee62f380120183bb76eee6"
integrity sha512-cd7usiasfSgw75INz72/VssrLr9tiVRYfo1TEdvr9ww0GuQbuQpB33xbV8W135eAV8+wzQ3Ce8ohaDHibvj6Yg==
dependencies:
"@angular-devkit/core" "7.3.1"
rxjs "6.3.3"
"@angular/animations@~7.2.0":
version "7.2.1"
resolved "https://registry.yarnpkg.com/@angular/animations/-/animations-7.2.1.tgz#10cdca8b68ce9a91d81b77348146d1db608fc25f"
@@ -206,6 +225,17 @@
dependencies:
tslib "^1.9.0"
"@angular/pwa@^0.13.1":
version "0.13.1"
resolved "https://registry.yarnpkg.com/@angular/pwa/-/pwa-0.13.1.tgz#e09c11df4e322fc12080f17de88dbe0eaed04769"
integrity sha512-jdZCZxOcjKcZF2CdKCPoR4z325c+RvuPSJysxYlulwrcMQ2fllzP7/Ye+TMEZqljuaJba9MpguxNu7H3X3+bxQ==
dependencies:
"@angular-devkit/core" "7.3.1"
"@angular-devkit/schematics" "7.3.1"
"@schematics/angular" "7.3.1"
parse5-html-rewriting-stream "5.1.0"
rxjs "6.3.3"
"@angular/router@~7.2.0":
version "7.2.1"
resolved "https://registry.yarnpkg.com/@angular/router/-/router-7.2.1.tgz#c81d5347bdc8077c037562e28d0b601a800c0e3f"
@@ -337,6 +367,15 @@
"@angular-devkit/schematics" "7.2.2"
typescript "3.2.2"
"@schematics/angular@7.3.1":
version "7.3.1"
resolved "https://registry.yarnpkg.com/@schematics/angular/-/angular-7.3.1.tgz#6fcd7004210fa9305310c3109c084df5c5521776"
integrity sha512-0Ne8APPlTAjKg5CSZqluwCuW/5yPjr3ALCWzqwPxN0suE745usThtasBmqrjw0RMIt8nRqRgtg54Z7lCPO9ZFg==
dependencies:
"@angular-devkit/core" "7.3.1"
"@angular-devkit/schematics" "7.3.1"
typescript "3.2.4"
"@schematics/update@0.12.2":
version "0.12.2"
resolved "https://registry.yarnpkg.com/@schematics/update/-/update-0.12.2.tgz#52bcb571f5de2391b04c89807e67113eb517aaa2"
@@ -617,6 +656,15 @@ ajv@6.6.2:
json-schema-traverse "^0.4.1"
uri-js "^4.2.2"
ajv@6.7.0, ajv@^6.1.0, ajv@^6.5.5:
version "6.7.0"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.7.0.tgz#e3ce7bb372d6577bb1839f1dfdfcbf5ad2948d96"
dependencies:
fast-deep-equal "^2.0.1"
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.4.1"
uri-js "^4.2.2"
ajv@^5.0.0:
version "5.5.2"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-5.5.2.tgz#73b5eeca3fab653e3d3f9422b341ad42205dc965"
@@ -626,15 +674,6 @@ ajv@^5.0.0:
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.3.0"
ajv@^6.1.0, ajv@^6.5.5:
version "6.7.0"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.7.0.tgz#e3ce7bb372d6577bb1839f1dfdfcbf5ad2948d96"
dependencies:
fast-deep-equal "^2.0.1"
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.4.1"
uri-js "^4.2.2"
amdefine@>=0.0.4:
version "1.0.1"
resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
@@ -4962,11 +5001,26 @@ parse-json@^4.0.0:
error-ex "^1.3.1"
json-parse-better-errors "^1.0.1"
parse5-html-rewriting-stream@5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-5.1.0.tgz#63f92c958764aea8cbe3aa68f2e5895c32068ab8"
integrity sha512-hZlaOTHJs4dpC5yFHnOSEMh26ErsqTsLzxKqkuRcUqtiu0kMsBQ9pkgANkECDyoBUhJ3+hvb2DPLsyqbtcS61Q==
dependencies:
parse5 "^5.1.0"
parse5-sax-parser "^5.1.0"
parse5-sax-parser@^5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/parse5-sax-parser/-/parse5-sax-parser-5.1.0.tgz#ec234d23223a8054a74ff173aa3dc2da74c5bbd9"
integrity sha512-VEhdEDhBkoSILPmsZ96SoIIUow3hZbtgQsqXw7r8DxxnqsCIO0fwkT9mWgBcf9SPjVUh92liuEprHrrYzXBPWQ==
dependencies:
parse5 "^5.1.0"
parse5@4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/parse5/-/parse5-4.0.0.tgz#6d78656e3da8d78b4ec0b906f7c08ef1dfe3f608"
parse5@^5.0.0:
parse5@^5.0.0, parse5@^5.1.0:
version "5.1.0"
resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2"
@@ -6732,7 +6786,7 @@ typescript@3.2.2:
version "3.2.2"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.2.2.tgz#fe8101c46aa123f8353523ebdcf5730c2ae493e5"
typescript@~3.2.2:
typescript@3.2.4, typescript@~3.2.2:
version "3.2.4"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.2.4.tgz#c585cb952912263d915b462726ce244ba510ef3d"