iobroker.javascript 10.4.1 → 10.4.4

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 (115) hide show
  1. package/README.md +6 -4
  2. package/admin/assets/AiChatPanel-DDMXsfSt.js +27 -0
  3. package/admin/assets/AiChatService-DwMHP0xt.js +216 -0
  4. package/admin/assets/AiDiffView-Bk-37CNd.js +1 -0
  5. package/admin/assets/{AiInlineProvider-R_AVYwFT.js → AiInlineProvider-CXlH1WK8.js} +1 -1
  6. package/admin/assets/{BlocklyEditor-DPJkoxjP.js → BlocklyEditor-DY4OoiFv.js} +10 -10
  7. package/admin/assets/Compile-DUNqNndk.js +165 -0
  8. package/admin/assets/Debugger-B5PuUkp6.js +15 -0
  9. package/admin/assets/Diff-CumYKon3.js +1 -0
  10. package/admin/assets/{Documentation-D3E0U4AK.js → Documentation-DDu-zfNv.js} +4 -4
  11. package/admin/assets/ExpandMore-CivgfFOr.js +1 -0
  12. package/admin/assets/{FbEditor-A7I5U0hA.js → FbEditor-D1m29HMt.js} +6 -6
  13. package/admin/assets/History-jUbe5GP0.js +1 -0
  14. package/admin/assets/Import-iMDY2N5I.js +1 -0
  15. package/admin/assets/{MonacoDiff-BYvG7IqB.js → MonacoDiff-D24nsTu6.js} +1 -1
  16. package/admin/assets/{NotificationsActive-CuNfWVJM.js → NotificationsActive-DaZ6l1oz.js} +1 -1
  17. package/admin/assets/RulesEditor-qd1dXeG0.js +1 -0
  18. package/admin/assets/{ScriptEditor-CqphehA8.js → ScriptEditor-DfX-VuXG.js} +2 -2
  19. package/admin/assets/{ScriptEditorVanillaMonaco-CxgNa-3O.js → ScriptEditorVanillaMonaco-DDf9Xgnp.js} +3 -3
  20. package/admin/assets/Send-BggvRgCd.js +1 -0
  21. package/admin/assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-DCbVrrFZ.js +1 -0
  22. package/admin/assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__244278364413149__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-Lnn-CkVR.js +1217 -0
  23. package/admin/assets/{_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__234968779812303__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-DLWT3PGo.js → _virtual_mf___mfe_internal__iobroker_javascript__mf_owner__244278364413149__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-z1D20r27.js} +1 -1
  24. package/admin/assets/aiPromptBuilder-BlIDJp0X.js +1 -0
  25. package/admin/assets/{blockly-B0t_IRJQ.js → blockly-C3YM75rJ.js} +48 -44
  26. package/admin/assets/{blocklyTheme-iZoge1S9.js → blocklyTheme-DT7bwtSS.js} +1 -1
  27. package/admin/assets/{blocks_action-3CepYoiX.js → blocks_action-DpPxKVI7.js} +1 -1
  28. package/admin/assets/{blocks_convert-BEpxVx-_.js → blocks_convert-BZem2yRU.js} +1 -1
  29. package/admin/assets/{blocks_logic-CyIBT53p.js → blocks_logic-vMLrt5md.js} +1 -1
  30. package/admin/assets/{blocks_number-yqm4qwfh.js → blocks_number-ImO9YZku.js} +1 -1
  31. package/admin/assets/{blocks_object-CizLkmWp.js → blocks_object-Cfw-t61W.js} +1 -1
  32. package/admin/assets/{blocks_procedures-pFTThYqz.js → blocks_procedures-Df_jKvkW.js} +1 -1
  33. package/admin/assets/{blocks_sendto-rEq1xPmO.js → blocks_sendto-BePXoq3l.js} +1 -1
  34. package/admin/assets/{blocks_switch-D3aybjqu.js → blocks_switch-Cf1Ly48W.js} +1 -1
  35. package/admin/assets/{blocks_system-BVRsS2OE.js → blocks_system-D_7Ev6nN.js} +1 -1
  36. package/admin/assets/{blocks_text-D93xQ_03.js → blocks_text-CM4ZTMkn.js} +1 -1
  37. package/admin/assets/{blocks_time-ChxhjgD7.js → blocks_time-CovNiZ5E.js} +1 -1
  38. package/admin/assets/{blocks_timeout-CUZ80HaP.js → blocks_timeout-WxihPUYn.js} +1 -1
  39. package/admin/assets/{blocks_trigger-DivLpAuy.js → blocks_trigger-cu2p03ud.js} +1 -1
  40. package/admin/assets/{cronHoverProvider-Curcjz4m.js → cronHoverProvider-CeC4ghkd.js} +1 -1
  41. package/admin/assets/{dist-CzitsFi7.js → dist-CSJEdwl2.js} +1 -1
  42. package/admin/assets/{field_cron-RgLY53_S.js → field_cron-CTSbO0Sj.js} +1 -1
  43. package/admin/assets/{field_oid-rBhotXJe.js → field_oid-yf2RKHSk.js} +1 -1
  44. package/admin/assets/{field_script-CU7g3-oB.js → field_script-WzNnU0JL.js} +1 -1
  45. package/admin/assets/{helpers-Bt4VKZBw.js → helpers-DLkZXmzA.js} +1 -1
  46. package/admin/assets/helpers-DT5-3o-l.js +1 -0
  47. package/admin/assets/{hostInit-CrHjJGJJ.js → hostInit-DHGIvBts.js} +1 -1
  48. package/admin/assets/index-BAjPlTzo.js +157 -0
  49. package/admin/assets/{inlineChatWidget-ChchJD9a.js → inlineChatWidget-DvAKhg6g.js} +1 -1
  50. package/admin/assets/{inlineDiffController-ly6qX4jk.js → inlineDiffController-DOhV-sbU.js} +1 -1
  51. package/admin/assets/{loadBlocks-DDLPEDa6.js → loadBlocks-zPpF1gDy.js} +23 -23
  52. package/admin/assets/{mf-entry-bootstrap-0-d055f05d.js → mf-entry-bootstrap-0-757148b7.js} +3 -3
  53. package/admin/assets/{pendingShares-mBGPbRwZ.js → pendingShares-TGMPCf23.js} +2 -2
  54. package/admin/assets/reactour.esm-Q4nnZoim.js +137 -0
  55. package/admin/assets/{stateHoverProvider-wAsP-THx.js → stateHoverProvider-GWaLOu7S.js} +1 -1
  56. package/admin/assets/{utils-DUKzLJUz.js → utils-BFhwh2EC.js} +1 -1
  57. package/admin/assets/vite-preload-helper-BbbETgeG.js +1 -0
  58. package/admin/custom/assets/Components-2p8wiA9W.js +1 -0
  59. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1-LoDUiIZH.js +1 -0
  60. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare___mf_0_emotion_mf_1_styled__loadShare__.js-CVvbIPAy.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__loadShare___mf_0_emotion_mf_1_styled__loadShare__.js-D2tgwrcS.js} +1 -1
  61. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BhZYie9-.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-D27wqFWN.js} +95 -95
  62. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__loadShare___mf_0_mui_mf_1_x_mf_2_date_mf_2_pickers__loadShare__.js-CAjPWACG.js +1 -0
  63. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare__date_mf_2_fns__loadShare__.js-Djg9OMcQ.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__loadShare__date_mf_2_fns__loadShare__.js-B2r0vvPY.js} +1 -1
  64. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__loadShare__shared-CdAm7fPH.js +2 -0
  65. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-DAE9qWf5.js +122 -0
  66. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__prebuild__leaflet__prebuild__-CHjWtrkp.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__prebuild__leaflet__prebuild__--WMuxzd-.js} +1 -1
  67. package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__prebuild__react_mf_2_dom_mf_1_client__prebuild__-DOkC-g0X.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__prebuild__react_mf_2_dom_mf_1_client__prebuild__-DEIPBEui.js} +1 -1
  68. package/admin/custom/assets/{dist-CzitsFi7.js → dist-CSJEdwl2.js} +1 -1
  69. package/admin/custom/assets/helpers-DT5-3o-l.js +1 -0
  70. package/admin/custom/assets/{hostInit-akwaQLq8.js → hostInit-CgdfLZgR.js} +1 -1
  71. package/admin/custom/assets/{index-BkItz-nL.js → index-BqWkNbeU.js} +1 -1
  72. package/admin/custom/assets/{lib-CADOx2YN.js → lib-5TzGpBXO.js} +1 -1
  73. package/admin/custom/assets/{mf-entry-bootstrap-0-3c4565e0.js → mf-entry-bootstrap-0-3bac0bf3.js} +3 -3
  74. package/admin/custom/assets/{pendingShares-TCMDgBLn.js → pendingShares-fPzqQeON.js} +2 -2
  75. package/admin/custom/assets/{utils-DUKzLJUz.js → utils-BFhwh2EC.js} +1 -1
  76. package/admin/custom/assets/vite-preload-helper-BbbETgeG.js +1 -0
  77. package/admin/custom/customComponents.js +2 -2
  78. package/admin/mf-manifest.json +1 -1
  79. package/admin/mf-stats.json +1 -1
  80. package/admin/remoteEntry.js +2 -2
  81. package/admin/tab.html +2 -2
  82. package/build/lib/sandbox.js +50 -4
  83. package/build/lib/sandbox.js.map +1 -1
  84. package/build/main.js +26 -5
  85. package/build/main.js.map +1 -1
  86. package/io-package.json +14 -14
  87. package/package.json +7 -7
  88. package/admin/assets/AiChatPanel-CfjSsVpE.js +0 -27
  89. package/admin/assets/AiChatService-rFZwYNPk.js +0 -216
  90. package/admin/assets/AiDiffView-DeynDw7L.js +0 -1
  91. package/admin/assets/Compile-BgTrxmPA.js +0 -165
  92. package/admin/assets/Debugger-CThCzBvP.js +0 -15
  93. package/admin/assets/Diff--plofAtP.js +0 -1
  94. package/admin/assets/ExpandMore-Dio4GeHC.js +0 -1
  95. package/admin/assets/History-Ewi5YEEn.js +0 -1
  96. package/admin/assets/Import-6Mm2vrM2.js +0 -1
  97. package/admin/assets/RulesEditor-MDkGXERp.js +0 -1
  98. package/admin/assets/Send-Pz1eveU5.js +0 -1
  99. package/admin/assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-Ceh8EDcF.js +0 -1
  100. package/admin/assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__234968779812303__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BRdHvuuG.js +0 -1217
  101. package/admin/assets/aiPromptBuilder-CI2ChET0.js +0 -1
  102. package/admin/assets/helpers-BZgjFQNf.js +0 -1
  103. package/admin/assets/index-DzAQnPTD.js +0 -157
  104. package/admin/assets/reactour.esm-Dk3aGxKn.js +0 -137
  105. package/admin/assets/vite-preload-helper-DjNwdemH.js +0 -1
  106. package/admin/custom/assets/Components-fDcxCyN4.js +0 -1
  107. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1-BraOrMSu.js +0 -1
  108. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare___mf_0_mui_mf_1_x_mf_2_date_mf_2_pickers__loadShare__.js-CV50dgj4.js +0 -1
  109. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare__shared-Hb6V6BnJ.js +0 -2
  110. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-BrY-nF2a.js +0 -122
  111. package/admin/custom/assets/helpers-BZgjFQNf.js +0 -1
  112. package/admin/custom/assets/vite-preload-helper-DjNwdemH.js +0 -1
  113. /package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare___mf_0_emotion_mf_1_react__loadShare__.js-DbKT6Hsb.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__loadShare___mf_0_emotion_mf_1_react__loadShare__.js-DbKT6Hsb.js} +0 -0
  114. /package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare__leaflet__loadShare__.js-D9EyCd42.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__loadShare__leaflet__loadShare__.js-D9EyCd42.js} +0 -0
  115. /package/admin/custom/assets/{_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-CXpyx8Vy.js → _virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__211401881746328__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-CXpyx8Vy.js} +0 -0
