iobroker.javascript 10.2.0 → 10.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/README.md +3 -6
  2. package/admin/assets/{AiChatPanel-DzN_zJhJ.js → AiChatPanel-CsDFom-L.js} +2 -2
  3. package/admin/assets/{Debugger-C4EMPnwD.js → Debugger-B6_1wqlh.js} +1 -1
  4. package/admin/assets/{RulesEditor-1zrGeOYq.js → RulesEditor-BML5AwgM.js} +1 -1
  5. package/admin/assets/{ScriptEditor-DrKzMShn.js → ScriptEditor-BxwJbR3_.js} +1 -1
  6. package/admin/assets/{ScriptEditorVanillaMonaco-uvElLaRp.js → ScriptEditorVanillaMonaco-C3AgkXsv.js} +2 -2
  7. package/admin/assets/aiPromptBuilder-CuCGSQIi.js +1 -0
  8. package/admin/assets/{blocks_action-xqgGyzT2.js → blocks_action-CPgrbjAf.js} +1 -1
  9. package/admin/assets/{blocks_convert-PyFGxenp.js → blocks_convert-2eEzarQy.js} +1 -1
  10. package/admin/assets/{blocks_logic-BJxcqx2J.js → blocks_logic-DMEjFKWc.js} +1 -1
  11. package/admin/assets/{blocks_number-xkiHAbop.js → blocks_number-Bsx0zQT_.js} +1 -1
  12. package/admin/assets/{blocks_object-D7_2tXgc.js → blocks_object-Q1nKLN6t.js} +1 -1
  13. package/admin/assets/{blocks_procedures-BSaG5k0y.js → blocks_procedures-CHMjZQbf.js} +1 -1
  14. package/admin/assets/{blocks_sendto-CdFzuf2Q.js → blocks_sendto-DsDq_Gu7.js} +1 -1
  15. package/admin/assets/{blocks_switch-CRs6hqoN.js → blocks_switch-Yog8S2MC.js} +1 -1
  16. package/admin/assets/{blocks_system-ImR4v_sW.js → blocks_system-2D8iX32Y.js} +1 -1
  17. package/admin/assets/{blocks_text-BATVRS4q.js → blocks_text-C5-csrVL.js} +1 -1
  18. package/admin/assets/{blocks_time-BhxMTQmg.js → blocks_time-LB5i9yMW.js} +1 -1
  19. package/admin/assets/{blocks_timeout-BZ2hzRJk.js → blocks_timeout-CHGW670q.js} +1 -1
  20. package/admin/assets/{blocks_trigger-bkOJ_uVI.js → blocks_trigger-D-2z_OfF.js} +1 -1
  21. package/admin/assets/{helpers-DIT6UgRN.js → helpers-CalO_DDQ.js} +1 -1
  22. package/admin/assets/{index-DwTLl2xB.js → index-CqFiN-25.js} +7 -7
  23. package/admin/assets/{mf-entry-bootstrap-0-bde4e47a.js → mf-entry-bootstrap-0-db6d825d.js} +1 -1
  24. package/admin/mf-stats.json +1 -1
  25. package/admin/tab.html +2 -2
  26. package/io-package.json +14 -14
  27. package/package.json +1 -1
  28. package/admin/assets/aiPromptBuilder-LTtUGqJp.js +0 -1
@@ -50,4 +50,4 @@ const __mfImport = (src) =>
50
50
  if (__mfReactServerModuleCache?.pendingShareLoads) {
51
51
  await Promise.all(__mfReactServerModuleCache.pendingShareLoads);
52
52
  }
