@camera.ui/server 0.0.76 → 0.0.77

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 (139) hide show
  1. package/dist/interface/assets/{404-BvkajsAN.js → 404-v5as29bN.js} +1 -1
  2. package/dist/interface/assets/{About-D3w6wB-C.js → About-DiX290Ba.js} +1 -1
  3. package/dist/interface/assets/{Adminpanel-Dl6CGett.js → Adminpanel-D9308sB0.js} +1 -1
  4. package/dist/interface/assets/{Automation-CsQomMnQ.js → Automation-BPOqYi_7.js} +2 -2
  5. package/dist/interface/assets/{Automations-ZmPzbYRc.js → Automations-B2WSo6cc.js} +1 -1
  6. package/dist/interface/assets/{Camera-BD89WTrM.js → Camera-C_33nFP2.js} +2 -2
  7. package/dist/interface/assets/{CameraConsole-CDFo09ch.js → CameraConsole-D5QPkLzW.js} +1 -1
  8. package/dist/interface/assets/{Cameras-C5MLRlQt.js → Cameras-Yaug0yrP.js} +1 -1
  9. package/dist/interface/assets/{Camview-BXwTF330.js → Camview-On97Lml0.js} +1 -1
  10. package/dist/interface/assets/{Config-Bcs8TK2T.js → Config-BZ-qo4Yn.js} +1 -1
  11. package/dist/interface/assets/{ConfigActionCameraControl-DoIIrBay.js → ConfigActionCameraControl-Dw-NcFFP.js} +1 -1
  12. package/dist/interface/assets/{ConfigActionDelay-BQ6T2dIQ.js → ConfigActionDelay-pAWIJ-4v.js} +1 -1
  13. package/dist/interface/assets/{ConfigActionHttp-3piUQ_xd.js → ConfigActionHttp-DsUnm6fz.js} +1 -1
  14. package/dist/interface/assets/{ConfigActionImageInput-DNtCNXJv.js → ConfigActionImageInput-DvHnZPlc.js} +1 -1
  15. package/dist/interface/assets/{ConfigActionNotification-Brn8klrZ.js → ConfigActionNotification-CRFywIqy.js} +1 -1
  16. package/dist/interface/assets/{ConfigActionOutput-B1vavdKH.js → ConfigActionOutput-BaUXR2P8.js} +1 -1
  17. package/dist/interface/assets/{ConfigActionPlugin-DALhMneh.js → ConfigActionPlugin-DB7_qKnI.js} +1 -1
  18. package/dist/interface/assets/{ConfigActionSensor-D4YSq2b7.js → ConfigActionSensor-BylRv6HP.js} +1 -1
  19. package/dist/interface/assets/{ConfigActionSnapshot-wqE9-Yza.js → ConfigActionSnapshot-DlL2H8O7.js} +1 -1
  20. package/dist/interface/assets/{ConfigActionVariable-_qOTtJaU.js → ConfigActionVariable-CrTklOPb.js} +1 -1
  21. package/dist/interface/assets/{ConfigConditionIfElse-Qh_TSsp6.js → ConfigConditionIfElse-CMVwFS0B.js} +1 -1
  22. package/dist/interface/assets/{ConfigConditionSensorState-DY3qC-jV.js → ConfigConditionSensorState-PpCM0BhY.js} +1 -1
  23. package/dist/interface/assets/{ConfigConditionSwitch-CO6GugGi.js → ConfigConditionSwitch-BPZHUjQq.js} +1 -1
  24. package/dist/interface/assets/{ConfigConditionTime-Bis881x9.js → ConfigConditionTime-BGpd11U7.js} +1 -1
  25. package/dist/interface/assets/{ConfigTriggerDetection-78FurfGv.js → ConfigTriggerDetection-bt_19BcB.js} +1 -1
  26. package/dist/interface/assets/{ConfigTriggerGeofence-Csm9Krfq.js → ConfigTriggerGeofence-CJd2RI08.js} +1 -1
  27. package/dist/interface/assets/{ConfigTriggerManual-mtAOiU-R.js → ConfigTriggerManual-BaVkgZIY.js} +1 -1
  28. package/dist/interface/assets/{ConfigTriggerSchedule-m2Q0vw3t.js → ConfigTriggerSchedule-DkFw3-m5.js} +1 -1
  29. package/dist/interface/assets/{ConfigTriggerSensor-BH8UrMLq.js → ConfigTriggerSensor-D1OEaBTZ.js} +1 -1
  30. package/dist/interface/assets/{ConfigTriggerSystem-CuqiTtf5.js → ConfigTriggerSystem-CFbrPFDV.js} +1 -1
  31. package/dist/interface/assets/{ConfigTriggerWebhook-ByNdWu_n.js → ConfigTriggerWebhook-tZohuF4o.js} +1 -1
  32. package/dist/interface/assets/{Console-DBXu0iKa.js → Console-gBmF-6p2.js} +1 -1
  33. package/dist/interface/assets/{CuiActionButton-BIR2fQ-I.js → CuiActionButton-BF1An_rl.js} +1 -1
  34. package/dist/interface/assets/{CuiAvatar-CqKr0qrz.js → CuiAvatar-DT205oI6.js} +1 -1
  35. package/dist/interface/assets/{CuiBBoxPlayground-BEYO128c.js → CuiBBoxPlayground-BVK7ZJ7M.js} +1 -1
  36. package/dist/interface/assets/{CuiBottomSheet-PBDYQFLH.js → CuiBottomSheet-Cl0hr1-B.js} +1 -1
  37. package/dist/interface/assets/CuiBottomSheet-X5ouxxuG.js +1 -0
  38. package/dist/interface/assets/{CuiCameraCard-CH8wRfqD.js → CuiCameraCard-Dg_senYR.js} +1 -1
  39. package/dist/interface/assets/{CuiCameraPipCard-DLhWqYGR.js → CuiCameraPipCard-G2-5iN-s.js} +1 -1
  40. package/dist/interface/assets/{CuiCameraRecordings-CALgktei.js → CuiCameraRecordings-D4vDfkQ6.js} +1 -1
  41. package/dist/interface/assets/{CuiCameraShares-B9jYiJ9p.js → CuiCameraShares-D9EnoU3g.js} +1 -1
  42. package/dist/interface/assets/{CuiCameraSnapshot-DBlooBWY.js → CuiCameraSnapshot-DRu0hF3z.js} +1 -1
  43. package/dist/interface/assets/{CuiCameraTable-BAdLq5hy.js → CuiCameraTable-B1JQ1UgC.js} +1 -1
  44. package/dist/interface/assets/{CuiFloatingButton-CYP3wZAj.js → CuiFloatingButton-CXLHlbnk.js} +1 -1
  45. package/dist/interface/assets/{CuiImage-BR35PcJ-.js → CuiImage-Dkb0xMtM.js} +1 -1
  46. package/dist/interface/assets/{CuiMenu-DwGJrz2-.js → CuiMenu-EoB3gkMJ.js} +1 -1
  47. package/dist/interface/assets/{CuiPluginCard-CMxEkiWE.js → CuiPluginCard-V2Gm7pfr.js} +2 -2
  48. package/dist/interface/assets/{CuiPluginOAuthButton-ClmuZ91f.js → CuiPluginOAuthButton-DaOHuN78.js} +2 -2
  49. package/dist/interface/assets/{CuiQRCode-V_yG_KUN.js → CuiQRCode-BVOIi8VD.js} +1 -1
  50. package/dist/interface/assets/{CuiRecordingsGrid-BaGvFhVs.js → CuiRecordingsGrid-Bxmlizts.js} +1 -1
  51. package/dist/interface/assets/{CuiSchema-CbMtJJnY.js → CuiSchema-Cfc1vzp6.js} +1 -1
  52. package/dist/interface/assets/{CuiTopNavbarItem-CXmxI8Wn.js → CuiTopNavbarItem-MJr5l6Aq.js} +1 -1
  53. package/dist/interface/assets/{CuiTopbarSlot-Bo2vH_kI.js → CuiTopbarSlot-DTNeuYvo.js} +1 -1
  54. package/dist/interface/assets/{Faces-pLWD7GFV.js → Faces-CxSpBJx5.js} +1 -1
  55. package/dist/interface/assets/{FirstSteps-Cowo-kpk.js → FirstSteps-B8SHK9dj.js} +1 -1
  56. package/dist/interface/assets/{Instances-CJSxOTS5.js → Instances-Kx6sSCDX.js} +1 -1
  57. package/dist/interface/assets/{Menu-BV2Npq07.js → Menu-DD_cREVS.js} +1 -1
  58. package/dist/interface/assets/{OAuthDeviceFlow-C2_Rpjxt.js → OAuthDeviceFlow-Bnm4w-pk.js} +1 -1
  59. package/dist/interface/assets/{Plugin-C8KnaxI5.js → Plugin-BgwfrbBH.js} +1 -1
  60. package/dist/interface/assets/{PluginConsole-DPQFT6GB.js → PluginConsole-Ba6GhN1X.js} +1 -1
  61. package/dist/interface/assets/{PluginSchema-BVZcuMh7.js → PluginSchema-Xd9otIzG.js} +1 -1
  62. package/dist/interface/assets/{Plugins-tauNbtus.js → Plugins-grcgVS0w.js} +2 -2
  63. package/dist/interface/assets/{Recordings-BxczmYsS.js → Recordings-k8LBscvM.js} +1 -1
  64. package/dist/interface/assets/{Settings-B22NP1uX.js → Settings-BZ1_vx3z.js} +1 -1
  65. package/dist/interface/assets/{SettingsAccount-Dm4MKhXA.js → SettingsAccount-Detq2ves.js} +1 -1
  66. package/dist/interface/assets/SettingsAccount-Do1kFf9T.js +1 -0
  67. package/dist/interface/assets/SettingsAppearance-Cf-c_lny.js +1 -0
  68. package/dist/interface/assets/{SettingsAppearance-BRzzO7Tp.js → SettingsAppearance-DffpVG5f.js} +1 -1
  69. package/dist/interface/assets/{SettingsBackup-B9L8WRBn.js → SettingsBackup-DS3mOZTd.js} +1 -1
  70. package/dist/interface/assets/{SettingsNotifications-CYFuyAb8.js → SettingsNotifications-ClYHH53Q.js} +1 -1
  71. package/dist/interface/assets/{SettingsRecordings-C2BVYt_b.js → SettingsRecordings-BW1_cnvh.js} +1 -1
  72. package/dist/interface/assets/{SettingsRemote-14DByUYb.js → SettingsRemote-DeCCrkpB.js} +1 -1
  73. package/dist/interface/assets/SettingsSystem-CorHEoD1.js +2 -0
  74. package/dist/interface/assets/{SettingsUsers-BunfJfFX.js → SettingsUsers-DRNl2lpx.js} +1 -1
  75. package/dist/interface/assets/{Terminal-B62d7hZL.js → Terminal-oFHYhs5G.js} +1 -1
  76. package/dist/interface/assets/{VariableInput-6KBjycfw.js → VariableInput-DkFR7QdD.js} +1 -1
  77. package/dist/interface/assets/{VariableSuggestions-BCUwMbk2.js → VariableSuggestions-Ceb5nNVA.js} +1 -1
  78. package/dist/interface/assets/VersionsHandler-DEqO9lRf.js +7 -0
  79. package/dist/interface/assets/{Workers-DouAZ6IN.js → Workers-CjwdsG_Q.js} +1 -1
  80. package/dist/interface/assets/api-DG-9_slP.js +2 -0
  81. package/dist/interface/assets/{api-e-E4EslC.js → api-D_KNNgZ1.js} +1 -1
  82. package/dist/interface/assets/{auth-DaVXT_yR.js → auth-DOMDhkS8.js} +1 -1
  83. package/dist/interface/assets/{automations-D-pcb6DP.js → automations-D8y64IMA.js} +1 -1
  84. package/dist/interface/assets/{automations-Dcjr9n0g.js → automations-DetVBJsj.js} +1 -1
  85. package/dist/interface/assets/{backup-DxSE0DNH.js → backup-4XfddN8z.js} +1 -1
  86. package/dist/interface/assets/{cameras-CKYu9vm7.js → cameras-CuAJzX9E.js} +1 -1
  87. package/dist/interface/assets/{cameras.schema-MCmXBV5E.js → cameras.schema-B93btXUO.js} +1 -1
  88. package/dist/interface/assets/cloudHandoff-jiSQUTbC.js +1 -0
  89. package/dist/interface/assets/{hasPermission-rf-FHUEM.js → hasPermission-BTRA5070.js} +1 -1
  90. package/dist/interface/assets/{instances-IBssFzSt.js → instances-C9noeaJ-.js} +1 -1
  91. package/dist/interface/assets/{locale-Ddd4TTHX.js → locale-BJ2C57Gq.js} +1 -1
  92. package/dist/interface/assets/{main-9TGn6n93.js → main-BBDURrXh.js} +2 -2
  93. package/dist/interface/assets/{notifications-iSDZTfsc.js → notifications-C1aijpt-.js} +1 -1
  94. package/dist/interface/assets/{plugins-BSosZ7mD.js → plugins--S_Q7XSz.js} +1 -1
  95. package/dist/interface/assets/{round-restart-alt-CRIrMOlo.js → round-restart-alt-D3mETXCy.js} +1 -1
  96. package/dist/interface/assets/{router-t0j7Kqm7.js → router-BeAHAEXo.js} +2 -2
  97. package/dist/interface/assets/{routerState-Buu48zeq.js → routerState-C_8KP3kD.js} +1 -1
  98. package/dist/interface/assets/{server-DIS79xtm.js → server-DAHar4Ts.js} +1 -1
  99. package/dist/interface/assets/{shares-bO9z1yJK.js → shares-DHjtR1MT.js} +1 -1
  100. package/dist/interface/assets/{theme-C4hbpNuJ.js → theme-LZAl6ikG.js} +1 -1
  101. package/dist/interface/assets/{types-Wl5Ty2yP.js → types-QvsYiGdQ.js} +1 -1
  102. package/dist/interface/assets/{ui-CBRpDu-c.js → ui-q3Xp2p6M.js} +1 -1
  103. package/dist/interface/assets/{useBiometricCredentials-DnB31QCq.js → useBiometricCredentials-CwpN9ZTB.js} +1 -1
  104. package/dist/interface/assets/{useCameraOptions-CZUtka_F.js → useCameraOptions-Jllb4jNr.js} +1 -1
  105. package/dist/interface/assets/{useCuiCameraDrawer-DW9-Cdys.js → useCuiCameraDrawer-zbw8XiW5.js} +1 -1
  106. package/dist/interface/assets/{useCuiDialog-DrBTif-3.js → useCuiDialog-C7VXcZOW.js} +1 -1
  107. package/dist/interface/assets/{useFileDownload-DksvUFZ8.js → useFileDownload-Et7NRBap.js} +1 -1
  108. package/dist/interface/assets/{useLogsSocket-HNen2ftk.js → useLogsSocket-C70Hd1fl.js} +2 -2
  109. package/dist/interface/assets/useLogsSocket-DALNtd8_.css +1 -0
  110. package/dist/interface/assets/{useSharedComposables-DUNE9Fjf.js → useSharedComposables-CTXKSCVm.js} +1 -1
  111. package/dist/interface/assets/{useStreamStatus-BXUMDut2.js → useStreamStatus-D3b5-kAN.js} +1 -1
  112. package/dist/interface/assets/{users.schema-B7Gwrqjw.js → users.schema-nZK4wXvw.js} +1 -1
  113. package/dist/interface/assets/{vendor-cameraui-DpqS51DT.js → vendor-cameraui-tvNekvZ-.js} +46 -46
  114. package/dist/interface/assets/{vendor-core-DAinYQ9K.js → vendor-core-DinQdIbm.js} +1 -1
  115. package/dist/interface/assets/{vendor-primevue-CG0iLCzA.js → vendor-primevue-D0-7UQst.js} +1 -1
  116. package/dist/interface/assets/{view-grid-DQkfCMI_.js → view-grid-B5oq2YBJ.js} +1 -1
  117. package/dist/interface/index.html +36 -36
  118. package/dist/interface/sw.js +1 -1
  119. package/dist/server/package.json +1 -1
  120. package/dist/server/src/api/controllers/api.controller.js +9 -1
  121. package/dist/server/src/api/controllers/api.controller.js.map +1 -1
  122. package/dist/server/src/camera/decoder/detection-coordinator.js +15 -5
  123. package/dist/server/src/camera/decoder/detection-coordinator.js.map +1 -1
  124. package/dist/server/src/camera/sensors/controller.d.ts +1 -0
  125. package/dist/server/src/camera/sensors/controller.js +9 -4
  126. package/dist/server/src/camera/sensors/controller.js.map +1 -1
  127. package/dist/server/src/services/config/index.d.ts +1 -0
  128. package/dist/server/src/services/config/index.js +1 -0
  129. package/dist/server/src/services/config/index.js.map +1 -1
  130. package/package.json +1 -1
  131. package/dist/interface/assets/CuiBottomSheet-CeCMvh1K.js +0 -1
  132. package/dist/interface/assets/SettingsAccount-D9YRXC2V.js +0 -1
  133. package/dist/interface/assets/SettingsAppearance-BICuFMxO.js +0 -1
  134. package/dist/interface/assets/SettingsSystem-DGjWaU3j.js +0 -2
  135. package/dist/interface/assets/VersionsHandler-Cb6WnQiP.js +0 -7
  136. package/dist/interface/assets/api-NtCA6-OA.js +0 -2
  137. package/dist/interface/assets/cloudHandoff-DoUXb29N.js +0 -1
  138. package/dist/interface/assets/useLogsSocket-Ce1ISNIw.css +0 -1
  139. /package/dist/interface/assets/{logo-512-DLKVOU2S.png → error-256-DLKVOU2S.png} +0 -0
