@camera.ui/server 2.0.18 → 2.0.19

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 (143) hide show
  1. package/dist/interface/assets/{404-hjvRJoie.js → 404-CG23ZpFv.js} +1 -1
  2. package/dist/interface/assets/{About-CXK9lps9.js → About-Dawv7dKP.js} +1 -1
  3. package/dist/interface/assets/{Adminpanel-D1bsiC_B.js → Adminpanel-529Hf8yC.js} +1 -1
  4. package/dist/interface/assets/{Automation-BE-lA9i2.js → Automation-BaF8MdrF.js} +3 -3
  5. package/dist/interface/assets/{AutomationImport-B1Wsf3O1.js → AutomationImport-CXXYinR0.js} +2 -2
  6. package/dist/interface/assets/{AutomationStore-BUmTKbR8.js → AutomationStore-DOdwMUIP.js} +2 -2
  7. package/dist/interface/assets/{AutomationStoreDetail-DfENt4wG.js → AutomationStoreDetail-CkNGHRNU.js} +2 -2
  8. package/dist/interface/assets/{Automations-3SibYydl.js → Automations-sO0qi27q.js} +2 -2
  9. package/dist/interface/assets/Camera-DW__aloL.js +2 -0
  10. package/dist/interface/assets/{CameraConsole-D_1E2i7a.js → CameraConsole-D06gEm91.js} +1 -1
  11. package/dist/interface/assets/{Cameras-Co54hUIY.js → Cameras-BNBi1F0q.js} +1 -1
  12. package/dist/interface/assets/Camview-Djtm5hEO.js +1 -0
  13. package/dist/interface/assets/{Config-CZ3qg4V7.js → Config-DioQs8yK.js} +1 -1
  14. package/dist/interface/assets/{ConfigActionCameraControl-BkP4KpkL.js → ConfigActionCameraControl-4E0E0_fY.js} +1 -1
  15. package/dist/interface/assets/{ConfigActionDelay-CW3x89X3.js → ConfigActionDelay-Cjmjm7gn.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionHttp-CqRThGAM.js → ConfigActionHttp-W-_LXPpQ.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionImageInput-D-wCYFc9.js → ConfigActionImageInput-D20ulIj4.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionMqtt-50Oit6xb.js → ConfigActionMqtt-PGVLgx6J.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionNotification-CV4TZpsD.js → ConfigActionNotification-DtE9vlwt.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionOutput-DDCdD_nG.js → ConfigActionOutput-Cb0Ik5Lg.js} +1 -1
  21. package/dist/interface/assets/{ConfigActionPlugin-3BiyEJsy.js → ConfigActionPlugin-DeXj_Qku.js} +1 -1
  22. package/dist/interface/assets/{ConfigActionSensor-kkHOn3aC.js → ConfigActionSensor-DH03MD04.js} +1 -1
  23. package/dist/interface/assets/{ConfigActionSnapshot-O4nan24K.js → ConfigActionSnapshot-bEiIuVkE.js} +1 -1
  24. package/dist/interface/assets/{ConfigActionVariable-Ci3wXMYZ.js → ConfigActionVariable-6xpPwfGg.js} +1 -1
  25. package/dist/interface/assets/{ConfigConditionIfElse-CPzw54yv.js → ConfigConditionIfElse-CnUdhYBw.js} +1 -1
  26. package/dist/interface/assets/{ConfigConditionSensorState-DcV8-3Tj.js → ConfigConditionSensorState-Cpod48bM.js} +1 -1
  27. package/dist/interface/assets/{ConfigConditionSwitch-b0ikuhC6.js → ConfigConditionSwitch-CrcDpdeO.js} +1 -1
  28. package/dist/interface/assets/{ConfigConditionTime-q7GYSoQk.js → ConfigConditionTime-BK18wRIR.js} +1 -1
  29. package/dist/interface/assets/{ConfigSensorValueInput-Ba_ZC14J.js → ConfigSensorValueInput-BDJSe4AD.js} +1 -1
  30. package/dist/interface/assets/{ConfigTriggerDetection-CF-C3A-0.js → ConfigTriggerDetection-CLY_l8WB.js} +1 -1
  31. package/dist/interface/assets/{ConfigTriggerGeofence-CW5W3lot.js → ConfigTriggerGeofence-CAHirXSm.js} +1 -1
  32. package/dist/interface/assets/{ConfigTriggerManual-B7UGIwE2.js → ConfigTriggerManual-BifyCaS9.js} +1 -1
  33. package/dist/interface/assets/{ConfigTriggerMqtt-DL1MIwBs.js → ConfigTriggerMqtt-DVxJJ1Ii.js} +1 -1
  34. package/dist/interface/assets/{ConfigTriggerSchedule-DCUXevkw.js → ConfigTriggerSchedule-C5apVQ3A.js} +1 -1
  35. package/dist/interface/assets/{ConfigTriggerSensor-DRX68f5E.js → ConfigTriggerSensor-CtU2-Ebe.js} +1 -1
  36. package/dist/interface/assets/{ConfigTriggerSystem-BOt8AI3a.js → ConfigTriggerSystem-P_hogQ3_.js} +1 -1
  37. package/dist/interface/assets/{ConfigTriggerWebhook-CFeWElXX.js → ConfigTriggerWebhook-D4lYvM7m.js} +1 -1
  38. package/dist/interface/assets/{Console-Cxs29skk.js → Console-DgwnUKDQ.js} +1 -1
  39. package/dist/interface/assets/{CuiAutomationRunsDialog-yXyj7vrL.js → CuiAutomationRunsDialog-D8DfgOlE.js} +1 -1
  40. package/dist/interface/assets/{CuiBottomSheet-SnWWgn5I.js → CuiBottomSheet-BzKu50hx.js} +1 -1
  41. package/dist/interface/assets/CuiBottomSheet-d46jCJeG.js +1 -0
  42. package/dist/interface/assets/{CuiCameraPipCard-BmmyPCOP.js → CuiCameraPipCard-RB60OEgF.js} +1 -1
  43. package/dist/interface/assets/CuiCameraRecordings-DSeBoMKj.js +1 -0
  44. package/dist/interface/assets/{CuiCameraShares-BE9d09pX.js → CuiCameraShares-8Mo2XwFD.js} +1 -1
  45. package/dist/interface/assets/{CuiCameraTable-TiUZNpga.js → CuiCameraTable-MjJctqrJ.js} +1 -1
  46. package/dist/interface/assets/{CuiDataTable-DqtFJKC6.js → CuiDataTable-DQRKmdcE.js} +1 -1
  47. package/dist/interface/assets/{CuiPluginCard-C8eDXMRg.js → CuiPluginCard-4NsvwvgQ.js} +2 -2
  48. package/dist/interface/assets/{CuiPluginCategoryChip-BX0xg3py.js → CuiPluginCategoryChip-AsMNaK01.js} +1 -1
  49. package/dist/interface/assets/{CuiPluginOAuthButton-DZS31TnY.js → CuiPluginOAuthButton-7mwBhBzg.js} +2 -2
  50. package/dist/interface/assets/{CuiPluginTrustBadge-rZePqROi.js → CuiPluginTrustBadge-tIqjoCDz.js} +1 -1
  51. package/dist/interface/assets/{CuiQRCode-BqMd2Oh6.js → CuiQRCode-l-PLLptq.js} +1 -1
  52. package/dist/interface/assets/{CuiRecordingsGrid-Dkpe799a.js → CuiRecordingsGrid-BeOP2hpR.js} +1 -1
  53. package/dist/interface/assets/{CuiSchema-J_b00DYu.js → CuiSchema-TojDO40O.js} +1 -1
  54. package/dist/interface/assets/{CuiTopNavbarItem-CXxnNN1s.js → CuiTopNavbarItem-BhUA2MiU.js} +1 -1
  55. package/dist/interface/assets/{Faces-CaGWFf-y.js → Faces-DW0RFypU.js} +1 -1
  56. package/dist/interface/assets/FirstSteps-BgNqGgK1.js +1 -0
  57. package/dist/interface/assets/{Instances-BD727wNP.js → Instances-Cllek48f.js} +1 -1
  58. package/dist/interface/assets/{Logs-DK8-ilEl.js → Logs-ic15Mp_h.js} +1 -1
  59. package/dist/interface/assets/{Menu-Cn0dBf4v.js → Menu-By6NRK44.js} +1 -1
  60. package/dist/interface/assets/{OAuthDeviceFlow-C6aER-P5.js → OAuthDeviceFlow-BpeJI0ad.js} +1 -1
  61. package/dist/interface/assets/{Plugin-Cq_hIp8V.js → Plugin-B_ANQppI.js} +1 -1
  62. package/dist/interface/assets/{PluginConsole-cQBNvsGp.js → PluginConsole-BaPz9Ag3.js} +1 -1
  63. package/dist/interface/assets/{PluginDetail-9-jofn3X.js → PluginDetail-j7srfPSY.js} +2 -2
  64. package/dist/interface/assets/{PluginSchema-DhNpD_HM.js → PluginSchema-Cb_F8uew.js} +1 -1
  65. package/dist/interface/assets/{PluginSearch-CYEjSopJ.js → PluginSearch-C4JY7Iwj.js} +2 -2
  66. package/dist/interface/assets/PluginSearch-CTAtKAK4.js +1 -0
  67. package/dist/interface/assets/{Plugins-YyemYjP4.js → Plugins-RVhaBdkA.js} +1 -1
  68. package/dist/interface/assets/Recordings-frQ3fb5P.js +1 -0
  69. package/dist/interface/assets/{Settings-CDH3BeuL.js → Settings-DQgp2tgH.js} +1 -1
  70. package/dist/interface/assets/{SettingsAccount-CycVwV2K.js → SettingsAccount-BhCf1XAp.js} +1 -1
  71. package/dist/interface/assets/SettingsAccount-BhseUwL4.js +1 -0
  72. package/dist/interface/assets/SettingsAppearance--SabFiHj.js +1 -0
  73. package/dist/interface/assets/{SettingsAppearance-BnuFyX8o.js → SettingsAppearance-YNXseOYk.js} +1 -1
  74. package/dist/interface/assets/{SettingsBackup-CBF2IQN_.js → SettingsBackup-DIWxITfi.js} +1 -1
  75. package/dist/interface/assets/{SettingsMqtt-CChS0s5J.js → SettingsMqtt-Bf23ZOH-.js} +1 -1
  76. package/dist/interface/assets/{SettingsNotifications-D-2v9oM8.js → SettingsNotifications-Dv9Fixz_.js} +1 -1
  77. package/dist/interface/assets/{SettingsRecordings-Ui2Xd5Ye.js → SettingsRecordings-Dxdxayym.js} +1 -1
  78. package/dist/interface/assets/{SettingsRemote-D2nKjVHR.js → SettingsRemote-CGMwCx4y.js} +1 -1
  79. package/dist/interface/assets/{SettingsSystem-C1vJGmFo.js → SettingsSystem-ZHz6-3eN.js} +2 -2
  80. package/dist/interface/assets/{SettingsUsers-DTFIKS6H.js → SettingsUsers-Dxj65vMx.js} +1 -1
  81. package/dist/interface/assets/{Terminal-DDsjIhe7.js → Terminal-DFGD9NeS.js} +1 -1
  82. package/dist/interface/assets/{VariableInput-BEjTv8xz.js → VariableInput-Br6YY5HX.js} +1 -1
  83. package/dist/interface/assets/{VariableSuggestions-DcgHR-OY.js → VariableSuggestions-D898dM5K.js} +1 -1
  84. package/dist/interface/assets/{VersionsHandler-DrVcvut6.js → VersionsHandler-J51M6nHE.js} +1 -1
  85. package/dist/interface/assets/{Workers-xyas5_sn.js → Workers-BHibnYvL.js} +1 -1
  86. package/dist/interface/assets/{api-CdJDEL3z.js → api-BwUGcpse.js} +2 -2
  87. package/dist/interface/assets/{api-B1n4M73U.js → api-CkxuZ9lw.js} +1 -1
  88. package/dist/interface/assets/{auth-DOnr6Mc1.js → auth-Dgn4npDp.js} +1 -1
  89. package/dist/interface/assets/{automations-B-tYtR3y.js → automations-Dab1-eSY.js} +1 -1
  90. package/dist/interface/assets/{cameras.schema-C-xz1hwq.js → cameras.schema-CwGkDyzk.js} +1 -1
  91. package/dist/interface/assets/cloudHandoff-CpMzGP4H.js +1 -0
  92. package/dist/interface/assets/{config-CYmKCSzU.js → config-BYU9LRQr.js} +1 -1
  93. package/dist/interface/assets/{flowSchema-CsPTDyH8.js → flowSchema-BuhMrSRP.js} +1 -1
  94. package/dist/interface/assets/{main-DILs_jYV.js → main-DvYnQiyf.js} +3 -3
  95. package/dist/interface/assets/{mqtt-BrTLJ_eM.js → mqtt-Bj9HWVr-.js} +1 -1
  96. package/dist/interface/assets/{notifications-Dt6ygmRP.js → notifications-B2GVNEL7.js} +1 -1
  97. package/dist/interface/assets/{plugins-BcJnIPJC.js → plugins-Ct1tFRqH.js} +1 -1
  98. package/dist/interface/assets/{round-restart-alt-B6N0m8oC.js → round-restart-alt-COgLKyfG.js} +1 -1
  99. package/dist/interface/assets/{server-_ByAktOF.js → server-CmHQA2OF.js} +1 -1
  100. package/dist/interface/assets/{theme-CORL_-pn.js → theme-BdlqMboH.js} +1 -1
  101. package/dist/interface/assets/{types-CGqXKLKp.js → types-Du61QgCF.js} +1 -1
  102. package/dist/interface/assets/{types-DDSlYw6n.js → types-o57RMLy1.js} +1 -1
  103. package/dist/interface/assets/{useAppVersion-CWa09Ql5.js → useAppVersion-GqkuhLFI.js} +1 -1
  104. package/dist/interface/assets/useBackupRestore-xqzQKAfT.js +1 -0
  105. package/dist/interface/assets/{useCameraOptions-L0smaaZz.js → useCameraOptions-CAu9scRL.js} +1 -1
  106. package/dist/interface/assets/{useLogsSocket-DQSgBMsw.js → useLogsSocket-B_EbSIOU.js} +1 -1
  107. package/dist/interface/assets/{useServerRestart-lPp2ZiX-.js → useServerRestart-CZj3Y0Gh.js} +1 -1
  108. package/dist/interface/assets/{useStreamStatus-BroqI_Eh.js → useStreamStatus-B12LRLX9.js} +1 -1
  109. package/dist/interface/assets/{useUserOptions-BB451w9I.js → useUserOptions-BycuHkS6.js} +1 -1
  110. package/dist/interface/assets/{vendor-cameraui-Bq-hQsT7.js → vendor-cameraui-CywDBRLD.js} +16 -16
  111. package/dist/interface/assets/{vendor-core-CoiYJRqo.js → vendor-core-0Lu3l40a.js} +1 -1
  112. package/dist/interface/assets/{vendor-primevue-B3sIO6X2.js → vendor-primevue-Cm1rEh62.js} +1 -1
  113. package/dist/interface/index.html +18 -18
  114. package/dist/interface/sw.js +1 -1
  115. package/dist/server/package.json +7 -4
  116. package/dist/server/src/api/controllers/backup.controller.js +1 -0
  117. package/dist/server/src/api/controllers/backup.controller.js.map +1 -1
  118. package/dist/server/src/api/database/selfcheck.js +5 -3
  119. package/dist/server/src/api/database/selfcheck.js.map +1 -1
  120. package/dist/server/src/camera/controller.d.ts +1 -1
  121. package/dist/server/src/camera/controller.js +13 -15
  122. package/dist/server/src/camera/controller.js.map +1 -1
  123. package/dist/server/src/camera/decoder/detection-coordinator.js +20 -8
  124. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  125. package/dist/server/src/main.js +3 -5
  126. package/dist/server/src/main.js.map +1 -1
  127. package/dist/server/src/rpc/interfaces/device.d.ts +1 -1
  128. package/dist/server/src/types.d.ts +1 -0
  129. package/dist/server/src/utils/ipc.d.ts +3 -0
  130. package/dist/server/src/utils/ipc.js +33 -0
  131. package/dist/server/src/utils/ipc.js.map +1 -1
  132. package/package.json +7 -4
  133. package/dist/interface/assets/Camera-ByUigyg3.js +0 -2
  134. package/dist/interface/assets/Camview-D83wwTUB.js +0 -1
  135. package/dist/interface/assets/CuiBottomSheet-DVzVzs8p.js +0 -1
  136. package/dist/interface/assets/CuiCameraRecordings-DLfMPUOL.js +0 -1
  137. package/dist/interface/assets/FirstSteps-fOhI977X.js +0 -1
  138. package/dist/interface/assets/PluginSearch-Cy8JvNJD.js +0 -1
  139. package/dist/interface/assets/Recordings-Cwns8Zzj.js +0 -1
  140. package/dist/interface/assets/SettingsAccount-BoWR0DKm.js +0 -1
  141. package/dist/interface/assets/SettingsAppearance-DHSpEmup.js +0 -1
  142. package/dist/interface/assets/cloudHandoff-zt3rCB3J.js +0 -1
  143. package/dist/interface/assets/useBackupRestore-5tZ-awcr.js +0 -1