package/build/main.js CHANGED
@@ -171,6 +171,26 @@ const regExGlobalNew = /script\.js\.global\./;
171
171
  function checkIsGlobal(obj) {
172
172
  return obj?.common && (regExGlobalOld.test(obj.common.name) || regExGlobalNew.test(obj._id));
173
173
  }
174
+ /** The fields in which the instances store the compiled sources and the declarations of a script */
175
+ const SCRIPT_CACHE_FIELDS = ['compiled', 'declarations', 'sourceHash'];
176
+ /**
177
+ * Whether a script object changed in more than the stored compilation results.
178
+ * Every instance on every host compiles the global scripts and writes the result to the shared
179
+ * object. Instances of different versions never agree on the hash, so each one overwrites the
180
+ * cache of the other - and if that counted as a change of the script, they would restart each
181
+ * other forever (#2402).
182
+ */
183
+ function scriptChanged(obj, formerObj) {
184
+ const common = obj.common;
185
+ const formerCommon = formerObj.common;
186
+ const keys = new Set([...Object.keys(common), ...Object.keys(formerCommon)]);
187
+ for (const key of keys) {
188
+ if (!SCRIPT_CACHE_FIELDS.includes(key) && JSON.stringify(common[key]) !== JSON.stringify(formerCommon[key])) {
189
+ return true;
190
+ }
191
+ }
192
+ return false;
193
+ }
174
194
  function fileMatching(sub, id, fileName) {
175
195
  if (sub.idRegEx) {
176
196
  if (!sub.idRegEx.test(id)) {
@@ -863,7 +883,8 @@ class JavaScript extends adapter_core_1.Adapter {
863
883
  else if (obj?.type === 'script' && formerObj?.common) {
864
884
  // Script changed ...
865
885
  if (checkIsGlobal(obj)) {
866
- if (obj.common.enabled || formerObj.common.enabled) {
886
+ if ((obj.common.enabled || formerObj.common.enabled) &&
887
+ scriptChanged(obj, formerObj)) {
867
888
  this.log.info(`Global Script ${id} updated. Restart instance.`);
868
889
  this.restart();
869
890
  }
@@ -1792,8 +1813,8 @@ class JavaScript extends adapter_core_1.Adapter {
1792
1813
  if (declarations) {
1793
1814
  newCommon.declarations = declarations;
1794
1815
  }
1795
- // Store the compiled source and the original source hash, so we don't need to do the work again next time
1796
- this.ignoreObjectChange.add(obj._id); // ignore the next change and don't restart scripts
1816
+ // Store the compiled source and the original source hash, so we don't need to do the work again next time.
1817
+ // No instance restarts on this change, see scriptChanged()
1797
1818
  void this.extendForeignObject(obj._id, {
1798
1819
  common: newCommon,
1799
1820
  });
@@ -1843,8 +1864,8 @@ class JavaScript extends adapter_core_1.Adapter {
1843
1864
  }
1844
1865
  if (tsCompiled.success && tsCompiled.declarations != null) {
1845
1866
  declarations = tsCompiled.declarations;
1846
- // Store them, so the next start does not have to build the program again
1847
- this.ignoreObjectChange.add(obj._id); // ignore the next change and don't restart scripts
1867
+ // Store them, so the next start does not have to build the program again.
1868
+ // No instance restarts on this change, see scriptChanged()
1848
1869
  void this.extendForeignObject(obj._id, {
1849
1870
  common: { sourceHash, declarations },
1850
1871
  });