iobroker.javascript 9.0.17 → 9.1.0

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 (159) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +17 -10
  3. package/admin/assets/OpenAiDialog-Dx-XNET0.js +13 -0
  4. package/admin/assets/{Save-DXaUpIPM.js → Save-Cld9qv9i.js} +1 -1
  5. package/admin/assets/ScriptEditor-BVaX7Hcs.js +2 -0
  6. package/admin/assets/ScriptEditorVanillaMonaco-yq11eIYC.js +1 -0
  7. package/admin/assets/createSvgIcon-DPvF8xqu.js +8 -0
  8. package/admin/assets/hostInit-LzITLWDa.js +1 -0
  9. package/admin/assets/index-BkyLyaYT.js +8 -0
  10. package/admin/assets/index-CLJ6-h9Q.js +1 -0
  11. package/admin/assets/index-COZhHfBn.js +1230 -0
  12. package/admin/assets/index-CVZSzCXy.js +1 -0
  13. package/admin/assets/index-Cu-TydZj.js +5 -0
  14. package/admin/assets/index-D8iYqogF.js +16 -0
  15. package/admin/assets/index-DlDUIfpA.js +193 -0
  16. package/admin/assets/index-Dnbw7_L3.js +986 -0
  17. package/admin/assets/index-Dsh1HfIY.js +1 -0
  18. package/admin/assets/index-gIA8x-8f.js +1 -0
  19. package/admin/assets/inheritsLoose-B0Ba5G9z.js +29 -0
  20. package/admin/assets/iobroker_javascript__loadShare___mf_0_iobroker_mf_1_adapter_mf_2_react_mf_2_v5__loadShare__.mjs-DkBjPSMw.js +1 -0
  21. package/admin/assets/iobroker_javascript__loadShare___mf_0_mui_mf_1_material__loadShare__.mjs-QWG5Arqe.js +1 -0
  22. package/admin/assets/iobroker_javascript__loadShare__prop_mf_2_types__loadShare__.mjs-BCtSFofY.js +1 -0
  23. package/admin/assets/iobroker_javascript__loadShare__react__loadShare__.mjs-CTZOFJS2.js +1 -0
  24. package/admin/assets/iobroker_javascript__loadShare__react__loadShare__.mjs_commonjs-proxy-CE9lvhW8.js +1 -0
  25. package/admin/assets/iobroker_javascript__loadShare__react_mf_2_dom__loadShare__.mjs-DeVAS-oa.js +1 -0
  26. package/admin/assets/iobroker_javascript__loadShare__react_mf_2_dom__loadShare__.mjs_commonjs-proxy-RQRRZMX5.js +1 -0
  27. package/admin/assets/localSharedImportMap-AxgBkrOR.js +1 -0
  28. package/admin/assets/useTheme-hy6f3gra.js +1 -0
  29. package/admin/assets/virtualExposes-BPsCufin.js +1 -0
  30. package/admin/assets/virtual_mf-REMOTE_ENTRY_ID_iobroker_javascript__remoteEntry_js-C9suQF96.js +8 -0
  31. package/admin/custom/assets/Components-FfVbavBM.js +1 -0
  32. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare___mf_0_iobroker_mf_1_adapter_mf_2_react_mf_2_v5__loadShare__.mjs-B7D2xOvV.js +1 -0
  33. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.mjs-ClsgYnEX.js +1 -0
  34. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare___mf_0_mui_mf_1_icons_mf_2_material__loadShare__.mjs-B551AMx-.js +1 -0
  35. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare___mf_0_mui_mf_1_material__loadShare__.mjs-KsT5vKjV.js +1 -0
  36. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare___mf_0_mui_mf_1_x_mf_2_date_mf_2_pickers__loadShare__.mjs-DgHZUNxn.js +1 -0
  37. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare__leaflet__loadShare__.mjs-BYONkEgA.js +1 -0
  38. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare__react__loadShare__.mjs-0SjJESw9.js +1 -0
  39. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare__react__loadShare__.mjs_commonjs-proxy-CInLgMWW.js +1 -0
  40. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare__react_mf_2_dom__loadShare__.mjs-CL--xmjC.js +1 -0
  41. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare__react_mf_2_dom__loadShare__.mjs_commonjs-proxy-CorOEig8.js +1 -0
  42. package/admin/custom/assets/DefaultPropsProvider-CGb21NGY.js +1 -0
  43. package/admin/custom/assets/TextField-DNzklBSl.js +139 -0
  44. package/admin/custom/assets/ThemeProvider-B4G3jidj.js +29 -0
  45. package/admin/custom/assets/blue-CagzI6CQ.js +1 -0
  46. package/admin/custom/assets/createSvgIcon-ZdrQ8zSU.js +1 -0
  47. package/admin/custom/assets/createTheme-Wd4QxQE0.js +8 -0
  48. package/admin/custom/assets/defaultTheme-F2iJF2G2.js +1 -0
  49. package/admin/custom/assets/hostInit-iUL-wyj1.js +1 -0
  50. package/admin/custom/assets/index-AZB1OHDH.js +1 -0
  51. package/admin/custom/assets/index-Be7j5wvd.js +1523 -0
  52. package/admin/custom/assets/index-BptSiKBK.js +55 -0
  53. package/admin/custom/assets/index-Bvwv5H7k.js +1 -0
  54. package/admin/custom/assets/index-C0RmLaAj.js +1 -0
  55. package/admin/custom/assets/index-CYc31Gwg.js +960 -0
  56. package/admin/custom/assets/index-CmJ8HzSc.js +1 -0
  57. package/admin/custom/assets/index-D0iTiVVG.js +8 -0
  58. package/admin/custom/assets/index-DNdWk-cT.js +1 -0
  59. package/admin/custom/assets/index-Dp7A3XHd.js +7 -0
  60. package/admin/custom/assets/index-YBvFYuP6.js +31 -0
  61. package/admin/custom/assets/index-huvZQhZw.js +1 -0
  62. package/admin/custom/assets/index-iRHaQfi-.js +1 -0
  63. package/admin/custom/assets/isSameWeek-DDsSIa_t.js +1 -0
  64. package/admin/custom/assets/jsx-runtime-DfVU3AZG.js +1 -0
  65. package/admin/custom/assets/leaflet-src-k2rCV-Ix.js +1 -0
  66. package/admin/custom/assets/localSharedImportMap-BRxFonIn.js +1 -0
  67. package/admin/custom/assets/useTheme-BfhDdtAr.js +1 -0
  68. package/admin/custom/assets/useTheme-DWZ6jNyq.js +1 -0
  69. package/admin/custom/assets/virtualExposes-DyedJotb.js +2 -0
  70. package/admin/custom/assets/virtual_mf-REMOTE_ENTRY_ID_ConfigCustomJavascriptSet__customComponents_js-BtJxKB87.js +8 -0
  71. package/admin/custom/customComponents.js +1 -2
  72. package/admin/i18n/de.json +10 -1
  73. package/admin/i18n/en.json +10 -1
  74. package/admin/i18n/es.json +10 -1
  75. package/admin/i18n/fr.json +10 -1
  76. package/admin/i18n/it.json +10 -1
  77. package/admin/i18n/nl.json +10 -1
  78. package/admin/i18n/pl.json +10 -1
  79. package/admin/i18n/pt.json +10 -1
  80. package/admin/i18n/ru.json +10 -1
  81. package/admin/i18n/uk.json +10 -1
  82. package/admin/i18n/zh-cn.json +10 -1
  83. package/admin/jsonConfig.json +195 -130
  84. package/admin/mf-manifest.json +1 -1
  85. package/admin/remoteEntry.js +1 -2
  86. package/admin/tab.html +13 -8
  87. package/build/lib/javascript.d.ts +4 -2
  88. package/build/lib/mirror.js +21 -18
  89. package/build/lib/mirror.js.map +1 -1
  90. package/build/lib/nodeModulesManagement.js +3 -2
  91. package/build/lib/nodeModulesManagement.js.map +1 -1
  92. package/build/lib/protectFs.js +27 -12
  93. package/build/lib/protectFs.js.map +1 -1
  94. package/build/lib/sandbox.js +3 -3
  95. package/build/lib/sandbox.js.map +1 -1
  96. package/build/lib/tools.js +7 -2
  97. package/build/lib/tools.js.map +1 -1
  98. package/build/main.js +237 -20
  99. package/build/main.js.map +1 -1
  100. package/build/types.d.ts +6 -1
  101. package/docs/de/README.md +75 -0
  102. package/docs/en/README.md +75 -0
  103. package/io-package.json +32 -28
  104. package/package.json +14 -14
  105. package/admin/assets/OpenAiDialog-BX-z5kNr.js +0 -36
  106. package/admin/assets/ScriptEditor-DhkUQSDz.js +0 -2
  107. package/admin/assets/ScriptEditorVanillaMonaco-CJS71hoK.js +0 -1
  108. package/admin/assets/_commonjsHelpers-Cpj98o6Y.js +0 -1
  109. package/admin/assets/createSvgIcon-DlIk-fDn.js +0 -30
  110. package/admin/assets/hostInit-OBG53iVO.js +0 -2
  111. package/admin/assets/index-BWM5lJbO.js +0 -193
  112. package/admin/assets/index-Br_QjNUk.js +0 -942
  113. package/admin/assets/index-C3P3FHiC.js +0 -16
  114. package/admin/assets/index-Cjl4b70e.js +0 -5
  115. package/admin/assets/index-DBgNhNiJ.js +0 -1294
  116. package/admin/assets/index-DQiceR5U.js +0 -1
  117. package/admin/assets/index-DZ3lKVw8.js +0 -1
  118. package/admin/assets/index-Do-nCdWy.js +0 -9
  119. package/admin/assets/index-DwcZPzOL.js +0 -24
  120. package/admin/assets/index-VCnuVxRc.js +0 -1
  121. package/admin/assets/inheritsLoose-DNrhibGS.js +0 -36
  122. package/admin/assets/iobroker_javascript__loadShare__react__loadShare__-i8pXne9X.js +0 -1
  123. package/admin/assets/iobroker_javascript__mf_v__runtimeInit__mf_v__-DZdFIfoQ.js +0 -5
  124. package/admin/assets/useTheme-DakN8Abq.js +0 -1
  125. package/admin/assets/virtualExposes-BIHI7g3E.js +0 -1
  126. package/admin/custom/assets/Components-DjQ_LxKw.js +0 -1
  127. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare___mf_0_iobroker_mf_1_adapter_mf_2_react_mf_2_v5__loadShare__-DaN0pfsw.js +0 -1
  128. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare___mf_0_mui_mf_1_material__loadShare__-BqzgglHd.js +0 -1
  129. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare__react__loadShare__-BNbscXK6.js +0 -1
  130. package/admin/custom/assets/ConfigCustomJavascriptSet__loadShare__react_mf_2_dom__loadShare__-N2_tx_mJ.js +0 -1
  131. package/admin/custom/assets/ConfigCustomJavascriptSet__mf_v__runtimeInit__mf_v__-jdUmHa_i.js +0 -5
  132. package/admin/custom/assets/DefaultPropsProvider-B8ZCC-c2.js +0 -1
  133. package/admin/custom/assets/DefaultPropsProvider-DfdXSIBu.js +0 -1
  134. package/admin/custom/assets/FilledInput-CSjr0QT8.js +0 -2
  135. package/admin/custom/assets/Tabs-CiTQkBjL.js +0 -138
  136. package/admin/custom/assets/ThemeProvider-C50pIiW4.js +0 -29
  137. package/admin/custom/assets/_commonjsHelpers-CE1G-McA.js +0 -1
  138. package/admin/custom/assets/createSvgIcon-C7qUEvjp.js +0 -1
  139. package/admin/custom/assets/createTheme-Bm92JF8u.js +0 -8
  140. package/admin/custom/assets/defaultTheme-BlO0eCf6.js +0 -1
  141. package/admin/custom/assets/hostInit-BJ6gSofk.js +0 -2
  142. package/admin/custom/assets/index-4wMOc304.js +0 -1
  143. package/admin/custom/assets/index-5CTGLw4h.js +0 -55
  144. package/admin/custom/assets/index-BkjEWGjf.js +0 -1
  145. package/admin/custom/assets/index-Bym4WjyH.js +0 -908
  146. package/admin/custom/assets/index-COcxCdeX.js +0 -8
  147. package/admin/custom/assets/index-CnpybLRW.js +0 -1
  148. package/admin/custom/assets/index-Db8nkuMR.js +0 -7
  149. package/admin/custom/assets/index-DcK0RDrH.js +0 -1
  150. package/admin/custom/assets/index-Df6OaCxx.js +0 -1
  151. package/admin/custom/assets/index-Dx7rDE4p.js +0 -1
  152. package/admin/custom/assets/index-t-NMdeH5.js +0 -31
  153. package/admin/custom/assets/index-u8R8UVCf.js +0 -1393
  154. package/admin/custom/assets/jsx-runtime-C1csJtRx.js +0 -1
  155. package/admin/custom/assets/leaflet-src-DpWQqQWv.js +0 -1
  156. package/admin/custom/assets/useEnhancedEffect-aUb-5tTL.js +0 -1
  157. package/admin/custom/assets/useTheme-Cgjfsi-1.js +0 -1
  158. package/admin/custom/assets/useTheme-DFGylj2o.js +0 -1
  159. package/admin/custom/assets/virtualExposes-C_DtjFte.js +0 -2