@@ -1,4 +1,4 @@
1
- import{Ot as e,Pt as t,St as n,Ur as r,Yr as i,hi as a,kr as o}from"./vendor-cameraui-Bq-hQsT7.js";import{Yn as s,an as c,nn as l,p as u,pn as d,z as f}from"./api-CdJDEL3z.js";import{An as p,Bn as m,In as h,Ln as ee,Qn as g,Rn as _,Sr as v,Tr as y,Wn as b,Xn as te,an as x,bn as S,dn as C,dr as w,fn as T,gr as E,in as D,kn as O,ln as k,lr as A,nn as j,nr as M,pn as N,pr as P,tr as F,un as I,vn as L,wr as R,xr as z,yr as ne}from"./vendor-CdGy-Xet.js";import{p as B}from"./vendor-core-CoiYJRqo.js";import{o as re}from"./vendor-primevue-B3sIO6X2.js";import{a as V,i as H,n as U,r as ie,t as W}from"./vendor-xterm-IIYDrBG1.js";import{t as ae}from"./back-filled-DZmo9cAg.js";import{t as G}from"./settings-wRDwvjf-.js";import{n as K,t as oe}from"./zoom-in-2i20zd_d.js";import{n as se,t as ce}from"./CuiTopNavbarItem-CXxnNN1s.js";import{t as le}from"./trash-2-upauF9j0.js";var q={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function ue(e,t){return _(),N(`svg`,q,[...t[0]||=[I(`path`,{fill:`currentColor`,d:`M18 28A12 12 0 1 0 6 16v6.2l-3.6-3.6L1 20l6 6l6-6l-1.4-1.4L8 22.2V16a10 10 0 1 1 10 10Z`},null,-1)]])}var de=A({name:`carbon-reset`,render:ue}),J={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function Y(e,t){return _(),N(`svg`,J,[...t[0]||=[I(`path`,{fill:`currentColor`,d:`M17 15V8h-2v7H8v2h7v7h2v-7h7v-2z`},null,-1)]])}var fe=A({name:`carbon-add`,render:Y}),pe=l(S({__name:`CuiTerminal`,props:{autoConnect:{type:Boolean,default:!0},cwd:{},shell:{},options:{default:()=>({fontSize:14})},inputTransform:{}},emits:[`connected`,`disconnected`,`error`],setup(e,{expose:t,emit:i}){let o=e,s=i,{isConnected:c,isConnecting:l,isClientConnected:u,error:d,connect:f,write:m,resize:v,close:y}=n(),{options:b}=ne(o),x={fontSize:14,scrollback:5e3,allowTransparency:!1,disableStdin:!1,cursorBlink:!0,allowProposedApi:!0,theme:{background:`#000000`}},S={"\x1B[A":`\x1BOA`,"\x1B[B":`\x1BOB`,"\x1B[C":`\x1BOC`,"\x1B[D":`\x1BOD`,"\x1B[H":`\x1BOH`,"\x1B[F":`\x1BOF`},C=te(`terminalContainerRef`),w=E(null),T=null,D=null,O=null,k=null,A=r(C);function j(e){c.value&&m(o.inputTransform?o.inputTransform(e):e)}function M(e){w.value&&w.value.write(e)}function P(){if(!(!w.value||!T))try{T.fit()}catch{}}function F(){P(),c.value&&w.value&&v({cols:w.value.cols,rows:w.value.rows})}function I(){w.value&&p(()=>{P(),w.value&&(w.value.refresh(0,w.value.rows-1),w.value.focus())})}let L=a(F,100);function R(e){if(e)try{e.dispose()}catch{}}function z(){C.value&&(w.value=new W({...x,...b.value}),T=new V,k=new U,D=new H,O=new ie,w.value.loadAddon(D),w.value.loadAddon(O),w.value.loadAddon(k),w.value.loadAddon(T),w.value.open(C.value),w.value.onData(j),w.value.onResize(({cols:e,rows:t})=>{c.value&&v({cols:e,rows:t})}),k.onContextLoss(()=>{R(k),k=null}),F())}async function B(){w.value&&await f({cols:w.value.cols,rows:w.value.rows,cwd:o.cwd,shell:o.shell,onData:M,onClose:()=>{w.value?.write(`\r
1
+ import{Ot as e,Pt as t,St as n,Ur as r,Yr as i,hi as a,kr as o}from"./vendor-cameraui-CywDBRLD.js";import{Yn as s,an as c,nn as l,p as u,pn as d,z as f}from"./api-BwUGcpse.js";import{An as p,Bn as m,In as h,Ln as ee,Qn as g,Rn as _,Sr as v,Tr as y,Wn as b,Xn as te,an as x,bn as S,dn as C,dr as w,fn as T,gr as E,in as D,kn as O,ln as k,lr as A,nn as j,nr as M,pn as N,pr as P,tr as F,un as I,vn as L,wr as R,xr as z,yr as ne}from"./vendor-CdGy-Xet.js";import{p as B}from"./vendor-core-0Lu3l40a.js";import{o as re}from"./vendor-primevue-Cm1rEh62.js";import{a as V,i as H,n as U,r as ie,t as W}from"./vendor-xterm-IIYDrBG1.js";import{t as ae}from"./back-filled-DZmo9cAg.js";import{t as G}from"./settings-wRDwvjf-.js";import{n as K,t as oe}from"./zoom-in-2i20zd_d.js";import{n as se,t as ce}from"./CuiTopNavbarItem-BhUA2MiU.js";import{t as le}from"./trash-2-upauF9j0.js";var q={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function ue(e,t){return _(),N(`svg`,q,[...t[0]||=[I(`path`,{fill:`currentColor`,d:`M18 28A12 12 0 1 0 6 16v6.2l-3.6-3.6L1 20l6 6l6-6l-1.4-1.4L8 22.2V16a10 10 0 1 1 10 10Z`},null,-1)]])}var de=A({name:`carbon-reset`,render:ue}),J={viewBox:`0 0 32 32`,width:`1.2em`,height:`1.2em`};function Y(e,t){return _(),N(`svg`,J,[...t[0]||=[I(`path`,{fill:`currentColor`,d:`M17 15V8h-2v7H8v2h7v7h2v-7h7v-2z`},null,-1)]])}var fe=A({name:`carbon-add`,render:Y}),pe=l(S({__name:`CuiTerminal`,props:{autoConnect:{type:Boolean,default:!0},cwd:{},shell:{},options:{default:()=>({fontSize:14})},inputTransform:{}},emits:[`connected`,`disconnected`,`error`],setup(e,{expose:t,emit:i}){let o=e,s=i,{isConnected:c,isConnecting:l,isClientConnected:u,error:d,connect:f,write:m,resize:v,close:y}=n(),{options:b}=ne(o),x={fontSize:14,scrollback:5e3,allowTransparency:!1,disableStdin:!1,cursorBlink:!0,allowProposedApi:!0,theme:{background:`#000000`}},S={"\x1B[A":`\x1BOA`,"\x1B[B":`\x1BOB`,"\x1B[C":`\x1BOC`,"\x1B[D":`\x1BOD`,"\x1B[H":`\x1BOH`,"\x1B[F":`\x1BOF`},C=te(`terminalContainerRef`),w=E(null),T=null,D=null,O=null,k=null,A=r(C);function j(e){c.value&&m(o.inputTransform?o.inputTransform(e):e)}function M(e){w.value&&w.value.write(e)}function P(){if(!(!w.value||!T))try{T.fit()}catch{}}function F(){P(),c.value&&w.value&&v({cols:w.value.cols,rows:w.value.rows})}function I(){w.value&&p(()=>{P(),w.value&&(w.value.refresh(0,w.value.rows-1),w.value.focus())})}let L=a(F,100);function R(e){if(e)try{e.dispose()}catch{}}function z(){C.value&&(w.value=new W({...x,...b.value}),T=new V,k=new U,D=new H,O=new ie,w.value.loadAddon(D),w.value.loadAddon(O),w.value.loadAddon(k),w.value.loadAddon(T),w.value.open(C.value),w.value.onData(j),w.value.onResize(({cols:e,rows:t})=>{c.value&&v({cols:e,rows:t})}),k.onContextLoss(()=>{R(k),k=null}),F())}async function B(){w.value&&await f({cols:w.value.cols,rows:w.value.rows,cwd:o.cwd,shell:o.shell,onData:M,onClose:()=>{w.value?.write(`\r
2
2
  \x1B[33mSession closed.\x1B[0m\r
3
3
  `)},onError:e=>{s(`error`,e)}})}async function re(){await y()}function ae(){w.value?.clear()}function G(){w.value?.focus()}function K(e){w.value?.modes.applicationCursorKeysMode&&(e=S[e]??e),j(e)}return g(b,()=>{w.value&&(w.value.options={...x,...b.value},L())},{deep:!0}),g(c,e=>{e?(s(`connected`),p(()=>w.value?.focus())):s(`disconnected`)}),g([A.height,A.width],()=>{L()}),h(()=>{z(),o.autoConnect&&B()}),ee(()=>{y(),R(T),R(k),R(D),R(O),R(w.value)}),t({connect:B,disconnect:re,clear:ae,focus:G,resize:F,refresh:I,sendInput:K,isConnected:c,isConnecting:l,isClientConnected:u,error:d,term:w}),(e,t)=>(_(),N(`div`,{ref_key:`terminalContainerRef`,ref:C,class:`cui-terminal w-full h-full bg-black overflow-hidden p-2 min-w-0`},null,512))}}),[[`__scopeId`,`data-v-82bcb47c`]]),X=[{id:`esc`,label:`Esc`,sequence:`\x1B`},{id:`tab`,label:`Tab`,sequence:` `},{id:`ctrl`,label:`Ctrl`,sequence:``,modifier:!0},{id:`alt`,label:`Alt`,sequence:``,modifier:!0},{id:`home`,label:`Home`,sequence:`\x1B[H`},{id:`end`,label:`End`,sequence:`\x1B[F`},{id:`up`,label:`↑`,sequence:`\x1B[A`},{id:`down`,label:`↓`,sequence:`\x1B[B`},{id:`left`,label:`←`,sequence:`\x1B[D`},{id:`right`,label:`→`,sequence:`\x1B[C`},{id:`pgup`,label:`PgUp`,sequence:`\x1B[5~`},{id:`pgdn`,label:`PgDn`,sequence:`\x1B[6~`},{id:`del`,label:`Del`,sequence:`\x1B[3~`},{id:`slash`,label:`/`,sequence:`/`},{id:`dash`,label:`-`,sequence:`-`},{id:`pipe`,label:`|`,sequence:`|`},{id:`tilde`,label:`~`,sequence:`~`},{id:`underscore`,label:`_`,sequence:`_`}],Z=[`tab`,`ctrl`,`up`,`down`,`left`,`right`],me={a:``,b:``,c:``,d:``,e:``,f:``,g:`\x07`,h:`\b`,i:` `,j:`
4
4
  `,k:`\v`,l:`\f`,m:`\r`,n:``,o:``,p:``,q:``,r:``,s:``,t:``,u:``,v:``,w:``,x:``,y:``,z:``},Q=[`onPointerdown`],he={key:0,class:`flex flex-wrap gap-1.5 px-2 py-2 bg-black/90 border-t border-white/10`},$=[`onClick`],ge=l(S({__name:`CuiTerminalToolbar`,emits:[`send`],setup(e,{expose:t,emit:n}){let r=n,{smBreakpoint:a}=c(),o=X,s=i(`cui-terminal-toolbar-keys`,Z),l=P(!1),u=w(new Set),d=k(()=>s.value.map(e=>o.find(t=>t.id===e)).filter(Boolean));function f(e){if(u.has(`ctrl`)&&e.length===1){let t=me[e.toLowerCase()];if(t)return t}return u.has(`alt`)&&e.length===1?`\x1b${e}`:e}function p(e){if(e.modifier){u.has(e.id)?u.delete(e.id):u.add(e.id);return}let t=f(e.sequence);r(`send`,t),u.clear()}function h(e){let t=s.value.indexOf(e);t>=0?s.value.splice(t,1):s.value.push(e)}return t({activeModifiers:u,applyModifiers:f}),(e,t)=>{let n=G;return _(),N(`div`,null,[I(`div`,{class:v([`cui-terminal-toolbar flex items-center gap-1 px-2 py-1.5 bg-black/80 border-t border-white/10 overflow-x-auto no-scrollbar`,{"pt-3":!z(a)}])},[(_(!0),N(x,null,m(z(d),e=>(_(),N(`button`,{key:e.id,class:v([`toolbar-key flex-shrink-0 px-2.5 py-1.5 rounded text-xs font-mono select-none transition-colors duration-100 border min-w-[32px] text-center cursor-pointer`,{"bg-white/20 border-white/30 text-white":e.modifier&&z(u).has(e.id),"bg-white/5 border-white/10 text-white/70 hover:bg-white/15 hover:text-white active:bg-white/25":!(e.modifier&&z(u).has(e.id))}]),onPointerdown:D(t=>p(e),[`prevent`])},y(e.label),43,Q))),128)),I(`button`,{class:v([`toolbar-key flex-shrink-0 px-2 py-1.5 rounded text-xs select-none transition-colors duration-100 border ml-auto`,{"bg-white/20 border-white/30 text-white":z(l),"bg-white/5 border-white/10 text-white/50 hover:bg-white/15 hover:text-white":!z(l)}]),onPointerdown:t[0]||=D(e=>l.value=!z(l),[`prevent`])},[L(n,{class:`w-3.5 h-3.5`})],34)],2),z(l)?(_(),N(`div`,he,[(_(!0),N(x,null,m(z(o),e=>(_(),N(`button`,{key:e.id,class:v([`px-2.5 py-1 rounded text-xs font-mono select-none transition-colors duration-100 border`,{"bg-white/20 border-white/30 text-white":z(s).includes(e.id),"bg-white/5 border-white/10 text-white/30":!z(s).includes(e.id)}]),onClick:t=>h(e.id)},y(e.label),11,$))),128))])):T(``,!0)])}}}),[[`__scopeId`,`data-v-e111c595`]]),_e={class:`h-full w-full dark-mode relative overflow-hidden`},ve={class:`relative w-6 h-6`},ye=S({__name:`Terminal`,props:{navbarWidth:{default:0},navbarLeft:{default:0}},setup(n){let i=n,a=s(),{t:c}=o(),{uiSettings:l}=B(d()),{navbarWidth:g,navbarLeft:y}=ne(i),S=te(`toolbar`),w=P([]),T=P(``),E=P(0),D=new Map,A=window.innerHeight,V=0,H=r(S),U=k(()=>g.value+y.value),ie=k(()=>{let e=document.getElementById(`container`);return e&&parseFloat(getComputedStyle(e).paddingBottom)||0}),W=k(()=>E.value<=0?0:Math.max(0,E.value-ie.value)),G=k(()=>w.value.find(e=>e.id===T.value)),q=k(()=>({fontSize:l.value.console.zoom})),ue=P([{label:c(`components.form.tooltip.clear`),icon:le,buttonProps:{severity:`danger`},command:()=>{Q()?.clear()}},{label:c(`components.form.tooltip.zoom_out`),icon:K,command:()=>{Oe()}},{label:c(`components.form.tooltip.zoom_in`),icon:oe,command:()=>{De()}}]);function J(){A=window.innerHeight,Y()}function Y(){let e=window.visualViewport;if(!e)return;let t=Math.max(0,A-e.height-e.offsetTop);t!==E.value&&(E.value=t,Z(t>0))}function X(e){e.target?.closest?.(`.cui-terminal-toolbar`)||e.preventDefault()}function Z(e){e?(document.addEventListener(`touchmove`,X,{passive:!1}),document.documentElement.style.overscrollBehavior=`none`):(document.removeEventListener(`touchmove`,X),document.documentElement.style.overscrollBehavior=``)}function me(e,t){t?D.set(e,t):D.delete(e)}function Q(){return D.get(T.value)}function he(){return V++,{id:u(12),name:`Terminal ${V}`,isConnected:!1,isConnecting:!0}}function $(){let e=he();w.value.push(e),T.value=e.id}async function ye(e){let t=w.value.findIndex(t=>t.id===e);if(t===-1)return;let n=D.get(e);if(n&&await n.disconnect(),w.value.splice(t,1),D.delete(e),T.value===e&&w.value.length>0){let e=Math.min(t,w.value.length-1);T.value=w.value[e].id,p(()=>{Q()?.refresh()})}}function be(e){T.value=e,p(()=>{D.get(e)?.refresh()})}function xe(e){if(!S.value?.activeModifiers?.size)return e;let t=S.value.applyModifiers(e);return S.value.activeModifiers.clear(),t}function Se(e){Q()?.sendInput(e)}async function Ce(){let e=Q();e&&(await e.disconnect(),await e.connect())}function we(e){let t=w.value.find(t=>t.id===e);t&&(t.isConnected=!0,t.isConnecting=!1),e===T.value&&p(()=>{Q()?.refresh()})}function Te(e){let t=w.value.find(t=>t.id===e);t&&(t.isConnected=!1,t.isConnecting=!1)}function Ee(e,t){a.error(`Terminal ${e} error:`,t);let n=w.value.find(t=>t.id===e);n&&(n.isConnected=!1,n.isConnecting=!1)}function De(){l.value.console.zoom!==20&&(l.value.console.zoom++,p(()=>{Q()?.resize()}))}function Oe(){l.value.console.zoom!==8&&(l.value.console.zoom--,p(()=>{Q()?.resize()}))}return h(()=>{window.addEventListener(`resize`,J);let e=window.visualViewport;e&&(e.addEventListener(`resize`,Y),e.addEventListener(`scroll`,Y)),$()}),ee(()=>{window.removeEventListener(`resize`,J);let e=window.visualViewport;e&&(e.removeEventListener(`resize`,Y),e.removeEventListener(`scroll`,Y)),Z(!1)}),(n,r)=>{let i=ae,a=e,o=f,s=ce,l=fe,u=se,d=re,p=de,h=t;return _(),N(`div`,_e,[L(o,{position:`left`},{default:F(()=>[L(a,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:r[0]||=e=>n.$router.push(`/menu`)},{icon:F(()=>[L(i,{class:`w-6 h-6`})]),_:1})]),_:1}),L(u,{scrollable:``,"left-offset":z(U),animate:``},{left:F(()=>[(_(!0),N(x,null,m(z(w),e=>(_(),C(s,{key:e.id,type:`tab`,label:e.name,active:z(T)===e.id,status:e.isConnected?`connected`:e.isConnecting?`connecting`:`disconnected`,closeable:z(w).length>1,onClick:t=>be(e.id),onClose:t=>ye(e.id)},null,8,[`label`,`active`,`status`,`closeable`,`onClick`,`onClose`]))),128)),M((_(),C(s,{type:`button`,onClick:$},{icon:F(()=>[L(l,{class:`w-4 h-4`})]),_:1})),[[h,z(c)(`views.terminal.new_tab`)]])]),_:1},8,[`left-offset`]),I(`div`,{class:`w-full flex flex-col relative`,style:R({paddingTop:`${z(55)}px`,height:`calc(100% - ${z(W)}px)`,transition:`height 150ms ease-out`})},[I(`div`,{class:v([`flex-1 relative min-h-0 overflow-hidden`,{"pb-1":z(E)>0}])},[(_(!0),N(x,null,m(z(w),e=>M((_(),C(pe,{key:e.id,ref_for:!0,ref:t=>me(e.id,t),options:z(q),"input-transform":xe,"auto-connect":``,onConnected:()=>we(e.id),onDisconnected:()=>Te(e.id),onError:t=>Ee(e.id,t)},null,8,[`options`,`onConnected`,`onDisconnected`,`onError`])),[[j,z(T)===e.id]])),128))],2),L(ge,{ref_key:`toolbar`,ref:S,onSend:Se},null,512)],4),L(d,{model:z(ue),direction:`up`,"transition-delay":80,"tooltip-options":{position:`left`,event:void 0},class:`absolute right-3 z-11`,pt:{root:{style:`pointer-events: none`}},style:R({bottom:`calc(0.75rem + ${z(H).height.value}px + ${z(W)}px)`,transition:`bottom 150ms ease-out`})},{button:F(({visible:e,toggleCallback:t})=>[L(a,{severity:`secondary`,class:v([`dark-mode opacity-40 hover:opacity-100 active:opacity-100 focus:opacity-100 transition pointer-events-auto`,{"opacity-100":e}]),rounded:``,onClick:t},{icon:F(()=>[I(`div`,ve,[I(`div`,{class:v([`absolute top-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] rotate-45 top-1/2 -translate-y-1/2 rounded-none":e}]),style:{backgroundColor:`var(--text-color)`}},null,2),I(`div`,{class:v([`absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-1.5 h-1.5 rounded-full transition-all duration-100`,{"opacity-0 scale-0":e}]),style:{backgroundColor:`var(--text-color)`}},null,2),I(`div`,{class:v([`absolute bottom-0.5 left-1/2 -translate-x-1/2 w-1.5 h-1.5 rounded-full transform transition-all duration-100 origin-center`,{"w-4 h-[2px] -rotate-45 bottom-1/2 translate-y-1/2 rounded-none":e}]),style:{backgroundColor:`var(--text-color)`}},null,2)])]),_:2},1032,[`class`,`onClick`])]),item:F(({item:e,toggleCallback:t})=>[M((_(),C(a,O({severity:`secondary`},e.buttonProps,{rounded:``,onClick:t}),{icon:F(()=>[(_(),C(b(e.icon)))]),_:2},1040,[`onClick`])),[[h,{value:e.label}]])]),_:1},8,[`model`,`style`]),M((_(),C(a,{class:v([`opacity-40 hover:opacity-100 active:opacity-100 focus:opacity-100 transition absolute right-14 z-11`,{"!opacity-20 pointer-events-none":z(G)?.isConnected||z(G)?.isConnecting}]),style:R({bottom:`calc(0.75rem + ${z(H).height.value}px + ${z(W)}px)`,transition:`bottom 150ms ease-out`}),rounded:``,disabled:z(G)?.isConnected||z(G)?.isConnecting,onClick:Ce},{icon:F(()=>[L(p,{class:`text-white`})]),_:1},8,[`class`,`style`,`disabled`])),[[h,z(c)(`views.terminal.reconnect`)]])])}}});export{ye as default};
@@ -1 +1 @@
1
- import{Rn as e,Tr as t,bn as n,dn as r,pr as i,tr as a,un as o,xr as s}from"./vendor-CdGy-Xet.js";import{w as c}from"./vendor-primevue-B3sIO6X2.js";import{i as l}from"./flowSchema-CsPTDyH8.js";var u={class:`flex items-center justify-between gap-3 w-full min-w-0`},d={class:`truncate`},f={class:`text-[10px] text-muted font-mono shrink-0`},p=n({__name:`VariableInput`,props:{modelValue:{},nodeId:{},placeholder:{}},emits:[`update:modelValue`],setup(n,{emit:p}){let m=n,h=p,{options:g}=l(()=>m.nodeId),_=i([]),v=i(``);function y(e){let t=e.query.toLowerCase();v.value=e.query,t?_.value=g.value.filter(e=>e.label.toLowerCase().includes(t)||e.value.toLowerCase().includes(t)):_.value=[...g.value]}function b(e){let t=m.modelValue??``;v.value&&t.toLowerCase().endsWith(v.value.toLowerCase())&&(t=t.slice(0,t.length-v.value.length)),h(`update:modelValue`,t+e.value.value)}function x(e){typeof e==`string`&&h(`update:modelValue`,e)}return(i,l)=>{let p=c;return e(),r(p,{"model-value":n.modelValue,suggestions:s(_),"option-label":`label`,placeholder:n.placeholder,class:`w-full`,fluid:``,dropdown:``,"dropdown-mode":`blank`,onComplete:y,onItemSelect:b,"onUpdate:modelValue":x},{option:a(({option:e})=>[o(`div`,u,[o(`span`,d,t(e.label),1),o(`span`,f,t(e.value),1)])]),_:1},8,[`model-value`,`suggestions`,`placeholder`])}}});export{p as t};
1
+ import{Rn as e,Tr as t,bn as n,dn as r,pr as i,tr as a,un as o,xr as s}from"./vendor-CdGy-Xet.js";import{w as c}from"./vendor-primevue-Cm1rEh62.js";import{i as l}from"./flowSchema-BuhMrSRP.js";var u={class:`flex items-center justify-between gap-3 w-full min-w-0`},d={class:`truncate`},f={class:`text-[10px] text-muted font-mono shrink-0`},p=n({__name:`VariableInput`,props:{modelValue:{},nodeId:{},placeholder:{}},emits:[`update:modelValue`],setup(n,{emit:p}){let m=n,h=p,{options:g}=l(()=>m.nodeId),_=i([]),v=i(``);function y(e){let t=e.query.toLowerCase();v.value=e.query,t?_.value=g.value.filter(e=>e.label.toLowerCase().includes(t)||e.value.toLowerCase().includes(t)):_.value=[...g.value]}function b(e){let t=m.modelValue??``;v.value&&t.toLowerCase().endsWith(v.value.toLowerCase())&&(t=t.slice(0,t.length-v.value.length)),h(`update:modelValue`,t+e.value.value)}function x(e){typeof e==`string`&&h(`update:modelValue`,e)}return(i,l)=>{let p=c;return e(),r(p,{"model-value":n.modelValue,suggestions:s(_),"option-label":`label`,placeholder:n.placeholder,class:`w-full`,fluid:``,dropdown:``,"dropdown-mode":`blank`,onComplete:y,onItemSelect:b,"onUpdate:modelValue":x},{option:a(({option:e})=>[o(`div`,u,[o(`span`,d,t(e.label),1),o(`span`,f,t(e.value),1)])]),_:1},8,[`model-value`,`suggestions`,`placeholder`])}}});export{p as t};
@@ -1 +1 @@
1
- import{kr as e}from"./vendor-cameraui-Bq-hQsT7.js";import{Bn as t,Rn as n,an as r,bn as i,dn as a,fn as o,pn as s,tr as c,un as l,xr as u}from"./vendor-CdGy-Xet.js";import{T as d,c as f}from"./vendor-primevue-B3sIO6X2.js";var p={class:`flex flex-wrap gap-1`},m=i({__name:`VariableSuggestions`,props:{variables:{}},emits:[`select`],setup(i){let{t:m}=e();return(e,h)=>{let g=d,_=f;return i.variables.length?(n(),a(_,{key:0,header:u(m)(`components.automation_nodes.available_variables`),toggleable:``,collapsed:``,pt:{root:{class:`border-0`},header:{class:`py-1.5 px-0 text-xs`},content:{class:`px-0 py-2`},headerActions:{class:`flex`}},"toggle-button-props":{class:`w-4 h-4 p-0`,text:!0,rounded:!0,severity:`secondary`}},{default:c(()=>[l(`div`,p,[(n(!0),s(r,null,t(i.variables,t=>(n(),a(g,{key:t.value,label:t.label,class:`text-[10px] cursor-pointer hover:bg-primary/10 active:bg-primary/20`,onClick:n=>e.$emit(`select`,t.value)},null,8,[`label`,`onClick`]))),128))])]),_:1},8,[`header`])):o(``,!0)}}});export{m as t};
1
+ import{kr as e}from"./vendor-cameraui-CywDBRLD.js";import{Bn as t,Rn as n,an as r,bn as i,dn as a,fn as o,pn as s,tr as c,un as l,xr as u}from"./vendor-CdGy-Xet.js";import{T as d,c as f}from"./vendor-primevue-Cm1rEh62.js";var p={class:`flex flex-wrap gap-1`},m=i({__name:`VariableSuggestions`,props:{variables:{}},emits:[`select`],setup(i){let{t:m}=e();return(e,h)=>{let g=d,_=f;return i.variables.length?(n(),a(_,{key:0,header:u(m)(`components.automation_nodes.available_variables`),toggleable:``,collapsed:``,pt:{root:{class:`border-0`},header:{class:`py-1.5 px-0 text-xs`},content:{class:`px-0 py-2`},headerActions:{class:`flex`}},"toggle-button-props":{class:`w-4 h-4 p-0`,text:!0,rounded:!0,severity:`secondary`}},{default:c(()=>[l(`div`,p,[(n(!0),s(r,null,t(i.variables,t=>(n(),a(g,{key:t.value,label:t.label,class:`text-[10px] cursor-pointer hover:bg-primary/10 active:bg-primary/20`,onClick:n=>e.$emit(`select`,t.value)},null,8,[`label`,`onClick`]))),128))])]),_:1},8,[`header`])):o(``,!0)}}});export{m as t};
@@ -1,4 +1,4 @@
1
- import{kr as e,wt as t}from"./vendor-cameraui-Bq-hQsT7.js";import{Gn as n,an as r,x as i}from"./api-CdJDEL3z.js";import{Bn as ee,In as a,Ln as o,Q as s,Qn as c,Rn as l,Tn as u,Tr as d,Xn as te,_n as ne,an as re,bn as f,cr as p,fn as m,ln as h,pn as g,pr as _,t as ie,un as v,vn as y,xr as b,yr as ae}from"./vendor-CdGy-Xet.js";import{K as oe,j as se}from"./vendor-primevue-B3sIO6X2.js";import{t as ce}from"./server-_ByAktOF.js";import{n as le}from"./useServerRestart-lPp2ZiX-.js";import{t as ue}from"./plugins-BcJnIPJC.js";import{n as de,t as fe}from"./useLogsSocket-DQSgBMsw.js";import{a as pe,i as me,n as he,o as x,r as ge,t as _e}from"./vendor-markdown-D_3Of-Gz.js";import{t as ve}from"./alert-circle-CqEfEWD8.js";import{t as ye}from"./platformLabels-D-cF6OTP.js";import{t as be}from"./config-CYmKCSzU.js";function S(e){return`id`in e&&!(`type`in e)}function C(e){return`type`in e}var xe={key:0},Se={key:0,class:`flex items-start gap-3 px-4 py-3 rounded-xl bg-orange-500/10 border border-orange-500/30 mb-3`},Ce={class:`flex flex-col gap-1 min-w-0`},we={class:`text-sm font-semibold text-orange-400`},Te={key:0},Ee={class:`text-xs text-orange-600 dark:text-orange-300`},De={class:`text-sm text-orange-400`},Oe={key:1},ke={class:`text-base font-semibold border-b-[1px] border-color mb-3 pb-3`},Ae=[`innerHTML`],je={key:2},Me={class:`text-muted`},Ne={class:`flex items-center gap-4 mt-4 px-4 py-3 rounded-xl bg-orange-500/10 border border-orange-500/30`},Pe={class:`flex flex-col gap-1 min-w-0`},Fe={class:`text-sm font-semibold text-orange-400`},Ie={class:`text-xs text-orange-600 dark:text-orange-300`},Le={key:3},Re={class:`cui-label`},ze={key:4,class:`w-full h-full relative`},Be={key:5,class:`w-full h-full p-4 flex items-center justify-center`},Ve=`2.0.0`,w=f({__name:`VersionsHandler`,props:{target:{},installVersion:{},action:{}},setup(f,{expose:w}){x.registerLanguage(`typescript`,ge),x.registerLanguage(`yaml`,he),x.registerLanguage(`json`,pe),x.registerLanguage(`python`,me);let T=new ue,E=new ce,He=new be,Ue=s(),D=f,O=n(),{t:k}=e(),{mdBreakpoint:A}=r(),{beginServerRestart:We}=le(),{isBeta:Ge}=i(),j=u(`dialogRef`),M=u(`dialogRefProps`),{target:N,installVersion:P}=ae(D),F=_();T.toggleQueryActivator(`getPluginVersionsQuery`,!1),T.toggleQueryActivator(`getPluginChangelogQuery`,!1),T.toggleQueryActivator(`getPluginCompatQuery`,!1),E.toggleQueryActivator(`checkVersionQuery`,!1),E.toggleQueryActivator(`getServerChangelogQuery`,!1);let Ke=h(()=>S(N.value)?N.value.pluginName:`server`),I=h(()=>D.action===`uninstall`&&S(N.value)),L=fe({target:Ke.value,onStdout:e=>U.value?.writeTerminal(e),onDisconnect:()=>U.value?.writeTerminal(`
1
+ import{kr as e,wt as t}from"./vendor-cameraui-CywDBRLD.js";import{Gn as n,an as r,x as i}from"./api-BwUGcpse.js";import{Bn as ee,In as a,Ln as o,Q as s,Qn as c,Rn as l,Tn as u,Tr as d,Xn as te,_n as ne,an as re,bn as f,cr as p,fn as m,ln as h,pn as g,pr as _,t as ie,un as v,vn as y,xr as b,yr as ae}from"./vendor-CdGy-Xet.js";import{K as oe,j as se}from"./vendor-primevue-Cm1rEh62.js";import{t as ce}from"./server-CmHQA2OF.js";import{n as le}from"./useServerRestart-CZj3Y0Gh.js";import{t as ue}from"./plugins-Ct1tFRqH.js";import{n as de,t as fe}from"./useLogsSocket-B_EbSIOU.js";import{a as pe,i as me,n as he,o as x,r as ge,t as _e}from"./vendor-markdown-D_3Of-Gz.js";import{t as ve}from"./alert-circle-CqEfEWD8.js";import{t as ye}from"./platformLabels-D-cF6OTP.js";import{t as be}from"./config-BYU9LRQr.js";function S(e){return`id`in e&&!(`type`in e)}function C(e){return`type`in e}var xe={key:0},Se={key:0,class:`flex items-start gap-3 px-4 py-3 rounded-xl bg-orange-500/10 border border-orange-500/30 mb-3`},Ce={class:`flex flex-col gap-1 min-w-0`},we={class:`text-sm font-semibold text-orange-400`},Te={key:0},Ee={class:`text-xs text-orange-600 dark:text-orange-300`},De={class:`text-sm text-orange-400`},Oe={key:1},ke={class:`text-base font-semibold border-b-[1px] border-color mb-3 pb-3`},Ae=[`innerHTML`],je={key:2},Me={class:`text-muted`},Ne={class:`flex items-center gap-4 mt-4 px-4 py-3 rounded-xl bg-orange-500/10 border border-orange-500/30`},Pe={class:`flex flex-col gap-1 min-w-0`},Fe={class:`text-sm font-semibold text-orange-400`},Ie={class:`text-xs text-orange-600 dark:text-orange-300`},Le={key:3},Re={class:`cui-label`},ze={key:4,class:`w-full h-full relative`},Be={key:5,class:`w-full h-full p-4 flex items-center justify-center`},Ve=`2.0.0`,w=f({__name:`VersionsHandler`,props:{target:{},installVersion:{},action:{}},setup(f,{expose:w}){x.registerLanguage(`typescript`,ge),x.registerLanguage(`yaml`,he),x.registerLanguage(`json`,pe),x.registerLanguage(`python`,me);let T=new ue,E=new ce,He=new be,Ue=s(),D=f,O=n(),{t:k}=e(),{mdBreakpoint:A}=r(),{beginServerRestart:We}=le(),{isBeta:Ge}=i(),j=u(`dialogRef`),M=u(`dialogRefProps`),{target:N,installVersion:P}=ae(D),F=_();T.toggleQueryActivator(`getPluginVersionsQuery`,!1),T.toggleQueryActivator(`getPluginChangelogQuery`,!1),T.toggleQueryActivator(`getPluginCompatQuery`,!1),E.toggleQueryActivator(`checkVersionQuery`,!1),E.toggleQueryActivator(`getServerChangelogQuery`,!1);let Ke=h(()=>S(N.value)?N.value.pluginName:`server`),I=h(()=>D.action===`uninstall`&&S(N.value)),L=fe({target:Ke.value,onStdout:e=>U.value?.writeTerminal(e),onDisconnect:()=>U.value?.writeTerminal(`
2
2
  \rWebsocket failed to connect! Is the server running?\r
3
3
  \r
4
4
  `),onClearLog:()=>U.value?.clearTerminal(),onReconnected:()=>{U.value?.writeTerminal(`\r
@@ -1,2 +1,2 @@
1
- import{F as e,O as t,Ot as n,kr as r,wt as i}from"./vendor-cameraui-Bq-hQsT7.js";import{$n as a,En as o,G as s,Gn as c,L as ee,Ln as te,Un as l,an as ne,et as re,i as ie,nn as u,nt as ae,tt as oe,z as se}from"./api-CdJDEL3z.js";import{An as d,J as f,Ln as ce,Mn as le,Q as p,Qn as m,Rn as h,Tr as g,an as _,bn as v,cr as ue,dn as de,dr as y,fn as b,ir as x,ln as S,pn as C,pr as w,tr as T,un as E,vn as D,xr as O}from"./vendor-CdGy-Xet.js";import{K as fe,L as pe,R as me,g as he,j as ge,x as _e}from"./vendor-primevue-B3sIO6X2.js";import{t as ve}from"./plugins-BcJnIPJC.js";import{t as ye}from"./CuiDataTable-DqtFJKC6.js";import{t as be}from"./back-filled-DZmo9cAg.js";import{n as xe,t as Se}from"./round-restart-alt-B6N0m8oC.js";async function k(){return(await a.get(`/workers/config`)).data}async function A(e){return(await a.patch(`/workers/config`,e)).data}async function j(){return(await a.post(`/workers/pairings`)).data}async function M(e){await a.delete(`/workers/${e}`)}async function N(e){await a.post(`/workers/${e}/restart`)}async function P({cameraId:e,agentId:t}){return(await a.post(`/workers/assign`,{cameraId:e,agentId:t})).data}async function F({cameraId:e}){return(await a.post(`/workers/unassign`,{cameraId:e})).data}async function I({pluginName:e,agentId:t}){return(await a.post(`/workers/assign-plugin`,{pluginName:e,agentId:t})).data}async function Ce({pluginName:e}){return(await a.post(`/workers/unassign-plugin`,{pluginName:e})).data}var we=class{_queryClient=p();toast=c();getConfigQuery(){return l({queryKey:[`workersConfig`],queryFn:()=>k(),retry:!1})}patchConfigQuery(){return f({mutationFn:A,onSuccess:()=>this._queryClient.invalidateQueries({queryKey:[`workersConfig`]}),onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}createPairingQuery(){return f({mutationFn:j})}removeWorkerQuery(){return f({mutationFn:M,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}assignCameraQuery(){return f({mutationFn:P,onMutate:({cameraId:e,agentId:t})=>this.patchCameraWorker(e,t),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}unassignCameraQuery(){return f({mutationFn:F,onMutate:({cameraId:e})=>this.patchCameraWorker(e,void 0),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}restartWorkerQuery(){return f({mutationFn:N})}assignPluginQuery(){return f({mutationFn:I,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}unassignPluginQuery(){return f({mutationFn:Ce,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}patchCameraWorker(e,t){let n=[];for(let[r,i]of this._queryClient.getQueriesData({queryKey:[`camerasList`]}))i?.result&&(n.push([r,i]),this._queryClient.setQueryData(r,{...i,result:i.result.map(n=>n._id===e?{...n,workerAgentId:t}:n)}));return{rollback:()=>{for(let[e,t]of n)this._queryClient.setQueryData(e,t)}}}},L=y({workers:[],workerHistory:{}}),R=null,z=null;function Te(e){let t=L.workers.findIndex(t=>t.agentId===e.agentId);if(t!==-1){let n=[...L.workers];n[t]=e,L.workers=n}else L.workers=[...L.workers,e];let n=L.workerHistory[e.agentId]??[];L.workerHistory={...L.workerHistory,[e.agentId]:[...n,e].slice(-30)}}async function Ee(){if(z?.ready.value)try{L.workers=await z.request(`get-workers`)}catch{}}async function De(){if(z?.ready.value)try{L.workerHistory=await z.request(`get-worker-history`)}catch{}}async function B(){await Promise.all([Ee(),De()])}function V(){return z||(R=x(!0),R.run(()=>{let e=te(`/workers`);z=e,e.on(`worker-update`,e=>Te(e)),e.on(`worker-removed`,({agentId:e})=>{L.workers=L.workers.filter(t=>t.agentId!==e);let t={...L.workerHistory};delete t[e],L.workerHistory=t}),e.onReady(()=>{B()})}),z)}function Oe(){function e(){V()}function t(){}return{isConnected:S(()=>z?.connected.value??!1),workers:S(()=>L.workers),workerHistory:S(()=>L.workerHistory),connect:e,disconnect:t,loadAll:B}}var ke={key:0,class:`page-title`},Ae={key:1,class:`w-full h-full flex items-center justify-center`},je={key:2,class:`flex flex-col w-full gap-6`},Me={class:`card-title`},Ne={class:`flex flex-col gap-6`},Pe={class:`flex flex-row items-center justify-between gap-4`},Fe={class:`flex flex-col`},Ie={class:`text-sm font-semibold text-color`},Le={class:`text-muted text-xs`},Re={class:`flex flex-col field-gap`},ze={class:`text-sm font-semibold`},Be={class:`text-muted text-xs`},Ve={class:`flex flex-col field-gap`},He={class:`text-sm font-semibold`},Ue={key:0,class:`text-orange-400 text-xs`},We={class:`flex flex-row items-end justify-end`},Ge={key:0},Ke={class:`card-title`},qe={class:`flex flex-col items-center justify-center gap-4 py-6`},Je={class:`text-muted text-sm`},Ye={key:1},Xe={class:`card-title`},Ze={class:`text-muted text-sm mb-4`},Qe={class:`text-muted text-sm`},$e={class:`font-bold text-color text-sm`},et={key:2},tt={class:`card-title`},nt={class:`text-muted text-sm mb-4`},rt={class:`text-muted text-sm`},it={class:`flex flex-col`},at={class:`font-bold text-color text-sm`},ot={key:0,class:`text-muted text-xs`},st={key:3},ct={class:`card-title`},lt={class:`flex flex-col gap-6`},ut={class:`text-sm`},dt={class:`flex flex-col field-gap`},ft={class:`text-sm font-semibold`},pt={class:`text-muted text-xs`},mt={class:`flex flex-col field-gap`},ht={class:`flex flex-row items-center justify-between`},gt={class:`text-sm font-semibold`},_t={class:`pairing-snippet`},vt={class:`text-muted text-xs`},yt={class:`flex flex-row items-end justify-end`},H=u(v({__name:`Workers`,setup(a){let{t:c}=r(),{smBreakpoint:te}=ne(),l=s(),u=Oe(),{workers:f,workerHistory:p,isConnected:v}=u,y=new ae,x=new ve,k=new we,{data:A,isLoading:j}=y.getCamerasQuery(w({page:1,pageSize:999})),{data:M,isLoading:N}=x.getPluginsQuery(w({page:1,pageSize:999})),{data:P}=k.getConfigQuery(),{mutateAsync:F,isPending:I}=k.patchConfigQuery(),{mutateAsync:Ce}=k.assignCameraQuery(),{mutateAsync:L}=k.unassignCameraQuery(),{mutateAsync:R}=k.restartWorkerQuery(),{mutateAsync:z,isPending:Te}=k.createPairingQuery(),{mutateAsync:Ee}=k.removeWorkerQuery(),{mutateAsync:De}=k.assignPluginQuery(),{mutateAsync:B}=k.unassignPluginQuery(),V={bodyRow:{class:`text-sm text-secondary`},column:{columnTitle:{class:`text-sm font-semibold`}}},H=w(!1),U=w([]),W=w([]),G=w(new Set),K=w(new Set),q=w(null),J=w(``),Y=w(7422),bt=S(()=>A.value?.result??[]),xt=S(()=>M.value?.result??[]),X=S(()=>P.value?.enabled??!1),St=S(()=>(P.value?.suggestedAddresses??[]).map(e=>({label:e,value:e}))),Ct=S(()=>Y.value!==(P.value?.port??7422)),wt=S(()=>J.value!==(P.value?.address??``)||Ct.value),Tt=S(()=>new Set(f.value.map(e=>e.agentId))),Et=S(()=>q.value?Math.max(0,Math.round((q.value.expiresAt-Date.now())/6e4)):0),Dt=S(()=>q.value?[`worker:`,` master: ${q.value.address||`<MASTER_IP>`}`,` apiPort: ${q.value.apiPort}`,` pairingCode: ${q.value.code}`,` name: my-worker`,` capabilities:`,` - frameDecoding`,` - pluginHost`].join(`
1
+ import{F as e,O as t,Ot as n,kr as r,wt as i}from"./vendor-cameraui-CywDBRLD.js";import{$n as a,En as o,G as s,Gn as c,L as ee,Ln as te,Un as l,an as ne,et as re,i as ie,nn as u,nt as ae,tt as oe,z as se}from"./api-BwUGcpse.js";import{An as d,J as f,Ln as ce,Mn as le,Q as p,Qn as m,Rn as h,Tr as g,an as _,bn as v,cr as ue,dn as de,dr as y,fn as b,ir as x,ln as S,pn as C,pr as w,tr as T,un as E,vn as D,xr as O}from"./vendor-CdGy-Xet.js";import{K as fe,L as pe,R as me,g as he,j as ge,x as _e}from"./vendor-primevue-Cm1rEh62.js";import{t as ve}from"./plugins-Ct1tFRqH.js";import{t as ye}from"./CuiDataTable-DQRKmdcE.js";import{t as be}from"./back-filled-DZmo9cAg.js";import{n as xe,t as Se}from"./round-restart-alt-COgLKyfG.js";async function k(){return(await a.get(`/workers/config`)).data}async function A(e){return(await a.patch(`/workers/config`,e)).data}async function j(){return(await a.post(`/workers/pairings`)).data}async function M(e){await a.delete(`/workers/${e}`)}async function N(e){await a.post(`/workers/${e}/restart`)}async function P({cameraId:e,agentId:t}){return(await a.post(`/workers/assign`,{cameraId:e,agentId:t})).data}async function F({cameraId:e}){return(await a.post(`/workers/unassign`,{cameraId:e})).data}async function I({pluginName:e,agentId:t}){return(await a.post(`/workers/assign-plugin`,{pluginName:e,agentId:t})).data}async function Ce({pluginName:e}){return(await a.post(`/workers/unassign-plugin`,{pluginName:e})).data}var we=class{_queryClient=p();toast=c();getConfigQuery(){return l({queryKey:[`workersConfig`],queryFn:()=>k(),retry:!1})}patchConfigQuery(){return f({mutationFn:A,onSuccess:()=>this._queryClient.invalidateQueries({queryKey:[`workersConfig`]}),onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})}})}createPairingQuery(){return f({mutationFn:j})}removeWorkerQuery(){return f({mutationFn:M,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}assignCameraQuery(){return f({mutationFn:P,onMutate:({cameraId:e,agentId:t})=>this.patchCameraWorker(e,t),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}unassignCameraQuery(){return f({mutationFn:F,onMutate:({cameraId:e})=>this.patchCameraWorker(e,void 0),onError:(e,t,n)=>{n?.rollback(),this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`camerasList`]})})}restartWorkerQuery(){return f({mutationFn:N})}assignPluginQuery(){return f({mutationFn:I,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}unassignPluginQuery(){return f({mutationFn:Ce,onError:e=>{this.toast.add({severity:`error`,detail:e,life:3e3})},onSettled:()=>this._queryClient.invalidateQueries({queryKey:[`pluginsList`]})})}patchCameraWorker(e,t){let n=[];for(let[r,i]of this._queryClient.getQueriesData({queryKey:[`camerasList`]}))i?.result&&(n.push([r,i]),this._queryClient.setQueryData(r,{...i,result:i.result.map(n=>n._id===e?{...n,workerAgentId:t}:n)}));return{rollback:()=>{for(let[e,t]of n)this._queryClient.setQueryData(e,t)}}}},L=y({workers:[],workerHistory:{}}),R=null,z=null;function Te(e){let t=L.workers.findIndex(t=>t.agentId===e.agentId);if(t!==-1){let n=[...L.workers];n[t]=e,L.workers=n}else L.workers=[...L.workers,e];let n=L.workerHistory[e.agentId]??[];L.workerHistory={...L.workerHistory,[e.agentId]:[...n,e].slice(-30)}}async function Ee(){if(z?.ready.value)try{L.workers=await z.request(`get-workers`)}catch{}}async function De(){if(z?.ready.value)try{L.workerHistory=await z.request(`get-worker-history`)}catch{}}async function B(){await Promise.all([Ee(),De()])}function V(){return z||(R=x(!0),R.run(()=>{let e=te(`/workers`);z=e,e.on(`worker-update`,e=>Te(e)),e.on(`worker-removed`,({agentId:e})=>{L.workers=L.workers.filter(t=>t.agentId!==e);let t={...L.workerHistory};delete t[e],L.workerHistory=t}),e.onReady(()=>{B()})}),z)}function Oe(){function e(){V()}function t(){}return{isConnected:S(()=>z?.connected.value??!1),workers:S(()=>L.workers),workerHistory:S(()=>L.workerHistory),connect:e,disconnect:t,loadAll:B}}var ke={key:0,class:`page-title`},Ae={key:1,class:`w-full h-full flex items-center justify-center`},je={key:2,class:`flex flex-col w-full gap-6`},Me={class:`card-title`},Ne={class:`flex flex-col gap-6`},Pe={class:`flex flex-row items-center justify-between gap-4`},Fe={class:`flex flex-col`},Ie={class:`text-sm font-semibold text-color`},Le={class:`text-muted text-xs`},Re={class:`flex flex-col field-gap`},ze={class:`text-sm font-semibold`},Be={class:`text-muted text-xs`},Ve={class:`flex flex-col field-gap`},He={class:`text-sm font-semibold`},Ue={key:0,class:`text-orange-400 text-xs`},We={class:`flex flex-row items-end justify-end`},Ge={key:0},Ke={class:`card-title`},qe={class:`flex flex-col items-center justify-center gap-4 py-6`},Je={class:`text-muted text-sm`},Ye={key:1},Xe={class:`card-title`},Ze={class:`text-muted text-sm mb-4`},Qe={class:`text-muted text-sm`},$e={class:`font-bold text-color text-sm`},et={key:2},tt={class:`card-title`},nt={class:`text-muted text-sm mb-4`},rt={class:`text-muted text-sm`},it={class:`flex flex-col`},at={class:`font-bold text-color text-sm`},ot={key:0,class:`text-muted text-xs`},st={key:3},ct={class:`card-title`},lt={class:`flex flex-col gap-6`},ut={class:`text-sm`},dt={class:`flex flex-col field-gap`},ft={class:`text-sm font-semibold`},pt={class:`text-muted text-xs`},mt={class:`flex flex-col field-gap`},ht={class:`flex flex-row items-center justify-between`},gt={class:`text-sm font-semibold`},_t={class:`pairing-snippet`},vt={class:`text-muted text-xs`},yt={class:`flex flex-row items-end justify-end`},H=u(v({__name:`Workers`,setup(a){let{t:c}=r(),{smBreakpoint:te}=ne(),l=s(),u=Oe(),{workers:f,workerHistory:p,isConnected:v}=u,y=new ae,x=new ve,k=new we,{data:A,isLoading:j}=y.getCamerasQuery(w({page:1,pageSize:999})),{data:M,isLoading:N}=x.getPluginsQuery(w({page:1,pageSize:999})),{data:P}=k.getConfigQuery(),{mutateAsync:F,isPending:I}=k.patchConfigQuery(),{mutateAsync:Ce}=k.assignCameraQuery(),{mutateAsync:L}=k.unassignCameraQuery(),{mutateAsync:R}=k.restartWorkerQuery(),{mutateAsync:z,isPending:Te}=k.createPairingQuery(),{mutateAsync:Ee}=k.removeWorkerQuery(),{mutateAsync:De}=k.assignPluginQuery(),{mutateAsync:B}=k.unassignPluginQuery(),V={bodyRow:{class:`text-sm text-secondary`},column:{columnTitle:{class:`text-sm font-semibold`}}},H=w(!1),U=w([]),W=w([]),G=w(new Set),K=w(new Set),q=w(null),J=w(``),Y=w(7422),bt=S(()=>A.value?.result??[]),xt=S(()=>M.value?.result??[]),X=S(()=>P.value?.enabled??!1),St=S(()=>(P.value?.suggestedAddresses??[]).map(e=>({label:e,value:e}))),Ct=S(()=>Y.value!==(P.value?.port??7422)),wt=S(()=>J.value!==(P.value?.address??``)||Ct.value),Tt=S(()=>new Set(f.value.map(e=>e.agentId))),Et=S(()=>q.value?Math.max(0,Math.round((q.value.expiresAt-Date.now())/6e4)):0),Dt=S(()=>q.value?[`worker:`,` master: ${q.value.address||`<MASTER_IP>`}`,` apiPort: ${q.value.apiPort}`,` pairingCode: ${q.value.code}`,` name: my-worker`,` capabilities:`,` - frameDecoding`,` - pluginHost`].join(`
2
2
  `):``),Ot=S(()=>[{type:`indicator`,field:`status`,columnProps:{headerClass:`w-5 max-w-5`,class:`w-5 max-w-5`},color(e){return e.online?e.versionMismatch?`orange`:`green`:`red`},tooltip(e){return e.online?e.versionMismatch?c(`views.workers.version_mismatch`,{version:e.version||`?`}):c(`views.workers.online`):c(`views.workers.offline`)}},{type:`category`,field:`name`,name:c(`views.workers.name`),columnProps:{headerClass:`w-40 min-w-40 max-w-40`,class:`w-40 min-w-40 max-w-40`},props:{class:`font-bold text-color`}},{type:`category`,field:e=>e.platform?`${e.platform.os}/${e.platform.arch}`:`—`,name:c(`views.workers.platform`),asChip:!0,columnProps:{headerClass:`min-w-40`,class:`min-w-40`}},{type:`category`,field:e=>e.pid?.toString()??`—`,name:c(`views.workers.pid`),columnProps:{headerClass:`min-w-20`,class:`min-w-20`}},{type:`category`,field:e=>e.cpuLoad===void 0?`—`:`${e.cpuLoad}%`,name:c(`views.workers.cpu`),asChip:!0,columnProps:{headerClass:`min-w-30`,class:`min-w-30`}},{type:`chart`,field:`cpu_chart`,for:`cpuLoad`,columnProps:{headerClass:`min-w-[250px]`,class:`min-w-[250px]`}},{type:`category`,field:e=>e.memLoad===void 0?`—`:`${e.memLoad}%`,name:c(`views.workers.memory`),asChip:!0,columnProps:{headerClass:`min-w-30`,class:`min-w-30`}},{type:`chart`,field:`memory_chart`,for:`memLoad`,columnProps:{headerClass:`min-w-[250px]`,class:`min-w-[250px]`}},{type:`action`,field:`actions`,columnProps:{class:`text-right`},buttons:[{icon:Se,loading:e=>U.value.includes(e.name),disabled:e=>!e.online,action:e=>At(e.name,e.agentId)},{icon:ee,buttonProps:{severity:`danger`},loading:e=>W.value.includes(e.agentId),action:e=>Vt(e)}]}]),kt=S(()=>{let e=p.value;return f.value.reduce((t,n)=>{for(let r of[`cpuLoad`,`memLoad`]){let i=e[n.agentId]??[],a=i.slice(-30).filter(e=>e[r]!==void 0).map(e=>parseFloat(e[r])),o=i.slice(-30).map(e=>e.lastHeartbeat),s=[...a,...Array(30-a.length).fill(0)],c=[...o,...Array(30-o.length).fill(null)];t[`${n.name}_${r}`]={labels:c,datasets:[{data:s,backgroundColor:e=>{let t=e.raw;return t>=90?`#FA5252`:t>=50?`#FF9966`:`#df2a4c`},borderWidth:0,borderRadius:3,barPercentage:.8,categoryPercentage:.8,maxBarThickness:4,barThickness:4}]}}return t},{})});async function At(e,t){U.value.push(e);try{await R(t)}finally{U.value=U.value.filter(t=>t!==e)}}function jt(){let e=[];for(let t of f.value){let n=t.online?t.name:`${t.name} (${c(`views.workers.offline`).toLowerCase()})`;e.push({label:n,value:t.agentId})}return e}function Z(e){return e&&Tt.value.has(e)?e:null}function Mt(e,t){if(!e?.length)return!0;let n=e.filter(e=>e.startsWith(`!`)).map(e=>e.slice(1)),r=e.filter(e=>!e.startsWith(`!`));return n.includes(t)?!1:r.length===0||r.includes(t)}function Nt(e,t){return!t.platform||Mt(e.os,t.platform.os)&&Mt(e.cpu,t.platform.arch)}function Q(e){let t=[];return e.os?.length&&t.push(`os: ${e.os.join(`, `)}`),e.cpu?.length&&t.push(`cpu: ${e.cpu.join(`, `)}`),t.join(` · `)}function Pt(e){let t=[];for(let n of f.value){let r=Nt(e,n),i=n.online?``:` (${c(`views.workers.offline`).toLowerCase()})`,a=r?``:` — ${c(`views.workers.incompatible`)}`;t.push({label:`${n.name}${i}${a}`,value:n.agentId,disabled:!r})}return t}function Ft(e){return K.value.has(e)}async function It(e,t){if(t===Z(e.workerAgentId))return;let n=new Set(K.value);n.add(e.pluginName),K.value=n;try{t?await De({pluginName:e.pluginName,agentId:t}):await B({pluginName:e.pluginName})}catch{}finally{let t=new Set(K.value);t.delete(e.pluginName),K.value=t}}function $(e){return G.value.has(e)}async function Lt(e,t){if(t===Z(e.workerAgentId))return;let n=new Set(G.value);n.add(e._id),G.value=n;try{t?await Ce({cameraId:e._id,agentId:t}):await L({cameraId:e._id})}catch{}finally{let t=new Set(G.value);t.delete(e._id),G.value=t}}async function Rt(){try{q.value=await z()}catch{}}async function zt(e){if(e&&!J.value&&(J.value=P.value?.suggestedAddresses?.[0]??``,!J.value)){l.openTextDialog({data:{title:c(`views.workers.enable_workers`),contentText:c(`views.workers.address_required`),confirmText:c(`views.workers.ok`)}});return}try{await F(e?{enabled:!0,address:J.value,port:Y.value}:{enabled:!1})}catch{}}async function Bt(){try{await F({address:J.value,port:Y.value})}catch{}}function Vt(e){l.openTextDialog({data:{title:c(`views.workers.remove_worker`),confirmText:c(`views.workers.remove`),contentText:c(`views.workers.remove_worker_confirm`,{name:e.name}),confirmButtonProps:{severity:`danger`}},dialogSize:{desktop:{width:`auto`,maxWidth:`560px`,maxHeight:`90vh`}},onConfirm:async()=>{W.value.push(e.agentId);try{await Ee(e.agentId)}finally{W.value=W.value.filter(t=>t!==e.agentId)}}})}return le(async()=>{u.connect(),await d(),u.loadAll(),H.value=!0}),m(P,e=>{e&&(J.value=e.address,Y.value=e.port)},{immediate:!0}),ce(()=>{u.disconnect()}),(r,a)=>{let s=be,c=n,ee=se,l=i,ne=fe,u=ge,ae=he,d=e,ce=xe,le=o,p=_e,m=ye,y=t,x=oe,S=pe,w=me;return h(),C(`div`,null,[O(te)?b(``,!0):(h(),C(`h1`,ke,g(r.$t(`views.workers.title`)),1)),D(ee,{position:`left`},{default:T(()=>[D(c,{severity:`secondary`,text:``,class:`cui-button p-2 text-color non-draggable-region`,onClick:a[0]||=e=>r.$router.push(`/menu`)},{icon:T(()=>[D(s,{class:`w-6 h-6`})]),_:1})]),_:1}),!O(H)||!O(v)?(h(),C(`div`,Ae,[D(l,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})])):(h(),C(`div`,je,[E(`div`,null,[E(`span`,Me,g(r.$t(`views.workers.configuration`)),1),D(d,{class:`cui-card`},{content:T(()=>[E(`div`,Ne,[E(`div`,Pe,[E(`div`,Fe,[E(`span`,Ie,g(r.$t(`views.workers.enable_workers`)),1),E(`span`,Le,g(r.$t(`views.workers.enable_workers_description`)),1)]),D(ne,{"model-value":O(X),disabled:O(I),class:`shrink-0`,"onUpdate:modelValue":zt},null,8,[`model-value`,`disabled`])]),O(X)?(h(),C(_,{key:0},[E(`div`,Re,[E(`span`,ze,g(r.$t(`views.workers.master_address`)),1),D(u,{modelValue:O(J),"onUpdate:modelValue":a[1]||=e=>ue(J)?J.value=e:null,options:O(St),editable:``,"option-label":`label`,"option-value":`value`,placeholder:r.$t(`views.workers.master_address_placeholder`),class:`w-full`},null,8,[`modelValue`,`options`,`placeholder`]),E(`span`,Be,g(r.$t(`views.workers.master_address_hint`)),1)]),E(`div`,Ve,[E(`span`,He,g(r.$t(`views.workers.leaf_port`)),1),D(ae,{modelValue:O(Y),"onUpdate:modelValue":a[2]||=e=>ue(Y)?Y.value=e:null,min:1024,max:65535,"use-grouping":!1,class:`w-full`},null,8,[`modelValue`]),O(Ct)&&(O(P)?.pairedWorkers??0)>0?(h(),C(`span`,Ue,g(r.$t(`views.workers.port_change_warning`)),1)):b(``,!0)]),E(`div`,We,[D(c,{class:`cui-button-medium`,label:r.$t(`views.workers.save`),loading:O(I),disabled:!O(wt),onClick:Bt},null,8,[`label`,`loading`,`disabled`])])],64)):b(``,!0)])]),_:1})]),O(X)?(h(),C(`div`,Ge,[E(`span`,Ke,g(r.$t(`views.workers.workers`)),1),O(f).length?(h(),de(ce,{key:0,items:O(f),headers:O(Ot),"chart-data":O(kt)},null,8,[`items`,`headers`,`chart-data`])):(h(),de(d,{key:1,class:`cui-card`,pt:{root:{class:`h-full`}}},{content:T(()=>[E(`div`,qe,[D(le,{class:`w-12 h-12 text-muted`}),E(`span`,Je,g(r.$t(`views.workers.no_workers`)),1)])]),_:1}))])):b(``,!0),O(X)&&O(f).length?(h(),C(`div`,Ye,[E(`span`,Xe,g(r.$t(`views.workers.camera_assignments`)),1),D(d,{class:`cui-card`},{content:T(()=>[E(`p`,Ze,g(r.$t(`views.workers.camera_assignments_description`)),1),D(m,{value:O(bt),loading:O(j),pt:V,"striped-rows":``,class:`w-full`},{loading:T(()=>[D(l,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})]),empty:T(()=>[E(`span`,Qe,g(r.$t(`views.workers.no_cameras`)),1)]),default:T(()=>[D(p,{field:`name`,header:r.$t(`views.workers.camera`),"header-class":`p-2 min-w-40`,class:`p-2 min-w-40`},{body:T(({data:e})=>[E(`span`,$e,g(e.name),1)]),_:1},8,[`header`]),D(p,{header:r.$t(`views.workers.workers`),"header-class":`p-2 w-full`,class:`p-2 w-full`},{body:T(({data:e})=>[D(u,{"model-value":Z(e.workerAgentId),options:jt(),"option-label":`label`,"option-value":`value`,placeholder:r.$t(`views.workers.local`),class:`w-full`,"show-clear":``,loading:$(e._id),disabled:$(e._id),"onUpdate:modelValue":t=>Lt(e,t)},null,8,[`model-value`,`options`,`placeholder`,`loading`,`disabled`,`onUpdate:modelValue`])]),_:1},8,[`header`])]),_:1},8,[`value`,`loading`])]),_:1})])):b(``,!0),O(X)&&O(f).length?(h(),C(`div`,et,[E(`span`,tt,g(r.$t(`views.workers.plugin_assignments`)),1),D(d,{class:`cui-card`},{content:T(()=>[E(`p`,nt,g(r.$t(`views.workers.plugin_assignments_description`)),1),D(m,{value:O(xt),loading:O(N),pt:V,"striped-rows":``,class:`w-full`},{loading:T(()=>[D(l,{class:`w-[30px] h-[30px] m-0`,"stroke-width":`5`})]),empty:T(()=>[E(`span`,rt,g(r.$t(`views.workers.no_plugins`)),1)]),default:T(()=>[D(p,{field:`displayName`,header:r.$t(`views.workers.plugin`),"header-class":`p-2 min-w-40`,class:`p-2 min-w-40`},{body:T(({data:e})=>[E(`div`,it,[E(`span`,at,g(e.displayName),1),Q(e)?(h(),C(`span`,ot,g(Q(e)),1)):b(``,!0)])]),_:1},8,[`header`]),D(p,{header:r.$t(`views.workers.workers`),"header-class":`p-2 w-full`,class:`p-2 w-full`},{body:T(({data:e})=>[D(u,{"model-value":Z(e.workerAgentId),options:Pt(e),"option-label":`label`,"option-value":`value`,"option-disabled":`disabled`,placeholder:r.$t(`views.workers.local`),class:`w-full`,"show-clear":``,loading:Ft(e.pluginName),disabled:Ft(e.pluginName),"onUpdate:modelValue":t=>It(e,t)},null,8,[`model-value`,`options`,`placeholder`,`loading`,`disabled`,`onUpdate:modelValue`])]),_:1},8,[`header`])]),_:1},8,[`value`,`loading`])]),_:1})])):b(``,!0),O(X)?(h(),C(`div`,st,[E(`span`,ct,g(r.$t(`views.workers.pair_worker`)),1),D(d,{class:`cui-card`},{content:T(()=>[E(`div`,lt,[E(`span`,ut,g(r.$t(`views.workers.pair_worker_description`)),1),O(q)?(h(),C(_,{key:0},[E(`div`,dt,[E(`span`,ft,g(r.$t(`views.workers.pairing_code`)),1),D(w,null,{default:T(()=>[D(y,{"model-value":O(q).code,readonly:``,type:`text`},null,8,[`model-value`]),D(S,null,{default:T(()=>[D(x,{"action-text":r.$t(`views.workers.copied`),icon:O(re),"button-props":{severity:`secondary`,text:!0},onAction:a[3]||=e=>O(ie)(O(q).code)},null,8,[`action-text`,`icon`])]),_:1})]),_:1}),E(`span`,pt,g(r.$t(`views.workers.pairing_expires`,{minutes:O(Et)})),1)]),E(`div`,mt,[E(`div`,ht,[E(`span`,gt,g(r.$t(`views.workers.pairing_snippet`)),1),D(x,{"action-text":r.$t(`views.workers.copied`),icon:O(re),"button-props":{severity:`secondary`,text:!0},onAction:a[4]||=e=>O(ie)(O(Dt))},null,8,[`action-text`,`icon`])]),E(`pre`,_t,g(O(Dt)),1),E(`span`,vt,g(r.$t(`views.workers.pairing_snippet_hint`)),1)])],64)):b(``,!0),E(`div`,yt,[D(c,{class:`cui-button-medium`,label:r.$t(`views.workers.generate_code`),loading:O(Te),onClick:Rt},null,8,[`label`,`loading`])])])]),_:1})])):b(``,!0)]))])}}}),[[`__scopeId`,`data-v-bde03a44`]]);export{H as default};