@@ -1 +1 @@
1
- import{$n as e,Cn as t,Gn as n,Jn as r,Rn as i,Tn as a,Wn as o,Xn as s,Yn as c,Yt as l,Zn as u,_n as d,ar as f,dn as p,er as m,gn as ee,ir as h,ln as g,nr as _,on as v,qn as y,rr as b,sr as x,un as S,xn as C}from"./vendor-CF-D4B9g.js";import{Ai as te,Ei as w,Fi as T,Ii as E,Ni as D,Si as O,Ti as ne,Ui as re,Vi as k,bi as ie,gi as A,hi as ae,xi as j,yi as M}from"./vendor-cameraui-DpqS51DT.js";var oe=typeof window<`u`,N,P=e=>N=e,F=Symbol();function I(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var L;(function(e){e.direct=`direct`,e.patchObject=`patch object`,e.patchFunction=`patch function`})(L||={});var R=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null};function z(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function se(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){ue(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function ce(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function B(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var V=typeof navigator==`object`?navigator:{userAgent:``},le=/Macintosh/.test(V.userAgent)&&/AppleWebKit/.test(V.userAgent)&&!/Safari/.test(V.userAgent),ue=oe?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!le?de:`msSaveOrOpenBlob`in V?fe:pe:()=>{};function de(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?B(r):ce(r.href)?se(e,t,n):(r.target=`_blank`,B(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){B(r)},0))}function fe(e,t=`download`,n){if(typeof e==`string`)if(ce(e))se(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){B(t)})}else navigator.msSaveOrOpenBlob(z(e,n),t)}function pe(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return se(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(R.HTMLElement))||`safari`in R,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||le)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:me}=Object;function he(){let t=o(!0),n=t.run(()=>e({})),r=[],i=[],a=c({install(e){P(a),a._a=e,e.provide(F,a),e.config.globalProperties.$pinia=a,i.forEach(e=>r.push(e)),i=[]},use(e){return this._a?r.push(e):i.push(e),this},_p:r,_a:null,_e:t,_s:new Map,state:n});return a}var ge=()=>{};function _e(e,t,r,i=ge){e.add(t);let a=()=>{e.delete(t)&&i()};return!r&&n()&&s(a),a}function H(e,...t){e.forEach(e=>{e(...t)})}var ve=e=>e(),ye=Symbol(),be=Symbol();function xe(e,t){e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(let n in t){if(!t.hasOwnProperty(n))continue;let i=t[n],a=e[n];I(a)&&I(i)&&e.hasOwnProperty(n)&&!r(i)&&!y(i)?e[n]=xe(a,i):e[n]=i}return e}var Se=Symbol();function Ce(e){return!I(e)||!Object.prototype.hasOwnProperty.call(e,Se)}var{assign:U}=Object;function we(e){return!!(r(e)&&e.effect)}function Te(e,t,n,r){let{state:i,actions:a,getters:o}=t,s=n.state.value[e],u;function d(){return s||(n.state.value[e]=i?i():{}),U(f(n.state.value[e]),a,Object.keys(o||{}).reduce((t,r)=>(t[r]=c(l(()=>{P(n);let t=n._s.get(e);return o[r].call(t,t)})),t),{}))}return u=Ee(e,d,t,n,r,!0),u}function Ee(t,n,a={},s,c,l){let d,f=U({actions:{}},a),p={deep:!0},m,h,g=new Set,_=new Set,v=s.state.value[t];!l&&!v&&(s.state.value[t]={}),e({});let x;function S(e){let n;m=h=!1,typeof e==`function`?(e(s.state.value[t]),n={type:L.patchFunction,storeId:t,events:void 0}):(xe(s.state.value[t],e),n={type:L.patchObject,payload:e,storeId:t,events:void 0});let r=x=Symbol();ee().then(()=>{x===r&&(m=!0)}),h=!0,H(g,n,s.state.value[t])}let C=l?function(){let{state:e}=a,t=e?e():{};this.$patch(e=>{U(e,t)})}:ge;function te(){d.stop(),g.clear(),_.clear(),s._s.delete(t)}let w=(e,n=``)=>{if(ye in e)return e[be]=n,e;let r=function(){P(s);let n=Array.from(arguments),i=new Set,a=new Set;function o(e){i.add(e)}function c(e){a.add(e)}H(_,{args:n,name:r[be],store:T,after:o,onError:c});let l;try{l=e.apply(this&&this.$id===t?this:T,n)}catch(e){throw H(a,e),e}return l instanceof Promise?l.then(e=>(H(i,e),e)).catch(e=>(H(a,e),Promise.reject(e))):(H(i,l),l)};return r[ye]=!0,r[be]=n,r},T=u({_p:s,$id:t,$onAction:_e.bind(null,_),$patch:S,$reset:C,$subscribe(e,n={}){let r=_e(g,e,n.detached,()=>a()),a=d.run(()=>i(()=>s.state.value[t],r=>{(n.flush===`sync`?h:m)&&e({storeId:t,type:L.direct,events:void 0},r)},U({},p,n)));return r},$dispose:te});s._s.set(t,T);let E=(s._a&&s._a.runWithContext||ve)(()=>s._e.run(()=>(d=o()).run(()=>n({action:w}))));for(let e in E){let n=E[e];r(n)&&!we(n)||y(n)?l||(v&&Ce(n)&&(r(n)?n.value=v[e]:xe(n,v[e])),s.state.value[t][e]=n):typeof n==`function`&&(E[e]=w(n,e),f.actions[e]=n)}return U(T,E),U(b(T),E),Object.defineProperty(T,"$state",{get:()=>s.state.value[t],set:e=>{S(t=>{U(t,e)})}}),s._p.forEach(e=>{U(T,d.run(()=>e({store:T,app:s._a,pinia:s,options:f})))}),v&&l&&a.hydrate&&a.hydrate(T.$state,v),m=!0,h=!0,T}function De(e,t,n){let r,i=typeof t==`function`;r=i?n:t;function a(n,a){let o=S();return n||=o?p(F,null):null,n&&P(n),n=N,n._s.has(e)||(i?Ee(e,t,r,n):Te(e,r,n)),n._s.get(e)}return a.$id=e,a}function Oe(e){let t=b(e),n={};for(let i in t){let a=t[i];a.effect?n[i]=l({get:()=>e[i],set(t){e[i]=t}}):(r(a)||y(a))&&(n[i]=h(e,i))}return n}var W=typeof document<`u`;function ke(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function Ae(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&ke(e.default)}var G=Object.assign;function je(e,t){let n={};for(let r in t){let i=t[r];n[r]=q(i)?i.map(e):e(i)}return n}var K=()=>{},q=Array.isArray;function Me(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var Ne=Symbol(``);function J(e,t){return G(Error(),{type:e,[Ne]:!0},t)}function Y(e,t){return e instanceof Error&&Ne in e&&(t==null||!!(e.type&t))}var Pe=Symbol(``),Fe=Symbol(``),Ie=Symbol(``),Le=Symbol(``),Re=Symbol(``);function ze(){return p(Ie)}function Be(e){return p(Le)}var Ve=/#/g,He=/&/g,Ue=/\//g,We=/=/g,Ge=/\?/g,Ke=/\+/g,qe=/%5B/g,Je=/%5D/g,Ye=/%5E/g,Xe=/%60/g,Ze=/%7B/g,Qe=/%7C/g,$e=/%7D/g,et=/%20/g;function tt(e){return e==null?``:encodeURI(``+e).replace(Qe,`|`).replace(qe,`[`).replace(Je,`]`)}function nt(e){return tt(e).replace(Ze,`{`).replace($e,`}`).replace(Ye,`^`)}function rt(e){return tt(e).replace(Ke,`%2B`).replace(et,`+`).replace(Ve,`%23`).replace(He,`%26`).replace(Xe,"`").replace(Ze,`{`).replace($e,`}`).replace(Ye,`^`)}function it(e){return rt(e).replace(We,`%3D`)}function at(e){return tt(e).replace(Ve,`%23`).replace(Ge,`%3F`)}function ot(e){return at(e).replace(Ue,`%2F`)}function st(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var ct=/\/$/,lt=e=>e.replace(ct,``);function ut(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=_t(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:st(o)}}function dt(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function ft(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function pt(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&X(t.matched[r],n.matched[i])&&mt(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function X(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function mt(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!ht(e[n],t[n]))return!1;return!0}function ht(e,t){return q(e)?gt(e,t):q(t)?gt(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function gt(e,t){return q(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function _t(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o<r.length;o++)if(s=r[o],s!==`.`)if(s===`..`)a>1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var Z={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function vt(e){if(!e)if(W){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),lt(e)}var yt=/^[^#]+#/;function bt(e,t){return e.replace(yt,`#`)+t}function xt(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var St=()=>({left:window.scrollX,top:window.scrollY});function Ct(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=xt(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function wt(e,t){return(history.state?history.state.position-t:-1)+e}var Tt=new Map;function Et(e,t){Tt.set(e,t)}function Dt(e){let t=Tt.get(e);return Tt.delete(e),t}function Ot(e){return typeof e==`string`||e&&typeof e==`object`}function kt(e){return typeof e==`string`||typeof e==`symbol`}function At(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace(Ke,` `),i=r.indexOf(`=`),a=st(i<0?r:r.slice(0,i)),o=i<0?null:st(r.slice(i+1));if(a in t){let e=t[a];q(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function jt(e){let t=``;for(let n in e){let r=e[n];if(n=it(n),r==null){r!==void 0&&(t+=(t.length?`&`:``)+n);continue}(q(r)?r.map(e=>e&&rt(e)):[r&&rt(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Mt(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=q(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function Q(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Nt(e,n,r){let i=e.value;if(!i)return;let a=i,o=()=>{a[n].delete(r)};t(o),C(o),d(()=>{let t=e.value;t&&(a=t),a[n].add(r)}),a[n].add(r)}function Pt(e){Nt(p(Pe,{}),`updateGuards`,e)}function $(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(J(4,{from:n,to:t})):e instanceof Error?c(e):Ot(e)?c(J(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Ft(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(ke(s)){let c=(s.__vccOpts||s)[t];c&&a.push($(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=Ae(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&$(c,n,r,o,e,i)()}))}}return a}function It(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>X(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>X(e,s))||i.push(s))}return[n,r,i]}var Lt=()=>location.protocol+`//`+location.host;function Rt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),ft(n,``)}return ft(n,e)+r+i}function zt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Rt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(G({},e.state,{scroll:St()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Bt(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?St():null}}function Vt(e){let{history:t,location:n}=window,r={value:Rt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Lt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,G({},t.state,Bt(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=G({},i.value,t.state,{forward:e,scroll:St()});a(o.current,o,!0),a(e,G({},Bt(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Ht(e){e=vt(e);let t=Vt(e),n=zt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=G({location:``,base:e,go:r,createHref:bt.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}function Ut(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),Ht(e)}var Wt={type:0,value:``},Gt=/[a-zA-Z0-9_]/;function Kt(e){if(!e)return[[]];if(e===`/`)return[[Wt]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;s<e.length;)switch(c=e[s++],n){case 0:c===`\\`?(r=n,n=4):c===`/`?(l&&d(),o()):c===`:`?(d(),n=1):f();break;case 4:f(),n=r;break;case 1:c===`(`?n=2:Gt.test(c)?f():(d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--);break;case 2:c===`)`?u[u.length-1]==`\\`?u=u.slice(0,-1)+c:n=3:u+=c;break;case 3:d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--,u=``;break;default:t(`Unknown state`);break}return n===2&&t(`Unfinished custom RegExp for param "${l}"`),d(),o(),i}var qt=`[^/]+?`,Jt={sensitive:!1,strict:!1,start:!0,end:!0},Yt=/[.+*?^${}()[\]/\\]/g;function Xt(e,t){let n=G({},Jt,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[90];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=40+(n.sensitive?.25:0);if(o.type===0)r||(i+=`/`),i+=o.value.replace(Yt,`\\$&`),s+=40;else if(o.type===1){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||qt;if(u!==qt){s+=10;try{RegExp(`(${u})`)}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=20,c&&(s+=-8),n&&(s+=-20),u===`.*`&&(s+=-50)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=.7000000000000001}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function s(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function c(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===0)n+=e.value;else if(e.type===1){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(q(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=q(c)?c.join(`/`):c;if(!l)if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`);n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:s,stringify:c}}function Zt(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===80?-1:1:e.length>t.length?t.length===1&&t[0]===80?1:-1:0}function Qt(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=Zt(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if($t(r))return 1;if($t(i))return-1}return i.length-r.length}function $t(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var en={strict:!1,end:!0,sensitive:!1};function tn(e,t,n){let r=G(Xt(Kt(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function nn(e,t){let n=[],r=new Map;t=Me(en,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=an(e);s.aliasOf=r&&r.record;let l=Me(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(an(G({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=tn(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!sn(d)&&o(e.name)),dn(d)&&c(d),s.children){let e=s.children;for(let t=0;t<e.length;t++)a(e[t],d,r&&r.children[t])}r||=d}return f?()=>{o(f)}:K}function o(e){if(kt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=ln(e,n);n.splice(t,0,e),e.record.name&&!sn(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw J(1,{location:e});s=i.record.name,a=G(rn(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&rn(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw J(1,{location:e,currentLocation:t});s=i.record.name,a=G({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:cn(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function rn(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function an(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:on(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function on(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function sn(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function cn(e){return e.reduce((e,t)=>G(e,t.meta),{})}function ln(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Qt(e,t[i])<0?r=i:n=i+1}let i=un(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function un(e){let t=e;for(;t=t.parent;)if(dn(t)&&Qt(e,t)===0)return t}function dn({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function fn(e){let t=p(Ie),n=p(Le),r=l(()=>{let n=x(e.to);return t.resolve(n)}),i=l(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(X.bind(null,i));if(o>-1)return o;let s=_n(e[t-2]);return t>1&&_n(i)===s&&a[a.length-1].path!==s?a.findIndex(X.bind(null,e[t-2])):o}),a=l(()=>i.value>-1&&gn(n.params,r.value.params)),o=l(()=>i.value>-1&&i.value===n.matched.length-1&&mt(n.params,r.value.params));function s(n={}){if(hn(n)){let n=t[x(e.replace)?`replace`:`push`](x(e.to)).catch(K);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:l(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function pn(e){return e.length===1?e[0]:e}var mn=v({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:fn,setup(e,{slots:t}){let n=u(fn(e)),{options:r}=p(Ie),i=l(()=>({[vn(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[vn(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&pn(t.default(n));return e.custom?r:g(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function hn(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function gn(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!q(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function _n(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var vn=(e,t,n)=>e??t??n,yn=v({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(t,{attrs:n,slots:r}){let o=p(Re),s=l(()=>t.route||o.value),c=p(Fe,0),u=l(()=>{let e=x(c),{matched:t}=s.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),d=l(()=>s.value.matched[u.value]);a(Fe,l(()=>u.value+1)),a(Pe,d),a(Re,s);let f=e();return i(()=>[f.value,d.value,t.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!X(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=s.value,i=t.name,a=d.value,o=a&&a.components[i];if(!o)return bn(r.default,{Component:o,route:e});let c=a.props[i],l=g(o,G({},c?c===!0?e.params:typeof c==`function`?c(e):c:null,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[i]=null)},ref:f}));return bn(r.default,{Component:l,route:e})||l}}});function bn(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var xn=yn;function Sn(e){let t=nn(e.routes,e),n=e.parseQuery||At,r=e.stringifyQuery||jt,i=e.history,a=Q(),o=Q(),s=Q(),c=_(Z),l=Z;W&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let u=je.bind(null,e=>``+e),d=je.bind(null,ot),f=je.bind(null,st);function p(e,n){let r,i;return kt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function h(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function g(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,a){if(a=G({},a||c.value),typeof e==`string`){let r=ut(n,e,a.path),o=t.resolve({path:r.path},a),s=i.createHref(r.fullPath);return G(r,o,{params:f(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=G({},e,{path:ut(n,e.path,a.path).path});else{let t=G({},e.params);for(let e in t)t[e]??delete t[e];o=G({},e,{params:d(t)}),a.params=d(a.params)}let s=t.resolve(o,a),l=e.hash||``;s.params=u(f(s.params));let p=dt(r,G({},e,{hash:nt(l),path:s.path})),m=i.createHref(p);return G({fullPath:p,hash:l,query:r===jt?Mt(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?ut(n,e,c.value.path):G({},e)}function S(e,t){if(l!==e)return J(8,{from:t,to:e})}function C(e){return T(e)}function te(e){return C(G(b(e),{replace:!0}))}function w(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),G({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=l=y(e),i=c.value,a=e.state,o=e.force,s=e.replace===!0,u=w(n,i);if(u)return T(G(b(u),{state:typeof u==`object`?G({},a,u.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&pt(r,i,n)&&(f=J(16,{to:d,from:i}),P(i,i,!0,!1)),(f?Promise.resolve(f):O(d,i)).catch(e=>Y(e)?Y(e,2)?e:N(e):M(e,d,i)).then(e=>{if(e){if(Y(e,2))return T(G({replace:s},b(e.to),{state:typeof e.to==`object`?G({},a,e.to.state):a,force:o}),t||d)}else e=re(d,i,!0,s,a);return ne(d,i,e),e})}function E(e,t){let n=S(e,t);return n?Promise.reject(n):Promise.resolve()}function D(e){let t=L.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function O(e,t){let n,[r,i,s]=It(e,t);n=Ft(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push($(r,e,t))});let c=E.bind(null,e,t);return n.push(c),z(n).then(()=>{n=[];for(let r of a.list())n.push($(r,e,t));return n.push(c),z(n)}).then(()=>{n=Ft(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push($(r,e,t))});return n.push(c),z(n)}).then(()=>{n=[];for(let r of s)if(r.beforeEnter)if(q(r.beforeEnter))for(let i of r.beforeEnter)n.push($(i,e,t));else n.push($(r.beforeEnter,e,t));return n.push(c),z(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Ft(s,`beforeRouteEnter`,e,t,D),n.push(c),z(n))).then(()=>{n=[];for(let r of o.list())n.push($(r,e,t));return n.push(c),z(n)}).catch(e=>Y(e,8)?e:Promise.reject(e))}function ne(e,t,n){s.list().forEach(r=>D(()=>r(e,t,n)))}function re(e,t,n,r,a){let o=S(e,t);if(o)return o;let s=t===Z,l=W?history.state:{};n&&(r||s?i.replace(e.fullPath,G({scroll:s&&l&&l.scroll},a)):i.push(e.fullPath,a)),c.value=e,P(e,t,n,s),N()}let k;function ie(){k||=i.listen((e,t,n)=>{if(!R.listening)return;let r=y(e),a=w(r,R.currentRoute.value);if(a){T(G(a,{replace:!0,force:!0}),r).catch(K);return}l=r;let o=c.value;W&&Et(wt(o.fullPath,n.delta),St()),O(r,o).catch(e=>Y(e,12)?e:Y(e,2)?(T(G(b(e.to),{force:!0}),r).then(e=>{Y(e,20)&&!n.delta&&n.type===`pop`&&i.go(-1,!1)}).catch(K),Promise.reject()):(n.delta&&i.go(-n.delta,!1),M(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!Y(e,8)?i.go(-n.delta,!1):n.type===`pop`&&Y(e,20)&&i.go(-1,!1)),ne(r,o,e)}).catch(K)})}let A=Q(),ae=Q(),j;function M(e,t,n){N(e);let r=ae.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function oe(){return j&&c.value!==Z?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function N(e){return j||(j=!e,ie(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function P(t,n,r,i){let{scrollBehavior:a}=e;if(!W||!a)return Promise.resolve();let o=!r&&Dt(wt(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return ee().then(()=>a(t,n,o)).then(e=>e&&Ct(e)).catch(e=>M(e,t,n))}let F=e=>i.go(e),I,L=new Set,R={currentRoute:c,listening:!0,addRoute:p,removeRoute:h,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:g,resolve:y,options:e,push:C,replace:te,go:F,back:()=>F(-1),forward:()=>F(1),beforeEach:a.add,beforeResolve:o.add,afterEach:s.add,onError:ae.add,isReady:oe,install(e){e.component(`RouterLink`,mn),e.component(`RouterView`,xn),e.config.globalProperties.$router=R,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>x(c)}),W&&!I&&c.value===Z&&(I=!0,C(i.location).catch(e=>{}));let t={};for(let e in Z)Object.defineProperty(t,e,{get:()=>c.value[e],enumerable:!0});e.provide(Ie,R),e.provide(Le,m(t)),e.provide(Re,c);let n=e.unmount;L.add(e),e.unmount=function(){L.delete(e),L.size<1&&(l=Z,k&&k(),k=null,c.value=Z,I=!1,j=!1),n()}}};function z(e){return e.reduce((e,t)=>e.then(()=>D(t)),Promise.resolve())}return R}k({mounted(e,t){let n=t.arg?.split(`,`)??!0;if(typeof t.value==`function`)ae(n,t.value,{target:e});else{let[r,i]=t.value;ae(n,r,{target:e,...i})}}});var Cn=k({mounted(e,t){typeof t.value==`function`?A(e,t.value,{modifiers:t.modifiers}):A(e,...t.value)}});k({mounted(e,t){let[n,r]=typeof t.value==`function`?[t.value,{}]:t.value,{height:a,bottom:o,left:s,right:c,top:l,width:u,x:d,y:f}=M(e,r);i([a,o,s,c,l,u,d,f],()=>n({height:a,bottom:o,left:s,right:c,top:l,width:u,x:d,y:f}))}});var wn=k({mounted(e,t){let n=t.value;if(typeof n==`function`)i(ie(e),e=>n(e));else{let[t,r]=n;i(ie(e,r),e=>t(e))}}});k({mounted(e,t){let n=typeof t.value==`function`?t.value:t.value?.[0],{width:r,height:a}=j(e,...typeof t.value==`function`?[]:t.value.slice(1));i([r,a],([e,t])=>n({width:e,height:t}))}}),k({mounted(e,t){if(typeof t.value==`function`){let n=t.value;i(O(e),e=>n(e),{immediate:!0})}else{let[n,r]=t.value;if(r?.controls){let t=O(e,r);i(t.isVisible,()=>n(t),{immediate:!0})}else i(O(e,r),e=>n(e),{immediate:!0})}}}),k({mounted(e,t){typeof t.value==`function`?ne(e,t.value):ne(e,...t.value)}});var Tn=k({mounted(e,t){typeof t.value==`function`?w(e,t.value):w(e,...t.value)}});k({mounted(e,t){let[n,r]=typeof t.value==`function`?[t.value,{}]:t.value;i(re(u(te(e,r)),`stop`),e=>n(e))}}),k({mounted(e,t){typeof t.value==`function`?D(e,t.value):D(e,...t.value)}}),k({mounted(e,t){if(typeof t.value==`function`){let n=t.value,r=T(e,{onScroll(){n(r)},onStop(){n(r)}})}else{let[n,r]=t.value,i=T(e,{...r,onScroll(e){var t;(t=r.onScroll)==null||t.call(r,e),n(i)},onStop(e){var t;(t=r.onStop)==null||t.call(r,e),n(i)}})}}});function En(){let e=!1,t=_(!1);return k((n,r)=>{if(t.value=r.value,e)return;e=!0;let a=E(n,r.value);i(t,e=>a.value=e)})}En();export{Ut as a,Be as c,De as d,Oe as f,Sn as i,ze as l,Tn as n,Ht as o,Cn as r,Pt as s,wn as t,he as u};
1
+ import{$n as e,Cn as t,Gn as n,Jn as r,Rn as i,Tn as a,Wn as o,Xn as s,Yn as c,Yt as l,Zn as u,_n as d,ar as f,dn as p,er as m,gn as ee,ir as h,ln as g,nr as _,on as v,qn as y,rr as b,sr as x,un as S,xn as C}from"./vendor-CF-D4B9g.js";import{Ai as te,Ei as w,Fi as T,Ii as E,Ni as D,Si as O,Ti as ne,Ui as re,Vi as k,bi as ie,gi as A,hi as ae,xi as j,yi as M}from"./vendor-cameraui-tvNekvZ-.js";var oe=typeof window<`u`,N,P=e=>N=e,F=Symbol();function I(e){return e&&typeof e==`object`&&Object.prototype.toString.call(e)===`[object Object]`&&typeof e.toJSON!=`function`}var L;(function(e){e.direct=`direct`,e.patchObject=`patch object`,e.patchFunction=`patch function`})(L||={});var R=typeof window==`object`&&window.window===window?window:typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:typeof globalThis==`object`?globalThis:{HTMLElement:null};function z(e,{autoBom:t=!1}={}){return t&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob([``,e],{type:e.type}):e}function se(e,t,n){let r=new XMLHttpRequest;r.open(`GET`,e),r.responseType=`blob`,r.onload=function(){ue(r.response,t,n)},r.onerror=function(){console.error(`could not download file`)},r.send()}function ce(e){let t=new XMLHttpRequest;t.open(`HEAD`,e,!1);try{t.send()}catch{}return t.status>=200&&t.status<=299}function B(e){try{e.dispatchEvent(new MouseEvent(`click`))}catch{let t=new MouseEvent(`click`,{bubbles:!0,cancelable:!0,view:window,detail:0,screenX:80,screenY:20,clientX:80,clientY:20,ctrlKey:!1,altKey:!1,shiftKey:!1,metaKey:!1,button:0,relatedTarget:null});e.dispatchEvent(t)}}var V=typeof navigator==`object`?navigator:{userAgent:``},le=/Macintosh/.test(V.userAgent)&&/AppleWebKit/.test(V.userAgent)&&!/Safari/.test(V.userAgent),ue=oe?typeof HTMLAnchorElement<`u`&&`download`in HTMLAnchorElement.prototype&&!le?de:`msSaveOrOpenBlob`in V?fe:pe:()=>{};function de(e,t=`download`,n){let r=document.createElement(`a`);r.download=t,r.rel=`noopener`,typeof e==`string`?(r.href=e,r.origin===location.origin?B(r):ce(r.href)?se(e,t,n):(r.target=`_blank`,B(r))):(r.href=URL.createObjectURL(e),setTimeout(function(){URL.revokeObjectURL(r.href)},4e4),setTimeout(function(){B(r)},0))}function fe(e,t=`download`,n){if(typeof e==`string`)if(ce(e))se(e,t,n);else{let t=document.createElement(`a`);t.href=e,t.target=`_blank`,setTimeout(function(){B(t)})}else navigator.msSaveOrOpenBlob(z(e,n),t)}function pe(e,t,n,r){if(r||=open(``,`_blank`),r&&(r.document.title=r.document.body.innerText=`downloading...`),typeof e==`string`)return se(e,t,n);let i=e.type===`application/octet-stream`,a=/constructor/i.test(String(R.HTMLElement))||`safari`in R,o=/CriOS\/[\d]+/.test(navigator.userAgent);if((o||i&&a||le)&&typeof FileReader<`u`){let t=new FileReader;t.onloadend=function(){let e=t.result;if(typeof e!=`string`)throw r=null,Error(`Wrong reader.result type`);e=o?e:e.replace(/^data:[^;]*;/,`data:attachment/file;`),r?r.location.href=e:location.assign(e),r=null},t.readAsDataURL(e)}else{let t=URL.createObjectURL(e);r?r.location.assign(t):location.href=t,r=null,setTimeout(function(){URL.revokeObjectURL(t)},4e4)}}var{assign:me}=Object;function he(){let t=o(!0),n=t.run(()=>e({})),r=[],i=[],a=c({install(e){P(a),a._a=e,e.provide(F,a),e.config.globalProperties.$pinia=a,i.forEach(e=>r.push(e)),i=[]},use(e){return this._a?r.push(e):i.push(e),this},_p:r,_a:null,_e:t,_s:new Map,state:n});return a}var ge=()=>{};function _e(e,t,r,i=ge){e.add(t);let a=()=>{e.delete(t)&&i()};return!r&&n()&&s(a),a}function H(e,...t){e.forEach(e=>{e(...t)})}var ve=e=>e(),ye=Symbol(),be=Symbol();function xe(e,t){e instanceof Map&&t instanceof Map?t.forEach((t,n)=>e.set(n,t)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(let n in t){if(!t.hasOwnProperty(n))continue;let i=t[n],a=e[n];I(a)&&I(i)&&e.hasOwnProperty(n)&&!r(i)&&!y(i)?e[n]=xe(a,i):e[n]=i}return e}var Se=Symbol();function Ce(e){return!I(e)||!Object.prototype.hasOwnProperty.call(e,Se)}var{assign:U}=Object;function we(e){return!!(r(e)&&e.effect)}function Te(e,t,n,r){let{state:i,actions:a,getters:o}=t,s=n.state.value[e],u;function d(){return s||(n.state.value[e]=i?i():{}),U(f(n.state.value[e]),a,Object.keys(o||{}).reduce((t,r)=>(t[r]=c(l(()=>{P(n);let t=n._s.get(e);return o[r].call(t,t)})),t),{}))}return u=Ee(e,d,t,n,r,!0),u}function Ee(t,n,a={},s,c,l){let d,f=U({actions:{}},a),p={deep:!0},m,h,g=new Set,_=new Set,v=s.state.value[t];!l&&!v&&(s.state.value[t]={}),e({});let x;function S(e){let n;m=h=!1,typeof e==`function`?(e(s.state.value[t]),n={type:L.patchFunction,storeId:t,events:void 0}):(xe(s.state.value[t],e),n={type:L.patchObject,payload:e,storeId:t,events:void 0});let r=x=Symbol();ee().then(()=>{x===r&&(m=!0)}),h=!0,H(g,n,s.state.value[t])}let C=l?function(){let{state:e}=a,t=e?e():{};this.$patch(e=>{U(e,t)})}:ge;function te(){d.stop(),g.clear(),_.clear(),s._s.delete(t)}let w=(e,n=``)=>{if(ye in e)return e[be]=n,e;let r=function(){P(s);let n=Array.from(arguments),i=new Set,a=new Set;function o(e){i.add(e)}function c(e){a.add(e)}H(_,{args:n,name:r[be],store:T,after:o,onError:c});let l;try{l=e.apply(this&&this.$id===t?this:T,n)}catch(e){throw H(a,e),e}return l instanceof Promise?l.then(e=>(H(i,e),e)).catch(e=>(H(a,e),Promise.reject(e))):(H(i,l),l)};return r[ye]=!0,r[be]=n,r},T=u({_p:s,$id:t,$onAction:_e.bind(null,_),$patch:S,$reset:C,$subscribe(e,n={}){let r=_e(g,e,n.detached,()=>a()),a=d.run(()=>i(()=>s.state.value[t],r=>{(n.flush===`sync`?h:m)&&e({storeId:t,type:L.direct,events:void 0},r)},U({},p,n)));return r},$dispose:te});s._s.set(t,T);let E=(s._a&&s._a.runWithContext||ve)(()=>s._e.run(()=>(d=o()).run(()=>n({action:w}))));for(let e in E){let n=E[e];r(n)&&!we(n)||y(n)?l||(v&&Ce(n)&&(r(n)?n.value=v[e]:xe(n,v[e])),s.state.value[t][e]=n):typeof n==`function`&&(E[e]=w(n,e),f.actions[e]=n)}return U(T,E),U(b(T),E),Object.defineProperty(T,"$state",{get:()=>s.state.value[t],set:e=>{S(t=>{U(t,e)})}}),s._p.forEach(e=>{U(T,d.run(()=>e({store:T,app:s._a,pinia:s,options:f})))}),v&&l&&a.hydrate&&a.hydrate(T.$state,v),m=!0,h=!0,T}function De(e,t,n){let r,i=typeof t==`function`;r=i?n:t;function a(n,a){let o=S();return n||=o?p(F,null):null,n&&P(n),n=N,n._s.has(e)||(i?Ee(e,t,r,n):Te(e,r,n)),n._s.get(e)}return a.$id=e,a}function Oe(e){let t=b(e),n={};for(let i in t){let a=t[i];a.effect?n[i]=l({get:()=>e[i],set(t){e[i]=t}}):(r(a)||y(a))&&(n[i]=h(e,i))}return n}var W=typeof document<`u`;function ke(e){return typeof e==`object`||`displayName`in e||`props`in e||`__vccOpts`in e}function Ae(e){return e.__esModule||e[Symbol.toStringTag]===`Module`||e.default&&ke(e.default)}var G=Object.assign;function je(e,t){let n={};for(let r in t){let i=t[r];n[r]=q(i)?i.map(e):e(i)}return n}var K=()=>{},q=Array.isArray;function Me(e,t){let n={};for(let r in e)n[r]=r in t?t[r]:e[r];return n}var Ne=Symbol(``);function J(e,t){return G(Error(),{type:e,[Ne]:!0},t)}function Y(e,t){return e instanceof Error&&Ne in e&&(t==null||!!(e.type&t))}var Pe=Symbol(``),Fe=Symbol(``),Ie=Symbol(``),Le=Symbol(``),Re=Symbol(``);function ze(){return p(Ie)}function Be(e){return p(Le)}var Ve=/#/g,He=/&/g,Ue=/\//g,We=/=/g,Ge=/\?/g,Ke=/\+/g,qe=/%5B/g,Je=/%5D/g,Ye=/%5E/g,Xe=/%60/g,Ze=/%7B/g,Qe=/%7C/g,$e=/%7D/g,et=/%20/g;function tt(e){return e==null?``:encodeURI(``+e).replace(Qe,`|`).replace(qe,`[`).replace(Je,`]`)}function nt(e){return tt(e).replace(Ze,`{`).replace($e,`}`).replace(Ye,`^`)}function rt(e){return tt(e).replace(Ke,`%2B`).replace(et,`+`).replace(Ve,`%23`).replace(He,`%26`).replace(Xe,"`").replace(Ze,`{`).replace($e,`}`).replace(Ye,`^`)}function it(e){return rt(e).replace(We,`%3D`)}function at(e){return tt(e).replace(Ve,`%23`).replace(Ge,`%3F`)}function ot(e){return at(e).replace(Ue,`%2F`)}function st(e){if(e==null)return null;try{return decodeURIComponent(``+e)}catch{}return``+e}var ct=/\/$/,lt=e=>e.replace(ct,``);function ut(e,t,n=`/`){let r,i={},a=``,o=``,s=t.indexOf(`#`),c=t.indexOf(`?`);return c=s>=0&&c>s?-1:c,c>=0&&(r=t.slice(0,c),a=t.slice(c,s>0?s:t.length),i=e(a.slice(1))),s>=0&&(r||=t.slice(0,s),o=t.slice(s,t.length)),r=_t(r??t,n),{fullPath:r+a+o,path:r,query:i,hash:st(o)}}function dt(e,t){let n=t.query?e(t.query):``;return t.path+(n&&`?`)+n+(t.hash||``)}function ft(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||`/`}function pt(e,t,n){let r=t.matched.length-1,i=n.matched.length-1;return r>-1&&r===i&&X(t.matched[r],n.matched[i])&&mt(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function X(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function mt(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!ht(e[n],t[n]))return!1;return!0}function ht(e,t){return q(e)?gt(e,t):q(t)?gt(t,e):(e&&e.valueOf())===(t&&t.valueOf())}function gt(e,t){return q(t)?e.length===t.length&&e.every((e,n)=>e===t[n]):e.length===1&&e[0]===t}function _t(e,t){if(e.startsWith(`/`))return e;if(!e)return t;let n=t.split(`/`),r=e.split(`/`),i=r[r.length-1];(i===`..`||i===`.`)&&r.push(``);let a=n.length-1,o,s;for(o=0;o<r.length;o++)if(s=r[o],s!==`.`)if(s===`..`)a>1&&a--;else break;return n.slice(0,a).join(`/`)+`/`+r.slice(o).join(`/`)}var Z={path:`/`,name:void 0,params:{},query:{},hash:``,fullPath:`/`,matched:[],meta:{},redirectedFrom:void 0};function vt(e){if(!e)if(W){let t=document.querySelector(`base`);e=t&&t.getAttribute(`href`)||`/`,e=e.replace(/^\w+:\/\/[^/]+/,``)}else e=`/`;return e[0]!==`/`&&e[0]!==`#`&&(e=`/`+e),lt(e)}var yt=/^[^#]+#/;function bt(e,t){return e.replace(yt,`#`)+t}function xt(e,t){let n=document.documentElement.getBoundingClientRect(),r=e.getBoundingClientRect();return{behavior:t.behavior,left:r.left-n.left-(t.left||0),top:r.top-n.top-(t.top||0)}}var St=()=>({left:window.scrollX,top:window.scrollY});function Ct(e){let t;if(`el`in e){let n=e.el,r=typeof n==`string`&&n.startsWith(`#`),i=typeof n==`string`?r?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!i)return;t=xt(i,e)}else t=e;`scrollBehavior`in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left==null?window.scrollX:t.left,t.top==null?window.scrollY:t.top)}function wt(e,t){return(history.state?history.state.position-t:-1)+e}var Tt=new Map;function Et(e,t){Tt.set(e,t)}function Dt(e){let t=Tt.get(e);return Tt.delete(e),t}function Ot(e){return typeof e==`string`||e&&typeof e==`object`}function kt(e){return typeof e==`string`||typeof e==`symbol`}function At(e){let t={};if(e===``||e===`?`)return t;let n=(e[0]===`?`?e.slice(1):e).split(`&`);for(let e=0;e<n.length;++e){let r=n[e].replace(Ke,` `),i=r.indexOf(`=`),a=st(i<0?r:r.slice(0,i)),o=i<0?null:st(r.slice(i+1));if(a in t){let e=t[a];q(e)||(e=t[a]=[e]),e.push(o)}else t[a]=o}return t}function jt(e){let t=``;for(let n in e){let r=e[n];if(n=it(n),r==null){r!==void 0&&(t+=(t.length?`&`:``)+n);continue}(q(r)?r.map(e=>e&&rt(e)):[r&&rt(r)]).forEach(e=>{e!==void 0&&(t+=(t.length?`&`:``)+n,e!=null&&(t+=`=`+e))})}return t}function Mt(e){let t={};for(let n in e){let r=e[n];r!==void 0&&(t[n]=q(r)?r.map(e=>e==null?null:``+e):r==null?r:``+r)}return t}function Q(){let e=[];function t(t){return e.push(t),()=>{let n=e.indexOf(t);n>-1&&e.splice(n,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Nt(e,n,r){let i=e.value;if(!i)return;let a=i,o=()=>{a[n].delete(r)};t(o),C(o),d(()=>{let t=e.value;t&&(a=t),a[n].add(r)}),a[n].add(r)}function Pt(e){Nt(p(Pe,{}),`updateGuards`,e)}function $(e,t,n,r,i,a=e=>e()){let o=r&&(r.enterCallbacks[i]=r.enterCallbacks[i]||[]);return()=>new Promise((s,c)=>{let l=e=>{e===!1?c(J(4,{from:n,to:t})):e instanceof Error?c(e):Ot(e)?c(J(2,{from:t,to:e})):(o&&r.enterCallbacks[i]===o&&typeof e==`function`&&o.push(e),s())},u=a(()=>e.call(r&&r.instances[i],t,n,l)),d=Promise.resolve(u);e.length<3&&(d=d.then(l)),d.catch(e=>c(e))})}function Ft(e,t,n,r,i=e=>e()){let a=[];for(let o of e)for(let e in o.components){let s=o.components[e];if(!(t!==`beforeRouteEnter`&&!o.instances[e]))if(ke(s)){let c=(s.__vccOpts||s)[t];c&&a.push($(c,n,r,o,e,i))}else{let c=s();a.push(()=>c.then(a=>{if(!a)throw Error(`Couldn't resolve component "${e}" at "${o.path}"`);let s=Ae(a)?a.default:a;o.mods[e]=a,o.components[e]=s;let c=(s.__vccOpts||s)[t];return c&&$(c,n,r,o,e,i)()}))}}return a}function It(e,t){let n=[],r=[],i=[],a=Math.max(t.matched.length,e.matched.length);for(let o=0;o<a;o++){let a=t.matched[o];a&&(e.matched.find(e=>X(e,a))?r.push(a):n.push(a));let s=e.matched[o];s&&(t.matched.find(e=>X(e,s))||i.push(s))}return[n,r,i]}var Lt=()=>location.protocol+`//`+location.host;function Rt(e,t){let{pathname:n,search:r,hash:i}=t,a=e.indexOf(`#`);if(a>-1){let t=i.includes(e.slice(a))?e.slice(a).length:1,n=i.slice(t);return n[0]!==`/`&&(n=`/`+n),ft(n,``)}return ft(n,e)+r+i}function zt(e,t,n,r){let i=[],a=[],o=null,s=({state:a})=>{let s=Rt(e,location),c=n.value,l=t.value,u=0;if(a){if(n.value=s,t.value=a,o&&o===c){o=null;return}u=l?a.position-l.position:0}else r(s);i.forEach(e=>{e(n.value,c,{delta:u,type:`pop`,direction:u?u>0?`forward`:`back`:``})})};function c(){o=n.value}function l(e){i.push(e);let t=()=>{let t=i.indexOf(e);t>-1&&i.splice(t,1)};return a.push(t),t}function u(){if(document.visibilityState===`hidden`){let{history:e}=window;if(!e.state)return;e.replaceState(G({},e.state,{scroll:St()}),``)}}function d(){for(let e of a)e();a=[],window.removeEventListener(`popstate`,s),window.removeEventListener(`pagehide`,u),document.removeEventListener(`visibilitychange`,u)}return window.addEventListener(`popstate`,s),window.addEventListener(`pagehide`,u),document.addEventListener(`visibilitychange`,u),{pauseListeners:c,listen:l,destroy:d}}function Bt(e,t,n,r=!1,i=!1){return{back:e,current:t,forward:n,replaced:r,position:window.history.length,scroll:i?St():null}}function Vt(e){let{history:t,location:n}=window,r={value:Rt(e,n)},i={value:t.state};i.value||a(r.value,{back:null,current:r.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function a(r,a,o){let s=e.indexOf(`#`),c=s>-1?(n.host&&document.querySelector(`base`)?e:e.slice(s))+r:Lt()+e+r;try{t[o?`replaceState`:`pushState`](a,``,c),i.value=a}catch(e){console.error(e),n[o?`replace`:`assign`](c)}}function o(e,n){a(e,G({},t.state,Bt(i.value.back,e,i.value.forward,!0),n,{position:i.value.position}),!0),r.value=e}function s(e,n){let o=G({},i.value,t.state,{forward:e,scroll:St()});a(o.current,o,!0),a(e,G({},Bt(r.value,e,null),{position:o.position+1},n),!1),r.value=e}return{location:r,state:i,push:s,replace:o}}function Ht(e){e=vt(e);let t=Vt(e),n=zt(e,t.state,t.location,t.replace);function r(e,t=!0){t||n.pauseListeners(),history.go(e)}let i=G({location:``,base:e,go:r,createHref:bt.bind(null,e)},t,n);return Object.defineProperty(i,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(i,"state",{enumerable:!0,get:()=>t.state.value}),i}function Ut(e){return e=location.host?e||location.pathname+location.search:``,e.includes(`#`)||(e+=`#`),Ht(e)}var Wt={type:0,value:``},Gt=/[a-zA-Z0-9_]/;function Kt(e){if(!e)return[[]];if(e===`/`)return[[Wt]];if(!e.startsWith(`/`))throw Error(`Invalid path "${e}"`);function t(e){throw Error(`ERR (${n})/"${l}": ${e}`)}let n=0,r=n,i=[],a;function o(){a&&i.push(a),a=[]}let s=0,c,l=``,u=``;function d(){l&&=(n===0?a.push({type:0,value:l}):n===1||n===2||n===3?(a.length>1&&(c===`*`||c===`+`)&&t(`A repeatable param (${l}) must be alone in its segment. eg: '/:ids+.`),a.push({type:1,value:l,regexp:u,repeatable:c===`*`||c===`+`,optional:c===`*`||c===`?`})):t(`Invalid state to consume buffer`),``)}function f(){l+=c}for(;s<e.length;)switch(c=e[s++],n){case 0:c===`\\`?(r=n,n=4):c===`/`?(l&&d(),o()):c===`:`?(d(),n=1):f();break;case 4:f(),n=r;break;case 1:c===`(`?n=2:Gt.test(c)?f():(d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--);break;case 2:c===`)`?u[u.length-1]==`\\`?u=u.slice(0,-1)+c:n=3:u+=c;break;case 3:d(),n=0,c!==`*`&&c!==`?`&&c!==`+`&&s--,u=``;break;default:t(`Unknown state`);break}return n===2&&t(`Unfinished custom RegExp for param "${l}"`),d(),o(),i}var qt=`[^/]+?`,Jt={sensitive:!1,strict:!1,start:!0,end:!0},Yt=/[.+*?^${}()[\]/\\]/g;function Xt(e,t){let n=G({},Jt,t),r=[],i=n.start?`^`:``,a=[];for(let t of e){let e=t.length?[]:[90];n.strict&&!t.length&&(i+=`/`);for(let r=0;r<t.length;r++){let o=t[r],s=40+(n.sensitive?.25:0);if(o.type===0)r||(i+=`/`),i+=o.value.replace(Yt,`\\$&`),s+=40;else if(o.type===1){let{value:e,repeatable:n,optional:c,regexp:l}=o;a.push({name:e,repeatable:n,optional:c});let u=l||qt;if(u!==qt){s+=10;try{RegExp(`(${u})`)}catch(t){throw Error(`Invalid custom RegExp for param "${e}" (${u}): `+t.message)}}let d=n?`((?:${u})(?:/(?:${u}))*)`:`(${u})`;r||(d=c&&t.length<2?`(?:/${d})`:`/`+d),c&&(d+=`?`),i+=d,s+=20,c&&(s+=-8),n&&(s+=-20),u===`.*`&&(s+=-50)}e.push(s)}r.push(e)}if(n.strict&&n.end){let e=r.length-1;r[e][r[e].length-1]+=.7000000000000001}n.strict||(i+=`/?`),n.end?i+=`$`:n.strict&&!i.endsWith(`/`)&&(i+=`(?:/|$)`);let o=new RegExp(i,n.sensitive?``:`i`);function s(e){let t=e.match(o),n={};if(!t)return null;for(let e=1;e<t.length;e++){let r=t[e]||``,i=a[e-1];n[i.name]=r&&i.repeatable?r.split(`/`):r}return n}function c(t){let n=``,r=!1;for(let i of e){(!r||!n.endsWith(`/`))&&(n+=`/`),r=!1;for(let e of i)if(e.type===0)n+=e.value;else if(e.type===1){let{value:a,repeatable:o,optional:s}=e,c=a in t?t[a]:``;if(q(c)&&!o)throw Error(`Provided param "${a}" is an array but it is not repeatable (* or + modifiers)`);let l=q(c)?c.join(`/`):c;if(!l)if(s)i.length<2&&(n.endsWith(`/`)?n=n.slice(0,-1):r=!0);else throw Error(`Missing required param "${a}"`);n+=l}}return n||`/`}return{re:o,score:r,keys:a,parse:s,stringify:c}}function Zt(e,t){let n=0;for(;n<e.length&&n<t.length;){let r=t[n]-e[n];if(r)return r;n++}return e.length<t.length?e.length===1&&e[0]===80?-1:1:e.length>t.length?t.length===1&&t[0]===80?1:-1:0}function Qt(e,t){let n=0,r=e.score,i=t.score;for(;n<r.length&&n<i.length;){let e=Zt(r[n],i[n]);if(e)return e;n++}if(Math.abs(i.length-r.length)===1){if($t(r))return 1;if($t(i))return-1}return i.length-r.length}function $t(e){let t=e[e.length-1];return e.length>0&&t[t.length-1]<0}var en={strict:!1,end:!0,sensitive:!1};function tn(e,t,n){let r=G(Xt(Kt(e.path),n),{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function nn(e,t){let n=[],r=new Map;t=Me(en,t);function i(e){return r.get(e)}function a(e,n,r){let i=!r,s=an(e);s.aliasOf=r&&r.record;let l=Me(t,e),u=[s];if(`alias`in e){let t=typeof e.alias==`string`?[e.alias]:e.alias;for(let e of t)u.push(an(G({},s,{components:r?r.record.components:s.components,path:e,aliasOf:r?r.record:s})))}let d,f;for(let t of u){let{path:u}=t;if(n&&u[0]!==`/`){let e=n.record.path,r=e[e.length-1]===`/`?``:`/`;t.path=n.record.path+(u&&r+u)}if(d=tn(t,n,l),r?r.alias.push(d):(f||=d,f!==d&&f.alias.push(d),i&&e.name&&!sn(d)&&o(e.name)),dn(d)&&c(d),s.children){let e=s.children;for(let t=0;t<e.length;t++)a(e[t],d,r&&r.children[t])}r||=d}return f?()=>{o(f)}:K}function o(e){if(kt(e)){let t=r.get(e);t&&(r.delete(e),n.splice(n.indexOf(t),1),t.children.forEach(o),t.alias.forEach(o))}else{let t=n.indexOf(e);t>-1&&(n.splice(t,1),e.record.name&&r.delete(e.record.name),e.children.forEach(o),e.alias.forEach(o))}}function s(){return n}function c(e){let t=ln(e,n);n.splice(t,0,e),e.record.name&&!sn(e)&&r.set(e.record.name,e)}function l(e,t){let i,a={},o,s;if(`name`in e&&e.name){if(i=r.get(e.name),!i)throw J(1,{location:e});s=i.record.name,a=G(rn(t.params,i.keys.filter(e=>!e.optional).concat(i.parent?i.parent.keys.filter(e=>e.optional):[]).map(e=>e.name)),e.params&&rn(e.params,i.keys.map(e=>e.name))),o=i.stringify(a)}else if(e.path!=null)o=e.path,i=n.find(e=>e.re.test(o)),i&&(a=i.parse(o),s=i.record.name,i.keys.forEach(e=>{e.optional&&!a[e.name]&&delete a[e.name]}));else{if(i=t.name?r.get(t.name):n.find(e=>e.re.test(t.path)),!i)throw J(1,{location:e,currentLocation:t});s=i.record.name,a=G({},t.params,e.params),o=i.stringify(a)}let c=[],l=i;for(;l;)c.unshift(l.record),l=l.parent;return{name:s,path:o,params:a,matched:c,meta:cn(c)}}e.forEach(e=>a(e));function u(){n.length=0,r.clear()}return{addRoute:a,resolve:l,removeRoute:o,clearRoutes:u,getRoutes:s,getRecordMatcher:i}}function rn(e,t){let n={};for(let r of t)r in e&&(n[r]=e[r]);return n}function an(e){let t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:on(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:`components`in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function on(e){let t={},n=e.props||!1;if(`component`in e)t.default=n;else for(let r in e.components)t[r]=typeof n==`object`?n[r]:n;return t}function sn(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function cn(e){return e.reduce((e,t)=>G(e,t.meta),{})}function ln(e,t){let n=0,r=t.length;for(;n!==r;){let i=n+r>>1;Qt(e,t[i])<0?r=i:n=i+1}let i=un(e);return i&&(r=t.lastIndexOf(i,r-1)),r}function un(e){let t=e;for(;t=t.parent;)if(dn(t)&&Qt(e,t)===0)return t}function dn({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function fn(e){let t=p(Ie),n=p(Le),r=l(()=>{let n=x(e.to);return t.resolve(n)}),i=l(()=>{let{matched:e}=r.value,{length:t}=e,i=e[t-1],a=n.matched;if(!i||!a.length)return-1;let o=a.findIndex(X.bind(null,i));if(o>-1)return o;let s=_n(e[t-2]);return t>1&&_n(i)===s&&a[a.length-1].path!==s?a.findIndex(X.bind(null,e[t-2])):o}),a=l(()=>i.value>-1&&gn(n.params,r.value.params)),o=l(()=>i.value>-1&&i.value===n.matched.length-1&&mt(n.params,r.value.params));function s(n={}){if(hn(n)){let n=t[x(e.replace)?`replace`:`push`](x(e.to)).catch(K);return e.viewTransition&&typeof document<`u`&&`startViewTransition`in document&&document.startViewTransition(()=>n),n}return Promise.resolve()}return{route:r,href:l(()=>r.value.href),isActive:a,isExactActive:o,navigate:s}}function pn(e){return e.length===1?e[0]:e}var mn=v({name:`RouterLink`,compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:`page`},viewTransition:Boolean},useLink:fn,setup(e,{slots:t}){let n=u(fn(e)),{options:r}=p(Ie),i=l(()=>({[vn(e.activeClass,r.linkActiveClass,`router-link-active`)]:n.isActive,[vn(e.exactActiveClass,r.linkExactActiveClass,`router-link-exact-active`)]:n.isExactActive}));return()=>{let r=t.default&&pn(t.default(n));return e.custom?r:g(`a`,{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:i.value},r)}}});function hn(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){let t=e.currentTarget.getAttribute(`target`);if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function gn(e,t){for(let n in t){let r=t[n],i=e[n];if(typeof r==`string`){if(r!==i)return!1}else if(!q(i)||i.length!==r.length||r.some((e,t)=>e.valueOf()!==i[t].valueOf()))return!1}return!0}function _n(e){return e?e.aliasOf?e.aliasOf.path:e.path:``}var vn=(e,t,n)=>e??t??n,yn=v({name:`RouterView`,inheritAttrs:!1,props:{name:{type:String,default:`default`},route:Object},compatConfig:{MODE:3},setup(t,{attrs:n,slots:r}){let o=p(Re),s=l(()=>t.route||o.value),c=p(Fe,0),u=l(()=>{let e=x(c),{matched:t}=s.value,n;for(;(n=t[e])&&!n.components;)e++;return e}),d=l(()=>s.value.matched[u.value]);a(Fe,l(()=>u.value+1)),a(Pe,d),a(Re,s);let f=e();return i(()=>[f.value,d.value,t.name],([e,t,n],[r,i,a])=>{t&&(t.instances[n]=e,i&&i!==t&&e&&e===r&&(t.leaveGuards.size||(t.leaveGuards=i.leaveGuards),t.updateGuards.size||(t.updateGuards=i.updateGuards))),e&&t&&(!i||!X(t,i)||!r)&&(t.enterCallbacks[n]||[]).forEach(t=>t(e))},{flush:`post`}),()=>{let e=s.value,i=t.name,a=d.value,o=a&&a.components[i];if(!o)return bn(r.default,{Component:o,route:e});let c=a.props[i],l=g(o,G({},c?c===!0?e.params:typeof c==`function`?c(e):c:null,n,{onVnodeUnmounted:e=>{e.component.isUnmounted&&(a.instances[i]=null)},ref:f}));return bn(r.default,{Component:l,route:e})||l}}});function bn(e,t){if(!e)return null;let n=e(t);return n.length===1?n[0]:n}var xn=yn;function Sn(e){let t=nn(e.routes,e),n=e.parseQuery||At,r=e.stringifyQuery||jt,i=e.history,a=Q(),o=Q(),s=Q(),c=_(Z),l=Z;W&&e.scrollBehavior&&`scrollRestoration`in history&&(history.scrollRestoration=`manual`);let u=je.bind(null,e=>``+e),d=je.bind(null,ot),f=je.bind(null,st);function p(e,n){let r,i;return kt(e)?(r=t.getRecordMatcher(e),i=n):i=e,t.addRoute(i,r)}function h(e){let n=t.getRecordMatcher(e);n&&t.removeRoute(n)}function g(){return t.getRoutes().map(e=>e.record)}function v(e){return!!t.getRecordMatcher(e)}function y(e,a){if(a=G({},a||c.value),typeof e==`string`){let r=ut(n,e,a.path),o=t.resolve({path:r.path},a),s=i.createHref(r.fullPath);return G(r,o,{params:f(o.params),redirectedFrom:void 0,href:s})}let o;if(e.path!=null)o=G({},e,{path:ut(n,e.path,a.path).path});else{let t=G({},e.params);for(let e in t)t[e]??delete t[e];o=G({},e,{params:d(t)}),a.params=d(a.params)}let s=t.resolve(o,a),l=e.hash||``;s.params=u(f(s.params));let p=dt(r,G({},e,{hash:nt(l),path:s.path})),m=i.createHref(p);return G({fullPath:p,hash:l,query:r===jt?Mt(e.query):e.query||{}},s,{redirectedFrom:void 0,href:m})}function b(e){return typeof e==`string`?ut(n,e,c.value.path):G({},e)}function S(e,t){if(l!==e)return J(8,{from:t,to:e})}function C(e){return T(e)}function te(e){return C(G(b(e),{replace:!0}))}function w(e,t){let n=e.matched[e.matched.length-1];if(n&&n.redirect){let{redirect:r}=n,i=typeof r==`function`?r(e,t):r;return typeof i==`string`&&(i=i.includes(`?`)||i.includes(`#`)?i=b(i):{path:i},i.params={}),G({query:e.query,hash:e.hash,params:i.path==null?e.params:{}},i)}}function T(e,t){let n=l=y(e),i=c.value,a=e.state,o=e.force,s=e.replace===!0,u=w(n,i);if(u)return T(G(b(u),{state:typeof u==`object`?G({},a,u.state):a,force:o,replace:s}),t||n);let d=n;d.redirectedFrom=t;let f;return!o&&pt(r,i,n)&&(f=J(16,{to:d,from:i}),P(i,i,!0,!1)),(f?Promise.resolve(f):O(d,i)).catch(e=>Y(e)?Y(e,2)?e:N(e):M(e,d,i)).then(e=>{if(e){if(Y(e,2))return T(G({replace:s},b(e.to),{state:typeof e.to==`object`?G({},a,e.to.state):a,force:o}),t||d)}else e=re(d,i,!0,s,a);return ne(d,i,e),e})}function E(e,t){let n=S(e,t);return n?Promise.reject(n):Promise.resolve()}function D(e){let t=L.values().next().value;return t&&typeof t.runWithContext==`function`?t.runWithContext(e):e()}function O(e,t){let n,[r,i,s]=It(e,t);n=Ft(r.reverse(),`beforeRouteLeave`,e,t);for(let i of r)i.leaveGuards.forEach(r=>{n.push($(r,e,t))});let c=E.bind(null,e,t);return n.push(c),z(n).then(()=>{n=[];for(let r of a.list())n.push($(r,e,t));return n.push(c),z(n)}).then(()=>{n=Ft(i,`beforeRouteUpdate`,e,t);for(let r of i)r.updateGuards.forEach(r=>{n.push($(r,e,t))});return n.push(c),z(n)}).then(()=>{n=[];for(let r of s)if(r.beforeEnter)if(q(r.beforeEnter))for(let i of r.beforeEnter)n.push($(i,e,t));else n.push($(r.beforeEnter,e,t));return n.push(c),z(n)}).then(()=>(e.matched.forEach(e=>e.enterCallbacks={}),n=Ft(s,`beforeRouteEnter`,e,t,D),n.push(c),z(n))).then(()=>{n=[];for(let r of o.list())n.push($(r,e,t));return n.push(c),z(n)}).catch(e=>Y(e,8)?e:Promise.reject(e))}function ne(e,t,n){s.list().forEach(r=>D(()=>r(e,t,n)))}function re(e,t,n,r,a){let o=S(e,t);if(o)return o;let s=t===Z,l=W?history.state:{};n&&(r||s?i.replace(e.fullPath,G({scroll:s&&l&&l.scroll},a)):i.push(e.fullPath,a)),c.value=e,P(e,t,n,s),N()}let k;function ie(){k||=i.listen((e,t,n)=>{if(!R.listening)return;let r=y(e),a=w(r,R.currentRoute.value);if(a){T(G(a,{replace:!0,force:!0}),r).catch(K);return}l=r;let o=c.value;W&&Et(wt(o.fullPath,n.delta),St()),O(r,o).catch(e=>Y(e,12)?e:Y(e,2)?(T(G(b(e.to),{force:!0}),r).then(e=>{Y(e,20)&&!n.delta&&n.type===`pop`&&i.go(-1,!1)}).catch(K),Promise.reject()):(n.delta&&i.go(-n.delta,!1),M(e,r,o))).then(e=>{e||=re(r,o,!1),e&&(n.delta&&!Y(e,8)?i.go(-n.delta,!1):n.type===`pop`&&Y(e,20)&&i.go(-1,!1)),ne(r,o,e)}).catch(K)})}let A=Q(),ae=Q(),j;function M(e,t,n){N(e);let r=ae.list();return r.length?r.forEach(r=>r(e,t,n)):console.error(e),Promise.reject(e)}function oe(){return j&&c.value!==Z?Promise.resolve():new Promise((e,t)=>{A.add([e,t])})}function N(e){return j||(j=!e,ie(),A.list().forEach(([t,n])=>e?n(e):t()),A.reset()),e}function P(t,n,r,i){let{scrollBehavior:a}=e;if(!W||!a)return Promise.resolve();let o=!r&&Dt(wt(t.fullPath,0))||(i||!r)&&history.state&&history.state.scroll||null;return ee().then(()=>a(t,n,o)).then(e=>e&&Ct(e)).catch(e=>M(e,t,n))}let F=e=>i.go(e),I,L=new Set,R={currentRoute:c,listening:!0,addRoute:p,removeRoute:h,clearRoutes:t.clearRoutes,hasRoute:v,getRoutes:g,resolve:y,options:e,push:C,replace:te,go:F,back:()=>F(-1),forward:()=>F(1),beforeEach:a.add,beforeResolve:o.add,afterEach:s.add,onError:ae.add,isReady:oe,install(e){e.component(`RouterLink`,mn),e.component(`RouterView`,xn),e.config.globalProperties.$router=R,Object.defineProperty(e.config.globalProperties,"$route",{enumerable:!0,get:()=>x(c)}),W&&!I&&c.value===Z&&(I=!0,C(i.location).catch(e=>{}));let t={};for(let e in Z)Object.defineProperty(t,e,{get:()=>c.value[e],enumerable:!0});e.provide(Ie,R),e.provide(Le,m(t)),e.provide(Re,c);let n=e.unmount;L.add(e),e.unmount=function(){L.delete(e),L.size<1&&(l=Z,k&&k(),k=null,c.value=Z,I=!1,j=!1),n()}}};function z(e){return e.reduce((e,t)=>e.then(()=>D(t)),Promise.resolve())}return R}k({mounted(e,t){let n=t.arg?.split(`,`)??!0;if(typeof t.value==`function`)ae(n,t.value,{target:e});else{let[r,i]=t.value;ae(n,r,{target:e,...i})}}});var Cn=k({mounted(e,t){typeof t.value==`function`?A(e,t.value,{modifiers:t.modifiers}):A(e,...t.value)}});k({mounted(e,t){let[n,r]=typeof t.value==`function`?[t.value,{}]:t.value,{height:a,bottom:o,left:s,right:c,top:l,width:u,x:d,y:f}=M(e,r);i([a,o,s,c,l,u,d,f],()=>n({height:a,bottom:o,left:s,right:c,top:l,width:u,x:d,y:f}))}});var wn=k({mounted(e,t){let n=t.value;if(typeof n==`function`)i(ie(e),e=>n(e));else{let[t,r]=n;i(ie(e,r),e=>t(e))}}});k({mounted(e,t){let n=typeof t.value==`function`?t.value:t.value?.[0],{width:r,height:a}=j(e,...typeof t.value==`function`?[]:t.value.slice(1));i([r,a],([e,t])=>n({width:e,height:t}))}}),k({mounted(e,t){if(typeof t.value==`function`){let n=t.value;i(O(e),e=>n(e),{immediate:!0})}else{let[n,r]=t.value;if(r?.controls){let t=O(e,r);i(t.isVisible,()=>n(t),{immediate:!0})}else i(O(e,r),e=>n(e),{immediate:!0})}}}),k({mounted(e,t){typeof t.value==`function`?ne(e,t.value):ne(e,...t.value)}});var Tn=k({mounted(e,t){typeof t.value==`function`?w(e,t.value):w(e,...t.value)}});k({mounted(e,t){let[n,r]=typeof t.value==`function`?[t.value,{}]:t.value;i(re(u(te(e,r)),`stop`),e=>n(e))}}),k({mounted(e,t){typeof t.value==`function`?D(e,t.value):D(e,...t.value)}}),k({mounted(e,t){if(typeof t.value==`function`){let n=t.value,r=T(e,{onScroll(){n(r)},onStop(){n(r)}})}else{let[n,r]=t.value,i=T(e,{...r,onScroll(e){var t;(t=r.onScroll)==null||t.call(r,e),n(i)},onStop(e){var t;(t=r.onStop)==null||t.call(r,e),n(i)}})}}});function En(){let e=!1,t=_(!1);return k((n,r)=>{if(t.value=r.value,e)return;e=!0;let a=E(n,r.value);i(t,e=>a.value=e)})}En();export{Ut as a,Be as c,De as d,Oe as f,Sn as i,ze as l,Tn as n,Ht as o,Cn as r,Pt as s,wn as t,he as u};
@@ -1,4 +1,4 @@
1
- import{$n as e,$t as t,An as n,Dn as r,En as i,Gt as a,Hn as o,Ht as s,On as c,Qt as l,Rn as u,Rt as d,Ut as f,Vn as p,Wt as m,Xt as h,Yn as g,Yt as _,Zn as v,Zt as y,cn as b,cr as x,dn as S,dr as C,hn as w,in as T,jn as ee,kn as E,lr as D,rn as O,tn as k,ur as te,wn as A}from"./vendor-CF-D4B9g.js";import{$ as j,$n as ne,$r as re,Ar as M,Br as ie,Cr as N,Dr as ae,Er as oe,Fn as se,Fr as P,Gn as ce,Gr as le,Hn as F,Hr as ue,In as de,Ir as fe,Jn as I,Jr as pe,Kn as me,Kr as he,Ln as ge,Lr as _e,Mr as ve,Nr as ye,Or as be,Pn as xe,Pr as Se,Qr as Ce,Rn as we,Rr as Te,Sr as Ee,Tr as De,Un as Oe,Ur as L,Vn as ke,Vr as Ae,Wn as je,Wr as Me,Xr as Ne,Yn as R,Yr as Pe,Zr as z,_r as B,ai as Fe,ar as V,at as Ie,br as Le,ci as H,cr as Re,dr as ze,ei as Be,er as Ve,et as He,fr as U,gr as Ue,hr as W,ii as We,ir as G,it as Ge,jr as Ke,kr as qe,li as K,lr as Je,mr as Ye,ni as Xe,nt as Ze,oi as q,or as Qe,ot as $e,pr as et,qn as J,qr as tt,ri as nt,rr as rt,rt as it,si as at,sr as ot,ti as st,tt as ct,ur as lt,vr as ut,wr as dt,xr as ft,yr as Y,zn as pt,zr as mt}from"./vendor-cameraui-DpqS51DT.js";var ht=R.extend({name:`tooltip-directive`,style:`
1
+ import{$n as e,$t as t,An as n,Dn as r,En as i,Gt as a,Hn as o,Ht as s,On as c,Qt as l,Rn as u,Rt as d,Ut as f,Vn as p,Wt as m,Xt as h,Yn as g,Yt as _,Zn as v,Zt as y,cn as b,cr as x,dn as S,dr as C,hn as w,in as T,jn as ee,kn as E,lr as D,rn as O,tn as k,ur as te,wn as A}from"./vendor-CF-D4B9g.js";import{$ as j,$n as ne,$r as re,Ar as M,Br as ie,Cr as N,Dr as ae,Er as oe,Fn as se,Fr as P,Gn as ce,Gr as le,Hn as F,Hr as ue,In as de,Ir as fe,Jn as I,Jr as pe,Kn as me,Kr as he,Ln as ge,Lr as _e,Mr as ve,Nr as ye,Or as be,Pn as xe,Pr as Se,Qr as Ce,Rn as we,Rr as Te,Sr as Ee,Tr as De,Un as Oe,Ur as L,Vn as ke,Vr as Ae,Wn as je,Wr as Me,Xr as Ne,Yn as R,Yr as Pe,Zr as z,_r as B,ai as Fe,ar as V,at as Ie,br as Le,ci as H,cr as Re,dr as ze,ei as Be,er as Ve,et as He,fr as U,gr as Ue,hr as W,ii as We,ir as G,it as Ge,jr as Ke,kr as qe,li as K,lr as Je,mr as Ye,ni as Xe,nt as Ze,oi as q,or as Qe,ot as $e,pr as et,qn as J,qr as tt,ri as nt,rr as rt,rt as it,si as at,sr as ot,ti as st,tt as ct,ur as lt,vr as ut,wr as dt,xr as ft,yr as Y,zn as pt,zr as mt}from"./vendor-cameraui-tvNekvZ-.js";var ht=R.extend({name:`tooltip-directive`,style:`
2
2
  .p-tooltip {
3
3
  position: absolute;
4
4
  display: none;
@@ -1 +1 @@
1
- import{$n as e,$t as t,In as n,Jn as r,Qt as i,Rn as a,Rt as o,Sn as s,Vn as c,Xt as l,Yn as u,Yt as d,Zt as f,ar as p,cr as m,dn as h,dr as g,gn as ee,in as _,on as v,sr as y,wn as b}from"./vendor-CF-D4B9g.js";import{Ht as te,R as x,U as S,di as C}from"./vendor-cameraui-DpqS51DT.js";import{t as w}from"./CuiCameraCard-CH8wRfqD.js";import{t as T}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as E}from"./useSharedComposables-DUNE9Fjf.js";import{b as D}from"./vendor-primevue-CG0iLCzA.js";import{n as O}from"./types-DllqnzAz.js";import{t as k}from"./useFileDownload-DksvUFZ8.js";import{t as A}from"./download-Dvs3QCvp.js";var j={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function M(e,n){return b(),t(`svg`,j,[...n[0]||=[l(`g`,{fill:`none`,"fill-rule":`evenodd`},[l(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),l(`path`,{fill:`currentColor`,d:`M5 3a3 3 0 0 0-3 3v10a2 2 0 0 0 2 2V6a1 1 0 0 1 1-1h14a2 2 0 0 0-2-2zm0 5a2 2 0 0 1 2-2h13a2 2 0 0 1 2 2v11.333a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2zm15 0H7v7.848L10.848 12a1.25 1.25 0 0 1 1.768 0l3.241 3.24l.884-.883a1.25 1.25 0 0 1 1.768 0L20 15.848zm-2 3a1.5 1.5 0 1 1-3 0a1.5 1.5 0 0 1 3 0`})],-1)]])}var N=u({name:`mingcute-photo-album-fill`,render:M}),P={class:`camera-stream-event-container`},F={class:`stream-wrapper`},I={key:0,class:`ai-description-overlay`},L={class:`min-w-0`},R={class:`text-sm font-semibold text-white`},z={class:`text-xs text-white/85 mt-1`},B=T(v({__name:`CameraStreamEvent`,props:{camera:{},eventTimestamp:{}},setup(u,{expose:v}){let T=u,j=C(),{t:M}=j,N=D(),{mdBreakpoint:B}=E(),V=h(`dialogRefProps`),H=h(`dialogHeaderToggles`,{}),{plugin:U}=te(`@camera.ui/camera-ui-nvr`),{camera:W,eventTimestamp:G}=p(T),K=n(`cameraCardRef`),q=n(`cuiTimelineRef`),J=e(!1),Y=e(),X=e(!1),Z=x(d(()=>W.value._id),{sourceRole:Y}),ne=d(()=>!!V.loading?.value),re=d(()=>H[0]??!1),Q=d(()=>q.value?.currentEventDescription),$=d(()=>!!q.value?.currentEvent),ie=d(()=>q.value?.isLive??!0),ae=d(()=>({locale:j.locale.value,dayNames:N.config.locale?.dayNames,dayNamesShort:N.config.locale?.dayNamesShort,monthNames:N.config.locale?.monthNames,monthNamesShort:N.config.locale?.monthNamesShort}));async function oe(){if(X.value)return;let e=q.value?.currentEvent;if(!e)return;let t=U.value;if(t?.nvrExport){X.value=!0;try{let n=await t.nvrExport(e.cameraId,e.startMs*1e3,e.endMs*1e3);await k({url:n.url,filename:n.filename})}catch(e){console.error(`Download failed:`,e)}finally{X.value=!1}}}function se(e){K.value?.timelineScroll(e)}a([$,ie],([e,t])=>{if(!V.headerActions)return;let n=[];n.push({icon:O,tooltip:M(`components.player.ai_descriptions`),toggle:!0,onClick:()=>{}}),!t&&e&&U.value&&n.push({icon:A,tooltip:M(`views.recordings.download`),onClick:oe}),V.headerActions.value=n},{immediate:!0}),G.value&&(Z.mode.value=`play`,Z.loading.value=!0),s(()=>{setTimeout(()=>{J.value=!0},300);let e=G.value;e&&ee(()=>{Z.play(e*1e3)})});function ce(){let e=Z.currentTimestamp.value>0?Math.floor(Z.currentTimestamp.value/1e3):G.value;return e?`/cameras/${W.value.name}?startTs=${e}`:`/cameras/${W.value.name}`}return v({isLoading:ne,resolveGoTo:ce}),(e,n)=>{let a=w,s=O;return b(),t(`div`,P,[l(`div`,F,[(b(),f(a,{ref_key:`cameraCardRef`,ref:K,key:y(W).name,"source-role":y(Y),"onUpdate:sourceRole":n[0]||=e=>r(Y)?Y.value=e:null,"streaming-mode":`webrtc`,"camera-info":y(W).name,"flat-card":``,"card-props":{pt:{root:{class:{"!rounded-md":!0}}}},"camera-name-overlay":!1,toolbar:!1,subcontrol:!0,"subcontrol-quality-button":!0,"subcontrol-activity-mode-button":!1,"subcontrol-ptz-button":!1,"subcontrol-streaming-mode-button":!1,"control-pip-button":!1,"control-microphone-button":!1},null,8,[`source-role`,`camera-info`])),_(o,{"enter-active-class":`transition-all duration-300 ease-out`,"enter-from-class":`opacity-0 -translate-y-2`,"enter-to-class":`opacity-100 translate-y-0`,"leave-active-class":`transition-all duration-200 ease-in`,"leave-from-class":`opacity-100 translate-y-0`,"leave-to-class":`opacity-0 -translate-y-2`},{default:c(()=>[y(Q)&&y(re)?(b(),t(`div`,I,[_(s,{class:`w-4 h-4 text-white/90 shrink-0 mt-0.5`}),l(`div`,L,[l(`p`,R,g(y(Q).title),1),l(`p`,z,g(y(Q).description),1)])])):i(``,!0)]),_:1})]),(b(),f(y(S),{ref_key:`cuiTimelineRef`,ref:q,key:y(W).name,"camera-ids":[y(W)._id],"initial-timestamp":y(G),loading:!y(J),type:y(B)?`vertical`:`horizontal`,"ignore-bottom-safe-area":y(B),"show-segments":!1,"show-zoom":!1,"show-date":!1,class:m([`flex w-full border-t-[1px] border-color shrink-0`,y(B)?`h-full`:`h-[200px]`]),"card-class":{"mt-auto":!y(B)},"flat-card":``,"locale-settings":y(ae),onScrolling:se},null,8,[`camera-ids`,`initial-timestamp`,`loading`,`type`,`ignore-bottom-safe-area`,`class`,`card-class`,`locale-settings`]))])}}}),[[`__scopeId`,`data-v-cf08be18`]]),V={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function H(e,n){return b(),t(`svg`,V,[...n[0]||=[l(`path`,{fill:`currentColor`,d:`M3 11h8V3H3m0 18h8v-8H3m10 8h8v-8h-8m0-10v8h8V3`},null,-1)]])}var U=u({name:`mdi-view-grid`,render:H});export{B as n,N as r,U as t};
1
+ import{$n as e,$t as t,In as n,Jn as r,Qt as i,Rn as a,Rt as o,Sn as s,Vn as c,Xt as l,Yn as u,Yt as d,Zt as f,ar as p,cr as m,dn as h,dr as g,gn as ee,in as _,on as v,sr as y,wn as b}from"./vendor-CF-D4B9g.js";import{Ht as te,R as x,U as S,di as C}from"./vendor-cameraui-tvNekvZ-.js";import{t as w}from"./CuiCameraCard-Dg_senYR.js";import{t as T}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as E}from"./useSharedComposables-CTXKSCVm.js";import{b as D}from"./vendor-primevue-D0-7UQst.js";import{n as O}from"./types-DllqnzAz.js";import{t as k}from"./useFileDownload-Et7NRBap.js";import{t as A}from"./download-Dvs3QCvp.js";var j={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function M(e,n){return b(),t(`svg`,j,[...n[0]||=[l(`g`,{fill:`none`,"fill-rule":`evenodd`},[l(`path`,{d:`m12.593 23.258l-.011.002l-.071.035l-.02.004l-.014-.004l-.071-.035q-.016-.005-.024.005l-.004.01l-.017.428l.005.02l.01.013l.104.074l.015.004l.012-.004l.104-.074l.012-.016l.004-.017l-.017-.427q-.004-.016-.017-.018m.265-.113l-.013.002l-.185.093l-.01.01l-.003.011l.018.43l.005.012l.008.007l.201.093q.019.005.029-.008l.004-.014l-.034-.614q-.005-.018-.02-.022m-.715.002a.02.02 0 0 0-.027.006l-.006.014l-.034.614q.001.018.017.024l.015-.002l.201-.093l.01-.008l.004-.011l.017-.43l-.003-.012l-.01-.01z`}),l(`path`,{fill:`currentColor`,d:`M5 3a3 3 0 0 0-3 3v10a2 2 0 0 0 2 2V6a1 1 0 0 1 1-1h14a2 2 0 0 0-2-2zm0 5a2 2 0 0 1 2-2h13a2 2 0 0 1 2 2v11.333a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2zm15 0H7v7.848L10.848 12a1.25 1.25 0 0 1 1.768 0l3.241 3.24l.884-.883a1.25 1.25 0 0 1 1.768 0L20 15.848zm-2 3a1.5 1.5 0 1 1-3 0a1.5 1.5 0 0 1 3 0`})],-1)]])}var N=u({name:`mingcute-photo-album-fill`,render:M}),P={class:`camera-stream-event-container`},F={class:`stream-wrapper`},I={key:0,class:`ai-description-overlay`},L={class:`min-w-0`},R={class:`text-sm font-semibold text-white`},z={class:`text-xs text-white/85 mt-1`},B=T(v({__name:`CameraStreamEvent`,props:{camera:{},eventTimestamp:{}},setup(u,{expose:v}){let T=u,j=C(),{t:M}=j,N=D(),{mdBreakpoint:B}=E(),V=h(`dialogRefProps`),H=h(`dialogHeaderToggles`,{}),{plugin:U}=te(`@camera.ui/camera-ui-nvr`),{camera:W,eventTimestamp:G}=p(T),K=n(`cameraCardRef`),q=n(`cuiTimelineRef`),J=e(!1),Y=e(),X=e(!1),Z=x(d(()=>W.value._id),{sourceRole:Y}),ne=d(()=>!!V.loading?.value),re=d(()=>H[0]??!1),Q=d(()=>q.value?.currentEventDescription),$=d(()=>!!q.value?.currentEvent),ie=d(()=>q.value?.isLive??!0),ae=d(()=>({locale:j.locale.value,dayNames:N.config.locale?.dayNames,dayNamesShort:N.config.locale?.dayNamesShort,monthNames:N.config.locale?.monthNames,monthNamesShort:N.config.locale?.monthNamesShort}));async function oe(){if(X.value)return;let e=q.value?.currentEvent;if(!e)return;let t=U.value;if(t?.nvrExport){X.value=!0;try{let n=await t.nvrExport(e.cameraId,e.startMs*1e3,e.endMs*1e3);await k({url:n.url,filename:n.filename})}catch(e){console.error(`Download failed:`,e)}finally{X.value=!1}}}function se(e){K.value?.timelineScroll(e)}a([$,ie],([e,t])=>{if(!V.headerActions)return;let n=[];n.push({icon:O,tooltip:M(`components.player.ai_descriptions`),toggle:!0,onClick:()=>{}}),!t&&e&&U.value&&n.push({icon:A,tooltip:M(`views.recordings.download`),onClick:oe}),V.headerActions.value=n},{immediate:!0}),G.value&&(Z.mode.value=`play`,Z.loading.value=!0),s(()=>{setTimeout(()=>{J.value=!0},300);let e=G.value;e&&ee(()=>{Z.play(e*1e3)})});function ce(){let e=Z.currentTimestamp.value>0?Math.floor(Z.currentTimestamp.value/1e3):G.value;return e?`/cameras/${W.value.name}?startTs=${e}`:`/cameras/${W.value.name}`}return v({isLoading:ne,resolveGoTo:ce}),(e,n)=>{let a=w,s=O;return b(),t(`div`,P,[l(`div`,F,[(b(),f(a,{ref_key:`cameraCardRef`,ref:K,key:y(W).name,"source-role":y(Y),"onUpdate:sourceRole":n[0]||=e=>r(Y)?Y.value=e:null,"streaming-mode":`webrtc`,"camera-info":y(W).name,"flat-card":``,"card-props":{pt:{root:{class:{"!rounded-md":!0}}}},"camera-name-overlay":!1,toolbar:!1,subcontrol:!0,"subcontrol-quality-button":!0,"subcontrol-activity-mode-button":!1,"subcontrol-ptz-button":!1,"subcontrol-streaming-mode-button":!1,"control-pip-button":!1,"control-microphone-button":!1},null,8,[`source-role`,`camera-info`])),_(o,{"enter-active-class":`transition-all duration-300 ease-out`,"enter-from-class":`opacity-0 -translate-y-2`,"enter-to-class":`opacity-100 translate-y-0`,"leave-active-class":`transition-all duration-200 ease-in`,"leave-from-class":`opacity-100 translate-y-0`,"leave-to-class":`opacity-0 -translate-y-2`},{default:c(()=>[y(Q)&&y(re)?(b(),t(`div`,I,[_(s,{class:`w-4 h-4 text-white/90 shrink-0 mt-0.5`}),l(`div`,L,[l(`p`,R,g(y(Q).title),1),l(`p`,z,g(y(Q).description),1)])])):i(``,!0)]),_:1})]),(b(),f(y(S),{ref_key:`cuiTimelineRef`,ref:q,key:y(W).name,"camera-ids":[y(W)._id],"initial-timestamp":y(G),loading:!y(J),type:y(B)?`vertical`:`horizontal`,"ignore-bottom-safe-area":y(B),"show-segments":!1,"show-zoom":!1,"show-date":!1,class:m([`flex w-full border-t-[1px] border-color shrink-0`,y(B)?`h-full`:`h-[200px]`]),"card-class":{"mt-auto":!y(B)},"flat-card":``,"locale-settings":y(ae),onScrolling:se},null,8,[`camera-ids`,`initial-timestamp`,`loading`,`type`,`ignore-bottom-safe-area`,`class`,`card-class`,`locale-settings`]))])}}}),[[`__scopeId`,`data-v-cf08be18`]]),V={viewBox:`0 0 24 24`,width:`1.2em`,height:`1.2em`};function H(e,n){return b(),t(`svg`,V,[...n[0]||=[l(`path`,{fill:`currentColor`,d:`M3 11h8V3H3m0 18h8v-8H3m10 8h8v-8h-8m0-10v8h8V3`},null,-1)]])}var U=u({name:`mdi-view-grid`,render:H});export{B as n,N as r,U as t};
@@ -347,44 +347,44 @@
347
347
  media="screen and (prefers-color-scheme: dark) and (device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2) and (orientation: portrait)"
348
348
  href="/pwa/apple-splash-portrait-dark-640x1136.png"
349
349
  />
350
- <script type="module" crossorigin src="/assets/main-9TGn6n93.js"></script>
350
+ <script type="module" crossorigin src="/assets/main-BBDURrXh.js"></script>
351
351
  <link rel="modulepreload" crossorigin href="/assets/rolldown-runtime-DAXXjFlN.js">
352
352
  <link rel="modulepreload" crossorigin href="/assets/vendor-CF-D4B9g.js">
353
- <link rel="modulepreload" crossorigin href="/assets/vendor-cameraui-DpqS51DT.js">
354
- <link rel="modulepreload" crossorigin href="/assets/vendor-core-DAinYQ9K.js">
355
- <link rel="modulepreload" crossorigin href="/assets/api-NtCA6-OA.js">
353
+ <link rel="modulepreload" crossorigin href="/assets/vendor-cameraui-tvNekvZ-.js">
354
+ <link rel="modulepreload" crossorigin href="/assets/vendor-core-DinQdIbm.js">
355
+ <link rel="modulepreload" crossorigin href="/assets/api-DG-9_slP.js">
356
356
  <link rel="modulepreload" crossorigin href="/assets/_plugin-vue_export-helper-BDNMzG2s.js">
357
- <link rel="modulepreload" crossorigin href="/assets/ui-CBRpDu-c.js">
358
- <link rel="modulepreload" crossorigin href="/assets/useSharedComposables-DUNE9Fjf.js">
359
- <link rel="modulepreload" crossorigin href="/assets/vendor-primevue-CG0iLCzA.js">
357
+ <link rel="modulepreload" crossorigin href="/assets/ui-q3Xp2p6M.js">
358
+ <link rel="modulepreload" crossorigin href="/assets/useSharedComposables-CTXKSCVm.js">
359
+ <link rel="modulepreload" crossorigin href="/assets/vendor-primevue-D0-7UQst.js">
360
360
  <link rel="modulepreload" crossorigin href="/assets/cog-DiL--KjL.js">
361
361
  <link rel="modulepreload" crossorigin href="/assets/lightbulb-outline-DnqcItJU.js">
362
- <link rel="modulepreload" crossorigin href="/assets/CuiImage-BR35PcJ-.js">
363
- <link rel="modulepreload" crossorigin href="/assets/CuiCameraSnapshot-DBlooBWY.js">
364
- <link rel="modulepreload" crossorigin href="/assets/hasPermission-rf-FHUEM.js">
362
+ <link rel="modulepreload" crossorigin href="/assets/CuiImage-Dkb0xMtM.js">
363
+ <link rel="modulepreload" crossorigin href="/assets/CuiCameraSnapshot-DRu0hF3z.js">
364
+ <link rel="modulepreload" crossorigin href="/assets/hasPermission-BTRA5070.js">
365
365
  <link rel="modulepreload" crossorigin href="/assets/types-DllqnzAz.js">
366
- <link rel="modulepreload" crossorigin href="/assets/CuiAvatar-CqKr0qrz.js">
367
- <link rel="modulepreload" crossorigin href="/assets/CuiMenu-DwGJrz2-.js">
366
+ <link rel="modulepreload" crossorigin href="/assets/CuiAvatar-DT205oI6.js">
367
+ <link rel="modulepreload" crossorigin href="/assets/CuiMenu-EoB3gkMJ.js">
368
368
  <link rel="modulepreload" crossorigin href="/assets/play-solid-BgmJ89Sh.js">
369
369
  <link rel="modulepreload" crossorigin href="/assets/face-recognition-vNgsuvZQ.js">
370
- <link rel="modulepreload" crossorigin href="/assets/CuiBBoxPlayground-BEYO128c.js">
370
+ <link rel="modulepreload" crossorigin href="/assets/CuiBBoxPlayground-BVK7ZJ7M.js">
371
371
  <link rel="modulepreload" crossorigin href="/assets/shield-check-D55EbdY5.js">
372
372
  <link rel="modulepreload" crossorigin href="/assets/vendor-draggabilly-DCZR9BMa.js">
373
- <link rel="modulepreload" crossorigin href="/assets/cameras-CKYu9vm7.js">
374
- <link rel="modulepreload" crossorigin href="/assets/CuiActionButton-BIR2fQ-I.js">
373
+ <link rel="modulepreload" crossorigin href="/assets/cameras-CuAJzX9E.js">
374
+ <link rel="modulepreload" crossorigin href="/assets/CuiActionButton-BF1An_rl.js">
375
375
  <link rel="modulepreload" crossorigin href="/assets/copy-16-filled-UD4hjH-4.js">
376
- <link rel="modulepreload" crossorigin href="/assets/shares-bO9z1yJK.js">
377
- <link rel="modulepreload" crossorigin href="/assets/useCuiCameraDrawer-DW9-Cdys.js">
376
+ <link rel="modulepreload" crossorigin href="/assets/shares-DHjtR1MT.js">
377
+ <link rel="modulepreload" crossorigin href="/assets/useCuiCameraDrawer-zbw8XiW5.js">
378
378
  <link rel="modulepreload" crossorigin href="/assets/close-rounded-BhUZzZeA.js">
379
- <link rel="modulepreload" crossorigin href="/assets/useCuiDialog-DrBTif-3.js">
380
- <link rel="modulepreload" crossorigin href="/assets/useFileDownload-DksvUFZ8.js">
381
- <link rel="modulepreload" crossorigin href="/assets/CuiCameraCard-CH8wRfqD.js">
379
+ <link rel="modulepreload" crossorigin href="/assets/useCuiDialog-C7VXcZOW.js">
380
+ <link rel="modulepreload" crossorigin href="/assets/useFileDownload-Et7NRBap.js">
381
+ <link rel="modulepreload" crossorigin href="/assets/CuiCameraCard-Dg_senYR.js">
382
382
  <link rel="modulepreload" crossorigin href="/assets/cloud-outline-BrU3S7IS.js">
383
383
  <link rel="modulepreload" crossorigin href="/assets/close-BvciW6Wg.js">
384
384
  <link rel="modulepreload" crossorigin href="/assets/useElectron-mh8HQUAI.js">
385
385
  <link rel="modulepreload" crossorigin href="/assets/chevron-down-DY3yQG2A.js">
386
386
  <link rel="modulepreload" crossorigin href="/assets/power-2WnCmUq_.js">
387
- <link rel="modulepreload" crossorigin href="/assets/instances-IBssFzSt.js">
387
+ <link rel="modulepreload" crossorigin href="/assets/instances-C9noeaJ-.js">
388
388
  <link rel="modulepreload" crossorigin href="/assets/cctv-BK9p1URj.js">
389
389
  <link rel="modulepreload" crossorigin href="/assets/terminal-DNYYAFl5.js">
390
390
  <link rel="modulepreload" crossorigin href="/assets/circular-connection-BTgxVifK.js">
@@ -393,30 +393,30 @@
393
393
  <link rel="modulepreload" crossorigin href="/assets/bell-outline-XAqc3I7S.js">
394
394
  <link rel="modulepreload" crossorigin href="/assets/grid-fill-BmsHxwDf.js">
395
395
  <link rel="modulepreload" crossorigin href="/assets/download-Dvs3QCvp.js">
396
- <link rel="modulepreload" crossorigin href="/assets/view-grid-DQkfCMI_.js">
396
+ <link rel="modulepreload" crossorigin href="/assets/view-grid-B5oq2YBJ.js">
397
397
  <link rel="modulepreload" crossorigin href="/assets/eventIcons-BPti5ma5.js">
398
398
  <link rel="modulepreload" crossorigin href="/assets/github-3U8UNWEo.js">
399
- <link rel="modulepreload" crossorigin href="/assets/CuiFloatingButton-CYP3wZAj.js">
399
+ <link rel="modulepreload" crossorigin href="/assets/CuiFloatingButton-CXLHlbnk.js">
400
400
  <link rel="modulepreload" crossorigin href="/assets/vendor-dnd-BuMMZfLh.js">
401
- <link rel="modulepreload" crossorigin href="/assets/CuiTopbarSlot-Bo2vH_kI.js">
402
- <link rel="modulepreload" crossorigin href="/assets/useBiometricCredentials-DnB31QCq.js">
401
+ <link rel="modulepreload" crossorigin href="/assets/CuiTopbarSlot-DTNeuYvo.js">
402
+ <link rel="modulepreload" crossorigin href="/assets/useBiometricCredentials-CwpN9ZTB.js">
403
403
  <link rel="modulepreload" crossorigin href="/assets/vendor-zod-V2qTUMVc.js">
404
- <link rel="modulepreload" crossorigin href="/assets/types-Wl5Ty2yP.js">
405
- <link rel="modulepreload" crossorigin href="/assets/users.schema-B7Gwrqjw.js">
406
- <link rel="modulepreload" crossorigin href="/assets/routerState-Buu48zeq.js">
407
- <link rel="modulepreload" crossorigin href="/assets/router-t0j7Kqm7.js">
408
- <link rel="modulepreload" crossorigin href="/assets/theme-C4hbpNuJ.js">
404
+ <link rel="modulepreload" crossorigin href="/assets/types-QvsYiGdQ.js">
405
+ <link rel="modulepreload" crossorigin href="/assets/users.schema-nZK4wXvw.js">
406
+ <link rel="modulepreload" crossorigin href="/assets/routerState-C_8KP3kD.js">
407
+ <link rel="modulepreload" crossorigin href="/assets/router-BeAHAEXo.js">
408
+ <link rel="modulepreload" crossorigin href="/assets/theme-LZAl6ikG.js">
409
409
  <link rel="modulepreload" crossorigin href="/assets/microphone-Ctgn-sl1.js">
410
410
  <link rel="modulepreload" crossorigin href="/assets/check-C8Q3pZRh.js">
411
- <link rel="modulepreload" crossorigin href="/assets/CuiSchema-CbMtJJnY.js">
412
- <link rel="modulepreload" crossorigin href="/assets/plugins-BSosZ7mD.js">
413
- <link rel="modulepreload" crossorigin href="/assets/PluginSchema-BVZcuMh7.js">
411
+ <link rel="modulepreload" crossorigin href="/assets/CuiSchema-Cfc1vzp6.js">
412
+ <link rel="modulepreload" crossorigin href="/assets/plugins--S_Q7XSz.js">
413
+ <link rel="modulepreload" crossorigin href="/assets/PluginSchema-Xd9otIzG.js">
414
414
  <link rel="modulepreload" crossorigin href="/assets/information-outline-C1VdAtHq.js">
415
415
  <link rel="modulepreload" crossorigin href="/assets/plus-DO_I5Ekc.js">
416
- <link rel="modulepreload" crossorigin href="/assets/cameras.schema-MCmXBV5E.js">
417
- <link rel="modulepreload" crossorigin href="/assets/useStreamStatus-BXUMDut2.js">
416
+ <link rel="modulepreload" crossorigin href="/assets/cameras.schema-B93btXUO.js">
417
+ <link rel="modulepreload" crossorigin href="/assets/useStreamStatus-D3b5-kAN.js">
418
418
  <link rel="modulepreload" crossorigin href="/assets/home-QHsGVBGd.js">
419
- <link rel="modulepreload" crossorigin href="/assets/locale-Ddd4TTHX.js">
419
+ <link rel="modulepreload" crossorigin href="/assets/locale-BJ2C57Gq.js">
420
420
  <link rel="stylesheet" crossorigin href="/assets/api-Cna9Poda.css">
421
421
  <link rel="stylesheet" crossorigin href="/assets/CuiImage-Bxf7z2N4.css">
422
422
  <link rel="stylesheet" crossorigin href="/assets/CuiAvatar-BtMXnhxd.css">
@@ -1 +1 @@
1
- if(!self.define){let s,e={};const l=(l,i)=>(l=new URL(l+".js",i).href,e[l]||new Promise(e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()}).then(()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didn’t register its module`);return s}));self.define=(i,a)=>{const r=s||("document"in self?document.currentScript.src:"")||location.href;if(e[r])return;let n={};const u=s=>l(s,r),o={module:{uri:r},exports:n,require:u};e[r]=Promise.all(i.map(s=>o[s]||u(s))).then(s=>(a(...s),n))}}define(["./workbox-5f44db27"],function(s){"use strict";s.setCacheNameDetails({prefix:"camera-ui"}),self.addEventListener("message",s=>{s.data&&"SKIP_WAITING"===s.data.type&&self.skipWaiting()}),s.precacheAndRoute([{url:"robots.txt",revision:"f77c87f977e0fcce05a6df46c885a129"},{url:"og-share.png",revision:"0ca1dd15e2498de1d1423fe6134db452"},{url:"index.html",revision:"51a2ddb8e4b489564dc7dcacd43f3a18"},{url:"pwa/pwa-96x96.png",revision:"675ea863c25fa9ae31d4d76a47463c78"},{url:"pwa/pwa-88x88.png",revision:"6e8af0a85b0627a835b62067d5189cb4"},{url:"pwa/pwa-72x72.png",revision:"66698bb499639052ad337f7e9a7d7ea8"},{url:"pwa/pwa-64x64.png",revision:"f57763be3212fd4154c502d607e7ed38"},{url:"pwa/pwa-50x50.png",revision:"a20fc2e6f26aa548f9cae07911087f6c"},{url:"pwa/pwa-48x48.png",revision:"97d7369c892f1e0914c2617ff26feb3c"},{url:"pwa/pwa-36x36.png",revision:"4d08bb198d4e54e4d12a0810fc59f059"},{url:"pwa/pwa-300x300.png",revision:"7f79d74e34aedef57c98a1c9c156ba6b"},{url:"pwa/pwa-24x24.png",revision:"bdb25f68ca300283b37041e47d3e6ba8"},{url:"pwa/pwa-192x192.png",revision:"3d58c2dd940c535cc166cc8d0844429d"},{url:"pwa/pwa-180x180.png",revision:"225b42752632e2866c4f8fe4ab2f62ee"},{url:"pwa/pwa-167x167.png",revision:"de6a5ca921b45fb3bd30d27c707981c6"},{url:"pwa/pwa-152x152.png",revision:"4cf41c7b603d382e83e098affb7cb9da"},{url:"pwa/pwa-144x144.png",revision:"4fdf5c8fb085f764ed7dd5a26698bff5"},{url:"pwa/pwa-120x120.png",revision:"3f5ec31f6bd07910482227b259344110"},{url:"pwa/pwa-1024x1024.png",revision:"1ed367ae76416e79fd0bdd6ee70666bc"},{url:"pwa/maskable-icon-620x300.png",revision:"b4954ceadf0d6f2095c45f8cc8240337"},{url:"pwa/maskable-icon-512x512.png",revision:"e716feaa60f08d95d0909e1c85bf1f98"},{url:"pwa/maskable-icon-1240x600.png",revision:"f3188c7d8e5038f28068c7a3632dbe4b"},{url:"pwa/logo.svg",revision:"1aa262f4a37293a91083eea10794d2ca"},{url:"pwa/favicon-64.ico",revision:"6a697d7662ab5ee246918cdc7c412343"},{url:"pwa/favicon-48.ico",revision:"d0a27003af457cb85651c84c60c87ef0"},{url:"pwa/favicon-32.ico",revision:"6e711cbf0b53afe4a7d0057780fa42b9"},{url:"pwa/favicon-16.ico",revision:"163ae861c5ab9f68ed21324c19dfe35d"},{url:"pwa/apple-touch-icon-180x180.png",revision:"91aec7b3a553812fbd3cd72adb17fcc4"},{url:"pwa/apple-splash-portrait-light-828x1792.png",revision:"8deb1063185df6a2d3089a9fa33f6ad1"},{url:"pwa/apple-splash-portrait-light-750x1334.png",revision:"191c785b1e7b47ac1b1d6bc2a84bde85"},{url:"pwa/apple-splash-portrait-light-640x1136.png",revision:"588e312fd0851d5767972a1efc33e6a3"},{url:"pwa/apple-splash-portrait-light-2048x2732.png",revision:"cf9c75c2e56f8d3af7d914a00ce30286"},{url:"pwa/apple-splash-portrait-light-1668x2388.png",revision:"5db134deca3d2e8a1ae2d8e67c77c420"},{url:"pwa/apple-splash-portrait-light-1668x2224.png",revision:"a1b5adab2a71d0fa646e7b0e9a4fcb71"},{url:"pwa/apple-splash-portrait-light-1620x2160.png",revision:"41bdc2c492d374bf8c6b6875e2beb9f1"},{url:"pwa/apple-splash-portrait-light-1536x2048.png",revision:"42716fc23cfa58d3f154fea1875eb3f5"},{url:"pwa/apple-splash-portrait-light-1290x2796.png",revision:"d57711837cf7e3801a9e8126b1695aaa"},{url:"pwa/apple-splash-portrait-light-1284x2778.png",revision:"461b13cf0d9c293ca220700bb4148afa"},{url:"pwa/apple-splash-portrait-light-1242x2688.png",revision:"2b320f74bc7da7bf0d1be699183416c3"},{url:"pwa/apple-splash-portrait-light-1242x2208.png",revision:"8fd1367cac03e5798973cfa4e0dec5b0"},{url:"pwa/apple-splash-portrait-light-1179x2556.png",revision:"8d1fc622bdb48dda2461e4f47a49249a"},{url:"pwa/apple-splash-portrait-light-1170x2532.png",revision:"58d656b4de9b32a09fc2ea1028116dfb"},{url:"pwa/apple-splash-portrait-light-1125x2436.png",revision:"1a02e33add13bccc9f407efcfd2cf890"},{url:"pwa/apple-splash-portrait-dark-828x1792.png",revision:"543d10f74f6f098e49ba989899182dee"},{url:"pwa/apple-splash-portrait-dark-750x1334.png",revision:"54f99ba556f7cc149eb03fe6207d411d"},{url:"pwa/apple-splash-portrait-dark-640x1136.png",revision:"b901a6f04ef976aa81573ec0f3c8f32b"},{url:"pwa/apple-splash-portrait-dark-2048x2732.png",revision:"60acb5fbde5bb76a368238c5e079c717"},{url:"pwa/apple-splash-portrait-dark-1668x2388.png",revision:"fb7fb372580598abf8a1d8eb7305462a"},{url:"pwa/apple-splash-portrait-dark-1668x2224.png",revision:"1e7b39c9f5fdca7ddf23c1248f7628bf"},{url:"pwa/apple-splash-portrait-dark-1620x2160.png",revision:"1a9f84fba88d4cd5924cf5a39d541b46"},{url:"pwa/apple-splash-portrait-dark-1536x2048.png",revision:"0b26c0a578f6b13b3df06abecc81fb82"},{url:"pwa/apple-splash-portrait-dark-1290x2796.png",revision:"e7f2a468891736413b1e0622a510fd5a"},{url:"pwa/apple-splash-portrait-dark-1284x2778.png",revision:"d7230994de3c4c6016ac252431031ea7"},{url:"pwa/apple-splash-portrait-dark-1242x2688.png",revision:"c56eb0a4a8b4c7bb850cbfc35dd62bba"},{url:"pwa/apple-splash-portrait-dark-1242x2208.png",revision:"1b7f03eaab3cf8af8aa6057fd97278d8"},{url:"pwa/apple-splash-portrait-dark-1179x2556.png",revision:"8eac224083023d0d21374d9f9087bab5"},{url:"pwa/apple-splash-portrait-dark-1170x2532.png",revision:"476ac5131289040d8d88803c18dc20bb"},{url:"pwa/apple-splash-portrait-dark-1125x2436.png",revision:"53ddd8644a89bfc79c8d1bfbaa51527b"},{url:"pwa/apple-splash-landscape-light-2796x1290.png",revision:"a46e458259177e134ad383d133b29774"},{url:"pwa/apple-splash-landscape-light-2778x1284.png",revision:"95d2479cf715c2ea0104fd5f55fa62b3"},{url:"pwa/apple-splash-landscape-light-2732x2048.png",revision:"0e5ec355113efe5ce253583209a64bb8"},{url:"pwa/apple-splash-landscape-light-2688x1242.png",revision:"3757f5338eb50c9f6fb8ad0d72597465"},{url:"pwa/apple-splash-landscape-light-2556x1179.png",revision:"3f0efc9e8de850ae5d3a72a158d39055"},{url:"pwa/apple-splash-landscape-light-2532x1170.png",revision:"b9e11e5a3435cf159f240b5f6da5dc76"},{url:"pwa/apple-splash-landscape-light-2436x1125.png",revision:"459b9c158b3a52222787d00a276baa21"},{url:"pwa/apple-splash-landscape-light-2388x1668.png",revision:"3733608412963cb747e32b2790013523"},{url:"pwa/apple-splash-landscape-light-2224x1668.png",revision:"ecf0efece27d70815f7401f7f3e40a24"},{url:"pwa/apple-splash-landscape-light-2208x1242.png",revision:"653857094b0c183908571fea1aed7b2f"},{url:"pwa/apple-splash-landscape-light-2160x1620.png",revision:"31ac689a78386cf844e33f10fd5d2029"},{url:"pwa/apple-splash-landscape-light-2048x1536.png",revision:"1b27b72b070b260eceeaab092a82663d"},{url:"pwa/apple-splash-landscape-light-1792x828.png",revision:"c6e29d789061fc48eb9f3a54cb1950be"},{url:"pwa/apple-splash-landscape-light-1334x750.png",revision:"f513cdc13ffaf0c2a82bb207e2a9a397"},{url:"pwa/apple-splash-landscape-light-1136x640.png",revision:"c9b4c38f0a267051c0c83cc92c0f5767"},{url:"pwa/apple-splash-landscape-dark-2796x1290.png",revision:"22b9597a28c081730e3430e467b4e36d"},{url:"pwa/apple-splash-landscape-dark-2778x1284.png",revision:"19d1e7a02d9edd3354c61b7c54ea9c1e"},{url:"pwa/apple-splash-landscape-dark-2732x2048.png",revision:"dc9fbb966dfc3350466279749c2946d7"},{url:"pwa/apple-splash-landscape-dark-2688x1242.png",revision:"dcd13ed9567fa4d98867f5c97cc89695"},{url:"pwa/apple-splash-landscape-dark-2556x1179.png",revision:"02e2914d36b2aaf6da02799414a23738"},{url:"pwa/apple-splash-landscape-dark-2532x1170.png",revision:"b89d280148f1bcb816c6364c37daefb6"},{url:"pwa/apple-splash-landscape-dark-2436x1125.png",revision:"85613cc4f5040791ef13e4b2a1ecc840"},{url:"pwa/apple-splash-landscape-dark-2388x1668.png",revision:"e17cbe3b198574eb6fc822c17e22d935"},{url:"pwa/apple-splash-landscape-dark-2224x1668.png",revision:"1144751415d9c1f3d1bc34407b9a9539"},{url:"pwa/apple-splash-landscape-dark-2208x1242.png",revision:"2989b9f038112f8eed3694fa53b86e6a"},{url:"pwa/apple-splash-landscape-dark-2160x1620.png",revision:"ee54046f738fe4346d7febbfaa711244"},{url:"pwa/apple-splash-landscape-dark-2048x1536.png",revision:"70f0181b7e075e3b64e261c4d4e3eada"},{url:"pwa/apple-splash-landscape-dark-1792x828.png",revision:"281d292ea4448638bb250a3fca5f5f44"},{url:"pwa/apple-splash-landscape-dark-1334x750.png",revision:"d82dd37eb2bdf815c1e2ab367134cbbf"},{url:"pwa/apple-splash-landscape-dark-1136x640.png",revision:"c6b193de9bd234c81fdea1d28fe7b88c"},{url:"fonts/InterVariable.woff2",revision:"2bf3d951bf9d6109437ea0874bbf12fb"},{url:"assets/zoom-in-BfBU52rQ.js",revision:null},{url:"assets/worker-yaml-crtWQpDN.js",revision:null},{url:"assets/worker-base-ybazWkNy.js",revision:null},{url:"assets/workbox-window.prod.es5-GcTH5iVv.js",revision:null},{url:"assets/web-yGUE_lY4.js",revision:null},{url:"assets/web-qvBKJC37.js",revision:null},{url:"assets/web-N07cxGeP.js",revision:null},{url:"assets/web-CyrAb8gv.js",revision:null},{url:"assets/web-CtXgcuPK.js",revision:null},{url:"assets/web-CpHwGmy3.js",revision:null},{url:"assets/web-CPFJ-p7f.js",revision:null},{url:"assets/web-CMdr3-OF.js",revision:null},{url:"assets/web-CGlVLo8n.js",revision:null},{url:"assets/web-C57m-s7x.js",revision:null},{url:"assets/web-BjKL51lK-Cj0lDX11.js",revision:null},{url:"assets/web-BftsHHuf.js",revision:null},{url:"assets/view-grid-SdzaC3O_.css",revision:null},{url:"assets/view-grid-DQkfCMI_.js",revision:null},{url:"assets/vendor-zod-V2qTUMVc.js",revision:null},{url:"assets/vendor-xterm-BrP-ENHg.css",revision:null},{url:"assets/vendor-xterm-BRN-hOYD.js",revision:null},{url:"assets/vendor-vueflow--Q_FmuVt.js",revision:null},{url:"assets/vendor-primevue-CG0iLCzA.js",revision:null},{url:"assets/vendor-markdown-DtOhvyRx.css",revision:null},{url:"assets/vendor-markdown-BZSidpyh.js",revision:null},{url:"assets/vendor-leaflet-vh-t_kPv.css",revision:null},{url:"assets/vendor-leaflet-7XZntJjG.js",revision:null},{url:"assets/vendor-gridstack-Rg2RhwAc.css",revision:null},{url:"assets/vendor-gridstack-DD5uGA3X.js",revision:null},{url:"assets/vendor-draggabilly-DCZR9BMa.js",revision:null},{url:"assets/vendor-dnd-BuMMZfLh.js",revision:null},{url:"assets/vendor-core-DAinYQ9K.js",revision:null},{url:"assets/vendor-chart-CYhHo97f.js",revision:null},{url:"assets/vendor-capacitor-Dqo8SY0p.js",revision:null},{url:"assets/vendor-cameraui-DpqS51DT.js",revision:null},{url:"assets/vendor-ace-DdrK3_G3.js",revision:null},{url:"assets/vendor-CF-D4B9g.js",revision:null},{url:"assets/users.schema-B7Gwrqjw.js",revision:null},{url:"assets/useStreamStatus-BXUMDut2.js",revision:null},{url:"assets/useSharedComposables-DUNE9Fjf.js",revision:null},{url:"assets/useLogsSocket-HNen2ftk.js",revision:null},{url:"assets/useLogsSocket-Ce1ISNIw.css",revision:null},{url:"assets/useFileDownload-DksvUFZ8.js",revision:null},{url:"assets/useElectron-mh8HQUAI.js",revision:null},{url:"assets/useCuiDialog-DrBTif-3.js",revision:null},{url:"assets/useCuiCameraDrawer-DW9-Cdys.js",revision:null},{url:"assets/useCameraOptions-CZUtka_F.js",revision:null},{url:"assets/useBiometricCredentials-DnB31QCq.js",revision:null},{url:"assets/upload-C3Tc1apC.js",revision:null},{url:"assets/ui-CBRpDu-c.js",revision:null},{url:"assets/types-Wl5Ty2yP.js",revision:null},{url:"assets/types-DllqnzAz.js",revision:null},{url:"assets/types-BxFyoO54.js",revision:null},{url:"assets/trash-fill-f4lTEnbR.js",revision:null},{url:"assets/trash-can-BFdf_rAq.js",revision:null},{url:"assets/trash-2-Cq12InWC.js",revision:null},{url:"assets/theme-C4hbpNuJ.js",revision:null},{url:"assets/terminal-DNYYAFl5.js",revision:null},{url:"assets/shield-check-D55EbdY5.js",revision:null},{url:"assets/shares-bO9z1yJK.js",revision:null},{url:"assets/settings-NKsXc7ux.js",revision:null},{url:"assets/server-DIS79xtm.js",revision:null},{url:"assets/search-DZ9xVXRP.js",revision:null},{url:"assets/routerState-Buu48zeq.js",revision:null},{url:"assets/router-t0j7Kqm7.js",revision:null},{url:"assets/router-CuAn6JZ_.css",revision:null},{url:"assets/round-restart-alt-CRIrMOlo.js",revision:null},{url:"assets/round-restart-alt-CJgRaJjF.css",revision:null},{url:"assets/round-alt-arrow-left-bold-CLoPDaOh.js",revision:null},{url:"assets/rolldown-runtime-DAXXjFlN.js",revision:null},{url:"assets/ring-resize-DX9lIn8S.js",revision:null},{url:"assets/power-2WnCmUq_.js",revision:null},{url:"assets/plus-DO_I5Ekc.js",revision:null},{url:"assets/plus-B5POQ2Ue.js",revision:null},{url:"assets/plugins-BSosZ7mD.js",revision:null},{url:"assets/plugin-CCoI9xnD.js",revision:null},{url:"assets/play-solid-BgmJ89Sh.js",revision:null},{url:"assets/notifications-iSDZTfsc.js",revision:null},{url:"assets/nodeDefinitions-D0AwVtA3.js",revision:null},{url:"assets/native-DjYQQw9J.js",revision:null},{url:"assets/native-DL2MbvlB.js",revision:null},{url:"assets/mode-yaml-CIYL8U3d.js",revision:null},{url:"assets/microphone-Ctgn-sl1.js",revision:null},{url:"assets/main-BqVSZVz1.css",revision:null},{url:"assets/main-9TGn6n93.js",revision:null},{url:"assets/logo-DmEiRk0z.png",revision:null},{url:"assets/logo-512-DLKVOU2S.png",revision:null},{url:"assets/logo-256-BCQk9H1-.png",revision:null},{url:"assets/locale-Ddd4TTHX.js",revision:null},{url:"assets/lightbulb-outline-DnqcItJU.js",revision:null},{url:"assets/instances-IBssFzSt.js",revision:null},{url:"assets/information-outline-C1VdAtHq.js",revision:null},{url:"assets/home-QHsGVBGd.js",revision:null},{url:"assets/hasPermission-rf-FHUEM.js",revision:null},{url:"assets/grid-fill-BmsHxwDf.js",revision:null},{url:"assets/github-3U8UNWEo.js",revision:null},{url:"assets/face-recognition-vNgsuvZQ.js",revision:null},{url:"assets/eventIcons-BPti5ma5.js",revision:null},{url:"assets/eventIcons-2hVCNchU.css",revision:null},{url:"assets/esm-klti7Xiu.js",revision:null},{url:"assets/esm-Wd_bXzJb.js",revision:null},{url:"assets/esm-FnjhXZPB.js",revision:null},{url:"assets/esm-DRiFxNFc.js",revision:null},{url:"assets/esm-DFpXZBbM.js",revision:null},{url:"assets/esm-DCr-CrXJ.js",revision:null},{url:"assets/esm-ClQQ50Pr.js",revision:null},{url:"assets/esm-CQe5aysd.js",revision:null},{url:"assets/esm-CDdS2Yz3.js",revision:null},{url:"assets/esm-C9lo7BUF.js",revision:null},{url:"assets/esm-BZmF9iVQ.js",revision:null},{url:"assets/esm-BF5SJFVX.js",revision:null},{url:"assets/esm-BCkYzkzU.js",revision:null},{url:"assets/download-Dvs3QCvp.js",revision:null},{url:"assets/dist-V4RgRFpY.js",revision:null},{url:"assets/delete-BzeGTp2V.js",revision:null},{url:"assets/copy-Dperv2E1.js",revision:null},{url:"assets/copy-16-filled-UD4hjH-4.js",revision:null},{url:"assets/cog-DiL--KjL.js",revision:null},{url:"assets/cloudHandoff-DoUXb29N.js",revision:null},{url:"assets/cloud-outline-BuQTDaKh.js",revision:null},{url:"assets/cloud-outline-BrU3S7IS.js",revision:null},{url:"assets/cloud-check-E6wIIVuz.js",revision:null},{url:"assets/close-rounded-BhUZzZeA.js",revision:null},{url:"assets/close-circle-B_OAX5Zy.js",revision:null},{url:"assets/close-BvciW6Wg.js",revision:null},{url:"assets/close-BVMcLU5Z.js",revision:null},{url:"assets/circular-connection-BTgxVifK.js",revision:null},{url:"assets/chevron-right--xa71qcO.js",revision:null},{url:"assets/chevron-down-DY3yQG2A.js",revision:null},{url:"assets/check-C8Q3pZRh.js",revision:null},{url:"assets/cctv-BK9p1URj.js",revision:null},{url:"assets/cameras.schema-MCmXBV5E.js",revision:null},{url:"assets/cameras-CKYu9vm7.js",revision:null},{url:"assets/camera-preview-C7GT5VHo.png",revision:null},{url:"assets/bell-outline-XAqc3I7S.js",revision:null},{url:"assets/backup-DxSE0DNH.js",revision:null},{url:"assets/back-filled-D7yFvzR6.js",revision:null},{url:"assets/automations-Dcjr9n0g.js",revision:null},{url:"assets/automations-D-pcb6DP.js",revision:null},{url:"assets/automation-1ZEEkuHf.js",revision:null},{url:"assets/auth-DaVXT_yR.js",revision:null},{url:"assets/api-e-E4EslC.js",revision:null},{url:"assets/api-NtCA6-OA.js",revision:null},{url:"assets/api-Cna9Poda.css",revision:null},{url:"assets/alert-outline-C4DaI8XN.js",revision:null},{url:"assets/ace.config-D884GuRj.js",revision:null},{url:"assets/ace-DQ1lNH50.js",revision:null},{url:"assets/_plugin-vue_export-helper-BDNMzG2s.js",revision:null},{url:"assets/Workers-DouAZ6IN.js",revision:null},{url:"assets/VersionsHandler-Cb6WnQiP.js",revision:null},{url:"assets/VariableSuggestions-BCUwMbk2.js",revision:null},{url:"assets/VariableInput-6KBjycfw.js",revision:null},{url:"assets/Terminal-CrOfQJ-O.css",revision:null},{url:"assets/Terminal-B62d7hZL.js",revision:null},{url:"assets/SettingsUsers-BunfJfFX.js",revision:null},{url:"assets/SettingsSystem-DGjWaU3j.js",revision:null},{url:"assets/SettingsRemote-CjVK9pGg.css",revision:null},{url:"assets/SettingsRemote-14DByUYb.js",revision:null},{url:"assets/SettingsRecordings-C2BVYt_b.js",revision:null},{url:"assets/SettingsNotifications-CYFuyAb8.js",revision:null},{url:"assets/SettingsBackup-CX0rT0QJ.css",revision:null},{url:"assets/SettingsBackup-B9L8WRBn.js",revision:null},{url:"assets/SettingsAppearance-BRzzO7Tp.js",revision:null},{url:"assets/SettingsAppearance-BICuFMxO.js",revision:null},{url:"assets/SettingsAccount-Dm4MKhXA.js",revision:null},{url:"assets/SettingsAccount-D9YRXC2V.js",revision:null},{url:"assets/SettingsAccount-C-LQ3hWW.css",revision:null},{url:"assets/Settings-bwLTNAxX.css",revision:null},{url:"assets/Settings-B22NP1uX.js",revision:null},{url:"assets/Recordings-BxczmYsS.js",revision:null},{url:"assets/Recordings-Bt_GlPOK.css",revision:null},{url:"assets/Plugins-tauNbtus.js",revision:null},{url:"assets/Plugins-BPt1RSKT.css",revision:null},{url:"assets/PluginSchema-BVZcuMh7.js",revision:null},{url:"assets/PluginConsole-DPQFT6GB.js",revision:null},{url:"assets/Plugin-DoxdkvWR.css",revision:null},{url:"assets/Plugin-C8KnaxI5.js",revision:null},{url:"assets/OAuthDeviceFlow-C2_Rpjxt.js",revision:null},{url:"assets/Menu-BV2Npq07.js",revision:null},{url:"assets/Instances-CJSxOTS5.js",revision:null},{url:"assets/FirstSteps-Cowo-kpk.js",revision:null},{url:"assets/Faces-pLWD7GFV.js",revision:null},{url:"assets/CuiTopbarSlot-Bo2vH_kI.js",revision:null},{url:"assets/CuiTopNavbarItem-w54CrODK.css",revision:null},{url:"assets/CuiTopNavbarItem-CXmxI8Wn.js",revision:null},{url:"assets/CuiSchema-CbMtJJnY.js",revision:null},{url:"assets/CuiSchema--yMBD996.css",revision:null},{url:"assets/CuiRecordingsGrid-CZIZiEuT.css",revision:null},{url:"assets/CuiRecordingsGrid-BaGvFhVs.js",revision:null},{url:"assets/CuiQRCode-V_yG_KUN.js",revision:null},{url:"assets/CuiQRCode-DfUba6JB.css",revision:null},{url:"assets/CuiPluginOAuthButton-ClmuZ91f.js",revision:null},{url:"assets/CuiPluginCard-CMxEkiWE.js",revision:null},{url:"assets/CuiPluginCard-C0B7I34l.css",revision:null},{url:"assets/CuiMenu-DwGJrz2-.js",revision:null},{url:"assets/CuiMenu-BWUfWLQP.css",revision:null},{url:"assets/CuiMarkdownContent-CFfh6mTv.js",revision:null},{url:"assets/CuiImage-Bxf7z2N4.css",revision:null},{url:"assets/CuiImage-BR35PcJ-.js",revision:null},{url:"assets/CuiFloatingButton-CYP3wZAj.js",revision:null},{url:"assets/CuiCameraTable-BAdLq5hy.js",revision:null},{url:"assets/CuiCameraSnapshot-DBlooBWY.js",revision:null},{url:"assets/CuiCameraShares-B9jYiJ9p.js",revision:null},{url:"assets/CuiCameraRecordings-DM_o0Lya.css",revision:null},{url:"assets/CuiCameraRecordings-CALgktei.js",revision:null},{url:"assets/CuiCameraPipCard-DLhWqYGR.js",revision:null},{url:"assets/CuiCameraPipCard-D3o29_wc.css",revision:null},{url:"assets/CuiCameraCard-dNsAwlKS.css",revision:null},{url:"assets/CuiCameraCard-CH8wRfqD.js",revision:null},{url:"assets/CuiBottomSheet-PBDYQFLH.js",revision:null},{url:"assets/CuiBottomSheet-DxQ6D_RM.css",revision:null},{url:"assets/CuiBottomSheet-CeCMvh1K.js",revision:null},{url:"assets/CuiBBoxPlayground-EFkdOBvq.css",revision:null},{url:"assets/CuiBBoxPlayground-BEYO128c.js",revision:null},{url:"assets/CuiAvatar-CqKr0qrz.js",revision:null},{url:"assets/CuiAvatar-BtMXnhxd.css",revision:null},{url:"assets/CuiActionButton-BIR2fQ-I.js",revision:null},{url:"assets/Console-DBXu0iKa.js",revision:null},{url:"assets/ConfigTriggerWebhook-ByNdWu_n.js",revision:null},{url:"assets/ConfigTriggerSystem-CuqiTtf5.js",revision:null},{url:"assets/ConfigTriggerSensor-BH8UrMLq.js",revision:null},{url:"assets/ConfigTriggerSchedule-m2Q0vw3t.js",revision:null},{url:"assets/ConfigTriggerManual-mtAOiU-R.js",revision:null},{url:"assets/ConfigTriggerGeofence-Csm9Krfq.js",revision:null},{url:"assets/ConfigTriggerDetection-78FurfGv.js",revision:null},{url:"assets/ConfigConditionTime-Bis881x9.js",revision:null},{url:"assets/ConfigConditionSwitch-CO6GugGi.js",revision:null},{url:"assets/ConfigConditionSensorState-DY3qC-jV.js",revision:null},{url:"assets/ConfigConditionIfElse-Qh_TSsp6.js",revision:null},{url:"assets/ConfigActionVariable-_qOTtJaU.js",revision:null},{url:"assets/ConfigActionSnapshot-wqE9-Yza.js",revision:null},{url:"assets/ConfigActionSensor-D4YSq2b7.js",revision:null},{url:"assets/ConfigActionPlugin-DALhMneh.js",revision:null},{url:"assets/ConfigActionOutput-B1vavdKH.js",revision:null},{url:"assets/ConfigActionNotification-Brn8klrZ.js",revision:null},{url:"assets/ConfigActionImageInput-DNtCNXJv.js",revision:null},{url:"assets/ConfigActionHttp-3piUQ_xd.js",revision:null},{url:"assets/ConfigActionDelay-BQ6T2dIQ.js",revision:null},{url:"assets/ConfigActionCameraControl-DoIIrBay.js",revision:null},{url:"assets/Config-JgftUZFe.css",revision:null},{url:"assets/Config-Bcs8TK2T.js",revision:null},{url:"assets/Camview-Dd7DwMHG.css",revision:null},{url:"assets/Camview-BXwTF330.js",revision:null},{url:"assets/Cameras-C5MLRlQt.js",revision:null},{url:"assets/Cameras-807mspcl.css",revision:null},{url:"assets/CameraConsole-CDFo09ch.js",revision:null},{url:"assets/Camera-BhCDJE7I.css",revision:null},{url:"assets/Camera-BD89WTrM.js",revision:null},{url:"assets/Automations-ZmPzbYRc.js",revision:null},{url:"assets/Automation-Csu8t0D7.css",revision:null},{url:"assets/Automation-CsQomMnQ.js",revision:null},{url:"assets/Adminpanel-Dl6CGett.js",revision:null},{url:"assets/About-D3w6wB-C.js",revision:null},{url:"assets/404-BvkajsAN.js",revision:null},{url:"pwa/maskable-icon-1240x600.png",revision:"f3188c7d8e5038f28068c7a3632dbe4b"},{url:"pwa/maskable-icon-512x512.png",revision:"e716feaa60f08d95d0909e1c85bf1f98"},{url:"pwa/maskable-icon-620x300.png",revision:"b4954ceadf0d6f2095c45f8cc8240337"},{url:"pwa/pwa-1024x1024.png",revision:"1ed367ae76416e79fd0bdd6ee70666bc"},{url:"pwa/pwa-120x120.png",revision:"3f5ec31f6bd07910482227b259344110"},{url:"pwa/pwa-144x144.png",revision:"4fdf5c8fb085f764ed7dd5a26698bff5"},{url:"pwa/pwa-152x152.png",revision:"4cf41c7b603d382e83e098affb7cb9da"},{url:"pwa/pwa-167x167.png",revision:"de6a5ca921b45fb3bd30d27c707981c6"},{url:"pwa/pwa-180x180.png",revision:"225b42752632e2866c4f8fe4ab2f62ee"},{url:"pwa/pwa-192x192.png",revision:"3d58c2dd940c535cc166cc8d0844429d"},{url:"pwa/pwa-24x24.png",revision:"bdb25f68ca300283b37041e47d3e6ba8"},{url:"pwa/pwa-300x300.png",revision:"7f79d74e34aedef57c98a1c9c156ba6b"},{url:"pwa/pwa-36x36.png",revision:"4d08bb198d4e54e4d12a0810fc59f059"},{url:"pwa/pwa-48x48.png",revision:"97d7369c892f1e0914c2617ff26feb3c"},{url:"pwa/pwa-50x50.png",revision:"a20fc2e6f26aa548f9cae07911087f6c"},{url:"pwa/pwa-64x64.png",revision:"f57763be3212fd4154c502d607e7ed38"},{url:"pwa/pwa-72x72.png",revision:"66698bb499639052ad337f7e9a7d7ea8"},{url:"pwa/pwa-88x88.png",revision:"6e8af0a85b0627a835b62067d5189cb4"},{url:"pwa/pwa-96x96.png",revision:"675ea863c25fa9ae31d4d76a47463c78"},{url:"manifest.webmanifest",revision:"ed2b67044c80f7c0362cd73cde2f96c5"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("index.html"),{allowlist:[/^(?!\/api)/],denylist:[/[?&]session=/]}))});
1
+ if(!self.define){let s,e={};const l=(l,i)=>(l=new URL(l+".js",i).href,e[l]||new Promise(e=>{if("document"in self){const s=document.createElement("script");s.src=l,s.onload=e,document.head.appendChild(s)}else s=l,importScripts(l),e()}).then(()=>{let s=e[l];if(!s)throw new Error(`Module ${l} didn’t register its module`);return s}));self.define=(i,a)=>{const r=s||("document"in self?document.currentScript.src:"")||location.href;if(e[r])return;let n={};const u=s=>l(s,r),o={module:{uri:r},exports:n,require:u};e[r]=Promise.all(i.map(s=>o[s]||u(s))).then(s=>(a(...s),n))}}define(["./workbox-5f44db27"],function(s){"use strict";s.setCacheNameDetails({prefix:"camera-ui"}),self.addEventListener("message",s=>{s.data&&"SKIP_WAITING"===s.data.type&&self.skipWaiting()}),s.precacheAndRoute([{url:"robots.txt",revision:"f77c87f977e0fcce05a6df46c885a129"},{url:"og-share.png",revision:"0ca1dd15e2498de1d1423fe6134db452"},{url:"index.html",revision:"1fc120f73510413bc718b764e8a45a54"},{url:"pwa/pwa-96x96.png",revision:"675ea863c25fa9ae31d4d76a47463c78"},{url:"pwa/pwa-88x88.png",revision:"6e8af0a85b0627a835b62067d5189cb4"},{url:"pwa/pwa-72x72.png",revision:"66698bb499639052ad337f7e9a7d7ea8"},{url:"pwa/pwa-64x64.png",revision:"f57763be3212fd4154c502d607e7ed38"},{url:"pwa/pwa-50x50.png",revision:"a20fc2e6f26aa548f9cae07911087f6c"},{url:"pwa/pwa-48x48.png",revision:"97d7369c892f1e0914c2617ff26feb3c"},{url:"pwa/pwa-36x36.png",revision:"4d08bb198d4e54e4d12a0810fc59f059"},{url:"pwa/pwa-300x300.png",revision:"7f79d74e34aedef57c98a1c9c156ba6b"},{url:"pwa/pwa-24x24.png",revision:"bdb25f68ca300283b37041e47d3e6ba8"},{url:"pwa/pwa-192x192.png",revision:"3d58c2dd940c535cc166cc8d0844429d"},{url:"pwa/pwa-180x180.png",revision:"225b42752632e2866c4f8fe4ab2f62ee"},{url:"pwa/pwa-167x167.png",revision:"de6a5ca921b45fb3bd30d27c707981c6"},{url:"pwa/pwa-152x152.png",revision:"4cf41c7b603d382e83e098affb7cb9da"},{url:"pwa/pwa-144x144.png",revision:"4fdf5c8fb085f764ed7dd5a26698bff5"},{url:"pwa/pwa-120x120.png",revision:"3f5ec31f6bd07910482227b259344110"},{url:"pwa/pwa-1024x1024.png",revision:"1ed367ae76416e79fd0bdd6ee70666bc"},{url:"pwa/maskable-icon-620x300.png",revision:"b4954ceadf0d6f2095c45f8cc8240337"},{url:"pwa/maskable-icon-512x512.png",revision:"e716feaa60f08d95d0909e1c85bf1f98"},{url:"pwa/maskable-icon-1240x600.png",revision:"f3188c7d8e5038f28068c7a3632dbe4b"},{url:"pwa/logo.svg",revision:"1aa262f4a37293a91083eea10794d2ca"},{url:"pwa/favicon-64.ico",revision:"6a697d7662ab5ee246918cdc7c412343"},{url:"pwa/favicon-48.ico",revision:"d0a27003af457cb85651c84c60c87ef0"},{url:"pwa/favicon-32.ico",revision:"6e711cbf0b53afe4a7d0057780fa42b9"},{url:"pwa/favicon-16.ico",revision:"163ae861c5ab9f68ed21324c19dfe35d"},{url:"pwa/apple-touch-icon-180x180.png",revision:"91aec7b3a553812fbd3cd72adb17fcc4"},{url:"pwa/apple-splash-portrait-light-828x1792.png",revision:"8deb1063185df6a2d3089a9fa33f6ad1"},{url:"pwa/apple-splash-portrait-light-750x1334.png",revision:"191c785b1e7b47ac1b1d6bc2a84bde85"},{url:"pwa/apple-splash-portrait-light-640x1136.png",revision:"588e312fd0851d5767972a1efc33e6a3"},{url:"pwa/apple-splash-portrait-light-2048x2732.png",revision:"cf9c75c2e56f8d3af7d914a00ce30286"},{url:"pwa/apple-splash-portrait-light-1668x2388.png",revision:"5db134deca3d2e8a1ae2d8e67c77c420"},{url:"pwa/apple-splash-portrait-light-1668x2224.png",revision:"a1b5adab2a71d0fa646e7b0e9a4fcb71"},{url:"pwa/apple-splash-portrait-light-1620x2160.png",revision:"41bdc2c492d374bf8c6b6875e2beb9f1"},{url:"pwa/apple-splash-portrait-light-1536x2048.png",revision:"42716fc23cfa58d3f154fea1875eb3f5"},{url:"pwa/apple-splash-portrait-light-1290x2796.png",revision:"d57711837cf7e3801a9e8126b1695aaa"},{url:"pwa/apple-splash-portrait-light-1284x2778.png",revision:"461b13cf0d9c293ca220700bb4148afa"},{url:"pwa/apple-splash-portrait-light-1242x2688.png",revision:"2b320f74bc7da7bf0d1be699183416c3"},{url:"pwa/apple-splash-portrait-light-1242x2208.png",revision:"8fd1367cac03e5798973cfa4e0dec5b0"},{url:"pwa/apple-splash-portrait-light-1179x2556.png",revision:"8d1fc622bdb48dda2461e4f47a49249a"},{url:"pwa/apple-splash-portrait-light-1170x2532.png",revision:"58d656b4de9b32a09fc2ea1028116dfb"},{url:"pwa/apple-splash-portrait-light-1125x2436.png",revision:"1a02e33add13bccc9f407efcfd2cf890"},{url:"pwa/apple-splash-portrait-dark-828x1792.png",revision:"543d10f74f6f098e49ba989899182dee"},{url:"pwa/apple-splash-portrait-dark-750x1334.png",revision:"54f99ba556f7cc149eb03fe6207d411d"},{url:"pwa/apple-splash-portrait-dark-640x1136.png",revision:"b901a6f04ef976aa81573ec0f3c8f32b"},{url:"pwa/apple-splash-portrait-dark-2048x2732.png",revision:"60acb5fbde5bb76a368238c5e079c717"},{url:"pwa/apple-splash-portrait-dark-1668x2388.png",revision:"fb7fb372580598abf8a1d8eb7305462a"},{url:"pwa/apple-splash-portrait-dark-1668x2224.png",revision:"1e7b39c9f5fdca7ddf23c1248f7628bf"},{url:"pwa/apple-splash-portrait-dark-1620x2160.png",revision:"1a9f84fba88d4cd5924cf5a39d541b46"},{url:"pwa/apple-splash-portrait-dark-1536x2048.png",revision:"0b26c0a578f6b13b3df06abecc81fb82"},{url:"pwa/apple-splash-portrait-dark-1290x2796.png",revision:"e7f2a468891736413b1e0622a510fd5a"},{url:"pwa/apple-splash-portrait-dark-1284x2778.png",revision:"d7230994de3c4c6016ac252431031ea7"},{url:"pwa/apple-splash-portrait-dark-1242x2688.png",revision:"c56eb0a4a8b4c7bb850cbfc35dd62bba"},{url:"pwa/apple-splash-portrait-dark-1242x2208.png",revision:"1b7f03eaab3cf8af8aa6057fd97278d8"},{url:"pwa/apple-splash-portrait-dark-1179x2556.png",revision:"8eac224083023d0d21374d9f9087bab5"},{url:"pwa/apple-splash-portrait-dark-1170x2532.png",revision:"476ac5131289040d8d88803c18dc20bb"},{url:"pwa/apple-splash-portrait-dark-1125x2436.png",revision:"53ddd8644a89bfc79c8d1bfbaa51527b"},{url:"pwa/apple-splash-landscape-light-2796x1290.png",revision:"a46e458259177e134ad383d133b29774"},{url:"pwa/apple-splash-landscape-light-2778x1284.png",revision:"95d2479cf715c2ea0104fd5f55fa62b3"},{url:"pwa/apple-splash-landscape-light-2732x2048.png",revision:"0e5ec355113efe5ce253583209a64bb8"},{url:"pwa/apple-splash-landscape-light-2688x1242.png",revision:"3757f5338eb50c9f6fb8ad0d72597465"},{url:"pwa/apple-splash-landscape-light-2556x1179.png",revision:"3f0efc9e8de850ae5d3a72a158d39055"},{url:"pwa/apple-splash-landscape-light-2532x1170.png",revision:"b9e11e5a3435cf159f240b5f6da5dc76"},{url:"pwa/apple-splash-landscape-light-2436x1125.png",revision:"459b9c158b3a52222787d00a276baa21"},{url:"pwa/apple-splash-landscape-light-2388x1668.png",revision:"3733608412963cb747e32b2790013523"},{url:"pwa/apple-splash-landscape-light-2224x1668.png",revision:"ecf0efece27d70815f7401f7f3e40a24"},{url:"pwa/apple-splash-landscape-light-2208x1242.png",revision:"653857094b0c183908571fea1aed7b2f"},{url:"pwa/apple-splash-landscape-light-2160x1620.png",revision:"31ac689a78386cf844e33f10fd5d2029"},{url:"pwa/apple-splash-landscape-light-2048x1536.png",revision:"1b27b72b070b260eceeaab092a82663d"},{url:"pwa/apple-splash-landscape-light-1792x828.png",revision:"c6e29d789061fc48eb9f3a54cb1950be"},{url:"pwa/apple-splash-landscape-light-1334x750.png",revision:"f513cdc13ffaf0c2a82bb207e2a9a397"},{url:"pwa/apple-splash-landscape-light-1136x640.png",revision:"c9b4c38f0a267051c0c83cc92c0f5767"},{url:"pwa/apple-splash-landscape-dark-2796x1290.png",revision:"22b9597a28c081730e3430e467b4e36d"},{url:"pwa/apple-splash-landscape-dark-2778x1284.png",revision:"19d1e7a02d9edd3354c61b7c54ea9c1e"},{url:"pwa/apple-splash-landscape-dark-2732x2048.png",revision:"dc9fbb966dfc3350466279749c2946d7"},{url:"pwa/apple-splash-landscape-dark-2688x1242.png",revision:"dcd13ed9567fa4d98867f5c97cc89695"},{url:"pwa/apple-splash-landscape-dark-2556x1179.png",revision:"02e2914d36b2aaf6da02799414a23738"},{url:"pwa/apple-splash-landscape-dark-2532x1170.png",revision:"b89d280148f1bcb816c6364c37daefb6"},{url:"pwa/apple-splash-landscape-dark-2436x1125.png",revision:"85613cc4f5040791ef13e4b2a1ecc840"},{url:"pwa/apple-splash-landscape-dark-2388x1668.png",revision:"e17cbe3b198574eb6fc822c17e22d935"},{url:"pwa/apple-splash-landscape-dark-2224x1668.png",revision:"1144751415d9c1f3d1bc34407b9a9539"},{url:"pwa/apple-splash-landscape-dark-2208x1242.png",revision:"2989b9f038112f8eed3694fa53b86e6a"},{url:"pwa/apple-splash-landscape-dark-2160x1620.png",revision:"ee54046f738fe4346d7febbfaa711244"},{url:"pwa/apple-splash-landscape-dark-2048x1536.png",revision:"70f0181b7e075e3b64e261c4d4e3eada"},{url:"pwa/apple-splash-landscape-dark-1792x828.png",revision:"281d292ea4448638bb250a3fca5f5f44"},{url:"pwa/apple-splash-landscape-dark-1334x750.png",revision:"d82dd37eb2bdf815c1e2ab367134cbbf"},{url:"pwa/apple-splash-landscape-dark-1136x640.png",revision:"c6b193de9bd234c81fdea1d28fe7b88c"},{url:"fonts/InterVariable.woff2",revision:"2bf3d951bf9d6109437ea0874bbf12fb"},{url:"assets/zoom-in-BfBU52rQ.js",revision:null},{url:"assets/worker-yaml-crtWQpDN.js",revision:null},{url:"assets/worker-base-ybazWkNy.js",revision:null},{url:"assets/workbox-window.prod.es5-GcTH5iVv.js",revision:null},{url:"assets/web-yGUE_lY4.js",revision:null},{url:"assets/web-qvBKJC37.js",revision:null},{url:"assets/web-N07cxGeP.js",revision:null},{url:"assets/web-CyrAb8gv.js",revision:null},{url:"assets/web-CtXgcuPK.js",revision:null},{url:"assets/web-CpHwGmy3.js",revision:null},{url:"assets/web-CPFJ-p7f.js",revision:null},{url:"assets/web-CMdr3-OF.js",revision:null},{url:"assets/web-CGlVLo8n.js",revision:null},{url:"assets/web-C57m-s7x.js",revision:null},{url:"assets/web-BjKL51lK-Cj0lDX11.js",revision:null},{url:"assets/web-BftsHHuf.js",revision:null},{url:"assets/view-grid-SdzaC3O_.css",revision:null},{url:"assets/view-grid-B5oq2YBJ.js",revision:null},{url:"assets/vendor-zod-V2qTUMVc.js",revision:null},{url:"assets/vendor-xterm-BrP-ENHg.css",revision:null},{url:"assets/vendor-xterm-BRN-hOYD.js",revision:null},{url:"assets/vendor-vueflow--Q_FmuVt.js",revision:null},{url:"assets/vendor-primevue-D0-7UQst.js",revision:null},{url:"assets/vendor-markdown-DtOhvyRx.css",revision:null},{url:"assets/vendor-markdown-BZSidpyh.js",revision:null},{url:"assets/vendor-leaflet-vh-t_kPv.css",revision:null},{url:"assets/vendor-leaflet-7XZntJjG.js",revision:null},{url:"assets/vendor-gridstack-Rg2RhwAc.css",revision:null},{url:"assets/vendor-gridstack-DD5uGA3X.js",revision:null},{url:"assets/vendor-draggabilly-DCZR9BMa.js",revision:null},{url:"assets/vendor-dnd-BuMMZfLh.js",revision:null},{url:"assets/vendor-core-DinQdIbm.js",revision:null},{url:"assets/vendor-chart-CYhHo97f.js",revision:null},{url:"assets/vendor-capacitor-Dqo8SY0p.js",revision:null},{url:"assets/vendor-cameraui-tvNekvZ-.js",revision:null},{url:"assets/vendor-ace-DdrK3_G3.js",revision:null},{url:"assets/vendor-CF-D4B9g.js",revision:null},{url:"assets/users.schema-nZK4wXvw.js",revision:null},{url:"assets/useStreamStatus-D3b5-kAN.js",revision:null},{url:"assets/useSharedComposables-CTXKSCVm.js",revision:null},{url:"assets/useLogsSocket-DALNtd8_.css",revision:null},{url:"assets/useLogsSocket-C70Hd1fl.js",revision:null},{url:"assets/useFileDownload-Et7NRBap.js",revision:null},{url:"assets/useElectron-mh8HQUAI.js",revision:null},{url:"assets/useCuiDialog-C7VXcZOW.js",revision:null},{url:"assets/useCuiCameraDrawer-zbw8XiW5.js",revision:null},{url:"assets/useCameraOptions-Jllb4jNr.js",revision:null},{url:"assets/useBiometricCredentials-CwpN9ZTB.js",revision:null},{url:"assets/upload-C3Tc1apC.js",revision:null},{url:"assets/ui-q3Xp2p6M.js",revision:null},{url:"assets/types-QvsYiGdQ.js",revision:null},{url:"assets/types-DllqnzAz.js",revision:null},{url:"assets/types-BxFyoO54.js",revision:null},{url:"assets/trash-fill-f4lTEnbR.js",revision:null},{url:"assets/trash-can-BFdf_rAq.js",revision:null},{url:"assets/trash-2-Cq12InWC.js",revision:null},{url:"assets/theme-LZAl6ikG.js",revision:null},{url:"assets/terminal-DNYYAFl5.js",revision:null},{url:"assets/shield-check-D55EbdY5.js",revision:null},{url:"assets/shares-DHjtR1MT.js",revision:null},{url:"assets/settings-NKsXc7ux.js",revision:null},{url:"assets/server-DAHar4Ts.js",revision:null},{url:"assets/search-DZ9xVXRP.js",revision:null},{url:"assets/routerState-C_8KP3kD.js",revision:null},{url:"assets/router-CuAn6JZ_.css",revision:null},{url:"assets/router-BeAHAEXo.js",revision:null},{url:"assets/round-restart-alt-D3mETXCy.js",revision:null},{url:"assets/round-restart-alt-CJgRaJjF.css",revision:null},{url:"assets/round-alt-arrow-left-bold-CLoPDaOh.js",revision:null},{url:"assets/rolldown-runtime-DAXXjFlN.js",revision:null},{url:"assets/ring-resize-DX9lIn8S.js",revision:null},{url:"assets/power-2WnCmUq_.js",revision:null},{url:"assets/plus-DO_I5Ekc.js",revision:null},{url:"assets/plus-B5POQ2Ue.js",revision:null},{url:"assets/plugins--S_Q7XSz.js",revision:null},{url:"assets/plugin-CCoI9xnD.js",revision:null},{url:"assets/play-solid-BgmJ89Sh.js",revision:null},{url:"assets/notifications-C1aijpt-.js",revision:null},{url:"assets/nodeDefinitions-D0AwVtA3.js",revision:null},{url:"assets/native-DjYQQw9J.js",revision:null},{url:"assets/native-DL2MbvlB.js",revision:null},{url:"assets/mode-yaml-CIYL8U3d.js",revision:null},{url:"assets/microphone-Ctgn-sl1.js",revision:null},{url:"assets/main-BqVSZVz1.css",revision:null},{url:"assets/main-BBDURrXh.js",revision:null},{url:"assets/logo-DmEiRk0z.png",revision:null},{url:"assets/logo-256-BCQk9H1-.png",revision:null},{url:"assets/locale-BJ2C57Gq.js",revision:null},{url:"assets/lightbulb-outline-DnqcItJU.js",revision:null},{url:"assets/instances-C9noeaJ-.js",revision:null},{url:"assets/information-outline-C1VdAtHq.js",revision:null},{url:"assets/home-QHsGVBGd.js",revision:null},{url:"assets/hasPermission-BTRA5070.js",revision:null},{url:"assets/grid-fill-BmsHxwDf.js",revision:null},{url:"assets/github-3U8UNWEo.js",revision:null},{url:"assets/face-recognition-vNgsuvZQ.js",revision:null},{url:"assets/eventIcons-BPti5ma5.js",revision:null},{url:"assets/eventIcons-2hVCNchU.css",revision:null},{url:"assets/esm-klti7Xiu.js",revision:null},{url:"assets/esm-Wd_bXzJb.js",revision:null},{url:"assets/esm-FnjhXZPB.js",revision:null},{url:"assets/esm-DRiFxNFc.js",revision:null},{url:"assets/esm-DFpXZBbM.js",revision:null},{url:"assets/esm-DCr-CrXJ.js",revision:null},{url:"assets/esm-ClQQ50Pr.js",revision:null},{url:"assets/esm-CQe5aysd.js",revision:null},{url:"assets/esm-CDdS2Yz3.js",revision:null},{url:"assets/esm-C9lo7BUF.js",revision:null},{url:"assets/esm-BZmF9iVQ.js",revision:null},{url:"assets/esm-BF5SJFVX.js",revision:null},{url:"assets/esm-BCkYzkzU.js",revision:null},{url:"assets/error-256-DLKVOU2S.png",revision:null},{url:"assets/download-Dvs3QCvp.js",revision:null},{url:"assets/dist-V4RgRFpY.js",revision:null},{url:"assets/delete-BzeGTp2V.js",revision:null},{url:"assets/copy-Dperv2E1.js",revision:null},{url:"assets/copy-16-filled-UD4hjH-4.js",revision:null},{url:"assets/cog-DiL--KjL.js",revision:null},{url:"assets/cloudHandoff-jiSQUTbC.js",revision:null},{url:"assets/cloud-outline-BuQTDaKh.js",revision:null},{url:"assets/cloud-outline-BrU3S7IS.js",revision:null},{url:"assets/cloud-check-E6wIIVuz.js",revision:null},{url:"assets/close-rounded-BhUZzZeA.js",revision:null},{url:"assets/close-circle-B_OAX5Zy.js",revision:null},{url:"assets/close-BvciW6Wg.js",revision:null},{url:"assets/close-BVMcLU5Z.js",revision:null},{url:"assets/circular-connection-BTgxVifK.js",revision:null},{url:"assets/chevron-right--xa71qcO.js",revision:null},{url:"assets/chevron-down-DY3yQG2A.js",revision:null},{url:"assets/check-C8Q3pZRh.js",revision:null},{url:"assets/cctv-BK9p1URj.js",revision:null},{url:"assets/cameras.schema-B93btXUO.js",revision:null},{url:"assets/cameras-CuAJzX9E.js",revision:null},{url:"assets/camera-preview-C7GT5VHo.png",revision:null},{url:"assets/bell-outline-XAqc3I7S.js",revision:null},{url:"assets/backup-4XfddN8z.js",revision:null},{url:"assets/back-filled-D7yFvzR6.js",revision:null},{url:"assets/automations-DetVBJsj.js",revision:null},{url:"assets/automations-D8y64IMA.js",revision:null},{url:"assets/automation-1ZEEkuHf.js",revision:null},{url:"assets/auth-DOMDhkS8.js",revision:null},{url:"assets/api-D_KNNgZ1.js",revision:null},{url:"assets/api-DG-9_slP.js",revision:null},{url:"assets/api-Cna9Poda.css",revision:null},{url:"assets/alert-outline-C4DaI8XN.js",revision:null},{url:"assets/ace.config-D884GuRj.js",revision:null},{url:"assets/ace-DQ1lNH50.js",revision:null},{url:"assets/_plugin-vue_export-helper-BDNMzG2s.js",revision:null},{url:"assets/Workers-CjwdsG_Q.js",revision:null},{url:"assets/VersionsHandler-DEqO9lRf.js",revision:null},{url:"assets/VariableSuggestions-Ceb5nNVA.js",revision:null},{url:"assets/VariableInput-DkFR7QdD.js",revision:null},{url:"assets/Terminal-oFHYhs5G.js",revision:null},{url:"assets/Terminal-CrOfQJ-O.css",revision:null},{url:"assets/SettingsUsers-DRNl2lpx.js",revision:null},{url:"assets/SettingsSystem-CorHEoD1.js",revision:null},{url:"assets/SettingsRemote-DeCCrkpB.js",revision:null},{url:"assets/SettingsRemote-CjVK9pGg.css",revision:null},{url:"assets/SettingsRecordings-BW1_cnvh.js",revision:null},{url:"assets/SettingsNotifications-ClYHH53Q.js",revision:null},{url:"assets/SettingsBackup-DS3mOZTd.js",revision:null},{url:"assets/SettingsBackup-CX0rT0QJ.css",revision:null},{url:"assets/SettingsAppearance-DffpVG5f.js",revision:null},{url:"assets/SettingsAppearance-Cf-c_lny.js",revision:null},{url:"assets/SettingsAccount-Do1kFf9T.js",revision:null},{url:"assets/SettingsAccount-Detq2ves.js",revision:null},{url:"assets/SettingsAccount-C-LQ3hWW.css",revision:null},{url:"assets/Settings-bwLTNAxX.css",revision:null},{url:"assets/Settings-BZ1_vx3z.js",revision:null},{url:"assets/Recordings-k8LBscvM.js",revision:null},{url:"assets/Recordings-Bt_GlPOK.css",revision:null},{url:"assets/Plugins-grcgVS0w.js",revision:null},{url:"assets/Plugins-BPt1RSKT.css",revision:null},{url:"assets/PluginSchema-Xd9otIzG.js",revision:null},{url:"assets/PluginConsole-Ba6GhN1X.js",revision:null},{url:"assets/Plugin-DoxdkvWR.css",revision:null},{url:"assets/Plugin-BgwfrbBH.js",revision:null},{url:"assets/OAuthDeviceFlow-Bnm4w-pk.js",revision:null},{url:"assets/Menu-DD_cREVS.js",revision:null},{url:"assets/Instances-Kx6sSCDX.js",revision:null},{url:"assets/FirstSteps-B8SHK9dj.js",revision:null},{url:"assets/Faces-CxSpBJx5.js",revision:null},{url:"assets/CuiTopbarSlot-DTNeuYvo.js",revision:null},{url:"assets/CuiTopNavbarItem-w54CrODK.css",revision:null},{url:"assets/CuiTopNavbarItem-MJr5l6Aq.js",revision:null},{url:"assets/CuiSchema-Cfc1vzp6.js",revision:null},{url:"assets/CuiSchema--yMBD996.css",revision:null},{url:"assets/CuiRecordingsGrid-CZIZiEuT.css",revision:null},{url:"assets/CuiRecordingsGrid-Bxmlizts.js",revision:null},{url:"assets/CuiQRCode-DfUba6JB.css",revision:null},{url:"assets/CuiQRCode-BVOIi8VD.js",revision:null},{url:"assets/CuiPluginOAuthButton-DaOHuN78.js",revision:null},{url:"assets/CuiPluginCard-V2Gm7pfr.js",revision:null},{url:"assets/CuiPluginCard-C0B7I34l.css",revision:null},{url:"assets/CuiMenu-EoB3gkMJ.js",revision:null},{url:"assets/CuiMenu-BWUfWLQP.css",revision:null},{url:"assets/CuiMarkdownContent-CFfh6mTv.js",revision:null},{url:"assets/CuiImage-Dkb0xMtM.js",revision:null},{url:"assets/CuiImage-Bxf7z2N4.css",revision:null},{url:"assets/CuiFloatingButton-CXLHlbnk.js",revision:null},{url:"assets/CuiCameraTable-B1JQ1UgC.js",revision:null},{url:"assets/CuiCameraSnapshot-DRu0hF3z.js",revision:null},{url:"assets/CuiCameraShares-D9EnoU3g.js",revision:null},{url:"assets/CuiCameraRecordings-DM_o0Lya.css",revision:null},{url:"assets/CuiCameraRecordings-D4vDfkQ6.js",revision:null},{url:"assets/CuiCameraPipCard-G2-5iN-s.js",revision:null},{url:"assets/CuiCameraPipCard-D3o29_wc.css",revision:null},{url:"assets/CuiCameraCard-dNsAwlKS.css",revision:null},{url:"assets/CuiCameraCard-Dg_senYR.js",revision:null},{url:"assets/CuiBottomSheet-X5ouxxuG.js",revision:null},{url:"assets/CuiBottomSheet-DxQ6D_RM.css",revision:null},{url:"assets/CuiBottomSheet-Cl0hr1-B.js",revision:null},{url:"assets/CuiBBoxPlayground-EFkdOBvq.css",revision:null},{url:"assets/CuiBBoxPlayground-BVK7ZJ7M.js",revision:null},{url:"assets/CuiAvatar-DT205oI6.js",revision:null},{url:"assets/CuiAvatar-BtMXnhxd.css",revision:null},{url:"assets/CuiActionButton-BF1An_rl.js",revision:null},{url:"assets/Console-gBmF-6p2.js",revision:null},{url:"assets/ConfigTriggerWebhook-tZohuF4o.js",revision:null},{url:"assets/ConfigTriggerSystem-CFbrPFDV.js",revision:null},{url:"assets/ConfigTriggerSensor-D1OEaBTZ.js",revision:null},{url:"assets/ConfigTriggerSchedule-DkFw3-m5.js",revision:null},{url:"assets/ConfigTriggerManual-BaVkgZIY.js",revision:null},{url:"assets/ConfigTriggerGeofence-CJd2RI08.js",revision:null},{url:"assets/ConfigTriggerDetection-bt_19BcB.js",revision:null},{url:"assets/ConfigConditionTime-BGpd11U7.js",revision:null},{url:"assets/ConfigConditionSwitch-BPZHUjQq.js",revision:null},{url:"assets/ConfigConditionSensorState-PpCM0BhY.js",revision:null},{url:"assets/ConfigConditionIfElse-CMVwFS0B.js",revision:null},{url:"assets/ConfigActionVariable-CrTklOPb.js",revision:null},{url:"assets/ConfigActionSnapshot-DlL2H8O7.js",revision:null},{url:"assets/ConfigActionSensor-BylRv6HP.js",revision:null},{url:"assets/ConfigActionPlugin-DB7_qKnI.js",revision:null},{url:"assets/ConfigActionOutput-BaUXR2P8.js",revision:null},{url:"assets/ConfigActionNotification-CRFywIqy.js",revision:null},{url:"assets/ConfigActionImageInput-DvHnZPlc.js",revision:null},{url:"assets/ConfigActionHttp-DsUnm6fz.js",revision:null},{url:"assets/ConfigActionDelay-pAWIJ-4v.js",revision:null},{url:"assets/ConfigActionCameraControl-Dw-NcFFP.js",revision:null},{url:"assets/Config-JgftUZFe.css",revision:null},{url:"assets/Config-BZ-qo4Yn.js",revision:null},{url:"assets/Camview-On97Lml0.js",revision:null},{url:"assets/Camview-Dd7DwMHG.css",revision:null},{url:"assets/Cameras-Yaug0yrP.js",revision:null},{url:"assets/Cameras-807mspcl.css",revision:null},{url:"assets/CameraConsole-D5QPkLzW.js",revision:null},{url:"assets/Camera-C_33nFP2.js",revision:null},{url:"assets/Camera-BhCDJE7I.css",revision:null},{url:"assets/Automations-B2WSo6cc.js",revision:null},{url:"assets/Automation-Csu8t0D7.css",revision:null},{url:"assets/Automation-BPOqYi_7.js",revision:null},{url:"assets/Adminpanel-D9308sB0.js",revision:null},{url:"assets/About-DiX290Ba.js",revision:null},{url:"assets/404-v5as29bN.js",revision:null},{url:"pwa/maskable-icon-1240x600.png",revision:"f3188c7d8e5038f28068c7a3632dbe4b"},{url:"pwa/maskable-icon-512x512.png",revision:"e716feaa60f08d95d0909e1c85bf1f98"},{url:"pwa/maskable-icon-620x300.png",revision:"b4954ceadf0d6f2095c45f8cc8240337"},{url:"pwa/pwa-1024x1024.png",revision:"1ed367ae76416e79fd0bdd6ee70666bc"},{url:"pwa/pwa-120x120.png",revision:"3f5ec31f6bd07910482227b259344110"},{url:"pwa/pwa-144x144.png",revision:"4fdf5c8fb085f764ed7dd5a26698bff5"},{url:"pwa/pwa-152x152.png",revision:"4cf41c7b603d382e83e098affb7cb9da"},{url:"pwa/pwa-167x167.png",revision:"de6a5ca921b45fb3bd30d27c707981c6"},{url:"pwa/pwa-180x180.png",revision:"225b42752632e2866c4f8fe4ab2f62ee"},{url:"pwa/pwa-192x192.png",revision:"3d58c2dd940c535cc166cc8d0844429d"},{url:"pwa/pwa-24x24.png",revision:"bdb25f68ca300283b37041e47d3e6ba8"},{url:"pwa/pwa-300x300.png",revision:"7f79d74e34aedef57c98a1c9c156ba6b"},{url:"pwa/pwa-36x36.png",revision:"4d08bb198d4e54e4d12a0810fc59f059"},{url:"pwa/pwa-48x48.png",revision:"97d7369c892f1e0914c2617ff26feb3c"},{url:"pwa/pwa-50x50.png",revision:"a20fc2e6f26aa548f9cae07911087f6c"},{url:"pwa/pwa-64x64.png",revision:"f57763be3212fd4154c502d607e7ed38"},{url:"pwa/pwa-72x72.png",revision:"66698bb499639052ad337f7e9a7d7ea8"},{url:"pwa/pwa-88x88.png",revision:"6e8af0a85b0627a835b62067d5189cb4"},{url:"pwa/pwa-96x96.png",revision:"675ea863c25fa9ae31d4d76a47463c78"},{url:"manifest.webmanifest",revision:"ed2b67044c80f7c0362cd73cde2f96c5"}],{}),s.cleanupOutdatedCaches(),s.registerRoute(new s.NavigationRoute(s.createHandlerBoundToURL("index.html"),{allowlist:[/^(?!\/api)/],denylist:[/[?&]session=/]}))});
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camera.ui/server",
3
- "version": "0.0.76",
3
+ "version": "0.0.77",
4
4
  "description": "camera.ui server",
5
5
  "author": "seydx (https://github.com/cameraui/camera.ui)",
6
6
  "type": "module",
@@ -5,7 +5,15 @@ export class ApiController {
5
5
  this.app = app;
6
6
  }
7
7
  welcome(_req, reply) {
8
- return reply.code(200).send({ message: 'Welcome to camera.ui API', version: ConfigService.VERSION, electron: ConfigService.ENVIRONMENT.electron });
8
+ const version = ConfigService.RUNNING_VERSION;
9
+ const installedVersion = ConfigService.VERSION;
10
+ return reply.code(200).send({
11
+ message: 'Welcome to camera.ui API',
12
+ version,
13
+ installedVersion,
14
+ restartRequired: installedVersion !== version,
15
+ electron: ConfigService.ENVIRONMENT.electron,
16
+ });
9
17
  }
10
18
  async health(_req, reply) {
11
19
  return reply.code(200).send({ status: 'ok' });
@@ -1 +1 @@
1
- {"version":3,"file":"api.controller.js","sourceRoot":"","sources":["../../../../../src/api/controllers/api.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAI/D,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,GAAoB;QAApB,QAAG,GAAH,GAAG,CAAiB;IAAG,CAAC;IAErC,OAAO,CAAC,IAAoB,EAAE,KAAmB;QACtD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,0BAA0B,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrJ,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,IAAoB,EAAE,KAAmB;QAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;CACF"}
1
+ {"version":3,"file":"api.controller.js","sourceRoot":"","sources":["../../../../../src/api/controllers/api.controller.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAI/D,MAAM,OAAO,aAAa;IACJ;IAApB,YAAoB,GAAoB;QAApB,QAAG,GAAH,GAAG,CAAiB;IAAG,CAAC;IAErC,OAAO,CAAC,IAAoB,EAAE,KAAmB;QACtD,MAAM,OAAO,GAAG,aAAa,CAAC,eAAe,CAAC;QAC9C,MAAM,gBAAgB,GAAG,aAAa,CAAC,OAAO,CAAC;QAC/C,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YAC1B,OAAO,EAAE,0BAA0B;YACnC,OAAO;YACP,gBAAgB;YAChB,eAAe,EAAE,gBAAgB,KAAK,OAAO;YAC7C,QAAQ,EAAE,aAAa,CAAC,WAAW,CAAC,QAAQ;SAC7C,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,IAAoB,EAAE,KAAmB;QAC3D,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;CACF"}
@@ -84,6 +84,16 @@ export const STATIONARY_SPEED_THRESHOLD = 0.002;
84
84
  // cascade so a single uncertain frame doesn't fire `detected=false` and split
85
85
  // the event. Mirrors the motion/audio dwell pattern.
86
86
  const OBJECT_DWELL_SECONDS = 2;
87
+ // Hard deadline on a detector-plugin inference RPC. A hung detector must not
88
+ // stall the whole detection loop — on timeout we skip the frame and continue.
89
+ const DETECT_TIMEOUT_MS = 30_000;
90
+ async function withTimeout(promise, ms, label) {
91
+ let timer;
92
+ const timeout = new Promise((_resolve, reject) => {
93
+ timer = setTimeout(() => reject(new Error(`${label} detection timed out after ${ms}ms`)), ms);
94
+ });
95
+ return Promise.race([promise, timeout]).finally(() => clearTimeout(timer));
96
+ }
87
97
  let DetectionCoordinator = class DetectionCoordinator {
88
98
  config;
89
99
  proxy;
@@ -1192,7 +1202,7 @@ let DetectionCoordinator = class DetectionCoordinator {
1192
1202
  return;
1193
1203
  if (objectFrame) {
1194
1204
  try {
1195
- const result = await objectPlugin.proxy.detectObjects(objectFrame);
1205
+ const result = await withTimeout(objectPlugin.proxy.detectObjects(objectFrame), DETECT_TIMEOUT_MS, 'Object');
1196
1206
  if (!this.loopRunning)
1197
1207
  return;
1198
1208
  // Full pipeline (always): NMS → merge → zone filter → track (with
@@ -1628,7 +1638,7 @@ let DetectionCoordinator = class DetectionCoordinator {
1628
1638
  // }
1629
1639
  // }
1630
1640
  // }
1631
- const batchResults = await facePlugin.proxy.detectFaces(this.prepareSecondaryFrames(croppedRegions));
1641
+ const batchResults = await withTimeout(facePlugin.proxy.detectFaces(this.prepareSecondaryFrames(croppedRegions)), DETECT_TIMEOUT_MS, 'Face');
1632
1642
  const allFaces = [];
1633
1643
  for (let i = 0; i < batchResults.length; i++) {
1634
1644
  const parentTrackId = 'trackId' in croppedRegions[i].detection ? croppedRegions[i].detection.trackId : undefined;
@@ -1680,7 +1690,7 @@ let DetectionCoordinator = class DetectionCoordinator {
1680
1690
  const lpdPlugin = this.singlePlugins.get(SensorType.LicensePlate);
1681
1691
  if (!lpdPlugin || croppedRegions.length === 0)
1682
1692
  return undefined;
1683
- const batchResults = await lpdPlugin.proxy.detectLicensePlates(this.prepareSecondaryFrames(croppedRegions));
1693
+ const batchResults = await withTimeout(lpdPlugin.proxy.detectLicensePlates(this.prepareSecondaryFrames(croppedRegions)), DETECT_TIMEOUT_MS, 'License plate');
1684
1694
  const allPlates = [];
1685
1695
  for (let i = 0; i < batchResults.length; i++) {
1686
1696
  const parentTrackId = 'trackId' in croppedRegions[i].detection ? croppedRegions[i].detection.trackId : undefined;
@@ -1704,7 +1714,7 @@ let DetectionCoordinator = class DetectionCoordinator {
1704
1714
  if (!croppedRegions || croppedRegions.length === 0)
1705
1715
  continue;
1706
1716
  const runClassifier = async () => {
1707
- const batchResults = await classifierPlugin.proxy.detectClassifications(this.prepareSecondaryFrames(croppedRegions));
1717
+ const batchResults = await withTimeout(classifierPlugin.proxy.detectClassifications(this.prepareSecondaryFrames(croppedRegions)), DETECT_TIMEOUT_MS, 'Classifier');
1708
1718
  const allDetections = [];
1709
1719
  for (let i = 0; i < batchResults.length; i++) {
1710
1720
  const parentTrackId = 'trackId' in croppedRegions[i].detection ? croppedRegions[i].detection.trackId : undefined;
@@ -1727,7 +1737,7 @@ let DetectionCoordinator = class DetectionCoordinator {
1727
1737
  const clipPlugin = this.singlePlugins.get(SensorType.Clip);
1728
1738
  if (!clipPlugin || croppedRegions.length === 0)
1729
1739
  return undefined;
1730
- const batchResults = await clipPlugin.proxy.detectEmbeddings(this.prepareSecondaryFrames(croppedRegions));
1740
+ const batchResults = await withTimeout(clipPlugin.proxy.detectEmbeddings(this.prepareSecondaryFrames(croppedRegions)), DETECT_TIMEOUT_MS, 'CLIP');
1731
1741
  const allEmbeddings = [];
1732
1742
  for (let i = 0; i < batchResults.length; i++) {
1733
1743
  if (batchResults[i].embeddings && batchResults[i].embeddings.length > 0) {