@@ -1,136 +1,201 @@
1
1
  {
2
- "type": "tabs",
3
- "i18n": true,
4
- "iconPosition": "top",
5
- "items": {
6
- "_main": {
7
- "type": "panel",
8
- "label": "Main settings",
9
- "icon": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KICAgIDxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTQ5NS45IDE2Ni42YzMuMiA4LjcgLjUgMTguNC02LjQgMjQuNmwtNDMuMyAzOS40YzEuMSA4LjMgMS43IDE2LjggMS43IDI1LjRzLS42IDE3LjEtMS43IDI1LjRsNDMuMyAzOS40YzYuOSA2LjIgOS42IDE1LjkgNi40IDI0LjZjLTQuNCAxMS45LTkuNyAyMy4zLTE1LjggMzQuM2wtNC43IDguMWMtNi42IDExLTE0IDIxLjQtMjIuMSAzMS4yYy01LjkgNy4yLTE1LjcgOS42LTI0LjUgNi44bC01NS43LTE3LjdjLTEzLjQgMTAuMy0yOC4yIDE4LjktNDQgMjUuNGwtMTIuNSA1Ny4xYy0yIDkuMS05IDE2LjMtMTguMiAxNy44Yy0xMy44IDIuMy0yOCAzLjUtNDIuNSAzLjVzLTI4LjctMS4yLTQyLjUtMy41Yy05LjItMS41LTE2LjItOC43LTE4LjItMTcuOGwtMTIuNS01Ny4xYy0xNS44LTYuNS0zMC42LTE1LjEtNDQtMjUuNEw4My4xIDQyNS45Yy04LjggMi44LTE4LjYgLjMtMjQuNS02LjhjLTguMS05LjgtMTUuNS0yMC4yLTIyLjEtMzEuMmwtNC43LTguMWMtNi4xLTExLTExLjQtMjIuNC0xNS44LTM0LjNjLTMuMi04LjctLjUtMTguNCA2LjQtMjQuNmw0My4zLTM5LjRDNjQuNiAyNzMuMSA2NCAyNjQuNiA2NCAyNTZzLjYtMTcuMSAxLjctMjUuNEwyMi40IDE5MS4yYy02LjktNi4yLTkuNi0xNS45LTYuNC0yNC42YzQuNC0xMS45IDkuNy0yMy4zIDE1LjgtMzQuM2w0LjctOC4xYzYuNi0xMSAxNC0yMS40IDIyLjEtMzEuMmM1LjktNy4yIDE1LjctOS42IDI0LjUtNi44bDU1LjcgMTcuN2MxMy40LTEwLjMgMjguMi0xOC45IDQ0LTI1LjRsMTIuNS01Ny4xYzItOS4xIDktMTYuMyAxOC4yLTE3LjhDMjI3LjMgMS4yIDI0MS41IDAgMjU2IDBzMjguNyAxLjIgNDIuNSAzLjVjOS4yIDEuNSAxNi4yIDguNyAxOC4yIDE3LjhsMTIuNSA1Ny4xYzE1LjggNi41IDMwLjYgMTUuMSA0NCAyNS40bDU1LjctMTcuN2M4LjgtMi44IDE4LjYtLjMgMjQuNSA2LjhjOC4xIDkuOCAxNS41IDIwLjIgMjIuMSAzMS4ybDQuNyA4LjFjNi4xIDExIDExLjQgMjIuNCAxNS44IDM0LjN6TTI1NiAzMzZhODAgODAgMCAxIDAgMC0xNjAgODAgODAgMCAxIDAgMCAxNjB6Ii8+Cjwvc3ZnPgo=",
10
- "items": {
11
- "libraries": {
12
- "type": "chips",
13
- "label": "Additional npm modules",
14
- "delimiter": " ",
15
- "xs": 12,
16
- "sm": 12
2
+ "type": "tabs",
3
+ "i18n": true,
4
+ "iconPosition": "top",
5
+ "items": {
6
+ "_main": {
7
+ "type": "panel",
8
+ "label": "Main settings",
9
+ "icon": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KICAgIDxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTQ5NS45IDE2Ni42YzMuMiA4LjcgLjUgMTguNC02LjQgMjQuNmwtNDMuMyAzOS40YzEuMSA4LjMgMS43IDE2LjggMS43IDI1LjRzLS42IDE3LjEtMS43IDI1LjRsNDMuMyAzOS40YzYuOSA2LjIgOS42IDE1LjkgNi40IDI0LjZjLTQuNCAxMS45LTkuNyAyMy4zLTE1LjggMzQuM2wtNC43IDguMWMtNi42IDExLTE0IDIxLjQtMjIuMSAzMS4yYy01LjkgNy4yLTE1LjcgOS42LTI0LjUgNi44bC01NS43LTE3LjdjLTEzLjQgMTAuMy0yOC4yIDE4LjktNDQgMjUuNGwtMTIuNSA1Ny4xYy0yIDkuMS05IDE2LjMtMTguMiAxNy44Yy0xMy44IDIuMy0yOCAzLjUtNDIuNSAzLjVzLTI4LjctMS4yLTQyLjUtMy41Yy05LjItMS41LTE2LjItOC43LTE4LjItMTcuOGwtMTIuNS01Ny4xYy0xNS44LTYuNS0zMC42LTE1LjEtNDQtMjUuNEw4My4xIDQyNS45Yy04LjggMi44LTE4LjYgLjMtMjQuNS02LjhjLTguMS05LjgtMTUuNS0yMC4yLTIyLjEtMzEuMmwtNC43LTguMWMtNi4xLTExLTExLjQtMjIuNC0xNS44LTM0LjNjLTMuMi04LjctLjUtMTguNCA2LjQtMjQuNmw0My4zLTM5LjRDNjQuNiAyNzMuMSA2NCAyNjQuNiA2NCAyNTZzLjYtMTcuMSAxLjctMjUuNEwyMi40IDE5MS4yYy02LjktNi4yLTkuNi0xNS45LTYuNC0yNC42YzQuNC0xMS45IDkuNy0yMy4zIDE1LjgtMzQuM2w0LjctOC4xYzYuNi0xMSAxNC0yMS40IDIyLjEtMzEuMmM1LjktNy4yIDE1LjctOS42IDI0LjUtNi44bDU1LjcgMTcuN2MxMy40LTEwLjMgMjguMi0xOC45IDQ0LTI1LjRsMTIuNS01Ny4xYzItOS4xIDktMTYuMyAxOC4yLTE3LjhDMjI3LjMgMS4yIDI0MS41IDAgMjU2IDBzMjguNyAxLjIgNDIuNSAzLjVjOS4yIDEuNSAxNi4yIDguNyAxOC4yIDE3LjhsMTIuNSA1Ny4xYzE1LjggNi41IDMwLjYgMTUuMSA0NCAyNS40bDU1LjctMTcuN2M4LjgtMi44IDE4LjYtLjMgMjQuNSA2LjhjOC4xIDkuOCAxNS41IDIwLjIgMjIuMSAzMS4ybDQuNyA4LjFjNi4xIDExIDExLjQgMjIuNCAxNS44IDM0LjN6TTI1NiAzMzZhODAgODAgMCAxIDAgMC0xNjAgODAgODAgMCAxIDAgMCAxNjB6Ii8+Cjwvc3ZnPgo=",
10
+ "items": {
11
+ "libraries": {
12
+ "type": "chips",
13
+ "label": "Additional npm modules",
14
+ "delimiter": " ",
15
+ "xs": 12,
16
+ "sm": 12
17
+ },
18
+ "libraryTypings": {
19
+ "newLine": true,
20
+ "type": "chips",
21
+ "label": "Activate syntax help for these npm modules",
22
+ "delimiter": " ",
23
+ "xs": 12,
24
+ "sm": 12
25
+ },
26
+ "mirrorPath": {
27
+ "newLine": true,
28
+ "type": "text",
29
+ "label": "Mirror scripts to file path",
30
+ "xs": 12,
31
+ "sm": 8
32
+ },
33
+ "mirrorInstance": {
34
+ "hidden": "!data.mirrorPath",
35
+ "type": "instance",
36
+ "adapter": "javascript",
37
+ "label": "Instance, that do mirroring",
38
+ "xs": 12,
39
+ "sm": 4
40
+ },
41
+ "enableSetObject": {
42
+ "newLine": true,
43
+ "type": "checkbox",
44
+ "label": "Enable command \"setObject\"",
45
+ "xs": 12,
46
+ "sm": 12,
47
+ "md": 6
48
+ },
49
+ "enableSendToHost": {
50
+ "type": "checkbox",
51
+ "label": "Enable command \"sendToHost\"",
52
+ "xs": 12,
53
+ "sm": 12,
54
+ "md": 6
55
+ },
56
+ "enableExec": {
57
+ "newLine": true,
58
+ "type": "checkbox",
59
+ "label": "Enable command \"exec\"",
60
+ "xs": 12,
61
+ "sm": 12,
62
+ "md": 6
63
+ },
64
+ "subscribe": {
65
+ "type": "checkbox",
66
+ "label": "Do not subscribe all states on start",
67
+ "xs": 12,
68
+ "sm": 12,
69
+ "md": 6
70
+ },
71
+ "maxSetStatePerMinute": {
72
+ "newLine": true,
73
+ "type": "number",
74
+ "label": "Maximum setState requests per Minute per Script",
75
+ "help": "default 1000",
76
+ "min": 20,
77
+ "max": 100000,
78
+ "xs": 12,
79
+ "sm": 12,
80
+ "md": 6
81
+ },
82
+ "maxTriggersPerScript": {
83
+ "type": "number",
84
+ "label": "Maximum triggers per Script (until warning)",
85
+ "help": "default 100",
86
+ "min": 20,
87
+ "max": 100000,
88
+ "xs": 12,
89
+ "sm": 12,
90
+ "md": 6
91
+ },
92
+ "allowSelfSignedCerts": {
93
+ "newLine": true,
94
+ "type": "checkbox",
95
+ "label": "Allow self-signed certificates for URL requests",
96
+ "xs": 12,
97
+ "sm": 12
98
+ }
99
+ }
17
100
  },
18
- "libraryTypings": {
19
- "newLine": true,
20
- "type": "chips",
21
- "label": "Activate syntax help for these npm modules",
22
- "delimiter": " ",
23
- "xs": 12,
24
- "sm": 12
101
+ "_astro": {
102
+ "type": "panel",
103
+ "label": "Astro settings",
104
+ "icon": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KICAgIDxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTQ5NC4yIDIyMS45bC01OS44LTQwLjUgMTMuNy03MWMyLjYtMTMuMi0xLjYtMjYuOC0xMS4xLTM2LjQtOS42LTkuNS0yMy4yLTEzLjctMzYuMi0xMS4xbC03MC45IDEzLjctNDAuNC01OS45Yy0xNS4xLTIyLjMtNTEuOS0yMi4zLTY3IDBsLTQwLjQgNTkuOS03MC44LTEzLjdDOTggNjAuNCA4NC41IDY0LjUgNzUgNzQuMWMtOS41IDkuNi0xMy43IDIzLjEtMTEuMSAzNi4zbDEzLjcgNzEtNTkuOCA0MC41QzYuNiAyMjkuNSAwIDI0MiAwIDI1NS41czYuNyAyNiAxNy44IDMzLjVsNTkuOCA0MC41LTEzLjcgNzFjLTIuNiAxMy4yIDEuNiAyNi44IDExLjEgMzYuMyA5LjUgOS41IDIyLjkgMTMuNyAzNi4zIDExLjFsNzAuOC0xMy43IDQwLjQgNTkuOUMyMzAgNTA1LjMgMjQyLjYgNTEyIDI1NiA1MTJzMjYtNi43IDMzLjUtMTcuOGw0MC40LTU5LjkgNzAuOSAxMy43YzEzLjQgMi43IDI2LjgtMS42IDM2LjMtMTEuMSA5LjUtOS41IDEzLjYtMjMuMSAxMS4xLTM2LjNsLTEzLjctNzEgNTkuOC00MC41YzExLjEtNy41IDE3LjgtMjAuMSAxNy44LTMzLjUtLjEtMTMuNi02LjctMjYuMS0xNy45LTMzLjd6bS0xMTIuOSA4NS42bDE3LjYgOTEuMi05MS0xNy42TDI1NiA0NThsLTUxLjktNzctOTAuOSAxNy42IDE3LjYtOTEuMi03Ni44LTUyIDc2LjgtNTItMTcuNi05MS4yIDkxIDE3LjZMMjU2IDUzbDUxLjkgNzYuOSA5MS0xNy42LTE3LjYgOTEuMSA3Ni44IDUyLTc2LjggNTIuMXpNMjU2IDE1MmMtNTcuMyAwLTEwNCA0Ni43LTEwNCAxMDRzNDYuNyAxMDQgMTA0IDEwNCAxMDQtNDYuNyAxMDQtMTA0LTQ2LjctMTA0LTEwNC0xMDR6bTAgMTYwYy0zMC45IDAtNTYtMjUuMS01Ni01NnMyNS4xLTU2IDU2LTU2IDU2IDI1LjEgNTYgNTYtMjUuMSA1Ni01NiA1NnoiLz4KPC9zdmc+Cg==",
105
+ "items": {
106
+ "_astroConfig": {
107
+ "type": "custom",
108
+ "i18n": true,
109
+ "xs": 12,
110
+ "sm": 12,
111
+ "md": 12,
112
+ "lg": 12,
113
+ "url": "custom/customComponents.js",
114
+ "name": "ConfigCustomJavascriptSet/Components/Astro",
115
+ "bundlerType": "module"
116
+ },
117
+ "createAstroStates": {
118
+ "newLine": true,
119
+ "type": "checkbox",
120
+ "label": "Create states for all astro times",
121
+ "xs": 12,
122
+ "sm": 12
123
+ }
124
+ }
25
125
  },
26
- "mirrorPath": {
27
- "newLine": true,
28
- "type": "text",
29
- "label": "Mirror scripts to file path",
30
- "xs": 12,
31
- "sm": 8
32
- },
33
- "mirrorInstance": {
34
- "hidden": "!data.mirrorPath",
35
- "type": "instance",
36
- "adapter": "javascript",
37
- "label": "Instance, that do mirroring",
38
- "xs": 12,
39
- "sm": 4
40
- },
41
- "enableSetObject": {
42
- "newLine": true,
43
- "type": "checkbox",
44
- "label": "Enable command \"setObject\"",
45
- "xs": 12,
46
- "sm": 12,
47
- "md": 6
48
- },
49
- "enableSendToHost": {
50
- "type": "checkbox",
51
- "label": "Enable command \"sendToHost\"",
52
- "xs": 12,
53
- "sm": 12,
54
- "md": 6
55
- },
56
- "enableExec": {
57
- "newLine": true,
58
- "type": "checkbox",
59
- "label": "Enable command \"exec\"",
60
- "xs": 12,
61
- "sm": 12,
62
- "md": 6
63
- },
64
- "subscribe": {
65
- "type": "checkbox",
66
- "label": "Do not subscribe all states on start",
67
- "xs": 12,
68
- "sm": 12,
69
- "md": 6
70
- },
71
- "maxSetStatePerMinute": {
72
- "newLine": true,
73
- "type": "number",
74
- "label": "Maximum setState requests per Minute per Script",
75
- "help": "default 1000",
76
- "min": 20,
77
- "max": 100000,
78
- "xs": 12,
79
- "sm": 12,
80
- "md": 6
81
- },
82
- "maxTriggersPerScript": {
83
- "type": "number",
84
- "label": "Maximum triggers per Script (until warning)",
85
- "help": "default 100",
86
- "min": 20,
87
- "max": 100000,
88
- "xs": 12,
89
- "sm": 12,
90
- "md": 6
91
- },
92
- "allowSelfSignedCerts": {
93
- "newLine": true,
94
- "type": "checkbox",
95
- "label": "Allow self-signed certificates for URL requests",
96
- "xs": 12,
97
- "sm": 12
98
- },
99
- "gptKey": {
100
- "newLine": true,
101
- "type": "text",
102
- "label": "ChatGPT API key",
103
- "xs": 12,
104
- "sm": 12,
105
- "help": "platform.openai.com",
106
- "helpLink": "https://platform.openai.com/api-keys"
107
- }
108
- }
109
- },
110
- "_astro": {
111
- "type": "panel",
112
- "label": "Astro settings",
113
- "icon": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA1MTIgNTEyIj4KICAgIDxwYXRoIGZpbGw9ImN1cnJlbnRDb2xvciIgZD0iTTQ5NC4yIDIyMS45bC01OS44LTQwLjUgMTMuNy03MWMyLjYtMTMuMi0xLjYtMjYuOC0xMS4xLTM2LjQtOS42LTkuNS0yMy4yLTEzLjctMzYuMi0xMS4xbC03MC45IDEzLjctNDAuNC01OS45Yy0xNS4xLTIyLjMtNTEuOS0yMi4zLTY3IDBsLTQwLjQgNTkuOS03MC44LTEzLjdDOTggNjAuNCA4NC41IDY0LjUgNzUgNzQuMWMtOS41IDkuNi0xMy43IDIzLjEtMTEuMSAzNi4zbDEzLjcgNzEtNTkuOCA0MC41QzYuNiAyMjkuNSAwIDI0MiAwIDI1NS41czYuNyAyNiAxNy44IDMzLjVsNTkuOCA0MC41LTEzLjcgNzFjLTIuNiAxMy4yIDEuNiAyNi44IDExLjEgMzYuMyA5LjUgOS41IDIyLjkgMTMuNyAzNi4zIDExLjFsNzAuOC0xMy43IDQwLjQgNTkuOUMyMzAgNTA1LjMgMjQyLjYgNTEyIDI1NiA1MTJzMjYtNi43IDMzLjUtMTcuOGw0MC40LTU5LjkgNzAuOSAxMy43YzEzLjQgMi43IDI2LjgtMS42IDM2LjMtMTEuMSA5LjUtOS41IDEzLjYtMjMuMSAxMS4xLTM2LjNsLTEzLjctNzEgNTkuOC00MC41YzExLjEtNy41IDE3LjgtMjAuMSAxNy44LTMzLjUtLjEtMTMuNi02LjctMjYuMS0xNy45LTMzLjd6bS0xMTIuOSA4NS42bDE3LjYgOTEuMi05MS0xNy42TDI1NiA0NThsLTUxLjktNzctOTAuOSAxNy42IDE3LjYtOTEuMi03Ni44LTUyIDc2LjgtNTItMTcuNi05MS4yIDkxIDE3LjZMMjU2IDUzbDUxLjkgNzYuOSA5MS0xNy42LTE3LjYgOTEuMSA3Ni44IDUyLTc2LjggNTIuMXpNMjU2IDE1MmMtNTcuMyAwLTEwNCA0Ni43LTEwNCAxMDRzNDYuNyAxMDQgMTA0IDEwNCAxMDQtNDYuNyAxMDQtMTA0LTQ2LjctMTA0LTEwNC0xMDR6bTAgMTYwYy0zMC45IDAtNTYtMjUuMS01Ni01NnMyNS4xLTU2IDU2LTU2IDU2IDI1LjEgNTYgNTYtMjUuMSA1Ni01NiA1NnoiLz4KPC9zdmc+Cg==",
114
- "items": {
115
- "_astroConfig": {
116
- "type": "custom",
117
- "i18n": true,
118
- "xs": 12,
119
- "sm": 12,
120
- "md": 12,
121
- "lg": 12,
122
- "url": "custom/customComponents.js",
123
- "name": "ConfigCustomJavascriptSet/Components/Astro",
124
- "bundlerType": "module"
125
- },
126
- "createAstroStates": {
127
- "newLine": true,
128
- "type": "checkbox",
129
- "label": "Create states for all astro times",
130
- "xs": 12,
131
- "sm": 12
126
+ "_ai": {
127
+ "type": "panel",
128
+ "label": "AI settings",
129
+ "icon": "data:image/svg+xml;base64,",
130
+ "items": {
131
+ "_aiDescription": {
132
+ "type": "staticText",
133
+ "label": "AI settings description",
134
+ "xs": 12,
135
+ "sm": 12,
136
+ "style": {
137
+ "marginBottom": 16
138
+ }
139
+ },
140
+ "gptKey": {
141
+ "newLine": true,
142
+ "type": "text",
143
+ "label": "ChatGPT API key",
144
+ "xs": 12,
145
+ "sm": 12,
146
+ "help": "platform.openai.com",
147
+ "helpLink": "https://platform.openai.com/api-keys"
148
+ },
149
+ "claudeKey": {
150
+ "newLine": true,
151
+ "type": "text",
152
+ "label": "Anthropic API key",
153
+ "xs": 12,
154
+ "sm": 12,
155
+ "help": "console.anthropic.com",
156
+ "helpLink": "https://console.anthropic.com/settings/keys"
157
+ },
158
+ "geminiKey": {
159
+ "newLine": true,
160
+ "type": "text",
161
+ "label": "Gemini API key",
162
+ "xs": 12,
163
+ "sm": 12,
164
+ "help": "aistudio.google.com",
165
+ "helpLink": "https://aistudio.google.com/apikey"
166
+ },
167
+ "deepseekKey": {
168
+ "newLine": true,
169
+ "type": "text",
170
+ "label": "DeepSeek API key",
171
+ "xs": 12,
172
+ "sm": 12,
173
+ "help": "platform.deepseek.com",
174
+ "helpLink": "https://platform.deepseek.com/api_keys"
175
+ },
176
+ "gptBaseUrl": {
177
+ "newLine": true,
178
+ "type": "text",
179
+ "label": "Custom API Base URL",
180
+ "xs": 12,
181
+ "sm": 12,
182
+ "help": "Custom API Base URL help",
183
+ "placeholder": "https://api.openai.com/v1"
184
+ },
185
+ "_testApiConnection": {
186
+ "newLine": true,
187
+ "type": "sendTo",
188
+ "label": "Test API connection",
189
+ "command": "testApiConnection",
190
+ "jsonData": "{\"apiKey\": \"${data.gptKey}\", \"baseUrl\": \"${data.gptBaseUrl}\"}",
191
+ "variant": "outlined",
192
+ "xs": 12,
193
+ "sm": 6,
194
+ "alsoDependsOn": ["gptKey", "gptBaseUrl"],
195
+ "showProcess": true,
196
+ "resultStringToError": "error"
197
+ }
198
+ }
132
199
  }
133
- }
134
200
  }
135
- }
136
201
  }
@@ -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.js","path":"","type":"module"},"types":{"path":"","name":""},"globalName":"iobroker_javascript","pluginVersion":"0.2.5","publicPath":"./"},"shared":[{"id":"iobroker_javascript:@mui/material","name":"@mui/material","version":"6.5.0","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-BWM5lJbO.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:@iobroker/adapter-react-v5","name":"@iobroker/adapter-react-v5","version":"8.0.13","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-Br_QjNUk.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react-dom","name":"react-dom","version":"18.3.1","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-DwcZPzOL.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react","name":"react","version":"18.3.1","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-Do-nCdWy.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:prop-types","name":"prop-types","version":"15.8.1","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-DQiceR5U.js"]},"css":{"async":[],"sync":[]}}}],"remotes":[],"exposes":[]}
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.js","path":"","type":"module"},"types":{"path":"","name":""},"globalName":"iobroker_javascript","pluginVersion":"0.2.5","publicPath":"./"},"shared":[{"id":"iobroker_javascript:react","name":"react","version":"18.3.1","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-Dsh1HfIY.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:react-dom","name":"react-dom","version":"18.3.1","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-BkyLyaYT.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:@mui/material","name":"@mui/material","version":"6.5.0","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-DlDUIfpA.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:prop-types","name":"prop-types","version":"15.8.1","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-CVZSzCXy.js"]},"css":{"async":[],"sync":[]}}},{"id":"iobroker_javascript:@iobroker/adapter-react-v5","name":"@iobroker/adapter-react-v5","version":"8.1.3","requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/index-Dnbw7_L3.js"]},"css":{"async":[],"sync":[]}}}],"remotes":[],"exposes":[]}
@@ -1,2 +1 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./assets/index-Br_QjNUk.js","./assets/createSvgIcon-DlIk-fDn.js","./assets/iobroker_javascript__loadShare__react__loadShare__-i8pXne9X.js","./assets/_commonjsHelpers-Cpj98o6Y.js","./assets/iobroker_javascript__mf_v__runtimeInit__mf_v__-DZdFIfoQ.js","./assets/index-Cjl4b70e.js","./assets/Save-DXaUpIPM.js","./assets/useTheme-DakN8Abq.js","./assets/index-DZ3lKVw8.js","./assets/index-BWM5lJbO.js","./assets/inheritsLoose-DNrhibGS.js","./assets/index-DQiceR5U.js","./assets/index-Do-nCdWy.js","./assets/index-DwcZPzOL.js"])))=>i.map(i=>d[i]);
2
- import{i as d,a as m}from"./assets/iobroker_javascript__mf_v__runtimeInit__mf_v__-DZdFIfoQ.js";import s from"./assets/virtualExposes-BIHI7g3E.js";import{_ as a}from"./assets/preload-helper-BDBacUwf.js";const i={"@iobroker/adapter-react-v5":async()=>await a(()=>import("./assets/index-Br_QjNUk.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8]),import.meta.url),"@mui/material":async()=>await a(()=>import("./assets/index-BWM5lJbO.js"),__vite__mapDeps([9,1,2,3,4,10,7]),import.meta.url),"prop-types":async()=>await a(()=>import("./assets/index-DQiceR5U.js").then(t=>t.i),__vite__mapDeps([11,3]),import.meta.url),react:async()=>await a(()=>import("./assets/index-Do-nCdWy.js").then(t=>t.i),__vite__mapDeps([12,3]),import.meta.url),"react-dom":async()=>await a(()=>import("./assets/index-DwcZPzOL.js").then(t=>t.i),__vite__mapDeps([13,3,2,4]),import.meta.url)},o={"@iobroker/adapter-react-v5":{name:"@iobroker/adapter-react-v5",version:"8.0.13",scope:["default"],loaded:!1,from:"iobroker_javascript",async get(){o["@iobroker/adapter-react-v5"].loaded=!0;const{"@iobroker/adapter-react-v5":e}=i,r={...await e()};return Object.defineProperty(r,"__esModule",{value:!0,enumerable:!1}),function(){return r}},shareConfig:{singleton:!0,requiredVersion:"*"}},"@mui/material":{name:"@mui/material",version:"6.5.0",scope:["default"],loaded:!1,from:"iobroker_javascript",async get(){o["@mui/material"].loaded=!0;const{"@mui/material":e}=i,r={...await e()};return Object.defineProperty(r,"__esModule",{value:!0,enumerable:!1}),function(){return r}},shareConfig:{singleton:!0,requiredVersion:"*"}},"prop-types":{name:"prop-types",version:"15.8.1",scope:["default"],loaded:!1,from:"iobroker_javascript",async get(){o["prop-types"].loaded=!0;const{"prop-types":e}=i,r={...await e()};return Object.defineProperty(r,"__esModule",{value:!0,enumerable:!1}),function(){return r}},shareConfig:{singleton:!0,requiredVersion:"*"}},react:{name:"react",version:"18.3.1",scope:["default"],loaded:!1,from:"iobroker_javascript",async get(){o.react.loaded=!0;const{react:e}=i,r={...await e()};return Object.defineProperty(r,"__esModule",{value:!0,enumerable:!1}),function(){return r}},shareConfig:{singleton:!0,requiredVersion:"*"}},"react-dom":{name:"react-dom",version:"18.3.1",scope:["default"],loaded:!1,from:"iobroker_javascript",async get(){o["react-dom"].loaded=!0;const{"react-dom":e}=i,r={...await e()};return Object.defineProperty(r,"__esModule",{value:!0,enumerable:!1}),function(){return r}},shareConfig:{singleton:!0,requiredVersion:"*"}}},_=[],u={},p="default",c="iobroker_javascript";async function k(e={},t=[]){const r=d({name:c,remotes:_,shared:o,plugins:[],shareStrategy:"version-first"});var n=u[p];if(n||(n=u[p]={from:c}),!(t.indexOf(n)>=0)){t.push(n),r.initShareScopeMap("default",e);try{await Promise.all(await r.initializeSharing("default",{strategy:"version-first",from:"build",initScope:t}))}catch(l){console.error(l)}return m.initResolve(r),r}}function y(e){if(!(e in s))throw new Error(`Module ${e} does not exist in container.`);return s[e]().then(t=>()=>t)}export{y as get,k as init};
1
+ import"./assets/preload-helper-BDBacUwf.js";import{g as r,i as a}from"./assets/virtual_mf-REMOTE_ENTRY_ID_iobroker_javascript__remoteEntry_js-C9suQF96.js";export{r as get,a as init};
package/admin/tab.html CHANGED
@@ -1,7 +1,7 @@
1
1
  <!doctype html>
2
2
  <html lang="en">
3
3
  <head>
4
- <script type="module" src="./assets/hostInit-OBG53iVO.js"></script>
4
+ <script type="module" src="./assets/hostInit-LzITLWDa.js"></script>
5
5
 
6
6
  <meta charset="utf-8" />
7
7
  <link
@@ -115,14 +115,19 @@
115
115
  type="text/javascript"
116
116
  src="google-blockly/own/blocks_object.js"
117
117
  ></script>
118
- <script type="module" crossorigin src="./assets/index-DBgNhNiJ.js"></script>
119
- <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__mf_v__runtimeInit__mf_v__-DZdFIfoQ.js">
120
- <link rel="modulepreload" crossorigin href="./assets/_commonjsHelpers-Cpj98o6Y.js">
121
- <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare__react__loadShare__-i8pXne9X.js">
122
- <link rel="modulepreload" crossorigin href="./assets/createSvgIcon-DlIk-fDn.js">
123
- <link rel="modulepreload" crossorigin href="./assets/inheritsLoose-DNrhibGS.js">
124
- <link rel="modulepreload" crossorigin href="./assets/index-Cjl4b70e.js">
118
+ <script type="module" crossorigin src="./assets/index-COZhHfBn.js"></script>
125
119
  <link rel="modulepreload" crossorigin href="./assets/preload-helper-BDBacUwf.js">
120
+ <link rel="modulepreload" crossorigin href="./assets/virtual_mf-REMOTE_ENTRY_ID_iobroker_javascript__remoteEntry_js-C9suQF96.js">
121
+ <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare__react__loadShare__.mjs-CTZOFJS2.js">
122
+ <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare__react__loadShare__.mjs_commonjs-proxy-CE9lvhW8.js">
123
+ <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare__prop_mf_2_types__loadShare__.mjs-BCtSFofY.js">
124
+ <link rel="modulepreload" crossorigin href="./assets/createSvgIcon-DPvF8xqu.js">
125
+ <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare__react_mf_2_dom__loadShare__.mjs-DeVAS-oa.js">
126
+ <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare__react_mf_2_dom__loadShare__.mjs_commonjs-proxy-RQRRZMX5.js">
127
+ <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare___mf_0_mui_mf_1_material__loadShare__.mjs-QWG5Arqe.js">
128
+ <link rel="modulepreload" crossorigin href="./assets/iobroker_javascript__loadShare___mf_0_iobroker_mf_1_adapter_mf_2_react_mf_2_v5__loadShare__.mjs-DkBjPSMw.js">
129
+ <link rel="modulepreload" crossorigin href="./assets/index-Cu-TydZj.js">
130
+ <link rel="modulepreload" crossorigin href="./assets/inheritsLoose-B0Ba5G9z.js">
126
131
  <link rel="stylesheet" crossorigin href="./assets/index-BTsjunTt.css">
127
132
  </head>
128
133
  <body>
@@ -2024,8 +2024,10 @@ declare global {
2024
2024
  type SettableOtherObject = SettableObject<OtherObject>;
2025
2025
 
2026
2026
  /** Represents the change of a state */
2027
- interface ChangedStateObject<TOld extends iobJS.StateValue = any, TNew extends iobJS.StateValue = TOld>
2028
- extends StateObject {
2027
+ interface ChangedStateObject<
2028
+ TOld extends iobJS.StateValue = any,
2029
+ TNew extends iobJS.StateValue = TOld,
2030
+ > extends StateObject {
2029
2031
  common: StateCommon;
2030
2032
  native: Record<string, any>;
2031
2033
  id?: string;
@@ -13,6 +13,7 @@ class Mirror {
13
13
  watchedFolder = {};
14
14
  diskList;
15
15
  dbList = {};
16
+ ready = false;
16
17
  constructor(options) {
17
18
  if (!options.adapter) {
18
19
  throw new Error('No adapter defined');
@@ -36,7 +37,7 @@ class Mirror {
36
37
  error: text => console.error(text),
37
38
  };
38
39
  }
39
- if (!options.diskRoot || options.adapter.namespace !== 'javascript.0') {
40
+ if (!options.diskRoot?.trim() || this.adapter.namespace !== 'javascript.0') {
40
41
  // only instance 0 can sync objects
41
42
  return;
42
43
  }
@@ -50,15 +51,14 @@ class Mirror {
50
51
  }
51
52
  }
52
53
  this.diskList = this.scanDisk();
53
- this.checkLastSyncObject(lastSyncTime => {
54
- this.scanDB(list => {
55
- this.dbList = list;
56
- this.sync(lastSyncTime);
57
- this.adapter.setForeignState(this.lastSyncID, Date.now(), true);
58
- // monitor all folders
59
- this.watchFolders(this.diskRoot);
60
- });
61
- });
54
+ this.checkLastSyncObject(lastSyncTime => this.scanDB(list => {
55
+ this.dbList = list;
56
+ this.sync(lastSyncTime);
57
+ this.adapter.setForeignState(this.lastSyncID, Date.now(), true);
58
+ this.ready = true;
59
+ // monitor all folders
60
+ this.watchFolders(this.diskRoot);
61
+ }));
62
62
  }
63
63
  watchFolders(root_) {
64
64
  root_ = root_.endsWith('/') ? root_ : `${root_}/`;
@@ -132,10 +132,10 @@ class Mirror {
132
132
  type: 'state',
133
133
  native: {},
134
134
  };
135
- this.adapter.setForeignObject(this.lastSyncID, obj, () => this.adapter.setForeignState(this.lastSyncID, 0, true, () => cb && cb(0)));
135
+ this.adapter.setForeignObject(this.lastSyncID, obj, () => this.adapter.setForeignState(this.lastSyncID, 0, true, () => cb?.(0)));
136
136
  }
137
137
  else {
138
- void this.adapter.getForeignState(this.lastSyncID, (_err, state) => cb && cb(state?.val));
138
+ void this.adapter.getForeignState(this.lastSyncID, (_err, state) => cb?.(state?.val));
139
139
  }
140
140
  });
141
141
  }
@@ -171,7 +171,7 @@ class Mirror {
171
171
  if (fileName.endsWith('.ts')) {
172
172
  return 'TypeScript/ts';
173
173
  }
174
- return Mirror.isBlockly(data) ? 'Blockly' : Mirror.isRules(data) ? 'Rules' : 'JavaScript/js';
174
+ return Mirror.isBlockly(data) ? 'Blockly' : Mirror.isRules(data) ? 'Rules' : 'Javascript/js';
175
175
  }
176
176
  updateFolderTime(id) {
177
177
  this.dbList[id].ts = Date.now();
@@ -347,6 +347,9 @@ class Mirror {
347
347
  }
348
348
  }
349
349
  onFileChange(event, file) {
350
+ if (!this.ready) {
351
+ return;
352
+ }
350
353
  let stats;
351
354
  const exists = (0, node_fs_1.existsSync)(file);
352
355
  if (exists) {
@@ -482,11 +485,12 @@ class Mirror {
482
485
  this.adapter.setForeignState(this.lastSyncID, Date.now(), true);
483
486
  }
484
487
  onObjectChange(id, obj) {
485
- if (!this.dbList || !id) {
488
+ if (!this.dbList || !id || !this.ready) {
486
489
  return;
487
490
  }
488
491
  const file = this._scriptId2FileName(id, obj?.common?.engineType);
489
- if (!obj || !obj.common) {
492
+ if (!obj?.common) {
493
+ // File was deleted
490
494
  if (this.dbList[id]) {
491
495
  delete this.dbList[id];
492
496
  const folderId = Mirror.getDBFolder(id);
@@ -509,6 +513,7 @@ class Mirror {
509
513
  }
510
514
  else if (obj.type === 'script' && id.startsWith('script.js.')) {
511
515
  if (this.dbList[id]) {
516
+ // File changed
512
517
  if (this.dbList[id].common.source !== obj.common.source) {
513
518
  this.dbList[id] = obj;
514
519
  this.log.debug(`Update ${file} on disk`);
@@ -620,9 +625,7 @@ class Mirror {
620
625
  }
621
626
  }
622
627
  }
623
- if (cb) {
624
- cb(list);
625
- }
628
+ cb?.(list);
626
629
  });
627
630
  });
628
631
  }