diff --git a/.env.development b/.env.development
index fea6886..2c23d66 100644
--- a/.env.development
+++ b/.env.development
@@ -1,4 +1,4 @@
-SERVICE_WORKER_FILE='sw.js'
+SERVICE_WORKER_FILE='service-worker.js'
APP_ID='1'
VUE_APP_URL='prova SVILUPPO!'
PROVA_PAOLO='PROVA SVILUPPO'
diff --git a/package-lock.json b/package-lock.json
index 0c3bf32..0c848f1 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
{
"name": "freeplanet",
- "version": "0.0.1",
+ "version": "0.0.2",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
@@ -21098,7 +21098,7 @@
"dependencies": {
"minimist": {
"version": "1.2.0",
- "resolved": "http://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz",
"integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=",
"dev": true
}
@@ -24014,7 +24014,7 @@
"graceful-fs": "4.1.15",
"make-dir": "1.3.0",
"unique-string": "1.0.0",
- "write-file-atomic": "2.3.0",
+ "write-file-atomic": "2.4.2",
"xdg-basedir": "3.0.0"
}
},
@@ -24028,9 +24028,9 @@
}
},
"write-file-atomic": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz",
- "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==",
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.2.tgz",
+ "integrity": "sha512-s0b6vB3xIVRLWywa6X9TOMA7k9zio0TMOsl9ZnDkliA/cfJlpHXAscj0gbHVJiTdIuAYpIyqS5GW91fqm6gG5g==",
"dev": true,
"requires": {
"graceful-fs": "4.1.15",
@@ -25489,9 +25489,9 @@
},
"dependencies": {
"ansi-escapes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.1.0.tgz",
- "integrity": "sha512-UgAb8H9D41AQnu/PbWlCofQVcnV4Gs2bBJi9eZPxfU/hgglFh3SMDMENRIqdr7H6XFnXdoknctFByVsCOotTVw==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz",
+ "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==",
"dev": true
},
"chardet": {
@@ -25502,7 +25502,7 @@
},
"external-editor": {
"version": "2.2.0",
- "resolved": "http://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz",
+ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz",
"integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==",
"dev": true,
"requires": {
@@ -25537,7 +25537,7 @@
"integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==",
"dev": true,
"requires": {
- "ansi-escapes": "3.1.0",
+ "ansi-escapes": "3.2.0",
"chalk": "2.4.1",
"cli-cursor": "2.1.0",
"cli-width": "2.2.0",
diff --git a/package.json b/package.json
index f48f25a..8c23234 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,13 @@
{
"name": "freeplanet",
- "version": "0.0.1",
+ "version": "0.0.2",
"private": true,
+ "keywords": [
+ "freeplanet",
+ "free social"
+ ],
+ "author": "Paolo Arena",
+ "license": "MIT",
"scripts": {
"lint": "tslint --project tsconfig.json",
"lint:fix": "tslint --project tsconfig.json --fix",
@@ -10,11 +16,12 @@
"pwa": "NODE_ENV=development NODE_OPTIONS=--max_old_space_size=4096 DEBUG=v8:* quasar dev -m pwa",
"test:unit": "jest",
"test:cover": "jest --coverage",
- "build": "quasar build -m pwa && workbox generateSW workbox-config.js",
+ "build": "quasar build -m pwa",
"build:clean": "quasar clean",
"serve": "quasar serve ./dist/pwa-mat",
"serve:coverage": "quasar serve test/coverage/lcov-report/ --cache 0 --port 8788",
- "deploy": "deploy.sh"
+ "deploy": "deploy.sh",
+ "generate-sw": "workbox generateSW workbox-config.js"
},
"dependencies": {
"@types/vuelidate": "^0.7.0",
diff --git a/quasar.conf.js b/quasar.conf.js
index 3e42cce..6a82163 100644
--- a/quasar.conf.js
+++ b/quasar.conf.js
@@ -180,8 +180,18 @@ module.exports = function (ctx) {
}
},
pwa: {
+ // runtimeCaching: [
+ // {
+ // urlPattern: '/statics',
+ // handler: 'networkFirst'
+ // }
+ // ],
+
+ // workboxPluginMode: 'GenerateSW',
workboxPluginMode: 'InjectManifest',
- // workboxOptions: {},
+ workboxOptions: {
+ // swSrc: 'src/sw.js',
+ },
manifest: {
name: 'Free Planet',
short_name: 'freeplanet',
diff --git a/src-pwa/custom-service-worker.js b/src-pwa/custom-service-worker.js
index 81b7637..587c207 100644
--- a/src-pwa/custom-service-worker.js
+++ b/src-pwa/custom-service-worker.js
@@ -4,21 +4,45 @@
* quasar.conf > pwa > workboxPluginMode is set to "InjectManifest"
*/
-self.addEventListener('install', function(event) {
- console.log('[Service Worker] Installing Service Worker ...', event);
-});
+// Questo è il swSrc
-self.addEventListener('activate', function(event) {
- console.log('[Service Worker] Activating Service Worker ...', event);
- return self.clients.claim();
-});
+console.log('___________________________ PAO: this is my custom service worker');
-self.addEventListener('fetch', function(event) {
- //console.log('[Service Worker] Fetching something ....', event);
- if (event.request.cache === 'only-if-cached' && event.request.mode !== 'same-origin') {
- console.log('SAME ORIGIN!', event);
- return;
- }
- event.respondWith(fetch(event.request));
-});
+importScripts('https://storage.googleapis.com/workbox-cdn/releases/3.0.0/workbox-sw.js');
+
+if (!workbox) {
+ workbox = new self.WorkboxSW();
+}
+
+if (workbox) {
+ workbox.core.setCacheNameDetails({prefix: "freeplanet"});
+
+ /**
+ * The workboxSW.precacheAndRoute() method efficiently caches and responds to
+ * requests for URLs in the manifest.
+ * See https://goo.gl/S9QRab
+ */
+ self.__precacheManifest = [].concat(self.__precacheManifest || []);
+ workbox.precaching.suppressWarnings();
+ workbox.precaching.precacheAndRoute(self.__precacheManifest, {});
+
+ workbox.routing.registerRoute(/^http/, workbox.strategies.networkFirst(), 'GET');
+
+}
+
+if ('serviceWorker' in navigator) {
+
+ console.log('***************** Entering in custom-service-worker.js:')
+
+ self.addEventListener('fetch', function (event) {
+ console.log('[Service Worker] Fetching something ....', event);
+ console.log('event.request.cache=', event.request.cache)
+ if (event.request.cache === 'only-if-cached' && event.request.mode !== 'same-origin') {
+ console.log('SAME ORIGIN!', event);
+ return;
+ }
+ event.respondWith(fetch(event.request));
+ });
+
+}
diff --git a/src-pwa/register-service-worker.js b/src-pwa/register-service-worker.js
index b7df77d..5205056 100644
--- a/src-pwa/register-service-worker.js
+++ b/src-pwa/register-service-worker.js
@@ -8,9 +8,11 @@ import {register} from 'register-service-worker'
register(process.env.SERVICE_WORKER_FILE, {
ready() {
console.log('READY::: App is being served from cache by a service worker.')
+
},
registered(registration) { // registration -> a ServiceWorkerRegistration instance
- console.log('REGISTERED::: !!!')
+ console.log('REGISTERED::: !!!', process.env.SERVICE_WORKER_FILE)
+
},
cached(registration) { // registration -> a ServiceWorkerRegistration instance
console.log('CACHED::: Content has been cached for offline use.')
@@ -33,3 +35,6 @@ register(process.env.SERVICE_WORKER_FILE, {
// ServiceWorkerRegistration: https://developer.mozilla.org/en-uk/docs/Web/API/ServiceWorkerRegistration
+
+
+// "build": "quasar build -m pwa && workbox generateSW workbox-config.js",
diff --git a/src/components/Header.vue b/src/components/Header.vue
index db65f37..e859de8 100644
--- a/src/components/Header.vue
+++ b/src/components/Header.vue
@@ -106,7 +106,7 @@
// dynamic import, so loading on demand only
import(`quasar-framework/i18n/${lang}`).then(lang => {
this.$q.i18n.set(lang.default)
- import(`src/i18n`).then(function () {
+ import(`src/statics/i18n`).then(function () {
})
})
}
diff --git a/src/components/todos/SingleTodo/SingleTodo.ts b/src/components/todos/SingleTodo/SingleTodo.ts
index 436ac1c..895197e 100644
--- a/src/components/todos/SingleTodo/SingleTodo.ts
+++ b/src/components/todos/SingleTodo/SingleTodo.ts
@@ -284,7 +284,7 @@ export default class SingleTodo extends Vue {
}
updateicon() {
- console.log('updateicon')
+ // console.log('updateicon')
if (this.itemtodo.completed)
this.iconCompleted = 'check_circle'
else
diff --git a/src/components/todos/todo/todo.ts b/src/components/todos/todo/todo.ts
index 8389b06..ffcc80d 100644
--- a/src/components/todos/todo/todo.ts
+++ b/src/components/todos/todo/todo.ts
@@ -6,7 +6,7 @@ import { ITodo } from '@src/model'
import { rescodes } from '../../../store/Modules/rescodes'
-import { UserStore } from '@modules'
+import { UserStore } from '@store'
import _ from 'lodash'
@@ -45,7 +45,7 @@ export default class Todo extends Vue {
}
@Watch('$route.params.category') changecat() {
- console.log('changecat')
+ // console.log('changecat')
this.load()
}
@@ -90,7 +90,7 @@ export default class Todo extends Vue {
async updateLinkedList(init: boolean, arr: ITodo[] = this.todos_arr) {
- console.log('updateLinkedList', this.todos_arr)
+ // console.log('updateLinkedList', this.todos_arr)
let idprev = -1
let idnext = -1
@@ -123,7 +123,7 @@ export default class Todo extends Vue {
pos++
- this.logelem('updateLinked', elem)
+ // this.logelem('updateLinked', elem)
})
}
@@ -240,7 +240,7 @@ export default class Todo extends Vue {
arr.forEach(rec => {
this.arrPrior.push(rec.value)
})
- console.log('Array PRIOR:', this.arrPrior)
+ // console.log('Array PRIOR:', this.arrPrior)
}
@@ -251,15 +251,17 @@ export default class Todo extends Vue {
for (let todosKey in rescodes.Todos) {
this.listPriorityLabel.push(rescodes.Todos[todosKey])
}
- console.log('Priority:' + this.listPriorityLabel)
+ // console.log('Priority:' + this.listPriorityLabel)
this.setarrPriority()
this.clearArr()
await this.updatetable()
+/*
this.todos_arr.forEach((elem, index) => {
this.logelem('LOAD ' + index, elem)
})
+*/
}
@@ -273,8 +275,8 @@ export default class Todo extends Vue {
priority: rescodes.Todos.PRIORITY_NORMAL,
completed: false,
created_at: new Date(),
- category: '',
modify_at: new Date(),
+ category: '',
expiring_at: mydateexp,
enableExpiring: false,
id_prev: 0,
@@ -310,6 +312,12 @@ export default class Todo extends Vue {
objtodo.pos = (lastelem !== null) ? lastelem.pos + 1 : 1
objtodo.modified = true
+ if (objtodo.userId === undefined) {
+ this.$q.notify(this.$t('todo.usernotdefined'))
+ return
+ }
+
+
// Add to Indexdb
await this.$db.todos.add(objtodo
).then((id) => {
@@ -442,7 +450,7 @@ export default class Todo extends Vue {
}
async filtertodos(refresh: boolean = false) {
- console.log('filtertodos')
+ // console.log('filtertodos')
let arrtemp = []
@@ -515,7 +523,7 @@ export default class Todo extends Vue {
//
deselectAllRows(item, check, onlythis: boolean = false) {
- console.log('deselectAllRows : ', item)
+ // console.log('deselectAllRows : ', item)
for (let i = 0; i < this.$refs.single.length; i++) {
@@ -574,7 +582,7 @@ export default class Todo extends Vue {
if (miorec.modified) {
miorec.modify_at = new Date()
- this.logelem('modify', miorec)
+ // this.logelem('modify', miorec)
await this.$db.todos.put(miorec)
diff --git a/src/index.template.html b/src/index.template.html
index 4e2e4de..5e4fb15 100644
--- a/src/index.template.html
+++ b/src/index.template.html
@@ -10,15 +10,15 @@
-
-
-
-
-
-
-
+
+
+
+
+
+
+
-
+
diff --git a/src/layouts/drawer/drawer.vue b/src/layouts/drawer/drawer.vue
index fc56086..0452d8f 100644
--- a/src/layouts/drawer/drawer.vue
+++ b/src/layouts/drawer/drawer.vue
@@ -55,7 +55,7 @@
links
created() {
- console.log('Drawer created...')
+ // console.log('Drawer created...')
let listatodo = []
diff --git a/src/plugins/i18n.js b/src/plugins/i18n.js
index 1f812a8..fc70103 100644
--- a/src/plugins/i18n.js
+++ b/src/plugins/i18n.js
@@ -1,6 +1,6 @@
// src/plugins/i18n.js
import VueI18n from 'vue-i18n';
-import messages from 'src/i18n';
+import messages from 'src/statics/i18n';
export default ({ app, store, Vue }) => {
Vue.use(VueI18n);
diff --git a/src/root/home/home.ts b/src/root/home/home.ts
index c9b58c6..df3acf2 100644
--- a/src/root/home/home.ts
+++ b/src/root/home/home.ts
@@ -19,12 +19,12 @@ export default class Home extends Vue {
constructor() {
super()
- console.log('Home constructor...')
+ // console.log('Home constructor...')
this.initprompt()
}
created() {
- console.log('Home created...')
+ // console.log('Home created...')
}
mystilecard() {
diff --git a/src/i18n.js b/src/statics/i18n.js
similarity index 96%
rename from src/i18n.js
rename to src/statics/i18n.js
index 5687c04..c010462 100644
--- a/src/i18n.js
+++ b/src/statics/i18n.js
@@ -101,7 +101,8 @@ const messages = {
titleprioritymenu: 'Priorità:',
insert: 'Inserisci il Task',
edit: 'Descrizione Task:',
- completed: 'Completati'
+ completed: 'Completati',
+ usernotdefined: 'Attenzione, occorre essere Loggati per poter aggiungere un Todo'
}
},
enUk: {
@@ -206,7 +207,8 @@ const messages = {
titleprioritymenu: 'Priority:',
insert: 'Insert Task',
edit: 'Task Description:',
- completed: 'Completed'
+ completed: 'Completed',
+ usernotdefined: 'Attention, you need to be Signed In to add a new Task'
}
},
};
diff --git a/src/views/login/vreg/vreg.ts b/src/views/login/vreg/vreg.ts
index 83adbe6..6578ff1 100644
--- a/src/views/login/vreg/vreg.ts
+++ b/src/views/login/vreg/vreg.ts
@@ -39,7 +39,7 @@ export default class Vreg extends Vue {
}
load() {
- console.log('load')
+ // console.log('load')
let param: ILinkReg
param = { idlink: this.$route.query.idlink.toString() }
console.log('idlink = ', param)
diff --git a/workbox-config.js b/workbox-config.js
new file mode 100644
index 0000000..c10c1e4
--- /dev/null
+++ b/workbox-config.js
@@ -0,0 +1,13 @@
+module.exports = {
+ "globDirectory": "dist/pwa-mat/",
+ "globPatterns": [
+ "**/*.{css,woff2,woff,svg,html,js,json,ico}"
+ // "src/images/*.{jpg,png}"
+ ],
+ // "swSrc": "dist/pwa-mat/src-sw.js",
+ "swDest": "dist/pwa-mat/service-worker.js",
+ "globIgnores": [
+ "../workbox-config.js",
+ "help/**"
+ ],
+};