Prepare web to PWA installable app.

Application is ready to use as offline app with caching requests.
pull/48/head
Kamil 2022-01-22 17:54:50 +01:00
rodzic d3252b391a
commit d90f24a0c4
6 zmienionych plików z 61 dodań i 4 usunięć

3
.gitignore vendored
Wyświetl plik

@ -132,3 +132,6 @@ dmypy.json
# IDE folders # IDE folders
.idea .idea
.vscode .vscode
# IIS configuration file
web.config

Wyświetl plik

@ -199,6 +199,18 @@
<path fill="currentColor" d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" /> <path fill="currentColor" d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z" />
</svg> </svg>
</button> </button>
<script>
if ('serviceWorker' in navigator){
window.addEventListener('load', () =>{
navigator.serviceWorker.register('serviceWorker.js')
.then(reg => {
console.log('SW registred', reg);
}).catch(err => {
console.log('SW registration faild!', err);
});
});
}
</script>
<script src="./src/other-ui-stuff.js"></script> <script src="./src/other-ui-stuff.js"></script>
<script src="./src/map.js"></script> <script src="./src/map.js"></script>
<script src="./src/osm-integration.js"></script> <script src="./src/osm-integration.js"></script>

34
serviceWorker.js 100644
Wyświetl plik

@ -0,0 +1,34 @@
const cacheName = 'aed-map';
const resToPrecache = [
'/',
'/index.html',
'/src/css/main.css'
];
self.addEventListener('install', event => {
console.log('SW install event!');
event.waitUntil(
caches.open(cacheName)
.then(cache => {
return cache.addAll(resToPrecache);
})
);
});
self.addEventListener('activate', event => {
console.log('SW now ready to handle fetches!');
});
self.addEventListener('fetch', (event) => {
console.log('SW fetch: ' + event.request.url);
event.respondWith(
caches.match(event.request).then((resp) => {
return resp || fetch(event.request).then((response) => {
return caches.open(cacheName).then((cache) => {
cache.put(event.request, response.clone());
return response;
});
});
})
);
});

Wyświetl plik

@ -1,20 +1,28 @@
{ {
"name": "AED Mapa", "name": "AED Mapa",
"short_name": "AED Mapa", "short_name": "AED Mapa",
"start_url": "/", "start_url": "/index.html",
"icons": [ "icons": [
{ {
"src": "./src/favicon/android-chrome-192x192.png", "src": "./src/favicon/android-chrome-192x192.png",
"sizes": "192x192", "sizes": "192x192",
"type": "image/png" "type": "image/png",
"purpose": "any maskable"
}, },
{ {
"src": "./src/favicon/android-chrome-256x256.png", "src": "./src/favicon/android-chrome-256x256.png",
"sizes": "256x256", "sizes": "256x256",
"type": "image/png" "type": "image/png",
"purpose": "any maskable"
},
{
"src": "./src/favicon/android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png",
"purpose": "any maskable"
} }
], ],
"theme_color": "#008855", "theme_color": "#008855",
"background_color": "#f5f5f5", "background_color": "#f5f5f5",
"display": "standalone" "display": "fullscreen"
} }

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 45 KiB

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 3.6 KiB