diff --git a/package-lock.json b/package-lock.json index c117f44..06f6606 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1076,9 +1076,9 @@ } }, "postcss-load-config": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.1.tgz", - "integrity": "sha512-c/9XYboIbSEUZpiD1UQD0IKiUe8n9WHYV7YFe7X7J+ZwCsEKkUJSFWjS9hBU1RR9THR7jMXst8sxiqP0jjo2mg==", + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-3.1.3.tgz", + "integrity": "sha512-5EYgaM9auHGtO//ljHH+v/aC/TQ5LHXtL7bQajNAUBKUVKiYE8rYpFms7+V26D9FncaGe2zwCoPQsFKb5zF/Hw==", "dev": true, "requires": { "lilconfig": "^2.0.4", @@ -1246,9 +1246,9 @@ } }, "rollup": { - "version": "2.67.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.67.0.tgz", - "integrity": "sha512-W83AaERwvDiHwHEF/dfAfS3z1Be5wf7n+pO3ZAO5IQadCT2lBTr7WQ2MwZZe+nodbD+n3HtC4OCOAdsOPPcKZQ==", + "version": "2.68.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.68.0.tgz", + "integrity": "sha512-XrMKOYK7oQcTio4wyTz466mucnd8LzkiZLozZ4Rz0zQD+HeX4nUK4B8GrTX/2EvN2/vBF/i2WnaXboPxo0JylA==", "dev": true, "requires": { "fsevents": "~2.3.2" @@ -1487,9 +1487,9 @@ } }, "svelte-preprocess": { - "version": "4.10.2", - "resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.10.2.tgz", - "integrity": "sha512-aPpkCreSo8EL/y8kJSa1trhiX0oyAtTjlNNM7BNjRAsMJ8Yy2LtqHt0zyd4pQPXt+D4PzbO3qTjjio3kwOxDlA==", + "version": "4.10.3", + "resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-4.10.3.tgz", + "integrity": "sha512-ttw17lJfb/dx2ZJT9sesaXT5l7mPQ9Apx1H496Kli3Hkk7orIRGpOw6rCPkRNzr6ueVPqb4vzodS5x7sBFhKHw==", "dev": true, "requires": { "@types/pug": "^2.0.4", diff --git a/package.json b/package.json index 6df4174..cf73c1d 100644 --- a/package.json +++ b/package.json @@ -12,16 +12,16 @@ "@rollup/plugin-node-resolve": "^11.0.0", "autoprefixer": "^10.4.2", "postcss": "^8.4.6", - "postcss-load-config": "^3.1.1", + "postcss-load-config": "^3.1.3", "prettier": "^2.5.1", "prettier-plugin-svelte": "^2.6.0", - "rollup": "^2.67.0", + "rollup": "^2.68.0", "rollup-plugin-css-only": "^3.1.0", "rollup-plugin-livereload": "^2.0.0", "rollup-plugin-svelte": "^7.0.0", "rollup-plugin-terser": "^7.0.0", "svelte": "^3.46.4", - "svelte-preprocess": "^4.10.2", + "svelte-preprocess": "^4.10.3", "tailwindcss": "^2.2.19", "tinro": "^0.5.12" }, diff --git a/src/App.svelte b/src/App.svelte index f9626ba..f49f07f 100644 --- a/src/App.svelte +++ b/src/App.svelte @@ -99,6 +99,10 @@ let incDeviceList = []; let incDeviceListParced = false; + let scenarioTxt = ""; + let scenarioTxtFlag = false; + let scenarioTxtParced = false; + let deviceList = []; deviceList = [ { @@ -151,6 +155,8 @@ var widgetsJsonBlob = new MyBlobBuilder(); var itemsJsonBlob = new MyBlobBuilder(); var layoutJsonBlob = new MyBlobBuilder(); + var layoutJsonBlob = new MyBlobBuilder(); + var scenarioTxtBlob = new MyBlobBuilder(); //var blobArr = new MyBlobBuilder()[10]; @@ -283,15 +289,15 @@ deviceList = combineArrays(deviceList, incDeviceList); } firstDevListRequest = false; - deviceList.sort(function (a, b) { - if (a.name < b.name) { - return -1; - } - if (a.name > b.name) { - return 1; - } - return 0; - }); + //deviceList.sort(function (a, b) { + // if (a.name < b.name) { + // return -1; + // } + // if (a.name > b.name) { + // return 1; + // } + // return 0; + //}); deviceList = deviceList; whenDeviceListWasUpdated(); connectToAllDevices(); @@ -358,6 +364,24 @@ } //BLOB============================================================== + //сборщик scenario.txt пакетов====================================== + if (data === "/st/scenario.txt") { + scenarioTxtFlag = true; + } + if (data === "/end/scenario.txt") { + scenarioTxtFlag = false; + var bb = scenarioTxtBlob.getBlob(); + let scenarioTxtReader = new FileReader(); + scenarioTxtReader.readAsText(bb); + scenarioTxtReader.onload = () => { + let scenarioTxtResult = scenarioTxtReader.result; + scenarioTxt = scenarioTxtResult; + scenarioTxt = scenarioTxt; + scenarioTxtParced = true; + if (debug) console.log("✔", "scenarioTxt parced"); + onParced("scenario"); + }; + } //сборщик configJson пакетов======================================== if (data === "/st/config.json") { configJsonFlag = true; @@ -448,6 +472,7 @@ if (widgetsJsonFlag) widgetsJsonBlob.append(event.data); if (itemsJsonFlag) itemsJsonBlob.append(event.data); if (layoutJsonFlag) layoutJsonBlob.append(event.data); + if (scenarioTxtFlag) scenarioTxtBlob.append(event.data); } } }); @@ -472,7 +497,7 @@ wigetsUpdate(); dashReady = true; } - if (currentPageName === "/config|" && itemsJsonParced && widgetsJsonParced && configJsonParced && settingsJsonParced) { + if (currentPageName === "/config|" && itemsJsonParced && widgetsJsonParced && configJsonParced && settingsJsonParced && scenarioTxtParced) { clearParcedFlags(); if (debug) console.log("✔✔", "config data parced"); configReady = true; @@ -498,6 +523,7 @@ function saveConfig() { wsSendMsg(selectedWs, "/tuoyal|" + JSON.stringify(generateLayout())); wsSendMsg(selectedWs, "/gifnoc|" + JSON.stringify(configJson)); + wsSendMsg(selectedWs, "/oiranecs|" + scenarioTxt); clearData(); sendCurrentPageName(); } @@ -598,6 +624,9 @@ coreMessages = []; + scenarioTxt = ""; + scenarioTxtBlob.clear(); + dashReady = false; configReady = false; connectionReady = false; @@ -620,6 +649,7 @@ paramsJsonParced = false; statusJsonParced = false; incDeviceListParced = false; + scenarioTxtParced = false; } function wsPush(ws, topic, status) { @@ -1070,7 +1100,7 @@ wsPush(ws, topic, status)} /> - saveConfig()} rebootEsp={() => rebootEsp()} /> + saveConfig()} rebootEsp={() => rebootEsp()} /> rebootEsp()} ssidClick={() => ssidClick()} saveSett={() => saveSett()} saveMqtt={() => saveMqtt()} settingsJson={settingsJson} errorsJson={errorsJson} ssidJson={ssidJson} /> diff --git a/src/pages/Config.svelte b/src/pages/Config.svelte index e7f30b5..ec88eba 100644 --- a/src/pages/Config.svelte +++ b/src/pages/Config.svelte @@ -10,6 +10,8 @@ export let show; + export let scenarioTxt; + let itemsJsonBind = 0; let debug = true; @@ -47,7 +49,7 @@ {#if show}
- +