53
- })().then(() => __mfImport("./index-DwTLl2xB.js"));
53
+ })().then(() => __mfImport("./index-CqFiN-25.js"));
@@ -1 +1 @@
1
- {"id":"iobroker_javascript","name":"iobroker_javascript","metaData":{"name":"iobroker_javascript","type":"app","buildInfo":{"buildVersion":"1.0.0","buildName":"iobroker_javascript"},"remoteEntry":{"name":"remoteEntry.js","path":"","type":"module"},"ssrRemoteEntry":{"name":"remoteEntry.ssr.js","path":"","type":"module"},"types":{"path":"","name":"","zip":"@mf-types.zip","api":"@mf-types.d.ts"},"globalName":"iobroker_javascript","pluginVersion":"0.2.5","publicPath":"auto"},"shared":[{"id":"iobroker_javascript:react","name":"react","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react-dom","name":"react-dom","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:@mui/material","name":"@mui/material","version":"9.4.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:prop-types","name":"prop-types","version":"15.8.1","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:@iobroker/gui-components","name":"@iobroker/gui-components","version":"10.2.3","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react/jsx-runtime","name":"react/jsx-runtime","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react-dom/client","name":"react-dom/client","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js"]},"css":{"async":[],"sync":[]}}}],"remotes":[],"exposes":[],"buildOutput":[{"fileName":"assets/hostInit-CzvCZFy5.js","type":"chunk","isEntry":false,"size":2819},{"fileName":"assets/index-DwTLl2xB.js","type":"chunk","isEntry":true,"size":1075454},{"fileName":"assets/pendingShares-C6DqQuMX.js","type":"chunk","isEntry":false,"size":2601},{"fileName":"assets/virtualExposes-DgGB-18P.js","type":"chunk","isEntry":false,"size":126},{"fileName":"remoteEntry.js","type":"chunk","isEntry":false,"size":957},{"fileName":"assets/AiChatPanel-DzN_zJhJ.js","type":"chunk","isEntry":false,"size":53803},{"fileName":"assets/AiChatService-k72w0sOt.js","type":"chunk","isEntry":false,"size":15373},{"fileName":"assets/AiDatapointProvider-DzFpUKkT.js","type":"chunk","isEntry":false,"size":2429},{"fileName":"assets/AiDiffView-DAleMXcP.js","type":"chunk","isEntry":false,"size":1517},{"fileName":"assets/AiInlineProvider-C5EJApDe.js","type":"chunk","isEntry":false,"size":2322},{"fileName":"assets/Debugger-C4EMPnwD.js","type":"chunk","isEntry":false,"size":146863},{"fileName":"assets/Error-DBiAAbCC.js","type":"chunk","isEntry":false,"size":1032},{"fileName":"assets/Import-Dm-2zYlI.js","type":"chunk","isEntry":false,"size":6275},{"fileName":"assets/RulesEditor-1zrGeOYq.js","type":"chunk","isEntry":false,"size":27565},{"fileName":"assets/ScriptEditor-DrKzMShn.js","type":"chunk","isEntry":false,"size":2206},{"fileName":"assets/ScriptEditorVanillaMonaco-uvElLaRp.js","type":"chunk","isEntry":false,"size":26021},{"fileName":"assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-CQpJXcpz.js","type":"chunk","isEntry":false,"size":5097},{"fileName":"assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js","type":"chunk","isEntry":false,"size":2371923},{"fileName":"assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js","type":"chunk","isEntry":false,"size":209898},{"fileName":"assets/aiPromptBuilder-LTtUGqJp.js","type":"chunk","isEntry":false,"size":77},{"fileName":"assets/applyCodeEdit-D3nb7erO.js","type":"chunk","isEntry":false,"size":633},{"fileName":"assets/blockly-Fp-1_Ye3.js","type":"chunk","isEntry":false,"size":632005},{"fileName":"assets/blocks_action-xqgGyzT2.js","type":"chunk","isEntry":false,"size":11542},{"fileName":"assets/blocks_convert-PyFGxenp.js","type":"chunk","isEntry":false,"size":8703},{"fileName":"assets/blocks_logic-BJxcqx2J.js","type":"chunk","isEntry":false,"size":3949},{"fileName":"assets/blocks_number-xkiHAbop.js","type":"chunk","isEntry":false,"size":700},{"fileName":"assets/blocks_object-D7_2tXgc.js","type":"chunk","isEntry":false,"size":6451},{"fileName":"assets/blocks_procedures-BSaG5k0y.js","type":"chunk","isEntry":false,"size":9305},{"fileName":"assets/blocks_sendto-CdFzuf2Q.js","type":"chunk","isEntry":false,"size":10968},{"fileName":"assets/blocks_switch-CRs6hqoN.js","type":"chunk","isEntry":false,"size":4639},{"fileName":"assets/blocks_system-ImR4v_sW.js","type":"chunk","isEntry":false,"size":22796},{"fileName":"assets/blocks_text-BATVRS4q.js","type":"chunk","isEntry":false,"size":1736},{"fileName":"assets/blocks_time-BhxMTQmg.js","type":"chunk","isEntry":false,"size":12608},{"fileName":"assets/blocks_timeout-BZ2hzRJk.js","type":"chunk","isEntry":false,"size":5345},{"fileName":"assets/blocks_trigger-bkOJ_uVI.js","type":"chunk","isEntry":false,"size":22882},{"fileName":"assets/blocks_words-bpwd7Ia0.js","type":"chunk","isEntry":false,"size":138581},{"fileName":"assets/cronHoverProvider-DYMf8M44.js","type":"chunk","isEntry":false,"size":1964},{"fileName":"assets/dist-D4uJqRBO.js","type":"chunk","isEntry":false,"size":66971},{"fileName":"assets/docs-compact-D7rpMc7r.js","type":"chunk","isEntry":false,"size":13791},{"fileName":"assets/field_cron-B-SF-uZM.js","type":"chunk","isEntry":false,"size":711},{"fileName":"assets/field_oid-fYE12Bhj.js","type":"chunk","isEntry":false,"size":9058},{"fileName":"assets/field_script-aZs3j-vG.js","type":"chunk","isEntry":false,"size":1608},{"fileName":"assets/helpers-DIT6UgRN.js","type":"chunk","isEntry":false,"size":3099},{"fileName":"assets/inlineChatWidget-n7ufGLov.js","type":"chunk","isEntry":false,"size":6871},{"fileName":"assets/inlineDiffController-5u3tIcIH.js","type":"chunk","isEntry":false,"size":7302},{"fileName":"assets/rolldown-runtime-C0FnF6B9.js","type":"chunk","isEntry":false,"size":1291},{"fileName":"assets/stateHoverProvider-C0OUV2Nh.js","type":"chunk","isEntry":false,"size":144252},{"fileName":"assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__iobroker_javascript__remoteEntry_js-BvxK85AS.js","type":"chunk","isEntry":false,"size":18937},{"fileName":"assets/virtual_mf-exposes___mfe_internal__iobroker_javascript__remoteEntry_js-ChiJXsfH.js","type":"chunk","isEntry":false,"size":24},{"fileName":"assets/vite-preload-helper-CaC3yEL3.js","type":"chunk","isEntry":false,"size":1265},{"fileName":"assets/RulesEditor-CybrKL-9.css","type":"asset","isEntry":false,"size":14929},{"fileName":"assets/blockly2js-B3Jxf2e-.svg","type":"asset","isEntry":false,"size":8421},{"fileName":"assets/hysteresis-CLhhemcG.png","type":"asset","isEntry":false,"size":12163},{"fileName":"assets/index-Z8Hkv58g.css","type":"asset","isEntry":false,"size":7849},{"fileName":"assets/rules2js-DnYyR8mI.svg","type":"asset","isEntry":false,"size":6950},{"fileName":"assets/tileBlockly-BMpdinN3.png","type":"asset","isEntry":false,"size":12893},{"fileName":"assets/tileJS-C48gYbHw.png","type":"asset","isEntry":false,"size":17266},{"fileName":"assets/tileRules-BkbaFIhs.png","type":"asset","isEntry":false,"size":83463},{"fileName":"assets/tileTS-CsXmgy4B.png","type":"asset","isEntry":false,"size":13415},{"fileName":"index.html","type":"asset","isEntry":false,"size":22014},{"fileName":"assets/mf-entry-bootstrap-0-bde4e47a.js","type":"asset","isEntry":false,"size":2162}],"assetAnalysis":{"react":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"react/jsx-runtime":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"prop-types":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"react-dom":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"@mui/material":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"@iobroker/gui-components":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"react-dom/client":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js"],"async":[]},"css":{"sync":[],"async":[]}}}}
1
+ {"id":"iobroker_javascript","name":"iobroker_javascript","metaData":{"name":"iobroker_javascript","type":"app","buildInfo":{"buildVersion":"1.0.0","buildName":"iobroker_javascript"},"remoteEntry":{"name":"remoteEntry.js","path":"","type":"module"},"ssrRemoteEntry":{"name":"remoteEntry.ssr.js","path":"","type":"module"},"types":{"path":"","name":"","zip":"@mf-types.zip","api":"@mf-types.d.ts"},"globalName":"iobroker_javascript","pluginVersion":"0.2.5","publicPath":"auto"},"shared":[{"id":"iobroker_javascript:react","name":"react","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react-dom","name":"react-dom","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:@mui/material","name":"@mui/material","version":"9.4.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:prop-types","name":"prop-types","version":"15.8.1","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:@iobroker/gui-components","name":"@iobroker/gui-components","version":"10.2.3","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react/jsx-runtime","name":"react/jsx-runtime","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react-dom/client","name":"react-dom/client","version":"19.3.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js"]},"css":{"async":[],"sync":[]}}}],"remotes":[],"exposes":[],"buildOutput":[{"fileName":"assets/hostInit-CzvCZFy5.js","type":"chunk","isEntry":false,"size":2819},{"fileName":"assets/index-CqFiN-25.js","type":"chunk","isEntry":true,"size":1075643},{"fileName":"assets/pendingShares-C6DqQuMX.js","type":"chunk","isEntry":false,"size":2601},{"fileName":"assets/virtualExposes-DgGB-18P.js","type":"chunk","isEntry":false,"size":126},{"fileName":"remoteEntry.js","type":"chunk","isEntry":false,"size":957},{"fileName":"assets/AiChatPanel-CsDFom-L.js","type":"chunk","isEntry":false,"size":53803},{"fileName":"assets/AiChatService-k72w0sOt.js","type":"chunk","isEntry":false,"size":15373},{"fileName":"assets/AiDatapointProvider-DzFpUKkT.js","type":"chunk","isEntry":false,"size":2429},{"fileName":"assets/AiDiffView-DAleMXcP.js","type":"chunk","isEntry":false,"size":1517},{"fileName":"assets/AiInlineProvider-C5EJApDe.js","type":"chunk","isEntry":false,"size":2322},{"fileName":"assets/Debugger-B6_1wqlh.js","type":"chunk","isEntry":false,"size":146863},{"fileName":"assets/Error-DBiAAbCC.js","type":"chunk","isEntry":false,"size":1032},{"fileName":"assets/Import-Dm-2zYlI.js","type":"chunk","isEntry":false,"size":6275},{"fileName":"assets/RulesEditor-BML5AwgM.js","type":"chunk","isEntry":false,"size":27565},{"fileName":"assets/ScriptEditor-BxwJbR3_.js","type":"chunk","isEntry":false,"size":2206},{"fileName":"assets/ScriptEditorVanillaMonaco-C3AgkXsv.js","type":"chunk","isEntry":false,"size":26021},{"fileName":"assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-CQpJXcpz.js","type":"chunk","isEntry":false,"size":5097},{"fileName":"assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js","type":"chunk","isEntry":false,"size":2371923},{"fileName":"assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js","type":"chunk","isEntry":false,"size":209898},{"fileName":"assets/aiPromptBuilder-CuCGSQIi.js","type":"chunk","isEntry":false,"size":77},{"fileName":"assets/applyCodeEdit-D3nb7erO.js","type":"chunk","isEntry":false,"size":633},{"fileName":"assets/blockly-Fp-1_Ye3.js","type":"chunk","isEntry":false,"size":632005},{"fileName":"assets/blocks_action-CPgrbjAf.js","type":"chunk","isEntry":false,"size":11542},{"fileName":"assets/blocks_convert-2eEzarQy.js","type":"chunk","isEntry":false,"size":8703},{"fileName":"assets/blocks_logic-DMEjFKWc.js","type":"chunk","isEntry":false,"size":3949},{"fileName":"assets/blocks_number-Bsx0zQT_.js","type":"chunk","isEntry":false,"size":700},{"fileName":"assets/blocks_object-Q1nKLN6t.js","type":"chunk","isEntry":false,"size":6451},{"fileName":"assets/blocks_procedures-CHMjZQbf.js","type":"chunk","isEntry":false,"size":9305},{"fileName":"assets/blocks_sendto-DsDq_Gu7.js","type":"chunk","isEntry":false,"size":10968},{"fileName":"assets/blocks_switch-Yog8S2MC.js","type":"chunk","isEntry":false,"size":4639},{"fileName":"assets/blocks_system-2D8iX32Y.js","type":"chunk","isEntry":false,"size":22796},{"fileName":"assets/blocks_text-C5-csrVL.js","type":"chunk","isEntry":false,"size":1736},{"fileName":"assets/blocks_time-LB5i9yMW.js","type":"chunk","isEntry":false,"size":12608},{"fileName":"assets/blocks_timeout-CHGW670q.js","type":"chunk","isEntry":false,"size":5345},{"fileName":"assets/blocks_trigger-D-2z_OfF.js","type":"chunk","isEntry":false,"size":22882},{"fileName":"assets/blocks_words-bpwd7Ia0.js","type":"chunk","isEntry":false,"size":138581},{"fileName":"assets/cronHoverProvider-DYMf8M44.js","type":"chunk","isEntry":false,"size":1964},{"fileName":"assets/dist-D4uJqRBO.js","type":"chunk","isEntry":false,"size":66971},{"fileName":"assets/docs-compact-D7rpMc7r.js","type":"chunk","isEntry":false,"size":13791},{"fileName":"assets/field_cron-B-SF-uZM.js","type":"chunk","isEntry":false,"size":711},{"fileName":"assets/field_oid-fYE12Bhj.js","type":"chunk","isEntry":false,"size":9058},{"fileName":"assets/field_script-aZs3j-vG.js","type":"chunk","isEntry":false,"size":1608},{"fileName":"assets/helpers-CalO_DDQ.js","type":"chunk","isEntry":false,"size":3099},{"fileName":"assets/inlineChatWidget-n7ufGLov.js","type":"chunk","isEntry":false,"size":6871},{"fileName":"assets/inlineDiffController-5u3tIcIH.js","type":"chunk","isEntry":false,"size":7302},{"fileName":"assets/rolldown-runtime-C0FnF6B9.js","type":"chunk","isEntry":false,"size":1291},{"fileName":"assets/stateHoverProvider-C0OUV2Nh.js","type":"chunk","isEntry":false,"size":144252},{"fileName":"assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__iobroker_javascript__remoteEntry_js-BvxK85AS.js","type":"chunk","isEntry":false,"size":18937},{"fileName":"assets/virtual_mf-exposes___mfe_internal__iobroker_javascript__remoteEntry_js-ChiJXsfH.js","type":"chunk","isEntry":false,"size":24},{"fileName":"assets/vite-preload-helper-CaC3yEL3.js","type":"chunk","isEntry":false,"size":1265},{"fileName":"assets/RulesEditor-CybrKL-9.css","type":"asset","isEntry":false,"size":14929},{"fileName":"assets/blockly2js-B3Jxf2e-.svg","type":"asset","isEntry":false,"size":8421},{"fileName":"assets/hysteresis-CLhhemcG.png","type":"asset","isEntry":false,"size":12163},{"fileName":"assets/index-Z8Hkv58g.css","type":"asset","isEntry":false,"size":7849},{"fileName":"assets/rules2js-DnYyR8mI.svg","type":"asset","isEntry":false,"size":6950},{"fileName":"assets/tileBlockly-BMpdinN3.png","type":"asset","isEntry":false,"size":12893},{"fileName":"assets/tileJS-C48gYbHw.png","type":"asset","isEntry":false,"size":17266},{"fileName":"assets/tileRules-BkbaFIhs.png","type":"asset","isEntry":false,"size":83463},{"fileName":"assets/tileTS-CsXmgy4B.png","type":"asset","isEntry":false,"size":13415},{"fileName":"index.html","type":"asset","isEntry":false,"size":22014},{"fileName":"assets/mf-entry-bootstrap-0-db6d825d.js","type":"asset","isEntry":false,"size":2162}],"assetAnalysis":{"react":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"react/jsx-runtime":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"prop-types":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"react-dom":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"@mui/material":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"@iobroker/gui-components":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"],"async":[]},"css":{"sync":[],"async":[]}},"react-dom/client":{"js":{"sync":["assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js"],"async":[]},"css":{"sync":[],"async":[]}}}}
package/admin/tab.html CHANGED
@@ -27,12 +27,12 @@
27
27
 
28
28
  <script type="text/javascript" onerror="setTimeout(function(){window.location.reload()}, 5000)" src="./../../lib/js/socket.io.js"></script>
29
29
  <title>Scripts</title>
30
- <script type="module" crossorigin src="./assets/mf-entry-bootstrap-0-bde4e47a.js"></script>
30
+ <script type="module" crossorigin src="./assets/mf-entry-bootstrap-0-db6d825d.js"></script>
31
31
  <link rel="modulepreload" crossorigin href="./assets/Import-Dm-2zYlI.js">
32
32
  <link rel="modulepreload" crossorigin href="./assets/Error-DBiAAbCC.js">
33
33
  <link rel="modulepreload" crossorigin href="./assets/blockly-Fp-1_Ye3.js">
34
34
  <link rel="stylesheet" crossorigin href="./assets/index-Z8Hkv58g.css">
35
- <link rel="modulepreload" crossorigin href="./assets/hostInit-CzvCZFy5.js"><link rel="modulepreload" crossorigin href="./assets/index-DwTLl2xB.js"><link rel="modulepreload" crossorigin href="./assets/virtualExposes-DgGB-18P.js"><link rel="modulepreload" crossorigin href="./remoteEntry.js"><link rel="modulepreload" crossorigin href="./assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-CQpJXcpz.js"><link rel="modulepreload" crossorigin href="./assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"><link rel="modulepreload" crossorigin href="./assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js"><link rel="modulepreload" crossorigin href="./assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__iobroker_javascript__remoteEntry_js-BvxK85AS.js"><link rel="modulepreload" crossorigin href="./assets/virtual_mf-exposes___mfe_internal__iobroker_javascript__remoteEntry_js-ChiJXsfH.js"><link rel="modulepreload" crossorigin href="./assets/vite-preload-helper-CaC3yEL3.js"><link rel="modulepreload" crossorigin href="./assets/rolldown-runtime-C0FnF6B9.js"><link rel="modulepreload" crossorigin href="./assets/dist-D4uJqRBO.js"></head>
35
+ <link rel="modulepreload" crossorigin href="./assets/hostInit-CzvCZFy5.js"><link rel="modulepreload" crossorigin href="./assets/index-CqFiN-25.js"><link rel="modulepreload" crossorigin href="./assets/virtualExposes-DgGB-18P.js"><link rel="modulepreload" crossorigin href="./remoteEntry.js"><link rel="modulepreload" crossorigin href="./assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-CQpJXcpz.js"><link rel="modulepreload" crossorigin href="./assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Drq9CkPs.js"><link rel="modulepreload" crossorigin href="./assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__113183188387379__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-B8K8J9cp.js"><link rel="modulepreload" crossorigin href="./assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__iobroker_javascript__remoteEntry_js-BvxK85AS.js"><link rel="modulepreload" crossorigin href="./assets/virtual_mf-exposes___mfe_internal__iobroker_javascript__remoteEntry_js-ChiJXsfH.js"><link rel="modulepreload" crossorigin href="./assets/vite-preload-helper-CaC3yEL3.js"><link rel="modulepreload" crossorigin href="./assets/rolldown-runtime-C0FnF6B9.js"><link rel="modulepreload" crossorigin href="./assets/dist-D4uJqRBO.js"></head>
36
36
  <body>
37
37
  <noscript> You need to enable JavaScript to run this app. </noscript>
38
38
  <script>
package/io-package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "common": {
3
3
  "name": "javascript",
4
- "version": "10.2.0",
4
+ "version": "10.2.1",
5
5
  "blockedVersions": [
6
6
  "8.0.0",
7
7
  "8.0.1"
@@ -40,6 +40,19 @@
40
40
  "Matthias Kleine <info@haus-automatisierung.com>"
41
41
  ],
42
42
  "news": {
43
+ "10.2.1": {
44
+ "en": "Rules: selection of state fixed",
45
+ "de": "Regeln: Bundeslandwahl fest",
46
+ "ru": "Правила: выбор фиксированного государства",
47
+ "pt": "Regras: seleção de estado fixo",
48
+ "nl": "Regels: de keuze van de staat is vastgesteld",
49
+ "fr": "Règles : choix de l'État fixe",
50
+ "it": "Regole: scelta dello stato fissa",
51
+ "es": "Reglas: selección de estado fija",
52
+ "pl": "Zasady: wybór stanu stałego",
53
+ "uk": "Правила: вибір штату фіксований",
54
+ "zh-cn": "规则:选州固定"
55
+ },
43
56
  "10.2.0": {
44
57
  "en": "Rules: an empty \"and\" band folds down to its heading. A rule without conditions runs its actions on every trigger, but that band was still the tallest thing in the rule - a drop area with a 64px floor, the \"just check\" selector and an \"or\" row per group, 292px for nothing. It is 41px now and says \"without condition\", clicking the heading opens it again, dragging a condition over it opens it by itself, and a band that has conditions in it never folds\nRules: the block palette takes half the room it did. An entry carried 24px of padding around a 30px icon, which left 66px of sidebar for one line of text - so four blocks filled the whole height and everything else was behind a scrollbar. Entries are 31px apart now, the icon-only tabs above them no longer reserve the height of a label they do not have, and the sidebar is 168px instead of 200px wide. A name too long for that gets the full text as its tooltip. The button that folds the palette away also sits on the palette's line now instead of one pixel to the left of it, where it hung over the edge of the window once the palette was folded away\nRules: picking the state of a trigger took the editor down with \"n.replace is not a function\" when a condition on a string state had no value entered yet. Choosing a state compiles the whole rule again, and the empty value arrived at the comparison as the boolean `false`. A condition without a value now compares against an empty text, and a number entered for a state that is a string is used as its text\nThe script editor now tells the adapter every 10 seconds that it is open, and the adapter keeps the type definitions and the compiler hot while that is the case, so saving a script does not wait for them to be built again. 30 seconds after the last sign of life the GUI counts as gone and everything is given back - about 100 MB. A tab in the background does not count as open, so a forgotten browser tab cannot keep the memory alive for days (#2373)\nThe type definitions of Node.js, ioBroker and the configured libraries were read at every start, whether anything wanted them or not. Only two things do - compiling a TypeScript script and the built-in editor - and they add about 90 MB to the compiler, so they are now read when one of those actually asks. An instance that runs plain JavaScript and is edited elsewhere (mirror directory, external editor) never reads them; the declarations of global JavaScripts are generated without them and come out the same. They can also be switched off for good (\"Load type definitions\", TypeScript tab) - the editor then loses its autocompletion and TypeScript scripts no longer compile, which the adapter warns about in the log (#2373)\nEvery instance kept two TypeScript language services alive whether it needed them or not, and each one held on to about 95 MB once it had compiled anything. They are now built on the first compilation only, and the declarations of global JavaScripts are stored on the script object the same way compiled TypeScript sources already were - so a restart no longer regenerates them. What a language service does end up building is released again a minute after the last compilation and rebuilt on demand. On a test system this took an instance from 241 MB to 127 MB heap (352 MB to 233 MB RSS) (#2373)\nThe helpers that the script editor draws on its own - the \"Explain / Refactor / Test\" row above every function, the tooltips for object IDs and CRON expressions, and the inline code suggestions - can be switched off. The instance setting \"Show AI helpers in the script editor\" (AI settings) does it; it is on by default, so nothing changes for anyone who is happy with them. `Alt+I` still shows the value of the object ID under the cursor when they are off\nThe reasoning of an OpenAI-compatible endpoint was switched off unconditionally: `reasoning_effort: \"none\"` went out with every request as soon as a custom base URL was configured. That is right for a small local model and wrong for everything else - behind a proxy it turns off the reasoning of the very model one is paying for, or is rejected. It is a setting now (\"Reasoning effort\"), and the default leaves the parameter out and lets the endpoint decide\nThe AI editor told the adapter how long it was willing to wait, and the adapter never read it: a stuck inline completion held its slot for the full ten minutes instead of the fifteen seconds it asked for\nThe inline completion took the model chosen in the AI chat but picked the provider itself, so a model of one provider could be requested with the credentials and at the endpoint of another. Model and provider are now remembered and used together\nWhen two providers offer a model of the same name - a proxy and the vendor behind it, for instance - which of them served it was decided by whichever answered first, and could change from one reload to the next. The provider configured first wins now, so the direct route is preferred over a proxy",
45
58
  "de": "Regeln: Ein leeres „Und“ -Band klappt nach unten. Eine Regel ohne Bedingungen führt ihre Aktionen bei jedem Auslöser aus, aber das Band war immer noch am höchsten — ein Drop-Bereich mit 64 Pixeln, „Just check“ -Selektor und „oder“ -Reihe pro Gruppe, 292 px umsonst. Es ist jetzt 41 Pixel groß und sagt „ohne Bedingung“. Ein Klick auf die Überschrift öffnet sie erneut, und ein Band mit Bedingungen klappt nie.\nRegeln: Die Blockpalette nimmt halb so viel Platz ein. Ein Eintrag war 24 px rund um ein 30-Pix-Symbol, sodass 66 px Seitenleiste für eine Textzeile übrig waren — vier Blöcke füllten die ganze Höhe und alles andere war hinter einer Scrollleiste. Die Einträge sind jetzt 31 Pixel auseinander, die Tabs über ihnen haben keine Labelhöhe mehr und die Seitenleiste ist 168 Pixel statt 200 Pixel breit. Ein zu langer Name hat den Volltext als Tooltip. Die Schaltfläche zum Einklappen der Palette befindet sich jetzt auch auf der Linie der Palette und nicht ein Pixel links davon, wo sie nach dem Zusammenklappen über dem Fensterrand hing\nRegeln: Wenn der Status eines Triggers noch kein Wert eingegeben wurde, sagte der Editor „n.replace ist keine Funktion“. Wenn Sie ein Bundesland wählen, wird die Regel erneut kompiliert, und der leere Wert ergab den booleschen Wert Eine Bedingung ohne Wert wird nun mit leerem Text verglichen, und als Text wird eine Zahl für ein Bundesland verwendet\nDer Skripteditor teilt dem Adapter nun alle 10 Sekunden mit, dass er geöffnet ist, und hält dabei die Typdefinitionen und den Compiler heiß. Das Speichern eines Skripts wartet nicht, bis es neu erstellt wird. 30 Sekunden nach dem letzten Lebenszeichen gilt die GUI als weg und alles wird zurückgegeben — etwa 100 MB. Ein Tab im Hintergrund gilt nicht als geöffnet, ein vergessener Browser-Tab hält ihn tagelang fest (#2373)\nDie Typdefinitionen von Node.js, ioBroker und die konfigurierten Bibliotheken wurden bei jedem Start gelesen. Nur zwei Dinge tun das — ein TypeScript-Skript und der eingebaute Editor — und sie erhöhen den Compiler um 90 MB, sodass sie gelesen werden, wenn einer fragt. Eine Instanz, die reines JavaScript ausführt und woanders bearbeitet wird (Spiegelverzeichnis, externer Editor), liest sie nie. Die Deklarationen globaler JavaScripts werden ohne sie generiert. Sie sind auch endgültig abschaltbar („Load Type Definitions“, Tab TypeScript) — dann verliert der Editor seine Autokomplettierung und TypeScript-Skripte kompilieren nicht mehr, wovor der Adapter warnt (#2373)\nJede Instanz hielt zwei TypeScript-Sprachdienste am Leben, ob nötig oder nicht, und jede hielt etwa 95 MB, nachdem sie etwas kompiliert hatte. Sie basieren jetzt nur auf der ersten Compilierung und globale JavaScript-Deklarationen werden im Skriptobjekt gespeichert, so dass sie bei einem Neustart nicht mehr neu generiert werden. Was ein Sprachdienst baut, wird eine Minute nach der letzten Compilation erneut veröffentlicht. Auf einem Testsystem waren es 241 MB auf 127 MB Heap (352 MB bis 233 MB RSS) (#2373)\nDie vom Skripteditor selbst erstellten Helfer — die Zeile „Explain/Refactor/Test“ über jeder Funktion, Tooltips für Objekt-IDs und CRON-Ausdrücke und Inline-Codevorschläge — können abgeschaltet werden. Die Instanzeinstellung „Zeige KI-Helfer im Skripteditor“ (AI-Einstellungen) tut das. Sie ist standardmäßig aktiviert, also ändert sich nichts. `Alt+I` zeigt auch bei ausgeschaltetem Cursor den Wert der Objekt-ID\nDie Logik eines OpenAI-fähigen Endpunkts wurde bedingungslos abgeschaltet: `reasoning_effort: „none\"` ging bei jeder Anfrage raus, sobald eine benutzerdefinierte Basis-URL konfiguriert war. Das stimmt für ein kleines Lokalmodell und falsch für alles andere. Hinter einem Proxy steht das Modell, für das man bezahlt, oder es wird abgelehnt. Es ist jetzt eine Einstellung („Argumentationsaufwand“), ohne Parameter und der Endpunkt entscheidet\nDer KI-Editor teilte dem Adapter mit, wie lange er bereit war zu warten, und der Adapter las ihn nie: Ein hängengebliebener Inline-Slot hielt die vollen zehn Minuten statt 15 Sekunden\nBeim Inline-Abschluss wurde das im KI-Chat gewählte Modell, aber der Anbieter selbst ausgewählt, sodass ein Modell mit den Zugangsdaten und am Ende eines anderen angefragt werden konnte. Modell und Anbieter werden nun gespeichert und genutzt\nWenn zwei Anbieter ein Modell mit dem gleichen Namen anbieten, z. B. einen Proxy und den Anbieter dahinter, entscheidet, wer zuerst antwortet, und kann von einem Reload zum nächsten wechseln. Der erste Anbieter gewinnt jetzt, der direkte Weg wird einem Proxy vorgezogen",
@@ -117,19 +130,6 @@
117
130
  "pl": "Ponownie wyłączono opcję „strict” dla skryptów, ponieważ TypeScript 6 domyślnie ją włącza\nDodano zakładkę „TypeScript” do ustawień, w której można skonfigurować opcje kompilatora dla skryptów\nDodano testy migawek do generowania kodu Blockly (`npm run test:blockly`)\nUsunięto dwa pozostałe znaczniki `.only`, które wyłączały niemal cały zestaw testów\nPrzypięto zakończenia linii przekształconych źródeł TypeScript do LF, więc aktualizacja kompilatora nie może przepisać każdego skryptu\nPrzeniesiono mikrotesty do `npm run test:performance`, ponieważ mierzą one względną prędkość w stosunku do przekroczeń limitu czasu i nie mogą blokować kompilacji\nZaktualizowano Blockly z wersji 11.1.1 do 13.2.1. Wygenerowany kod pozostaje niezmieniony.\n`updateBlockly.js` teraz kopiuje z zainstalowanego pakietu npm zamiast klonować gałąź git master, dzięki czemu dostarczona wersja Blockly jest możliwa do odtworzenia\nBlockly jest teraz dołączony do pakietu npm, a nie ładowany jako tagi skryptów dostawcy. Niestandardowe bloki innych adapterów działają bez zmian.\nUsunięto 828 kB dostarczonego kodu Blockly z repozytorium\nPrzekonwertowano wszystkie definicje bloków z JavaScript na TypeScript. Wygenerowany kod pozostaje niezmieniony.\nNaprawiono bloki obiektów w Blockly 13: wiersze atrybutów nie były już wyrównane do prawej, a edycja atrybutów bloku „obiekt” powodowała\nUsunięto martwy kod edytora pól CRON i skryptów, który został napisany dla Blockly 1.x\nNaprawiono bloki multi-and/multi-or w Blockly 13, które pojawiały się podczas edycji ich warunków\nUsunięto blok fantomowy typu „Konwertuj”, który został zarejestrowany przez przypadkowe przypisanie w blokach konwersji\nDodano `BLOCKLY_TS.md` dla programistów adapterów: co Blockly 13 zmieniło w przypadku bloków niestandardowych i jak je pisać w TypeScript\nPrzeniesiono tłumaczenia Blockly do pliku `words.json` i wpisano pomocniki wyszukiwania\nPrzeprojektowanie zasad\nDodano kreatora do edytora reguł, który tworzy regułę krok po kroku – wyzwalacz, warunek i działanie są konfigurowane na miejscu, a ostatni krok pokazuje gotową regułę\nKreator otwiera się automatycznie dla nowo utworzonej reguły – raz, a nie dla duplikatu. Następnie pozostaje on dostępny w palecie bloków.\nNaprawiono deklaracje typu bibliotek zewnętrznych: umieszczano je pod nazwą, jaką biblioteka ma na dysku, podczas gdy ich `package.json` trafiał pod nazwę importowanych skryptów, więc TypeScript nigdy nie łączył tych dwóch plików, a wszystko, co importowano z takiej biblioteki, brzmiało `any` (#2341)\nZaprzestano pakowania deklaracji biblioteki w „declare module”, co oddzielało plik beczkowy od tego, co reeksportuje. Deklaracje, które same w sobie nie są modułem, nadal są pakowane.\nNaprawiono śledzenie importów w pliku deklaracji: śledzony był tylko pierwszy import pliku i tylko wtedy, gdy znajdował się on w pierwszym wierszu. W przypadku rxjs 6, który ładował 6 z ~800 plików deklaracji.\nImporty efektów ubocznych (`import \"./x\";`) w pliku deklaracji są teraz również uwzględniane. `@iobroker/types` nie składa się z niczego innego, więc typy `ioBroker.*` nie były widoczne w skryptach i edytorze.\nPlik definicji, którego nie można odczytać, nie odrzuca już wszystkich deklaracji typu swojego pakietu\nDodano testy regresji dla deklaracji typów bibliotek stron trzecich, które kompilują się względem nich i nalegają na odrzucenie niewłaściwego kodu\nFunkcja `createState` przekształca teraz stan obiektu, JSON lub tablicy w ciąg `common.def`, tak jak oczekuje tego kontroler js i jak funkcja `setState` już to robi z wartością. Utworzenie takiego stanu z wartością początkową nie powoduje już wyświetlania ostrzeżenia „Wartość domyślna musi być przekształcona w ciąg” (#2307).\nUdokumentowano, że obiekt na drugiej pozycji `createState` jest zawsze `wspólny`, a także jak nadać stanowi wartość początkową nieprymitywną\nPrzywrócono sprawdzanie ścieżki lustrzanej w konfiguracji instancji. Została ona utracona po przeniesieniu konfiguracji administratora do pliku `jsonConfig.json`, więc zabroniona ścieżka została zaakceptowana bez słowa i odrzucona dopiero później w logu (#2296).\nPole ścieżki lustrzanej teraz wyjaśnia, jaki powinien być katalog i sugeruje jeden\nSkrypty nie są już usuwane z bazy danych, gdy cały katalog lustrzany staje się niedostępny, np. z powodu braku zamontowania udziału\nBiblioteki, które nazywają swoje deklaracje za pomocą mapy `exports`, są teraz typizowane. Ich starsze pole `types` często jest szczątkiem wskazującym na plik, który nie istnieje – rxjs 7 jest jednym z nich – przez co wszystko, co jest z nich importowane, pozostaje jako `any` (#928).\nDeklaracje biblioteki są rozmieszczone wokół jej punktu wejścia, więc `moduleResolution: node10` znajdzie ją nawet wtedy, gdy znajduje się ona w podkatalogu\nManifest przekazany TypeScript opisuje ten układ zamiast tego na dysku. Mapa „exports” wskazująca na ścieżki, które tam nie istnieją, spowodowała, że TypeScript całkowicie odrzucił bibliotekę.\nPlik package.json biblioteki jest odczytywany z dysku, a nie przez Node, który go odrzuca, gdy biblioteka go nie eksportuje\nNaprawiono testy lustrzane na macOS. Potwierdzono pierwsze zdarzenie zgłoszone przez obserwatora, podczas gdy `fs.watch` działa z dokładnością do katalogu i wysyła zdarzenie dla obserwowanego katalogu przed zdarzeniem dla pliku. Teraz czekają na zmianę, której dotyczą, i zamiast tego informują o tym, co nastąpiło, jeśli nigdy nie nastąpi.\nUniezależniono testy lustrzane od czasu uzbrajania zegarka. Testowana zmiana jest powtarzana w trakcie oczekiwania, więc nie można jej wprowadzić, zanim obserwator nie zacznie nasłuchiwać – to samo zatwierdzenie spowodowało zielone i czerwone zadanie macOS.",
118
131
  "uk": "Знову вимкнув `strict` для скриптів, оскільки TypeScript 6 увімкнув його за замовчуванням\nДо налаштувань додано вкладку \"TypeScript\", де можна налаштувати параметри компілятора для скриптів.\nДодано тести-знімки для генерації коду Blockly (`npm run test:blockly`)\nВидалено два залишкові маркери `.only`, які вимкнули майже весь набір тестів\nЗакріплено закінчення рядків перетворених вихідних кодів TypeScript до LF, щоб оновлення компілятора не могло переписати кожен скрипт.\nМікро-бенчмарки перенесено до `npm run test:performance`, оскільки вони вимірюють відносну швидкість відносно тайм-аутів і не можуть блокувати збірку.\nОновлено Blockly з версії 11.1.1 до 13.2.1. Згенерований код залишився без змін.\n`updateBlockly.js` тепер копіюється з встановленого npm-пакета замість клонування гілки git master, тому постачальник Blockly-версію можна відтворювати.\nBlockly тепер постачається з пакета npm, а не завантажується як теги скриптів від виробника. Користувацькі блоки інших адаптерів працюють без змін.\nВидалено 828 КБ коду Blockly від вендорів з репозиторію\nКонвертовано всі визначення блоків з JavaScript у TypeScript. Згенерований код не змінився.\nВиправлено блоки об'єктів у Blockly 13: рядки атрибутів більше не вирівнювалися по правому краю, а редагування атрибутів блоку \"об'єкта\" призводило до\nВидалено непрацюючий код редактора полів CRON та скриптів, який був написаний для Blockly 1.x.\nВиправлено блоки типу «мульти-та/мульти-або» в Blockly 13, які виникали під час редагування їхніх умов.\nВидалено фантомний блок типу \"Convert\", який був зареєстрований випадковим призначенням у блоках перетворення.\nДодано `BLOCKLY_TS.md` для розробників адаптерів: що змінив Blockly 13 для користувацьких блоків та як їх писати в TypeScript.\nПереміщено переклади Blockly у `words.json` та введено помічники пошуку\nПереробка правил\nДо редактора правил додано майстер, який крок за кроком створює правило — тригер, умова та дія налаштовуються, а на останньому кроці відображається готове правило.\nМайстер відкривається самостійно для щойно створеного правила – один раз, а не для дубліката. Після цього він залишається доступним у палітрі блоків.\nВиправлено оголошення типів сторонніх бібліотек: вони розміщувалися під назвою бібліотеки на диску, тоді як їхній `package.json` передавався під назвою, яку імпортують скрипти, тому TypeScript ніколи не пов'язував ці два типи, і все, що імпортувалося з такої бібліотеки, було `any` (#2341)\nПрипинено обгортання оголошень бібліотеки в `declare module`, що відрізало файл типу \"barrel\" від того, що він реекспортує. Оголошення, які самі по собі не є модулями, все ще обгортаються.\nВиправлено помилку, пов'язану з імпортом у файлі оголошення: відстежувався лише перший імпорт файлу, і лише якщо він був у першому рядку. Для rxjs 6, який завантажував 6 з ~800 файлів оголошення.\nІмпорт побічних ефектів (`import \"./x\";`) всередині файлу оголошення тепер також виконується. `@iobroker/types` більше нічого не містить, тому типи `ioBroker.*` були відсутні у скриптах та редакторі.\nФайл визначення, який неможливо прочитати, більше не відкидає всі оголошення типів свого пакета.\nДодано регресійні тести для оголошень типів сторонніх бібліотек, які компілюються відповідно до них та наполягають на відхиленні неправильного коду.\n`createState` тепер перетворює `common.def` стану об'єкта, json або масиву в рядок, як очікує js-controller, і як `setState` вже робить зі значенням. Створення такого стану з початковим значенням більше не попереджає \"Значення за замовчуванням має бути перетворене в рядок\" (#2307)\nЗадокументовано, що об'єкт у другій позиції `createState` завжди є `common`, і як надати стану непримітивне початкове значення\nВідновлено перевірку шляху дзеркала в конфігурації екземпляра. Вона була втрачена, коли конфігурація адміністратора перемістилася до `jsonConfig.json`, тому заборонений шлях приймався без жодних слів і лише пізніше відхилявся в журналі (#2296)\nПоле шляху дзеркала тепер пояснює, яким має бути каталог, і пропонує один із варіантів.\nСкрипти більше не видаляються з бази даних, коли каталог дзеркала в цілому стає недоступним, наприклад, через те, що спільний ресурс не змонтовано.\nБібліотеки, які іменують свої оголошення через карту `exports`, тепер типізовані. Їхнє застаріле поле `types` часто є заглушкою, що вказує на файл, якого не існує — rxjs 7 є однією з них — що залишало все, що імпортувалося з них, як `any` (#928)\nОголошення бібліотеки розташовані навколо її точки входу, тому `moduleResolution: node10` знаходить її, навіть якщо вона знаходиться в підкаталозі\nМаніфест, переданий TypeScript, описує цей макет, а не той, що на диску. Карта `exports`, що вказує на шляхи, яких там не існує, змусила TypeScript взагалі відмовитися від бібліотеки.\nФайл package.json бібліотеки зчитується з диска, а не через Node, який відхиляє його, коли бібліотека не експортує його.\nВиправлено дзеркальні тести на macOS. Вони стверджували першу подію, про яку повідомляв спостерігач, тоді як `fs.watch` там працює на рівні деталізації каталогів і надсилає подію для спостеріганого каталогу перед подією для файлу. Тепер вони чекають на зміну, про яку йдеться, і повідомляють, що надійшло, якщо вона так і не настала.\nЗроблено тести дзеркала незалежними від того, скільки часу потрібно годиннику для активації. Тестована зміна повторюється під час очікування, тому її не можна внести до того, як спостерігач почне слухати - той самий коміт створив зелене та червоне завдання macOS над цим.",
119
132
  "zh-cn": "已再次关闭脚本的 `strict` 属性,因为 TypeScript 6 默认启用该属性。\n设置中新增了“TypeScript”选项卡,可以在其中配置脚本的编译器选项。\n为 Blockly 代码生成添加了快照测试(`npm run test:blockly`)\n移除了两个残留的 `.only` 标记,它们几乎禁用了整个测试套件。\n将转换后的 TypeScript 源文件的行尾固定为 LF,这样编译器更新就不会重写每个脚本。\n已将微基准测试移至 `npm run test:performance` 中,因为它们衡量的是相对于超时的相对速度,并且不会阻塞构建过程。\nBlockly 已从 11.1.1 更新至 13.2.1。生成的代码未作更改。\n`updateBlockly.js` 现在从已安装的 npm 包复制代码,而不是克隆 git master 分支,因此发布的 Blockly 版本是可复现的。\nBlockly 现在已通过 npm 包打包,不再作为 vendored 脚本标签加载。其他适配器的自定义代码块将继续正常工作,无需任何更改。\n从代码库中移除了 828 kB 的 Blockly 代码库自带代码\n已将所有代码块定义从 JavaScript 转换为 TypeScript。生成的代码保持不变。\n修复了 Blockly 13 下的对象块问题:属性行不再右对齐,并且编辑“对象”块的属性时会抛出异常。\n删除了 CRON 和脚本字段中已失效的字段编辑器代码,这些代码是针对 Blockly 1.x 编写的。\n修复了 Blockly 13 中多对多/多或模块在编辑其条件时会抛出的错误。\n移除了一个虚幻的“转换”块类型,该类型是由转换块中一个错误的赋值操作注册的。\n为适配器开发者添加了 `BLOCKLY_TS.md` 文件:其中介绍了 Blockly 13 对自定义块的更改以及如何在 TypeScript 中编写它们。\n将 Blockly 翻译移至 `words.json` 文件中,并输入了查找辅助函数。\n规则重新设计\n在规则编辑器中添加了一个向导,可以逐步构建规则——触发器、条件和操作都会预先配置好,最后一步会显示最终的规则。\n对于新创建的规则,向导会自动打开——仅打开一次,重复创建的规则则不会。之后,它会一直保留在模块面板中。\n修复了第三方库的类型声明:它们被放置在库在磁盘上的名称下,而它们的 `package.json` 却使用了脚本导入的名称,因此 TypeScript 从未将两者关联起来,从这类库导入的所有内容都是 `any` 类型 (#2341)\n不再将库的声明包装在 `declare module` 中,这导致桶形文件与它重新导出的内容分离。非模块本身的声明仍然会被包装。\n修复了声明文件中导入语句的执行问题:之前只执行文件中的第一个导入语句,且仅当它位于第一行时才会执行。此问题已在 rxjs 6 中修复,该版本加载了约 800 个声明文件中的 6 个。\n现在,声明文件中的副作用导入(`import \"./x\";`)也会被处理。`@iobroker/types` 目录下没有其他内容,因此脚本和编辑器中缺少 `ioBroker.*` 类型。\n无法读取的定义文件不再丢弃其包的所有类型声明\n为第三方库的类型声明添加了回归测试,这些测试会针对这些库进行编译,并坚持拒绝错误的代码。\n现在,`createState` 会将对象、JSON 或数组状态的 `common.def` 字符串化,这符合 js-controller 的预期,也与 `setState` 对值的处理方式一致。使用初始值创建此类状态时,不再会发出“默认值必须字符串化”的警告 (#2307)。\n文档中说明 `createState` 函数中第二个位置的对象始终是 `common`,以及如何为状态赋予非原始类型的初始值。\n恢复了实例配置中镜像路径的检查。由于管理配置迁移到 `jsonConfig.json` 文件后,该检查丢失了,导致未经任何提示就接受了禁止的路径,直到日志中才记录了拒绝操作 (#2296)。\n镜像路径字段现在解释了目录必须是什么,并给出了一个建议。\n当整个镜像目录无法访问时(例如,由于共享未挂载),脚本不再从数据库中删除。\n现在,通过 `exports` 映射表命名其声明的库都已类型化。它们遗留的 `types` 字段通常是一个指向不存在文件的存根——rxjs 7 就是一个例子——这导致从它们导入的所有内容都被视为 `any` 类型 (#928)。\n库的声明都围绕其入口点布局,因此即使它们位于子目录中,`moduleResolution: node10` 也能找到它。\n传递给 TypeScript 的清单文件描述的是磁盘上的布局,而不是实际的磁盘布局。一个指向不存在路径的 `exports` 映射导致 TypeScript 完全拒绝了该库。\n库的 package.json 文件是从磁盘读取的,而不是通过 Node 读取的,因此当库没有导出 package.json 文件时,Node 会拒绝读取该文件。\n修复了 macOS 上的镜像测试。之前,这些测试会在监视器报告的第一个事件发生时进行断言,而 macOS 上的 `fs.watch` 实际上是按目录粒度工作的,它会在文件事件之前先发送被监视目录的事件。现在,这些测试会等待目标更改发生,如果更改始终没有发生,则会报告已到达的内容。\n镜像测试不再受手表启动时间的影响。被测更改会在等待期间重复执行,因此必须在手表监听后才能进行——同一次提交在 macOS 上产生了绿色和红色两种结果。"
120
- },
121
- "10.0.0": {
122
- "en": "Typescript 6 support\nGUI was migrated to React 19 and MUI 9\nShowed host name in the instance selection dialog",
123
- "de": "TypeScript 6-Unterstützung\nDie Benutzeroberfläche wurde auf React 19 und MUI 9 migriert.\nDer Hostname wurde im Instanzauswahldialog angezeigt.",
124
- "ru": "Поддержка TypeScript 6\nГрафический интерфейс пользователя был переведён на React 19 и MUI 9.\nВ диалоговом окне выбора экземпляра отобразилось имя хоста.",
125
- "pt": "Suporte para Typescript 6\nA interface gráfica foi migrada para React 19 e MUI 9.\nExibiu o nome do host na caixa de diálogo de seleção de instâncias.",
126
- "nl": "Ondersteuning voor TypeScript 6\nDe GUI is gemigreerd naar React 19 en MUI 9.\nDe hostnaam werd weergegeven in het dialoogvenster voor instantieselectie.",
127
- "fr": "Prise en charge de TypeScript 6\nL'interface graphique a été migrée vers React 19 et MUI 9.\nLe nom de l'hôte s'affichait dans la boîte de dialogue de sélection d'instance.",
128
- "it": "Supporto per Typescript 6\nL'interfaccia grafica è stata migrata a React 19 e MUI 9.\nIl nome host è stato visualizzato nella finestra di dialogo di selezione dell'istanza.",
129
- "es": "Compatibilidad con TypeScript 6\nLa interfaz gráfica de usuario (GUI) se migró a React 19 y MUI 9.\nSe mostró el nombre del host en el cuadro de diálogo de selección de instancia.",
130
- "pl": "Obsługa TypeScript 6\nInterfejs graficzny użytkownika został przeniesiony do React 19 i MUI 9\nWyświetlono nazwę hosta w oknie dialogowym wyboru instancji",
131
- "uk": "Підтримка Typescript 6\nГрафічний інтерфейс перенесено на React 19 та MUI 9\nІм'я хоста відображалося в діалоговому вікні вибору екземпляра",
132
- "zh-cn": "支持 TypeScript 6\nGUI 已迁移至 React 19 和 MUI 9。\n在实例选择对话框中显示主机名"
133
133
  }
134
134
  },
135
135
  "platform": "Javascript/Node.js",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "iobroker.javascript",
3
- "version": "10.2.0",
3
+ "version": "10.2.1",
4
4
  "description": "Rules Engine for ioBroker",
5
5
  "author": "bluefox <dogafox@gmail.com>",
6
6
  "contributors": [
@@ -1 +0,0 @@
1
- import{t as e}from"./AiChatPanel-DzN_zJhJ.js";export{e as buildActionPrompt};