new
This commit is contained in:
+5
-181
@@ -2,194 +2,18 @@
|
||||
"common": {
|
||||
"name": "material",
|
||||
"version": "0.10.4",
|
||||
"news": {
|
||||
"0.10.4": {
|
||||
"en": "The error with settings was fixed",
|
||||
"de": "Der Fehler bei den Einstellungen wurde behoben",
|
||||
"ru": "Исправлена ошибка с настройками",
|
||||
"pt": "O erro com as configurações foi corrigido",
|
||||
"nl": "De fout met de instellingen was verholpen",
|
||||
"fr": "L'erreur avec les paramètres a été corrigée",
|
||||
"it": "L'errore con le impostazioni è stato corretto",
|
||||
"es": "El error con la configuración fue arreglado",
|
||||
"pl": "Naprawiono błąd związany z ustawieniami"
|
||||
},
|
||||
"0.10.3": {
|
||||
"en": "Color temperature was implemented\nCache of objects was implemented",
|
||||
"de": "Farbtemperatur wurde implementiert\nCache von Objekten wurde implementiert",
|
||||
"ru": "Цветовая температура была реализована\nБыл реализован кеш объектов",
|
||||
"pt": "Temperatura de cor foi implementada\nCache de objetos foi implementado",
|
||||
"nl": "Kleurtemperatuur is geïmplementeerd\nCache met objecten is geïmplementeerd",
|
||||
"fr": "La température de couleur a été mise en œuvre\nLe cache des objets a été implémenté",
|
||||
"it": "La temperatura del colore è stata implementata\nLa cache degli oggetti è stata implementata",
|
||||
"es": "La temperatura del color fue implementada\nSe implementó el caché de objetos",
|
||||
"pl": "Wprowadzono temperaturę kolorów\nPamięć podręczna obiektów została zaimplementowana"
|
||||
},
|
||||
"0.10.1": {
|
||||
"en": "GUI corrections",
|
||||
"de": "GUI-Korrekturen",
|
||||
"ru": "Исправления GUI",
|
||||
"pt": "Correções da GUI",
|
||||
"nl": "GUI-correcties",
|
||||
"fr": "Corrections GUI",
|
||||
"it": "Correzioni della GUI",
|
||||
"es": "Correcciones GUI",
|
||||
"pl": "Poprawki GUI"
|
||||
},
|
||||
"0.10.0": {
|
||||
"en": "RGB was corrected",
|
||||
"de": "RGB wurde korrigiert",
|
||||
"ru": "RGB был исправлен",
|
||||
"pt": "RGB foi corrigido",
|
||||
"nl": "RGB is gecorrigeerd",
|
||||
"fr": "RVB a été corrigé",
|
||||
"it": "RGB è stato corretto",
|
||||
"es": "RGB fue corregido",
|
||||
"pl": "RGB zostało poprawione"
|
||||
},
|
||||
"0.9.12": {
|
||||
"en": "RGB was implemented",
|
||||
"de": "RGB wurde implementiert",
|
||||
"ru": "RGB был реализован",
|
||||
"pt": "RGB foi implementado",
|
||||
"nl": "RGB is geïmplementeerd",
|
||||
"fr": "RVB a été implémenté",
|
||||
"it": "RGB è stato implementato",
|
||||
"es": "RGB fue implementado",
|
||||
"pl": "Zaimplementowano RGB"
|
||||
},
|
||||
"0.9.11": {
|
||||
"en": "Fixed error with empty page",
|
||||
"de": "Fehler bei leerer Seite behoben",
|
||||
"ru": "Исправлена ошибка с пустой страницей",
|
||||
"pt": "Corrigido erro com página vazia",
|
||||
"nl": "Vaste fout met lege pagina",
|
||||
"fr": "Erreur fixe avec page vide",
|
||||
"it": "Risolto errore con la pagina vuota",
|
||||
"es": "Se arregló el error con la página vacía",
|
||||
"pl": "Naprawiono błąd z pustą stroną"
|
||||
},
|
||||
"0.9.9": {
|
||||
"en": "Order of tiles is implemented\nSupport of dwd data",
|
||||
"de": "Reihenfolge der Kacheln ist implementiert\nUnterstützung von DWD-Daten",
|
||||
"ru": "Выполняется заказ плитки\nПоддержка данных dwd",
|
||||
"pt": "Ordem de telhas é implementada\nSuporte de dados do dwd",
|
||||
"nl": "Orde van tegels is geïmplementeerd\nOndersteuning van dwd-gegevens",
|
||||
"fr": "L'ordre des carreaux est implémenté\nPrise en charge des données DWD",
|
||||
"it": "L'ordine delle piastrelle è implementato\nSupporto di dati DWD",
|
||||
"es": "Se implementa el orden de las fichas\nSoporte de datos dwd",
|
||||
"pl": "Kolejność płytek jest zaimplementowana\nObsługa danych DWD"
|
||||
},
|
||||
"0.9.7": {
|
||||
"en": "Implemented the weather widget",
|
||||
"de": "Implementiert das Wetter Widget",
|
||||
"ru": "Реализован погодный виджет",
|
||||
"pt": "Implementou o widget do tempo",
|
||||
"nl": "De weerwidget geïmplementeerd",
|
||||
"fr": "Implémenté le widget météo",
|
||||
"it": "Implementato il widget meteo",
|
||||
"es": "Implementado el widget del clima",
|
||||
"pl": "Wdrożyłem widget pogody"
|
||||
},
|
||||
"0.9.4": {
|
||||
"en": "Bug-fixes",
|
||||
"de": "Fehlerbehebung",
|
||||
"ru": "Исправление ошибок",
|
||||
"pt": "Correções de bugs",
|
||||
"nl": "Bugfixes",
|
||||
"fr": "Corrections de bogues",
|
||||
"it": "Bug-fix",
|
||||
"es": "Corrección de errores",
|
||||
"pl": "Poprawki błędów"
|
||||
},
|
||||
"0.9.3": {
|
||||
"en": "Many changes",
|
||||
"de": "Viele Veränderungen",
|
||||
"ru": "Много изменений",
|
||||
"pt": "Muitas mudanças",
|
||||
"nl": "Veel veranderingen",
|
||||
"fr": "Beaucoup de changements",
|
||||
"it": "Molti cambiamenti",
|
||||
"es": "Muchos cambios",
|
||||
"pl": "Wiele zmian"
|
||||
},
|
||||
"0.9.2": {
|
||||
"en": "Update logic was implemented",
|
||||
"de": "Update-Logik wurde implementiert",
|
||||
"ru": "Была реализована логика обновления",
|
||||
"pt": "A lógica de atualização foi implementada",
|
||||
"nl": "Update logica is geïmplementeerd",
|
||||
"fr": "La mise à jour a été implémentée",
|
||||
"it": "La logica di aggiornamento è stata implementata",
|
||||
"es": "Se implementó la lógica de actualización",
|
||||
"pl": "Zaktualizowana logika została zaimplementowana"
|
||||
},
|
||||
"0.9.1": {
|
||||
"en": "Volume control was implemented",
|
||||
"de": "Lautstärkeregelung wurde implementiert",
|
||||
"ru": "Регулятор громкости был реализован",
|
||||
"pt": "Controle de volume foi implementado",
|
||||
"nl": "Volumeregeling is geïmplementeerd",
|
||||
"fr": "Le contrôle du volume a été implémenté",
|
||||
"it": "Il controllo del volume è stato implementato",
|
||||
"es": "Control de volumen fue implementado",
|
||||
"pl": "Kontrola głośności została wdrożona"
|
||||
},
|
||||
"0.8.9": {
|
||||
"en": "React app"
|
||||
},
|
||||
"0.5.7": {
|
||||
"en": "Ready for cloud services",
|
||||
"de": "Bereit für Cloud-Dienste",
|
||||
"ru": "Готов к облачным сервисам",
|
||||
"pt": "Pronto para serviços em nuvem",
|
||||
"nl": "Klaar voor cloudservices",
|
||||
"fr": "Prêt pour les services cloud",
|
||||
"it": "Pronto per i servizi cloud",
|
||||
"es": "Listo para servicios en la nube",
|
||||
"pl": "Gotowy do usług w chmurze"
|
||||
},
|
||||
"0.5.6": {
|
||||
"en": "fix undefined names",
|
||||
"de": "Korrigiere undefinierte Namen",
|
||||
"ru": "Поправлены неопределённые имена"
|
||||
},
|
||||
"0.5.3": {
|
||||
"en": "fix dimmer",
|
||||
"de": "Korrigiere Dimmer",
|
||||
"ru": "Поправлены диммеры"
|
||||
},
|
||||
"0.5.2": {
|
||||
"en": "fix action icons",
|
||||
"de": "Korrigiere Zustandsbldchen",
|
||||
"ru": "Поправлены иконки"
|
||||
},
|
||||
"0.5.1": {
|
||||
"en": "initial commit",
|
||||
"de": "initial commit",
|
||||
"ru": "initial commit"
|
||||
}
|
||||
},
|
||||
"title": "Material UI",
|
||||
"title": "魔屏",
|
||||
"desc": {
|
||||
"en": "Material UI based ioBroker user interface",
|
||||
"de": "ioBroker GUI für mobile Geräte auf dem Basis von Material UI",
|
||||
"ru": "ioBroker визуализация для мобильных устройств на Material UI",
|
||||
"pt": "Interface de usuário ioBroker baseada em UI de material",
|
||||
"nl": "Materiaal UI gebaseerde gebruikersinterface van ioBroker",
|
||||
"fr": "Interface utilisateur ioBroker basée sur l'interface utilisateur matérielle",
|
||||
"it": "Interfaccia utente ioBroker basata su UI materiale",
|
||||
"es": "Interfaz de usuario ioBroker basada en IU de material",
|
||||
"pl": "Interfejs użytkownika ioBroker oparty na interfejsie użytkownika"
|
||||
"en": "Material UI based yunkong2 user interface"
|
||||
},
|
||||
"platform": "javascript/Node.js",
|
||||
"platform": "Node.js",
|
||||
"onlyWWW": "true",
|
||||
"loglevel": "info",
|
||||
"icon": "material.png",
|
||||
"enabled": true,
|
||||
"extIcon": "https://raw.githubusercontent.com/ioBroker/ioBroker.material/master/admin/material.png",
|
||||
"extIcon": "https://git.spacen.net/yunkong2/yunkong2.material/raw/master/admin/material.png",
|
||||
"keywords": ["user", "interface", "webapp", "jquerymobile", "ui"],
|
||||
"readme": "https://github.com/ioBroker/ioBroker.material/blob/master/README.md",
|
||||
"readme": "https://github.com/yunkong2/yunkong2.material/blob/master/README.md",
|
||||
"singleton": true,
|
||||
"preserveSettings": "material",
|
||||
"nogit": true,
|
||||
|
||||
+5
-6
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "yunkong2.material",
|
||||
"description": "React Material based ioBroker user interface",
|
||||
"description": "React Material based yunkong2 user interface",
|
||||
"version": "0.10.4",
|
||||
"author": {
|
||||
"name": "bluefox",
|
||||
@@ -9,19 +9,18 @@
|
||||
"contributors": [
|
||||
"bluefox <dogafox@gmail.com>"
|
||||
],
|
||||
"homepage": "https://github.com/ioBroker/ioBroker.material",
|
||||
"homepage": "https://github.com/yunkong2/yunkong2.material",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/ioBroker/ioBroker.material"
|
||||
"url": "https://github.com/yunkong2/yunkong2.material"
|
||||
},
|
||||
"licenses": [
|
||||
{
|
||||
"type": "CC-BY-NC-4.0",
|
||||
"url": "https://github.com/ioBroker/ioBroker.material/blob/master/LICENSE"
|
||||
"url": "https://github.com/yunkong2/yunkong2.material/blob/master/LICENSE"
|
||||
}
|
||||
],
|
||||
"keywords": [
|
||||
"ioBroker",
|
||||
"GUI",
|
||||
"web interface",
|
||||
"home automation",
|
||||
@@ -39,7 +38,7 @@
|
||||
"gulp-watch": "^5.0.1"
|
||||
},
|
||||
"bugs": {
|
||||
"url": "https://github.com/ioBroker/ioBroker.material/issues"
|
||||
"url": "https://github.com/yunkong2/yunkong2.material/issues"
|
||||
},
|
||||
"main": "www/index.html",
|
||||
"scripts": {
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
<script type="text/javascript" src="_socket/info.js"></script>
|
||||
<script type="text/javascript" src="vendor/socket.io.js"></script>
|
||||
<script type="text/javascript" src="vendor.js"></script>
|
||||
<title>Material - ioBroker</title>
|
||||
<title>Material - yunkong2</title>
|
||||
</head>
|
||||
<body>
|
||||
<noscript>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"short_name": "ioBroker Material",
|
||||
"short_name": "yunkong2 Material",
|
||||
"name": "Mobile interface",
|
||||
"icons": [
|
||||
{
|
||||
|
||||
Vendored
+3
-3
@@ -184,8 +184,8 @@ var servConn = {
|
||||
}
|
||||
},
|
||||
reload: function () {
|
||||
if (window.location.host === 'iobroker.net' ||
|
||||
window.location.host === 'iobroker.biz') {
|
||||
if (window.location.host === 'yunkong2.net' ||
|
||||
window.location.host === 'yunkong2.biz') {
|
||||
window.location = '/';
|
||||
} else {
|
||||
window.location.reload();
|
||||
@@ -202,7 +202,7 @@ var servConn = {
|
||||
if (autoSubscribe !== undefined) this._autoSubscribe = autoSubscribe;
|
||||
|
||||
// To start vis as local use one of:
|
||||
// - start vis from directory with name local, e.g. c:/blbla/local/ioBroker.vis/www/index.html
|
||||
// - start vis from directory with name local, e.g. c:/blbla/local/yunkong2.vis/www/index.html
|
||||
// - do not create "_socket/info.js" file in "www" directory
|
||||
// - create "_socket/info.js" file with
|
||||
// var socketUrl = "local"; var socketSession = ""; sysLang="en";
|
||||
|
||||
+1
-1
@@ -735,7 +735,7 @@ class App extends Component {
|
||||
|
||||
getTitle() {
|
||||
if (!this.state.viewEnum || !this.objects) {
|
||||
return (<span>ioBroker</span>);
|
||||
return (<span>yunkong2</span>);
|
||||
}
|
||||
|
||||
if (this.state.viewEnum === Utils.INSTANCES) {
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
"_resolved": "https://registry.npmjs.org/react-nest-thermostat/-/react-nest-thermostat-1.0.8.tgz",
|
||||
"_shasum": "b0bc3f19daffbc6c1fedab602a43c8ea96932539",
|
||||
"_spec": "react-nest-thermostat",
|
||||
"_where": "C:\\pWork\\ioBroker.material\\src",
|
||||
"_where": "C:\\pWork\\yunkong2.material\\src",
|
||||
"author": {
|
||||
"name": "Kevin Mellott",
|
||||
"email": "kevin.r.mellott@gmail.com",
|
||||
|
||||
@@ -73,11 +73,11 @@
|
||||
"colorOff": "OFF 颜色",
|
||||
"colorOn": "ON 颜色",
|
||||
"connected": "connected",
|
||||
"connecting": "connecting",
|
||||
"connecting": "正在连接",
|
||||
"debug": "Debug to console",
|
||||
"default": "Default",
|
||||
"disabled": "disabled",
|
||||
"done": "done",
|
||||
"done": "继续",
|
||||
"doubleSize": "Double width of tile",
|
||||
"dow_Fr": "Fr",
|
||||
"dow_Mo": "Mo",
|
||||
@@ -122,7 +122,7 @@
|
||||
"read config": "reading configuration",
|
||||
"read objects": "reading objects",
|
||||
"running": "running",
|
||||
"sent": "sent",
|
||||
"sent": "发送",
|
||||
"start instance": "start instance",
|
||||
"startEnum": "Start page",
|
||||
"stop instance": "stop instance",
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"main.css": "static/css/main.d1bb1ba4.css",
|
||||
"main.css.map": "static/css/main.d1bb1ba4.css.map",
|
||||
"main.js": "static/js/main.63ee5f8a.js",
|
||||
"main.js.map": "static/js/main.63ee5f8a.js.map",
|
||||
"main.js": "static/js/main.cf17ad8e.js",
|
||||
"main.js.map": "static/js/main.cf17ad8e.js.map",
|
||||
"static/media/apartment.jpg": "static/media/apartment.28bae16c.jpg",
|
||||
"static/media/rgb.png": "static/media/rgb.5d0e5ef3.png",
|
||||
"static/media/tempColor.png": "static/media/tempColor.b133cd66.png"
|
||||
|
||||
+1
-1
@@ -1 +1 @@
|
||||
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" class="theme-color" content="#3f51b5"><meta name="msapplication-navbutton-color" class="theme-color" content="#3f51b5"><meta name="apple-mobile-web-app-status-bar-style" class="theme-color" content="#3f51b5"><link href="vendor/fonts/roboto-woff.css" rel="stylesheet"><link href="manifest.json" rel="manifest"><link href="favicon.ico" rel="shortcut icon"><script type="text/javascript" src="_socket/info.js"></script><script type="text/javascript" src="vendor/socket.io.js"></script><script type="text/javascript" src="vendor.js"></script><title>Material - ioBroker</title><link href="./static/css/main.d1bb1ba4.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script type="text/javascript" src="./static/js/main.63ee5f8a.js"></script></body></html>
|
||||
<!doctype html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name="theme-color" class="theme-color" content="#3f51b5"><meta name="msapplication-navbutton-color" class="theme-color" content="#3f51b5"><meta name="apple-mobile-web-app-status-bar-style" class="theme-color" content="#3f51b5"><link href="vendor/fonts/roboto-woff.css" rel="stylesheet"><link href="manifest.json" rel="manifest"><link href="favicon.ico" rel="shortcut icon"><script type="text/javascript" src="_socket/info.js"></script><script type="text/javascript" src="vendor/socket.io.js"></script><script type="text/javascript" src="vendor.js"></script><title>Material - yunkong2</title><link href="./static/css/main.d1bb1ba4.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div><script type="text/javascript" src="./static/js/main.cf17ad8e.js"></script></body></html>
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
{
|
||||
"short_name": "ioBroker Material",
|
||||
"short_name": "yunkong2 Material",
|
||||
"name": "Mobile interface",
|
||||
"icons": [
|
||||
{
|
||||
|
||||
@@ -1 +1 @@
|
||||
"use strict";var precacheConfig=[["./vendor.js","219309bee823aed6b6461624c5fe7e69"],["./index.html","afb3418f055001430a57685cc9986752"],["./static/css/main.d1bb1ba4.css","1cf3245303e23b464c7dfaea99fab194"],["./static/js/main.63ee5f8a.js","edc031ba895144f2142cf28b856f3c11"],["./static/media/apartment.28bae16c.jpg","28bae16cf4a9e7f94cb89196fac21f55"],["./static/media/rgb.5d0e5ef3.png","5d0e5ef38575f7165d8e0f18166c59a9"],["./static/media/tempColor.b133cd66.png","b133cd66550e58e8677ea2c991d08ca6"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(e,t){var n=new URL(e);return"/"===n.pathname.slice(-1)&&(n.pathname+=t),n.toString()},cleanResponse=function(t){return t.redirected?("body"in t?Promise.resolve(t.body):t.blob()).then(function(e){return new Response(e,{headers:t.headers,status:t.status,statusText:t.statusText})}):Promise.resolve(t)},createCacheKey=function(e,t,n,r){var a=new URL(e);return r&&a.pathname.match(r)||(a.search+=(a.search?"&":"")+encodeURIComponent(t)+"="+encodeURIComponent(n)),a.toString()},isPathWhitelisted=function(e,t){if(0===e.length)return!0;var n=new URL(t).pathname;return e.some(function(e){return n.match(e)})},stripIgnoredUrlParameters=function(e,n){var t=new URL(e);return t.hash="",t.search=t.search.slice(1).split("&").map(function(e){return e.split("=")}).filter(function(t){return n.every(function(e){return!e.test(t[0])})}).map(function(e){return e.join("=")}).join("&"),t.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(e){var t=e[0],n=e[1],r=new URL(t,self.location),a=createCacheKey(r,hashParamName,n,/\.\w{8}\./);return[r.toString(),a]}));function setOfCachedUrls(e){return e.keys().then(function(e){return e.map(function(e){return e.url})}).then(function(e){return new Set(e)})}self.addEventListener("install",function(e){e.waitUntil(caches.open(cacheName).then(function(r){return setOfCachedUrls(r).then(function(n){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(t){if(!n.has(t)){var e=new Request(t,{credentials:"same-origin"});return fetch(e).then(function(e){if(!e.ok)throw new Error("Request for "+t+" returned a response with status "+e.status);return cleanResponse(e).then(function(e){return r.put(t,e)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(e){var n=new Set(urlsToCacheKeys.values());e.waitUntil(caches.open(cacheName).then(function(t){return t.keys().then(function(e){return Promise.all(e.map(function(e){if(!n.has(e.url))return t.delete(e)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(t){if("GET"===t.request.method){var e,n=stripIgnoredUrlParameters(t.request.url,ignoreUrlParametersMatching),r="index.html";(e=urlsToCacheKeys.has(n))||(n=addDirectoryIndex(n,r),e=urlsToCacheKeys.has(n));var a="./index.html";!e&&"navigate"===t.request.mode&&isPathWhitelisted(["^(?!\\/__).*"],t.request.url)&&(n=new URL(a,self.location).toString(),e=urlsToCacheKeys.has(n)),e&&t.respondWith(caches.open(cacheName).then(function(e){return e.match(urlsToCacheKeys.get(n)).then(function(e){if(e)return e;throw Error("The cached response that was expected is missing.")})}).catch(function(e){return console.warn('Couldn\'t serve response for "%s" from cache: %O',t.request.url,e),fetch(t.request)}))}});
|
||||
"use strict";var precacheConfig=[["./vendor.js","237af9dc55f41b6c741976a885b02f9c"],["./index.html","e029404730f12051bc263a78f8bc4d0e"],["./static/css/main.d1bb1ba4.css","1cf3245303e23b464c7dfaea99fab194"],["./static/js/main.cf17ad8e.js","1a2d8a868b322d220e623378dbfaedf9"],["./static/media/apartment.28bae16c.jpg","28bae16cf4a9e7f94cb89196fac21f55"],["./static/media/rgb.5d0e5ef3.png","5d0e5ef38575f7165d8e0f18166c59a9"],["./static/media/tempColor.b133cd66.png","b133cd66550e58e8677ea2c991d08ca6"]],cacheName="sw-precache-v3-sw-precache-webpack-plugin-"+(self.registration?self.registration.scope:""),ignoreUrlParametersMatching=[/^utm_/],addDirectoryIndex=function(e,t){var n=new URL(e);return"/"===n.pathname.slice(-1)&&(n.pathname+=t),n.toString()},cleanResponse=function(t){return t.redirected?("body"in t?Promise.resolve(t.body):t.blob()).then(function(e){return new Response(e,{headers:t.headers,status:t.status,statusText:t.statusText})}):Promise.resolve(t)},createCacheKey=function(e,t,n,r){var a=new URL(e);return r&&a.pathname.match(r)||(a.search+=(a.search?"&":"")+encodeURIComponent(t)+"="+encodeURIComponent(n)),a.toString()},isPathWhitelisted=function(e,t){if(0===e.length)return!0;var n=new URL(t).pathname;return e.some(function(e){return n.match(e)})},stripIgnoredUrlParameters=function(e,n){var t=new URL(e);return t.hash="",t.search=t.search.slice(1).split("&").map(function(e){return e.split("=")}).filter(function(t){return n.every(function(e){return!e.test(t[0])})}).map(function(e){return e.join("=")}).join("&"),t.toString()},hashParamName="_sw-precache",urlsToCacheKeys=new Map(precacheConfig.map(function(e){var t=e[0],n=e[1],r=new URL(t,self.location),a=createCacheKey(r,hashParamName,n,/\.\w{8}\./);return[r.toString(),a]}));function setOfCachedUrls(e){return e.keys().then(function(e){return e.map(function(e){return e.url})}).then(function(e){return new Set(e)})}self.addEventListener("install",function(e){e.waitUntil(caches.open(cacheName).then(function(r){return setOfCachedUrls(r).then(function(n){return Promise.all(Array.from(urlsToCacheKeys.values()).map(function(t){if(!n.has(t)){var e=new Request(t,{credentials:"same-origin"});return fetch(e).then(function(e){if(!e.ok)throw new Error("Request for "+t+" returned a response with status "+e.status);return cleanResponse(e).then(function(e){return r.put(t,e)})})}}))})}).then(function(){return self.skipWaiting()}))}),self.addEventListener("activate",function(e){var n=new Set(urlsToCacheKeys.values());e.waitUntil(caches.open(cacheName).then(function(t){return t.keys().then(function(e){return Promise.all(e.map(function(e){if(!n.has(e.url))return t.delete(e)}))})}).then(function(){return self.clients.claim()}))}),self.addEventListener("fetch",function(t){if("GET"===t.request.method){var e,n=stripIgnoredUrlParameters(t.request.url,ignoreUrlParametersMatching),r="index.html";(e=urlsToCacheKeys.has(n))||(n=addDirectoryIndex(n,r),e=urlsToCacheKeys.has(n));var a="./index.html";!e&&"navigate"===t.request.mode&&isPathWhitelisted(["^(?!\\/__).*"],t.request.url)&&(n=new URL(a,self.location).toString(),e=urlsToCacheKeys.has(n)),e&&t.respondWith(caches.open(cacheName).then(function(e){return e.match(urlsToCacheKeys.get(n)).then(function(e){if(e)return e;throw Error("The cached response that was expected is missing.")})}).catch(function(e){return console.warn('Couldn\'t serve response for "%s" from cache: %O',t.request.url,e),fetch(t.request)}))}});
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user