Skip to content

Instantly share code, notes, and snippets.

@onderceylan
Created January 28, 2019 23:29
Show Gist options
  • Save onderceylan/99a06991d070984bffb98423b06e7864 to your computer and use it in GitHub Desktop.
Save onderceylan/99a06991d070984bffb98423b06e7864 to your computer and use it in GitHub Desktop.
Build a production ready PWA with Angular and Firebase - ngsw.json
{
"configVersion": 1,
"appData": {
"version": "1.1.0",
"changelog": "Added better resource caching"
},
"index": "/index.html",
"assetGroups": [
{
"name": "shell",
"installMode": "prefetch",
"updateMode": "prefetch",
"urls": [
"/favicon.ico",
"/index.html",
"/main.cb67e635642476004207.js",
"/polyfills.1840410d8aa59aab644c.js",
"/runtime.a66f828dca56eeb90e02.js",
"/styles.3ff695c00d717f2d2a11.css",
"/vendor.3335969a60ee384a24da.js"
],
"patterns": []
},
{
"name": "assets",
"installMode": "lazy",
"updateMode": "prefetch",
"urls": [
"/assets/icons/icon-128x128.png",
"/assets/icons/icon-144x144.png",
"/assets/icons/icon-152x152.png",
"/assets/icons/icon-192x192.png",
"/assets/icons/icon-384x384.png",
"/assets/icons/icon-512x512.png",
"/assets/icons/icon-72x72.png",
"/assets/icons/icon-96x96.png"
],
"patterns": [
"https:\\/\\/fonts\\.googleapis\\.com\\/.*"
]
}
],
"dataGroups": [
{
"name": "from-static",
"patterns": [
"\\/data\\/data\\.json"
],
"strategy": "performance",
"maxSize": 10,
"maxAge": 86400000,
"timeoutMs": 5000,
"version": 1
},
{
"name": "from-api",
"patterns": [
"\\/dashboard",
"\\/user"
],
"strategy": "freshness",
"maxSize": 15,
"maxAge": 3600000,
"timeoutMs": 3000,
"version": 2
}
],
"hashTable": {
"/assets/icons/icon-128x128.png": "dae3b6ed49bdaf4327b92531d4b5b4a5d30c7532",
"/assets/icons/icon-144x144.png": "b0bd89982e08f9bd2b642928f5391915b74799a7",
"/assets/icons/icon-152x152.png": "7479a9477815dfd9668d60f8b3b2fba709b91310",
"/assets/icons/icon-192x192.png": "1abd80d431a237a853ce38147d8c63752f10933b",
"/assets/icons/icon-384x384.png": "329749cd6393768d3131ed6304c136b1ca05f2fd",
"/assets/icons/icon-512x512.png": "559d9c4318b45a1f2b10596bbb4c960fe521dbcc",
"/assets/icons/icon-72x72.png": "c457e56089a36952cd67156f9996bc4ce54a5ed9",
"/assets/icons/icon-96x96.png": "3914125a4b445bf111c5627875fc190f560daa41",
"/favicon.ico": "84161b857f5c547e3699ddfbffc6d8d737542e01",
"/index.html": "40b6fc0e0fae9194170df9397b48487bcd139bcd",
"/main.cb67e635642476004207.js": "622827b74fd2511ca3293cc9e7bc0873e40b38a0",
"/polyfills.1840410d8aa59aab644c.js": "c59ac0163bbb63bf9a602a38fa41aaa3da1dae99",
"/runtime.a66f828dca56eeb90e02.js": "078e320cc6fdaf355836c3b1c52b059cdd33fc7e",
"/styles.3ff695c00d717f2d2a11.css": "da39a3ee5e6b4b0d3255bfef95601890afd80709",
"/vendor.3335969a60ee384a24da.js": "e06c17d4e5b96102d8bb7828bc473c1a4fce27ea"
},
"navigationUrls": [
{
"positive": true,
"regex": "^\\/.*$"
},
{
"positive": false,
"regex": "^\\/(?:.+\\/)?[^/]*\\.[^/]*$"
},
{
"positive": false,
"regex": "^\\/(?:.+\\/)?[^/]*__[^/]*$"
},
{
"positive": false,
"regex": "^\\/(?:.+\\/)?[^/]*__[^/]*\\/.*$"
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment