iobroker.javascript 10.4.0 → 10.4.2

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 (134) hide show
  1. package/README.md +7 -17
  2. package/admin/assets/AiChatPanel-Bh1UgzLN.js +27 -0
  3. package/admin/assets/AiChatService-h1EHSXaR.js +216 -0
  4. package/admin/assets/AiDiffView-pmbNE43A.js +1 -0
  5. package/admin/assets/AiInlineProvider-CslJGmO0.js +5 -0
  6. package/admin/assets/{BlocklyEditor-DhwThchX.js → BlocklyEditor-DD7PWWnm.js} +7 -7
  7. package/admin/assets/Compile-CHnsUZ3H.js +165 -0
  8. package/admin/assets/Debugger-DcFTsY_u.js +15 -0
  9. package/admin/assets/Diff-BMtToKAY.js +1 -0
  10. package/admin/assets/{Documentation-D3E0U4AK.js → Documentation-DmTfviYr.js} +4 -4
  11. package/admin/assets/ExpandMore-BjBfK8y_.js +1 -0
  12. package/admin/assets/{FbEditor-BjLPNzpK.js → FbEditor-BCD6eDj-.js} +6 -6
  13. package/admin/assets/History-DM03Cwv-.js +1 -0
  14. package/admin/assets/Import-Bh_K9cpx.js +1 -0
  15. package/admin/assets/MonacoDiff-yYWwyqpx.js +1 -0
  16. package/admin/assets/NotificationsActive-B7pgt1LW.js +1 -0
  17. package/admin/assets/RulesEditor-CV-5poRY.js +1 -0
  18. package/admin/assets/ScriptEditor-sb_g6vXT.js +2 -0
  19. package/admin/assets/ScriptEditorVanillaMonaco-DbOlv3vi.js +3 -0
  20. package/admin/assets/Send-Bo4QPFhQ.js +1 -0
  21. package/admin/assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-B7myBQHF.js +1 -0
  22. package/admin/assets/_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.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__57338878793567__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-BCLgOrQh.js} +1 -1
  24. package/admin/assets/aiPromptBuilder-jeMwCFvL.js +1 -0
  25. package/admin/assets/blocklyTheme-B0abPSuE.js +1 -0
  26. package/admin/assets/{blocks_action-Ctn5A1AU.js → blocks_action-CM4AAMF1.js} +1 -1
  27. package/admin/assets/{blocks_convert-BI0lf0sf.js → blocks_convert-DIBthcQF.js} +1 -1
  28. package/admin/assets/{blocks_logic-o49klUX_.js → blocks_logic-CJBNXoP3.js} +1 -1
  29. package/admin/assets/{blocks_number-DZtyWFyR.js → blocks_number-GuNZ4kQO.js} +1 -1
  30. package/admin/assets/{blocks_object-BuzGCxVr.js → blocks_object-BFR1ocL_.js} +1 -1
  31. package/admin/assets/{blocks_procedures-jn9sIYmR.js → blocks_procedures-CQxCN9F8.js} +1 -1
  32. package/admin/assets/{blocks_sendto-Coui8w1H.js → blocks_sendto-DSfpmOb2.js} +1 -1
  33. package/admin/assets/{blocks_switch-CeRZizTM.js → blocks_switch-CzWnVKX-.js} +1 -1
  34. package/admin/assets/{blocks_system-CaBPIC40.js → blocks_system-DVfA31Hy.js} +1 -1
  35. package/admin/assets/{blocks_text-DeDtPYWf.js → blocks_text-CgO-seeL.js} +1 -1
  36. package/admin/assets/{blocks_time-CTXQH3Lm.js → blocks_time-DNQPTg92.js} +1 -1
  37. package/admin/assets/{blocks_timeout-D8IOKOb-.js → blocks_timeout-BXypxY7F.js} +1 -1
  38. package/admin/assets/{blocks_trigger-zuuXJbhb.js → blocks_trigger-elp6XrND.js} +1 -1
  39. package/admin/assets/cronHoverProvider-CZrYrB2m.js +2 -0
  40. package/admin/assets/{dist-CzitsFi7.js → dist-CSJEdwl2.js} +1 -1
  41. package/admin/assets/field_cron-m1xxzKf2.js +1 -0
  42. package/admin/assets/field_oid-BLNfi7lh.js +1 -0
  43. package/admin/assets/field_script-CGDpmlGL.js +1 -0
  44. package/admin/assets/{helpers-BwllSRzJ.js → helpers-Ch3tewpw.js} +1 -1
  45. package/admin/assets/helpers-DT5-3o-l.js +1 -0
  46. package/admin/assets/{hostInit-CrHjJGJJ.js → hostInit-CflF0J5w.js} +1 -1
  47. package/admin/assets/index-_7Mh4AxK.js +157 -0
  48. package/admin/assets/inlineChatWidget-BfjarD99.js +2 -0
  49. package/admin/assets/{inlineDiffController-ly6qX4jk.js → inlineDiffController-VazWO1wi.js} +1 -1
  50. package/admin/assets/{loadBlocks-BcFtthDb.js → loadBlocks-CGEGNJcd.js} +23 -23
  51. package/admin/assets/{mf-entry-bootstrap-0-6db6c4fc.js → mf-entry-bootstrap-0-536f3328.js} +3 -3
  52. package/admin/assets/{pendingShares-mBGPbRwZ.js → pendingShares-WHCuAHKo.js} +2 -2
  53. package/admin/assets/reactour.esm-CETRUaME.js +137 -0
  54. package/admin/assets/{stateHoverProvider-wAsP-THx.js → stateHoverProvider-BfhQov29.js} +1 -1
  55. package/admin/assets/{utils-DUKzLJUz.js → utils-BFhwh2EC.js} +1 -1
  56. package/admin/assets/vite-preload-helper-BbbETgeG.js +1 -0
  57. package/admin/custom/assets/Components-C6UfjQAS.js +1 -0
  58. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1-B1DaT32e.js +1 -0
  59. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__18840520564161__loadShare___mf_0_emotion_mf_1_styled__loadShare__.js-BRo2TJu1.js +1 -0
  60. 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__18840520564161__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-nQIzP_1l.js} +95 -95
  61. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__18840520564161__loadShare___mf_0_mui_mf_1_x_mf_2_date_mf_2_pickers__loadShare__.js-DQfhTnYi.js +1 -0
  62. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__18840520564161__loadShare__date_mf_2_fns__loadShare__.js-BrsJpRn9.js +1 -0
  63. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__18840520564161__loadShare__shared-Bm5cq4Wz.js +2 -0
  64. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__18840520564161__prebuild___mf_0_iobroker_mf_1_json_mf_2_config__prebuild__-Bv9I6S4D.js +122 -0
  65. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__18840520564161__prebuild__leaflet__prebuild__-R1ziirob.js +1 -0
  66. 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__18840520564161__prebuild__react_mf_2_dom_mf_1_client__prebuild__--phH3reL.js} +1 -1
  67. package/admin/custom/assets/{dist-CzitsFi7.js → dist-CSJEdwl2.js} +1 -1
  68. package/admin/custom/assets/helpers-DT5-3o-l.js +1 -0
  69. package/admin/custom/assets/{hostInit-akwaQLq8.js → hostInit-CuGqkIzY.js} +1 -1
  70. package/admin/custom/assets/index-CgBEPuXx.js +1 -0
  71. package/admin/custom/assets/{lib-CADOx2YN.js → lib-WawTWipl.js} +1 -1
  72. package/admin/custom/assets/{mf-entry-bootstrap-0-3c4565e0.js → mf-entry-bootstrap-0-81b08d9c.js} +3 -3
  73. package/admin/custom/assets/pendingShares-5RvH3v48.js +2 -0
  74. package/admin/custom/assets/{utils-DUKzLJUz.js → utils-BFhwh2EC.js} +1 -1
  75. package/admin/custom/assets/vite-preload-helper-BbbETgeG.js +1 -0
  76. package/admin/custom/customComponents.js +2 -2
  77. package/admin/mf-manifest.json +1 -1
  78. package/admin/mf-stats.json +1 -1
  79. package/admin/remoteEntry.js +2 -2
  80. package/admin/tab.html +2 -2
  81. package/build/lib/ai.js +53 -0
  82. package/build/lib/ai.js.map +1 -0
  83. package/build/main.js +19 -618
  84. package/build/main.js.map +1 -1
  85. package/io-package.json +26 -26
  86. package/package.json +6 -5
  87. package/admin/assets/AiChatPanel-BjRIKaXG.js +0 -27
  88. package/admin/assets/AiChatService-DP1EmVk2.js +0 -216
  89. package/admin/assets/AiDiffView-DeynDw7L.js +0 -1
  90. package/admin/assets/AiInlineProvider-jkEIJJJ-.js +0 -5
  91. package/admin/assets/Compile-e8N5zI-J.js +0 -165
  92. package/admin/assets/Debugger-BDQUKM1K.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/MonacoDiff-BYvG7IqB.js +0 -1
  98. package/admin/assets/NotificationsActive-CuNfWVJM.js +0 -1
  99. package/admin/assets/RulesEditor--YX6ETsU.js +0 -1
  100. package/admin/assets/ScriptEditor-BadPC8Mf.js +0 -2
  101. package/admin/assets/ScriptEditorVanillaMonaco-BnAmy59d.js +0 -3
  102. package/admin/assets/Send-Pz1eveU5.js +0 -1
  103. package/admin/assets/_virtual_mf-localSharedImportMap___mfe_internal__iobroker_javascript__mf_owner__1-Ceh8EDcF.js +0 -1
  104. 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
  105. package/admin/assets/aiPromptBuilder-Co6AqZwx.js +0 -1
  106. package/admin/assets/blocklyTheme-iZoge1S9.js +0 -1
  107. package/admin/assets/cronHoverProvider-Curcjz4m.js +0 -2
  108. package/admin/assets/field_cron-RgLY53_S.js +0 -1
  109. package/admin/assets/field_oid-rBhotXJe.js +0 -1
  110. package/admin/assets/field_script-CU7g3-oB.js +0 -1
  111. package/admin/assets/helpers-BZgjFQNf.js +0 -1
  112. package/admin/assets/index-Bmmscq2G.js +0 -157
  113. package/admin/assets/inlineChatWidget-ChchJD9a.js +0 -2
  114. package/admin/assets/reactour.esm-Dk3aGxKn.js +0 -137
  115. package/admin/assets/vite-preload-helper-DjNwdemH.js +0 -1
  116. package/admin/custom/assets/Components-fDcxCyN4.js +0 -1
  117. package/admin/custom/assets/_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomJavascriptSet__mf_owner__1-BraOrMSu.js +0 -1
  118. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare___mf_0_emotion_mf_1_styled__loadShare__.js-CVvbIPAy.js +0 -1
  119. 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
  120. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare__date_mf_2_fns__loadShare__.js-Djg9OMcQ.js +0 -1
  121. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__loadShare__shared-Hb6V6BnJ.js +0 -2
  122. 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
  123. package/admin/custom/assets/_virtual_mf___mfe_internal__ConfigCustomJavascriptSet__mf_owner__198282747311932__prebuild__leaflet__prebuild__-CHjWtrkp.js +0 -1
  124. package/admin/custom/assets/helpers-BZgjFQNf.js +0 -1
  125. package/admin/custom/assets/index-BkItz-nL.js +0 -1
  126. package/admin/custom/assets/pendingShares-TCMDgBLn.js +0 -2
  127. package/admin/custom/assets/vite-preload-helper-DjNwdemH.js +0 -1
  128. package/build/lib/aiProviderResolver.js +0 -260
  129. package/build/lib/aiProviderResolver.js.map +0 -1
  130. package/build/lib/anthropicAdapter.js +0 -212
  131. package/build/lib/anthropicAdapter.js.map +0 -1
  132. /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__18840520564161__loadShare___mf_0_emotion_mf_1_react__loadShare__.js-DbKT6Hsb.js} +0 -0
  133. /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__18840520564161__loadShare__leaflet__loadShare__.js-D9EyCd42.js} +0 -0
  134. /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__18840520564161__prebuild__react_mf_1_jsx_mf_2_runtime__prebuild__-CXpyx8Vy.js} +0 -0
@@ -0,0 +1 @@
1
+ import{Cr as e,Er as t,Ir as n,Jt as r,Mr as i,Nn as a,Ot as o,Sn as s,Xn as c,Yt as l,Zt as u,an as d,cn as f,fn as p,jn as m,kn as h,ln as g,lr as _,m as v,qt as y,un as b,ur as x,wt as S,xn as C}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";import{t as w}from"./MonacoDiff-yYWwyqpx.js";var T=c(_(`path`,{d:`M15 16h4v2h-4zm0-8h7v2h-7zm0 4h6v2h-6zM3 18c0 1.1.9 2 2 2h6c1.1 0 2-.9 2-2V8H3zM14 5h-3l-1-1H6L5 5H2v2h12z`}),`DeleteSweep`),E=c(_(`path`,{d:`M13 3c-4.97 0-9 4.03-9 9H1l3.89 3.89.07.14L9 12H6c0-3.87 3.13-7 7-7s7 3.13 7 7-3.13 7-7 7c-1.93 0-3.68-.79-4.94-2.06l-1.42 1.42C8.27 19.99 10.51 21 13 21c4.97 0 9-4.03 9-9s-4.03-9-9-9m-1 5v5l4.28 2.54.72-1.21-3.5-2.08V8z`}),`Restore`);n();var D=({socket:n,instanceId:c,scriptId:D,currentCode:O,language:k,themeType:A,onRestore:j,onClose:M})=>{let[N,P]=i(null),[F,I]=i(null),[L,R]=i(null),[z,B]=i(``),[V,H]=i(!1),U=e(e=>n.sendTo(c,`getScriptVersions`,{id:D}).then(t=>{var n;if(t!=null&&t.error){B(t.error),P([]);return}let r=(t==null?void 0:t.versions)||[];P(r),I(r.some(t=>t.ts===e)?e:((n=r[0])==null?void 0:n.ts)??null)}).catch(e=>B(String(e))),[n,c,D]);t(()=>{U()},[U]);let W=e(async e=>{let t=await n.sendTo(c,`deleteHistory`,{id:D,...e?{ts:e}:{}});if(t!=null&&t.error){B(t.error);return}await U(e?F:null)},[n,c,D,U,F]);t(()=>{if(F===null){R(null);return}let e=!1;return H(!0),n.sendTo(c,`getScriptVersion`,{id:D,ts:F}).then(t=>{e||(H(!1),t!=null&&t.error?(B(t.error),R(null)):(B(``),R((t==null?void 0:t.source)??``)))}).catch(t=>{e||(H(!1),B(String(t)))}),()=>{e=!0}},[n,c,D,F]);let G=e(e=>[(e.user||``).replace(/^system\.user\./,``),(e.from||``).replace(/^system\.adapter\./,``)].filter(Boolean).join(` · `),[]),K=N==null?void 0:N.find(e=>e.ts===F);return x(f,{open:!0,onClose:M,maxWidth:`lg`,fullWidth:!0,sx:{"& .MuiDialog-paper":{height:`calc(100% - 64px)`}},children:[x(p,{children:[v.t(`Script history`),_(r,{component:`span`,sx:{ml:1,color:`text.secondary`},children:D.replace(/^script\.js\./,``)})]}),x(b,{sx:{display:`flex`,p:0,overflow:`hidden`,gap:0},children:[x(l,{sx:{width:280,flexShrink:0,overflow:`auto`,borderRight:`1px solid`,borderColor:`divider`},children:[N===null?_(l,{sx:{display:`flex`,justifyContent:`center`,p:2},children:_(d,{size:20})}):null,(N==null?void 0:N.length)===0?_(r,{variant:`body2`,sx:{p:2,color:`text.secondary`},children:v.t(`No versions stored yet. They are written from the next save on.`)}):null,_(h,{dense:!0,children:(N||[]).map((e,t)=>{let n=N==null?void 0:N[t+1],r=n?e.lines-n.lines:0;return x(m,{selected:e.ts===F,onClick:()=>I(e.ts),children:[_(a,{primary:new Date(e.ts).toLocaleString(),secondary:`${e.lines} ${v.t(`lines`)}${r?` (${r>0?`+`:``}${r})`:``}${G(e)?` · ${G(e)}`:``}`}),_(y,{title:v.t(`Delete this version`),children:_(s,{size:`small`,onClick:t=>{t.stopPropagation(),W(e.ts)},children:_(S,{fontSize:`small`})})})]},e.ts)})})]}),x(l,{sx:{display:`flex`,flex:1,minWidth:0,flexDirection:`column`},children:[z?_(C,{severity:`error`,children:z}):null,K!=null&&K.protected&&L!==null?_(C,{severity:`info`,children:v.t(`This script is protected, its versions are stored encrypted.`)}):null,V?_(l,{sx:{display:`flex`,justifyContent:`center`,p:2},children:_(d,{size:20})}):null,L!==null&&!V?_(l,{sx:{flex:1,minHeight:0},children:_(w,{originalCode:L,modifiedCode:O,language:k,themeType:A,readOnly:!0})}):null]})]}),x(g,{children:[_(r,{variant:`caption`,sx:{flex:1,ml:2,color:`text.secondary`},children:v.t(`Left: the selected version. Right: the editor.`)}),_(u,{color:`error`,disabled:!(N!=null&&N.length),onClick:()=>void W(),startIcon:_(T,{}),children:v.t(`Delete the whole history`)}),_(u,{variant:`contained`,color:`primary`,disabled:L===null||V,onClick:()=>{L!==null&&(j(L),M())},startIcon:_(E,{}),children:v.t(`Take over into the editor`)}),_(u,{variant:`contained`,color:`grey`,onClick:M,startIcon:_(o,{}),children:v.t(`Close`)})]})]})};export{D as default};
@@ -0,0 +1 @@
1
+ import{A as e,At as t,Ir as n,Rn as r,Xn as i,Zt as a,at as o,cn as s,fn as c,ft as l,gn as u,jt as d,ln as f,lr as p,m,pr as h,un as g,ur as _,v,x as y,z as b,zn as x}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";var S=i(p(`path`,{d:`M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12zm-1 4 6 6v10c0 1.1-.9 2-2 2H7.99C6.89 23 6 22.1 6 21l.01-14c0-1.1.89-2 1.99-2zm-1 7h5.5L14 6.5z`}),`FileCopy`);n();var C={textArea:{width:`100%`,height:`100%`,overflow:`auto`},textAreaLight:{background:`lightgray`},dialog:{height:`95%`},typography:{padding:16},overflowY:{overflowY:`hidden`}},w=class extends h.Component{constructor(e){super(e),this.state={anchorEl:null,popper:``}}handleCancel(){this.props.onClose()}onCopy(e){v.copyToClipboard(this.props.text);let t=e.currentTarget;setTimeout(()=>{this.setState({popper:m.t(`Copied`),anchorEl:t}),setTimeout(()=>this.setState({popper:``,anchorEl:null}),1e3)},50)}render(){let e=new Blob([this.props.text],{type:`application/xml`}),t=`${this.props.scriptId.substring(10)}.xml`;return _(s,{onClose:()=>!1,maxWidth:`lg`,sx:{"& .MuiDialog-paper":C.dialog},fullWidth:!0,open:!0,"aria-labelledby":`export-dialog-title`,children:[p(c,{id:`export-dialog-title`,children:m.t(`Export selected blocks`)}),p(g,{style:C.overflowY,children:p(`pre`,{id:`export-text`,style:{...C.textArea,...this.props.themeType===`dark`?void 0:C.textAreaLight},children:this.props.text})}),_(f,{children:[p(a,{variant:`contained`,color:`secondary`,startIcon:p(o,{}),children:p(`a`,{download:t,target:`_blank`,rel:`noreferrer`,href:URL.createObjectURL(e),style:{textDecoration:`inherit`,color:`inherit`},children:m.t(`Download as file`)})}),p(a,{variant:`contained`,onClick:e=>this.onCopy(e),color:`secondary`,startIcon:p(S,{}),children:m.t(`Copy to clipboard`)}),p(a,{variant:`contained`,onClick:()=>this.handleCancel(),color:`primary`,startIcon:p(d,{}),children:m.t(`Close`)}),p(x,{id:`popper`,style:{zIndex:1e4},open:!!this.state.popper,placement:`top`,anchorEl:this.state.anchorEl,transition:!0,children:({TransitionProps:e})=>p(u,{...e,timeout:350,children:p(r,{children:p(`p`,{style:C.typography,children:this.state.popper})})})}),p(`textarea`,{id:`copy_input`,readOnly:!0,style:{position:`absolute`,left:-9999},tabIndex:-1,"aria-hidden":!0,value:this.props.text})]})]},`export-dialog`)}};n();var T={textArea:{width:`calc(100% - 10px)`,height:`calc(80% - 20px)`,resize:`none`,fontFamily:`monospace`,fontSize:`1em`,backgroundColor:`transparent`,borderRadius:4,outline:`none`},dropzone:{marginTop:20,width:`100%`,borderWidth:5,borderStyle:`dashed`,borderColor:`#d0cccc`,textAlign:`center`,boxSizing:`border-box`,paddingTop:45,borderRadius:10,height:`calc(100% - 10px)`},dropzoneDiv:{width:`100%`,height:`20%`,position:`relative`},dropzoneRejected:{borderColor:`#970000`},dropzoneAccepted:{borderColor:`#17cd02`},icon:{height:`80%`,width:`80%`,opacity:.3,color:`#eeeeee`,position:`absolute`,top:`50%`,left:`50%`,transform:`translate(-50%,-50%)`,zIndex:0},iconError:{color:`#ffc3c6`},iconOk:{color:`#aaeebc`},text:{top:`50%`,left:`50%`,transform:`translate(-50%,-50%)`,color:`#868686`,position:`absolute`,zIndex:1},dialog:{height:`95%`},fullHeight:{height:`100%`,overflow:`hidden`}},E=class n extends h.Component{constructor(e){super(e),this.state={text:``,imageStatus:``,error:``}}componentDidMount(){setTimeout(()=>{try{var e;(e=window.document.getElementById(`import-text-area`))==null||e.focus()}catch{}},100)}static readFileDataUrl(e,t){let n=new FileReader;n.onload=()=>{t(null,{data:n.result,name:e.name})},n.onabort=()=>{console.error(`file reading was aborted`),t(m.t(`file reading was aborted`))},n.onerror=e=>{console.error(`file reading has failed`),t(m.t(`file reading has failed: %s`,e))},n.readAsText(e)}handleDropFile(e){if(!(e!=null&&e.length))return;let t=e[e.length-1];t&&n.readFileDataUrl(t,(e,t)=>{if(e||!t)this.setState({error:e||`No data`});else{var n;this.setState({text:((n=t.data)==null?void 0:n.toString())||``})}})}handleCancel(){this.props.onClose()}handleOk(){this.props.onClose(this.state.text)}onChange(e){this.setState({text:e.target.value})}render(){let n={...T.dropzone,...this.state.imageStatus===`accepted`?T.dropzoneAccepted:this.state.imageStatus===`rejected`?T.dropzoneRejected:void 0};return _(s,{onClose:()=>!1,maxWidth:`lg`,sx:{"& .MuiDialog-paper":T.dialog},fullWidth:!0,open:!0,"aria-labelledby":`import-dialog-title`,children:[p(c,{id:`import-dialog-title`,children:m.t(`Import blocks`)}),_(g,{style:T.fullHeight,children:[p(`textarea`,{autoFocus:!0,id:`import-text-area`,placeholder:m.t(`Paste your blocks here`),style:{...T.textArea,color:this.props.themeType===`dark`?`#ffffff`:`#000000`},onChange:e=>this.onChange(e),value:this.state.text}),p(l,{maxSize:5e7,onDrop:(e,t)=>{if(e.length)this.handleDropFile(e);else{var n;window.alert((t==null||(n=t[0])==null||(n=n.errors)==null||(n=n[0])==null?void 0:n.message)||m.t(`ra_Cannot upload`))}},multiple:!1,accept:{"text/plain":[],"text/xml":[],"application/xml":[]},children:({getRootProps:t,getInputProps:r,isDragActive:i,isDragReject:a})=>a?(this.state.imageStatus!==`rejected`&&this.setState({imageStatus:`rejected`}),_(`div`,{style:{...n,...T.dropzoneDiv},...t(),children:[p(`input`,{...r()}),p(`span`,{style:T.text,children:m.t(`Some files will be rejected`)},`text`),p(e,{style:{...T.icon,...T.iconError}},`icon`)]})):i?(this.state.imageStatus!==`accepted`&&this.setState({imageStatus:`accepted`}),_(`div`,{style:{...n,...T.dropzoneDiv},...t(),children:[p(`input`,{...r()}),p(`span`,{style:T.text,children:m.t(`All files will be accepted`)},`text`),p(y,{style:{...T.icon,...T.iconOk}},`icon`)]})):(this.state.imageStatus!==`wait`&&this.setState({imageStatus:`wait`}),_(`div`,{style:{...n,...T.dropzoneDiv},...t(),children:[p(`input`,{...r()}),p(`span`,{style:T.text,children:m.t(`Drop some files here or click...`)},`text`),p(b,{style:T.icon},`icon`)]}))})]}),_(f,{children:[p(a,{variant:`contained`,disabled:!this.state.text,onClick:()=>this.handleOk(),color:`primary`,startIcon:p(t,{}),children:m.t(`Import`)}),p(a,{color:`grey`,variant:`contained`,onClick:()=>this.handleCancel(),startIcon:p(d,{}),children:m.t(`Close`)})]})]})}};export{w as n,E as t};
@@ -0,0 +1 @@
1
+ import{Dr as e,Er as t,Ir as n,Yt as r,jr as i,lr as a}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";import{n as o}from"./loadMonaco-BVOEahNw.js";n();var s=({originalCode:n,modifiedCode:s,language:c,themeType:l,readOnly:u,ref:d})=>{let f=i(null),p=i(null);return e(d,()=>({getModifiedValue:()=>{var e;return((e=p.current)==null?void 0:e.getValue())??s}})),t(()=>{let e=null,t=!1;return o().then(r=>{if(t||!f.current)return;let i=r.editor.createDiffEditor(f.current,{readOnly:!!u,originalEditable:!1,renderSideBySide:!0,automaticLayout:!0,theme:l===`dark`?`vs-dark`:`vs`,scrollBeyondLastLine:!1,minimap:{enabled:!1}}),a=r.editor.createModel(n,c),o=r.editor.createModel(s,c);p.current=o,i.setModel({original:a,modified:o}),e=()=>{i.dispose(),a.dispose(),o.dispose(),p.current=null}}).catch(e=>console.error(`Cannot load the code editor: ${e}`)),()=>{t=!0,e==null||e()}},[n,s,c,l,u]),a(r,{ref:f,sx:{flex:1,overflow:`hidden`,height:`100%`,width:`100%`}})};export{s as t};
@@ -0,0 +1 @@
1
+ import{Xn as e,lr as t}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";var n=e([t(`path`,{d:`M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2M12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8`},`0`),t(`path`,{d:`M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z`},`1`)],`AccessTime`),r=e(t(`path`,{d:`M22 11V3h-7v3H9V3H2v8h7V8h2v10h4v3h7v-8h-7v3h-2V8h2v3z`}),`AccountTree`),i=e(t(`path`,{d:`M7.58 4.08 6.15 2.65C3.75 4.48 2.17 7.3 2.03 10.5h2c.15-2.65 1.51-4.97 3.55-6.42m12.39 6.42h2c-.15-3.2-1.73-6.02-4.12-7.85l-1.42 1.43c2.02 1.45 3.39 3.77 3.54 6.42M18 11c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2zm-6 11c.14 0 .27-.01.4-.04.65-.14 1.18-.58 1.44-1.18q.15-.36.15-.78h-4c.01 1.1.9 2 2.01 2`}),`NotificationsActive`);export{r as n,n as r,i as t};
@@ -0,0 +1 @@
1
+ import{At as e,Bn as t,Cr as n,Dn as r,Er as i,In as a,Ir as o,It as s,Kn as c,Mr as l,Mt as u,Nt as d,Ot as f,Pn as p,Pt as m,Sn as h,Sr as g,Tr as _,Ut as v,Xn as y,Zt as b,cn as x,cr as S,dn as C,fn as w,jr as T,kr as E,ln as D,lr as O,m as k,on as A,un as j,ur as M,v as N,vt as P,wr as F}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";import{_ as I,h as L,m as ee,p as te,x as R,y as z}from"./Compile-CHnsUZ3H.js";import{n as B,t as V}from"./ExpandMore-BjBfK8y_.js";import{n as ne,t as re}from"./Import-Bh_K9cpx.js";import{d as H,f as ie,l as U,m as ae,p as oe,t as W}from"./index-_7Mh4AxK.js";var se=y(O(`path`,{d:`M7.5 5.6 10 7 8.6 4.5 10 2 7.5 3.4 5 2l1.4 2.5L5 7zm12 9.8L17 14l1.4 2.5L17 19l2.5-1.4L22 19l-1.4-2.5L22 14zM22 2l-2.5 1.4L17 2l1.4 2.5L17 7l2.5-1.4L22 7l-1.4-2.5zm-7.63 5.29a.996.996 0 0 0-1.41 0L1.29 18.96c-.39.39-.39 1.02 0 1.41l2.34 2.34c.39.39 1.02.39 1.41 0L16.7 11.05c.39-.39.39-1.02 0-1.41zm-1.03 5.49-2.12-2.12 2.44-2.44 2.12 2.12z`}),`AutoFixHigh`),ce=y(O(`path`,{d:`M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z`}),`ChevronLeft`),le=y(O(`path`,{d:`M16 9v10H8V9zm-1.5-6h-5l-1 1H5v2h14V4h-3.5zM18 7H6v12c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2z`}),`DeleteOutlined`),ue=y(O(`path`,{d:`M15.41 7.41 14 6l-6 6 6 6 1.41-1.41L10.83 12z`}),`NavigateBefore`);o();function de(e){let t=oe().getMonitor(),[n,r]=ae(t,e);return i(()=>t.subscribeToOffsetChange(r)),i(()=>t.subscribeToStateChange(r)),n}var G;function fe(){return G||(G=new Image,G.src=`data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==`),G}var K={wrapperRules:`_wrapperRules_147jt_8`,rootWrapper:`_rootWrapper_147jt_14`,bands:`_bands_147jt_26`,emptyRule:`_emptyRule_147jt_39`,emptyRuleText:`_emptyRuleText_147jt_51`},pe={switchesItem:`_switchesItem_b8h5i_6`,switchesItemActive:`_switchesItemActive_b8h5i_35`,iconTheme:`_iconTheme_b8h5i_43`};o();var me=({name:e,id:t,active:n,icon:r,adapter:i,socket:a,onDoubleClick:o,title:s,onTouchMove:c,style:l})=>M(`div`,{onDoubleClick:o,onTouchMove:c,title:k.t(s||e),className:N.clsx(pe.switchesItem,n&&pe.switchesItemActive,`block-${t}`),children:[O(I,{iconName:r,className:pe.iconTheme,adapter:i,socket:a,style:l}),O(`span`,{children:e?k.t(e):``})]},t),q={cardStyle:`_cardStyle_15e7l_1`,railTriggers:`_railTriggers_15e7l_25`,railConditions:`_railConditions_15e7l_29`,railActions:`_railActions_15e7l_33`,cardStyleActive:`_cardStyleActive_15e7l_37`,controlMenu:`_controlMenu_15e7l_46`,closeBtn:`_closeBtn_15e7l_64`,isDelete:`_isDelete_15e7l_106`,drag_mobile:`_drag_mobile_15e7l_125`};function J(e,t,n){let r;switch(e){case`actions`:if(n===`else`)return r={...t,actions:{...t[e],else:[...t[e].else]}},r;if(n===`then`)return r={...t,actions:{...t[e],then:[...t[e].then]}},r;throw console.error(`Unknown additionalParameter: ${n}`),Error(`Unknown additionalParameter: ${n}`);case`triggers`:return r={...t,triggers:[...t.triggers]},r;case`conditions`:return r={...t,conditions:[...t.conditions]},r;default:throw Error(`Unknown name: ${e}`)}}function Y(e,t,n,r){switch(e){case`actions`:return t.actions[n]=t.actions[n].filter(e=>e._id!==r),t;case`conditions`:var i;return t.conditions[n]=(i=t.conditions[n])==null?void 0:i.filter(e=>e._id!==r),t;default:return t.triggers=t.triggers.filter(e=>e._id!==r),t}}function he(e,t,n){let{_id:r,acceptedBy:i}=e,a;if(!i||!t[i])return console.warn(`Cannot find ${i}`),t;switch(i){case`actions`:if(a=t.actions[n].find(e=>e._id===r),!a)console.warn(`Cannot find ${r}`);else{let r=t.actions[n].indexOf(a);t.actions[n][r]=e}return t;case`conditions`:if(a=t.conditions[n].find(e=>e._id===r),!a)console.warn(`Cannot find ${r}`);else{let r=t.conditions[n].indexOf(a);t.conditions[n][r]=e}return t;default:if(a=t.triggers.find(e=>e._id===r),!a)console.warn(`Cannot find ${r}`);else{let n=t.triggers.indexOf(a);t.triggers[n]=e}return t}}o();var ge={triggers:q.railTriggers,conditions:q.railConditions,actions:q.railActions},_e=g(e=>{var t;let{setUserRules:r,userRules:i,_id:a,id:o,blockValue:s,active:c,acceptedBy:u,isTourOpen:d,setTourStep:f,tourStep:p}=e,{blocks:m,socket:h,onUpdate:g,setOnUpdate:_,onDebugMessage:v,enableSimulation:y}=F(W),b=n(e=>m==null?void 0:m.find(t=>t.getStaticData().id===e),[m]),x=n(e=>{let t=he(e,i,s);t&&r(t)},[i]),S=E(()=>{let t=b(o)||L;return O(t,{...e,notFound:!b(o),isTourOpen:d,setTourStep:f,tourStep:p,onUpdate:g,setOnUpdate:_,enableSimulation:y,onDebugMessage:v,onChange:x,className:void 0,socket:h})},[i,g,v,y]),[C,w]=l(!1);return M(`div`,{onMouseDown:e=>{if(e.ctrlKey){let e,t=J(u,i,s);u===`conditions`?(e=t.conditions[s].find(e=>e._id===a),e&&t.conditions[s].splice(t.conditions[s].indexOf(e),0,{...e,_id:Date.now()})):u===`actions`?(e=t.actions[s].find(e=>e._id===a),e&&t.actions[s].splice(t.actions[s].indexOf(e),0,{...e,_id:Date.now()})):(e=t.triggers.find(e=>e._id===a),e&&t.triggers.splice(t[u].indexOf(e),0,{...e,_id:Date.now()})),r(t)}},id:`height`,style:c?{width:(((t=document.getElementById(`width`))==null?void 0:t.clientWidth)||0)-70}:void 0,className:[q.cardStyle,ge[u],c&&q.cardStyleActive,C&&q.isDelete].filter(Boolean).join(` `),children:[O(`div`,{className:q.drag_mobile}),S,r&&O(`div`,{className:q.controlMenu,children:O(`div`,{onClick:()=>{let e=J(u,i,s);e=Y(u,e,s,a),w(!0),setTimeout(()=>{u===`triggers`&&_(!0),r(e)},300)},className:q.closeBtn})})]})});o();var ve={position:`fixed`,pointerEvents:`none`,zIndex:100,left:0,top:0,width:`100%`,height:`100%`},ye=(e,t)=>[Math.round(e/32)*32,Math.round(t/32)*32],be=(e,t,n)=>{if(!e||!t)return{display:`none`};let{x:r,y:i}=t;n&&(r-=e.x,i-=e.y,[r,i]=ye(r,i),r+=e.x,i+=e.y);let a=`translate(${r}px, ${i}px)`;return{transform:a,WebkitTransform:a}},xe=e=>{let{itemType:t,isDragging:n,item:r,initialOffset:i,currentOffset:a,targetIds:o}=de(e=>({item:e.getItem(),itemType:e.getItemType(),initialOffset:e.getInitialSourceClientOffset(),currentOffset:e.getSourceClientOffset(),isDragging:e.isDragging(),targetIds:e.getTargetIds()}));return n?O(`div`,{style:ve,children:O(`div`,{style:be(i,a),children:(()=>{switch(t){case`box`:return o.length?O(_e,{active:!0,...r,allBlocks:e.allBlocks}):O(me,{active:!0,...r,socket:e.socket});default:return null}})()})}):null},X={emptyBlockStyle:`_emptyBlockStyle_1p9c1_1`,emptyBlock:`_emptyBlock_1p9c1_1`,marginTop:`_marginTop_1p9c1_1`,selectOnChange:`_selectOnChange_1p9c1_17`,selectOnChangeHelp:`_selectOnChangeHelp_1p9c1_23`,selectOnChangeHelpIcon:`_selectOnChangeHelpIcon_1p9c1_29`,emptyBlockNone:`_emptyBlockNone_1p9c1_44`,bandTriggers:`_bandTriggers_1p9c1_57`,bandConditions:`_bandConditions_1p9c1_61`,bandActions:`_bandActions_1p9c1_65`,mainBlockItemRules:`_mainBlockItemRules_1p9c1_69`,nameBlockItems:`_nameBlockItems_1p9c1_93`,nameBlockItemsFoldable:`_nameBlockItemsFoldable_1p9c1_120`,foldIcon:`_foldIcon_1p9c1_124`,foldHint:`_foldHint_1p9c1_124`,contentBlockItem:`_contentBlockItem_1p9c1_145`,wrapperMargin:`_wrapperMargin_1p9c1_153`,contentHeightOn:`_contentHeightOn_1p9c1_160`,heightBlock:`_heightBlock_1p9c1_1`,contentHeightOff:`_contentHeightOff_1p9c1_179`,cardAdd:`_cardAdd_1p9c1_186`,blockCardAdd:`_blockCardAdd_1p9c1_206`};o();function Se(e,t){let[n,r]=l(window.localStorage.getItem(t)?JSON.parse(window.localStorage.getItem(t)||``):e);return[n,e=>{window.localStorage.setItem(t,JSON.stringify(e)),r(e)},!!window.localStorage.getItem(t)]}function Ce(e,t){let n=0,r=null,i;return function(...a){let o=Date.now();i=a,o-n>=t?(n=o,e.apply(this,a)):r||=setTimeout(()=>{n=Date.now(),r=null,e.apply(this,i)},t-(o-n))}}function we(e){if(Array.isArray(e))return e.map(e=>we(e));if(typeof e==`function`)return e.bind(null);if(e&&typeof e==`object`){let t={};return Object.keys(e).forEach(n=>{t[n]=we(e[n])}),t}return e}var Te=Ce((e,t)=>e(t),0);function Ee(e,t){let n=t.find(t=>t._id===e);return{card:n,index:n?t.indexOf(n):-1}}function De(e,t,n,r,i,a,o,s,c){let{card:l,index:u}=Ee(e,n);if(!(u<t&&s<c)&&!(u>t&&s>c)&&l&&u!==t){let e=we(n);e.splice(u,1),e.splice(t,0,l);let s=we(i);switch(a){case`actions`:s.actions[o]=e,Te(r,s);return;case`conditions`:s.conditions[o]=e,Te(r,s);return;default:s.triggers=e,Te(r,s);return}}}var Oe={drag:`_drag_7xfhc_1`,root:`_root_7xfhc_11`};o();var ke=({typeBlock:e,allProperties:t,id:n,isActive:r,setUserRules:a,userRules:o,children:s,_id:c,blockValue:l})=>{let{setOnUpdate:u}=F(W),[{opacity:d},f,p]=ie({type:`box`,item:()=>({...t,id:n,isActive:r,_id:c}),end:(e,t)=>{let{acceptedBy:n}=e,r=t.getDropResult(),i;if(!r)return typeof c==`number`&&!t.getTargetIds().length&&(i=J(n,o,l),i=Y(n,i,l,c),a(i)),null;if(r.blockValue!==l){let t=typeof c==`number`?c:Date.now();i=J(n,o,r.blockValue);let s={id:e.id,acceptedBy:e.acceptedBy};switch(n){case`actions`:return l&&(i=Y(`actions`,i,l,t)),i=Y(`actions`,i,r.blockValue,t),i.actions[r.blockValue].push({...s,_id:t}),a(i);case`conditions`:return typeof l==`number`&&(i=Y(`conditions`,i,l,t)),i=Y(`conditions`,i,r.blockValue,t),i.conditions[r.blockValue].push({...s,_id:t}),a(i);default:return u(!0),i=Y(`triggers`,i,r.blockValue,t),i.triggers.push({...s,_id:t}),a(i)}}},collect:e=>({opacity:e.isDragging()?.4:1,isDragging:e.isDragging()})}),m=T(null),[,h]=H({accept:`box`,canDrop:()=>!1,hover({_id:t,acceptedBy:n},r){var i;if(!m.current||e!==n)return;let s=(i=m.current)==null?void 0:i.getBoundingClientRect(),u=(s.bottom-s.top)/2,d=r.getClientOffset(),f=((d==null?void 0:d.y)||0)-s.top;if(c&&t!==c)switch(n){case`actions`:if(l===`then`||l===`else`){let{index:e}=Ee(c,o.actions[l]);e!==t&&De(t,e,o[n][l],a,o,n,l,f,u)}return;case`conditions`:if(typeof l==`number`){let{index:e}=Ee(c,o[n][l]);e!==t&&De(t,e,o[n][l],a,o,n,l,f,u)}return;default:{let{index:e}=Ee(c,o[n]);e!==t&&De(t,e,o[n],a,o,n,void 0,f,u);return}}}});i(()=>{p(fe(),{captureDraggingState:!0})},[]),f(h(m));let g=window.innerWidth<600;return M(`div`,{ref:g&&c?null:m,className:Oe.root,style:{opacity:d},children:[O(`div`,{className:c?Oe.drag:null,ref:c&&g?m:null}),s]})};o();var Ae=({onClose:t,open:n})=>M(x,{open:n,onClose:t,"aria-labelledby":`alert-dialog-title`,"aria-describedby":`alert-dialog-description`,children:[O(j,{children:M(`div`,{style:{fontSize:`1rem`,fontFamily:`"Roboto", "Helvetica", "Arial", sans-serif`,fontWeight:400,lineHeight:1.5,letterSpacing:`0.00938em`},children:[O(`h3`,{children:k.t(`On condition change`)}),O(`div`,{children:k.t(`help_on_change`)}),O(`h3`,{children:k.t(`Just check`)}),O(`div`,{children:k.t(`help_just_check`)})]})}),O(D,{children:O(b,{onClick:t,color:`primary`,autoFocus:!0,startIcon:O(e,{}),children:k.t(`OK`)})})]});o();var je=({onClose:e,open:t})=>M(x,{open:t,onClose:e,"aria-labelledby":`alert-dialog-title`,"aria-describedby":`alert-dialog-description`,children:[O(j,{children:M(C,{id:`alert-dialog-description`,children:[O(`h3`,{children:k.t(`On condition change`)}),O(`div`,{children:k.t(`help_on_change`)}),O(`h3`,{children:k.t(`Just check`)}),O(`div`,{children:k.t(`help_just_check`)})]})}),O(D,{children:O(b,{onClick:e,color:`primary`,autoFocus:!0,children:k.t(`OK`)})})]});o();var Me={triggers:X.bandTriggers,conditions:X.bandConditions,actions:X.bandActions},Ne=({blockValue:e,boolean:t,typeBlock:n,userRules:r,setUserRules:a,animation:o,setTourStep:s,tourStep:c,isTourOpen:u,theme:d,themeType:f,themeName:p})=>{var m;let[h,g]=l(!1),[_,v]=l(!1),[y,b]=l(!1),[x,S]=l(``);t===void 0&&(t=!0);let C=H({accept:`box`,drop:()=>({blockValue:e}),hover:({acceptedBy:e,_id:t},r)=>{g(e===n),b(!!t),S(r.getHandlerId()||``)},canDrop:({acceptedBy:e})=>(v(e===n),e===n),collect:e=>{var t;return{isOver:e.isOver(),canDrop:((t=e.getItem())==null?void 0:t.acceptedBy)===n,offset:e.getClientOffset(),targetId:e.getHandlerId()}}}),{canDrop:w,isOver:T,offset:E,targetId:D}=C[0],k=C[1];i(()=>{S(``)},[E]);let A=w&&T,j=``;A?j=h?`#00fb003d`:`#fb00002e`:w?j=_?`#00fb003d`:`#fb00002e`:E&&(j=D===x?`#fb00002e`:``);let P;return P=n===`actions`?r.actions[e]:n===`conditions`?r.conditions[e]:r.triggers,O(`div`,{ref:e=>{k(e)},style:{backgroundColor:j},className:N.clsx(X.contentBlockItem,t?o&&X.contentHeightOn:X.contentHeightOff),children:M(`div`,{className:X.wrapperMargin,children:[P.map(t=>O(ke,{typeBlock:n,...t,blockValue:e,allProperties:t,userRules:r,setUserRules:a,children:O(_e,{...t,isTourOpen:u,setTourStep:s,tourStep:c,settings:t,blockValue:e,userRules:r,setUserRules:a,theme:d,themeType:f,themeName:p})},t._id)),O(`div`,{style:A&&h&&!y?{height:((m=document.getElementById(`height`))==null?void 0:m.clientHeight)||200}:void 0,className:`${X.emptyBlockStyle} ${A&&h&&!y?X.emptyBlock:X.emptyBlockNone}`})]})})},Pe=({typeBlock:e,name:n,nameAdditionally:r,additionally:o,userRules:s,setUserRules:c,iconName:u,adapter:d,socket:f,setTourStep:p,tourStep:m,isTourOpen:g,theme:v,themeType:y,themeName:b})=>{let[x,C,w]=Se(e!==`actions`&&[],`additionallyClickItems_${e}`),[T,E]=l(!1),[D,A]=l(!1),j=e===`conditions`&&!s.conditions.some(e=>e.length),[P,F]=Se(!0,`foldEmptyConditions`),L=j&&P,[,ee]=H({accept:`box`,hover:({acceptedBy:e})=>{e===`conditions`&&L&&F(!1)}});i(()=>{if(e===`conditions`&&(x==null?void 0:x.length)!==s.conditions.length-1){let e=[];s.conditions.forEach((t,n)=>{n>0&&e.push({_id:Date.now(),open:!0})}),C([...x,...e])}e===`actions`&&!w&&s.actions.else.length&&C(!0)},[]);let[te,z]=l(!1),ne=s.conditions.some(e=>e.length)||!!s.actions.else.length;return M(`div`,{className:`${X.mainBlockItemRules} ${Me[e]}`,children:[M(`span`,{id:`width`,ref:e=>{ee(j?e:null)},className:N.clsx(X.nameBlockItems,j&&X.nameBlockItemsFoldable),onClick:j?()=>F(!P):void 0,title:j?k.t(L?`Show conditions`:`Hide empty conditions`):void 0,children:[O(I,{iconName:u,className:X.iconThemCard,adapter:d,socket:f}),n,j?M(S,{children:[O(L?B:V,{className:X.foldIcon}),L?O(`span`,{className:X.foldHint,children:k.t(`without condition`)}):null]}):null]}),e===`conditions`&&!L?M(`div`,{style:{width:`100%`},children:[M(t,{variant:`standard`,className:X.selectOnChange,value:s.justCheck||!1,onChange:e=>{let t=J(`conditions`,s);t.justCheck=e.target.value===`true`,c(t)},children:[O(a,{value:`false`,children:k.t(`on condition change`)}),O(a,{value:`true`,children:k.t(`just check`)})]}),O(h,{size:`small`,title:k.t(`Explanation`),className:X.selectOnChangeHelp,onClick:()=>E(!0),children:O(R,{className:X.selectOnChangeHelpIcon})})]}):null,L?null:O(Ne,{setTourStep:p,tourStep:m,isTourOpen:g,blockValue:e===`actions`?`then`:e===`conditions`?0:e,typeBlock:e,setUserRules:c,userRules:s,theme:v,themeName:b,themeType:y}),!L&&o&&[...Array(e===`actions`?+!!ne:s.conditions.length-1)].map((t,n)=>{let i=(t=n)=>e===`actions`?!!x:!!x.find((e,n)=>n===t&&e.open);return M(_,{children:[M(`div`,{onClick:()=>{if(e===`actions`)return C(!x),null;let t=JSON.parse(JSON.stringify(x));if(s.conditions[n+1].length)return t[n].open=!t[n].open,C(t),null;t=t.filter((e,t)=>t!==n),C(t),z(n),setTimeout(()=>{z(!1),c({...s,conditions:[...s.conditions.filter((e,t)=>t!==n+1)]})},250)},className:X.blockCardAdd,children:[i()?`-`:`+`,O(`div`,{className:X.cardAdd,children:r})]},n),O(Ne,{blockValue:e===`actions`?`else`:e===`conditions`?n+1:e,typeBlock:e,setUserRules:c,userRules:s,boolean:i(),animation:te===n,theme:v,themeName:b,themeType:y})]},`${n}_block_${e}`)}),!L&&o&&e===`conditions`&&M(`div`,{onClick:()=>{C([...x,{_id:Date.now(),open:!0}]),c({...s,conditions:[...s.conditions,[]]}),z(s.conditions.length-1),setTimeout(()=>z(!1),1e3)},className:X.blockCardAdd,children:[`+`,O(`div`,{className:X.cardAdd,children:r})]}),O(Ae,{open:T,onClose:()=>E(!1)}),O(je,{open:D,onClose:()=>A(!1)})]})},Z={menuRules:`_menuRules_1ijaq_1`,wizardButton:`_wizardButton_1ijaq_13`,switchesRenderWrapper:`_switchesRenderWrapper_1ijaq_26`,menuOff:`_menuOff_1ijaq_35`,menuTitle:`_menuTitle_1ijaq_41`,marginAuto:`_marginAuto_1ijaq_55`,inputWidth:`_inputWidth_1ijaq_60`,menuWrapper:`_menuWrapper_1ijaq_72`,hamburgerWrapper:`_hamburgerWrapper_1ijaq_80`,hamburgerOff:`_hamburgerOff_1ijaq_113`,nothingFound:`_nothingFound_1ijaq_121`,resetSearch:`_resetSearch_1ijaq_128`,controlPanel:`_controlPanel_1ijaq_140`,controlPanelAppBar:`_controlPanelAppBar_1ijaq_164`,tabTriggers:`_tabTriggers_1ijaq_180`,tabConditions:`_tabConditions_1ijaq_184`,tabActions:`_tabActions_1ijaq_188`,addClassMenu:`_addClassMenu_1ijaq_192`,addClassBackground:`_addClassBackground_1ijaq_198`,addClassPosition:`_addClassPosition_1ijaq_202`};o();var Fe=e=>{let{allProperties:t,allProperties:{acceptedBy:n,id:r},setUserRules:i,userRules:a,setTourStep:o,tourStep:s,isTourOpen:c,onTouchMove:l,isActive:u}=e;return O(ke,{allProperties:t,id:t.id,isActive:u,setUserRules:i,userRules:a,children:O(me,{onDoubleClick:()=>{c&&s===U.addScheduleByDoubleClick&&r===`TriggerScheduleBlock`&&o(U.openTagsMenu),c&&s===U.addActionPrintText&&r===`ActionPrintText`&&o(U.showJavascript);let e=Date.now(),t;switch(n){case`actions`:t=`then`;break;case`conditions`:t=a[n].length-1}let l=J(n,a,t),u={id:r,_id:e,acceptedBy:n};t===void 0?l.triggers.push({...u}):n===`actions`?l.actions[t].push({...u}):n===`conditions`&&l.conditions[t].push({...u}),i(l)},...e,...t,onTouchMove:l})})};o();var Ie={triggers:Z.tabTriggers,conditions:Z.tabConditions,actions:Z.tabActions},Le=({addClass:e,setAllBlocks:t,allBlocks:n,userRules:r,onChangeBlocks:a,setTourStep:o,tourStep:c,isTourOpen:l,onStartWizard:u})=>{let{blocks:d,socket:f}=F(W),[m,h]=Se(!1,`hamburgerOnOff`),[g,y]=Se({text:``,type:`triggers`,index:0},`filterControlPanel`),x=(e=g.text,n=g.type)=>{if(!d)return;let r=[...d];r=r.filter(t=>{if(!e)return!0;let{name:n}=t.getStaticData();return n&&k.t(n).toLowerCase().includes(e.toLowerCase())}),r=r.filter(e=>n===e.getStaticData().acceptedBy),t(r)},S=(e,t)=>{l&&t===0&&c===U.selectTriggers&&o(U.addScheduleByDoubleClick),l&&t===2&&c===U.selectActions&&o(U.addActionPrintText),y({...g,index:t,type:[`triggers`,`conditions`,`actions`][t]}),x(g.text,[`triggers`,`conditions`,`actions`][t])},C=e=>({id:`scrollable-force-tab-${e}`,"aria-controls":`scrollable-force-tabpanel-${e}`});return i(()=>{x()},[d]),O(A,{mouseEvent:!1,touchEvent:`onTouchStart`,onClickAway:()=>h(!0),children:M(`div`,{className:N.clsx(Z.menuWrapper,e[1035]&&Z.addClassMenu),children:[O(`div`,{className:`${Z.hamburgerWrapper} ${m?Z.hamburgerOff:null}`,onClick:()=>h(!m),children:O(m?B:ce,{})}),M(`div`,{className:`${N.clsx(Z.menuRules,Ie[g.type],e[1035]&&Z.addClassBackground,e[835]&&Z.addClassPosition)} ${m?Z.menuOff:null}`,children:[O(b,{className:Z.wizardButton,fullWidth:!0,size:`small`,variant:`outlined`,startIcon:O(se,{}),onClick:u,children:k.t(`Wizard`)}),O(`div`,{className:Z.controlPanel,children:O(p,{className:Z.controlPanelAppBar,position:`static`,children:M(v,{value:g.index,onChange:S,children:[O(s,{className:N.clsx(`blocks-triggers`,Z.tabTriggers),title:k.t(`Triggers`),icon:O(I,{iconName:`FlashOn`}),...C(0)}),O(s,{title:k.t(`Conditions`),className:N.clsx(`blocks-conditions`,Z.tabConditions),icon:O(I,{iconName:`Help`}),...C(1)}),O(s,{title:k.t(`Actions`),className:N.clsx(`blocks-actions`,Z.tabActions),icon:O(I,{iconName:`PlayForWork`}),...C(2)})]})})}),O(`div`,{className:Z.switchesRenderWrapper,children:M(`span`,{children:[n.map(e=>{let{name:t,id:n,icon:i,adapter:s}=e.getStaticData();return O(_,{children:O(Fe,{adapter:s,allProperties:e.getStaticData(),icon:i,id:n,isActive:!1,isTourOpen:l,name:t,onTouchMove:()=>h(!0),setTourStep:o,setUserRules:a,socket:f,tourStep:c,userRules:r})},n)}),!n.length&&M(`div`,{className:Z.nothingFound,children:[k.t(`Nothing found`),`...`,O(`div`,{className:Z.resetSearch,onClick:()=>{y({...g,text:``}),x(``)},children:k.t(`reset search`)})]})]})}),O(`div`,{className:N.clsx(Z.menuTitle,Z.marginAuto)}),O(z,{className:Z.inputWidth,fullWidth:!0,customValue:!0,value:g.text,size:`small`,autoComplete:`off`,label:k.t(`search`),variant:`outlined`,onChange:e=>{y({...g,text:e}),x(e)}})]})]})})},Q={bandTriggers:`_bandTriggers_91vrz_5`,bandConditions:`_bandConditions_91vrz_9`,bandActions:`_bandActions_91vrz_13`,paper:`_paper_91vrz_17`,title:`_title_91vrz_22`,close:`_close_91vrz_29`,content:`_content_91vrz_35`,stepper:`_stepper_91vrz_40`,step:`_step_91vrz_40`,hint:`_hint_91vrz_56`,warning:`_warning_91vrz_61`,blockCard:`_blockCard_91vrz_68`,blockBody:`_blockBody_91vrz_79`,remove:`_remove_91vrz_86`,notFound:`_notFound_91vrz_93`,chooser:`_chooser_91vrz_99`,choice:`_choice_91vrz_105`,choiceIcon:`_choiceIcon_91vrz_128`,choiceName:`_choiceName_91vrz_136`,addMore:`_addMore_91vrz_144`,summaryBand:`_summaryBand_91vrz_150`,summaryLabel:`_summaryLabel_91vrz_156`,preview:`_preview_91vrz_164`,actions:`_actions_91vrz_169`,spacer:`_spacer_91vrz_173`};o();var $=[`triggers`,`conditions`,`actions`],Re={triggers:`Triggers`,conditions:`Conditions`,actions:`Actions`},ze={triggers:`What should start the rule?`,conditions:`When should the rule run? This step is optional.`,actions:`What should happen?`},Be={triggers:`when`,conditions:`and`,actions:`then`},Ve={triggers:Q.bandTriggers,conditions:Q.bandConditions,actions:Q.bandActions},He=()=>({triggers:[],conditions:[],actions:[]}),Ue=({onCreate:e,onClose:t,hasRule:n,socket:r,theme:i,themeType:a,themeName:o})=>{let{blocks:s}=F(W),[p,g]=l(0),[_,v]=l(He),[y,S]=l(null),C=T(0),A=E(()=>{let e={triggers:[],conditions:[],actions:[]};return s==null||s.forEach(t=>{var n;let{acceptedBy:r}=t.getStaticData();(n=e[r])==null||n.push(t)}),e},[s]),L=E(()=>({triggers:_.triggers,conditions:_.conditions.length?[_.conditions]:[[]],justCheck:!1,actions:{then:_.actions,else:[]}}),[_]),ee=(e,t)=>{C.current+=1,v(n=>({...n,[e]:[...n[e],{id:t,_id:C.current,acceptedBy:e}]})),S(null)},te=(e,t)=>v(n=>({...n,[e]:n[e].filter(e=>e._id!==t)})),R=(e,t,n)=>v(r=>({...r,[e]:r[e].map(r=>r._id===t?{...n,_id:t,id:r.id,acceptedBy:e}:r)})),z=(e,t,n)=>{let c=s==null?void 0:s.find(t=>t.getStaticData().id===e.id);return c?O(c,{_id:e._id,settings:e,acceptedBy:t,onChange:n?()=>{}:n=>R(t,e._id,n),socket:r,theme:i,themeType:a,themeName:o,enableSimulation:!1,userRules:L,onUpdate:!1,setOnUpdate:()=>{}}):O(`div`,{className:Q.notFound,children:k.t(`Block not found`)})},B=e=>O(`div`,{className:Q.chooser,children:A[e].map(t=>{let{id:n,name:i,icon:a,adapter:o,title:s}=t.getStaticData();return M(`button`,{type:`button`,className:Q.choice,title:s?k.t(s):void 0,onClick:()=>ee(e,n),children:[O(I,{iconName:a,adapter:o,socket:r,className:Q.choiceIcon}),O(`span`,{className:Q.choiceName,children:k.t(i)})]},n)})}),V=(e,t)=>M(`div`,{className:Q.step,hidden:p!==t,children:[O(`div`,{className:Q.hint,children:k.t(ze[e])}),_[e].map(t=>M(`div`,{className:N.clsx(Q.blockCard,Ve[e]),children:[O(`div`,{className:Q.blockBody,children:z(t,e)}),O(h,{className:Q.remove,size:`small`,title:k.t(`Delete`),onClick:()=>te(e,t._id),children:O(le,{fontSize:`small`})})]},t._id)),y===e||!_[e].length?B(e):O(b,{className:Q.addMore,startIcon:O(u,{}),onClick:()=>S(e),children:k.t(`Add another`)})]},e),ne=()=>M(`div`,{className:Q.step,children:[$.map(e=>_[e].length?M(`div`,{className:Q.summaryBand,children:[O(`div`,{className:N.clsx(Q.summaryLabel,Ve[e]),children:k.t(Be[e])}),_[e].map(t=>O(`div`,{className:N.clsx(Q.blockCard,Q.preview,Ve[e]),children:O(`div`,{className:Q.blockBody,children:z(t,e,!0)})},t._id))]},e):null),_.conditions.length?null:O(`div`,{className:Q.hint,children:k.t(`Without a condition the rule always runs`)}),n?O(`div`,{className:Q.warning,children:k.t(`The current rule will be replaced`)}):null]}),re=p===$.length,H=re||p===1||!!_[$[p]].length;return M(x,{open:!0,fullWidth:!0,maxWidth:`md`,onClose:t,classes:{paper:Q.paper},children:[M(w,{className:Q.title,children:[k.t(`Create a rule step by step`),O(h,{className:Q.close,size:`small`,title:k.t(`Close`),onClick:t,children:O(f,{})})]}),M(j,{className:Q.content,children:[M(m,{className:Q.stepper,activeStep:p,children:[$.map(e=>O(c,{children:O(d,{children:k.t(Re[e])})},e)),O(c,{children:O(d,{children:k.t(`Summary`)})})]}),$.map(V),re?ne():null]}),M(D,{className:Q.actions,children:[O(b,{disabled:!p,startIcon:O(ue,{}),onClick:()=>g(p-1),children:k.t(`Back`)}),O(`div`,{className:Q.spacer}),O(b,{onClick:t,children:k.t(`Cancel`)}),re?O(b,{variant:`contained`,color:`primary`,onClick:()=>{e(L),t()},children:k.t(n?`Replace rule`:`Create rule`)}):O(b,{variant:`contained`,color:`primary`,disabled:!H,endIcon:O(P,{}),onClick:()=>g(p+1),children:k.t(p===1&&!_.conditions.length?`Skip`:`Next`)})]})]})};o();var We=[],Ge=({code:e,onChange:t,themeName:a,themeType:o,theme:s,setTourStep:c,tourStep:u,isTourOpen:d,command:f,scriptId:p,changed:m,running:h,newRuleId:g,onNewRuleHandled:_})=>{var v;let{blocks:y,loadBlocks:x,socket:S,setOnUpdate:C,setOnDebugMessage:w,setEnableSimulation:E}=F(W),[D,A]=l([]),[j,N]=l(te(e)),[P,I]=l(``),[L,R]=l(!1),[z,B]=l(!1);i(()=>{let e,t,n=(n,r)=>{n===`${e}.alive`&&t!==(r==null?void 0:r.val)&&(t=!!(r!=null&&r.val),t&&e&&(S==null||S.sendTo(e.replace(/^system\.adapter\./,``),`rulesOn`,p)))},r=(r,i)=>{var a;if(S&&e!==(i==null||(a=i.common)==null?void 0:a.engine)){var o;e&&(S.unsubscribeState(`${e}.alive`,n),t&&S.sendTo(e.replace(/^system\.adapter\./,``),`rulesOn`,p)),e=i==null||(o=i.common)==null?void 0:o.engine,e&&e&&S.subscribeState(`${e}.alive`,n)}},i=(e,t)=>{if(t)try{let e=JSON.parse(t.val),n=Date.now();if(e.ruleId===p&&n-e.ts<1e3){let t=[...We,{blockId:e.blockId,data:e.data,ts:e.ts}];t.length>200&&t.splice(0,t.length-200);for(let e=t.length-1;e>=0;e--)if(t[e].ts<n-5e3){t.splice(0,e);break}We=t,w(t)}}catch{console.error(`Cannot parse: ${t.val}`)}};return S==null||S.getObject(p).then(t=>{var a;e=t==null||(a=t.common)==null?void 0:a.engine,S.subscribeObject(p,r),e&&(S.subscribeState(`${e}.alive`,n),S.subscribeState(`${e.replace(/^system\.adapter\./,``)}.debug.rules`,i))}),function(){S==null||S.unsubscribeObject(p,r),e&&(S==null||S.unsubscribeState(`${e}.alive`,n),t&&(S==null||S.sendTo(e.replace(/^system\.adapter\./,``),`rulesOff`,p)),S==null||S.unsubscribeState(`${e.replace(/^system\.adapter\./,``)}.debug.rules`,i))}},[]),i(()=>x(),[x]),i(()=>{E(!m&&h)},[m,h,E]),i(()=>{f&&(I(f),L||R(!0))},[f]),i(()=>{let t=te(e);JSON.stringify(t)!==JSON.stringify(j)&&(N(t),C(!0))},[e]),i(()=>{document.getElementsByTagName(`HTML`)[0].className=a||`blue`},[a]),i(()=>{g&&g===p&&(_(),B(!0))},[g,p,_]);let V=n(e=>{N(e),y&&t(ee(e,y))},[y,t]),H=T(null),[ie,U]=l({835:!1,1035:!1});if(i(()=>{H.current&&(H.current.clientWidth<=1035&&U({835:!1,1035:!0}),H.current.clientWidth<=835&&U({1035:!0,835:!0}),H.current.clientWidth>1035&&U({835:!1,1035:!1}))},[((v=H.current)==null?void 0:v.clientWidth)||0]),!S)return null;if(!y)return O(r,{});let ae=!j.triggers.length&&!j.actions.then.length&&!j.actions.else.length&&!j.conditions.some(e=>e.length);return M(`div`,{className:K.wrapperRules,ref:H,children:[O(xe,{allBlocks:D,socket:S}),L?P===`export`?O(ne,{scriptId:p,themeType:o,onClose:()=>R(!1),text:JSON.stringify(j,null,2)}):O(re,{themeType:o,onClose:e=>{R(!1),e&&V(JSON.parse(e))}}):null,z?O(Ue,{hasRule:!ae,socket:S,theme:s,themeType:o,themeName:a,onCreate:V,onClose:()=>B(!1)}):null,M(`div`,{className:K.rootWrapper,children:[O(Le,{setAllBlocks:A,allBlocks:D,userRules:j,onChangeBlocks:V,setTourStep:c,tourStep:u,addClass:ie,isTourOpen:d,onStartWizard:()=>B(!0)}),M(`div`,{className:K.bands,children:[ae?M(`div`,{className:K.emptyRule,children:[O(`div`,{className:K.emptyRuleText,children:k.t(`Create a rule step by step`)}),O(b,{variant:`contained`,color:`primary`,startIcon:O(se,{}),onClick:()=>B(!0),children:k.t(`Wizard`)})]}):null,O(Pe,{socket:S,setUserRules:V,userRules:j,isTourOpen:d,setTourStep:c,tourStep:u,name:`${k.t(`when`)}...`,typeBlock:`triggers`,iconName:`FlashOn`,themeType:o,themeName:a,theme:s}),O(Pe,{socket:S,setUserRules:V,isTourOpen:d,setTourStep:c,tourStep:u,userRules:j,name:`...${k.t(`and`)}...`,typeBlock:`conditions`,iconName:`Help`,nameAdditionally:k.t(`or`),additionally:!0,themeType:o,themeName:a,theme:s}),O(Pe,{socket:S,setUserRules:V,isTourOpen:d,setTourStep:c,tourStep:u,userRules:j,name:`...${k.t(`then`)}`,typeBlock:`actions`,iconName:`PlayForWork`,nameAdditionally:k.t(`else`),additionally:!0,themeType:o,themeName:a,theme:s})]})]})]},`rulesEditor`)};export{Ge as default};
@@ -0,0 +1,2 @@
1
+ import{Ir as e,Yt as t,Zt as n,cn as r,fn as i,gt as a,jt as o,ln as s,lr as c,m as l,pr as u,un as d,ur as f}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";import{t as p}from"./ScriptEditorVanillaMonaco-DbOlv3vi.js";e();var m={textArea:{width:`calc(100% - 10px)`,resize:`none`},dialog:{height:`95%`},fullHeight:{height:`100%`,overflow:`hidden`},args:e=>({color:e.palette.mode===`dark`?`white`:`black`,height:30,width:`100%`,fontSize:16}),argsTitle:e=>({color:e.palette.mode===`dark`?`white`:`black`,fontWeight:`bold`})},h=class extends u.Component{constructor(e){super(e),this.state={changed:!1,source:!e.source&&e.isReturn?`
2
+ return false`:e.source}}componentDidMount(){setTimeout(()=>{try{var e;(e=window.document.getElementById(`source-text-area`))==null||e.focus()}catch{}},100)}handleCancel(){this.props.onClose(!1)}handleOk(){(!this.props.isReturn||this.state.source.includes(`return `))&&this.props.onClose(this.state.source)}onChange(e){this.setState({changed:!0,source:e})}render(){return f(r,{onClose:()=>!1,maxWidth:`lg`,sx:{"& .MuiDialog-paper":m.dialog},fullWidth:!0,open:!0,"aria-labelledby":`source-dialog-title`,children:[c(i,{id:`source-dialog-title`,children:l.t(`Function editor`)}),f(d,{style:m.fullHeight,children:[this.props.args&&f(t,{sx:m.args,children:[c(t,{component:`span`,sx:m.argsTitle,children:l.t(`function (`)}),this.props.args,c(t,{component:`span`,sx:m.argsTitle,children:`)`})]},`arguments`),c(p,{triggerPrettier:1,adapterName:this.props.adapterName,runningInstances:this.props.runningInstances,style:{...m.textArea,height:this.props.args?`calc(100% - 30px)`:`100%`},name:`blockly`,socket:this.props.socket,readOnly:!1,checkJs:!1,changed:this.state.changed,code:this.state.source,isDark:this.props.themeType===`dark`,onChange:e=>this.onChange(e),language:`javascript`},`scriptEditor`)]}),f(s,{children:[c(n,{variant:`contained`,onClick:()=>this.handleOk(),color:`primary`,startIcon:c(a,{}),children:l.t(`Save`)}),c(n,{color:`grey`,variant:`contained`,onClick:()=>this.handleCancel(),startIcon:c(o,{}),children:l.t(`Cancel`)})]})]})}};export{h as default};
@@ -0,0 +1,3 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./stateHoverProvider-BfhQov29.js","./cronHoverProvider-CZrYrB2m.js","./AiInlineProvider-CslJGmO0.js","./AiChatService-h1EHSXaR.js","./index-_7Mh4AxK.js","./index-BHhhebRG.css","./inlineDiffController-VazWO1wi.js","./applyCodeEdit-D3nb7erO.js","./inlineChatWidget-BfjarD99.js"])))=>i.map(i=>d[i]);
2
+ import{r as e}from"./rolldown-runtime-C0FnF6B9.js";import{B as t,Dn as n,Ir as r,N as i,Sn as a,Wn as o,Zt as s,cn as c,fn as l,hn as u,ln as d,lr as f,m as p,pr as m,sr as h,un as g,ur as _}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";import{t as v}from"./vite-preload-helper-BbbETgeG.js";import{a as y,n as b,r as x}from"./index-_7Mh4AxK.js";import{n as S,t as C}from"./loadMonaco-BVOEahNw.js";var w=e({default:()=>O});r();function T(e){return/^script\.js\.global\./.test(e)}var E=0;function D(e){return e.replace(/\x1b\[[0-9;]*m/g,``)}var O=class extends m.Component{get monacoTS(){var e;return(e=this.monaco)==null||(e=e.languages)==null?void 0:e.typescript}constructor(e){super(e),h(this,`monacoDiv`,null),h(this,`editor`,null),h(this,`monaco`,C()),h(this,`insert`,``),h(this,`originalCode`,void 0),h(this,`runningInstancesStr`,void 0),h(this,`unmounted`,!1),h(this,`location`,void 0),h(this,`breakpoints`,void 0),h(this,`lastSearch`,``),h(this,`typings`,{}),h(this,`decorations`,[]),h(this,`datapointProviderDisposable`,null),h(this,`inlineProviderDisposable`,null),h(this,`stateHoverDisposable`,null),h(this,`showStateValueDisposable`,null),h(this,`cronHoverDisposable`,null),h(this,`codeLensDisposable`,null),h(this,`aiHelpersUnsubscribe`,null),h(this,`inlineChatWidgetInstance`,null),h(this,`inlineDiffInstance`,null),h(this,`inlineDiffCssInjected`,!1),h(this,`triggerPrettier`,void 0),h(this,`contentChangeDisposable`,null),h(this,`mouseDownDisposable`,null),this.state={name:`current`,isDark:e.isDark||!1,language:e.language||`javascript`,readOnly:e.readOnly||!1,alive:!0,check:!1,searchText:this.props.searchText||``,typingsLoaded:!1,showError:null},this.triggerPrettier=e.triggerPrettier,this.runningInstancesStr=JSON.stringify(this.props.runningInstances),this.originalCode=e.code||``,this.monacoDiv=m.createRef()}loadTypings(e){if(!this.editor)return;e||=this.props.runningInstances;let t=e&&Object.keys(e).find(t=>e==null?void 0:e[t]);t&&this.props.socket.sendTo(t.replace(`system.adapter.`,``),`loadTypings`,null).then(e=>{this.setState({alive:!0,check:!0,typingsLoaded:!0}),this.setTypeCheck(!0),e.typings?(this.typings=e.typings,this.setEditorTypings(this.state.name)):console.error(`failed to load typings: ${e.error}`)})}componentDidMount(){if(this.undo,this.redo,this.showInlineDiff,this.getEditorSelection,this.getEditorContent,this.setEditorContent,this.getCursorPosition,this.getWordAtCursor,this.highlightLineRange,this.goToLine,this.replaceSelection,this.getDiagnostics,this.getDocumentSymbols,this.monaco){this.initEditor();return}S().then(e=>{this.unmounted||(this.monaco=e,this.forceUpdate(()=>this.initEditor()))}).catch(e=>{console.error(`Cannot load the code editor: ${e}`),this.unmounted||this.setState({showError:{title:p.t(`Cannot load the code editor`),message:String(e)}})})}initEditor(){var e;if(!this.editor&&(e=this.monacoTS)!=null&&e.typescriptDefaults&&this.monaco){var t,n,r;console.log(`Init editor`),(t=(n=this.props).onRegisterSelect)==null||t.call(n,()=>{if(this.editor){let t=this.editor.getSelection();if(t){var e;return(e=this.editor.getModel())==null?void 0:e.getValueInRange(t)}}});let e=this.monacoTS.typescriptDefaults.getCompilerOptions();if(e.allowJs=!0,e.checkJs=this.props.checkJs!==!1,e.noLib=!0,e.lib=[],e.useUnknownInCatchVariables=!1,e.moduleResolution=this.monacoTS.ModuleResolutionKind.NodeJs,e.target=this.monacoTS.ScriptTarget.ESNext,e.module=this.monacoTS.ModuleKind.ESNext,e.allowNonTsExtensions=!0,this.monacoTS.typescriptDefaults.setCompilerOptions(e),this.setTypeCheck(!1),(r=this.monacoDiv)!=null&&r.current){var i;this.editor=this.monaco.editor.create((i=this.monacoDiv)==null?void 0:i.current,{lineNumbers:`on`,scrollBeyondLastLine:!1,automaticLayout:!0,glyphMargin:!!this.props.breakpoints,colorDecorators:!0,hover:{enabled:`on`,delay:200,sticky:!0},fixedOverflowWidgets:!0}),this.contentChangeDisposable=this.editor.onDidChangeModelContent(()=>this.onChange()),this.monaco&&!this.datapointProviderDisposable&&v(async()=>{let{registerDatapointProvider:e}=await import(`./AiDatapointProvider-DzFpUKkT.js`);return{registerDatapointProvider:e}},[],import.meta.url).then(({registerDatapointProvider:e})=>{this.monaco&&(this.datapointProviderDisposable=e(this.monaco,this.props.socket))}).catch(()=>{}),this.monaco&&!this.showStateValueDisposable&&v(async()=>{let{registerShowStateValueAction:e}=await import(`./stateHoverProvider-BfhQov29.js`);return{registerShowStateValueAction:e}},__vite__mapDeps([0]),import.meta.url).then(({registerShowStateValueAction:e})=>{this.monaco&&this.editor&&!this.showStateValueDisposable&&(this.showStateValueDisposable=e(this.editor,this.monaco,p.t(`Show ioBroker state value`)))}).catch(()=>{}),this.registerAiHelpers(),this.aiHelpersUnsubscribe=x(e=>{e?this.registerAiHelpers():this.disposeAiHelpers()}),this.loadTypings(),this.props.onForceSave&&this.editor.addCommand(this.monaco.KeyMod.CtrlCmd|this.monaco.KeyCode.KeyS,()=>this.props.onForceSave&&this.props.onForceSave()),this.registerAiActions(),setTimeout(()=>{this.highlightText(this.state.searchText),this.location=this.props.location||void 0,this.breakpoints=this.props.breakpoints,this.showDecorators()})}}let a={selectOnLineNumbers:!0,scrollBeyondLastLine:!1,automaticLayout:!0,readOnly:this.state.readOnly,language:this.state.language,isDark:this.state.isDark};this.setEditorOptions(a),this.editor&&(this.editor.focus(),this.editor.setValue(this.originalCode),this.props.onToggleBreakpoint&&(this.mouseDownDisposable=this.editor.onMouseDown(e=>{var t;let n=e.target;this.props.onToggleBreakpoint&&((t=n.detail)==null?void 0:t.glyphMarginLeft)!==void 0&&n.position&&this.props.onToggleBreakpoint(n.position.lineNumber-1)})))}setEditorOptions(e){if(e&&(e.language&&this.setEditorLanguage(e.language),this.editor&&(e.readOnly!==void 0&&this.editor.updateOptions({readOnly:e.readOnly}),e.lineWrap!==void 0&&this.editor.updateOptions({wordWrap:e.lineWrap?`on`:`off`})),e.typeCheck!==void 0&&this.setTypeCheck(e.typeCheck),e.isDark!==void 0)){var t;(t=this.monaco)==null||t.editor.setTheme(e.isDark?`vs-dark`:`vs`)}}registerAiHelpers(){b()&&this.monaco&&this.editor&&(this.stateHoverDisposable||v(async()=>{let{registerStateHoverProvider:e}=await import(`./stateHoverProvider-BfhQov29.js`);return{registerStateHoverProvider:e}},__vite__mapDeps([0]),import.meta.url).then(({registerStateHoverProvider:e})=>{this.monaco&&b()&&!this.stateHoverDisposable&&(this.stateHoverDisposable=e(this.monaco,this.props.socket))}).catch(()=>{}),this.cronHoverDisposable||v(async()=>{let{registerCronHoverProvider:e}=await import(`./cronHoverProvider-CZrYrB2m.js`);return{registerCronHoverProvider:e}},__vite__mapDeps([1]),import.meta.url).then(({registerCronHoverProvider:e})=>{this.monaco&&b()&&!this.cronHoverDisposable&&(this.cronHoverDisposable=e(this.monaco))}).catch(()=>{}),this.props.aiCompletionsEnabled&&!this.inlineProviderDisposable&&v(async()=>{let{registerAiInlineProvider:e}=await import(`./AiInlineProvider-CslJGmO0.js`);return{registerAiInlineProvider:e}},__vite__mapDeps([2,3]),import.meta.url).then(({registerAiInlineProvider:e})=>{this.monaco&&b()&&!this.inlineProviderDisposable&&(this.inlineProviderDisposable=e(this.monaco,this.props.socket,this.props.runningInstances))}).catch(()=>{}),this.props.onAiAction&&!this.codeLensDisposable&&v(async()=>{let{registerAiCodeLensProvider:e}=await import(`./index-_7Mh4AxK.js`).then(e=>e.i);return{registerAiCodeLensProvider:e}},__vite__mapDeps([4,5]),import.meta.url).then(({registerAiCodeLensProvider:e})=>{this.monaco&&this.editor&&this.props.onAiAction&&b()&&!this.codeLensDisposable&&(this.codeLensDisposable=e(this.monaco,this.editor,(e,t,n,r,i)=>{var a,o,s;let c=(a=this.editor)==null?void 0:a.getModel(),l=c?c.getLineMaxColumn(Math.min(i,c.getLineCount())):1;(o=(s=this.props).onAiAction)==null||o.call(s,{action:e,code:t,rangeLabel:n,range:{startLine:r,startColumn:1,endLine:i,endColumn:l},kind:`codelens`})}))}).catch(()=>{}))}disposeAiHelpers(){var e,t,n,r;(e=this.stateHoverDisposable)==null||e.dispose(),this.stateHoverDisposable=null,(t=this.cronHoverDisposable)==null||t.dispose(),this.cronHoverDisposable=null,(n=this.inlineProviderDisposable)==null||n.dispose(),this.inlineProviderDisposable=null,(r=this.codeLensDisposable)==null||r.dispose(),this.codeLensDisposable=null}componentWillUnmount(){var e,t,n,r,i,a,o,s,c,l;if(this.unmounted=!0,(e=this.contentChangeDisposable)==null||e.dispose(),this.contentChangeDisposable=null,(t=this.mouseDownDisposable)==null||t.dispose(),this.mouseDownDisposable=null,(n=this.datapointProviderDisposable)==null||n.dispose(),this.datapointProviderDisposable=null,v(async()=>{let{clearDatapointCache:e}=await import(`./AiDatapointProvider-DzFpUKkT.js`);return{clearDatapointCache:e}},[],import.meta.url).then(({clearDatapointCache:e})=>e()).catch(()=>{}),(r=this.inlineProviderDisposable)==null||r.dispose(),this.inlineProviderDisposable=null,(i=this.stateHoverDisposable)==null||i.dispose(),this.stateHoverDisposable=null,(a=this.showStateValueDisposable)==null||a.dispose(),this.showStateValueDisposable=null,v(async()=>{let{clearStateHoverCache:e}=await import(`./stateHoverProvider-BfhQov29.js`);return{clearStateHoverCache:e}},__vite__mapDeps([0]),import.meta.url).then(({clearStateHoverCache:e})=>e()).catch(()=>{}),(o=this.cronHoverDisposable)==null||o.dispose(),this.cronHoverDisposable=null,(s=this.codeLensDisposable)==null||s.dispose(),this.codeLensDisposable=null,(c=this.aiHelpersUnsubscribe)==null||c.call(this),this.aiHelpersUnsubscribe=null,(l=this.inlineChatWidgetInstance)==null||l.dispose(),this.inlineChatWidgetInstance=null,this.hideInlineDiff(),this.editor){var u,d;(u=(d=this.props).onRegisterSelect)==null||u.call(d,null),this.editor.dispose(),this.editor=null}}async doPrettier(){var e;let t=this.props.runningInstances&&Object.keys(this.props.runningInstances).find(e=>{var t;return(t=this.props.runningInstances)==null?void 0:t[e]});if(!t){window.alert(p.t(`No script adapter instance found to format the code`));return}let n=await this.props.socket.sendTo(t.replace(`system.adapter.`,``),`prettier`,{code:(e=this.editor)==null?void 0:e.getValue(),type:this.state.language});if(n.error)this.setState({showError:{title:p.t(`Error formatting code`),message:D(n.error)}});else if(n.code){var r,i,a;(r=this.editor)==null||r.setValue(n.code),(i=(a=this.props).onChange)==null||i.call(a,n.code),this.showDecorators()}}setEditorLanguage(e){if(!this.editor)return;let t=this.editor.getModel();if(t){var n;let i=t.getValue(),a=t.uri.path,o=typeof a==`string`&&a.includes(`.`)?a.substring(0,a.lastIndexOf(`.`)):`index`,s=e===`javascript`?`js`:e===`typescript`?`ts`:e;t.dispose();let c=e===`javascript`||e===`typescript`?`typescript`:e,l=(n=this.monaco)==null?void 0:n.editor.createModel(i,c,this.monaco.Uri.from({scheme:window.location.protocol.replace(`:`,``),path:`${o}${E++}.${s}`}));if(l){var r;this.editor.setModel(l),(r=this.contentChangeDisposable)==null||r.dispose(),this.contentChangeDisposable=this.editor.onDidChangeModelContent(()=>this.onChange())}}}setTypeCheck(e){var t,n;let r={noSemanticValidation:!this.state.alive||!e,noSyntaxValidation:!this.state.alive};(t=this.monacoTS)==null||t.typescriptDefaults.setDiagnosticsOptions(r),(n=this.monacoTS)==null||n.javascriptDefaults.setDiagnosticsOptions({noSemanticValidation:!this.state.alive||!e,noSyntaxValidation:!this.state.alive})}setEditorTypings(e=``){var t,n;let r=T(e),i=`${e}.d.ts`,a=[];for(let e of Object.keys(this.typings))r&&(e===`global.d.ts`||e.startsWith(`script.js.global`)&&e!==i)||a.push({filePath:e,content:this.typings[e]});if((t=this.monacoTS)!=null&&(t=t.typescriptDefaults)!=null&&t.setExtraLibs)this.monacoTS.typescriptDefaults.setExtraLibs(a);else if((n=this.monacoTS)!=null&&(n=n.typescriptDefaults)!=null&&n.addExtraLib){let e=this.monacoTS.typescriptDefaults.getExtraLibs();a.forEach(t=>{!e[t.filePath]&&this.monaco&&this.monacoTS.typescriptDefaults.addExtraLib(t.content,t.filePath)})}}undo(){var e;(e=this.editor)==null||e.trigger(`toolbar`,`undo`,null)}redo(){var e;(e=this.editor)==null||e.trigger(`toolbar`,`redo`,null)}insertTextIntoEditor(e){if(!this.editor||!this.monaco)return;let t=this.editor.getSelection();if(t){let n=new this.monaco.Range(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn);this.editor.executeEdits(``,[{range:n,text:e,forceMoveMarkers:!0}])}this.editor.focus()}highlightText(e){var t;if(!this.editor||!this.monaco)return 0;let n=e?(t=this.editor.getModel())==null?void 0:t.findMatches(e,!0,!1,!1,null,!0):void 0;if(n!=null&&n.length)return n.forEach(e=>{var t;return(t=this.editor)==null?void 0:t.setSelection(e.range)}),this.editor.revealLine(n[0].range.startLineNumber),n.length;let r=this.editor.getPosition();if(r){let e=r.lineNumber,t=r.column;this.editor.setSelection(new this.monaco.Range(e,t,e,t))}return 0}showInlineDiff(e){if(!this.editor||!this.monaco)return;let t=this.editor,n=this.monaco;this.hideInlineDiff(),v(async()=>{let{InlineDiffController:e,INLINE_DIFF_CSS:t}=await import(`./inlineDiffController-VazWO1wi.js`);return{InlineDiffController:e,INLINE_DIFF_CSS:t}},__vite__mapDeps([6,7]),import.meta.url).then(({InlineDiffController:r,INLINE_DIFF_CSS:i})=>{if(!this.inlineDiffCssInjected){let e=document.createElement(`style`);e.textContent=i,e.setAttribute(`data-iob-aichat`,`inline-diff`),document.head.appendChild(e),this.inlineDiffCssInjected=!0}let a=new r(t,n,{range:e.range,originalText:e.originalText,modifiedText:e.modifiedText,onAccepted:()=>{var t;this.inlineDiffInstance=null,(t=e.onAccepted)==null||t.call(e)},onRejected:()=>{var t;this.inlineDiffInstance=null,(t=e.onRejected)==null||t.call(e)}});this.inlineDiffInstance=a,a.show()}).catch(()=>{})}hideInlineDiff(){if(this.inlineDiffInstance){try{this.inlineDiffInstance.dispose()}catch{}this.inlineDiffInstance=null}}showInlineChatWidget(){if(!this.editor||!this.monaco||!this.props.onInlineAsk)return;if(this.inlineChatWidgetInstance){this.inlineChatWidgetInstance.show();return}let e=this.editor,t=this.monaco,n=this.props.onInlineAsk,r=this.props.onAiAction;v(async()=>{let{InlineChatWidget:e}=await import(`./inlineChatWidget-BfjarD99.js`);return{InlineChatWidget:e}},__vite__mapDeps([8,7]),import.meta.url).then(({InlineChatWidget:i})=>{let a=new i(e,t,{onSubmit:async e=>n({question:e.question,selectedCode:e.selectedCode}),onEscalateToChat:e=>{r&&r({action:`ask`,code:e.selectedCode,question:e.question,rangeLabel:e.range?`lines ${e.range.startLineNumber}-${e.range.endLineNumber}`:`whole file`})}});this.inlineChatWidgetInstance=a,a.show()}).catch(()=>{})}registerAiActions(){if(!this.editor||!this.monaco||!this.props.onAiAction)return;let e=this.monaco,t=(t,n={})=>{if(!this.editor||!this.props.onAiAction)return;let r=this.editor.getModel();if(!r)return;let i=this.editor.getSelection(),a=i&&!i.isEmpty(),o,s,c,l=`selection`;if(a)o=r.getValueInRange(i),s=i.startLineNumber===i.endLineNumber?`line ${i.startLineNumber}`:`lines ${i.startLineNumber}-${i.endLineNumber}`,c={startLine:i.startLineNumber,startColumn:i.startColumn,endLine:i.endLineNumber,endColumn:i.endColumn},l=`selection`;else{let t=this.editor.getPosition(),n=null;if(t)try{n=y(r.getValue(),t.lineNumber)}catch{}if(n){let t=n.startLine,i=n.endLine,a=r.getLineMaxColumn(i),u=new e.Range(t,1,i,a);o=r.getValueInRange(u),s=t===i?`line ${t}`:`lines ${t}-${i}`,c={startLine:t,startColumn:1,endLine:i,endColumn:a},l=`codelens`}else o=r.getValue(),s=`whole file`,l=`none`}this.props.onAiAction({action:t,code:o,rangeLabel:s,range:c,kind:l,...n})},n=[{id:`iobroker.ai.inline`,label:`🤖 ${p.t(`AI: Inline chat…`)}`,keybindings:[e.KeyMod.CtrlCmd|e.KeyMod.Alt|e.KeyCode.KeyI],order:1,run:()=>{if(this.props.onInlineAsk)this.showInlineChatWidget();else{let e=window.prompt(p.t(`Ask the AI about the selected code:`));e&&e.trim()&&t(`ask`,{question:e.trim()})}}},{id:`iobroker.ai.explain`,label:`💡 ${p.t(`AI: Explain`)}`,keybindings:[e.KeyMod.CtrlCmd|e.KeyMod.Alt|e.KeyCode.KeyE],order:2,run:()=>t(`explain`)},{id:`iobroker.ai.refactor`,label:`🔧 ${p.t(`AI: Refactor`)}`,keybindings:[e.KeyMod.CtrlCmd|e.KeyMod.Alt|e.KeyCode.KeyR],order:3,run:()=>t(`refactor`)},{id:`iobroker.ai.comment`,label:`💬 ${p.t(`AI: Add comments`)}`,keybindings:[e.KeyMod.CtrlCmd|e.KeyMod.Alt|e.KeyCode.KeyC],order:4,run:()=>t(`comment`)},{id:`iobroker.ai.fix`,label:`🛠️ ${p.t(`AI: Fix problem`)}`,keybindings:[e.KeyMod.CtrlCmd|e.KeyMod.Alt|e.KeyCode.KeyF],order:5,run:()=>{let n;try{var r,i;let t=(r=this.editor)==null?void 0:r.getModel(),a=(i=this.editor)==null?void 0:i.getPosition();if(t&&a){let r=e.editor.getModelMarkers({resource:t.uri}).find(e=>a.lineNumber>=e.startLineNumber&&a.lineNumber<=e.endLineNumber);r&&(n=r.message)}}catch{}t(`fix`,{diagnostic:n})}},{id:`iobroker.ai.tests`,label:`✅ ${p.t(`AI: Suggest tests`)}`,order:6,run:()=>t(`tests`)}];for(let e of n)try{this.editor.addAction({id:e.id,label:e.label,contextMenuGroupId:`aichat`,contextMenuOrder:e.order,keybindings:e.keybindings,run:()=>e.run()})}catch{}}getEditorSelection(){if(!this.editor)return null;let e=this.editor.getSelection();if(!e||e.isEmpty())return null;let t=this.editor.getModel();return t?{text:t.getValueInRange(e),range:{startLine:e.startLineNumber,startColumn:e.startColumn,endLine:e.endLineNumber,endColumn:e.endColumn}}:null}getEditorContent(){var e;return((e=this.editor)==null||(e=e.getModel())==null?void 0:e.getValue())??``}setEditorContent(e){var t;let n=(t=this.editor)==null?void 0:t.getModel();this.editor&&n&&(this.editor.pushUndoStop(),this.editor.executeEdits(`iobroker-set-content`,[{range:n.getFullModelRange(),text:e,forceMoveMarkers:!0}]),this.editor.pushUndoStop())}getWordAtCursor(){var e,t,n;let r=(e=this.editor)==null?void 0:e.getModel(),i=(t=this.editor)==null?void 0:t.getSelection();if(!r||!i)return null;if(!i.isEmpty()){let e=r.getValueInRange(i).trim();return/^[A-Za-z_$][\w$]*$/.test(e)?e:null}return((n=r.getWordAtPosition(i.getPosition()))==null?void 0:n.word)??null}getCursorPosition(){var e;let t=(e=this.editor)==null?void 0:e.getPosition();return t?{line:t.lineNumber,column:t.column}:null}highlightLineRange(e,t){if(!this.editor||!this.monaco)return!1;let n=this.editor.getModel();if(!n)return!1;let r=n.getLineCount(),i=Math.max(1,Math.min(e,r)),a=Math.max(i,Math.min(t,r)),o=n.getLineMaxColumn(a);return this.editor.setSelection(new this.monaco.Range(i,1,a,o)),this.editor.revealLineInCenter(i),!0}goToLine(e,t=1){if(!this.editor||!this.monaco)return!1;let n=this.editor.getModel();if(!n)return!1;let r=n.getLineCount(),i=Math.max(1,Math.min(e,r));return this.editor.setPosition({lineNumber:i,column:t}),this.editor.revealLineInCenter(i),this.editor.focus(),!0}replaceSelection(e){if(!this.editor||!this.monaco)return!1;let t=this.editor.getSelection();if(!t)return!1;let n=new this.monaco.Range(t.startLineNumber,t.startColumn,t.endLineNumber,t.endColumn);return this.editor.executeEdits(``,[{range:n,text:e,forceMoveMarkers:!0}]),this.editor.focus(),!0}getDiagnostics(){if(!this.editor||!this.monaco)return[];let e=this.editor.getModel();if(!e)return[];let t=this.monaco.editor.getModelMarkers({resource:e.uri}),n={8:`error`,4:`warning`,2:`info`,1:`hint`};return t.map(e=>({line:e.startLineNumber,column:e.startColumn,endLine:e.endLineNumber,endColumn:e.endColumn,severity:n[e.severity]||`info`,message:e.message,...e.source?{source:e.source}:{}}))}async getDocumentSymbols(){if(!this.editor||!this.monaco)return[];let e=this.editor.getModel();if(!e)return[];let t=[];try{var n;let r=this.monaco.languages,i=(n=r.getDocumentSymbolProviders)==null?void 0:n.call(r,e);if(i!=null&&i.length){let n={0:`file`,1:`module`,2:`namespace`,3:`package`,4:`class`,5:`method`,6:`property`,7:`field`,8:`constructor`,9:`enum`,10:`interface`,11:`function`,12:`variable`,13:`constant`,14:`string`,15:`number`,16:`boolean`,17:`array`,18:`object`,19:`key`,20:`null`,21:`enum-member`,22:`struct`,23:`event`,24:`operator`,25:`type-parameter`};for(let r of i){let i=await r.provideDocumentSymbols(e,{isCancellationRequested:!1});if(!i)continue;let a=e=>{for(let i of e){var r;t.push({name:i.name,kind:n[i.kind]||String(i.kind),line:i.range.startLineNumber,endLine:i.range.endLineNumber,...i.detail?{detail:i.detail}:{}}),(r=i.children)!=null&&r.length&&a(i.children)}};if(a(i),t.length)break}}}catch{}if(t.length===0){let n=e.getValue().split(`
3
+ `),r=[{re:/^(?:export\s+)?(?:async\s+)?function\s+(\w+)/,kind:`function`},{re:/^(?:export\s+)?class\s+(\w+)/,kind:`class`},{re:/^(?:export\s+)?(?:const|let|var)\s+(\w+)/,kind:`variable`}];for(let e=0;e<n.length;e++){let i=n[e].trim();for(let{re:n,kind:a}of r){let r=n.exec(i);if(r!=null&&r[1]){t.push({name:r[1],kind:a,line:e+1,endLine:e+1});break}}}}return t}showDecorators(){var e;let t=[];if(this.location&&this.monaco&&(t.push({range:new this.monaco.Range(this.location.lineNumber+1,(this.location.columnNumber||0)+1,this.location.lineNumber+1,1e3),options:{isWholeLine:!1,className:this.props.isDark?`monacoCurrentLineDark`:`monacoCurrentLine`}}),t.push({range:new this.monaco.Range(this.location.lineNumber+1,0,this.location.lineNumber+1,0),options:{isWholeLine:!0,className:this.props.isDark?`monacoCurrentFullLineDark`:`monacoCurrentFullLine`}})),(e=this.breakpoints)==null||e.forEach(e=>{this.monaco&&t.push({range:new this.monaco.Range(e.location.lineNumber+1,0,e.location.lineNumber+1,100),options:{isWholeLine:!0,glyphMarginClassName:this.props.isDark?`monacoBreakPointDark`:`monacoBreakPoint`}})}),this.editor){let e=this.editor.getModel();e&&(this.decorations=e.deltaDecorations(this.decorations,t))}}initNewScript(e,t){var n;this.setState({name:e}),this.originalCode=t||``,(n=this.editor)==null||n.setValue(t||``),this.highlightText(this.lastSearch),this.showDecorators(),this.setEditorTypings(e)}scrollToLineIfNeeded(e){if(this.editor){let t=this.editor.getVisibleRanges();(!t||!t[0]||t[0].startLineNumber>e||e>t[0].endLineNumber)&&this.editor.revealLineInCenter(e)}}UNSAFE_componentWillReceiveProps(e){let t={};this.state.name!==e.name&&this.initNewScript(e.name,e.code),JSON.stringify(e.runningInstances)!==this.runningInstancesStr&&(this.runningInstancesStr=JSON.stringify(e.runningInstances),this.state.typingsLoaded||this.loadTypings(e.runningInstances)),this.editor?!e.changed&&(e.code!==this.originalCode||e.code!==this.editor.getValue())&&(this.originalCode=e.code||``,this.editor.setValue(this.originalCode),this.showDecorators(),this.location&&this.scrollToLineIfNeeded(this.location.lineNumber+1)):this.originalCode=e.code||``,e.searchText!==this.lastSearch&&(this.lastSearch=e.searchText||``,this.highlightText(this.lastSearch)),JSON.stringify(e.location)!==JSON.stringify(this.location)&&JSON.stringify(e.breakpoints)!==JSON.stringify(this.breakpoints)?(this.location=e.location||void 0,this.breakpoints=e.breakpoints,this.showDecorators(),this.editor&&this.location&&this.scrollToLineIfNeeded(this.location.lineNumber+1)):JSON.stringify(e.breakpoints)===JSON.stringify(this.breakpoints)?JSON.stringify(e.location)!==JSON.stringify(this.location)&&(this.location=e.location||void 0,this.showDecorators(),this.editor&&this.location&&this.scrollToLineIfNeeded(this.location.lineNumber+1)):(this.breakpoints=e.breakpoints,this.showDecorators()),this.state.language===(e.language||`javascript`)?this.state.readOnly===(e.readOnly||!1)?this.state.isDark!==(e.isDark||!1)&&(this.setState({isDark:e.isDark||!1}),t.isDark=e.isDark):(this.setState({readOnly:e.readOnly||!1}),t.readOnly=e.readOnly):(this.setState({language:e.language||`javascript`}),t.language=e.language||`javascript`),this.setEditorOptions(t),e.aiCompletionsEnabled!==this.props.aiCompletionsEnabled&&(e.aiCompletionsEnabled&&this.monaco&&b()?this.inlineProviderDisposable||v(async()=>{let{registerAiInlineProvider:e}=await import(`./AiInlineProvider-CslJGmO0.js`);return{registerAiInlineProvider:e}},__vite__mapDeps([2,3]),import.meta.url).then(({registerAiInlineProvider:e})=>{this.monaco&&b()&&!this.inlineProviderDisposable&&(this.inlineProviderDisposable=e(this.monaco,this.props.socket,this.props.runningInstances))}).catch(()=>{}):!e.aiCompletionsEnabled&&this.inlineProviderDisposable&&(this.inlineProviderDisposable.dispose(),this.inlineProviderDisposable=null)),this.insert!==e.insert&&(this.insert=e.insert||``,this.insert&&(console.log(`Insert text: ${this.insert}`),setTimeout(e=>{this.insertTextIntoEditor(e),setTimeout(()=>this.props.onInserted&&this.props.onInserted(),100)},100,this.insert)))}onChange(){if(!this.props.readOnly&&this.editor){var e,t;(e=(t=this.props).onChange)==null||e.call(t,this.editor.getValue())}}renderErrorDialog(){return this.state.showError?this.state.showError.full?_(c,{open:!0,maxWidth:`md`,onClose:()=>this.setState({showError:null}),children:[f(l,{children:this.state.showError.title||p.t(`Error`)}),f(g,{children:f(`pre`,{children:f(`code`,{children:this.state.showError.message})})}),f(d,{children:_(s,{variant:`contained`,startIcon:f(i,{}),onClick:()=>this.setState({showError:null}),children:[p.t(`Close`),` `]})})]}):f(o,{open:!0,autoHideDuration:5e3,onClose:()=>this.setState({showError:null}),message:this.state.showError.title,action:_(m.Fragment,{children:[f(s,{color:`secondary`,size:`small`,onClick:()=>this.setState({showError:{...this.state.showError,full:!0}}),children:p.t(`More`)}),f(a,{size:`small`,"aria-label":`close`,color:`inherit`,onClick:()=>this.setState({showError:null}),children:f(i,{fontSize:`small`})})]})}):null}render(){var e;return!((e=this.monacoTS)!=null&&e.typescriptDefaults)||!this.props.runningInstances?this.state.showError?this.renderErrorDialog():f(n,{}):(this.props.triggerPrettier!==this.triggerPrettier&&(this.triggerPrettier=this.props.triggerPrettier,setTimeout(()=>this.doPrettier().catch(e=>console.error(`Error formatting code:`,e)),50)),_(`div`,{ref:this.monacoDiv,style:{...this.props.style,width:`100%`,height:`100%`,overflow:`hidden`,position:`relative`},children:[this.renderErrorDialog(),!this.state.check&&f(u,{size:`small`,title:p.t(`Check is not active, because javascript adapter is disabled`),style:{bottom:10,right:10,opacity:.5,position:`absolute`,zIndex:1,background:`red`,color:`white`},color:`secondary`,children:f(t,{})})]}))}};export{w as n,O as t};
@@ -0,0 +1 @@
1
+ import{Xn as e,lr as t}from"./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js";var n=e(t(`path`,{d:`M2.01 21 23 12 2.01 3 2 10l15 2-15 2z`}),`Send`);export{n as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./vite-preload-helper-BbbETgeG.js";import"./dist-CSJEdwl2.js";var t=e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.getPrototypeOf(e);if(n!==null&&n!==Object.prototype)break;let r=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(r.length>0&&r.some(e=>e!==void 0))break;t=e}return t},n=(e,t,n,r)=>{var i,a;let o=(i=globalThis.__mf_module_cache__)==null?void 0:i.share,s=t.map(e=>o==null?void 0:o[e]).find(e=>e!==void 0),c=e=>{let t=String(e||``).split(/[^0-9]+/).map(Number),r=String(n||``).split(/[^0-9]+/).map(Number);for(let e=0;e<Math.max(t.length,r.length);e++){if((t[e]||0)<(r[e]||0))return!0;if((t[e]||0)>(r[e]||0))return!1}return!1};if(!c((s==null?void 0:s.version)??(s==null||(a=s.default)==null?void 0:a.version)))for(let t of e){var l,u;let e=o==null?void 0:o[t];if(e===void 0)continue;let n=(e==null?void 0:e.version)??(e==null||(l=e.default)==null?void 0:l.version);if(!(n!==void 0&&c(n))&&(!r||typeof(e==null?void 0:e[r])==`function`||typeof(e==null||(u=e.default)==null?void 0:u[r])==`function`))return e}},r={react:async()=>await e(()=>import(`./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js`).then(e=>(e.Rr(),e.Lr)),[],import.meta.url),"react/jsx-runtime":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js`).then(e=>e.dr),[],import.meta.url),"react-dom":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js`).then(e=>e.Yn),[],import.meta.url),"react-dom/client":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-BCLgOrQh.js`).then(e=>e.n),[],import.meta.url),"prop-types":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js`).then(e=>e.ar),[],import.meta.url),"@mui/material":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js`).then(e=>e.qn),[],import.meta.url),"@iobroker/gui-components":async()=>await e(()=>import(`./_virtual_mf___mfe_internal__iobroker_javascript__mf_owner__57338878793567__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-8WiAnp-r.js`).then(e=>e.b),[],import.meta.url)},i={react:{name:`react`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`iobroker_javascript`,canLiveRebind:!0,get(){let e=i.react;return e.lib?e.lib:(e.loading||=(async()=>{try{let{react:n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"react/jsx-runtime":{name:`react/jsx-runtime`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`iobroker_javascript`,canLiveRebind:!0,get(){let e=i[`react/jsx-runtime`];if(e.lib)return e.lib;if(e.loading)return e.loading;let a=n([`default:react/jsx-runtime`,`react/jsx-runtime`],[`default:react`,`react`],`19.3.0`,void 0);return a===void 0?(e.loading=(async()=>{try{let{"react/jsx-runtime":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading):(e.lib=function(){return a},e.loaded=!0,e.lib)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"react-dom":{name:`react-dom`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`iobroker_javascript`,canLiveRebind:!0,get(){let e=i[`react-dom`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"react-dom":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"react-dom/client":{name:`react-dom/client`,version:`19.3.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`iobroker_javascript`,canLiveRebind:!0,get(){let e=i[`react-dom/client`];if(e.lib)return e.lib;if(e.loading)return e.loading;let a=n([`default:react-dom/client`,`react-dom/client`,`default:react-dom`,`react-dom`],[`default:react`,`react`],`19.3.0`,`createRoot`);return a===void 0?(e.loading=(async()=>{try{let{"react-dom/client":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading):(e.lib=function(){return a},e.loaded=!0,e.lib)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"prop-types":{name:`prop-types`,version:`15.8.1`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`iobroker_javascript`,canLiveRebind:!0,get(){let e=i[`prop-types`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"prop-types":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"@mui/material":{name:`@mui/material`,version:`9.5.0`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`iobroker_javascript`,canLiveRebind:!0,get(){let e=i[`@mui/material`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"@mui/material":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}},"@iobroker/gui-components":{name:`@iobroker/gui-components`,version:`10.3.9`,scope:[`default`],loaded:!1,materialize:!0,eager:!1,from:`iobroker_javascript`,canLiveRebind:!0,get(){let e=i[`@iobroker/gui-components`];return e.lib?e.lib:(e.loading||=(async()=>{try{let{"@iobroker/gui-components":n}=r,i=t({...await n()});return i.__esModule!==!0&&Object.defineProperty(i,"__esModule",{value:!0,enumerable:!1}),e.lib=function(){return i},e.loaded=!0,e.lib}finally{e.loading=void 0}})(),e.loading)},shareConfig:{singleton:!0,requiredVersion:`*`,strictVersion:!1,eager:!1}}},a=[];export{a as usedRemotes,i as usedShared};