diff --git a/www/assets/images/box-open-dashed.svg b/www/assets/images/box-open-dashed.svg
index f4e2a40..5420071 100644
--- a/www/assets/images/box-open-dashed.svg
+++ b/www/assets/images/box-open-dashed.svg
@@ -1 +1,61 @@
-
+
+
diff --git a/www/assets/images/icons/128x128.png b/www/assets/images/icons/128x128.png
new file mode 100644
index 0000000..66b56d1
Binary files /dev/null and b/www/assets/images/icons/128x128.png differ
diff --git a/www/assets/images/icons/144x144.png b/www/assets/images/icons/144x144.png
new file mode 100644
index 0000000..5294378
Binary files /dev/null and b/www/assets/images/icons/144x144.png differ
diff --git a/www/assets/images/icons/152x152.png b/www/assets/images/icons/152x152.png
new file mode 100644
index 0000000..036de0f
Binary files /dev/null and b/www/assets/images/icons/152x152.png differ
diff --git a/www/assets/images/icons/192x192.png b/www/assets/images/icons/192x192.png
new file mode 100644
index 0000000..5025ae7
Binary files /dev/null and b/www/assets/images/icons/192x192.png differ
diff --git a/www/assets/images/icons/256x256.png b/www/assets/images/icons/256x256.png
new file mode 100644
index 0000000..ce167b9
Binary files /dev/null and b/www/assets/images/icons/256x256.png differ
diff --git a/www/assets/images/icons/32x32.png b/www/assets/images/icons/32x32.png
new file mode 100644
index 0000000..fb4fedc
Binary files /dev/null and b/www/assets/images/icons/32x32.png differ
diff --git a/www/assets/images/icons/512x512.png b/www/assets/images/icons/512x512.png
new file mode 100644
index 0000000..44a3225
Binary files /dev/null and b/www/assets/images/icons/512x512.png differ
diff --git a/www/assets/images/icons/logo.svg b/www/assets/images/icons/logo.svg
new file mode 100644
index 0000000..8b9319d
--- /dev/null
+++ b/www/assets/images/icons/logo.svg
@@ -0,0 +1,153 @@
+
+
+
+
diff --git a/www/index.html b/www/index.html
index c24b5db..dd33632 100644
--- a/www/index.html
+++ b/www/index.html
@@ -5,6 +5,8 @@
PackageHelper
+
+
@@ -58,6 +60,21 @@
+
-
\ No newline at end of file
+
+
+
\ No newline at end of file
diff --git a/www/manifest.json b/www/manifest.json
new file mode 100644
index 0000000..589afa2
--- /dev/null
+++ b/www/manifest.json
@@ -0,0 +1,60 @@
+{
+ "name": "PackageHelper",
+ "short_name": "PackageHelper",
+ "icons": [
+ {
+ "src": "assets/images/icons/32x32.png",
+ "sizes": "32x32",
+ "type": "image/png"
+ },
+ {
+ "src": "assets/images/icons/128x128.png",
+ "sizes": "128x128",
+ "type": "image/png"
+ },
+ {
+ "src": "assets/images/icons/144x144.png",
+ "sizes": "144x144",
+ "type": "image/png"
+ },
+ {
+ "src": "assets/images/icons/152x152.png",
+ "sizes": "152x152",
+ "type": "image/png"
+ },
+ {
+ "src": "assets/images/icons/192x192.png",
+ "sizes": "192x192",
+ "type": "image/png"
+ },
+ {
+ "src": "assets/images/icons/256x256.png",
+ "sizes": "256x256",
+ "type": "image/png"
+ },
+ {
+ "src": "assets/images/icons/512x512.png",
+ "sizes": "512x512",
+ "type": "image/png"
+ }
+ ],
+ "scope": "/",
+ "lang": "en-US",
+ "serviceworker": {
+ "src": "./sw.js"
+ },
+ "categories": ["navigation", "productivity", "utilities", "weather"],
+ "prefer_related_applications": true,
+ "related_applications": [
+ {
+ "platform": "play",
+ "url": "https://play.google.com/store/apps/details?id=com.netsyms.PackageHelper",
+ "id": "com.netsyms.PackageHelper"
+ }
+ ],
+ "start_url": "index.html",
+ "display": "standalone",
+ "background_color": "#ffffff",
+ "theme_color": "#2196f3",
+ "iarc_rating_id": "0e146f9e-8f83-4981-8d7d-30b857ac8db6"
+}
\ No newline at end of file
diff --git a/www/sw.js b/www/sw.js
new file mode 100644
index 0000000..ef262c3
--- /dev/null
+++ b/www/sw.js
@@ -0,0 +1,169 @@
+/*
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+var currentCache = 'v1.4.0_20200107_2';
+
+self.addEventListener('fetch', function (event) {
+ event.respondWith(caches.match(event.request).then(function (response) {
+ return response || fetch(event.request);
+ }));
+});
+
+self.addEventListener('activate', (event) => {
+ event.waitUntil(caches.keys().then((keyList) => {
+ return Promise.all(keyList.map((key) => {
+ if (currentCache != key) {
+ return caches.delete(key);
+ }
+ }));
+ }));
+});
+
+self.addEventListener('install', function (event) {
+ event.waitUntil(
+ caches.open(currentCache).then((cache) => {
+ return cache.addAll([
+ 'index.html',
+ '.',
+
+ 'assets/audio/alert.coin.mp3',
+ 'assets/audio/alert.jump.mp3',
+ 'assets/audio/alert.robot.mp3',
+ 'assets/audio/alert.sonar.mp3',
+ 'assets/audio/error.mp3',
+ 'assets/audio/ok.mp3',
+ 'assets/audio/scan.mp3',
+
+ 'assets/images/icons/logo.svg',
+ 'assets/images/barcode-dashed.svg',
+ 'assets/images/boxes.png',
+ 'assets/images/boxes.svg',
+ 'assets/images/box-open-dashed.svg',
+ 'assets/images/box.png',
+ 'assets/images/box.svg',
+ 'assets/images/check.png',
+ 'assets/images/check.svg',
+ 'assets/images/envelope.png',
+ 'assets/images/envelopes.png',
+ 'assets/images/envelopes.svg',
+ 'assets/images/envelope.svg',
+ 'assets/images/express.png',
+ 'assets/images/express.svg',
+ 'assets/images/history-dashed.svg',
+ 'assets/images/largeboxes.png',
+ 'assets/images/largeboxes.svg',
+ 'assets/images/largebox.png',
+ 'assets/images/largebox.svg',
+ 'assets/images/multiple-items.png',
+ 'assets/images/multiple-items.svg',
+ 'assets/images/note-dashed.svg',
+ 'assets/images/signature.png',
+ 'assets/images/signatures.png',
+ 'assets/images/signatures.svg',
+ 'assets/images/signature.svg',
+ 'assets/images/smallpackage.png',
+ 'assets/images/smallpackages.png',
+ 'assets/images/smallpackages.svg',
+ 'assets/images/smallpackage.svg',
+ 'assets/images/weather-clear.svg',
+ 'assets/images/weather-cloudy.svg',
+ 'assets/images/weather-none.svg',
+ 'assets/images/weather-partly-cloudy.svg',
+ 'assets/images/weather-rain.svg',
+ 'assets/images/weather-snow.svg',
+ 'assets/images/weather-windy.svg',
+
+ 'assets/css/app.css',
+ 'assets/css/backdrop.css',
+ 'assets/css/oled.css',
+ 'assets/css/web-barcode.css',
+
+ 'assets/js/audio.js',
+ 'assets/js/autofill.js',
+ 'assets/js/list.js',
+ 'assets/js/location.js',
+ 'assets/js/login.js',
+ 'assets/js/main.js',
+ 'assets/js/manage.js',
+ 'assets/js/map.js',
+ 'assets/js/map_leaflet.js',
+ 'assets/js/map_mapbox.js',
+ 'assets/js/notes.js',
+ 'assets/js/packages.js',
+ 'assets/js/platform.js',
+ 'assets/js/settings.js',
+ 'assets/js/storage.js',
+ 'assets/js/sync.js',
+ 'assets/js/toolbox_scannerentries.js',
+ 'assets/js/toolbox_scanner.js',
+ 'assets/js/toolbox_sharelist.js',
+ 'assets/js/toolbox_track.js',
+ 'assets/js/toolbox_weather.js',
+ 'assets/js/util.js',
+
+ 'pages/credits.html',
+ 'pages/home.html',
+ 'pages/list.html',
+ 'pages/login.html',
+ 'pages/manage.html',
+ 'pages/map.html',
+ 'pages/myroute.html',
+ 'pages/settings.html',
+ 'pages/toolbox.html',
+ 'pages/help/list.html',
+ 'pages/help/map.html',
+ 'pages/myroute/editnote.html',
+ 'pages/toolbox/scanner.html',
+ 'pages/toolbox/sharelist.html',
+ 'pages/toolbox/track.html',
+ 'pages/toolbox/trackinginfo.html',
+ 'pages/toolbox/weather.html',
+ 'pages/toolbox/scanner/entries.html',
+ 'pages/toolbox/scanner/scanner.html',
+
+ 'package.json',
+ 'settings.js',
+
+ 'node_modules/framework7/css/framework7.bundle.min.css',
+ 'node_modules/@fortawesome/fontawesome-free/css/all.min.css',
+ 'node_modules/material-design-icons/iconfont/material-icons.css',
+ 'node_modules/leaflet/dist/leaflet.css',
+ 'node_modules/leaflet.markercluster/dist/MarkerCluster.css',
+ 'node_modules/leaflet.markercluster/dist/MarkerCluster.Default.css',
+ 'node_modules/leaflet.locatecontrol/dist/L.Control.Locate.min.css',
+ 'node_modules/mapbox-gl/dist/mapbox-gl.css',
+ 'node_modules/framework7/js/framework7.bundle.min.js',
+ 'node_modules/jquery/dist/jquery.min.js',
+ 'node_modules/leaflet/dist/leaflet.js',
+ 'node_modules/leaflet.markercluster/dist/leaflet.markercluster.js',
+ 'node_modules/mapbox-gl/dist/mapbox-gl.js',
+ 'node_modules/jsbarcode/dist/JsBarcode.all.min.js',
+ 'node_modules/leaflet.locatecontrol/dist/L.Control.Locate.min.js',
+ '/node_modules/@zxing/library/umd/index.min.js',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-brands-400.eot',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-brands-400.svg',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-brands-400.ttf',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-brands-400.woff',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-brands-400.woff2',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-regular-400.eot',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-regular-400.svg',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-regular-400.ttf',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-regular-400.woff2',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-solid-900.eot',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-solid-900.svg',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-solid-900.ttf',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff',
+ 'node_modules/@fortawesome/fontawesome-free/webfonts/fa-solid-900.woff2',
+ 'node_modules/material-design-icons/iconfont/MaterialIcons-Regular.eot',
+ 'node_modules/material-design-icons/iconfont/MaterialIcons-Regular.ijmap',
+ 'node_modules/material-design-icons/iconfont/MaterialIcons-Regular.svg',
+ 'node_modules/material-design-icons/iconfont/MaterialIcons-Regular.ttf',
+ 'node_modules/material-design-icons/iconfont/MaterialIcons-Regular.woff',
+ 'node_modules/material-design-icons/iconfont/MaterialIcons-Regular.woff2'
+ ]);
+ }));
+});
\ No newline at end of file