diff --git a/assets/js/src/pwa.js b/assets/js/src/pwa.js index c3bdd7272c9ea162e317e4a6ffb962f0e757a097..5e1a43b085c58d0daa25c637bd1d2fea388be7e9 100644 --- a/assets/js/src/pwa.js +++ b/assets/js/src/pwa.js @@ -5,14 +5,14 @@ if ('serviceWorker' in navigator) { window.addEventListener('load', function () { - navigator.serviceWorker.register('/sw.js').then(function (registration) { + navigator.serviceWorker.register('/sw.js').then(function (registration) { // eslint-disable-line compat/compat console.log('ServiceWorker registration successful with scope: ', registration.scope) registration.onupdatefound = function () { var installingWorker = registration.installing installingWorker.onstatechange = function () { switch (installingWorker.state) { case 'installed': - if (navigator.serviceWorker.controller) { + if (navigator.serviceWorker.controller) { // eslint-disable-line compat/compat console.log('new update available') location.reload(true) } diff --git a/js/.eslintrc.json b/js/.eslintrc.json index cc4e58ebd119821e37fc3eb319e5d88b6cd8e539..7316e6f2250167f47c86bc71965385916c864c1d 100644 --- a/js/.eslintrc.json +++ b/js/.eslintrc.json @@ -7,6 +7,7 @@ "jquery": true }, "extends": "eslint:recommended", + "plugins": ["compat"], "parserOptions": { "ecmaVersion": 8, "sourceType": "module" @@ -17,6 +18,7 @@ "no-extra-parens": "error", "no-prototype-builtins": "error", "no-template-curly-in-string": "error", + "compat/compat": "error", "valid-jsdoc": "error", // Best Practices diff --git a/package-lock.json b/package-lock.json index 0f222abf69499c18b676cf17217b145f93a4e664..6514f3a13137607308b4b46650408748e8d05b5c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1071,6 +1071,12 @@ "map-obj": "1.0.1" } }, + "caniuse-db": { + "version": "1.0.30000671", + "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000671.tgz", + "integrity": "sha1-nwcbvHuWmUY4zLr0eCnVihV3qO0=", + "dev": true + }, "caniuse-lite": { "version": "1.0.30000732", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000732.tgz", @@ -1771,6 +1777,30 @@ } } }, + "eslint-plugin-compat": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-1.0.4.tgz", + "integrity": "sha512-16yjDdjrivRQT7/Kov+3O6DMvfg8WYC1JKPAsvf/UNtdLBeMXVYATohAM4nOak1ynGP69mKUlOjw7nroUqY9Sg==", + "dev": true, + "requires": { + "babel-runtime": "6.26.0", + "browserslist": "2.1.4", + "caniuse-db": "1.0.30000671", + "requireindex": "1.1.0" + }, + "dependencies": { + "browserslist": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-2.1.4.tgz", + "integrity": "sha1-zFJq9KExK30uBWU+VtDIq3DA4FM=", + "dev": true, + "requires": { + "caniuse-lite": "1.0.30000730", + "electron-to-chromium": "1.3.21" + } + } + } + }, "eslint-scope": { "version": "3.7.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", @@ -5501,6 +5531,12 @@ "resolve-from": "1.0.1" } }, + "requireindex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.1.0.tgz", + "integrity": "sha1-5UBLgVV+91225JxacgBIk/4D4WI=", + "dev": true + }, "resolve": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", diff --git a/package.json b/package.json index 28ec33b5d047688a5a59492ce657584f00b68e74..9bd1c6f39cd995ba910b8a33c5ee46103e9d6713 100644 --- a/package.json +++ b/package.json @@ -85,6 +85,7 @@ "clean-css-cli": "^4.1.6", "cross-env": "^5.0.5", "eslint": "^4.2.0", + "eslint-plugin-compat": "^1.0.4", "grunt": "^1.0.1", "grunt-cli": "^1.2.0", "grunt-saucelabs": "^9.0.0",