@camera.ui/server 0.0.68 → 0.0.70

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 (131) hide show
  1. package/dist/interface/index.html +44 -44
  2. package/dist/interface/js/{@primevue.CLjOf_2A.0.0.68.js → @primevue.DH9ak_9x.0.0.70.js} +1 -1
  3. package/dist/interface/js/{@tanstack.BsYRTdPr.0.0.68.js → @tanstack.Dk2rc1Gz.0.0.70.js} +1 -1
  4. package/dist/interface/js/{@vee-validate.CnnpXP1B.0.0.68.js → @vee-validate.i4o6WINE.0.0.70.js} +1 -1
  5. package/dist/interface/js/@vue.BsSvBeCe.0.0.70.js +17 -0
  6. package/dist/interface/js/{@vueuse.DWVBY8Dk.0.0.68.js → @vueuse.T3qy5Jq4.0.0.70.js} +1 -1
  7. package/dist/interface/js/{Adminpanel.D08O1eV2.0.0.68.js → Adminpanel.CBQfnvy1.0.0.70.js} +1 -1
  8. package/dist/interface/js/{Camera.BywiP-ye.0.0.68.js → Camera.D39v2Qae.0.0.70.js} +1 -1
  9. package/dist/interface/js/{Cameras.BulzWcGh.0.0.68.js → Cameras.BOXzVzD9.0.0.70.js} +1 -1
  10. package/dist/interface/js/Cammesh.bs93Or8F.0.0.70.js +1 -0
  11. package/dist/interface/js/{Camview.DbIjN0Ra.0.0.68.js → Camview.R2Zpw-wS.0.0.70.js} +1 -1
  12. package/dist/interface/js/{Config.BzmMLq6g.0.0.68.js → Config.D89tTvo2.0.0.70.js} +2 -2
  13. package/dist/interface/js/{Console.BjeqLghX.0.0.68.js → Console.DX4_ZVPM.0.0.70.js} +1 -1
  14. package/dist/interface/js/{CuiConsole.D1Y7P5YO.0.0.68.js → CuiConsole.B-YJZ4uY.0.0.70.js} +1 -1
  15. package/dist/interface/js/{CuiPluginCard.3qrWv4xm.0.0.68.js → CuiPluginCard.CFaLdBEf.0.0.70.js} +1 -1
  16. package/dist/interface/js/{CuiTimeline.CCeAZfek.0.0.68.js → CuiTimeline.DbPA3XCf.0.0.70.js} +1 -1
  17. package/dist/interface/js/{FirstSteps.GoDknmLR.0.0.68.js → FirstSteps.BjUQYXwF.0.0.70.js} +1 -1
  18. package/dist/interface/js/{Plugin.BBKng4iN.0.0.68.js → Plugin.Dl21oK_u.0.0.70.js} +1 -1
  19. package/dist/interface/js/{Plugins.oisxrhEG.0.0.68.js → Plugins.DphA9uPk.0.0.70.js} +1 -1
  20. package/dist/interface/js/Recordings.B2b7JutC.0.0.70.js +1 -0
  21. package/dist/interface/js/{Settings.DgSpc1Xd.0.0.68.js → Settings.D_hL6kBb.0.0.70.js} +1 -1
  22. package/dist/interface/js/{SettingsAccount.yU9K84JX.0.0.68.js → SettingsAccount.2ETTD3p8.0.0.70.js} +1 -1
  23. package/dist/interface/js/SettingsAppearance.DkI9GlMu.0.0.70.js +1 -0
  24. package/dist/interface/js/{SettingsAppearance.vue_vue_type_script_setup_true_lang.BdAbLjHL.0.0.68.js → SettingsAppearance.vue_vue_type_script_setup_true_lang.D6sykhe2.0.0.70.js} +1 -1
  25. package/dist/interface/js/{SettingsBackup.C3YwtB2L.0.0.68.js → SettingsBackup.Ce3e31yn.0.0.70.js} +1 -1
  26. package/dist/interface/js/SettingsRecordings.C_hEpi6y.0.0.70.js +1 -0
  27. package/dist/interface/js/{SettingsRemote.BEihnqrd.0.0.68.js → SettingsRemote.BDp_l894.0.0.70.js} +1 -1
  28. package/dist/interface/js/{SettingsSystem.DLJpvMpD.0.0.68.js → SettingsSystem.CFjS9i7G.0.0.70.js} +1 -1
  29. package/dist/interface/js/{SettingsUsers.DQ-QJGWv.0.0.68.js → SettingsUsers.BpTad4f8.0.0.70.js} +1 -1
  30. package/dist/interface/js/{VersionsHandler.vue_vue_type_script_setup_true_lang.DDk0j63-.0.0.68.js → VersionsHandler.vue_vue_type_script_setup_true_lang.MC8r914h.0.0.70.js} +1 -1
  31. package/dist/interface/js/{ace-builds.Dj1U2sUU.0.0.68.js → ace-builds.DPRnfcwI.0.0.70.js} +2 -2
  32. package/dist/interface/js/{ace.config.DqhagXoq.0.0.68.js → ace.config.DReCZ4VN.0.0.70.js} +1 -1
  33. package/dist/interface/js/{backup.c02LfP0p.0.0.68.js → backup.CqN-DI7C.0.0.70.js} +1 -1
  34. package/dist/interface/js/{chart.js.BgPXlgHD.0.0.68.js → chart.js.B5ohq2tj.0.0.70.js} +1 -1
  35. package/dist/interface/js/{close-circle.zudRPGBS.0.0.68.js → close-circle.CMnO5OKl.0.0.70.js} +1 -1
  36. package/dist/interface/js/{dnd-core.Dr8mc4xc.0.0.68.js → dnd-core.DuFbUDJC.0.0.70.js} +1 -1
  37. package/dist/interface/js/{draggabilly.BWcG_hBx.0.0.68.js → draggabilly.Cuzjcd7v.0.0.70.js} +1 -1
  38. package/dist/interface/js/{engine.io-client.2TmvK6nU.0.0.68.js → engine.io-client.CnosWdRP.0.0.70.js} +1 -1
  39. package/dist/interface/js/{fast-deep-equal.BaSSbf0R.0.0.68.js → fast-deep-equal.D0g7BF3f.0.0.70.js} +1 -1
  40. package/dist/interface/js/{highlight.js.CO9Od8yG.0.0.68.js → highlight.js.DTPofZhc.0.0.70.js} +1 -1
  41. package/dist/interface/js/{linkify-it.IDZgcRNT.0.0.68.js → linkify-it.imhCvGRq.0.0.70.js} +1 -1
  42. package/dist/interface/js/{main.DFrvmqIm.0.0.68.js → main.D2NZuTnM.0.0.70.js} +9 -9
  43. package/dist/interface/js/{markdown-it.Dk__mw4Y.0.0.68.js → markdown-it.VQvmcJVu.0.0.70.js} +1 -1
  44. package/dist/interface/js/{nprogress.BvTTegtH.0.0.68.js → nprogress.DuNJBXnf.0.0.70.js} +1 -1
  45. package/dist/interface/js/{pinia.olzLQsIJ.0.0.68.js → pinia.BeBGFuqK.0.0.70.js} +1 -1
  46. package/dist/interface/js/{primevue.D46ZuvwF.0.0.68.js → primevue.BVVo-ukB.0.0.70.js} +1 -1
  47. package/dist/interface/js/{qrcode.jcsj5TWj.0.0.68.js → qrcode.D7KqKQTM.0.0.70.js} +1 -1
  48. package/dist/interface/js/{react-dnd-touch-backend.DmjbsnpF.0.0.68.js → react-dnd-touch-backend.4hAOsMRp.0.0.70.js} +1 -1
  49. package/dist/interface/js/{refresh-rounded.D2VADi6i.0.0.68.js → refresh-rounded.BzWz29y2.0.0.70.js} +1 -1
  50. package/dist/interface/js/{rxjs.Cfd_7YyY.0.0.68.js → rxjs.UbFxmZ7q.0.0.70.js} +1 -1
  51. package/dist/interface/js/{socket.io-client.CkWaqEUv.0.0.68.js → socket.io-client.DC_wUGxw.0.0.70.js} +1 -1
  52. package/dist/interface/js/{socket.io-parser.DsT87Oon.0.0.68.js → socket.io-parser.ChgZ8FD_.0.0.70.js} +1 -1
  53. package/dist/interface/js/{system.DR4q1Efj.0.0.68.js → system.Ccn9lMgI.0.0.70.js} +1 -1
  54. package/dist/interface/js/{trash-fill.CLUpPsSF.0.0.68.js → trash-fill.C8ZgD-Jz.0.0.70.js} +1 -1
  55. package/dist/interface/js/{unidragger.BlN8nuro.0.0.68.js → unidragger.DahEY3cm.0.0.70.js} +1 -1
  56. package/dist/interface/js/{vee-validate.Cs2kJt5l.0.0.68.js → vee-validate.DwwGVNzx.0.0.70.js} +1 -1
  57. package/dist/interface/js/{vue-chartjs.BYX-1-69.0.0.68.js → vue-chartjs.KCIQuea5.0.0.70.js} +1 -1
  58. package/dist/interface/js/{vue-i18n.Y-6ZUvD7.0.0.68.js → vue-i18n.BLwVbi61.0.0.70.js} +1 -1
  59. package/dist/interface/js/{vue-inline-svg.Cs3JM1Xv.0.0.68.js → vue-inline-svg.B52C1cW8.0.0.70.js} +1 -1
  60. package/dist/interface/js/{vue-router.MLvizfYT.0.0.68.js → vue-router.BQuUBAAr.0.0.70.js} +1 -1
  61. package/dist/interface/js/{vue-zoomable.kygNhD9X.0.0.68.js → vue-zoomable.Cq7IVJt5.0.0.70.js} +1 -1
  62. package/dist/interface/js/{vue3-dnd.CBFRMNn3.0.0.68.js → vue3-dnd.2Dj_EakH.0.0.70.js} +1 -1
  63. package/dist/interface/js/{zoom-out.lB6Uhy7v.0.0.68.js → zoom-out.D4ga9c-w.0.0.70.js} +1 -1
  64. package/dist/interface/sw.js +1 -1
  65. package/dist/server/package.json +4 -4
  66. package/dist/server/src/api/database/index.d.ts +1 -1
  67. package/dist/server/src/api/database/index.js +1 -1
  68. package/dist/server/src/api/database/migration.js +11 -0
  69. package/dist/server/src/api/database/migration.js.map +1 -1
  70. package/dist/server/src/api/schemas/cameras.schema.js +2 -2
  71. package/dist/server/src/api/schemas/cameras.schema.js.map +1 -1
  72. package/dist/server/src/camera/controller.js +1 -0
  73. package/dist/server/src/camera/controller.js.map +1 -1
  74. package/dist/server/src/camera/index.js +4 -1
  75. package/dist/server/src/camera/index.js.map +1 -1
  76. package/dist/server/src/plugins/runtime/node/proxy/cameraDevice.js +1 -0
  77. package/dist/server/src/plugins/runtime/node/proxy/cameraDevice.js.map +1 -1
  78. package/dist/server/src/plugins/runtime/python/proxy/camera_device.py +5 -1
  79. package/package.json +4 -4
  80. package/dist/interface/js/@vue.BxBKarQv.0.0.68.js +0 -17
  81. package/dist/interface/js/Cammesh.DFepg_T6.0.0.68.js +0 -1
  82. package/dist/interface/js/Recordings.C8KL1MGk.0.0.68.js +0 -1
  83. package/dist/interface/js/SettingsAppearance.eCDprgye.0.0.68.js +0 -1
  84. package/dist/interface/js/SettingsRecordings.CJt7ZAKx.0.0.68.js +0 -1
  85. /package/dist/interface/assets/{@xterm.DYP7pi_n.0.0.68.css → @xterm.DYP7pi_n.0.0.70.css} +0 -0
  86. /package/dist/interface/assets/{Adminpanel.BKek2EMH.0.0.68.css → Adminpanel.BKek2EMH.0.0.70.css} +0 -0
  87. /package/dist/interface/assets/{Cameras.BDWZJqPN.0.0.68.css → Cameras.BDWZJqPN.0.0.70.css} +0 -0
  88. /package/dist/interface/assets/{Camview.Cvhuou6V.0.0.68.css → Camview.Cvhuou6V.0.0.70.css} +0 -0
  89. /package/dist/interface/assets/{CuiConsole.DCYyxdVg.0.0.68.css → CuiConsole.DCYyxdVg.0.0.70.css} +0 -0
  90. /package/dist/interface/assets/{CuiPluginCard.yF8V0SZY.0.0.68.css → CuiPluginCard.yF8V0SZY.0.0.70.css} +0 -0
  91. /package/dist/interface/assets/{CuiTimeline.BkIwlYtw.0.0.68.css → CuiTimeline.BkIwlYtw.0.0.70.css} +0 -0
  92. /package/dist/interface/assets/{Plugin.DJElsAn5.0.0.68.css → Plugin.DJElsAn5.0.0.70.css} +0 -0
  93. /package/dist/interface/assets/{Plugins.BwPlcRrV.0.0.68.css → Plugins.BwPlcRrV.0.0.70.css} +0 -0
  94. /package/dist/interface/assets/{Settings.CkgfRkQr.0.0.68.css → Settings.CkgfRkQr.0.0.70.css} +0 -0
  95. /package/dist/interface/assets/{SettingsAccount.CDZT7gN-.0.0.68.css → SettingsAccount.CDZT7gN-.0.0.70.css} +0 -0
  96. /package/dist/interface/assets/{SettingsBackup.CX0rT0QJ.0.0.68.css → SettingsBackup.CX0rT0QJ.0.0.70.css} +0 -0
  97. /package/dist/interface/assets/{highlight.Ch2EwETz.0.0.68.css → highlight.Ch2EwETz.0.0.70.css} +0 -0
  98. /package/dist/interface/assets/{logo-256.BCQk9H1-.0.0.68.png → logo-256.BCQk9H1-.0.0.70.png} +0 -0
  99. /package/dist/interface/assets/{logo-512.DLKVOU2S.0.0.68.png → logo-512.DLKVOU2S.0.0.70.png} +0 -0
  100. /package/dist/interface/assets/{logo.DmEiRk0z.0.0.68.png → logo.DmEiRk0z.0.0.70.png} +0 -0
  101. /package/dist/interface/assets/{main.BmO7mnW4.0.0.68.css → main.BmO7mnW4.0.0.70.css} +0 -0
  102. /package/dist/interface/assets/{mode-yaml.CIYL8U3d.0.0.68.js → mode-yaml.CIYL8U3d.0.0.70.js} +0 -0
  103. /package/dist/interface/assets/{worker-base.jEXLGV2h.0.0.68.js → worker-base.jEXLGV2h.0.0.70.js} +0 -0
  104. /package/dist/interface/assets/{worker-yaml.B3uUYINB.0.0.68.js → worker-yaml.B3uUYINB.0.0.70.js} +0 -0
  105. /package/dist/interface/js/{@babel.l0sNRNKZ.0.0.68.js → @babel.l0sNRNKZ.0.0.70.js} +0 -0
  106. /package/dist/interface/js/{@intlify.6ljJeWIl.0.0.68.js → @intlify.6ljJeWIl.0.0.70.js} +0 -0
  107. /package/dist/interface/js/{@kurkle.D8fDXNIl.0.0.68.js → @kurkle.D8fDXNIl.0.0.70.js} +0 -0
  108. /package/dist/interface/js/{@primeuix.bRNqZjQz.0.0.68.js → @primeuix.bRNqZjQz.0.0.70.js} +0 -0
  109. /package/dist/interface/js/{@react-dnd.CcwRs9xb.0.0.68.js → @react-dnd.CcwRs9xb.0.0.70.js} +0 -0
  110. /package/dist/interface/js/{@socket.io.Dkula2eQ.0.0.68.js → @socket.io.Dkula2eQ.0.0.70.js} +0 -0
  111. /package/dist/interface/js/{@xterm.D6FDnMLM.0.0.68.js → @xterm.CJZZM5vf.0.0.70.js} +0 -0
  112. /package/dist/interface/js/{axios.lj9VQs0f.0.0.68.js → axios.lj9VQs0f.0.0.70.js} +0 -0
  113. /package/dist/interface/js/{birpc.l0sNRNKZ.0.0.68.js → birpc.l0sNRNKZ.0.0.70.js} +0 -0
  114. /package/dist/interface/js/{compare-versions.DqEOhma6.0.0.68.js → compare-versions.DqEOhma6.0.0.70.js} +0 -0
  115. /package/dist/interface/js/{dijkstrajs.C00ieaqj.0.0.68.js → dijkstrajs.C00ieaqj.0.0.70.js} +0 -0
  116. /package/dist/interface/js/{engine.io-parser.BiEtp6m2.0.0.68.js → engine.io-parser.BiEtp6m2.0.0.70.js} +0 -0
  117. /package/dist/interface/js/{entities.C20TfXL6.0.0.68.js → entities.C20TfXL6.0.0.70.js} +0 -0
  118. /package/dist/interface/js/{ev-emitter.X5f1qa-c.0.0.68.js → ev-emitter.X5f1qa-c.0.0.70.js} +0 -0
  119. /package/dist/interface/js/{get-size.D1dS-IaP.0.0.68.js → get-size.D1dS-IaP.0.0.70.js} +0 -0
  120. /package/dist/interface/js/{hookable.l0sNRNKZ.0.0.68.js → hookable.l0sNRNKZ.0.0.70.js} +0 -0
  121. /package/dist/interface/js/{mdurl.k9Sl0PQj.0.0.68.js → mdurl.k9Sl0PQj.0.0.70.js} +0 -0
  122. /package/dist/interface/js/{perfect-debounce.l0sNRNKZ.0.0.68.js → perfect-debounce.l0sNRNKZ.0.0.70.js} +0 -0
  123. /package/dist/interface/js/{primelocale.Bga3dOQu.0.0.68.js → primelocale.Bga3dOQu.0.0.70.js} +0 -0
  124. /package/dist/interface/js/{punycode.js.Dj65hjkv.0.0.68.js → punycode.js.Dj65hjkv.0.0.70.js} +0 -0
  125. /package/dist/interface/js/{react-dnd-html5-backend.1HQjlkwI.0.0.68.js → react-dnd-html5-backend.1HQjlkwI.0.0.70.js} +0 -0
  126. /package/dist/interface/js/{redux.BFxtlG_c.0.0.68.js → redux.BFxtlG_c.0.0.70.js} +0 -0
  127. /package/dist/interface/js/{tslib.9k7AwCpt.0.0.68.js → tslib.9k7AwCpt.0.0.70.js} +0 -0
  128. /package/dist/interface/js/{uc.micro.kMc2yuuw.0.0.68.js → uc.micro.kMc2yuuw.0.0.70.js} +0 -0
  129. /package/dist/interface/js/{uuid.C6aID195.0.0.68.js → uuid.C6aID195.0.0.70.js} +0 -0
  130. /package/dist/interface/js/{vue.l0sNRNKZ.0.0.68.js → vue.l0sNRNKZ.0.0.70.js} +0 -0
  131. /package/dist/interface/js/{zod.2bfLsWMZ.0.0.68.js → zod.2bfLsWMZ.0.0.70.js} +0 -0
@@ -1 +1 @@
1
- import{V as jt,r as ae,i as re,b as ce,Q as he,R as ue,S as de}from"./primevue.D46ZuvwF.0.0.68.js";import{A as me,an as qt,U as pt,T as vt}from"./@primeuix.bRNqZjQz.0.0.68.js";import{s as fe,b as pe,Y as ve}from"./@primevue.CLjOf_2A.0.0.68.js";import{z as Ut,e as ge,h as ye,Z as z,$ as gt,a0 as lt}from"./main.DFrvmqIm.0.0.68.js";import{J as we,c as v,d,G as ot,O as x,m as yt,X as at,Z as Ot,e as T,R as B,F as Xt,B as Se,t as Te,ac as Rt,r as L,b as be,k as q,w as nt,C as Yt,o as ze,N as A,h as s,P as D,M as G,f as Zt,W as K,V as Ht,I as _t,n as Pt}from"./@vue.BxBKarQv.0.0.68.js";import{u as xe}from"./vue-i18n.Y-6ZUvD7.0.0.68.js";import{B as ke,l as Ie,C as _e,i as Pe}from"./@vueuse.DWVBY8Dk.0.0.68.js";const Le={name:"BaseVirtualScroller",extends:fe,provide(){return{$pcVirtualScroller:this,$parentInstance:this}},props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:"vertical"},rtl:{type:Boolean,default:!1},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1}},style:jt,beforeMount(){var t,i;jt.loadCSS({nonce:(i=(t=this.$primevueConfig)==null?void 0:t.csp)==null?void 0:i.nonce})}},Ce={name:"VirtualScroller",components:{SpinnerIcon:pe},extends:Le,inheritAttrs:!1,emits:["update:numToleratedItems","scroll","scroll-index-change","lazy-load"],data(){const t=this.isBoth();return{first:t?{rows:0,cols:0}:0,last:t?{rows:0,cols:0}:0,page:t?{rows:0,cols:0}:0,numItemsInViewport:t?{rows:0,cols:0}:0,lastScrollPos:t?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{}}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,computed:{containerClass(){return["p-virtualscroller",this.class,{"p-virtualscroller-inline":this.inline,"p-virtualscroller-both p-both-scroll":this.isBoth(),"p-virtualscroller-horizontal p-horizontal-scroll":this.isHorizontal(),"p-virtualscroller-rtl":this.rtl&&this.isHorizontal()}]},contentClass(){return["p-virtualscroller-content",{"p-virtualscroller-loading":this.d_loading}]},loaderClass(){return["p-virtualscroller-loader",{"p-virtualscroller-loader-mask":!this.$slots.loader}]},loadedItems(){return this.items&&!this.d_loading?this.isBoth()?this.items.slice(this.appendOnly?0:this.first.rows,this.last.rows).map(t=>this.columns?t:t.slice(this.appendOnly?0:this.first.cols,this.last.cols)):this.isHorizontal()&&this.columns?this.items:this.items.slice(this.appendOnly?0:this.first,this.last):[]},loadedRows(){return this.d_loading?this.loaderDisabled?this.loaderArr:[]:this.loadedItems},loadedColumns(){if(this.columns){const t=this.isBoth(),i=this.isHorizontal();if(t||i)return this.d_loading&&this.loaderDisabled?t?this.loaderArr[0]:this.loaderArr:this.columns.slice(t?this.first.cols:this.first,t?this.last.cols:this.last)}return this.columns}},watch:{numToleratedItems(t){this.d_numToleratedItems=t},loading(t,i){this.lazy&&t!==i&&t!==this.d_loading&&(this.d_loading=t)},items:{handler(t,i){(!i||i.length!==(t||[]).length)&&(this.init(),this.calculateAutoSize())},deep:!0},itemSize(){this.init(),this.calculateAutoSize()},orientation(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight(){this.init(),this.calculateAutoSize()},scrollWidth(){this.init(),this.calculateAutoSize()}},mounted(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated(){!this.initialized&&this.viewInit()},unmounted(){this.unbindResizeListener(),this.initialized=!1},methods:{viewInit(){qt(this.element)&&(this.setContentEl(this.content),this.init(),this.calculateAutoSize(),this.bindResizeListener(),this.defaultWidth=pt(this.element),this.defaultHeight=vt(this.element),this.defaultContentWidth=pt(this.content),this.defaultContentHeight=vt(this.content),this.initialized=!0)},init(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},isVertical(){return this.orientation==="vertical"},isHorizontal(){return this.orientation==="horizontal"},isBoth(){return this.orientation==="both"},scrollTo(t){this.element&&this.element.scrollTo(t)},scrollToIndex(t,i="auto"){const l=this.isBoth(),h=this.isHorizontal(),n=this.rtl&&h;if(l?t.every(u=>u>-1):t>-1){const u=this.first,{scrollTop:c=0,scrollLeft:e=0}=this.element,{numToleratedItems:f}=this.calculateNumItems(),p=this.getContentPosition(),g=this.itemSize,H=($=0,F)=>$<=F?0:$,N=($,F,rt)=>$*F+rt,S=($=0,F=0)=>{n&&($=this.element.scrollWidth-this.element.clientWidth-$),this.scrollTo({left:$,top:F,behavior:i})};let y=l?{rows:0,cols:0}:0,k=!1,E=!1;l?(y={rows:H(t[0],f[0]),cols:H(t[1],f[1])},S(N(y.cols,g[1],p.left),N(y.rows,g[0],p.top)),E=this.lastScrollPos.top!==c||this.lastScrollPos.left!==e,k=y.rows!==u.rows||y.cols!==u.cols):(y=H(t,f),h?S(N(y,g,p.left),c):S(e,N(y,g,p.top)),E=this.lastScrollPos!==(h?e:c),k=y!==u),this.isRangeChanged=k,E&&(this.first=y)}},scrollInView(t,i,l="auto"){if(i){const h=this.isBoth(),n=this.isHorizontal();if(h?t.every(u=>u>-1):t>-1){const{first:u,viewport:c}=this.getRenderedRange(),e=(g=0,H=0)=>this.scrollTo({left:g,top:H,behavior:l}),f=i==="to-start",p=i==="to-end";if(f){if(h)c.first.rows-u.rows>t[0]?e(c.first.cols*this.itemSize[1],(c.first.rows-1)*this.itemSize[0]):c.first.cols-u.cols>t[1]&&e((c.first.cols-1)*this.itemSize[1],c.first.rows*this.itemSize[0]);else if(c.first-u>t){const g=(c.first-1)*this.itemSize;n?e(g,0):e(0,g)}}else if(p){if(h)c.last.rows-u.rows<=t[0]+1?e(c.first.cols*this.itemSize[1],(c.first.rows+1)*this.itemSize[0]):c.last.cols-u.cols<=t[1]+1&&e((c.first.cols+1)*this.itemSize[1],c.first.rows*this.itemSize[0]);else if(c.last-u<=t+1){const g=(c.first+1)*this.itemSize;n?e(g,0):e(0,g)}}}}else this.scrollToIndex(t,l)},getRenderedRange(){const t=(h,n)=>Math.floor(h/(n||h));let i=this.first,l=0;if(this.element){const h=this.isBoth(),n=this.isHorizontal(),{scrollTop:o,scrollLeft:u}=this.element;h?(i={rows:t(o,this.itemSize[0]),cols:t(u,this.itemSize[1])},l={rows:i.rows+this.numItemsInViewport.rows,cols:i.cols+this.numItemsInViewport.cols}):(i=t(n?u:o,this.itemSize),l=i+this.numItemsInViewport)}return{first:this.first,last:this.last,viewport:{first:i,last:l}}},calculateNumItems(){const t=this.isBoth(),i=this.isHorizontal(),l=this.itemSize,h=this.getContentPosition(),n=this.element?this.element.offsetWidth-h.left:0,o=this.element?this.element.offsetHeight-h.top:0,u=(p,g)=>Math.ceil(p/(g||p)),c=p=>Math.ceil(p/2),e=t?{rows:u(o,l[0]),cols:u(n,l[1])}:u(i?n:o,l),f=this.d_numToleratedItems||(t?[c(e.rows),c(e.cols)]:c(e));return{numItemsInViewport:e,numToleratedItems:f}},calculateOptions(){const t=this.isBoth(),i=this.first,{numItemsInViewport:l,numToleratedItems:h}=this.calculateNumItems(),n=(u,c,e,f=!1)=>this.getLast(u+c+(u<e?2:3)*e,f),o=t?{rows:n(i.rows,l.rows,h[0]),cols:n(i.cols,l.cols,h[1],!0)}:n(i,l,h);this.last=o,this.numItemsInViewport=l,this.d_numToleratedItems=h,this.$emit("update:numToleratedItems",this.d_numToleratedItems),this.showLoader&&(this.loaderArr=t?Array.from({length:l.rows}).map(()=>Array.from({length:l.cols})):Array.from({length:l})),this.lazy&&Promise.resolve().then(()=>{var u;this.lazyLoadState={first:this.step?t?{rows:0,cols:i.cols}:0:i,last:Math.min(this.step?this.step:o,((u=this.items)==null?void 0:u.length)-1||0)},this.$emit("lazy-load",this.lazyLoadState)})},calculateAutoSize(){this.autoSize&&!this.d_loading&&Promise.resolve().then(()=>{if(this.content){const t=this.isBoth(),i=this.isHorizontal(),l=this.isVertical();this.content.style.minHeight=this.content.style.minWidth="auto",this.content.style.position="relative",this.element.style.contain="none";const[h,n]=[pt(this.element),vt(this.element)];(t||i)&&(this.element.style.width=h<this.defaultWidth?h+"px":this.scrollWidth||this.defaultWidth+"px"),(t||l)&&(this.element.style.height=n<this.defaultHeight?n+"px":this.scrollHeight||this.defaultHeight+"px"),this.content.style.minHeight=this.content.style.minWidth="",this.content.style.position="",this.element.style.contain=""}})},getLast(t=0,i){var l,h;return this.items?Math.min(i?((l=this.columns||this.items[0])==null?void 0:l.length)||0:((h=this.items)==null?void 0:h.length)||0,t):0},getContentPosition(){if(this.content){const t=getComputedStyle(this.content),i=parseFloat(t.paddingLeft)+Math.max(parseFloat(t.left)||0,0),l=parseFloat(t.paddingRight)+Math.max(parseFloat(t.right)||0,0),h=parseFloat(t.paddingTop)+Math.max(parseFloat(t.top)||0,0),n=parseFloat(t.paddingBottom)+Math.max(parseFloat(t.bottom)||0,0);return{left:i,right:l,top:h,bottom:n,x:i+l,y:h+n}}return{left:0,right:0,top:0,bottom:0,x:0,y:0}},setSize(){if(this.element){const t=this.isBoth(),i=this.isHorizontal(),l=this.element.parentElement,h=this.scrollWidth||`${this.element.offsetWidth||l.offsetWidth}px`,n=this.scrollHeight||`${this.element.offsetHeight||l.offsetHeight}px`,o=(u,c)=>this.element.style[u]=c;t||i?(o("height",n),o("width",h)):o("height",n)}},setSpacerSize(){const t=this.items;if(t){const i=this.isBoth(),l=this.isHorizontal(),h=this.getContentPosition(),n=(o,u,c,e=0)=>this.spacerStyle={...this.spacerStyle,[`${o}`]:(u||[]).length*c+e+"px"};i?(n("height",t,this.itemSize[0],h.y),n("width",this.columns||t[1],this.itemSize[1],h.x)):l?n("width",this.columns||t,this.itemSize,h.x):n("height",t,this.itemSize,h.y)}},setContentPosition(t){if(this.content&&!this.appendOnly){const i=this.isBoth(),l=this.isHorizontal(),h=this.rtl&&l,n=t?t.first:this.first,o=(c,e)=>c*e,u=(c=0,e=0)=>{const f=h?-c:c;this.contentStyle={...this.contentStyle,transform:`translate3d(${f}px, ${e}px, 0)`}};if(i){const c=n.rows,e=n.cols,f=this.itemSize;u(o(e,f[1]),o(c,f[0]))}else{const c=n,e=this.itemSize,f=o(c,e);l?u(f,0):u(0,f)}}},onScrollPositionChange(t){const i=t.target,l=this.isBoth(),h=this.isHorizontal(),n=this.rtl&&h,o=this.getContentPosition(),u=(S,y)=>S?S>y?S-y:S:0,c=(S,y)=>Math.floor(S/(y||S)),e=u(i.scrollTop,o.top);let f=u(i.scrollLeft,o.left);n&&f<0&&(f=Math.abs(f));let p=l?{rows:0,cols:0}:0,g=this.last,H=!1,N=this.lastScrollPos;if(l){const S=this.lastScrollPos.top<=e,y=this.lastScrollPos.left<=f;if(!this.appendOnly||this.appendOnly&&(S||y)){const k={rows:c(e,this.itemSize[0]),cols:c(f,this.itemSize[1])},E={rows:this.calculateTriggerIndex(k.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],S),cols:this.calculateTriggerIndex(k.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],y)};p={rows:this.calculateFirst(k.rows,E.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],S),cols:this.calculateFirst(k.cols,E.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],y,!0)},g={rows:this.calculateLast(k.rows,p.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0]),cols:this.calculateLast(k.cols,p.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],!0)},H=p.rows!==this.first.rows||g.rows!==this.last.rows||p.cols!==this.first.cols||g.cols!==this.last.cols||this.isRangeChanged,N={top:e,left:i.scrollLeft}}}else{const S=h?f:e,y=this.lastScrollPos<=S;if(!this.appendOnly||this.appendOnly&&y){const k=c(S,this.itemSize),E=this.calculateTriggerIndex(k,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,y);p=this.calculateFirst(k,E,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,y),g=this.calculateLast(k,p,this.last,this.numItemsInViewport,this.d_numToleratedItems),H=p!==this.first||g!==this.last||this.isRangeChanged,N=S}}return{first:p,last:g,isRangeChanged:H,scrollPos:N}},calculateTriggerIndex(t,i,l,h,n,o){return t<=n?n:o?l-h-n:i+n-1},calculateFirst(t,i,l,h,n,o,u,c=!1){if(t<=o)return 0;const e=Math.max(0,u?t<i?l:t-o:t>i?l:t-2*o),f=this.getLast(e,c);return e>f?f-n:e},calculateLast(t,i,l,h,n,o=!1){let u=i+h+2*n;return t>=n&&(u+=n+1),this.getLast(u,o)},onScrollChange(t){var o,u;const{first:i,last:l,isRangeChanged:h,scrollPos:n}=this.onScrollPositionChange(t);if(h){const c={first:i,last:l};if(this.setContentPosition(c),this.first=i,this.last=l,this.lastScrollPos=n,this.$emit("scroll-index-change",c),this.lazy&&this.isPageChanged(i)){const e={first:this.step?Math.min(this.getPageByFirst(i)*this.step,(((o=this.items)==null?void 0:o.length)||0)-this.step):i,last:Math.min(this.step?(this.getPageByFirst(i)+1)*this.step:l,((u=this.items)==null?void 0:u.length)-1||0)};(this.lazyLoadState.first!==e.first||this.lazyLoadState.last!==e.last)&&this.$emit("lazy-load",e),this.lazyLoadState=e}}},onScroll(t){if(this.$emit("scroll",t),this.delay){if(this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.isPageChanged()){if(!this.d_loading&&this.showLoader){const{isRangeChanged:i}=this.onScrollPositionChange(t);(i||(this.step?this.isPageChanged():!1))&&(this.d_loading=!0)}this.scrollTimeout=setTimeout(()=>{this.onScrollChange(t),this.d_loading&&this.showLoader&&(!this.lazy||this.loading===void 0)&&(this.d_loading=!1,this.page=this.getPageByFirst())},this.delay)}}else this.onScrollChange(t)},onResize(){this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(()=>{if(qt(this.element)){const t=this.isBoth(),i=this.isVertical(),l=this.isHorizontal(),[h,n]=[pt(this.element),vt(this.element)],[o,u]=[h!==this.defaultWidth,n!==this.defaultHeight];(t?o||u:l?o:i?u:!1)&&(this.d_numToleratedItems=this.numToleratedItems,this.defaultWidth=h,this.defaultHeight=n,this.defaultContentWidth=pt(this.content),this.defaultContentHeight=vt(this.content),this.init())}},this.resizeDelay)},bindResizeListener(){this.resizeListener||(this.resizeListener=this.onResize.bind(this),window.addEventListener("resize",this.resizeListener),window.addEventListener("orientationchange",this.resizeListener))},unbindResizeListener(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),window.removeEventListener("orientationchange",this.resizeListener),this.resizeListener=null)},getOptions(t){const i=(this.items||[]).length,l=this.isBoth()?this.first.rows+t:this.first+t;return{index:l,count:i,first:l===0,last:l===i-1,even:l%2===0,odd:l%2!==0}},getLoaderOptions(t,i){const l=this.loaderArr.length;return{index:t,count:l,first:t===0,last:t===l-1,even:t%2===0,odd:t%2!==0,...i}},getPageByFirst(t){return Math.floor(((t??this.first)+this.d_numToleratedItems*4)/(this.step||1))},isPageChanged(t){return this.step&&!this.lazy?this.page!==this.getPageByFirst(t??this.first):!0},setContentEl(t){this.content=t||this.content||me(this.element,'[data-pc-section="content"]')},elementRef(t){this.element=t},contentRef(t){this.content=t}}},Me=["tabindex"];function Be(t,i,l,h,n,o){const u=we("SpinnerIcon");return t.disabled?(d(),v(at,{key:1},[ot(t.$slots,"default"),ot(t.$slots,"content",{items:t.items,rows:t.items,columns:o.loadedColumns})],64)):(d(),v("div",yt({key:0,ref:o.elementRef,class:o.containerClass,tabindex:t.tabindex,style:t.style},t.ptmi("root"),{onScroll:i[0]||(i[0]=(...c)=>o.onScroll&&o.onScroll(...c))}),[ot(t.$slots,"content",{styleClass:o.contentClass,items:o.loadedItems,getItemOptions:o.getOptions,loading:n.d_loading,getLoaderOptions:o.getLoaderOptions,itemSize:t.itemSize,rows:o.loadedRows,columns:o.loadedColumns,contentRef:o.contentRef,spacerStyle:n.spacerStyle,contentStyle:n.contentStyle,vertical:o.isVertical(),horizontal:o.isHorizontal(),both:o.isBoth()},()=>[T("div",yt({ref:o.contentRef,class:o.contentClass,style:n.contentStyle},t.ptm("content")),[(d(!0),v(at,null,Ot(o.loadedItems,(c,e)=>ot(t.$slots,"item",{key:e,item:c,options:o.getOptions(e)})),128))],16)]),t.showSpacer?(d(),v("div",yt({key:0,class:"p-virtualscroller-spacer",style:n.spacerStyle},t.ptm("spacer")),null,16)):x("",!0),!t.loaderDisabled&&t.showLoader&&n.d_loading?(d(),v("div",yt({key:1,class:o.loaderClass},t.ptm("loader")),[t.$slots&&t.$slots.loader?(d(!0),v(at,{key:0},Ot(n.loaderArr,(c,e)=>ot(t.$slots,"loader",{key:e,options:o.getLoaderOptions(e,o.isBoth()&&{numCols:t.d_numItemsInViewport.cols})})),128)):x("",!0),ot(t.$slots,"loadingicon",{},()=>[B(u,yt({spin:"",class:"p-virtualscroller-loading-icon"},t.ptm("loadingIcon")),null,16)])],16)):x("",!0)],16,Me))}const Ve=Ut(Ce,[["render",Be]]),Re={viewBox:"0 0 20 20",width:"1.2em",height:"1.2em"};function He(t,i){return d(),v("svg",Re,i[0]||(i[0]=[T("path",{fill:"currentColor","fill-rule":"evenodd",d:"M14.707 12.707a1 1 0 0 1-1.414 0L10 9.414l-3.293 3.293a1 1 0 0 1-1.414-1.414l4-4a1 1 0 0 1 1.414 0l4 4a1 1 0 0 1 0 1.414","clip-rule":"evenodd"},null,-1)]))}const Oe=Xt({name:"heroicons-solid-chevron-up",render:He}),De={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function $e(t,i){return d(),v("svg",De,i[0]||(i[0]=[T("path",{fill:"currentColor",d:"M8 13.885q-.31 0-.54-.23t-.23-.54t.23-.539t.54-.23t.54.23t.23.54t-.23.539t-.54.23m4 0q-.31 0-.54-.23t-.23-.54t.23-.539t.54-.23t.54.23t.23.54t-.23.539t-.54.23m4 0q-.31 0-.54-.23t-.23-.54t.23-.539t.54-.23t.54.23t.23.54t-.23.539t-.54.23M5.616 21q-.691 0-1.153-.462T4 19.385V6.615q0-.69.463-1.152T5.616 5h1.769V3.308q0-.233.153-.386t.385-.153t.386.153t.153.386V5h7.154V3.27q0-.214.143-.358t.357-.143t.356.143t.144.357V5h1.769q.69 0 1.153.463T20 6.616v12.769q0 .69-.462 1.153T18.384 21zm0-1h12.769q.23 0 .423-.192t.192-.424v-8.768H5v8.769q0 .23.192.423t.423.192M5 9.615h14v-3q0-.23-.192-.423T18.384 6H5.616q-.231 0-.424.192T5 6.616zm0 0V6z"},null,-1)]))}const Fe=Xt({name:"material-symbols-light-date-range-outline-rounded",render:$e});var Gt=(t=>(t[t.HEIGHT=8]="HEIGHT",t[t.WIDTH=150]="WIDTH",t))(Gt||{});const We={key:0,class:"p-2 flex flex-col gap-2 border-b-[1px] border-color"},Ae={key:0,class:"flex flex-row gap-6 items-center w-full"},Ne={key:1,class:"w-full pr-3"},Ee={class:"flex gap-2 items-center justify-between absolute z-21 top-2 left-0 w-full h-[50px] px-[calc(16px+0.5rem)] pointer-events-none"},je={class:"h-full flex flex-1 items-center justify-start gap-2"},qe={class:"h-full flex flex-1 items-center justify-center"},Ye={class:"flex flex-1 items-center justify-end"},Ze={key:0,class:"flex gap-2 items-center justify-between absolute z-21 bottom-safe-offset-2 left-0 w-full h-[50px] px-[calc(16px+0.5rem)] pointer-events-none"},Ue={class:"h-full flex flex-1 items-center justify-start"},Xe={key:0,class:"text-xs font-semibold"},Ge={key:1,class:"text-xs font-semibold"},Je=["data-future-tick"],Qe=["width"],Ke=["width","height","rx","ry"],ts={class:"absolute pl-6 h-full w-full items-center flex"},es={key:0,class:"text-xs leading-none w-[60px]"},ss={key:1,class:"flex flex-col items-center justify-end h-full"},is={class:"absolute bottom-0 pb-6 h-full w-full items-center justify-end flex flex-col"},ls={key:0,class:"text-xs leading-none h-[12px]"},os=["height"],ns=["width","height","rx","ry"],Lt=100,as=Se({__name:"CuiTimeline",props:{type:{default:"vertical"},height:{default:"100%"},flatCard:{type:Boolean},showDate:{type:Boolean,default:!0},showZoom:{type:Boolean,default:!0},showSegments:{type:Boolean,default:!0},transparent:{type:Boolean,default:!1},overlayClass:{},overlayStyle:{},darkMode:{type:Boolean}},emits:["date-change","scroll","scrolling"],setup(t,{emit:i}){const l=ve(),{t:h}=xe(),{isTouch:n}=ge(),{mdBreakpoint:o}=ye(),u=i,c=t,{type:e,flatCard:f,showDate:p,showZoom:g,showSegments:H,height:N,transparent:S,overlayClass:y,overlayStyle:k,darkMode:E}=Te(c),$=Rt("timelineRef"),F=Rt("datePickerRef"),rt=Rt("virtualScrollerRef"),wt=L("timeline"),St=L(0),Tt=L(!1),ct=L(!1),bt=L(!1),W=L(0),ht=L(!1),Jt=L([{key:"timeline",label:h("views.camera.timeline")},{key:"detections",label:h("views.camera.detections")}]);let Dt;const zt=L(z()),O=L(z()),Y=L(z()),V=L(z()),ut=L(!1),Ct=L(0),U=L(0),$t=be({scrollStartTime:z(),scrollStartY:0,scrollStartRotateOffset:0,setScrollReference(r,a){this.scrollStartTime=z(),this.scrollStartY=r,this.scrollStartRotateOffset=a}}),Ft=q(()=>{var r;return(r=rt.value)==null?void 0:r.element}),{y:C,x:M,isScrolling:Qt}=ke(Ft),Wt=Ie($),Kt=_e(()=>{if(Ct.value++,e.value==="vertical"?C.value===0:M.value===0){U.value=Ct.value;const a=new Date(zt.value.getTime()+U.value*1e3);Y.value=z(a),O.value=z(a),bt.value||(V.value=lt(Y.value))}else!Q.value&&!ht.value&&U.value++},1e3,{immediate:!1}),te=q(()=>{const r={body:{class:"w-full h-full p-0 overflow-hidden"},content:{class:"h-full"},root:{class:{},style:{height:N.value}}};return f.value&&(r.root.class={...r.root.class,"!rounded-none !border-0":!0}),r}),ee=q(()=>{var b,w;const r=V.value.getDay(),a=V.value.getMonth();return`${(b=l.config.locale)==null?void 0:b.dayNames[r]}, ${(w=l.config.locale)==null?void 0:w.monthNames[a]} ${gt(V.value,"YY")}`}),se=q(()=>{var a;const r=V.value.getMonth();return`${gt(V.value,"D")}. ${(a=l.config.locale)==null?void 0:a.monthNamesShort[r]}`}),J=q(()=>{const r=[{zoom:0,labelTick:5,bigTick:5,duration:6e5},{zoom:2,labelTick:15,bigTick:5,duration:9e5},{zoom:4,labelTick:16,bigTick:4,duration:12e4},{zoom:6,labelTick:15,bigTick:5,duration:6e4},{zoom:8,labelTick:30,bigTick:10,duration:3e4}],a=r.find(et=>et.zoom===W.value)??r[0],b=a.labelTick,w=a.bigTick,I=a.duration,j=I/b,tt=j/Z.value,dt=Z.value/(I/1e3/b);return{bigTickInterval:w,labelInterval:b,duration:I,timeMsPerTick:j,timeMsPerPx:tt,pxPerSecond:dt}}),Q=q(()=>Qt.value||Tt.value||ct.value),Z=q(()=>Gt.HEIGHT+W.value),R=q(()=>e.value==="vertical"?C.value===0:M.value===0),ie=q(()=>{if(bt.value)return lt()}),At=q(()=>{const r=J.value,a=[],b=r.timeMsPerTick;let w;e.value==="vertical"?w=Wt.height.value/Z.value*2+St.value:w=Wt.width.value/Z.value*2+St.value;const I=z(zt.value).getTime(),j=z(zt.value),tt=Lt*r.timeMsPerPx;j.setMilliseconds(j.getMilliseconds()+tt);const dt=U.value*1e3,et=Math.ceil(dt/r.timeMsPerTick),Mt=-et;let xt=w-et;if(ut.value){const _=Y.value.getTime()-V.value.getTime(),st=Math.ceil(_/r.timeMsPerTick);xt+=st}for(let _=Mt;_<xt;_++){const st=_%r.labelInterval===0,kt=_%r.bigTickInterval===0,X=Math.abs(_)*b,P=z(j);_<0?P.setMilliseconds(P.getMilliseconds()+X):P.setMilliseconds(P.getMilliseconds()-X);const mt=P.getTime()>I,Bt=P.getHours().toString().padStart(2,"0"),m=P.getMinutes().toString().padStart(2,"0");let It=`${Bt}:${m}`;if(W.value>=4){const ft=P.getSeconds().toString().padStart(2,"0");It+=`:${ft}`}let it;e.value,mt?it=-((P.getTime()-I)/r.timeMsPerPx):it=(I-P.getTime())/r.timeMsPerPx,it+=U.value*r.pxPerSecond,a.push({index:_,time:It,timestamp:P.getTime(),position:it,isLabelTick:st,isMediumTick:kt,isFutureTick:mt})}return a});nt(o,r=>{r?W.value=2:W.value=0},{immediate:!0}),nt(V,r=>{if(lt(r).getTime()===lt(Y.value).getTime()){e.value==="vertical"?C.value=0:M.value=0;return}const a=lt(r),b=lt(Y.value);ut.value=a.getTime()<b.getTime(),Pt(Et)}),nt([C,M],([r,a],[b,w])=>{const I=e.value==="vertical"?r:a,j=e.value==="vertical"?b:w;I===0&&(ut.value=!1),j===0&&I!==0&&$t.setScrollReference(I,U.value),u("scroll",I)},{immediate:!0}),Yt(()=>{u("scrolling",Q.value)}),nt(W,async()=>{if(R.value)return;clearTimeout(Dt),ht.value=!0;const r=new Date(O.value);Ct.value=0,U.value=0,e.value==="vertical"?C.value=0:M.value=0,zt.value=z(),Y.value=z(),O.value=r,V.value=r,Dt=setTimeout(()=>{ht.value=!1},1e3)}),nt(O,(r,a)=>{if(ht.value&&r.getTime()!==a.getTime()){O.value=new Date(a.getTime());return}}),Yt(()=>{if(!ht.value){if(R.value)O.value=z();else{const r=U.value-$t.scrollStartRotateOffset,b=(e.value==="vertical"?C.value:-M.value)*J.value.timeMsPerPx,w=r*1e3;O.value=z(new Date(Y.value.getTime()-b+w))}u("date-change",R.value?"live":z(O.value))}}),nt(e,()=>{const r=z(O.value);Pt(()=>Et(r))});const le=r=>{St.value=r.first},oe=r=>{var a;(a=F.value)==null||a.hide(),!(r.getTime()>new Date().getTime())&&(V.value=r)},Nt=()=>{V.value=z(Y.value),ut.value=!1,e.value==="vertical"?C.value=0:M.value=0},Et=r=>{if(!ut.value&&!r){e.value==="vertical"?C.value=0:M.value=0;return}const a=r||z(V.value),w=(Y.value.getTime()-a.getTime())/J.value.timeMsPerPx;e.value==="vertical"?(M.value=0,Pt(()=>C.value=w)):(C.value=0,Pt(()=>M.value=-w))},ne=()=>{Pe(Ft,{threshold:10,pointerTypes:["mouse"],onSwipeStart(){Tt.value=!0},onSwipe(r){if(e.value==="vertical"){if(r.movementY<0){const a=Math.ceil(C.value+J.value.pxPerSecond);C.value=a}else if(r.movementY>0){const a=Math.floor(C.value-J.value.pxPerSecond);C.value=a||0}}else if(r.movementX<0){const a=Math.ceil(M.value+J.value.pxPerSecond);M.value=a}else if(r.movementX>0){const a=Math.floor(M.value-J.value.pxPerSecond);M.value=a||0}},onSwipeEnd(){Tt.value=!1}})};return ze(()=>{n.value||ne(),Kt.resume()}),(r,a)=>{const b=Fe,w=ce,I=he,j=ue,tt=Oe,dt=Ve,et=ae,Mt=de,xt=re;return d(),v("div",null,[B(et,{class:D(["cui-card !rounded-md",{"bg-transparent !border-0":s(S)}]),pt:s(te)},{content:A(()=>{var _,st,kt;return[T("div",{class:D(["w-full h-full flex flex-col",{"dark-mode":s(E)}])},[s(e)==="vertical"&&(s(p)&&!s(o)||s(g)||s(H))?(d(),v("div",We,[s(p)&&!s(o)||s(g)?(d(),v("div",Ae,[s(p)&&!s(o)?(d(),G(w,{key:0,text:"",disabled:s(Q),severity:"secondary",label:s(ee),class:"cui-button-small shrink-0 pointer-events-auto",onClick:(_=s(F))==null?void 0:_.toggle},{icon:A(()=>[B(b)]),_:1},8,["disabled","label","onClick"])):x("",!0),s(g)?(d(),v("div",Ne,[B(I,{modelValue:s(W),"onUpdate:modelValue":a[0]||(a[0]=X=>Zt(W)?W.value=X:null),step:2,max:8,min:0,class:"flex-1 pointer-events-auto"},null,8,["modelValue"])])):x("",!0)])):x("",!0),s(H)?(d(),G(j,{key:1,modelValue:s(wt),"onUpdate:modelValue":a[1]||(a[1]=X=>Zt(wt)?wt.value=X:null),options:s(Jt),"option-label":"label","option-value":"key",pt:{pcToggleButton:{root:{class:"w-full"}}},"allow-empty":!1,class:"flex justify-stretch pointer-events-auto"},null,8,["modelValue","options"])):x("",!0)])):x("",!0),T("div",{ref_key:"timelineRef",ref:$,class:D(["w-full h-full relative pointer-events-auto",{"hide-scrollbar overflow-x-scroll disable-overflow-scroll":s(e)==="horizontal"}])},[T("div",{class:D(["absolute w-full h-full pointer-events-none z-10",[s(y),{"timeline-overlay-vertical":s(e)==="vertical","timeline-overlay-horizontal !z-0":s(e)==="horizontal"}]]),style:K([s(k)])},null,6),T("div",Ee,[T("div",je,[s(p)&&s(e)==="horizontal"?(d(),G(w,{key:0,rounded:"",severity:"secondary",disabled:s(Q),class:"cui-button-small shadow-md pointer-events-auto shrink-0",onClick:(st=s(F))==null?void 0:st.toggle},{icon:A(()=>[B(b,{width:"100%",height:"100%"})]),_:1},8,["disabled","onClick"])):x("",!0),B(Ht,{name:"fade"},{default:A(()=>[!s(R)&&s(e)==="horizontal"?(d(),G(w,{key:0,fluid:"",severity:"secondary",class:"flex items-center justify-center cui-button-small shadow-md align-middle p-2 !text-xs pointer-events-auto",label:s(gt)(s(O))},null,8,["label"])):x("",!0)]),_:1})]),T("div",qe,[B(Ht,{name:"fade"},{default:A(()=>[!s(R)&&s(e)==="vertical"?(d(),G(w,{key:0,rounded:"",disabled:s(Q),class:"cui-icon-md shadow-md pointer-events-auto",onClick:Nt},{icon:A(()=>[B(tt,{width:"100%",height:"100%"})]),_:1},8,["disabled"])):x("",!0)]),_:1})]),T("div",Ye,[B(Ht,{name:"fade"},{default:A(()=>[s(R)?x("",!0):(d(),v(at,{key:0},[s(e)==="vertical"?(d(),G(w,{key:0,fluid:"",severity:"secondary",class:"flex items-center justify-center cui-button-small shadow-md align-middle p-2 !text-xs",label:s(gt)(s(O))},null,8,["label"])):(d(),G(w,{key:1,rounded:"",disabled:s(Q),class:"cui-icon-md shadow-md pointer-events-auto rotate-90",onClick:Nt},{icon:A(()=>[B(tt,{width:"100%",height:"100%"})]),_:1},8,["disabled"]))],64))]),_:1})])]),s(e)==="vertical"?(d(),v("div",Ze,[T("div",Ue,[s(p)&&s(o)?(d(),G(w,{key:0,severity:"secondary",disabled:s(Q),label:s(se),class:"cui-button-small shadow-md pointer-events-auto",onClick:(kt=s(F))==null?void 0:kt.toggle},{icon:A(()=>[B(b)]),_:1},8,["disabled","label","onClick"])):x("",!0)]),a[9]||(a[9]=T("div",{class:"h-full flex flex-1 items-center justify-center"},null,-1)),a[10]||(a[10]=T("div",{class:"h-full flex flex-1 items-center justify-end"},null,-1))])):x("",!0),T("div",{class:D(["absolute z-20 pointer-events-none",{"bg-primary-500":s(R)&&s(e)==="vertical","bg-sky-500":!s(R)&&s(e)==="vertical","bg-gradient-to-t from-primary-500 to-transparent":s(R)&&s(e)==="horizontal","bg-gradient-to-t from-sky-500 to-transparent":!s(R)&&s(e)==="horizontal","h-[2px] w-full":s(e)==="vertical","w-[2px] h-full":s(e)==="horizontal"}]),style:K(s(e)==="vertical"?{top:`${Lt}px`}:{right:`${Lt}px`})},[T("span",{class:D(["absolute rounded-xl text-white text-xs inline-flex items-center justify-center p-2",{"bg-primary-500":s(R),"bg-sky-500":!s(R),"left-[calc(16px+0.25rem)] h-[32px] w-[60px] -top-[16px]":s(e)==="vertical","bottom-[calc(12px+0.25rem)] w-[60px] h-[32px] -left-[30px]":s(e)==="horizontal"}])},[s(R)?(d(),v("span",Xe,_t(s(h)("components.timeline.live")),1)):(d(),v("span",Ge,_t(s(gt)(s(O),"HH:mm:ss")),1))],2)],6),B(dt,{ref_key:"virtualScrollerRef",ref:rt,items:s(At),"item-size":s(Z),"num-tolerated-items":10,orientation:s(e),"show-spacer":s(e)!=="horizontal","scroll-width":"100%","scroll-height":"100%",class:"overscroll-none",dir:s(e)==="horizontal"?"rtl":"ltr",rtl:s(e)==="horizontal",lazy:"",onLazyLoad:le},{content:A(({items:X,styleClass:P,contentStyle:mt,contentRef:Bt})=>[s(wt)==="timeline"?(d(),v("div",{ref:Bt,key:s(W),class:D(P),style:K([mt,{cursor:s(Tt)?"grabbing":"grab"}]),dir:"ltr",onTouchstart:a[2]||(a[2]=m=>ct.value=!0),onTouchmove:a[3]||(a[3]=m=>ct.value=!0),onTouchend:a[4]||(a[4]=m=>ct.value=!1),onTouchcancel:a[5]||(a[5]=m=>ct.value=!1)},[(d(!0),v(at,null,Ot(X,(m,It)=>(d(),v("div",{key:`${It}-${m.index}-${s(W)}-${m.time}`,class:D(["absolute text-muted-color select-none",{"w-full flex h-[2px]":s(e)==="vertical","h-full flex flex-col w-[2px]":s(e)==="horizontal"}]),style:K({[s(e)==="vertical"?"top":"right"]:`${m.position-s(St)*s(Z)+Lt}px`}),"data-future-tick":m.isFutureTick},[s(e)==="vertical"?(d(),v(at,{key:0},[(d(),v("svg",{width:m.isLabelTick?16:m.isMediumTick?8:4,height:"2",class:D(["ml-1",{"opacity-50":!m.isLabelTick}]),preserveAspectRatio:"xMidYMid meet"},[T("rect",{x:"0",y:"0",width:m.isLabelTick?16:m.isMediumTick?8:4,height:m.isLabelTick?2:1,fill:"currentColor",rx:m.isLabelTick?1.5:.5,ry:m.isLabelTick?1.5:.5},null,8,Ke)],10,Qe)),T("div",ts,[m.isLabelTick?(d(),v("span",es,_t(m.time),1)):x("",!0),T("div",{class:D(["w-[8px] bg-primary/10 ml-[calc(60px+2rem)]",{"!ml-8":m.isLabelTick}]),style:K({height:`${s(Z)}px`})},null,6)])],64)):(d(),v("div",ss,[T("div",is,[T("div",{class:D(["h-[8px] bg-primary/10 mb-[calc(12px+2rem)]",{"!mb-8":m.isLabelTick}]),style:K({width:`${s(Z)}px`})},null,6),m.isLabelTick?(d(),v("span",ls,_t(m.time),1)):x("",!0)]),(d(),v("svg",{width:"2",height:m.isLabelTick?16:m.isMediumTick?8:4,class:D(["mb-1",{"opacity-50":!m.isLabelTick}]),preserveAspectRatio:"xMidYMid meet"},[T("rect",{x:"0",y:"0",width:m.isLabelTick?2:1,height:m.isLabelTick?16:m.isMediumTick?8:4,fill:"currentColor",rx:m.isLabelTick?1.5:.5,ry:m.isLabelTick?1.5:.5},null,8,ns)],10,os))]))],14,Je))),128))],38)):x("",!0),s(e)==="horizontal"?(d(),v("div",{key:1,class:"p-virtualscroller-spacer right-0 left-auto","data-pc-section":"spacer",style:K({width:`${s(At).length*s(Z)}px`})},null,4)):x("",!0)]),_:1},8,["items","item-size","orientation","show-spacer","dir","rtl"])],2)],2)]}),_:1},8,["class","pt"]),B(xt,{ref_key:"datePickerRef",ref:F,class:"border-none",pt:{content:{class:"p-0"}},onShow:a[7]||(a[7]=_=>bt.value=!0),onHide:a[8]||(a[8]=_=>bt.value=!1)},{default:A(()=>[B(Mt,{inline:"","model-value":s(V),"hour-format":"12","show-time":"","max-date":s(ie),"clear-button-props":{class:"hidden"},class:"hover:text-primary active:text-primary focus:text-primary text-muted-color","input-class":{"p-0":s(o)},pt:{pcInputText:{root:{class:"text-sm !text-color"}},inputIconContainer:{class:"transition-all text-current"}},onValueChange:a[6]||(a[6]=_=>oe(_))},null,8,["model-value","max-date","input-class"])]),_:1},512)])}}}),ps=Ut(as,[["__scopeId","data-v-2a65578b"]]);export{ps as _};
1
+ import{V as jt,r as ae,i as re,b as ce,Q as he,R as ue,S as de}from"./primevue.BVVo-ukB.0.0.70.js";import{A as me,an as qt,U as pt,T as vt}from"./@primeuix.bRNqZjQz.0.0.70.js";import{s as fe,b as pe,Y as ve}from"./@primevue.DH9ak_9x.0.0.70.js";import{z as Ut,e as ge,h as ye,Z as z,$ as gt,a0 as lt}from"./main.D2NZuTnM.0.0.70.js";import{J as we,c as v,d,G as ot,O as x,m as yt,X as at,Z as Ot,e as T,R as B,F as Xt,B as Se,t as Te,ac as Rt,r as L,b as be,k as q,w as nt,C as Yt,o as ze,N as A,h as s,P as D,M as G,f as Zt,W as K,V as Ht,I as _t,n as Pt}from"./@vue.BsSvBeCe.0.0.70.js";import{u as xe}from"./vue-i18n.BLwVbi61.0.0.70.js";import{B as ke,l as Ie,C as _e,i as Pe}from"./@vueuse.T3qy5Jq4.0.0.70.js";const Le={name:"BaseVirtualScroller",extends:fe,provide(){return{$pcVirtualScroller:this,$parentInstance:this}},props:{id:{type:String,default:null},style:null,class:null,items:{type:Array,default:null},itemSize:{type:[Number,Array],default:0},scrollHeight:null,scrollWidth:null,orientation:{type:String,default:"vertical"},rtl:{type:Boolean,default:!1},numToleratedItems:{type:Number,default:null},delay:{type:Number,default:0},resizeDelay:{type:Number,default:10},lazy:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},loaderDisabled:{type:Boolean,default:!1},columns:{type:Array,default:null},loading:{type:Boolean,default:!1},showSpacer:{type:Boolean,default:!0},showLoader:{type:Boolean,default:!1},tabindex:{type:Number,default:0},inline:{type:Boolean,default:!1},step:{type:Number,default:0},appendOnly:{type:Boolean,default:!1},autoSize:{type:Boolean,default:!1}},style:jt,beforeMount(){var t,i;jt.loadCSS({nonce:(i=(t=this.$primevueConfig)==null?void 0:t.csp)==null?void 0:i.nonce})}},Ce={name:"VirtualScroller",components:{SpinnerIcon:pe},extends:Le,inheritAttrs:!1,emits:["update:numToleratedItems","scroll","scroll-index-change","lazy-load"],data(){const t=this.isBoth();return{first:t?{rows:0,cols:0}:0,last:t?{rows:0,cols:0}:0,page:t?{rows:0,cols:0}:0,numItemsInViewport:t?{rows:0,cols:0}:0,lastScrollPos:t?{top:0,left:0}:0,d_numToleratedItems:this.numToleratedItems,d_loading:this.loading,loaderArr:[],spacerStyle:{},contentStyle:{}}},element:null,content:null,lastScrollPos:null,scrollTimeout:null,resizeTimeout:null,defaultWidth:0,defaultHeight:0,defaultContentWidth:0,defaultContentHeight:0,isRangeChanged:!1,lazyLoadState:{},resizeListener:null,initialized:!1,computed:{containerClass(){return["p-virtualscroller",this.class,{"p-virtualscroller-inline":this.inline,"p-virtualscroller-both p-both-scroll":this.isBoth(),"p-virtualscroller-horizontal p-horizontal-scroll":this.isHorizontal(),"p-virtualscroller-rtl":this.rtl&&this.isHorizontal()}]},contentClass(){return["p-virtualscroller-content",{"p-virtualscroller-loading":this.d_loading}]},loaderClass(){return["p-virtualscroller-loader",{"p-virtualscroller-loader-mask":!this.$slots.loader}]},loadedItems(){return this.items&&!this.d_loading?this.isBoth()?this.items.slice(this.appendOnly?0:this.first.rows,this.last.rows).map(t=>this.columns?t:t.slice(this.appendOnly?0:this.first.cols,this.last.cols)):this.isHorizontal()&&this.columns?this.items:this.items.slice(this.appendOnly?0:this.first,this.last):[]},loadedRows(){return this.d_loading?this.loaderDisabled?this.loaderArr:[]:this.loadedItems},loadedColumns(){if(this.columns){const t=this.isBoth(),i=this.isHorizontal();if(t||i)return this.d_loading&&this.loaderDisabled?t?this.loaderArr[0]:this.loaderArr:this.columns.slice(t?this.first.cols:this.first,t?this.last.cols:this.last)}return this.columns}},watch:{numToleratedItems(t){this.d_numToleratedItems=t},loading(t,i){this.lazy&&t!==i&&t!==this.d_loading&&(this.d_loading=t)},items:{handler(t,i){(!i||i.length!==(t||[]).length)&&(this.init(),this.calculateAutoSize())},deep:!0},itemSize(){this.init(),this.calculateAutoSize()},orientation(){this.lastScrollPos=this.isBoth()?{top:0,left:0}:0},scrollHeight(){this.init(),this.calculateAutoSize()},scrollWidth(){this.init(),this.calculateAutoSize()}},mounted(){this.viewInit(),this.lastScrollPos=this.isBoth()?{top:0,left:0}:0,this.lazyLoadState=this.lazyLoadState||{}},updated(){!this.initialized&&this.viewInit()},unmounted(){this.unbindResizeListener(),this.initialized=!1},methods:{viewInit(){qt(this.element)&&(this.setContentEl(this.content),this.init(),this.calculateAutoSize(),this.bindResizeListener(),this.defaultWidth=pt(this.element),this.defaultHeight=vt(this.element),this.defaultContentWidth=pt(this.content),this.defaultContentHeight=vt(this.content),this.initialized=!0)},init(){this.disabled||(this.setSize(),this.calculateOptions(),this.setSpacerSize())},isVertical(){return this.orientation==="vertical"},isHorizontal(){return this.orientation==="horizontal"},isBoth(){return this.orientation==="both"},scrollTo(t){this.element&&this.element.scrollTo(t)},scrollToIndex(t,i="auto"){const l=this.isBoth(),h=this.isHorizontal(),n=this.rtl&&h;if(l?t.every(u=>u>-1):t>-1){const u=this.first,{scrollTop:c=0,scrollLeft:e=0}=this.element,{numToleratedItems:f}=this.calculateNumItems(),p=this.getContentPosition(),g=this.itemSize,H=($=0,F)=>$<=F?0:$,N=($,F,rt)=>$*F+rt,S=($=0,F=0)=>{n&&($=this.element.scrollWidth-this.element.clientWidth-$),this.scrollTo({left:$,top:F,behavior:i})};let y=l?{rows:0,cols:0}:0,k=!1,E=!1;l?(y={rows:H(t[0],f[0]),cols:H(t[1],f[1])},S(N(y.cols,g[1],p.left),N(y.rows,g[0],p.top)),E=this.lastScrollPos.top!==c||this.lastScrollPos.left!==e,k=y.rows!==u.rows||y.cols!==u.cols):(y=H(t,f),h?S(N(y,g,p.left),c):S(e,N(y,g,p.top)),E=this.lastScrollPos!==(h?e:c),k=y!==u),this.isRangeChanged=k,E&&(this.first=y)}},scrollInView(t,i,l="auto"){if(i){const h=this.isBoth(),n=this.isHorizontal();if(h?t.every(u=>u>-1):t>-1){const{first:u,viewport:c}=this.getRenderedRange(),e=(g=0,H=0)=>this.scrollTo({left:g,top:H,behavior:l}),f=i==="to-start",p=i==="to-end";if(f){if(h)c.first.rows-u.rows>t[0]?e(c.first.cols*this.itemSize[1],(c.first.rows-1)*this.itemSize[0]):c.first.cols-u.cols>t[1]&&e((c.first.cols-1)*this.itemSize[1],c.first.rows*this.itemSize[0]);else if(c.first-u>t){const g=(c.first-1)*this.itemSize;n?e(g,0):e(0,g)}}else if(p){if(h)c.last.rows-u.rows<=t[0]+1?e(c.first.cols*this.itemSize[1],(c.first.rows+1)*this.itemSize[0]):c.last.cols-u.cols<=t[1]+1&&e((c.first.cols+1)*this.itemSize[1],c.first.rows*this.itemSize[0]);else if(c.last-u<=t+1){const g=(c.first+1)*this.itemSize;n?e(g,0):e(0,g)}}}}else this.scrollToIndex(t,l)},getRenderedRange(){const t=(h,n)=>Math.floor(h/(n||h));let i=this.first,l=0;if(this.element){const h=this.isBoth(),n=this.isHorizontal(),{scrollTop:o,scrollLeft:u}=this.element;h?(i={rows:t(o,this.itemSize[0]),cols:t(u,this.itemSize[1])},l={rows:i.rows+this.numItemsInViewport.rows,cols:i.cols+this.numItemsInViewport.cols}):(i=t(n?u:o,this.itemSize),l=i+this.numItemsInViewport)}return{first:this.first,last:this.last,viewport:{first:i,last:l}}},calculateNumItems(){const t=this.isBoth(),i=this.isHorizontal(),l=this.itemSize,h=this.getContentPosition(),n=this.element?this.element.offsetWidth-h.left:0,o=this.element?this.element.offsetHeight-h.top:0,u=(p,g)=>Math.ceil(p/(g||p)),c=p=>Math.ceil(p/2),e=t?{rows:u(o,l[0]),cols:u(n,l[1])}:u(i?n:o,l),f=this.d_numToleratedItems||(t?[c(e.rows),c(e.cols)]:c(e));return{numItemsInViewport:e,numToleratedItems:f}},calculateOptions(){const t=this.isBoth(),i=this.first,{numItemsInViewport:l,numToleratedItems:h}=this.calculateNumItems(),n=(u,c,e,f=!1)=>this.getLast(u+c+(u<e?2:3)*e,f),o=t?{rows:n(i.rows,l.rows,h[0]),cols:n(i.cols,l.cols,h[1],!0)}:n(i,l,h);this.last=o,this.numItemsInViewport=l,this.d_numToleratedItems=h,this.$emit("update:numToleratedItems",this.d_numToleratedItems),this.showLoader&&(this.loaderArr=t?Array.from({length:l.rows}).map(()=>Array.from({length:l.cols})):Array.from({length:l})),this.lazy&&Promise.resolve().then(()=>{var u;this.lazyLoadState={first:this.step?t?{rows:0,cols:i.cols}:0:i,last:Math.min(this.step?this.step:o,((u=this.items)==null?void 0:u.length)-1||0)},this.$emit("lazy-load",this.lazyLoadState)})},calculateAutoSize(){this.autoSize&&!this.d_loading&&Promise.resolve().then(()=>{if(this.content){const t=this.isBoth(),i=this.isHorizontal(),l=this.isVertical();this.content.style.minHeight=this.content.style.minWidth="auto",this.content.style.position="relative",this.element.style.contain="none";const[h,n]=[pt(this.element),vt(this.element)];(t||i)&&(this.element.style.width=h<this.defaultWidth?h+"px":this.scrollWidth||this.defaultWidth+"px"),(t||l)&&(this.element.style.height=n<this.defaultHeight?n+"px":this.scrollHeight||this.defaultHeight+"px"),this.content.style.minHeight=this.content.style.minWidth="",this.content.style.position="",this.element.style.contain=""}})},getLast(t=0,i){var l,h;return this.items?Math.min(i?((l=this.columns||this.items[0])==null?void 0:l.length)||0:((h=this.items)==null?void 0:h.length)||0,t):0},getContentPosition(){if(this.content){const t=getComputedStyle(this.content),i=parseFloat(t.paddingLeft)+Math.max(parseFloat(t.left)||0,0),l=parseFloat(t.paddingRight)+Math.max(parseFloat(t.right)||0,0),h=parseFloat(t.paddingTop)+Math.max(parseFloat(t.top)||0,0),n=parseFloat(t.paddingBottom)+Math.max(parseFloat(t.bottom)||0,0);return{left:i,right:l,top:h,bottom:n,x:i+l,y:h+n}}return{left:0,right:0,top:0,bottom:0,x:0,y:0}},setSize(){if(this.element){const t=this.isBoth(),i=this.isHorizontal(),l=this.element.parentElement,h=this.scrollWidth||`${this.element.offsetWidth||l.offsetWidth}px`,n=this.scrollHeight||`${this.element.offsetHeight||l.offsetHeight}px`,o=(u,c)=>this.element.style[u]=c;t||i?(o("height",n),o("width",h)):o("height",n)}},setSpacerSize(){const t=this.items;if(t){const i=this.isBoth(),l=this.isHorizontal(),h=this.getContentPosition(),n=(o,u,c,e=0)=>this.spacerStyle={...this.spacerStyle,[`${o}`]:(u||[]).length*c+e+"px"};i?(n("height",t,this.itemSize[0],h.y),n("width",this.columns||t[1],this.itemSize[1],h.x)):l?n("width",this.columns||t,this.itemSize,h.x):n("height",t,this.itemSize,h.y)}},setContentPosition(t){if(this.content&&!this.appendOnly){const i=this.isBoth(),l=this.isHorizontal(),h=this.rtl&&l,n=t?t.first:this.first,o=(c,e)=>c*e,u=(c=0,e=0)=>{const f=h?-c:c;this.contentStyle={...this.contentStyle,transform:`translate3d(${f}px, ${e}px, 0)`}};if(i){const c=n.rows,e=n.cols,f=this.itemSize;u(o(e,f[1]),o(c,f[0]))}else{const c=n,e=this.itemSize,f=o(c,e);l?u(f,0):u(0,f)}}},onScrollPositionChange(t){const i=t.target,l=this.isBoth(),h=this.isHorizontal(),n=this.rtl&&h,o=this.getContentPosition(),u=(S,y)=>S?S>y?S-y:S:0,c=(S,y)=>Math.floor(S/(y||S)),e=u(i.scrollTop,o.top);let f=u(i.scrollLeft,o.left);n&&f<0&&(f=Math.abs(f));let p=l?{rows:0,cols:0}:0,g=this.last,H=!1,N=this.lastScrollPos;if(l){const S=this.lastScrollPos.top<=e,y=this.lastScrollPos.left<=f;if(!this.appendOnly||this.appendOnly&&(S||y)){const k={rows:c(e,this.itemSize[0]),cols:c(f,this.itemSize[1])},E={rows:this.calculateTriggerIndex(k.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],S),cols:this.calculateTriggerIndex(k.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],y)};p={rows:this.calculateFirst(k.rows,E.rows,this.first.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0],S),cols:this.calculateFirst(k.cols,E.cols,this.first.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],y,!0)},g={rows:this.calculateLast(k.rows,p.rows,this.last.rows,this.numItemsInViewport.rows,this.d_numToleratedItems[0]),cols:this.calculateLast(k.cols,p.cols,this.last.cols,this.numItemsInViewport.cols,this.d_numToleratedItems[1],!0)},H=p.rows!==this.first.rows||g.rows!==this.last.rows||p.cols!==this.first.cols||g.cols!==this.last.cols||this.isRangeChanged,N={top:e,left:i.scrollLeft}}}else{const S=h?f:e,y=this.lastScrollPos<=S;if(!this.appendOnly||this.appendOnly&&y){const k=c(S,this.itemSize),E=this.calculateTriggerIndex(k,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,y);p=this.calculateFirst(k,E,this.first,this.last,this.numItemsInViewport,this.d_numToleratedItems,y),g=this.calculateLast(k,p,this.last,this.numItemsInViewport,this.d_numToleratedItems),H=p!==this.first||g!==this.last||this.isRangeChanged,N=S}}return{first:p,last:g,isRangeChanged:H,scrollPos:N}},calculateTriggerIndex(t,i,l,h,n,o){return t<=n?n:o?l-h-n:i+n-1},calculateFirst(t,i,l,h,n,o,u,c=!1){if(t<=o)return 0;const e=Math.max(0,u?t<i?l:t-o:t>i?l:t-2*o),f=this.getLast(e,c);return e>f?f-n:e},calculateLast(t,i,l,h,n,o=!1){let u=i+h+2*n;return t>=n&&(u+=n+1),this.getLast(u,o)},onScrollChange(t){var o,u;const{first:i,last:l,isRangeChanged:h,scrollPos:n}=this.onScrollPositionChange(t);if(h){const c={first:i,last:l};if(this.setContentPosition(c),this.first=i,this.last=l,this.lastScrollPos=n,this.$emit("scroll-index-change",c),this.lazy&&this.isPageChanged(i)){const e={first:this.step?Math.min(this.getPageByFirst(i)*this.step,(((o=this.items)==null?void 0:o.length)||0)-this.step):i,last:Math.min(this.step?(this.getPageByFirst(i)+1)*this.step:l,((u=this.items)==null?void 0:u.length)-1||0)};(this.lazyLoadState.first!==e.first||this.lazyLoadState.last!==e.last)&&this.$emit("lazy-load",e),this.lazyLoadState=e}}},onScroll(t){if(this.$emit("scroll",t),this.delay){if(this.scrollTimeout&&clearTimeout(this.scrollTimeout),this.isPageChanged()){if(!this.d_loading&&this.showLoader){const{isRangeChanged:i}=this.onScrollPositionChange(t);(i||(this.step?this.isPageChanged():!1))&&(this.d_loading=!0)}this.scrollTimeout=setTimeout(()=>{this.onScrollChange(t),this.d_loading&&this.showLoader&&(!this.lazy||this.loading===void 0)&&(this.d_loading=!1,this.page=this.getPageByFirst())},this.delay)}}else this.onScrollChange(t)},onResize(){this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(()=>{if(qt(this.element)){const t=this.isBoth(),i=this.isVertical(),l=this.isHorizontal(),[h,n]=[pt(this.element),vt(this.element)],[o,u]=[h!==this.defaultWidth,n!==this.defaultHeight];(t?o||u:l?o:i?u:!1)&&(this.d_numToleratedItems=this.numToleratedItems,this.defaultWidth=h,this.defaultHeight=n,this.defaultContentWidth=pt(this.content),this.defaultContentHeight=vt(this.content),this.init())}},this.resizeDelay)},bindResizeListener(){this.resizeListener||(this.resizeListener=this.onResize.bind(this),window.addEventListener("resize",this.resizeListener),window.addEventListener("orientationchange",this.resizeListener))},unbindResizeListener(){this.resizeListener&&(window.removeEventListener("resize",this.resizeListener),window.removeEventListener("orientationchange",this.resizeListener),this.resizeListener=null)},getOptions(t){const i=(this.items||[]).length,l=this.isBoth()?this.first.rows+t:this.first+t;return{index:l,count:i,first:l===0,last:l===i-1,even:l%2===0,odd:l%2!==0}},getLoaderOptions(t,i){const l=this.loaderArr.length;return{index:t,count:l,first:t===0,last:t===l-1,even:t%2===0,odd:t%2!==0,...i}},getPageByFirst(t){return Math.floor(((t??this.first)+this.d_numToleratedItems*4)/(this.step||1))},isPageChanged(t){return this.step&&!this.lazy?this.page!==this.getPageByFirst(t??this.first):!0},setContentEl(t){this.content=t||this.content||me(this.element,'[data-pc-section="content"]')},elementRef(t){this.element=t},contentRef(t){this.content=t}}},Me=["tabindex"];function Be(t,i,l,h,n,o){const u=we("SpinnerIcon");return t.disabled?(d(),v(at,{key:1},[ot(t.$slots,"default"),ot(t.$slots,"content",{items:t.items,rows:t.items,columns:o.loadedColumns})],64)):(d(),v("div",yt({key:0,ref:o.elementRef,class:o.containerClass,tabindex:t.tabindex,style:t.style},t.ptmi("root"),{onScroll:i[0]||(i[0]=(...c)=>o.onScroll&&o.onScroll(...c))}),[ot(t.$slots,"content",{styleClass:o.contentClass,items:o.loadedItems,getItemOptions:o.getOptions,loading:n.d_loading,getLoaderOptions:o.getLoaderOptions,itemSize:t.itemSize,rows:o.loadedRows,columns:o.loadedColumns,contentRef:o.contentRef,spacerStyle:n.spacerStyle,contentStyle:n.contentStyle,vertical:o.isVertical(),horizontal:o.isHorizontal(),both:o.isBoth()},()=>[T("div",yt({ref:o.contentRef,class:o.contentClass,style:n.contentStyle},t.ptm("content")),[(d(!0),v(at,null,Ot(o.loadedItems,(c,e)=>ot(t.$slots,"item",{key:e,item:c,options:o.getOptions(e)})),128))],16)]),t.showSpacer?(d(),v("div",yt({key:0,class:"p-virtualscroller-spacer",style:n.spacerStyle},t.ptm("spacer")),null,16)):x("",!0),!t.loaderDisabled&&t.showLoader&&n.d_loading?(d(),v("div",yt({key:1,class:o.loaderClass},t.ptm("loader")),[t.$slots&&t.$slots.loader?(d(!0),v(at,{key:0},Ot(n.loaderArr,(c,e)=>ot(t.$slots,"loader",{key:e,options:o.getLoaderOptions(e,o.isBoth()&&{numCols:t.d_numItemsInViewport.cols})})),128)):x("",!0),ot(t.$slots,"loadingicon",{},()=>[B(u,yt({spin:"",class:"p-virtualscroller-loading-icon"},t.ptm("loadingIcon")),null,16)])],16)):x("",!0)],16,Me))}const Ve=Ut(Ce,[["render",Be]]),Re={viewBox:"0 0 20 20",width:"1.2em",height:"1.2em"};function He(t,i){return d(),v("svg",Re,i[0]||(i[0]=[T("path",{fill:"currentColor","fill-rule":"evenodd",d:"M14.707 12.707a1 1 0 0 1-1.414 0L10 9.414l-3.293 3.293a1 1 0 0 1-1.414-1.414l4-4a1 1 0 0 1 1.414 0l4 4a1 1 0 0 1 0 1.414","clip-rule":"evenodd"},null,-1)]))}const Oe=Xt({name:"heroicons-solid-chevron-up",render:He}),De={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function $e(t,i){return d(),v("svg",De,i[0]||(i[0]=[T("path",{fill:"currentColor",d:"M8 13.885q-.31 0-.54-.23t-.23-.54t.23-.539t.54-.23t.54.23t.23.54t-.23.539t-.54.23m4 0q-.31 0-.54-.23t-.23-.54t.23-.539t.54-.23t.54.23t.23.54t-.23.539t-.54.23m4 0q-.31 0-.54-.23t-.23-.54t.23-.539t.54-.23t.54.23t.23.54t-.23.539t-.54.23M5.616 21q-.691 0-1.153-.462T4 19.385V6.615q0-.69.463-1.152T5.616 5h1.769V3.308q0-.233.153-.386t.385-.153t.386.153t.153.386V5h7.154V3.27q0-.214.143-.358t.357-.143t.356.143t.144.357V5h1.769q.69 0 1.153.463T20 6.616v12.769q0 .69-.462 1.153T18.384 21zm0-1h12.769q.23 0 .423-.192t.192-.424v-8.768H5v8.769q0 .23.192.423t.423.192M5 9.615h14v-3q0-.23-.192-.423T18.384 6H5.616q-.231 0-.424.192T5 6.616zm0 0V6z"},null,-1)]))}const Fe=Xt({name:"material-symbols-light-date-range-outline-rounded",render:$e});var Gt=(t=>(t[t.HEIGHT=8]="HEIGHT",t[t.WIDTH=150]="WIDTH",t))(Gt||{});const We={key:0,class:"p-2 flex flex-col gap-2 border-b-[1px] border-color"},Ae={key:0,class:"flex flex-row gap-6 items-center w-full"},Ne={key:1,class:"w-full pr-3"},Ee={class:"flex gap-2 items-center justify-between absolute z-21 top-2 left-0 w-full h-[50px] px-[calc(16px+0.5rem)] pointer-events-none"},je={class:"h-full flex flex-1 items-center justify-start gap-2"},qe={class:"h-full flex flex-1 items-center justify-center"},Ye={class:"flex flex-1 items-center justify-end"},Ze={key:0,class:"flex gap-2 items-center justify-between absolute z-21 bottom-safe-offset-2 left-0 w-full h-[50px] px-[calc(16px+0.5rem)] pointer-events-none"},Ue={class:"h-full flex flex-1 items-center justify-start"},Xe={key:0,class:"text-xs font-semibold"},Ge={key:1,class:"text-xs font-semibold"},Je=["data-future-tick"],Qe=["width"],Ke=["width","height","rx","ry"],ts={class:"absolute pl-6 h-full w-full items-center flex"},es={key:0,class:"text-xs leading-none w-[60px]"},ss={key:1,class:"flex flex-col items-center justify-end h-full"},is={class:"absolute bottom-0 pb-6 h-full w-full items-center justify-end flex flex-col"},ls={key:0,class:"text-xs leading-none h-[12px]"},os=["height"],ns=["width","height","rx","ry"],Lt=100,as=Se({__name:"CuiTimeline",props:{type:{default:"vertical"},height:{default:"100%"},flatCard:{type:Boolean},showDate:{type:Boolean,default:!0},showZoom:{type:Boolean,default:!0},showSegments:{type:Boolean,default:!0},transparent:{type:Boolean,default:!1},overlayClass:{},overlayStyle:{},darkMode:{type:Boolean}},emits:["date-change","scroll","scrolling"],setup(t,{emit:i}){const l=ve(),{t:h}=xe(),{isTouch:n}=ge(),{mdBreakpoint:o}=ye(),u=i,c=t,{type:e,flatCard:f,showDate:p,showZoom:g,showSegments:H,height:N,transparent:S,overlayClass:y,overlayStyle:k,darkMode:E}=Te(c),$=Rt("timelineRef"),F=Rt("datePickerRef"),rt=Rt("virtualScrollerRef"),wt=L("timeline"),St=L(0),Tt=L(!1),ct=L(!1),bt=L(!1),W=L(0),ht=L(!1),Jt=L([{key:"timeline",label:h("views.camera.timeline")},{key:"detections",label:h("views.camera.detections")}]);let Dt;const zt=L(z()),O=L(z()),Y=L(z()),V=L(z()),ut=L(!1),Ct=L(0),U=L(0),$t=be({scrollStartTime:z(),scrollStartY:0,scrollStartRotateOffset:0,setScrollReference(r,a){this.scrollStartTime=z(),this.scrollStartY=r,this.scrollStartRotateOffset=a}}),Ft=q(()=>{var r;return(r=rt.value)==null?void 0:r.element}),{y:C,x:M,isScrolling:Qt}=ke(Ft),Wt=Ie($),Kt=_e(()=>{if(Ct.value++,e.value==="vertical"?C.value===0:M.value===0){U.value=Ct.value;const a=new Date(zt.value.getTime()+U.value*1e3);Y.value=z(a),O.value=z(a),bt.value||(V.value=lt(Y.value))}else!Q.value&&!ht.value&&U.value++},1e3,{immediate:!1}),te=q(()=>{const r={body:{class:"w-full h-full p-0 overflow-hidden"},content:{class:"h-full"},root:{class:{},style:{height:N.value}}};return f.value&&(r.root.class={...r.root.class,"!rounded-none !border-0":!0}),r}),ee=q(()=>{var b,w;const r=V.value.getDay(),a=V.value.getMonth();return`${(b=l.config.locale)==null?void 0:b.dayNames[r]}, ${(w=l.config.locale)==null?void 0:w.monthNames[a]} ${gt(V.value,"YY")}`}),se=q(()=>{var a;const r=V.value.getMonth();return`${gt(V.value,"D")}. ${(a=l.config.locale)==null?void 0:a.monthNamesShort[r]}`}),J=q(()=>{const r=[{zoom:0,labelTick:5,bigTick:5,duration:6e5},{zoom:2,labelTick:15,bigTick:5,duration:9e5},{zoom:4,labelTick:16,bigTick:4,duration:12e4},{zoom:6,labelTick:15,bigTick:5,duration:6e4},{zoom:8,labelTick:30,bigTick:10,duration:3e4}],a=r.find(et=>et.zoom===W.value)??r[0],b=a.labelTick,w=a.bigTick,I=a.duration,j=I/b,tt=j/Z.value,dt=Z.value/(I/1e3/b);return{bigTickInterval:w,labelInterval:b,duration:I,timeMsPerTick:j,timeMsPerPx:tt,pxPerSecond:dt}}),Q=q(()=>Qt.value||Tt.value||ct.value),Z=q(()=>Gt.HEIGHT+W.value),R=q(()=>e.value==="vertical"?C.value===0:M.value===0),ie=q(()=>{if(bt.value)return lt()}),At=q(()=>{const r=J.value,a=[],b=r.timeMsPerTick;let w;e.value==="vertical"?w=Wt.height.value/Z.value*2+St.value:w=Wt.width.value/Z.value*2+St.value;const I=z(zt.value).getTime(),j=z(zt.value),tt=Lt*r.timeMsPerPx;j.setMilliseconds(j.getMilliseconds()+tt);const dt=U.value*1e3,et=Math.ceil(dt/r.timeMsPerTick),Mt=-et;let xt=w-et;if(ut.value){const _=Y.value.getTime()-V.value.getTime(),st=Math.ceil(_/r.timeMsPerTick);xt+=st}for(let _=Mt;_<xt;_++){const st=_%r.labelInterval===0,kt=_%r.bigTickInterval===0,X=Math.abs(_)*b,P=z(j);_<0?P.setMilliseconds(P.getMilliseconds()+X):P.setMilliseconds(P.getMilliseconds()-X);const mt=P.getTime()>I,Bt=P.getHours().toString().padStart(2,"0"),m=P.getMinutes().toString().padStart(2,"0");let It=`${Bt}:${m}`;if(W.value>=4){const ft=P.getSeconds().toString().padStart(2,"0");It+=`:${ft}`}let it;e.value,mt?it=-((P.getTime()-I)/r.timeMsPerPx):it=(I-P.getTime())/r.timeMsPerPx,it+=U.value*r.pxPerSecond,a.push({index:_,time:It,timestamp:P.getTime(),position:it,isLabelTick:st,isMediumTick:kt,isFutureTick:mt})}return a});nt(o,r=>{r?W.value=2:W.value=0},{immediate:!0}),nt(V,r=>{if(lt(r).getTime()===lt(Y.value).getTime()){e.value==="vertical"?C.value=0:M.value=0;return}const a=lt(r),b=lt(Y.value);ut.value=a.getTime()<b.getTime(),Pt(Et)}),nt([C,M],([r,a],[b,w])=>{const I=e.value==="vertical"?r:a,j=e.value==="vertical"?b:w;I===0&&(ut.value=!1),j===0&&I!==0&&$t.setScrollReference(I,U.value),u("scroll",I)},{immediate:!0}),Yt(()=>{u("scrolling",Q.value)}),nt(W,async()=>{if(R.value)return;clearTimeout(Dt),ht.value=!0;const r=new Date(O.value);Ct.value=0,U.value=0,e.value==="vertical"?C.value=0:M.value=0,zt.value=z(),Y.value=z(),O.value=r,V.value=r,Dt=setTimeout(()=>{ht.value=!1},1e3)}),nt(O,(r,a)=>{if(ht.value&&r.getTime()!==a.getTime()){O.value=new Date(a.getTime());return}}),Yt(()=>{if(!ht.value){if(R.value)O.value=z();else{const r=U.value-$t.scrollStartRotateOffset,b=(e.value==="vertical"?C.value:-M.value)*J.value.timeMsPerPx,w=r*1e3;O.value=z(new Date(Y.value.getTime()-b+w))}u("date-change",R.value?"live":z(O.value))}}),nt(e,()=>{const r=z(O.value);Pt(()=>Et(r))});const le=r=>{St.value=r.first},oe=r=>{var a;(a=F.value)==null||a.hide(),!(r.getTime()>new Date().getTime())&&(V.value=r)},Nt=()=>{V.value=z(Y.value),ut.value=!1,e.value==="vertical"?C.value=0:M.value=0},Et=r=>{if(!ut.value&&!r){e.value==="vertical"?C.value=0:M.value=0;return}const a=r||z(V.value),w=(Y.value.getTime()-a.getTime())/J.value.timeMsPerPx;e.value==="vertical"?(M.value=0,Pt(()=>C.value=w)):(C.value=0,Pt(()=>M.value=-w))},ne=()=>{Pe(Ft,{threshold:10,pointerTypes:["mouse"],onSwipeStart(){Tt.value=!0},onSwipe(r){if(e.value==="vertical"){if(r.movementY<0){const a=Math.ceil(C.value+J.value.pxPerSecond);C.value=a}else if(r.movementY>0){const a=Math.floor(C.value-J.value.pxPerSecond);C.value=a||0}}else if(r.movementX<0){const a=Math.ceil(M.value+J.value.pxPerSecond);M.value=a}else if(r.movementX>0){const a=Math.floor(M.value-J.value.pxPerSecond);M.value=a||0}},onSwipeEnd(){Tt.value=!1}})};return ze(()=>{n.value||ne(),Kt.resume()}),(r,a)=>{const b=Fe,w=ce,I=he,j=ue,tt=Oe,dt=Ve,et=ae,Mt=de,xt=re;return d(),v("div",null,[B(et,{class:D(["cui-card !rounded-md",{"bg-transparent !border-0":s(S)}]),pt:s(te)},{content:A(()=>{var _,st,kt;return[T("div",{class:D(["w-full h-full flex flex-col",{"dark-mode":s(E)}])},[s(e)==="vertical"&&(s(p)&&!s(o)||s(g)||s(H))?(d(),v("div",We,[s(p)&&!s(o)||s(g)?(d(),v("div",Ae,[s(p)&&!s(o)?(d(),G(w,{key:0,text:"",disabled:s(Q),severity:"secondary",label:s(ee),class:"cui-button-small shrink-0 pointer-events-auto",onClick:(_=s(F))==null?void 0:_.toggle},{icon:A(()=>[B(b)]),_:1},8,["disabled","label","onClick"])):x("",!0),s(g)?(d(),v("div",Ne,[B(I,{modelValue:s(W),"onUpdate:modelValue":a[0]||(a[0]=X=>Zt(W)?W.value=X:null),step:2,max:8,min:0,class:"flex-1 pointer-events-auto"},null,8,["modelValue"])])):x("",!0)])):x("",!0),s(H)?(d(),G(j,{key:1,modelValue:s(wt),"onUpdate:modelValue":a[1]||(a[1]=X=>Zt(wt)?wt.value=X:null),options:s(Jt),"option-label":"label","option-value":"key",pt:{pcToggleButton:{root:{class:"w-full"}}},"allow-empty":!1,class:"flex justify-stretch pointer-events-auto"},null,8,["modelValue","options"])):x("",!0)])):x("",!0),T("div",{ref_key:"timelineRef",ref:$,class:D(["w-full h-full relative pointer-events-auto",{"hide-scrollbar overflow-x-scroll disable-overflow-scroll":s(e)==="horizontal"}])},[T("div",{class:D(["absolute w-full h-full pointer-events-none z-10",[s(y),{"timeline-overlay-vertical":s(e)==="vertical","timeline-overlay-horizontal !z-0":s(e)==="horizontal"}]]),style:K([s(k)])},null,6),T("div",Ee,[T("div",je,[s(p)&&s(e)==="horizontal"?(d(),G(w,{key:0,rounded:"",severity:"secondary",disabled:s(Q),class:"cui-button-small shadow-md pointer-events-auto shrink-0",onClick:(st=s(F))==null?void 0:st.toggle},{icon:A(()=>[B(b,{width:"100%",height:"100%"})]),_:1},8,["disabled","onClick"])):x("",!0),B(Ht,{name:"fade"},{default:A(()=>[!s(R)&&s(e)==="horizontal"?(d(),G(w,{key:0,fluid:"",severity:"secondary",class:"flex items-center justify-center cui-button-small shadow-md align-middle p-2 !text-xs pointer-events-auto",label:s(gt)(s(O))},null,8,["label"])):x("",!0)]),_:1})]),T("div",qe,[B(Ht,{name:"fade"},{default:A(()=>[!s(R)&&s(e)==="vertical"?(d(),G(w,{key:0,rounded:"",disabled:s(Q),class:"cui-icon-md shadow-md pointer-events-auto",onClick:Nt},{icon:A(()=>[B(tt,{width:"100%",height:"100%"})]),_:1},8,["disabled"])):x("",!0)]),_:1})]),T("div",Ye,[B(Ht,{name:"fade"},{default:A(()=>[s(R)?x("",!0):(d(),v(at,{key:0},[s(e)==="vertical"?(d(),G(w,{key:0,fluid:"",severity:"secondary",class:"flex items-center justify-center cui-button-small shadow-md align-middle p-2 !text-xs",label:s(gt)(s(O))},null,8,["label"])):(d(),G(w,{key:1,rounded:"",disabled:s(Q),class:"cui-icon-md shadow-md pointer-events-auto rotate-90",onClick:Nt},{icon:A(()=>[B(tt,{width:"100%",height:"100%"})]),_:1},8,["disabled"]))],64))]),_:1})])]),s(e)==="vertical"?(d(),v("div",Ze,[T("div",Ue,[s(p)&&s(o)?(d(),G(w,{key:0,severity:"secondary",disabled:s(Q),label:s(se),class:"cui-button-small shadow-md pointer-events-auto",onClick:(kt=s(F))==null?void 0:kt.toggle},{icon:A(()=>[B(b)]),_:1},8,["disabled","label","onClick"])):x("",!0)]),a[9]||(a[9]=T("div",{class:"h-full flex flex-1 items-center justify-center"},null,-1)),a[10]||(a[10]=T("div",{class:"h-full flex flex-1 items-center justify-end"},null,-1))])):x("",!0),T("div",{class:D(["absolute z-20 pointer-events-none",{"bg-primary-500":s(R)&&s(e)==="vertical","bg-sky-500":!s(R)&&s(e)==="vertical","bg-gradient-to-t from-primary-500 to-transparent":s(R)&&s(e)==="horizontal","bg-gradient-to-t from-sky-500 to-transparent":!s(R)&&s(e)==="horizontal","h-[2px] w-full":s(e)==="vertical","w-[2px] h-full":s(e)==="horizontal"}]),style:K(s(e)==="vertical"?{top:`${Lt}px`}:{right:`${Lt}px`})},[T("span",{class:D(["absolute rounded-xl text-white text-xs inline-flex items-center justify-center p-2",{"bg-primary-500":s(R),"bg-sky-500":!s(R),"left-[calc(16px+0.25rem)] h-[32px] w-[60px] -top-[16px]":s(e)==="vertical","bottom-[calc(12px+0.25rem)] w-[60px] h-[32px] -left-[30px]":s(e)==="horizontal"}])},[s(R)?(d(),v("span",Xe,_t(s(h)("components.timeline.live")),1)):(d(),v("span",Ge,_t(s(gt)(s(O),"HH:mm:ss")),1))],2)],6),B(dt,{ref_key:"virtualScrollerRef",ref:rt,items:s(At),"item-size":s(Z),"num-tolerated-items":10,orientation:s(e),"show-spacer":s(e)!=="horizontal","scroll-width":"100%","scroll-height":"100%",class:"overscroll-none",dir:s(e)==="horizontal"?"rtl":"ltr",rtl:s(e)==="horizontal",lazy:"",onLazyLoad:le},{content:A(({items:X,styleClass:P,contentStyle:mt,contentRef:Bt})=>[s(wt)==="timeline"?(d(),v("div",{ref:Bt,key:s(W),class:D(P),style:K([mt,{cursor:s(Tt)?"grabbing":"grab"}]),dir:"ltr",onTouchstart:a[2]||(a[2]=m=>ct.value=!0),onTouchmove:a[3]||(a[3]=m=>ct.value=!0),onTouchend:a[4]||(a[4]=m=>ct.value=!1),onTouchcancel:a[5]||(a[5]=m=>ct.value=!1)},[(d(!0),v(at,null,Ot(X,(m,It)=>(d(),v("div",{key:`${It}-${m.index}-${s(W)}-${m.time}`,class:D(["absolute text-muted-color select-none",{"w-full flex h-[2px]":s(e)==="vertical","h-full flex flex-col w-[2px]":s(e)==="horizontal"}]),style:K({[s(e)==="vertical"?"top":"right"]:`${m.position-s(St)*s(Z)+Lt}px`}),"data-future-tick":m.isFutureTick},[s(e)==="vertical"?(d(),v(at,{key:0},[(d(),v("svg",{width:m.isLabelTick?16:m.isMediumTick?8:4,height:"2",class:D(["ml-1",{"opacity-50":!m.isLabelTick}]),preserveAspectRatio:"xMidYMid meet"},[T("rect",{x:"0",y:"0",width:m.isLabelTick?16:m.isMediumTick?8:4,height:m.isLabelTick?2:1,fill:"currentColor",rx:m.isLabelTick?1.5:.5,ry:m.isLabelTick?1.5:.5},null,8,Ke)],10,Qe)),T("div",ts,[m.isLabelTick?(d(),v("span",es,_t(m.time),1)):x("",!0),T("div",{class:D(["w-[8px] bg-primary/10 ml-[calc(60px+2rem)]",{"!ml-8":m.isLabelTick}]),style:K({height:`${s(Z)}px`})},null,6)])],64)):(d(),v("div",ss,[T("div",is,[T("div",{class:D(["h-[8px] bg-primary/10 mb-[calc(12px+2rem)]",{"!mb-8":m.isLabelTick}]),style:K({width:`${s(Z)}px`})},null,6),m.isLabelTick?(d(),v("span",ls,_t(m.time),1)):x("",!0)]),(d(),v("svg",{width:"2",height:m.isLabelTick?16:m.isMediumTick?8:4,class:D(["mb-1",{"opacity-50":!m.isLabelTick}]),preserveAspectRatio:"xMidYMid meet"},[T("rect",{x:"0",y:"0",width:m.isLabelTick?2:1,height:m.isLabelTick?16:m.isMediumTick?8:4,fill:"currentColor",rx:m.isLabelTick?1.5:.5,ry:m.isLabelTick?1.5:.5},null,8,ns)],10,os))]))],14,Je))),128))],38)):x("",!0),s(e)==="horizontal"?(d(),v("div",{key:1,class:"p-virtualscroller-spacer right-0 left-auto","data-pc-section":"spacer",style:K({width:`${s(At).length*s(Z)}px`})},null,4)):x("",!0)]),_:1},8,["items","item-size","orientation","show-spacer","dir","rtl"])],2)],2)]}),_:1},8,["class","pt"]),B(xt,{ref_key:"datePickerRef",ref:F,class:"border-none",pt:{content:{class:"p-0"}},onShow:a[7]||(a[7]=_=>bt.value=!0),onHide:a[8]||(a[8]=_=>bt.value=!1)},{default:A(()=>[B(Mt,{inline:"","model-value":s(V),"hour-format":"12","show-time":"","max-date":s(ie),"clear-button-props":{class:"hidden"},class:"hover:text-primary active:text-primary focus:text-primary text-muted-color","input-class":{"p-0":s(o)},pt:{pcInputText:{root:{class:"text-sm !text-color"}},inputIconContainer:{class:"transition-all text-current"}},onValueChange:a[6]||(a[6]=_=>oe(_))},null,8,["model-value","max-date","input-class"])]),_:1},512)])}}}),ps=Ut(as,[["__scopeId","data-v-2a65578b"]]);export{ps as _};
@@ -1 +1 @@
1
- import{x as G,b as H,y as K,z as Q}from"./primevue.D46ZuvwF.0.0.68.js";import{R as j}from"./vue-inline-svg.Cs3JM1Xv.0.0.68.js";import{r as Y}from"./backup.c02LfP0p.0.0.68.js";import{r as ee}from"./system.DR4q1Efj.0.0.68.js";import{u as te,a as se,b as ae,g as E,d as L,c as oe}from"./main.DFrvmqIm.0.0.68.js";import le from"./SettingsAccount.yU9K84JX.0.0.68.js";import{_ as re}from"./SettingsAppearance.vue_vue_type_script_setup_true_lang.BdAbLjHL.0.0.68.js";import{u as ie}from"./vue-i18n.Y-6ZUvD7.0.0.68.js";import{s as ne}from"./pinia.olzLQsIJ.0.0.68.js";import{l as ce}from"./@vueuse.DWVBY8Dk.0.0.68.js";import{B as me,r as y,ac as I,z as N,k as T,C as ue,c as k,d as p,e as r,R as c,M as S,O as pe,h as s,I as f,X as fe,Z as de,N as d,W as ge,f as ve,P as _e}from"./@vue.BxBKarQv.0.0.68.js";import"./@primeuix.bRNqZjQz.0.0.68.js";import"./@primevue.CLjOf_2A.0.0.68.js";import"./@tanstack.BsYRTdPr.0.0.68.js";import"./axios.lj9VQs0f.0.0.68.js";import"./vue-router.MLvizfYT.0.0.68.js";import"./vee-validate.Cs2kJt5l.0.0.68.js";import"./@vee-validate.CnnpXP1B.0.0.68.js";import"./zod.2bfLsWMZ.0.0.68.js";import"./uuid.C6aID195.0.0.68.js";import"./socket.io-client.CkWaqEUv.0.0.68.js";import"./engine.io-client.2TmvK6nU.0.0.68.js";import"./engine.io-parser.BiEtp6m2.0.0.68.js";import"./@socket.io.Dkula2eQ.0.0.68.js";import"./socket.io-parser.DsT87Oon.0.0.68.js";import"./rxjs.Cfd_7YyY.0.0.68.js";import"./tslib.9k7AwCpt.0.0.68.js";import"./highlight.js.CO9Od8yG.0.0.68.js";import"./@xterm.D6FDnMLM.0.0.68.js";import"./markdown-it.Dk__mw4Y.0.0.68.js";import"./mdurl.k9Sl0PQj.0.0.68.js";import"./uc.micro.kMc2yuuw.0.0.68.js";import"./entities.C20TfXL6.0.0.68.js";import"./linkify-it.IDZgcRNT.0.0.68.js";import"./punycode.js.Dj65hjkv.0.0.68.js";import"./qrcode.jcsj5TWj.0.0.68.js";import"./dijkstrajs.C00ieaqj.0.0.68.js";import"./draggabilly.BWcG_hBx.0.0.68.js";import"./get-size.D1dS-IaP.0.0.68.js";import"./unidragger.BlN8nuro.0.0.68.js";import"./ev-emitter.X5f1qa-c.0.0.68.js";import"./vue-zoomable.kygNhD9X.0.0.68.js";import"./primelocale.Bga3dOQu.0.0.68.js";import"./nprogress.BvTTegtH.0.0.68.js";import"./@intlify.6ljJeWIl.0.0.68.js";const be={class:"flex flex-col gap-4 p-4 w-full max-w-3xl mx-auto"},he={class:"dark-mode flex items-center justify-between"},we={class:"flex flex-col gap-4"},xe={class:"text-3xl font-semibold text-white my-2"},ye={class:"text-sm text-white/80"},ke={class:"flex space-x-2"},Se={class:"w-full flex flex-col justify-center items-center gap-6"},Re={class:"text-muted"},Ce={class:"flex flex-row items-center justify-center gap-2"},Fe={class:"max-w-[375px] text-center text-muted"},$e={key:0},Ie={class:"text-center text-muted max-w-[375px] my-3"},Te={class:"flex flex-row items-center justify-center gap-2"},Be={class:"w-full flex flex-col justify-center items-center gap-6"},ze={class:"text-center text-muted"},Rt=me({__name:"FirstSteps",setup(De){const g=te(),P=se(),v=oe(),{t:u}=ie(),{loginLoading:R}=ne(g),_=y(["welcome","appearance","account","finish"]),B=I("accountFormRef"),C=I("mobileStepperRef"),z=I("backupFileInputRef"),D=N(),F=N(),i=y(0),w=y(!1),x=y(),q=ce(C),b=T(()=>w.value||R.value),M=T(()=>ae(void 0,"master")),h=T(()=>{var e;return(e=B.value)==null?void 0:e.formRef});ue(()=>{i.value===2&&(x.value=void 0)});const $=async()=>{var e,t,a,n,o;if(i.value<_.value.length-1)if(i.value===2){const m=(e=h.value)==null?void 0:e.getValues();if(m){if(!m.password||!m.passwordConfirm){(t=h.value)==null||t.setFieldError("password","Required"),(a=h.value)==null||a.setFieldError("passwordConfirm","Required");return}if(!m.username){(n=h.value)==null||n.setFieldError("username","Required");return}}const l=await((o=h.value)==null?void 0:o.validate());l!=null&&l.valid?(x.value=L(m),i.value++):l!=null&&l.valid||(v.add({severity:"error",summary:u("components.toast.title_error"),detail:u("components.toast.validation_failed"),life:3e3}),console.log("Validation failed",l))}else i.value++},O=()=>{i.value>0&&i.value--},U=async()=>{var e,t;try{await g.logout()}catch(a){console.error(((t=(e=a.response)==null?void 0:e.data)==null?void 0:t.message)??a.message??a)}},A=()=>{var e;(e=z.value)==null||e.click()},J=e=>{const t=e.target;t.files&&t.files[0]&&(F.value=t.files[0],P.openTextDialog({data:{title:u("components.dialog.title.confirm"),confirmText:u("components.form.button.restore_and_restart"),contentText:u("components.dialog.message.confirm_restore"),loading:b},onConfirm:W})),t.value=""},W=async()=>{var e,t,a,n;if(w.value=!0,!F.value){w.value=!1;return}try{const o=new FormData;o.append("upload",F.value);const m=await Y(o);X(m),v.add({severity:"success",summary:u("components.toast.title_success"),detail:u("components.toast.backup_restored"),life:3e3}),ee(),g.logout()}catch(o){v.add({severity:"error",summary:u("components.toast.title_error"),detail:((t=(e=o.response)==null?void 0:e.data)==null?void 0:t.message)??o.message??o,life:3e3}),console.error(((n=(a=o.response)==null?void 0:a.data)==null?void 0:n.message)??o.message??o),w.value=!1}},X=e=>{e.theme&&localStorage.setItem("theme",JSON.stringify(e.theme)),e.locale&&localStorage.setItem("locale",e.locale),e.ui&&localStorage.setItem("ui",JSON.stringify(e.ui))},Z=async()=>{var a,n,o,m;if(!x.value){v.add({severity:"error",summary:u("components.toast.title_error"),detail:u("components.toast.validation_failed"),life:3e3}),console.log("Validation failed, no values set!");return}let e;const t=L(x.value);t.firstLogin=!1,delete t.upload;try{R.value=!0,D.value&&(e=new FormData,e.append("upload",D.value)),await g.updateUser(t,e),g.logout()}catch(l){v.add({severity:"error",summary:u("components.toast.title_error"),detail:((n=(a=l.response)==null?void 0:a.data)==null?void 0:n.message)??l.message??l,life:3e3}),console.error(((m=(o=l.response)==null?void 0:o.data)==null?void 0:m.message)??l.message??l)}finally{R.value=!1}};return(e,t)=>{const a=H,n=Q,o=K,m=G;return p(),k("div",null,[r("div",{ref_key:"mobileStepperRef",ref:C,class:"fixed top-0 left-0 right-0 z-10 bg-primary-600 pl-safe pt-safe pr-safe draggable-region"},[r("div",be,[r("div",he,[s(i)===0?(p(),S(a,{key:0,class:"cui-button-small text-white non-draggable-region border-[1px] border-white/10",label:e.$t("components.form.button.logout"),onClick:U},null,8,["label"])):(p(),S(a,{key:1,class:"cui-button-small text-white non-draggable-region border-[1px] border-white/10",label:e.$t("components.form.button.previous"),onClick:O},null,8,["label"])),s(i)!==0&&s(i)!==s(_).length-1?(p(),S(a,{key:2,class:"cui-button-small text-white non-draggable-region border-[1px] border-white/10",label:e.$t("components.form.button.next"),onClick:$},null,8,["label"])):pe("",!0)]),r("div",we,[r("h1",xe,f(e.$t(`views.firststeps.step_${s(_)[s(i)]}`)),1),r("div",ye,f(Math.round((s(i)+1)/s(_).length*100))+"% "+f(e.$t("views.firststeps.complete")),1),r("div",ke,[(p(!0),k(fe,null,de(s(_),(l,V)=>(p(),k("div",{key:V,class:_e(["h-1 rounded-full flex-grow",V<=s(i)?"bg-white":"bg-white/30"])},null,2))),128))])])])],512),c(m,{value:s(i),"onUpdate:value":t[0]||(t[0]=l=>ve(i)?i.value=l:null),class:"px-safe pb-safe",style:ge({paddingTop:s(C)?`calc(${s(q).height.value}px - env(safe-area-inset-top, 0px))`:"env(safe-area-inset-top, 0px)"}),lazy:""},{default:d(()=>[c(o,{class:"p-4 bg-transparent w-full max-w-3xl mx-auto mt-5"},{default:d(()=>[c(n,{value:0},{default:d(()=>[r("div",Se,[r("span",Re,f(e.$t("views.firststeps.welcome_to")),1),r("div",Ce,[c(s(j),{src:s(E)("logo_animated.svg"),width:"26px",height:"32px",title:"camera.ui","aria-label":"camera.ui"},null,8,["src"]),t[1]||(t[1]=r("span",{class:"text-4xl"},"camera.ui",-1))]),r("p",Fe,f(e.$t("views.firststeps.slogan")),1),s(M)?(p(),k("div",$e,[r("p",Ie,f(e.$t("views.firststeps.start_message")),1),r("div",Te,[c(a,{class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.new_installation"),onClick:$},null,8,["loading","label"]),c(a,{class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.from_backup"),onClick:A},null,8,["loading","label"])]),r("input",{ref_key:"backupFileInputRef",ref:z,type:"file",accept:"application/gzip, .tar, .tar.gz",class:"hidden",onChange:J},null,544)])):(p(),S(a,{key:1,class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.start"),onClick:$},null,8,["loading","label"]))])]),_:1}),c(n,{value:1},{default:d(()=>[c(re)]),_:1}),c(n,{value:2},{default:d(()=>[c(le,{ref_key:"accountFormRef",ref:B,firststeps:""},null,512)]),_:1}),c(n,{value:3},{default:d(()=>[r("div",Be,[c(s(j),{src:s(E)("logo_animated.svg"),width:"78px",height:"84px",title:"camera.ui","aria-label":"camera.ui"},null,8,["src"]),r("p",ze,f(e.$t("views.firststeps.finish_message")),1),c(a,{class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.enjoy"),onClick:Z},null,8,["loading","label"])])]),_:1})]),_:1})]),_:1},8,["value","style"])])}}});export{Rt as default};
1
+ import{x as G,b as H,y as K,z as Q}from"./primevue.BVVo-ukB.0.0.70.js";import{R as j}from"./vue-inline-svg.B52C1cW8.0.0.70.js";import{r as Y}from"./backup.CqN-DI7C.0.0.70.js";import{r as ee}from"./system.Ccn9lMgI.0.0.70.js";import{u as te,a as se,b as ae,g as E,d as L,c as oe}from"./main.D2NZuTnM.0.0.70.js";import le from"./SettingsAccount.2ETTD3p8.0.0.70.js";import{_ as re}from"./SettingsAppearance.vue_vue_type_script_setup_true_lang.D6sykhe2.0.0.70.js";import{u as ie}from"./vue-i18n.BLwVbi61.0.0.70.js";import{s as ne}from"./pinia.BeBGFuqK.0.0.70.js";import{l as ce}from"./@vueuse.T3qy5Jq4.0.0.70.js";import{B as me,r as y,ac as I,z as N,k as T,C as ue,c as k,d as p,e as r,R as c,M as S,O as pe,h as s,I as f,X as fe,Z as de,N as d,W as ge,f as ve,P as _e}from"./@vue.BsSvBeCe.0.0.70.js";import"./@primeuix.bRNqZjQz.0.0.70.js";import"./@primevue.DH9ak_9x.0.0.70.js";import"./@tanstack.Dk2rc1Gz.0.0.70.js";import"./axios.lj9VQs0f.0.0.70.js";import"./vue-router.BQuUBAAr.0.0.70.js";import"./vee-validate.DwwGVNzx.0.0.70.js";import"./@vee-validate.i4o6WINE.0.0.70.js";import"./zod.2bfLsWMZ.0.0.70.js";import"./uuid.C6aID195.0.0.70.js";import"./socket.io-client.DC_wUGxw.0.0.70.js";import"./engine.io-client.CnosWdRP.0.0.70.js";import"./engine.io-parser.BiEtp6m2.0.0.70.js";import"./@socket.io.Dkula2eQ.0.0.70.js";import"./socket.io-parser.ChgZ8FD_.0.0.70.js";import"./rxjs.UbFxmZ7q.0.0.70.js";import"./tslib.9k7AwCpt.0.0.70.js";import"./highlight.js.DTPofZhc.0.0.70.js";import"./@xterm.CJZZM5vf.0.0.70.js";import"./markdown-it.VQvmcJVu.0.0.70.js";import"./mdurl.k9Sl0PQj.0.0.70.js";import"./uc.micro.kMc2yuuw.0.0.70.js";import"./entities.C20TfXL6.0.0.70.js";import"./linkify-it.imhCvGRq.0.0.70.js";import"./punycode.js.Dj65hjkv.0.0.70.js";import"./qrcode.D7KqKQTM.0.0.70.js";import"./dijkstrajs.C00ieaqj.0.0.70.js";import"./draggabilly.Cuzjcd7v.0.0.70.js";import"./get-size.D1dS-IaP.0.0.70.js";import"./unidragger.DahEY3cm.0.0.70.js";import"./ev-emitter.X5f1qa-c.0.0.70.js";import"./vue-zoomable.Cq7IVJt5.0.0.70.js";import"./primelocale.Bga3dOQu.0.0.70.js";import"./nprogress.DuNJBXnf.0.0.70.js";import"./@intlify.6ljJeWIl.0.0.70.js";const be={class:"flex flex-col gap-4 p-4 w-full max-w-3xl mx-auto"},he={class:"dark-mode flex items-center justify-between"},we={class:"flex flex-col gap-4"},xe={class:"text-3xl font-semibold text-white my-2"},ye={class:"text-sm text-white/80"},ke={class:"flex space-x-2"},Se={class:"w-full flex flex-col justify-center items-center gap-6"},Re={class:"text-muted"},Ce={class:"flex flex-row items-center justify-center gap-2"},Fe={class:"max-w-[375px] text-center text-muted"},$e={key:0},Ie={class:"text-center text-muted max-w-[375px] my-3"},Te={class:"flex flex-row items-center justify-center gap-2"},Be={class:"w-full flex flex-col justify-center items-center gap-6"},ze={class:"text-center text-muted"},Rt=me({__name:"FirstSteps",setup(De){const g=te(),P=se(),v=oe(),{t:u}=ie(),{loginLoading:R}=ne(g),_=y(["welcome","appearance","account","finish"]),B=I("accountFormRef"),C=I("mobileStepperRef"),z=I("backupFileInputRef"),D=N(),F=N(),i=y(0),w=y(!1),x=y(),q=ce(C),b=T(()=>w.value||R.value),M=T(()=>ae(void 0,"master")),h=T(()=>{var e;return(e=B.value)==null?void 0:e.formRef});ue(()=>{i.value===2&&(x.value=void 0)});const $=async()=>{var e,t,a,n,o;if(i.value<_.value.length-1)if(i.value===2){const m=(e=h.value)==null?void 0:e.getValues();if(m){if(!m.password||!m.passwordConfirm){(t=h.value)==null||t.setFieldError("password","Required"),(a=h.value)==null||a.setFieldError("passwordConfirm","Required");return}if(!m.username){(n=h.value)==null||n.setFieldError("username","Required");return}}const l=await((o=h.value)==null?void 0:o.validate());l!=null&&l.valid?(x.value=L(m),i.value++):l!=null&&l.valid||(v.add({severity:"error",summary:u("components.toast.title_error"),detail:u("components.toast.validation_failed"),life:3e3}),console.log("Validation failed",l))}else i.value++},O=()=>{i.value>0&&i.value--},U=async()=>{var e,t;try{await g.logout()}catch(a){console.error(((t=(e=a.response)==null?void 0:e.data)==null?void 0:t.message)??a.message??a)}},A=()=>{var e;(e=z.value)==null||e.click()},J=e=>{const t=e.target;t.files&&t.files[0]&&(F.value=t.files[0],P.openTextDialog({data:{title:u("components.dialog.title.confirm"),confirmText:u("components.form.button.restore_and_restart"),contentText:u("components.dialog.message.confirm_restore"),loading:b},onConfirm:W})),t.value=""},W=async()=>{var e,t,a,n;if(w.value=!0,!F.value){w.value=!1;return}try{const o=new FormData;o.append("upload",F.value);const m=await Y(o);X(m),v.add({severity:"success",summary:u("components.toast.title_success"),detail:u("components.toast.backup_restored"),life:3e3}),ee(),g.logout()}catch(o){v.add({severity:"error",summary:u("components.toast.title_error"),detail:((t=(e=o.response)==null?void 0:e.data)==null?void 0:t.message)??o.message??o,life:3e3}),console.error(((n=(a=o.response)==null?void 0:a.data)==null?void 0:n.message)??o.message??o),w.value=!1}},X=e=>{e.theme&&localStorage.setItem("theme",JSON.stringify(e.theme)),e.locale&&localStorage.setItem("locale",e.locale),e.ui&&localStorage.setItem("ui",JSON.stringify(e.ui))},Z=async()=>{var a,n,o,m;if(!x.value){v.add({severity:"error",summary:u("components.toast.title_error"),detail:u("components.toast.validation_failed"),life:3e3}),console.log("Validation failed, no values set!");return}let e;const t=L(x.value);t.firstLogin=!1,delete t.upload;try{R.value=!0,D.value&&(e=new FormData,e.append("upload",D.value)),await g.updateUser(t,e),g.logout()}catch(l){v.add({severity:"error",summary:u("components.toast.title_error"),detail:((n=(a=l.response)==null?void 0:a.data)==null?void 0:n.message)??l.message??l,life:3e3}),console.error(((m=(o=l.response)==null?void 0:o.data)==null?void 0:m.message)??l.message??l)}finally{R.value=!1}};return(e,t)=>{const a=H,n=Q,o=K,m=G;return p(),k("div",null,[r("div",{ref_key:"mobileStepperRef",ref:C,class:"fixed top-0 left-0 right-0 z-10 bg-primary-600 pl-safe pt-safe pr-safe draggable-region"},[r("div",be,[r("div",he,[s(i)===0?(p(),S(a,{key:0,class:"cui-button-small text-white non-draggable-region border-[1px] border-white/10",label:e.$t("components.form.button.logout"),onClick:U},null,8,["label"])):(p(),S(a,{key:1,class:"cui-button-small text-white non-draggable-region border-[1px] border-white/10",label:e.$t("components.form.button.previous"),onClick:O},null,8,["label"])),s(i)!==0&&s(i)!==s(_).length-1?(p(),S(a,{key:2,class:"cui-button-small text-white non-draggable-region border-[1px] border-white/10",label:e.$t("components.form.button.next"),onClick:$},null,8,["label"])):pe("",!0)]),r("div",we,[r("h1",xe,f(e.$t(`views.firststeps.step_${s(_)[s(i)]}`)),1),r("div",ye,f(Math.round((s(i)+1)/s(_).length*100))+"% "+f(e.$t("views.firststeps.complete")),1),r("div",ke,[(p(!0),k(fe,null,de(s(_),(l,V)=>(p(),k("div",{key:V,class:_e(["h-1 rounded-full flex-grow",V<=s(i)?"bg-white":"bg-white/30"])},null,2))),128))])])])],512),c(m,{value:s(i),"onUpdate:value":t[0]||(t[0]=l=>ve(i)?i.value=l:null),class:"px-safe pb-safe",style:ge({paddingTop:s(C)?`calc(${s(q).height.value}px - env(safe-area-inset-top, 0px))`:"env(safe-area-inset-top, 0px)"}),lazy:""},{default:d(()=>[c(o,{class:"p-4 bg-transparent w-full max-w-3xl mx-auto mt-5"},{default:d(()=>[c(n,{value:0},{default:d(()=>[r("div",Se,[r("span",Re,f(e.$t("views.firststeps.welcome_to")),1),r("div",Ce,[c(s(j),{src:s(E)("logo_animated.svg"),width:"26px",height:"32px",title:"camera.ui","aria-label":"camera.ui"},null,8,["src"]),t[1]||(t[1]=r("span",{class:"text-4xl"},"camera.ui",-1))]),r("p",Fe,f(e.$t("views.firststeps.slogan")),1),s(M)?(p(),k("div",$e,[r("p",Ie,f(e.$t("views.firststeps.start_message")),1),r("div",Te,[c(a,{class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.new_installation"),onClick:$},null,8,["loading","label"]),c(a,{class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.from_backup"),onClick:A},null,8,["loading","label"])]),r("input",{ref_key:"backupFileInputRef",ref:z,type:"file",accept:"application/gzip, .tar, .tar.gz",class:"hidden",onChange:J},null,544)])):(p(),S(a,{key:1,class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.start"),onClick:$},null,8,["loading","label"]))])]),_:1}),c(n,{value:1},{default:d(()=>[c(re)]),_:1}),c(n,{value:2},{default:d(()=>[c(le,{ref_key:"accountFormRef",ref:B,firststeps:""},null,512)]),_:1}),c(n,{value:3},{default:d(()=>[r("div",Be,[c(s(j),{src:s(E)("logo_animated.svg"),width:"78px",height:"84px",title:"camera.ui","aria-label":"camera.ui"},null,8,["src"]),r("p",ze,f(e.$t("views.firststeps.finish_message")),1),c(a,{class:"cui-button-medium",loading:s(b),label:e.$t("views.firststeps.enjoy"),onClick:Z},null,8,["loading","label"])])]),_:1})]),_:1})]),_:1},8,["value","style"])])}}});export{Rt as default};
@@ -1 +1 @@
1
- import{b as Oe,r as Ne,a as ze,x as Ue,B as He,C as Ve,y as Ye,z as Xe,j as Ze}from"./primevue.D46ZuvwF.0.0.68.js";import{a5 as qe,a as Ae,a3 as Ee,a6 as Ge,a7 as Je,a8 as Ke,a9 as We,aa as et,ab as tt,ac as Qe,ad as Me,c as Le,p as nt,C as ot,F as at,ae as st,af as it,ag as lt,ah as ke,S as rt,ai as xe,j as ct,z as ut}from"./main.DFrvmqIm.0.0.68.js";import{_ as dt}from"./close-circle.zudRPGBS.0.0.68.js";import{B as ve,t as Ie,ac as ge,o as Re,c as r,d as a,e as i,k as N,R as S,h as t,z as Fe,r as w,w as J,$ as te,O as K,I as p,P as ne,H as mt,N as T,M as b,n as Se,f as pt,X as $e,Z as Pe,m as je,Q as ft,_ as gt}from"./@vue.BxBKarQv.0.0.68.js";import{u as Be}from"./vue-i18n.Y-6ZUvD7.0.0.68.js";import{_ as vt}from"./CuiPluginCard.3qrWv4xm.0.0.68.js";import{H as G,t as _t,y as ht,j as yt,p as bt}from"./highlight.js.CO9Od8yG.0.0.68.js";import{M as wt}from"./markdown-it.Dk__mw4Y.0.0.68.js";import{a as Ct}from"./vue-router.MLvizfYT.0.0.68.js";import"./@primeuix.bRNqZjQz.0.0.68.js";import"./@primevue.CLjOf_2A.0.0.68.js";import"./@tanstack.BsYRTdPr.0.0.68.js";import"./@vueuse.DWVBY8Dk.0.0.68.js";import"./nprogress.BvTTegtH.0.0.68.js";import"./@xterm.D6FDnMLM.0.0.68.js";import"./axios.lj9VQs0f.0.0.68.js";import"./pinia.olzLQsIJ.0.0.68.js";import"./vue-inline-svg.Cs3JM1Xv.0.0.68.js";import"./vee-validate.Cs2kJt5l.0.0.68.js";import"./@vee-validate.CnnpXP1B.0.0.68.js";import"./zod.2bfLsWMZ.0.0.68.js";import"./uuid.C6aID195.0.0.68.js";import"./socket.io-client.CkWaqEUv.0.0.68.js";import"./engine.io-client.2TmvK6nU.0.0.68.js";import"./engine.io-parser.BiEtp6m2.0.0.68.js";import"./@socket.io.Dkula2eQ.0.0.68.js";import"./socket.io-parser.DsT87Oon.0.0.68.js";import"./rxjs.Cfd_7YyY.0.0.68.js";import"./tslib.9k7AwCpt.0.0.68.js";import"./qrcode.jcsj5TWj.0.0.68.js";import"./dijkstrajs.C00ieaqj.0.0.68.js";import"./draggabilly.BWcG_hBx.0.0.68.js";import"./get-size.D1dS-IaP.0.0.68.js";import"./unidragger.BlN8nuro.0.0.68.js";import"./ev-emitter.X5f1qa-c.0.0.68.js";import"./vue-zoomable.kygNhD9X.0.0.68.js";import"./primelocale.Bga3dOQu.0.0.68.js";import"./@intlify.6ljJeWIl.0.0.68.js";import"./mdurl.k9Sl0PQj.0.0.68.js";import"./uc.micro.kMc2yuuw.0.0.68.js";import"./entities.C20TfXL6.0.0.68.js";import"./linkify-it.IDZgcRNT.0.0.68.js";import"./punycode.js.Dj65hjkv.0.0.68.js";import"./trash-fill.CLUpPsSF.0.0.68.js";import"./CuiConsole.D1Y7P5YO.0.0.68.js";import"./VersionsHandler.vue_vue_type_script_setup_true_lang.DDk0j63-.0.0.68.js";import"./system.DR4q1Efj.0.0.68.js";const kt=C=>C==="person"?"person":C==="motion"?"motion":new Set(["bird","cat","dog","horse","sheep","cow","elephant","bear","zebra","giraffe","teddy bear"]).has(C)?"animal":new Set(["bicycle","car","motorcycle","airplane","bus","train","truck","boat"]).has(C)?"vehicle":"other";function xt(C){return C.map($=>({...$,label:kt($.label)}))}const $t=ve({__name:"PluginMotionInterface",props:{response:{}},setup(C){const $=C,{response:d}=Ie($),_=ge("videoPlayerRef");return Re(()=>{if(_.value){const P=new Blob([d.value.videoData],{type:"video/mp4"});_.value.src=URL.createObjectURL(P),_.value.load()}}),(P,z)=>(a(),r("div",null,[i("video",{ref_key:"videoPlayerRef",ref:_,controls:"",class:"w-full"},"Your browser does not support the video tag.",512)]))}}),Pt={class:"mb-5 h-min"},It=["src"],Tt=ve({__name:"PluginObjectInterface",props:{src:{},response:{}},setup(C){const $=C,{response:d,src:_}=Ie($),P=N(()=>xt(d.value.detections));return(z,j)=>{const U=qe;return a(),r("div",Pt,[S(U,{detections:t(P)},null,8,["detections"]),i("img",{src:t(_),alt:"Preview",class:"w-full"},null,8,It)])}}}),Dt={key:0,class:"w-full"},St={class:"flex flex-col justify-center items-center mb-5"},jt={for:"restoreInput",class:"cursor-pointer text-center text-sm"},At=["accept"],Et={key:0,class:"text-red-500 text-sm"},Qt={key:1,class:"w-full flex flex-col items-center justify-center"},Mt={key:0,class:"relative mb-4"},Lt=["src"],Rt={key:1,class:"relative mb-4 w-full"},Ft={key:2,class:"relative mb-4 w-full"},Bt=["src","type"],Ot={class:"flex items-center justify-center"},Nt={class:"mx-2"},zt={class:"text-muted"},Ut={class:"flex items-center justify-center mt-2 text-xs text-muted"},Ht={class:"mt-10"},Vt={class:"text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},Yt={key:0,class:"flex items-center justify-center text-sm text-muted mt-5"},Xt=ve({__name:"CuiDetectionInterface",props:{type:{},pluginName:{}},emits:["update:file","update:metadata"],setup(C,{emit:$}){const d=new Ee,{t:_}=Be(),P=Le(),z=Ae(),j=$,U=C,{type:H,pluginName:V}=Ie(U),Y=ge("fileInputRef"),g=ge("videoPlayerRef"),Q=ge("audioPlayerRef"),c=Fe([]),A=w(!1),l=w(!1),u=w(!1),M=w(!1),v=w(""),D=w(!1),L=w(),X=w(!0),{data:oe,isFetching:ae}=d.getPluginInterfaceQuery(V.value),k=N(()=>ae.value||D.value),h=N(()=>{switch(H.value){case"objectDetection":return"image";case"motionDetection":return"video";case"audioDetection":return"audio";default:return"image"}}),E=N(()=>{switch(h.value){case"image":return Ke;case"video":return Je;case"audio":return Ge;default:return[]}}),R=N(()=>{switch(h.value){case"image":return tt;case"video":return et;case"audio":return We;default:return 0}}),W=N(()=>E.value.join(",")),_e=o=>{const e=c.value.findIndex(n=>n.name===o);e>-1&&(c.value.splice(e,1),ie(),v.value="",h.value==="video"&&g.value&&(g.value.src=""),L.value=void 0,j("update:file",null),j("update:metadata",null))},se=o=>{if(A.value=!1,l.value=!1,M.value=!1,c.value=[],o.dataTransfer)if(o.dataTransfer.files.length>1)l.value=!0;else{const e=o.dataTransfer.files[0];(E.value.length===0||E.value.includes(e.type))&&e.size<=R.value?(c.value.push(e),Se(()=>{le(e)})):e.size>R.value?M.value=!0:l.value=!0}},he=o=>{var n;l.value=!1,M.value=!1,c.value=[];const e=o.target;if(e&&e.files){if(((n=e.files)==null?void 0:n.length)>1)l.value=!0;else if(e.files.length===1){const s=e.files[0],m=E.value.length===0||E.value.includes(s.type);s.size<=R.value&&m?(c.value.push(s),Se(()=>{le(s)})):s.size>R.value?M.value=!0:l.value=!0}}},ie=()=>{Y.value&&(Y.value.value="")},le=o=>{D.value=!0;const e=URL.createObjectURL(o);switch(h.value){case"image":re(o,e);break;case"video":ee(o,e);break;case"audio":ye(o,e);break}},re=(o,e)=>{const n=new Image;n.src=e,n.onload=()=>{v.value=n.src;const s={width:n.width,height:n.height};L.value=s,j("update:metadata",s),j("update:file",o),D.value=!1}},ee=(o,e)=>{g.value&&(g.value.src=e,g.value.load(),g.value.onloadeddata=()=>{j("update:file",o),D.value=!1})},ye=(o,e)=>{v.value=e;const n=new Audio;n.src=e,n.onloadedmetadata=()=>{const s={mimeType:o.type};L.value=s,j("update:metadata",s),j("update:file",o),D.value=!1}},be=o=>o<1024?o+" bytes":o<1048576?(o/1024).toFixed(1)+" KB":(o/1048576).toFixed(1)+" MB";J(c,o=>{o.length>0?(u.value=!1,X.value=!1):(v.value="",L.value=void 0,X.value=!0)},{immediate:!0,deep:!0});const we=async o=>{var e,n,s;if(!c.value.length){u.value=!0;return}D.value=!0;try{const f=await(await Me()).coreManager.connectToPlugin(V.value);if(!f)throw new Error("Plugin not found");const y=await c.value[0].arrayBuffer();if(H.value==="audioDetection"){const x=await((e=f.detectAudio)==null?void 0:e.call(f,new Uint8Array(y),L.value,o));if(!x){console.warn("No audio detection interface available");return}x.detected?P.add({severity:"info",summary:_("components.toast.title_info"),detail:_("components.detection_interface.audio_detected"),life:3e3}):P.add({severity:"info",summary:_("components.toast.title_info"),detail:_("components.detection_interface.audio_not_detected"),life:3e3})}else if(H.value==="motionDetection"){const x=await((n=f.detectMotion)==null?void 0:n.call(f,new Uint8Array(y),o));if(!x){console.warn("No motion detection interface available");return}z.openComponentDialog($t,{data:{title:_("components.dialog.title.result"),hideConfirmButton:!0,contentProps:{response:x}}})}else{const x=await((s=f.detectObjects)==null?void 0:s.call(f,new Uint8Array(y),L.value,o));if(!x){console.warn("No object detection interface available");return}z.openComponentDialog(Tt,{data:{title:_("components.dialog.title.result"),hideConfirmButton:!0,contentProps:{src:v,response:x}}})}}catch(m){console.error("Error during detection:",m)}finally{D.value=!1}};return(o,e)=>{var f;const n=dt,s=Oe,m=Qe;return a(),r("div",null,[i("div",{class:"file-upload-box",onDrop:e[1]||(e[1]=te(y=>se(y),["prevent"])),onDragover:e[2]||(e[2]=te(y=>A.value=!0,["prevent"])),onDragenter:e[3]||(e[3]=te(y=>A.value=!0,["prevent"])),onDragleave:e[4]||(e[4]=te(y=>A.value=!1,["prevent"]))},[t(c).length?(a(),r("div",Qt,[t(h)==="image"?(a(),r("div",Mt,[i("img",{src:t(v),alt:"Preview",class:"w-full"},null,8,Lt)])):t(h)==="video"?(a(),r("div",Rt,[i("video",{ref_key:"videoPlayerRef",ref:g,controls:"",class:"w-full"},"Your browser does not support the video tag.",512)])):t(h)==="audio"?(a(),r("div",Ft,[i("audio",{ref_key:"audioPlayerRef",ref:Q,controls:"",class:"w-full"},[i("source",{src:t(v),type:t(c)[0].type},null,8,Bt),e[5]||(e[5]=mt(" Your browser does not support the audio element. "))],512)])):K("",!0),i("div",Ot,[S(s,{text:"",rounded:"",severity:"danger",class:"cui-icon-md shrink-0",onClick:e[0]||(e[0]=te(y=>_e(t(c)[0].name),["stop"]))},{icon:T(()=>[S(n,{width:"100%",height:"100%"})]),_:1}),i("b",Nt,p(t(c)[0].name),1),i("span",zt,"("+p(be(t(c)[0].size))+")",1)])])):(a(),r("div",Dt,[i("div",St,[i("label",jt,p(o.$t(`components.detection_interface.drop_or_select_${t(h)}_to_detect${t(h)==="image"?"_objects":t(h)==="video"?"_motion":""}`)),1),i("input",{id:"restoreInput",ref_key:"fileInputRef",ref:Y,type:"file",class:"hidden",accept:t(W),onChange:he},null,40,At),t(l)?(a(),r("p",Et,p(o.$t(`components.detection_interface.only_one_${t(h)}_allowed`)),1)):K("",!0),t(u)?(a(),r("p",{key:1,class:ne(["text-red-500 text-sm",{"mt-2":t(l)}])},p(o.$t(`components.detection_interface.${t(h)}_required`)),3)):K("",!0),t(M)?(a(),r("p",{key:2,class:ne(["text-red-500 text-sm",{"mt-2":t(l)||t(u)}])},p(o.$t("components.detection_interface.file_size_error")),3)):K("",!0)])]))],32),i("div",Ut,[i("span",null,"("+p(t(R)/1024/1024)+"MB, "+p(t(E).join(", "))+")",1)]),i("div",Ht,[i("h3",Vt,p(o.$t("components.detection_interface.interface_config")),1),(f=t(oe))!=null&&f.length?(a(),b(m,{key:1,"schema-form":{schema:t(oe),config:{}},loading:t(k),"save-button-label":o.$t("components.detection_interface.detect"),"disable-button":t(X),"show-button":"",onOnFormSubmit:we},null,8,["schema-form","loading","save-button-label","disable-button"])):(a(),r("div",Yt,p(o.$t("components.detection_interface.no_interface_config")),1))])])}}}),Zt={class:"grid grid-auto grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 md:h-full"},qt={class:"md:col-span-1 lg:col-span-2 order-1"},Gt={class:"md:col-span-1 md:row-span-3 order-2"},Jt={class:"md:!hidden card-title"},Kt={key:1},Wt={class:"hidden md:block text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},en={key:0,class:"flex items-center justify-center w-full h-full text-muted text-sm"},tn=["onClick"],nn={key:4,class:"w-full h-full"},on={key:0,class:"flex items-center justify-center w-full h-full text-muted text-sm"},an={class:"md:col-span-1 lg:col-span-2 order-3"},sn={class:"md:!hidden card-title"},ln={key:1},rn={class:"hidden md:block text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},cn=["innerHTML"],un={class:"md:col-span-1 lg:col-span-2 order-4"},dn={class:"md:!hidden card-title"},mn={key:1},pn={class:"hidden md:block text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},fn=["innerHTML"],gn=ve({__name:"Plugin",setup(C){G.registerLanguage("typescript",_t),G.registerLanguage("yaml",ht),G.registerLanguage("json",yt),G.registerLanguage("python",bt);const $=new ot,d=new Ee,_=nt(),P=Ct(),z=Le(),j=Ae(),{t:U}=Be(),H=w(P.params.scope),V=w(P.params.pluginname),Y=Fe(),g=w("settings"),Q=w([]),c=w([]),A=w([]),l=N(()=>H.value?`${H.value}/${V.value}`:V.value);d.toggleQueryActivator("getPluginContractQuery",!1),d.toggleQueryActivator("getPluginConfigQuery",!1);const{data:u,isFetching:M}=d.getPluginQuery(l),{data:v,isFetching:D}=d.getPluginConfigQuery(l),{data:L,isFetching:X}=d.getPluginReadmeQuery(l),{data:oe,isFetching:ae}=d.getPluginChangelogQuery(l),{data:k}=d.getPluginContractQuery(l),{mutate:h,isPending:E}=d.submitPluginConfigQuery(),{mutateAsync:R,isPending:W}=d.setPluginConfigQuery(),{mutateAsync:_e,isPending:se}=d.patchPluginConfigQuery(),{mutate:he,isPending:ie}=$.addCameraExtensionQuery(),{mutate:le,isPending:re}=$.removeCameraExtensionQuery();J(u,e=>{if(!e||e.disabled){const n=Q.value.some(m=>m.name==="settings"),s=Q.value.some(m=>m.name==="cameras");n?g.value="settings":s&&(g.value="cameras")}},{deep:!0}),J(P,()=>{V.value=P.params.pluginname},{deep:!0,immediate:!0}),J(u,()=>{u.value&&(u.value.disabled?d.toggleQueryActivator("getPluginConfigQuery",!1):d.toggleQueryActivator("getPluginConfigQuery",!0))},{deep:!0,immediate:!0}),J(v,()=>{D.value?d.toggleQueryActivator("getPluginContractQuery",!1):d.toggleQueryActivator("getPluginContractQuery",!0)},{deep:!0,immediate:!0}),J([k,v,A],()=>{var f,y,x,ce,Z,ue,de,me,pe;const e=[];let n=!1,s=!1,m=!1;(f=v.value)!=null&&f.schema.length&&(n=!0,e.push({name:"settings",icon:rt,isInterface:!1})),(y=k.value)!=null&&y.contract.extensions.includes("motionDetection")&&A.value.includes(ke.MotionDetector)&&(s=!0,e.push({name:"motion_detection",icon:xe,isInterface:!0})),(x=k.value)!=null&&x.contract.extensions.includes("objectDetection")&&A.value.includes(ke.ObjectDetector)&&(s=!0,e.push({name:"object_detection",icon:xe,isInterface:!0})),(ce=k.value)!=null&&ce.contract.extensions.includes("audioDetection")&&A.value.includes(ke.AudioDetector)&&(s=!0,e.push({name:"audio_detection",icon:xe,isInterface:!0})),((Z=k.value)!=null&&Z.cameras.length||(ue=k.value)!=null&&ue.contract.extensions.length)&&(m=!0,e.push({name:"cameras",icon:ct,isInterface:!1})),(de=k.value)!=null&&de.contract.extensions.length&&((me=k.value)!=null&&me.cameras.length)&&(c.value=k.value.cameras.filter(F=>F.extensions.plugins.some(fe=>fe.name===l.value)).map(F=>F.name)),Q.value=[...e],(pe=u.value)!=null&&pe.disabled||(n?g.value="settings":s?g.value=Q.value.filter(F=>F.isInterface)[0].name:m&&(g.value="cameras"))},{deep:!0,immediate:!0});const ee=wt("commonmark",{highlight(e,n){if(n&&G.getLanguage(n))try{return'<pre><code class="hljs">'+G.highlight(e,{language:n,ignoreIllegals:!0}).value+"</code></pre>"}catch{}return'<pre><code class="hljs">'+ee.utils.escapeHtml(e)+"</code></pre>"}}),ye=async e=>{console.log("onAction",e),await R({pluginname:l.value,configData:{key:e.key}})},be=async e=>{console.log("onSubmit",e),h({pluginname:l.value,configData:{key:e.key,payload:e.payload}},{onSuccess:n=>{var s;if(n!=null&&n.toast){const m=st(n.toast.type);z.add({severity:m,summary:U(`components.toast.title_${m}`),detail:n.toast.message,life:3e3})}(s=n==null?void 0:n.schema)!=null&&s.length&&j.openComponentDialog(it,{data:{title:U("components.dialog.title.config"),hideConfirmButton:!0,contentProps:{schemaConfig:{schema:n.schema,config:e.payload},pluginName:l.value,buttonKey:e.key}}})}})},we=async e=>{var s;if(console.log("onFormSubmit",e),!((s=v.value)!=null&&s.schema.length))return;const n=lt(v.value.schema,e);await _e({pluginName:l.value,configData:n})},o=async e=>{if(u.value)if(c.value.includes(e.name))for(const n of u.value["camera.ui"].extensions)le({cameraname:e.name,pluginname:u.value.pluginName,type:n},{onSuccess:()=>{c.value=c.value.filter(s=>s!==e.name)}});else for(const n of u.value["camera.ui"].extensions)he({cameraname:e.name,pluginname:u.value.pluginName,type:n},{onSuccess:()=>{c.value=[...c.value,e.name]}})};return Re(async()=>{var e;try{const n=await Me();Y.value=await n.coreManager.connectToPlugin(l.value),A.value=await((e=Y.value)==null?void 0:e.getCapabilities())??[]}catch(n){u.value&&!u.value.disabled&&console.error("Error connecting to plugin:",n)}}),(e,n)=>{const s=ze,m=Ne,f=vt,y=Ve,x=He,ce=Qe,Z=Xt,ue=Ze,de=at,me=Xe,pe=Ye,F=Ue;return a(),r("div",{key:t(l)},[i("div",Zt,[i("div",qt,[t(u)?(a(),b(f,{key:1,plugin:t(u),class:"h-[220px]"},null,8,["plugin"])):(a(),b(m,{key:0,class:"cui-card items-center justify-center !h-[220px]"},{content:T(()=>[S(s,{class:"w-[30px] h-[30px]","stroke-width":"5"})]),_:1}))]),i("div",Gt,[i("span",Jt,p(e.$t("views.plugin.settings")),1),S(m,{class:ne(["cui-card !h-auto md:!h-full",{"items-center justify-center":t(M)||t(D)}])},{content:T(()=>{var fe;return[t(M)||t(D)?(a(),b(s,{key:0,class:"w-[30px] h-[30px]","stroke-width":"5"})):(a(),r("div",Kt,[i("h3",Wt,p(e.$t("views.plugin.settings")),1),(fe=t(u))!=null&&fe.disabled?(a(),r("div",en,[i("span",null,p(e.$t("views.plugin.disabled_info")),1)])):(a(),b(F,{key:1,value:t(g),"onUpdate:value":n[0]||(n[0]=I=>pt(g)?g.value=I:null),scrollable:""},{default:T(()=>[S(x,{class:"justify-between",pt:{activeBar:{class:"!w-auto"},content:{class:"border-[1px] border-color cui-rounded-corner overflow-hidden"}}},{default:T(()=>[(a(!0),r($e,null,Pe(t(Q),(I,Ce)=>{var q;return a(),b(y,{key:Ce,disabled:I.isInterface&&((q=t(u))==null?void 0:q.disabled),value:I.name,"as-child":""},{default:T(B=>[i("div",je({ref_for:!0},B.a11yAttrs,{class:["flex flex-col items-center justify-center flex-1 content-background !py-3 h-[55px]",[{"hover:!text-color active:!text-color focus:!text-color":!B.active},B.class]],onClick:B.onClick}),[(a(),b(ft(I.icon),{class:"w-5 h-5"}))],16,tn)]),_:2},1032,["disabled","value"])}),128))]),_:1}),S(pe,{class:"px-0 pb-0"},{default:T(()=>[(a(!0),r($e,null,Pe(t(Q),(I,Ce)=>(a(),b(me,{key:Ce,value:I.name,"as-child":""},{default:T(q=>{var B,Te;return[q.active?(a(),r("div",je({key:0,class:q.class},{ref_for:!0},q.a11yAttrs),[I.name==="settings"&&t(v)?(a(),b(ce,{key:0,"schema-form":{schema:t(v).schema,config:t(v).config},loading:t(E)||t(W),"save-button-color":"success",onOnAction:ye,onOnSubmit:be,onOnFormSubmit:we},null,8,["schema-form","loading"])):I.name==="motion_detection"?(a(),b(Z,{key:1,"plugin-name":t(l),type:"motionDetection"},null,8,["plugin-name"])):I.name==="object_detection"?(a(),b(Z,{key:2,"plugin-name":t(l),type:"objectDetection"},null,8,["plugin-name"])):I.name==="audio_detection"?(a(),b(Z,{key:3,"plugin-name":t(l),type:"audioDetection"},null,8,["plugin-name"])):I.name==="cameras"?(a(),r("div",nn,[(Te=(B=t(k))==null?void 0:B.cameras)!=null&&Te.length?(a(!0),r($e,{key:1},Pe(t(k).cameras,O=>{var De;return a(),r("div",{key:O.name,class:"cui-list-item"},[S(de,{disabled:t(ie)||t(re)||t(se)||t(E)||t(W),active:t(c).includes(O.name),class:"h-14",onClick:vn=>t(_).open({cameraName:O.name})},gt({default:T(()=>[i("span",null,p(O.name),1)]),_:2},[!t(u)||((De=O.extensions.cameraController)==null?void 0:De.name)!==t(u).pluginName?{name:"append",fn:T(()=>[S(ue,{"model-value":t(c).includes(O.name),disabled:t(ie)||t(re)||t(se)||t(E)||t(W),"onUpdate:modelValue":()=>o(O)},null,8,["model-value","disabled","onUpdate:modelValue"])]),key:"0"}:void 0]),1032,["disabled","active","onClick"])])}),128)):(a(),r("div",on,[i("span",null,p(e.$t("views.plugin.no_cameras")),1)]))])):K("",!0)],16)):K("",!0)]}),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["value"]))]))]}),_:1},8,["class"])]),i("div",an,[i("span",sn,p(e.$t("views.plugin.readme")),1),S(m,{class:ne(["cui-card !h-auto md:!h-full",{"items-center justify-center":t(X)}])},{content:T(()=>[t(X)?(a(),b(s,{key:0,class:"w-[30px] h-[30px]","stroke-width":"5"})):(a(),r("div",ln,[i("h3",rn,p(e.$t("views.plugin.readme")),1),i("div",{class:"markdown-body",innerHTML:t(ee).render(t(L)||e.$t("views.plugin.no_readme"))},null,8,cn)]))]),_:1},8,["class"])]),i("div",un,[i("span",dn,p(e.$t("views.plugin.changelog")),1),S(m,{class:ne(["cui-card !h-auto md:!h-full",{"items-center justify-center":t(ae)}])},{content:T(()=>[t(ae)?(a(),b(s,{key:0,class:"w-[30px] h-[30px]","stroke-width":"5"})):(a(),r("div",mn,[i("h3",pn,p(e.$t("views.plugin.changelog")),1),i("div",{class:"markdown-body",innerHTML:t(ee).render(t(oe)||e.$t("views.plugin.no_changelog"))},null,8,fn)]))]),_:1},8,["class"])])])])}}}),uo=ut(gn,[["__scopeId","data-v-2f40728b"]]);export{uo as default};
1
+ import{b as Oe,r as Ne,a as ze,x as Ue,B as He,C as Ve,y as Ye,z as Xe,j as Ze}from"./primevue.BVVo-ukB.0.0.70.js";import{a5 as qe,a as Ae,a3 as Ee,a6 as Ge,a7 as Je,a8 as Ke,a9 as We,aa as et,ab as tt,ac as Qe,ad as Me,c as Le,p as nt,C as ot,F as at,ae as st,af as it,ag as lt,ah as ke,S as rt,ai as xe,j as ct,z as ut}from"./main.D2NZuTnM.0.0.70.js";import{_ as dt}from"./close-circle.CMnO5OKl.0.0.70.js";import{B as ve,t as Ie,ac as ge,o as Re,c as r,d as a,e as i,k as N,R as S,h as t,z as Fe,r as w,w as J,$ as te,O as K,I as p,P as ne,H as mt,N as T,M as b,n as Se,f as pt,X as $e,Z as Pe,m as je,Q as ft,_ as gt}from"./@vue.BsSvBeCe.0.0.70.js";import{u as Be}from"./vue-i18n.BLwVbi61.0.0.70.js";import{_ as vt}from"./CuiPluginCard.CFaLdBEf.0.0.70.js";import{H as G,t as _t,y as ht,j as yt,p as bt}from"./highlight.js.DTPofZhc.0.0.70.js";import{M as wt}from"./markdown-it.VQvmcJVu.0.0.70.js";import{a as Ct}from"./vue-router.BQuUBAAr.0.0.70.js";import"./@primeuix.bRNqZjQz.0.0.70.js";import"./@primevue.DH9ak_9x.0.0.70.js";import"./@tanstack.Dk2rc1Gz.0.0.70.js";import"./@vueuse.T3qy5Jq4.0.0.70.js";import"./nprogress.DuNJBXnf.0.0.70.js";import"./@xterm.CJZZM5vf.0.0.70.js";import"./axios.lj9VQs0f.0.0.70.js";import"./pinia.BeBGFuqK.0.0.70.js";import"./vue-inline-svg.B52C1cW8.0.0.70.js";import"./vee-validate.DwwGVNzx.0.0.70.js";import"./@vee-validate.i4o6WINE.0.0.70.js";import"./zod.2bfLsWMZ.0.0.70.js";import"./uuid.C6aID195.0.0.70.js";import"./socket.io-client.DC_wUGxw.0.0.70.js";import"./engine.io-client.CnosWdRP.0.0.70.js";import"./engine.io-parser.BiEtp6m2.0.0.70.js";import"./@socket.io.Dkula2eQ.0.0.70.js";import"./socket.io-parser.ChgZ8FD_.0.0.70.js";import"./rxjs.UbFxmZ7q.0.0.70.js";import"./tslib.9k7AwCpt.0.0.70.js";import"./qrcode.D7KqKQTM.0.0.70.js";import"./dijkstrajs.C00ieaqj.0.0.70.js";import"./draggabilly.Cuzjcd7v.0.0.70.js";import"./get-size.D1dS-IaP.0.0.70.js";import"./unidragger.DahEY3cm.0.0.70.js";import"./ev-emitter.X5f1qa-c.0.0.70.js";import"./vue-zoomable.Cq7IVJt5.0.0.70.js";import"./primelocale.Bga3dOQu.0.0.70.js";import"./@intlify.6ljJeWIl.0.0.70.js";import"./mdurl.k9Sl0PQj.0.0.70.js";import"./uc.micro.kMc2yuuw.0.0.70.js";import"./entities.C20TfXL6.0.0.70.js";import"./linkify-it.imhCvGRq.0.0.70.js";import"./punycode.js.Dj65hjkv.0.0.70.js";import"./trash-fill.C8ZgD-Jz.0.0.70.js";import"./CuiConsole.B-YJZ4uY.0.0.70.js";import"./VersionsHandler.vue_vue_type_script_setup_true_lang.MC8r914h.0.0.70.js";import"./system.Ccn9lMgI.0.0.70.js";const kt=C=>C==="person"?"person":C==="motion"?"motion":new Set(["bird","cat","dog","horse","sheep","cow","elephant","bear","zebra","giraffe","teddy bear"]).has(C)?"animal":new Set(["bicycle","car","motorcycle","airplane","bus","train","truck","boat"]).has(C)?"vehicle":"other";function xt(C){return C.map($=>({...$,label:kt($.label)}))}const $t=ve({__name:"PluginMotionInterface",props:{response:{}},setup(C){const $=C,{response:d}=Ie($),_=ge("videoPlayerRef");return Re(()=>{if(_.value){const P=new Blob([d.value.videoData],{type:"video/mp4"});_.value.src=URL.createObjectURL(P),_.value.load()}}),(P,z)=>(a(),r("div",null,[i("video",{ref_key:"videoPlayerRef",ref:_,controls:"",class:"w-full"},"Your browser does not support the video tag.",512)]))}}),Pt={class:"mb-5 h-min"},It=["src"],Tt=ve({__name:"PluginObjectInterface",props:{src:{},response:{}},setup(C){const $=C,{response:d,src:_}=Ie($),P=N(()=>xt(d.value.detections));return(z,j)=>{const U=qe;return a(),r("div",Pt,[S(U,{detections:t(P)},null,8,["detections"]),i("img",{src:t(_),alt:"Preview",class:"w-full"},null,8,It)])}}}),Dt={key:0,class:"w-full"},St={class:"flex flex-col justify-center items-center mb-5"},jt={for:"restoreInput",class:"cursor-pointer text-center text-sm"},At=["accept"],Et={key:0,class:"text-red-500 text-sm"},Qt={key:1,class:"w-full flex flex-col items-center justify-center"},Mt={key:0,class:"relative mb-4"},Lt=["src"],Rt={key:1,class:"relative mb-4 w-full"},Ft={key:2,class:"relative mb-4 w-full"},Bt=["src","type"],Ot={class:"flex items-center justify-center"},Nt={class:"mx-2"},zt={class:"text-muted"},Ut={class:"flex items-center justify-center mt-2 text-xs text-muted"},Ht={class:"mt-10"},Vt={class:"text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},Yt={key:0,class:"flex items-center justify-center text-sm text-muted mt-5"},Xt=ve({__name:"CuiDetectionInterface",props:{type:{},pluginName:{}},emits:["update:file","update:metadata"],setup(C,{emit:$}){const d=new Ee,{t:_}=Be(),P=Le(),z=Ae(),j=$,U=C,{type:H,pluginName:V}=Ie(U),Y=ge("fileInputRef"),g=ge("videoPlayerRef"),Q=ge("audioPlayerRef"),c=Fe([]),A=w(!1),l=w(!1),u=w(!1),M=w(!1),v=w(""),D=w(!1),L=w(),X=w(!0),{data:oe,isFetching:ae}=d.getPluginInterfaceQuery(V.value),k=N(()=>ae.value||D.value),h=N(()=>{switch(H.value){case"objectDetection":return"image";case"motionDetection":return"video";case"audioDetection":return"audio";default:return"image"}}),E=N(()=>{switch(h.value){case"image":return Ke;case"video":return Je;case"audio":return Ge;default:return[]}}),R=N(()=>{switch(h.value){case"image":return tt;case"video":return et;case"audio":return We;default:return 0}}),W=N(()=>E.value.join(",")),_e=o=>{const e=c.value.findIndex(n=>n.name===o);e>-1&&(c.value.splice(e,1),ie(),v.value="",h.value==="video"&&g.value&&(g.value.src=""),L.value=void 0,j("update:file",null),j("update:metadata",null))},se=o=>{if(A.value=!1,l.value=!1,M.value=!1,c.value=[],o.dataTransfer)if(o.dataTransfer.files.length>1)l.value=!0;else{const e=o.dataTransfer.files[0];(E.value.length===0||E.value.includes(e.type))&&e.size<=R.value?(c.value.push(e),Se(()=>{le(e)})):e.size>R.value?M.value=!0:l.value=!0}},he=o=>{var n;l.value=!1,M.value=!1,c.value=[];const e=o.target;if(e&&e.files){if(((n=e.files)==null?void 0:n.length)>1)l.value=!0;else if(e.files.length===1){const s=e.files[0],m=E.value.length===0||E.value.includes(s.type);s.size<=R.value&&m?(c.value.push(s),Se(()=>{le(s)})):s.size>R.value?M.value=!0:l.value=!0}}},ie=()=>{Y.value&&(Y.value.value="")},le=o=>{D.value=!0;const e=URL.createObjectURL(o);switch(h.value){case"image":re(o,e);break;case"video":ee(o,e);break;case"audio":ye(o,e);break}},re=(o,e)=>{const n=new Image;n.src=e,n.onload=()=>{v.value=n.src;const s={width:n.width,height:n.height};L.value=s,j("update:metadata",s),j("update:file",o),D.value=!1}},ee=(o,e)=>{g.value&&(g.value.src=e,g.value.load(),g.value.onloadeddata=()=>{j("update:file",o),D.value=!1})},ye=(o,e)=>{v.value=e;const n=new Audio;n.src=e,n.onloadedmetadata=()=>{const s={mimeType:o.type};L.value=s,j("update:metadata",s),j("update:file",o),D.value=!1}},be=o=>o<1024?o+" bytes":o<1048576?(o/1024).toFixed(1)+" KB":(o/1048576).toFixed(1)+" MB";J(c,o=>{o.length>0?(u.value=!1,X.value=!1):(v.value="",L.value=void 0,X.value=!0)},{immediate:!0,deep:!0});const we=async o=>{var e,n,s;if(!c.value.length){u.value=!0;return}D.value=!0;try{const f=await(await Me()).coreManager.connectToPlugin(V.value);if(!f)throw new Error("Plugin not found");const y=await c.value[0].arrayBuffer();if(H.value==="audioDetection"){const x=await((e=f.detectAudio)==null?void 0:e.call(f,new Uint8Array(y),L.value,o));if(!x){console.warn("No audio detection interface available");return}x.detected?P.add({severity:"info",summary:_("components.toast.title_info"),detail:_("components.detection_interface.audio_detected"),life:3e3}):P.add({severity:"info",summary:_("components.toast.title_info"),detail:_("components.detection_interface.audio_not_detected"),life:3e3})}else if(H.value==="motionDetection"){const x=await((n=f.detectMotion)==null?void 0:n.call(f,new Uint8Array(y),o));if(!x){console.warn("No motion detection interface available");return}z.openComponentDialog($t,{data:{title:_("components.dialog.title.result"),hideConfirmButton:!0,contentProps:{response:x}}})}else{const x=await((s=f.detectObjects)==null?void 0:s.call(f,new Uint8Array(y),L.value,o));if(!x){console.warn("No object detection interface available");return}z.openComponentDialog(Tt,{data:{title:_("components.dialog.title.result"),hideConfirmButton:!0,contentProps:{src:v,response:x}}})}}catch(m){console.error("Error during detection:",m)}finally{D.value=!1}};return(o,e)=>{var f;const n=dt,s=Oe,m=Qe;return a(),r("div",null,[i("div",{class:"file-upload-box",onDrop:e[1]||(e[1]=te(y=>se(y),["prevent"])),onDragover:e[2]||(e[2]=te(y=>A.value=!0,["prevent"])),onDragenter:e[3]||(e[3]=te(y=>A.value=!0,["prevent"])),onDragleave:e[4]||(e[4]=te(y=>A.value=!1,["prevent"]))},[t(c).length?(a(),r("div",Qt,[t(h)==="image"?(a(),r("div",Mt,[i("img",{src:t(v),alt:"Preview",class:"w-full"},null,8,Lt)])):t(h)==="video"?(a(),r("div",Rt,[i("video",{ref_key:"videoPlayerRef",ref:g,controls:"",class:"w-full"},"Your browser does not support the video tag.",512)])):t(h)==="audio"?(a(),r("div",Ft,[i("audio",{ref_key:"audioPlayerRef",ref:Q,controls:"",class:"w-full"},[i("source",{src:t(v),type:t(c)[0].type},null,8,Bt),e[5]||(e[5]=mt(" Your browser does not support the audio element. "))],512)])):K("",!0),i("div",Ot,[S(s,{text:"",rounded:"",severity:"danger",class:"cui-icon-md shrink-0",onClick:e[0]||(e[0]=te(y=>_e(t(c)[0].name),["stop"]))},{icon:T(()=>[S(n,{width:"100%",height:"100%"})]),_:1}),i("b",Nt,p(t(c)[0].name),1),i("span",zt,"("+p(be(t(c)[0].size))+")",1)])])):(a(),r("div",Dt,[i("div",St,[i("label",jt,p(o.$t(`components.detection_interface.drop_or_select_${t(h)}_to_detect${t(h)==="image"?"_objects":t(h)==="video"?"_motion":""}`)),1),i("input",{id:"restoreInput",ref_key:"fileInputRef",ref:Y,type:"file",class:"hidden",accept:t(W),onChange:he},null,40,At),t(l)?(a(),r("p",Et,p(o.$t(`components.detection_interface.only_one_${t(h)}_allowed`)),1)):K("",!0),t(u)?(a(),r("p",{key:1,class:ne(["text-red-500 text-sm",{"mt-2":t(l)}])},p(o.$t(`components.detection_interface.${t(h)}_required`)),3)):K("",!0),t(M)?(a(),r("p",{key:2,class:ne(["text-red-500 text-sm",{"mt-2":t(l)||t(u)}])},p(o.$t("components.detection_interface.file_size_error")),3)):K("",!0)])]))],32),i("div",Ut,[i("span",null,"("+p(t(R)/1024/1024)+"MB, "+p(t(E).join(", "))+")",1)]),i("div",Ht,[i("h3",Vt,p(o.$t("components.detection_interface.interface_config")),1),(f=t(oe))!=null&&f.length?(a(),b(m,{key:1,"schema-form":{schema:t(oe),config:{}},loading:t(k),"save-button-label":o.$t("components.detection_interface.detect"),"disable-button":t(X),"show-button":"",onOnFormSubmit:we},null,8,["schema-form","loading","save-button-label","disable-button"])):(a(),r("div",Yt,p(o.$t("components.detection_interface.no_interface_config")),1))])])}}}),Zt={class:"grid grid-auto grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 md:h-full"},qt={class:"md:col-span-1 lg:col-span-2 order-1"},Gt={class:"md:col-span-1 md:row-span-3 order-2"},Jt={class:"md:!hidden card-title"},Kt={key:1},Wt={class:"hidden md:block text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},en={key:0,class:"flex items-center justify-center w-full h-full text-muted text-sm"},tn=["onClick"],nn={key:4,class:"w-full h-full"},on={key:0,class:"flex items-center justify-center w-full h-full text-muted text-sm"},an={class:"md:col-span-1 lg:col-span-2 order-3"},sn={class:"md:!hidden card-title"},ln={key:1},rn={class:"hidden md:block text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},cn=["innerHTML"],un={class:"md:col-span-1 lg:col-span-2 order-4"},dn={class:"md:!hidden card-title"},mn={key:1},pn={class:"hidden md:block text-base font-semibold border-b-[1px] border-color mb-3 pb-3"},fn=["innerHTML"],gn=ve({__name:"Plugin",setup(C){G.registerLanguage("typescript",_t),G.registerLanguage("yaml",ht),G.registerLanguage("json",yt),G.registerLanguage("python",bt);const $=new ot,d=new Ee,_=nt(),P=Ct(),z=Le(),j=Ae(),{t:U}=Be(),H=w(P.params.scope),V=w(P.params.pluginname),Y=Fe(),g=w("settings"),Q=w([]),c=w([]),A=w([]),l=N(()=>H.value?`${H.value}/${V.value}`:V.value);d.toggleQueryActivator("getPluginContractQuery",!1),d.toggleQueryActivator("getPluginConfigQuery",!1);const{data:u,isFetching:M}=d.getPluginQuery(l),{data:v,isFetching:D}=d.getPluginConfigQuery(l),{data:L,isFetching:X}=d.getPluginReadmeQuery(l),{data:oe,isFetching:ae}=d.getPluginChangelogQuery(l),{data:k}=d.getPluginContractQuery(l),{mutate:h,isPending:E}=d.submitPluginConfigQuery(),{mutateAsync:R,isPending:W}=d.setPluginConfigQuery(),{mutateAsync:_e,isPending:se}=d.patchPluginConfigQuery(),{mutate:he,isPending:ie}=$.addCameraExtensionQuery(),{mutate:le,isPending:re}=$.removeCameraExtensionQuery();J(u,e=>{if(!e||e.disabled){const n=Q.value.some(m=>m.name==="settings"),s=Q.value.some(m=>m.name==="cameras");n?g.value="settings":s&&(g.value="cameras")}},{deep:!0}),J(P,()=>{V.value=P.params.pluginname},{deep:!0,immediate:!0}),J(u,()=>{u.value&&(u.value.disabled?d.toggleQueryActivator("getPluginConfigQuery",!1):d.toggleQueryActivator("getPluginConfigQuery",!0))},{deep:!0,immediate:!0}),J(v,()=>{D.value?d.toggleQueryActivator("getPluginContractQuery",!1):d.toggleQueryActivator("getPluginContractQuery",!0)},{deep:!0,immediate:!0}),J([k,v,A],()=>{var f,y,x,ce,Z,ue,de,me,pe;const e=[];let n=!1,s=!1,m=!1;(f=v.value)!=null&&f.schema.length&&(n=!0,e.push({name:"settings",icon:rt,isInterface:!1})),(y=k.value)!=null&&y.contract.extensions.includes("motionDetection")&&A.value.includes(ke.MotionDetector)&&(s=!0,e.push({name:"motion_detection",icon:xe,isInterface:!0})),(x=k.value)!=null&&x.contract.extensions.includes("objectDetection")&&A.value.includes(ke.ObjectDetector)&&(s=!0,e.push({name:"object_detection",icon:xe,isInterface:!0})),(ce=k.value)!=null&&ce.contract.extensions.includes("audioDetection")&&A.value.includes(ke.AudioDetector)&&(s=!0,e.push({name:"audio_detection",icon:xe,isInterface:!0})),((Z=k.value)!=null&&Z.cameras.length||(ue=k.value)!=null&&ue.contract.extensions.length)&&(m=!0,e.push({name:"cameras",icon:ct,isInterface:!1})),(de=k.value)!=null&&de.contract.extensions.length&&((me=k.value)!=null&&me.cameras.length)&&(c.value=k.value.cameras.filter(F=>F.extensions.plugins.some(fe=>fe.name===l.value)).map(F=>F.name)),Q.value=[...e],(pe=u.value)!=null&&pe.disabled||(n?g.value="settings":s?g.value=Q.value.filter(F=>F.isInterface)[0].name:m&&(g.value="cameras"))},{deep:!0,immediate:!0});const ee=wt("commonmark",{highlight(e,n){if(n&&G.getLanguage(n))try{return'<pre><code class="hljs">'+G.highlight(e,{language:n,ignoreIllegals:!0}).value+"</code></pre>"}catch{}return'<pre><code class="hljs">'+ee.utils.escapeHtml(e)+"</code></pre>"}}),ye=async e=>{console.log("onAction",e),await R({pluginname:l.value,configData:{key:e.key}})},be=async e=>{console.log("onSubmit",e),h({pluginname:l.value,configData:{key:e.key,payload:e.payload}},{onSuccess:n=>{var s;if(n!=null&&n.toast){const m=st(n.toast.type);z.add({severity:m,summary:U(`components.toast.title_${m}`),detail:n.toast.message,life:3e3})}(s=n==null?void 0:n.schema)!=null&&s.length&&j.openComponentDialog(it,{data:{title:U("components.dialog.title.config"),hideConfirmButton:!0,contentProps:{schemaConfig:{schema:n.schema,config:e.payload},pluginName:l.value,buttonKey:e.key}}})}})},we=async e=>{var s;if(console.log("onFormSubmit",e),!((s=v.value)!=null&&s.schema.length))return;const n=lt(v.value.schema,e);await _e({pluginName:l.value,configData:n})},o=async e=>{if(u.value)if(c.value.includes(e.name))for(const n of u.value["camera.ui"].extensions)le({cameraname:e.name,pluginname:u.value.pluginName,type:n},{onSuccess:()=>{c.value=c.value.filter(s=>s!==e.name)}});else for(const n of u.value["camera.ui"].extensions)he({cameraname:e.name,pluginname:u.value.pluginName,type:n},{onSuccess:()=>{c.value=[...c.value,e.name]}})};return Re(async()=>{var e;try{const n=await Me();Y.value=await n.coreManager.connectToPlugin(l.value),A.value=await((e=Y.value)==null?void 0:e.getCapabilities())??[]}catch(n){u.value&&!u.value.disabled&&console.error("Error connecting to plugin:",n)}}),(e,n)=>{const s=ze,m=Ne,f=vt,y=Ve,x=He,ce=Qe,Z=Xt,ue=Ze,de=at,me=Xe,pe=Ye,F=Ue;return a(),r("div",{key:t(l)},[i("div",Zt,[i("div",qt,[t(u)?(a(),b(f,{key:1,plugin:t(u),class:"h-[220px]"},null,8,["plugin"])):(a(),b(m,{key:0,class:"cui-card items-center justify-center !h-[220px]"},{content:T(()=>[S(s,{class:"w-[30px] h-[30px]","stroke-width":"5"})]),_:1}))]),i("div",Gt,[i("span",Jt,p(e.$t("views.plugin.settings")),1),S(m,{class:ne(["cui-card !h-auto md:!h-full",{"items-center justify-center":t(M)||t(D)}])},{content:T(()=>{var fe;return[t(M)||t(D)?(a(),b(s,{key:0,class:"w-[30px] h-[30px]","stroke-width":"5"})):(a(),r("div",Kt,[i("h3",Wt,p(e.$t("views.plugin.settings")),1),(fe=t(u))!=null&&fe.disabled?(a(),r("div",en,[i("span",null,p(e.$t("views.plugin.disabled_info")),1)])):(a(),b(F,{key:1,value:t(g),"onUpdate:value":n[0]||(n[0]=I=>pt(g)?g.value=I:null),scrollable:""},{default:T(()=>[S(x,{class:"justify-between",pt:{activeBar:{class:"!w-auto"},content:{class:"border-[1px] border-color cui-rounded-corner overflow-hidden"}}},{default:T(()=>[(a(!0),r($e,null,Pe(t(Q),(I,Ce)=>{var q;return a(),b(y,{key:Ce,disabled:I.isInterface&&((q=t(u))==null?void 0:q.disabled),value:I.name,"as-child":""},{default:T(B=>[i("div",je({ref_for:!0},B.a11yAttrs,{class:["flex flex-col items-center justify-center flex-1 content-background !py-3 h-[55px]",[{"hover:!text-color active:!text-color focus:!text-color":!B.active},B.class]],onClick:B.onClick}),[(a(),b(ft(I.icon),{class:"w-5 h-5"}))],16,tn)]),_:2},1032,["disabled","value"])}),128))]),_:1}),S(pe,{class:"px-0 pb-0"},{default:T(()=>[(a(!0),r($e,null,Pe(t(Q),(I,Ce)=>(a(),b(me,{key:Ce,value:I.name,"as-child":""},{default:T(q=>{var B,Te;return[q.active?(a(),r("div",je({key:0,class:q.class},{ref_for:!0},q.a11yAttrs),[I.name==="settings"&&t(v)?(a(),b(ce,{key:0,"schema-form":{schema:t(v).schema,config:t(v).config},loading:t(E)||t(W),"save-button-color":"success",onOnAction:ye,onOnSubmit:be,onOnFormSubmit:we},null,8,["schema-form","loading"])):I.name==="motion_detection"?(a(),b(Z,{key:1,"plugin-name":t(l),type:"motionDetection"},null,8,["plugin-name"])):I.name==="object_detection"?(a(),b(Z,{key:2,"plugin-name":t(l),type:"objectDetection"},null,8,["plugin-name"])):I.name==="audio_detection"?(a(),b(Z,{key:3,"plugin-name":t(l),type:"audioDetection"},null,8,["plugin-name"])):I.name==="cameras"?(a(),r("div",nn,[(Te=(B=t(k))==null?void 0:B.cameras)!=null&&Te.length?(a(!0),r($e,{key:1},Pe(t(k).cameras,O=>{var De;return a(),r("div",{key:O.name,class:"cui-list-item"},[S(de,{disabled:t(ie)||t(re)||t(se)||t(E)||t(W),active:t(c).includes(O.name),class:"h-14",onClick:vn=>t(_).open({cameraName:O.name})},gt({default:T(()=>[i("span",null,p(O.name),1)]),_:2},[!t(u)||((De=O.extensions.cameraController)==null?void 0:De.name)!==t(u).pluginName?{name:"append",fn:T(()=>[S(ue,{"model-value":t(c).includes(O.name),disabled:t(ie)||t(re)||t(se)||t(E)||t(W),"onUpdate:modelValue":()=>o(O)},null,8,["model-value","disabled","onUpdate:modelValue"])]),key:"0"}:void 0]),1032,["disabled","active","onClick"])])}),128)):(a(),r("div",on,[i("span",null,p(e.$t("views.plugin.no_cameras")),1)]))])):K("",!0)],16)):K("",!0)]}),_:2},1032,["value"]))),128))]),_:1})]),_:1},8,["value"]))]))]}),_:1},8,["class"])]),i("div",an,[i("span",sn,p(e.$t("views.plugin.readme")),1),S(m,{class:ne(["cui-card !h-auto md:!h-full",{"items-center justify-center":t(X)}])},{content:T(()=>[t(X)?(a(),b(s,{key:0,class:"w-[30px] h-[30px]","stroke-width":"5"})):(a(),r("div",ln,[i("h3",rn,p(e.$t("views.plugin.readme")),1),i("div",{class:"markdown-body",innerHTML:t(ee).render(t(L)||e.$t("views.plugin.no_readme"))},null,8,cn)]))]),_:1},8,["class"])]),i("div",un,[i("span",dn,p(e.$t("views.plugin.changelog")),1),S(m,{class:ne(["cui-card !h-auto md:!h-full",{"items-center justify-center":t(ae)}])},{content:T(()=>[t(ae)?(a(),b(s,{key:0,class:"w-[30px] h-[30px]","stroke-width":"5"})):(a(),r("div",mn,[i("h3",pn,p(e.$t("views.plugin.changelog")),1),i("div",{class:"markdown-body",innerHTML:t(ee).render(t(oe)||e.$t("views.plugin.no_changelog"))},null,8,fn)]))]),_:1},8,["class"])])])])}}}),uo=ut(gn,[["__scopeId","data-v-2f40728b"]]);export{uo as default};
@@ -1 +1 @@
1
- import{e as he,m as ve,b as X,l as fe,c as J,h as ye,U as ke,d as $e,L as K,r as we}from"./primevue.D46ZuvwF.0.0.68.js";import{_ as Ce,a as Pe}from"./refresh-rounded.D2VADi6i.0.0.68.js";import{a as Y,a3 as ee,i as xe,a4 as be,z as Be,t as ze,h as Se,B as Le,b as Z,n as Ie}from"./main.DFrvmqIm.0.0.68.js";import{P as q,_ as Ne}from"./CuiPluginCard.3qrWv4xm.0.0.68.js";import{F as j,c as l,d as s,e as t,B as te,i as Ve,r as E,k as S,w as De,M as _,R as n,I as a,N as c,h as o,f as Te,$ as Me,L as $,H as W,X as L,Z as I,P as Ge,O as N,a1 as He,W as Q}from"./@vue.BxBKarQv.0.0.68.js";import{_ as Re}from"./VersionsHandler.vue_vue_type_script_setup_true_lang.DDk0j63-.0.0.68.js";import{u as se}from"./vue-i18n.Y-6ZUvD7.0.0.68.js";import"./@primeuix.bRNqZjQz.0.0.68.js";import"./@primevue.CLjOf_2A.0.0.68.js";import"./@tanstack.BsYRTdPr.0.0.68.js";import"./@vueuse.DWVBY8Dk.0.0.68.js";import"./nprogress.BvTTegtH.0.0.68.js";import"./@xterm.D6FDnMLM.0.0.68.js";import"./axios.lj9VQs0f.0.0.68.js";import"./pinia.olzLQsIJ.0.0.68.js";import"./vue-router.MLvizfYT.0.0.68.js";import"./vue-inline-svg.Cs3JM1Xv.0.0.68.js";import"./vee-validate.Cs2kJt5l.0.0.68.js";import"./@vee-validate.CnnpXP1B.0.0.68.js";import"./zod.2bfLsWMZ.0.0.68.js";import"./uuid.C6aID195.0.0.68.js";import"./socket.io-client.CkWaqEUv.0.0.68.js";import"./engine.io-client.2TmvK6nU.0.0.68.js";import"./engine.io-parser.BiEtp6m2.0.0.68.js";import"./@socket.io.Dkula2eQ.0.0.68.js";import"./socket.io-parser.DsT87Oon.0.0.68.js";import"./rxjs.Cfd_7YyY.0.0.68.js";import"./tslib.9k7AwCpt.0.0.68.js";import"./highlight.js.CO9Od8yG.0.0.68.js";import"./markdown-it.Dk__mw4Y.0.0.68.js";import"./mdurl.k9Sl0PQj.0.0.68.js";import"./uc.micro.kMc2yuuw.0.0.68.js";import"./entities.C20TfXL6.0.0.68.js";import"./linkify-it.IDZgcRNT.0.0.68.js";import"./punycode.js.Dj65hjkv.0.0.68.js";import"./qrcode.jcsj5TWj.0.0.68.js";import"./dijkstrajs.C00ieaqj.0.0.68.js";import"./draggabilly.BWcG_hBx.0.0.68.js";import"./get-size.D1dS-IaP.0.0.68.js";import"./unidragger.BlN8nuro.0.0.68.js";import"./ev-emitter.X5f1qa-c.0.0.68.js";import"./vue-zoomable.kygNhD9X.0.0.68.js";import"./primelocale.Bga3dOQu.0.0.68.js";import"./@intlify.6ljJeWIl.0.0.68.js";import"./trash-fill.CLUpPsSF.0.0.68.js";import"./CuiConsole.D1Y7P5YO.0.0.68.js";import"./system.DR4q1Efj.0.0.68.js";const Ee={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Qe(w,r){return s(),l("svg",Ee,r[0]||(r[0]=[t("g",{fill:"none"},[t("rect",{width:"16.5",height:"16.5",x:"3.75",y:"3.75",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.5",rx:"2"}),t("path",{fill:"currentColor",d:"M12 9a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v11.25h-4z"})],-1)]))}const je=j({name:"proicons-npm",render:Qe}),Ae={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Fe(w,r){return s(),l("svg",Ae,r[0]||(r[0]=[t("path",{fill:"currentColor",d:"M2 10.96a.985.985 0 0 1-.37-1.37L3.13 7c.11-.2.28-.34.47-.42l7.83-4.4c.16-.12.36-.18.57-.18s.41.06.57.18l7.9 4.44c.19.1.35.26.44.46l1.45 2.52c.28.48.11 1.09-.36 1.36l-1 .58v4.96c0 .38-.21.71-.53.88l-7.9 4.44c-.16.12-.36.18-.57.18s-.41-.06-.57-.18l-7.9-4.44A.99.99 0 0 1 3 16.5v-5.54c-.3.17-.68.18-1 0m10-6.81v6.7l5.96-3.35zM5 15.91l6 3.38v-6.71L5 9.21zm14 0v-3.22l-5 2.9c-.33.18-.7.17-1 .01v3.69zm-5.15-2.55l6.28-3.63l-.58-1.01l-6.28 3.63z"},null,-1)]))}const Ue=j({name:"mdi-package-variant",render:Fe}),Oe={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ze(w,r){return s(),l("svg",Oe,r[0]||(r[0]=[t("path",{fill:"currentColor",d:"M13 15.6c.3.2.7.2 1 0l5-2.9v.3c.7 0 1.4.1 2 .4v-1.8l1-.6c.5-.3.6-.9.4-1.4l-1.5-2.5c-.1-.2-.2-.4-.4-.5l-7.9-4.4c-.2-.1-.4-.2-.6-.2s-.4.1-.6.2L3.6 6.6c-.2.1-.4.2-.5.4L1.6 9.6c-.3.5-.1 1.1.4 1.4c.3.2.7.2 1 0v5.5c0 .4.2.7.5.9l7.9 4.4c.2.1.4.2.6.2s.4-.1.6-.2l.9-.5c-.3-.6-.4-1.3-.5-2m-2 0l-6-3.4V9.2l6 3.4zm9.1-9.6l-6.3 3.6l-.6-1l6.3-3.6zM12 10.8V4.2l6 3.3zm8 4.2v3h3v2h-3v3h-2v-3h-3v-2h3v-3z"},null,-1)]))}const qe=j({name:"mdi-package-variant-plus",render:Ze}),We={class:"cui-label"},Xe={class:"flex flex-row items-center justify-center w-full mt-8"},Je={key:2,class:"text-center py-10"},Ke={class:"text-muted mb-2"},Ye={class:"text-muted"},et={key:3,class:"w-full"},tt={key:4,class:"w-full plugin-list"},st={class:"plugin-info"},ot={class:"flex items-center"},nt={class:"font-medium text-base"},it={class:"text-sm text-muted mb-2"},lt={class:"plugin-description"},at={class:"plugin-meta"},rt={class:"plugin-meta-item"},ct={class:"meta-label font-semibold"},ut={class:"meta-value"},mt={class:"plugin-meta-item"},pt={class:"meta-label font-semibold"},dt={class:"meta-value"},_t={class:"plugin-actions"},gt={class:"flex gap-2 mb-2"},ht=te({__name:"PluginSearch",setup(w,{expose:r}){const C=new ee,V=Y(),{t:g}=se(),D=Ve("dialogRefProps"),p=E(""),v=E({}),h=E([]),{data:T,isFetching:P,refetch:u}=C.searchPluginsQuery(v,{page:1,pageSize:-1}),{data:A,isFetching:M,refetch:G}=C.getPluginsProgressQuery({page:1,pageSize:-1}),d=S(()=>P.value||M.value),f=S(()=>{var e;return!!((e=D.loading)!=null&&e.value||d.value)});De(T,e=>{e!=null&&e.result&&(h.value=e.result.filter(m=>!m.installPath))},{immediate:!0,deep:!0});const y=e=>{var m;return(m=A.value)==null?void 0:m.result.some(R=>R.pluginName===e)},x=e=>{e==null||e.preventDefault(),v.value.pluginname=p.value??""},H=()=>{p.value="",v.value={},x()},b=()=>{u(),G()},B=e=>{V.openComponentDialog(Re,{data:{title:g("components.dialog.title.install"),loading:f,contentProps:{target:o(e),installVersion:"latest",isNewPlugin:!0}}})};return r({isLoading:f}),(e,m)=>{const R=he,oe=xe,k=X,ne=ve,ie=fe,le=Ce,ae=ye,re=ke,ce=$e,ue=qe,me=K,pe=Ue,de=be,_e=je,z=J;return s(),l("div",null,[t("form",{onSubmit:Me(x,["prevent"])},[t("label",We,a(e.$t("components.form.label.name")),1),n(ie,null,{default:c(()=>[n(R,{modelValue:o(p),"onUpdate:modelValue":m[0]||(m[0]=i=>Te(p)?p.value=i:null),modelModifiers:{trim:!0},loading:o(d),placeholder:"camera-ui-",type:"text"},null,8,["modelValue","loading"]),n(ne,null,{default:c(()=>[n(k,{text:"",rounded:"",severity:"secondary",onClick:H},{icon:c(()=>[n(oe)]),_:1})]),_:1})]),_:1})],32),t("div",Xe,[t("h3",null,a(e.$t("components.plugin_search.plugins")),1),$((s(),_(k,{text:"",rounded:"",severity:"secondary",class:"cui-icon-md ml-auto",onClick:b},{icon:c(()=>[n(le,{width:"100%",height:"100%"})]),_:1})),[[z,{value:e.$t("components.plugin_search.refresh")}]]),n(ae,{size:"small",class:"ml-2 rounded-full"},{default:c(()=>[W(a(o(h).length),1)]),_:1})]),o(d)?(s(),_(re,{key:0,mode:"indeterminate",class:"my-3 !h-[1px]"})):(s(),_(ce,{key:1,class:"m-0 py-3"})),!o(d)&&!o(h).length?(s(),l("div",Je,[t("div",Ke,[n(ue,{class:"w-12 h-12 mx-auto opacity-30"})]),t("p",Ye,a(e.$t("views.plugins.no_plugins")),1)])):o(d)?(s(),l("div",et,[(s(),l(L,null,I(6,i=>n(me,{key:i,class:"mb-2",height:"132px"})),64))])):(s(),l("div",tt,[(s(!0),l(L,null,I(o(h),(i,ge)=>{var F,U;return $((s(),l("div",{key:ge,class:Ge(["plugin-list-item shadow-sm transition-default card-background custom-scrollbar",{"opacity-50 in-progress":y(i.pluginName)}])},[t("div",st,[t("div",ot,[n(pe,{class:"w-5 h-5 text-primary mr-2"}),t("h4",nt,a(i.displayName),1)]),t("div",it,a(i.pluginName),1),t("p",lt,a(i.description),1),t("div",at,[t("div",rt,[t("span",ct,a(e.$t("components.plugin_card.version"))+":",1),t("span",ut,a(i.latestVersion),1)]),t("div",mt,[t("span",pt,a(e.$t("components.plugin_card.author"))+":",1),t("span",dt,a(i.author),1)])])]),t("div",_t,[t("div",gt,[(F=i.links)!=null&&F.homepage?$((s(),_(k,{key:0,text:"",rounded:"",severity:"secondary",class:"cui-icon-md",onClick:O=>e.$router.absUrl(i.links.homepage,!0)},{icon:c(()=>[n(de,{width:"100%",height:"100%"})]),_:2},1032,["onClick"])),[[z,{value:"Github"}]]):N("",!0),(U=i.links)!=null&&U.npm?$((s(),_(k,{key:1,text:"",rounded:"",severity:"secondary",class:"cui-icon-md",onClick:O=>e.$router.absUrl(i.links.npm,!0)},{icon:c(()=>[n(_e,{width:"100%",height:"100%"})]),_:2},1032,["onClick"])),[[z,{value:"NPM"}]]):N("",!0)]),n(k,{class:"cui-button-medium",disabled:y(i.pluginName),onClick:O=>B(i)},{default:c(()=>[W(a(e.$t("components.form.button.install")),1)]),_:2},1032,["disabled","onClick"])])],2)),[[z,{value:y(i.pluginName)?e.$t("components.plugin_search.in_progress"):void 0}]])}),128))]))])}}}),vt=Be(ht,[["__scopeId","data-v-d266e35f"]]),ft={class:"page-title"},yt={key:0},kt={class:"flex items-center justify-center w-full h-full"},$t={key:1,class:"text-muted"},gs=te({__name:"Plugins",setup(w){const r=new ee,C=Y(),V=ze(),{smBreakpoint:g}=Se(),{t:D}=se(),{data:p,isFetching:v}=r.getPluginsQuery({page:1,pageSize:-1}),h=S(()=>v.value),T=S(()=>V.showBottombar.value?Le.HEIGHT:0),P=()=>{C.openComponentDialog(vt,{data:{title:D("components.dialog.title.search_plugin"),contentProps:{},hideConfirmButton:!0,fullscreen:!0}})};return(u,A)=>{const M=K,G=Ne,d=Ie,f=X,y=we,x=Pe,H=J;return s(),l("div",null,[t("h1",ft,a(u.$t(`views.${String(u.$route.name).toLowerCase()}.title`)),1),n(He,{name:"fade-2"},{default:c(()=>{var b,B;return[o(h)?(s(),l("div",{key:"loading",class:"grid w-full gap-2",style:Q({gridTemplateColumns:`repeat(auto-fill, minmax(${o(g)?"100%":"450px"}, 1fr))`})},[(s(),l(L,null,I(15,e=>n(M,{key:e,height:`${o(q).HEIGHT}px`,class:"cui-card"},null,8,["height"])),64))],4)):(s(),l("div",{key:1,class:"grid w-full gap-2",style:Q({gridTemplateColumns:`repeat(auto-fill, minmax(${o(g)?"100%":"450px"}, 1fr))`})},[(s(!0),l(L,null,I((b=o(p))==null?void 0:b.result,(e,m)=>(s(),_(G,{key:m,plugin:e},null,8,["plugin"]))),128)),("useCuiPermission"in u?u.useCuiPermission:o(Z))(void 0,"admin")&&!o(g)?(s(),l("div",yt,[n(y,{class:"cui-card",pt:{root:{style:{height:`${o(q).HEIGHT}px`}},body:{class:"h-full flex items-center justify-center"}}},{content:c(()=>[t("div",kt,[n(f,{text:"",rounded:"",class:"w-16 h-16 dark-mode",onClick:P},{icon:c(()=>[n(d,{width:"100%",height:"100%"})]),_:1})])]),_:1},8,["pt"])])):!((B=o(p))!=null&&B.result.length)&&("useCuiPermission"in u?u.useCuiPermission:o(Z))(void 0,"user",!0)?(s(),l("span",$t,a(u.$t("views.plugins.no_plugins")),1)):N("",!0)],4))]}),_:1}),o(g)?$((s(),_(f,{key:0,rounded:"",class:"transition-all cui-icon-3xl fixed right-safe-offset-5 z-10 shadow-lg text-white",style:Q({bottom:`calc(${o(T)}px + 1.25rem + env(safe-area-inset-bottom, 0px))`}),onClick:P},{icon:c(()=>[n(x,{width:"30px",height:"30px"})]),_:1},8,["style"])),[[H,{value:u.$t("views.plugins.search_plugins")},void 0,{top:!0}]]):N("",!0)])}}});export{gs as default};
1
+ import{e as he,m as ve,b as X,l as fe,c as J,h as ye,U as ke,d as $e,L as K,r as we}from"./primevue.BVVo-ukB.0.0.70.js";import{_ as Ce,a as Pe}from"./refresh-rounded.BzWz29y2.0.0.70.js";import{a as Y,a3 as ee,i as xe,a4 as be,z as Be,t as ze,h as Se,B as Le,b as Z,n as Ie}from"./main.D2NZuTnM.0.0.70.js";import{P as q,_ as Ne}from"./CuiPluginCard.CFaLdBEf.0.0.70.js";import{F as j,c as l,d as s,e as t,B as te,i as Ve,r as E,k as S,w as De,M as _,R as n,I as a,N as c,h as o,f as Te,$ as Me,L as $,H as W,X as L,Z as I,P as Ge,O as N,a1 as He,W as Q}from"./@vue.BsSvBeCe.0.0.70.js";import{_ as Re}from"./VersionsHandler.vue_vue_type_script_setup_true_lang.MC8r914h.0.0.70.js";import{u as se}from"./vue-i18n.BLwVbi61.0.0.70.js";import"./@primeuix.bRNqZjQz.0.0.70.js";import"./@primevue.DH9ak_9x.0.0.70.js";import"./@tanstack.Dk2rc1Gz.0.0.70.js";import"./@vueuse.T3qy5Jq4.0.0.70.js";import"./nprogress.DuNJBXnf.0.0.70.js";import"./@xterm.CJZZM5vf.0.0.70.js";import"./axios.lj9VQs0f.0.0.70.js";import"./pinia.BeBGFuqK.0.0.70.js";import"./vue-router.BQuUBAAr.0.0.70.js";import"./vue-inline-svg.B52C1cW8.0.0.70.js";import"./vee-validate.DwwGVNzx.0.0.70.js";import"./@vee-validate.i4o6WINE.0.0.70.js";import"./zod.2bfLsWMZ.0.0.70.js";import"./uuid.C6aID195.0.0.70.js";import"./socket.io-client.DC_wUGxw.0.0.70.js";import"./engine.io-client.CnosWdRP.0.0.70.js";import"./engine.io-parser.BiEtp6m2.0.0.70.js";import"./@socket.io.Dkula2eQ.0.0.70.js";import"./socket.io-parser.ChgZ8FD_.0.0.70.js";import"./rxjs.UbFxmZ7q.0.0.70.js";import"./tslib.9k7AwCpt.0.0.70.js";import"./highlight.js.DTPofZhc.0.0.70.js";import"./markdown-it.VQvmcJVu.0.0.70.js";import"./mdurl.k9Sl0PQj.0.0.70.js";import"./uc.micro.kMc2yuuw.0.0.70.js";import"./entities.C20TfXL6.0.0.70.js";import"./linkify-it.imhCvGRq.0.0.70.js";import"./punycode.js.Dj65hjkv.0.0.70.js";import"./qrcode.D7KqKQTM.0.0.70.js";import"./dijkstrajs.C00ieaqj.0.0.70.js";import"./draggabilly.Cuzjcd7v.0.0.70.js";import"./get-size.D1dS-IaP.0.0.70.js";import"./unidragger.DahEY3cm.0.0.70.js";import"./ev-emitter.X5f1qa-c.0.0.70.js";import"./vue-zoomable.Cq7IVJt5.0.0.70.js";import"./primelocale.Bga3dOQu.0.0.70.js";import"./@intlify.6ljJeWIl.0.0.70.js";import"./trash-fill.C8ZgD-Jz.0.0.70.js";import"./CuiConsole.B-YJZ4uY.0.0.70.js";import"./system.Ccn9lMgI.0.0.70.js";const Ee={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Qe(w,r){return s(),l("svg",Ee,r[0]||(r[0]=[t("g",{fill:"none"},[t("rect",{width:"16.5",height:"16.5",x:"3.75",y:"3.75",stroke:"currentColor","stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"1.5",rx:"2"}),t("path",{fill:"currentColor",d:"M12 9a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1v11.25h-4z"})],-1)]))}const je=j({name:"proicons-npm",render:Qe}),Ae={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Fe(w,r){return s(),l("svg",Ae,r[0]||(r[0]=[t("path",{fill:"currentColor",d:"M2 10.96a.985.985 0 0 1-.37-1.37L3.13 7c.11-.2.28-.34.47-.42l7.83-4.4c.16-.12.36-.18.57-.18s.41.06.57.18l7.9 4.44c.19.1.35.26.44.46l1.45 2.52c.28.48.11 1.09-.36 1.36l-1 .58v4.96c0 .38-.21.71-.53.88l-7.9 4.44c-.16.12-.36.18-.57.18s-.41-.06-.57-.18l-7.9-4.44A.99.99 0 0 1 3 16.5v-5.54c-.3.17-.68.18-1 0m10-6.81v6.7l5.96-3.35zM5 15.91l6 3.38v-6.71L5 9.21zm14 0v-3.22l-5 2.9c-.33.18-.7.17-1 .01v3.69zm-5.15-2.55l6.28-3.63l-.58-1.01l-6.28 3.63z"},null,-1)]))}const Ue=j({name:"mdi-package-variant",render:Fe}),Oe={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function Ze(w,r){return s(),l("svg",Oe,r[0]||(r[0]=[t("path",{fill:"currentColor",d:"M13 15.6c.3.2.7.2 1 0l5-2.9v.3c.7 0 1.4.1 2 .4v-1.8l1-.6c.5-.3.6-.9.4-1.4l-1.5-2.5c-.1-.2-.2-.4-.4-.5l-7.9-4.4c-.2-.1-.4-.2-.6-.2s-.4.1-.6.2L3.6 6.6c-.2.1-.4.2-.5.4L1.6 9.6c-.3.5-.1 1.1.4 1.4c.3.2.7.2 1 0v5.5c0 .4.2.7.5.9l7.9 4.4c.2.1.4.2.6.2s.4-.1.6-.2l.9-.5c-.3-.6-.4-1.3-.5-2m-2 0l-6-3.4V9.2l6 3.4zm9.1-9.6l-6.3 3.6l-.6-1l6.3-3.6zM12 10.8V4.2l6 3.3zm8 4.2v3h3v2h-3v3h-2v-3h-3v-2h3v-3z"},null,-1)]))}const qe=j({name:"mdi-package-variant-plus",render:Ze}),We={class:"cui-label"},Xe={class:"flex flex-row items-center justify-center w-full mt-8"},Je={key:2,class:"text-center py-10"},Ke={class:"text-muted mb-2"},Ye={class:"text-muted"},et={key:3,class:"w-full"},tt={key:4,class:"w-full plugin-list"},st={class:"plugin-info"},ot={class:"flex items-center"},nt={class:"font-medium text-base"},it={class:"text-sm text-muted mb-2"},lt={class:"plugin-description"},at={class:"plugin-meta"},rt={class:"plugin-meta-item"},ct={class:"meta-label font-semibold"},ut={class:"meta-value"},mt={class:"plugin-meta-item"},pt={class:"meta-label font-semibold"},dt={class:"meta-value"},_t={class:"plugin-actions"},gt={class:"flex gap-2 mb-2"},ht=te({__name:"PluginSearch",setup(w,{expose:r}){const C=new ee,V=Y(),{t:g}=se(),D=Ve("dialogRefProps"),p=E(""),v=E({}),h=E([]),{data:T,isFetching:P,refetch:u}=C.searchPluginsQuery(v,{page:1,pageSize:-1}),{data:A,isFetching:M,refetch:G}=C.getPluginsProgressQuery({page:1,pageSize:-1}),d=S(()=>P.value||M.value),f=S(()=>{var e;return!!((e=D.loading)!=null&&e.value||d.value)});De(T,e=>{e!=null&&e.result&&(h.value=e.result.filter(m=>!m.installPath))},{immediate:!0,deep:!0});const y=e=>{var m;return(m=A.value)==null?void 0:m.result.some(R=>R.pluginName===e)},x=e=>{e==null||e.preventDefault(),v.value.pluginname=p.value??""},H=()=>{p.value="",v.value={},x()},b=()=>{u(),G()},B=e=>{V.openComponentDialog(Re,{data:{title:g("components.dialog.title.install"),loading:f,contentProps:{target:o(e),installVersion:"latest",isNewPlugin:!0}}})};return r({isLoading:f}),(e,m)=>{const R=he,oe=xe,k=X,ne=ve,ie=fe,le=Ce,ae=ye,re=ke,ce=$e,ue=qe,me=K,pe=Ue,de=be,_e=je,z=J;return s(),l("div",null,[t("form",{onSubmit:Me(x,["prevent"])},[t("label",We,a(e.$t("components.form.label.name")),1),n(ie,null,{default:c(()=>[n(R,{modelValue:o(p),"onUpdate:modelValue":m[0]||(m[0]=i=>Te(p)?p.value=i:null),modelModifiers:{trim:!0},loading:o(d),placeholder:"camera-ui-",type:"text"},null,8,["modelValue","loading"]),n(ne,null,{default:c(()=>[n(k,{text:"",rounded:"",severity:"secondary",onClick:H},{icon:c(()=>[n(oe)]),_:1})]),_:1})]),_:1})],32),t("div",Xe,[t("h3",null,a(e.$t("components.plugin_search.plugins")),1),$((s(),_(k,{text:"",rounded:"",severity:"secondary",class:"cui-icon-md ml-auto",onClick:b},{icon:c(()=>[n(le,{width:"100%",height:"100%"})]),_:1})),[[z,{value:e.$t("components.plugin_search.refresh")}]]),n(ae,{size:"small",class:"ml-2 rounded-full"},{default:c(()=>[W(a(o(h).length),1)]),_:1})]),o(d)?(s(),_(re,{key:0,mode:"indeterminate",class:"my-3 !h-[1px]"})):(s(),_(ce,{key:1,class:"m-0 py-3"})),!o(d)&&!o(h).length?(s(),l("div",Je,[t("div",Ke,[n(ue,{class:"w-12 h-12 mx-auto opacity-30"})]),t("p",Ye,a(e.$t("views.plugins.no_plugins")),1)])):o(d)?(s(),l("div",et,[(s(),l(L,null,I(6,i=>n(me,{key:i,class:"mb-2",height:"132px"})),64))])):(s(),l("div",tt,[(s(!0),l(L,null,I(o(h),(i,ge)=>{var F,U;return $((s(),l("div",{key:ge,class:Ge(["plugin-list-item shadow-sm transition-default card-background custom-scrollbar",{"opacity-50 in-progress":y(i.pluginName)}])},[t("div",st,[t("div",ot,[n(pe,{class:"w-5 h-5 text-primary mr-2"}),t("h4",nt,a(i.displayName),1)]),t("div",it,a(i.pluginName),1),t("p",lt,a(i.description),1),t("div",at,[t("div",rt,[t("span",ct,a(e.$t("components.plugin_card.version"))+":",1),t("span",ut,a(i.latestVersion),1)]),t("div",mt,[t("span",pt,a(e.$t("components.plugin_card.author"))+":",1),t("span",dt,a(i.author),1)])])]),t("div",_t,[t("div",gt,[(F=i.links)!=null&&F.homepage?$((s(),_(k,{key:0,text:"",rounded:"",severity:"secondary",class:"cui-icon-md",onClick:O=>e.$router.absUrl(i.links.homepage,!0)},{icon:c(()=>[n(de,{width:"100%",height:"100%"})]),_:2},1032,["onClick"])),[[z,{value:"Github"}]]):N("",!0),(U=i.links)!=null&&U.npm?$((s(),_(k,{key:1,text:"",rounded:"",severity:"secondary",class:"cui-icon-md",onClick:O=>e.$router.absUrl(i.links.npm,!0)},{icon:c(()=>[n(_e,{width:"100%",height:"100%"})]),_:2},1032,["onClick"])),[[z,{value:"NPM"}]]):N("",!0)]),n(k,{class:"cui-button-medium",disabled:y(i.pluginName),onClick:O=>B(i)},{default:c(()=>[W(a(e.$t("components.form.button.install")),1)]),_:2},1032,["disabled","onClick"])])],2)),[[z,{value:y(i.pluginName)?e.$t("components.plugin_search.in_progress"):void 0}]])}),128))]))])}}}),vt=Be(ht,[["__scopeId","data-v-d266e35f"]]),ft={class:"page-title"},yt={key:0},kt={class:"flex items-center justify-center w-full h-full"},$t={key:1,class:"text-muted"},gs=te({__name:"Plugins",setup(w){const r=new ee,C=Y(),V=ze(),{smBreakpoint:g}=Se(),{t:D}=se(),{data:p,isFetching:v}=r.getPluginsQuery({page:1,pageSize:-1}),h=S(()=>v.value),T=S(()=>V.showBottombar.value?Le.HEIGHT:0),P=()=>{C.openComponentDialog(vt,{data:{title:D("components.dialog.title.search_plugin"),contentProps:{},hideConfirmButton:!0,fullscreen:!0}})};return(u,A)=>{const M=K,G=Ne,d=Ie,f=X,y=we,x=Pe,H=J;return s(),l("div",null,[t("h1",ft,a(u.$t(`views.${String(u.$route.name).toLowerCase()}.title`)),1),n(He,{name:"fade-2"},{default:c(()=>{var b,B;return[o(h)?(s(),l("div",{key:"loading",class:"grid w-full gap-2",style:Q({gridTemplateColumns:`repeat(auto-fill, minmax(${o(g)?"100%":"450px"}, 1fr))`})},[(s(),l(L,null,I(15,e=>n(M,{key:e,height:`${o(q).HEIGHT}px`,class:"cui-card"},null,8,["height"])),64))],4)):(s(),l("div",{key:1,class:"grid w-full gap-2",style:Q({gridTemplateColumns:`repeat(auto-fill, minmax(${o(g)?"100%":"450px"}, 1fr))`})},[(s(!0),l(L,null,I((b=o(p))==null?void 0:b.result,(e,m)=>(s(),_(G,{key:m,plugin:e},null,8,["plugin"]))),128)),("useCuiPermission"in u?u.useCuiPermission:o(Z))(void 0,"admin")&&!o(g)?(s(),l("div",yt,[n(y,{class:"cui-card",pt:{root:{style:{height:`${o(q).HEIGHT}px`}},body:{class:"h-full flex items-center justify-center"}}},{content:c(()=>[t("div",kt,[n(f,{text:"",rounded:"",class:"w-16 h-16 dark-mode",onClick:P},{icon:c(()=>[n(d,{width:"100%",height:"100%"})]),_:1})])]),_:1},8,["pt"])])):!((B=o(p))!=null&&B.result.length)&&("useCuiPermission"in u?u.useCuiPermission:o(Z))(void 0,"user",!0)?(s(),l("span",$t,a(u.$t("views.plugins.no_plugins")),1)):N("",!0)],4))]}),_:1}),o(g)?$((s(),_(f,{key:0,rounded:"",class:"transition-all cui-icon-3xl fixed right-safe-offset-5 z-10 shadow-lg text-white",style:Q({bottom:`calc(${o(T)}px + 1.25rem + env(safe-area-inset-bottom, 0px))`}),onClick:P},{icon:c(()=>[n(x,{width:"30px",height:"30px"})]),_:1},8,["style"])),[[H,{value:u.$t("views.plugins.search_plugins")},void 0,{top:!0}]]):N("",!0)])}}});export{gs as default};
@@ -0,0 +1 @@
1
+ import{z as i}from"./main.D2NZuTnM.0.0.70.js";import{c as m,d as p,e as r,I as e}from"./@vue.BsSvBeCe.0.0.70.js";import"./@tanstack.Dk2rc1Gz.0.0.70.js";import"./primevue.BVVo-ukB.0.0.70.js";import"./@primeuix.bRNqZjQz.0.0.70.js";import"./@primevue.DH9ak_9x.0.0.70.js";import"./@vueuse.T3qy5Jq4.0.0.70.js";import"./nprogress.DuNJBXnf.0.0.70.js";import"./@xterm.CJZZM5vf.0.0.70.js";import"./axios.lj9VQs0f.0.0.70.js";import"./vue-i18n.BLwVbi61.0.0.70.js";import"./@intlify.6ljJeWIl.0.0.70.js";import"./pinia.BeBGFuqK.0.0.70.js";import"./vue-router.BQuUBAAr.0.0.70.js";import"./vue-inline-svg.B52C1cW8.0.0.70.js";import"./vee-validate.DwwGVNzx.0.0.70.js";import"./@vee-validate.i4o6WINE.0.0.70.js";import"./zod.2bfLsWMZ.0.0.70.js";import"./uuid.C6aID195.0.0.70.js";import"./socket.io-client.DC_wUGxw.0.0.70.js";import"./engine.io-client.CnosWdRP.0.0.70.js";import"./engine.io-parser.BiEtp6m2.0.0.70.js";import"./@socket.io.Dkula2eQ.0.0.70.js";import"./socket.io-parser.ChgZ8FD_.0.0.70.js";import"./rxjs.UbFxmZ7q.0.0.70.js";import"./tslib.9k7AwCpt.0.0.70.js";import"./highlight.js.DTPofZhc.0.0.70.js";import"./markdown-it.VQvmcJVu.0.0.70.js";import"./mdurl.k9Sl0PQj.0.0.70.js";import"./uc.micro.kMc2yuuw.0.0.70.js";import"./entities.C20TfXL6.0.0.70.js";import"./linkify-it.imhCvGRq.0.0.70.js";import"./punycode.js.Dj65hjkv.0.0.70.js";import"./qrcode.D7KqKQTM.0.0.70.js";import"./dijkstrajs.C00ieaqj.0.0.70.js";import"./draggabilly.Cuzjcd7v.0.0.70.js";import"./get-size.D1dS-IaP.0.0.70.js";import"./unidragger.DahEY3cm.0.0.70.js";import"./ev-emitter.X5f1qa-c.0.0.70.js";import"./vue-zoomable.Cq7IVJt5.0.0.70.js";import"./primelocale.Bga3dOQu.0.0.70.js";const s={},a={class:"page-title"};function n(t,o){return p(),m("div",null,[r("h1",a,e(t.$t(`views.${String(t.$route.name).toLowerCase()}.title`)),1),o[0]||(o[0]=r("span",{class:"text-muted"},"WIP",-1))])}const X=i(s,[["render",n]]);export{X as default};
@@ -1 +1 @@
1
- import{b as O}from"./primevue.D46ZuvwF.0.0.68.js";import{F as P,c,d as n,e as o,B as T,t as U,M as h,J as V,h as s,N as S,R as x,O as I,I as N,P as A,ac as E,r as J,k as R,w as D,W as L,X as Q,Z as q,V as K,Q as Y}from"./@vue.BxBKarQv.0.0.68.js";import{z as M,t as tt,am as H,h as X,an as Z,b as W,B as et,T as ot,e as st}from"./main.DFrvmqIm.0.0.68.js";import{u as j}from"./vue-router.MLvizfYT.0.0.68.js";import{o as nt,l as at,h as it,i as rt}from"./@vueuse.DWVBY8Dk.0.0.68.js";import"./@primeuix.bRNqZjQz.0.0.68.js";import"./@primevue.CLjOf_2A.0.0.68.js";import"./@tanstack.BsYRTdPr.0.0.68.js";import"./axios.lj9VQs0f.0.0.68.js";import"./vue-i18n.Y-6ZUvD7.0.0.68.js";import"./@intlify.6ljJeWIl.0.0.68.js";import"./pinia.olzLQsIJ.0.0.68.js";import"./vue-inline-svg.Cs3JM1Xv.0.0.68.js";import"./vee-validate.Cs2kJt5l.0.0.68.js";import"./@vee-validate.CnnpXP1B.0.0.68.js";import"./zod.2bfLsWMZ.0.0.68.js";import"./uuid.C6aID195.0.0.68.js";import"./socket.io-client.CkWaqEUv.0.0.68.js";import"./engine.io-client.2TmvK6nU.0.0.68.js";import"./engine.io-parser.BiEtp6m2.0.0.68.js";import"./@socket.io.Dkula2eQ.0.0.68.js";import"./socket.io-parser.DsT87Oon.0.0.68.js";import"./rxjs.Cfd_7YyY.0.0.68.js";import"./tslib.9k7AwCpt.0.0.68.js";import"./highlight.js.CO9Od8yG.0.0.68.js";import"./@xterm.D6FDnMLM.0.0.68.js";import"./markdown-it.Dk__mw4Y.0.0.68.js";import"./mdurl.k9Sl0PQj.0.0.68.js";import"./uc.micro.kMc2yuuw.0.0.68.js";import"./entities.C20TfXL6.0.0.68.js";import"./linkify-it.IDZgcRNT.0.0.68.js";import"./punycode.js.Dj65hjkv.0.0.68.js";import"./qrcode.jcsj5TWj.0.0.68.js";import"./dijkstrajs.C00ieaqj.0.0.68.js";import"./draggabilly.BWcG_hBx.0.0.68.js";import"./get-size.D1dS-IaP.0.0.68.js";import"./unidragger.BlN8nuro.0.0.68.js";import"./ev-emitter.X5f1qa-c.0.0.68.js";import"./vue-zoomable.kygNhD9X.0.0.68.js";import"./primelocale.Bga3dOQu.0.0.68.js";import"./nprogress.BvTTegtH.0.0.68.js";const lt={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ct(w,a){return n(),c("svg",lt,a[0]||(a[0]=[o("path",{fill:"currentColor","fill-rule":"evenodd",d:"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12s4.477 10 10 10M9.97 8.47a.75.75 0 0 1 1.06 0l3 3a.75.75 0 0 1 0 1.06l-3 3a.75.75 0 1 1-1.06-1.06L12.44 12L9.97 9.53a.75.75 0 0 1 0-1.06","clip-rule":"evenodd"},null,-1)]))}const ut=P({name:"solar-round-alt-arrow-right-bold",render:ct}),pt={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function mt(w,a){return n(),c("svg",pt,a[0]||(a[0]=[o("path",{fill:"currentColor","fill-rule":"evenodd",d:"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12s4.477 10 10 10m2.03-13.53a.75.75 0 0 1 0 1.06L11.56 12l2.47 2.47a.75.75 0 1 1-1.06 1.06l-3-3a.75.75 0 0 1 0-1.06l3-3a.75.75 0 0 1 1.06 0","clip-rule":"evenodd"},null,-1)]))}const dt=P({name:"solar-round-alt-arrow-left-bold",render:mt}),_t={key:0},ft={key:1},vt={class:"overflow-hidden w-full"},bt={class:"ml-2 flex flex-row items-center justify-between"},ht={class:"text-start flex-1"},xt={class:"text-sm font-bold max-w-100 truncate"},wt={key:0,class:"text-sm text-muted font-normal"},gt=T({__name:"CuiSubNavItem",props:{label:{},to:{},description:{},icon:{},activeIcon:{}},setup(w){const a=w,{icon:_,activeIcon:u,label:g,description:f,to:p}=U(a);return(m,r)=>{const d=O,v=V("RouterLink");return n(),h(v,{to:s(p)},{default:S(({isExactActive:l})=>[x(d,{text:"",severity:"secondary",class:A(["subnavitem-button w-full h-[120px] flex items-start justify-start p-6 bg-none text-color hover:!text-primary active:!text-primary focus:!text-primary rounded-none",{"active !text-primary":l}]),fluid:""},{default:S(()=>[s(_)&&!l||!s(u)?(n(),c("div",_t,[x(s(_),{class:"w-[24px] h-[24px]"})])):s(u)&&l?(n(),c("div",ft,[x(s(u),{class:"w-[24px] h-[24px]"})])):I("",!0),o("div",vt,[o("div",bt,[o("div",ht,[o("div",xt,N(s(g)),1),s(f)?(n(),c("div",wt,N(s(f)),1)):I("",!0)])])])]),_:2},1032,["class"])]),_:1},8,["to"])}}}),yt=M(gt,[["__scopeId","data-v-2c8eafde"]]),$={CLOSED:0,EXPANDED:288},Rt=T({__name:"CuiSubNavbar",setup(w,{expose:a}){const _=j(),{showBottombar:u,subbarState:g}=tt(),{bus:f}=H(),{xlBreakpoint:p}=X(),m=E("subnavbarRef"),r=J("closed");nt(m,t=>{const e=t.target,y=e.closest("#menu-icon"),i=e.closest("#submenu-icon"),b=e.closest("#navbar-icon");!y&&!i&&!b&&B()});const d=R(()=>p.value?"opened":r.value),v=R(()=>d.value==="closed"?$.CLOSED:$.EXPANDED),l=R(()=>Z.find(t=>t.name==="Settings").children.filter(t=>{var e;return((e=t.meta)==null?void 0:e.settingsBar)&&W(t)})),k=R(()=>u.value?et.HEIGHT:0);D(g,t=>{t&&t!==r.value&&(r.value=t)}),D(_.currentRoute,(t,e)=>{t.path!==e.path&&B()});const B=()=>{r.value="closed",f.emit({subbarState:"closed"})};return a({subnavbarState:d}),(t,e)=>{const y=yt;return n(),c("nav",{ref_key:"subnavbarRef",ref:m,class:"cui-subnavbar fixed transition-all duration-300 overflow-x-hidden overflow-y-scroll md:!pl-0 pl-safe pb-safe w-full h-full flex flex-col",style:L({width:`${s(v)}px`,borderRightWidth:s(d)==="opened"?"1px":"0px",paddingBottom:`calc(env(safe-area-inset-top, 0px) + env(safe-area-inset-bottom, 0px) + ${s(ot).HEIGHT}px + ${s(k)}px)`})},[(n(!0),c(Q,null,q(s(l),i=>{var b,C;return n(),h(y,{key:i.name,icon:i.meta.settingsBar.icon.default,"active-icon":i.meta.settingsBar.icon.active,to:i.path,label:t.$t(`navigation.${((b=i.meta)==null?void 0:b.name).toLowerCase()}`),description:t.$t(`navigation_description.${(C=i.meta)==null?void 0:C.description}`),class:"cui-list-item !m-0 !p-0 shrink-0",style:L({width:`${s($).EXPANDED}px`})},null,8,["icon","active-icon","to","label","description","style"])}),128))],4)}}}),St=M(Rt,[["__scopeId","data-v-dca09f7c"]]),kt={class:"w-full h-full relative"},Bt={class:"w-full flex flex-row h-[calc(40px+1rem)] py-2 items-center fixed z-2"},Ct={class:"relative z-2 page-title !m-0"},fe=T({__name:"Settings",setup(w){const a=j(),{bus:_}=H(),{isTouch:u}=st(),{mdBreakpoint:g,xlBreakpoint:f}=X(),p=E("subnavbarRef"),m=E("containerRef"),r=Z.find(t=>t.name==="Settings").children.filter(t=>W(t)),d=at(p),{isSwiping:v,direction:l}=u.value?it(m):rt(m),k=R(()=>{var t;return((t=p.value)==null?void 0:t.subnavbarState)??"closed"});D([v,l],()=>{if(v.value){const t=r.findIndex(e=>e.path===a.currentRoute.value.path.split("/settings/")[1]);switch(l.value){case"right":{const e=r[t-1];e&&a.push({path:e.path})}break;case"left":{const e=r[t+1];e&&a.push({path:e.path})}break}}});const B=()=>{const t=k.value==="opened"?"closed":"opened";_.emit({subbarState:t})};return(t,e)=>{var z;const y=St,i=dt,b=ut,C=O,F=V("RouterView");return n(),c("div",null,[x(y,{ref_key:"subnavbarRef",ref:p,class:"z-4"},null,512),o("main",{class:"relative w-full h-full",style:L({paddingLeft:s(g)?"0px":`${s(d).width.value}px`})},[o("div",kt,[o("div",Bt,[e[0]||(e[0]=o("div",{class:"ml-4"},null,-1)),s(f)?I("",!0):(n(),h(C,{key:0,id:"submenu-icon",severity:"secondary",class:"mr-2 cui-icon-md relative z-2",text:"",rounded:"",onClick:B},{icon:S(()=>[s(k)==="opened"?(n(),h(i,{key:0,width:"100%",height:"100%"})):(n(),h(b,{key:1,width:"100%",height:"100%"}))]),_:1})),o("h1",Ct,N(t.$t(`views.settings.title_${(z=t.$route.meta)==null?void 0:z.name}`)),1),e[1]||(e[1]=o("div",{class:"gradient-blur rotate-180 !h-[70px]"},[o("div"),o("div"),o("div"),o("div"),o("div"),o("div")],-1))]),o("div",{ref_key:"containerRef",ref:m,class:A(["p-4 h-full w-full pt-[calc(40px+2rem)]",{}])},[x(F,{class:"w-full h-full"},{default:S(({Component:G})=>[x(K,{name:"fade",mode:"out-in"},{default:S(()=>[(n(),h(Y(G)))]),_:2},1024)]),_:1})],512)])],4)])}}});export{fe as default};
1
+ import{b as O}from"./primevue.BVVo-ukB.0.0.70.js";import{F as P,c,d as n,e as o,B as T,t as U,M as h,J as V,h as s,N as S,R as x,O as I,I as N,P as A,ac as E,r as J,k as R,w as D,W as L,X as Q,Z as q,V as K,Q as Y}from"./@vue.BsSvBeCe.0.0.70.js";import{z as M,t as tt,am as H,h as X,an as Z,b as W,B as et,T as ot,e as st}from"./main.D2NZuTnM.0.0.70.js";import{u as j}from"./vue-router.BQuUBAAr.0.0.70.js";import{o as nt,l as at,h as it,i as rt}from"./@vueuse.T3qy5Jq4.0.0.70.js";import"./@primeuix.bRNqZjQz.0.0.70.js";import"./@primevue.DH9ak_9x.0.0.70.js";import"./@tanstack.Dk2rc1Gz.0.0.70.js";import"./axios.lj9VQs0f.0.0.70.js";import"./vue-i18n.BLwVbi61.0.0.70.js";import"./@intlify.6ljJeWIl.0.0.70.js";import"./pinia.BeBGFuqK.0.0.70.js";import"./vue-inline-svg.B52C1cW8.0.0.70.js";import"./vee-validate.DwwGVNzx.0.0.70.js";import"./@vee-validate.i4o6WINE.0.0.70.js";import"./zod.2bfLsWMZ.0.0.70.js";import"./uuid.C6aID195.0.0.70.js";import"./socket.io-client.DC_wUGxw.0.0.70.js";import"./engine.io-client.CnosWdRP.0.0.70.js";import"./engine.io-parser.BiEtp6m2.0.0.70.js";import"./@socket.io.Dkula2eQ.0.0.70.js";import"./socket.io-parser.ChgZ8FD_.0.0.70.js";import"./rxjs.UbFxmZ7q.0.0.70.js";import"./tslib.9k7AwCpt.0.0.70.js";import"./highlight.js.DTPofZhc.0.0.70.js";import"./@xterm.CJZZM5vf.0.0.70.js";import"./markdown-it.VQvmcJVu.0.0.70.js";import"./mdurl.k9Sl0PQj.0.0.70.js";import"./uc.micro.kMc2yuuw.0.0.70.js";import"./entities.C20TfXL6.0.0.70.js";import"./linkify-it.imhCvGRq.0.0.70.js";import"./punycode.js.Dj65hjkv.0.0.70.js";import"./qrcode.D7KqKQTM.0.0.70.js";import"./dijkstrajs.C00ieaqj.0.0.70.js";import"./draggabilly.Cuzjcd7v.0.0.70.js";import"./get-size.D1dS-IaP.0.0.70.js";import"./unidragger.DahEY3cm.0.0.70.js";import"./ev-emitter.X5f1qa-c.0.0.70.js";import"./vue-zoomable.Cq7IVJt5.0.0.70.js";import"./primelocale.Bga3dOQu.0.0.70.js";import"./nprogress.DuNJBXnf.0.0.70.js";const lt={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function ct(w,a){return n(),c("svg",lt,a[0]||(a[0]=[o("path",{fill:"currentColor","fill-rule":"evenodd",d:"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12s4.477 10 10 10M9.97 8.47a.75.75 0 0 1 1.06 0l3 3a.75.75 0 0 1 0 1.06l-3 3a.75.75 0 1 1-1.06-1.06L12.44 12L9.97 9.53a.75.75 0 0 1 0-1.06","clip-rule":"evenodd"},null,-1)]))}const ut=P({name:"solar-round-alt-arrow-right-bold",render:ct}),pt={viewBox:"0 0 24 24",width:"1.2em",height:"1.2em"};function mt(w,a){return n(),c("svg",pt,a[0]||(a[0]=[o("path",{fill:"currentColor","fill-rule":"evenodd",d:"M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2S2 6.477 2 12s4.477 10 10 10m2.03-13.53a.75.75 0 0 1 0 1.06L11.56 12l2.47 2.47a.75.75 0 1 1-1.06 1.06l-3-3a.75.75 0 0 1 0-1.06l3-3a.75.75 0 0 1 1.06 0","clip-rule":"evenodd"},null,-1)]))}const dt=P({name:"solar-round-alt-arrow-left-bold",render:mt}),_t={key:0},ft={key:1},vt={class:"overflow-hidden w-full"},bt={class:"ml-2 flex flex-row items-center justify-between"},ht={class:"text-start flex-1"},xt={class:"text-sm font-bold max-w-100 truncate"},wt={key:0,class:"text-sm text-muted font-normal"},gt=T({__name:"CuiSubNavItem",props:{label:{},to:{},description:{},icon:{},activeIcon:{}},setup(w){const a=w,{icon:_,activeIcon:u,label:g,description:f,to:p}=U(a);return(m,r)=>{const d=O,v=V("RouterLink");return n(),h(v,{to:s(p)},{default:S(({isExactActive:l})=>[x(d,{text:"",severity:"secondary",class:A(["subnavitem-button w-full h-[120px] flex items-start justify-start p-6 bg-none text-color hover:!text-primary active:!text-primary focus:!text-primary rounded-none",{"active !text-primary":l}]),fluid:""},{default:S(()=>[s(_)&&!l||!s(u)?(n(),c("div",_t,[x(s(_),{class:"w-[24px] h-[24px]"})])):s(u)&&l?(n(),c("div",ft,[x(s(u),{class:"w-[24px] h-[24px]"})])):I("",!0),o("div",vt,[o("div",bt,[o("div",ht,[o("div",xt,N(s(g)),1),s(f)?(n(),c("div",wt,N(s(f)),1)):I("",!0)])])])]),_:2},1032,["class"])]),_:1},8,["to"])}}}),yt=M(gt,[["__scopeId","data-v-2c8eafde"]]),$={CLOSED:0,EXPANDED:288},Rt=T({__name:"CuiSubNavbar",setup(w,{expose:a}){const _=j(),{showBottombar:u,subbarState:g}=tt(),{bus:f}=H(),{xlBreakpoint:p}=X(),m=E("subnavbarRef"),r=J("closed");nt(m,t=>{const e=t.target,y=e.closest("#menu-icon"),i=e.closest("#submenu-icon"),b=e.closest("#navbar-icon");!y&&!i&&!b&&B()});const d=R(()=>p.value?"opened":r.value),v=R(()=>d.value==="closed"?$.CLOSED:$.EXPANDED),l=R(()=>Z.find(t=>t.name==="Settings").children.filter(t=>{var e;return((e=t.meta)==null?void 0:e.settingsBar)&&W(t)})),k=R(()=>u.value?et.HEIGHT:0);D(g,t=>{t&&t!==r.value&&(r.value=t)}),D(_.currentRoute,(t,e)=>{t.path!==e.path&&B()});const B=()=>{r.value="closed",f.emit({subbarState:"closed"})};return a({subnavbarState:d}),(t,e)=>{const y=yt;return n(),c("nav",{ref_key:"subnavbarRef",ref:m,class:"cui-subnavbar fixed transition-all duration-300 overflow-x-hidden overflow-y-scroll md:!pl-0 pl-safe pb-safe w-full h-full flex flex-col",style:L({width:`${s(v)}px`,borderRightWidth:s(d)==="opened"?"1px":"0px",paddingBottom:`calc(env(safe-area-inset-top, 0px) + env(safe-area-inset-bottom, 0px) + ${s(ot).HEIGHT}px + ${s(k)}px)`})},[(n(!0),c(Q,null,q(s(l),i=>{var b,C;return n(),h(y,{key:i.name,icon:i.meta.settingsBar.icon.default,"active-icon":i.meta.settingsBar.icon.active,to:i.path,label:t.$t(`navigation.${((b=i.meta)==null?void 0:b.name).toLowerCase()}`),description:t.$t(`navigation_description.${(C=i.meta)==null?void 0:C.description}`),class:"cui-list-item !m-0 !p-0 shrink-0",style:L({width:`${s($).EXPANDED}px`})},null,8,["icon","active-icon","to","label","description","style"])}),128))],4)}}}),St=M(Rt,[["__scopeId","data-v-dca09f7c"]]),kt={class:"w-full h-full relative"},Bt={class:"w-full flex flex-row h-[calc(40px+1rem)] py-2 items-center fixed z-2"},Ct={class:"relative z-2 page-title !m-0"},fe=T({__name:"Settings",setup(w){const a=j(),{bus:_}=H(),{isTouch:u}=st(),{mdBreakpoint:g,xlBreakpoint:f}=X(),p=E("subnavbarRef"),m=E("containerRef"),r=Z.find(t=>t.name==="Settings").children.filter(t=>W(t)),d=at(p),{isSwiping:v,direction:l}=u.value?it(m):rt(m),k=R(()=>{var t;return((t=p.value)==null?void 0:t.subnavbarState)??"closed"});D([v,l],()=>{if(v.value){const t=r.findIndex(e=>e.path===a.currentRoute.value.path.split("/settings/")[1]);switch(l.value){case"right":{const e=r[t-1];e&&a.push({path:e.path})}break;case"left":{const e=r[t+1];e&&a.push({path:e.path})}break}}});const B=()=>{const t=k.value==="opened"?"closed":"opened";_.emit({subbarState:t})};return(t,e)=>{var z;const y=St,i=dt,b=ut,C=O,F=V("RouterView");return n(),c("div",null,[x(y,{ref_key:"subnavbarRef",ref:p,class:"z-4"},null,512),o("main",{class:"relative w-full h-full",style:L({paddingLeft:s(g)?"0px":`${s(d).width.value}px`})},[o("div",kt,[o("div",Bt,[e[0]||(e[0]=o("div",{class:"ml-4"},null,-1)),s(f)?I("",!0):(n(),h(C,{key:0,id:"submenu-icon",severity:"secondary",class:"mr-2 cui-icon-md relative z-2",text:"",rounded:"",onClick:B},{icon:S(()=>[s(k)==="opened"?(n(),h(i,{key:0,width:"100%",height:"100%"})):(n(),h(b,{key:1,width:"100%",height:"100%"}))]),_:1})),o("h1",Ct,N(t.$t(`views.settings.title_${(z=t.$route.meta)==null?void 0:z.name}`)),1),e[1]||(e[1]=o("div",{class:"gradient-blur rotate-180 !h-[70px]"},[o("div"),o("div"),o("div"),o("div"),o("div"),o("div")],-1))]),o("div",{ref_key:"containerRef",ref:m,class:A(["p-4 h-full w-full pt-[calc(40px+2rem)]",{}])},[x(F,{class:"w-full h-full"},{default:S(({Component:G})=>[x(K,{name:"fade",mode:"out-in"},{default:S(()=>[(n(),h(Y(G)))]),_:2},1024)]),_:1})],512)])],4)])}}});export{fe as default};
@@ -1 +1 @@
1
- import{r as Z,l as ee,e as se,f as ae,o as le,n as oe,j as te,b as ne}from"./primevue.D46ZuvwF.0.0.68.js";import{u as ie,ao as re,c as me,ap as ue,aq as ce,z as de}from"./main.DFrvmqIm.0.0.68.js";import{B as pe,t as fe,ac as ge,z as ve,r as q,c as G,d as F,R as s,N as o,h as e,e as n,O as H,I as d,m as h,V as w,M as _e,H as A}from"./@vue.BxBKarQv.0.0.68.js";import{F as be,a as g,E as y}from"./vee-validate.Cs2kJt5l.0.0.68.js";import{u as he}from"./vue-i18n.Y-6ZUvD7.0.0.68.js";import{s as we}from"./pinia.olzLQsIJ.0.0.68.js";import"./@primeuix.bRNqZjQz.0.0.68.js";import"./@primevue.CLjOf_2A.0.0.68.js";import"./@tanstack.BsYRTdPr.0.0.68.js";import"./@vueuse.DWVBY8Dk.0.0.68.js";import"./nprogress.BvTTegtH.0.0.68.js";import"./@xterm.D6FDnMLM.0.0.68.js";import"./axios.lj9VQs0f.0.0.68.js";import"./vue-router.MLvizfYT.0.0.68.js";import"./vue-inline-svg.Cs3JM1Xv.0.0.68.js";import"./@vee-validate.CnnpXP1B.0.0.68.js";import"./zod.2bfLsWMZ.0.0.68.js";import"./uuid.C6aID195.0.0.68.js";import"./socket.io-client.CkWaqEUv.0.0.68.js";import"./engine.io-client.2TmvK6nU.0.0.68.js";import"./engine.io-parser.BiEtp6m2.0.0.68.js";import"./@socket.io.Dkula2eQ.0.0.68.js";import"./socket.io-parser.DsT87Oon.0.0.68.js";import"./rxjs.Cfd_7YyY.0.0.68.js";import"./tslib.9k7AwCpt.0.0.68.js";import"./highlight.js.CO9Od8yG.0.0.68.js";import"./markdown-it.Dk__mw4Y.0.0.68.js";import"./mdurl.k9Sl0PQj.0.0.68.js";import"./uc.micro.kMc2yuuw.0.0.68.js";import"./entities.C20TfXL6.0.0.68.js";import"./linkify-it.IDZgcRNT.0.0.68.js";import"./punycode.js.Dj65hjkv.0.0.68.js";import"./qrcode.jcsj5TWj.0.0.68.js";import"./dijkstrajs.C00ieaqj.0.0.68.js";import"./draggabilly.BWcG_hBx.0.0.68.js";import"./get-size.D1dS-IaP.0.0.68.js";import"./unidragger.BlN8nuro.0.0.68.js";import"./ev-emitter.X5f1qa-c.0.0.68.js";import"./vue-zoomable.kygNhD9X.0.0.68.js";import"./primelocale.Bga3dOQu.0.0.68.js";import"./@intlify.6ljJeWIl.0.0.68.js";const ye={class:"relative"},xe={class:"image-upload rounded-full z-1"},Se={for:"file-input"},$e={class:"card-title"},ke={class:"flex flex-col gap-6"},Ce={for:"username",class:"cui-label"},Me={for:"password",class:"cui-label"},Te={for:"passwordConfirm",class:"cui-label"},Ie={for:"sessionTimer",class:"cui-label"},Re={class:"flex items-center gap-4"},Ve={class:"flex flex-col field-switch-gap"},ze={for:"rememberMe",class:"cui-label-switch"},Be={class:"flex items-center gap-4"},Ne={class:"flex flex-col field-switch-gap"},je={for:"singleSession",class:"cui-label-switch"},Fe={key:0,class:"flex flex-row items-end justify-end gap-2"},Ae=pe({__name:"SettingsAccount",props:{firststeps:{type:Boolean}},setup(J,{expose:K}){var D,P;const L=J,R=ie(),E=me(),{t:V}=he(),{user:a}=we(R),{firststeps:Q}=fe(L),k=ge("formRef"),C=ve(),M=q("avatar"),r=q(!1);let z=((D=a.value)==null?void 0:D.rememberMe)??!1,B=((P=a.value)==null?void 0:P.singleSession)??!1;const W=()=>{k.value&&(k.value.resetForm(),M.value="avatar",C.value=void 0),a.value&&(a.value.rememberMe=z,a.value.singleSession=B)},X=async t=>{var m;const l=(m=t.target)==null?void 0:m.files;C.value=l==null?void 0:l[0],M.value=await ce(t)??M.value},Y=async t=>{var x,T,_,S,I,$,p;r.value=!0;let l;const m={...t};delete m.upload;const N=((x=a.value)==null?void 0:x.username)!==m.username||m.password&&m.passwordConfirm,v=Object.entries(m).some(([,u])=>u!==void 0);if(C.value&&(l=new FormData,l.append("upload",C.value)),!v&&!l){r.value=!1;return}try{await R.updateUser(m,l),E.add({severity:"success",summary:V("components.toast.title_success"),detail:V("components.toast.profile_updated"),life:3e3}),z=((T=a.value)==null?void 0:T.rememberMe)??z,B=((_=a.value)==null?void 0:_.singleSession)??B,N&&R.logout()}catch(u){E.add({severity:"error",summary:V("components.toast.title_error"),detail:((I=(S=u.response)==null?void 0:S.data)==null?void 0:I.message)??u.message??u,life:3e3}),console.error(((p=($=u.response)==null?void 0:$.data)==null?void 0:p.message)??u.message??u)}r.value=!1};return K({formRef:k}),(t,l)=>{const m=ue,N=se,v=ee,x=ae,T=le,_=oe,S=te,I=Z,$=ne;return F(),G("div",null,[s(e(be),{ref_key:"formRef",ref:k,class:"flex flex-col w-full gap-6","validation-schema":e(re),onSubmit:l[5]||(l[5]=p=>Y(p))},{default:o(()=>[n("div",ye,[n("div",xe,[n("label",Se,[s(m,{src:e(M),size:64,"show-border":!1},null,8,["src"]),s(e(g),{id:"file-input",type:"file",name:"upload",class:"hidden",accept:"image/png,image/jpeg,image/jpg",onChange:l[0]||(l[0]=p=>X(p))})])]),n("span",$e,d(t.$t("views.settings.profile")),1),s(I,{class:"cui-card"},{content:o(()=>{var p,u,O,U;return[n("div",ke,[s(e(g),{"model-value":(p=e(a))==null?void 0:p.username,name:"username",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Ce,d(t.$t("components.form.label.username")),1),s(v,null,{default:o(()=>[s(N,h(c,{invalid:i.length>0,loading:e(r),type:"text"}),null,16,["invalid","loading"])]),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"username",class:"cui-input-error"})]),_:1})]),_:1},8,["model-value"]),s(e(g),{name:"password",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Me,d(t.$t("components.form.label.new_password")),1),s(v,null,{default:o(()=>[s(x,h({invalid:i.length>0},c,{loading:e(r),feedback:!1,"toggle-mask":""}),null,16,["invalid","loading"])]),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"password",class:"cui-input-error"})]),_:1})]),_:1}),s(e(g),{name:"passwordConfirm",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Te,d(t.$t("components.form.label.new_password_confirm")),1),s(v,null,{default:o(()=>[s(x,h({invalid:i.length>0},c,{loading:e(r),feedback:!1,"toggle-mask":""}),null,16,["invalid","loading"])]),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"passwordConfirm",class:"cui-input-error"})]),_:1})]),_:1}),s(e(g),{"model-value":(u=e(a))==null?void 0:u.sessionTimer,name:"sessionTimer",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Ie,d(t.$t("components.form.label.session_timer")),1),s(v,null,{default:o(()=>{var f,b;return[s(T,h({"model-value":(f=e(a))==null?void 0:f.sessionTimer},c,{invalid:i.length>0,loading:e(r),"show-buttons":"","use-grouping":!1,step:600,min:3600,disabled:(b=e(a))==null?void 0:b.rememberMe,onValueChange:l[1]||(l[1]=j=>e(a)?e(a).sessionTimer=j:null),onInput:l[2]||(l[2]=j=>e(a)?e(a).sessionTimer=j.value:null)}),null,16,["model-value","invalid","loading","disabled"])]}),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"sessionTimer",class:"cui-input-error"})]),_:1}),i.length?H("",!0):(F(),_e(_,{key:0,severity:"secondary",variant:"simple",size:"small",class:"cui-input-hint"},{default:o(()=>[A(d(t.$t("components.form.hint.session_timer")),1)]),_:1}))]),_:1},8,["model-value"]),s(e(g),{"model-value":(O=e(a))==null?void 0:O.rememberMe,value:!0,"unchecked-value":!1,type:"checkbox",name:"rememberMe",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>{var f;return[n("div",Re,[n("div",Ve,[n("label",ze,d(t.$t("components.form.label.remember_me")),1),s(_,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:o(()=>[A(d(t.$t("components.form.hint.remember_me")),1)]),_:1}),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"rememberMe",class:"cui-input-switch-error"})]),_:1})]),s(S,h({"model-value":(f=e(a))==null?void 0:f.rememberMe},c,{invalid:i.length>0,loading:e(r),class:"ml-auto shrink-0",onValueChange:l[3]||(l[3]=b=>e(a)?e(a).rememberMe=b:null)}),null,16,["model-value","invalid","loading"])])]}),_:1},8,["model-value"]),s(e(g),{"model-value":(U=e(a))==null?void 0:U.singleSession,value:!0,"unchecked-value":!1,type:"checkbox",name:"singleSession",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>{var f;return[n("div",Be,[n("div",Ne,[n("label",je,d(t.$t("components.form.label.single_session")),1),s(_,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:o(()=>[A(d(t.$t("components.form.hint.single_session")),1)]),_:1}),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"singleSession",class:"cui-input-switch-error"})]),_:1})]),s(S,h({"model-value":(f=e(a))==null?void 0:f.singleSession},c,{invalid:i.length>0,loading:e(r),class:"ml-auto shrink-0",onValueChange:l[4]||(l[4]=b=>e(a)?e(a).singleSession=b:null)}),null,16,["model-value","invalid","loading"])])]}),_:1},8,["model-value"])])]}),_:1})]),e(Q)?H("",!0):(F(),G("div",Fe,[s($,{type:"button",loading:e(r),severity:"secondary",class:"cui-button-medium",label:t.$t("components.form.button.cancel"),onClick:W},null,8,["loading","label"]),s($,{type:"submit",loading:e(r),class:"cui-button-medium mr-4 md:mr-0",label:t.$t("components.form.button.save")},null,8,["loading","label"])]))]),_:1},8,["validation-schema"])])}}}),ks=de(Ae,[["__scopeId","data-v-841a4fb6"]]);export{ks as default};
1
+ import{r as Z,l as ee,e as se,f as ae,o as le,n as oe,j as te,b as ne}from"./primevue.BVVo-ukB.0.0.70.js";import{u as ie,ao as re,c as me,ap as ue,aq as ce,z as de}from"./main.D2NZuTnM.0.0.70.js";import{B as pe,t as fe,ac as ge,z as ve,r as q,c as G,d as F,R as s,N as o,h as e,e as n,O as H,I as d,m as h,V as w,M as _e,H as A}from"./@vue.BsSvBeCe.0.0.70.js";import{F as be,a as g,E as y}from"./vee-validate.DwwGVNzx.0.0.70.js";import{u as he}from"./vue-i18n.BLwVbi61.0.0.70.js";import{s as we}from"./pinia.BeBGFuqK.0.0.70.js";import"./@primeuix.bRNqZjQz.0.0.70.js";import"./@primevue.DH9ak_9x.0.0.70.js";import"./@tanstack.Dk2rc1Gz.0.0.70.js";import"./@vueuse.T3qy5Jq4.0.0.70.js";import"./nprogress.DuNJBXnf.0.0.70.js";import"./@xterm.CJZZM5vf.0.0.70.js";import"./axios.lj9VQs0f.0.0.70.js";import"./vue-router.BQuUBAAr.0.0.70.js";import"./vue-inline-svg.B52C1cW8.0.0.70.js";import"./@vee-validate.i4o6WINE.0.0.70.js";import"./zod.2bfLsWMZ.0.0.70.js";import"./uuid.C6aID195.0.0.70.js";import"./socket.io-client.DC_wUGxw.0.0.70.js";import"./engine.io-client.CnosWdRP.0.0.70.js";import"./engine.io-parser.BiEtp6m2.0.0.70.js";import"./@socket.io.Dkula2eQ.0.0.70.js";import"./socket.io-parser.ChgZ8FD_.0.0.70.js";import"./rxjs.UbFxmZ7q.0.0.70.js";import"./tslib.9k7AwCpt.0.0.70.js";import"./highlight.js.DTPofZhc.0.0.70.js";import"./markdown-it.VQvmcJVu.0.0.70.js";import"./mdurl.k9Sl0PQj.0.0.70.js";import"./uc.micro.kMc2yuuw.0.0.70.js";import"./entities.C20TfXL6.0.0.70.js";import"./linkify-it.imhCvGRq.0.0.70.js";import"./punycode.js.Dj65hjkv.0.0.70.js";import"./qrcode.D7KqKQTM.0.0.70.js";import"./dijkstrajs.C00ieaqj.0.0.70.js";import"./draggabilly.Cuzjcd7v.0.0.70.js";import"./get-size.D1dS-IaP.0.0.70.js";import"./unidragger.DahEY3cm.0.0.70.js";import"./ev-emitter.X5f1qa-c.0.0.70.js";import"./vue-zoomable.Cq7IVJt5.0.0.70.js";import"./primelocale.Bga3dOQu.0.0.70.js";import"./@intlify.6ljJeWIl.0.0.70.js";const ye={class:"relative"},xe={class:"image-upload rounded-full z-1"},Se={for:"file-input"},$e={class:"card-title"},ke={class:"flex flex-col gap-6"},Ce={for:"username",class:"cui-label"},Me={for:"password",class:"cui-label"},Te={for:"passwordConfirm",class:"cui-label"},Ie={for:"sessionTimer",class:"cui-label"},Re={class:"flex items-center gap-4"},Ve={class:"flex flex-col field-switch-gap"},ze={for:"rememberMe",class:"cui-label-switch"},Be={class:"flex items-center gap-4"},Ne={class:"flex flex-col field-switch-gap"},je={for:"singleSession",class:"cui-label-switch"},Fe={key:0,class:"flex flex-row items-end justify-end gap-2"},Ae=pe({__name:"SettingsAccount",props:{firststeps:{type:Boolean}},setup(J,{expose:K}){var D,P;const L=J,R=ie(),E=me(),{t:V}=he(),{user:a}=we(R),{firststeps:Q}=fe(L),k=ge("formRef"),C=ve(),M=q("avatar"),r=q(!1);let z=((D=a.value)==null?void 0:D.rememberMe)??!1,B=((P=a.value)==null?void 0:P.singleSession)??!1;const W=()=>{k.value&&(k.value.resetForm(),M.value="avatar",C.value=void 0),a.value&&(a.value.rememberMe=z,a.value.singleSession=B)},X=async t=>{var m;const l=(m=t.target)==null?void 0:m.files;C.value=l==null?void 0:l[0],M.value=await ce(t)??M.value},Y=async t=>{var x,T,_,S,I,$,p;r.value=!0;let l;const m={...t};delete m.upload;const N=((x=a.value)==null?void 0:x.username)!==m.username||m.password&&m.passwordConfirm,v=Object.entries(m).some(([,u])=>u!==void 0);if(C.value&&(l=new FormData,l.append("upload",C.value)),!v&&!l){r.value=!1;return}try{await R.updateUser(m,l),E.add({severity:"success",summary:V("components.toast.title_success"),detail:V("components.toast.profile_updated"),life:3e3}),z=((T=a.value)==null?void 0:T.rememberMe)??z,B=((_=a.value)==null?void 0:_.singleSession)??B,N&&R.logout()}catch(u){E.add({severity:"error",summary:V("components.toast.title_error"),detail:((I=(S=u.response)==null?void 0:S.data)==null?void 0:I.message)??u.message??u,life:3e3}),console.error(((p=($=u.response)==null?void 0:$.data)==null?void 0:p.message)??u.message??u)}r.value=!1};return K({formRef:k}),(t,l)=>{const m=ue,N=se,v=ee,x=ae,T=le,_=oe,S=te,I=Z,$=ne;return F(),G("div",null,[s(e(be),{ref_key:"formRef",ref:k,class:"flex flex-col w-full gap-6","validation-schema":e(re),onSubmit:l[5]||(l[5]=p=>Y(p))},{default:o(()=>[n("div",ye,[n("div",xe,[n("label",Se,[s(m,{src:e(M),size:64,"show-border":!1},null,8,["src"]),s(e(g),{id:"file-input",type:"file",name:"upload",class:"hidden",accept:"image/png,image/jpeg,image/jpg",onChange:l[0]||(l[0]=p=>X(p))})])]),n("span",$e,d(t.$t("views.settings.profile")),1),s(I,{class:"cui-card"},{content:o(()=>{var p,u,O,U;return[n("div",ke,[s(e(g),{"model-value":(p=e(a))==null?void 0:p.username,name:"username",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Ce,d(t.$t("components.form.label.username")),1),s(v,null,{default:o(()=>[s(N,h(c,{invalid:i.length>0,loading:e(r),type:"text"}),null,16,["invalid","loading"])]),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"username",class:"cui-input-error"})]),_:1})]),_:1},8,["model-value"]),s(e(g),{name:"password",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Me,d(t.$t("components.form.label.new_password")),1),s(v,null,{default:o(()=>[s(x,h({invalid:i.length>0},c,{loading:e(r),feedback:!1,"toggle-mask":""}),null,16,["invalid","loading"])]),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"password",class:"cui-input-error"})]),_:1})]),_:1}),s(e(g),{name:"passwordConfirm",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Te,d(t.$t("components.form.label.new_password_confirm")),1),s(v,null,{default:o(()=>[s(x,h({invalid:i.length>0},c,{loading:e(r),feedback:!1,"toggle-mask":""}),null,16,["invalid","loading"])]),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"passwordConfirm",class:"cui-input-error"})]),_:1})]),_:1}),s(e(g),{"model-value":(u=e(a))==null?void 0:u.sessionTimer,name:"sessionTimer",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>[n("label",Ie,d(t.$t("components.form.label.session_timer")),1),s(v,null,{default:o(()=>{var f,b;return[s(T,h({"model-value":(f=e(a))==null?void 0:f.sessionTimer},c,{invalid:i.length>0,loading:e(r),"show-buttons":"","use-grouping":!1,step:600,min:3600,disabled:(b=e(a))==null?void 0:b.rememberMe,onValueChange:l[1]||(l[1]=j=>e(a)?e(a).sessionTimer=j:null),onInput:l[2]||(l[2]=j=>e(a)?e(a).sessionTimer=j.value:null)}),null,16,["model-value","invalid","loading","disabled"])]}),_:2},1024),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"sessionTimer",class:"cui-input-error"})]),_:1}),i.length?H("",!0):(F(),_e(_,{key:0,severity:"secondary",variant:"simple",size:"small",class:"cui-input-hint"},{default:o(()=>[A(d(t.$t("components.form.hint.session_timer")),1)]),_:1}))]),_:1},8,["model-value"]),s(e(g),{"model-value":(O=e(a))==null?void 0:O.rememberMe,value:!0,"unchecked-value":!1,type:"checkbox",name:"rememberMe",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>{var f;return[n("div",Re,[n("div",Ve,[n("label",ze,d(t.$t("components.form.label.remember_me")),1),s(_,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:o(()=>[A(d(t.$t("components.form.hint.remember_me")),1)]),_:1}),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"rememberMe",class:"cui-input-switch-error"})]),_:1})]),s(S,h({"model-value":(f=e(a))==null?void 0:f.rememberMe},c,{invalid:i.length>0,loading:e(r),class:"ml-auto shrink-0",onValueChange:l[3]||(l[3]=b=>e(a)?e(a).rememberMe=b:null)}),null,16,["model-value","invalid","loading"])])]}),_:1},8,["model-value"]),s(e(g),{"model-value":(U=e(a))==null?void 0:U.singleSession,value:!0,"unchecked-value":!1,type:"checkbox",name:"singleSession",as:"div",class:"flex flex-col field-gap"},{default:o(({field:c,errors:i})=>{var f;return[n("div",Be,[n("div",Ne,[n("label",je,d(t.$t("components.form.label.single_session")),1),s(_,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:o(()=>[A(d(t.$t("components.form.hint.single_session")),1)]),_:1}),s(w,{name:"fade"},{default:o(()=>[s(e(y),{name:"singleSession",class:"cui-input-switch-error"})]),_:1})]),s(S,h({"model-value":(f=e(a))==null?void 0:f.singleSession},c,{invalid:i.length>0,loading:e(r),class:"ml-auto shrink-0",onValueChange:l[4]||(l[4]=b=>e(a)?e(a).singleSession=b:null)}),null,16,["model-value","invalid","loading"])])]}),_:1},8,["model-value"])])]}),_:1})]),e(Q)?H("",!0):(F(),G("div",Fe,[s($,{type:"button",loading:e(r),severity:"secondary",class:"cui-button-medium",label:t.$t("components.form.button.cancel"),onClick:W},null,8,["loading","label"]),s($,{type:"submit",loading:e(r),class:"cui-button-medium mr-4 md:mr-0",label:t.$t("components.form.button.save")},null,8,["loading","label"])]))]),_:1},8,["validation-schema"])])}}}),ks=de(Ae,[["__scopeId","data-v-841a4fb6"]]);export{ks as default};
@@ -0,0 +1 @@
1
+ import{_ as o}from"./SettingsAppearance.vue_vue_type_script_setup_true_lang.D6sykhe2.0.0.70.js";import"./primevue.BVVo-ukB.0.0.70.js";import"./@primeuix.bRNqZjQz.0.0.70.js";import"./@vue.BsSvBeCe.0.0.70.js";import"./@primevue.DH9ak_9x.0.0.70.js";import"./main.D2NZuTnM.0.0.70.js";import"./@tanstack.Dk2rc1Gz.0.0.70.js";import"./@vueuse.T3qy5Jq4.0.0.70.js";import"./nprogress.DuNJBXnf.0.0.70.js";import"./@xterm.CJZZM5vf.0.0.70.js";import"./axios.lj9VQs0f.0.0.70.js";import"./vue-i18n.BLwVbi61.0.0.70.js";import"./@intlify.6ljJeWIl.0.0.70.js";import"./pinia.BeBGFuqK.0.0.70.js";import"./vue-router.BQuUBAAr.0.0.70.js";import"./vue-inline-svg.B52C1cW8.0.0.70.js";import"./vee-validate.DwwGVNzx.0.0.70.js";import"./@vee-validate.i4o6WINE.0.0.70.js";import"./zod.2bfLsWMZ.0.0.70.js";import"./uuid.C6aID195.0.0.70.js";import"./socket.io-client.DC_wUGxw.0.0.70.js";import"./engine.io-client.CnosWdRP.0.0.70.js";import"./engine.io-parser.BiEtp6m2.0.0.70.js";import"./@socket.io.Dkula2eQ.0.0.70.js";import"./socket.io-parser.ChgZ8FD_.0.0.70.js";import"./rxjs.UbFxmZ7q.0.0.70.js";import"./tslib.9k7AwCpt.0.0.70.js";import"./highlight.js.DTPofZhc.0.0.70.js";import"./markdown-it.VQvmcJVu.0.0.70.js";import"./mdurl.k9Sl0PQj.0.0.70.js";import"./uc.micro.kMc2yuuw.0.0.70.js";import"./entities.C20TfXL6.0.0.70.js";import"./linkify-it.imhCvGRq.0.0.70.js";import"./punycode.js.Dj65hjkv.0.0.70.js";import"./qrcode.D7KqKQTM.0.0.70.js";import"./dijkstrajs.C00ieaqj.0.0.70.js";import"./draggabilly.Cuzjcd7v.0.0.70.js";import"./get-size.D1dS-IaP.0.0.70.js";import"./unidragger.DahEY3cm.0.0.70.js";import"./ev-emitter.X5f1qa-c.0.0.70.js";import"./vue-zoomable.Cq7IVJt5.0.0.70.js";import"./primelocale.Bga3dOQu.0.0.70.js";export{o as default};
@@ -1 +1 @@
1
- import{r as y,p as S,n as B,j as U}from"./primevue.D46ZuvwF.0.0.68.js";import{ar as k,ak as z,q as C,as as M}from"./main.DFrvmqIm.0.0.68.js";import{s as v}from"./pinia.olzLQsIJ.0.0.68.js";import{B as N,c as T,d as E,e,R as l,I as t,N as c,h as o,f as b,H as r}from"./@vue.BxBKarQv.0.0.68.js";const R={class:"flex flex-col w-full gap-6"},O={class:"card-title"},j={class:"flex flex-col gap-6"},q={class:"flex flex-col field-gap"},A={class:"cui-label"},D={class:"flex flex-col field-gap"},H={class:"flex items-center"},I={class:"flex flex-col field-switch-gap"},L={class:"cui-label-switch"},F={class:"card-title"},G={class:"flex flex-col gap-6"},J={class:"flex flex-col field-gap"},K={class:"cui-label"},P={class:"card-title"},Q={class:"flex flex-col gap-6"},W={class:"flex flex-col field-gap"},X={class:"cui-label"},Y={class:"flex flex-col field-gap"},Z={class:"flex items-center"},ee={class:"flex flex-col field-switch-gap"},se={class:"cui-label-switch"},le={class:"flex flex-col field-gap"},te={class:"flex items-center"},oe={class:"flex flex-col field-switch-gap"},ae={class:"cui-label-switch"},ie={class:"flex flex-col field-gap"},ne={class:"flex items-center"},ce={class:"flex flex-col field-switch-gap"},de={class:"cui-label-switch"},_e=N({__name:"SettingsAppearance",setup(re){const g=k(),w=z(),V=C(),{locale:p,languages:x}=v(g),{colors:$,theme:u,autoMode:m}=v(w),{uiSettings:n}=v(V);return(s,a)=>{const _=S,d=B,f=U,h=y;return E(),T("div",null,[e("div",R,[e("div",null,[e("span",O,t(s.$t("views.settings.theme")),1),l(h,{class:"cui-card"},{content:c(()=>[e("div",j,[e("div",q,[e("label",A,t(s.$t("components.form.label.theme")),1),l(_,{modelValue:o(u),"onUpdate:modelValue":a[0]||(a[0]=i=>b(u)?u.value=i:null),options:o($),disabled:o(m)},null,8,["modelValue","options","disabled"])]),e("div",D,[e("div",H,[e("div",I,[e("label",L,t(s.$t("components.form.label.system_preference")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.system_preference")),1)]),_:1})]),l(f,{modelValue:o(m),"onUpdate:modelValue":a[1]||(a[1]=i=>b(m)?m.value=i:null),class:"ml-auto shrink-0"},null,8,["modelValue"])])])])]),_:1})]),e("div",null,[e("span",F,t(s.$t("views.settings.locale")),1),l(h,{class:"cui-card"},{content:c(()=>[e("div",G,[e("div",J,[e("label",K,t(s.$t("components.form.label.language")),1),l(_,{modelValue:o(p),"onUpdate:modelValue":a[2]||(a[2]=i=>b(p)?p.value=i:null),options:o(x)},null,8,["modelValue","options"])])])]),_:1})]),e("div",null,[e("span",P,t(s.$t("views.settings.interface")),1),l(h,{class:"cui-card"},{content:c(()=>[e("div",Q,[e("div",W,[e("label",X,t(s.$t("components.form.label.default_settings_page")),1),l(_,{modelValue:o(n).interface.selectedSettingsView,"onUpdate:modelValue":a[3]||(a[3]=i=>o(n).interface.selectedSettingsView=i),options:o(M)},null,8,["modelValue","options"]),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.default_settings_page")),1)]),_:1})]),e("div",Y,[e("div",Z,[e("div",ee,[e("label",se,t(s.$t("components.form.label.show_camera_events")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.show_camera_events")),1)]),_:1})]),l(f,{modelValue:o(n).cameras.showEvents,"onUpdate:modelValue":a[4]||(a[4]=i=>o(n).cameras.showEvents=i),class:"ml-auto shrink-0"},null,8,["modelValue"])])]),e("div",le,[e("div",te,[e("div",oe,[e("label",ae,t(s.$t("components.form.label.show_bottombar_on_mobile")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.show_bottombar_on_mobile")),1)]),_:1})]),l(f,{modelValue:o(n).interface.showBottomBarOnMobile,"onUpdate:modelValue":a[5]||(a[5]=i=>o(n).interface.showBottomBarOnMobile=i),class:"ml-auto shrink-0"},null,8,["modelValue"])])]),e("div",ie,[e("div",ne,[e("div",ce,[e("label",de,t(s.$t("components.form.label.navbar_stay_collapsed")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.navbar_stay_collapsed")),1)]),_:1})]),l(f,{modelValue:o(n).interface.navbarStayCollapsed,"onUpdate:modelValue":a[6]||(a[6]=i=>o(n).interface.navbarStayCollapsed=i),class:"ml-auto shrink-0"},null,8,["modelValue"])])])])]),_:1})])])])}}});export{_e as _};
1
+ import{r as y,p as S,n as B,j as U}from"./primevue.BVVo-ukB.0.0.70.js";import{ar as k,ak as z,q as C,as as M}from"./main.D2NZuTnM.0.0.70.js";import{s as v}from"./pinia.BeBGFuqK.0.0.70.js";import{B as N,c as T,d as E,e,R as l,I as t,N as c,h as o,f as b,H as r}from"./@vue.BsSvBeCe.0.0.70.js";const R={class:"flex flex-col w-full gap-6"},O={class:"card-title"},j={class:"flex flex-col gap-6"},q={class:"flex flex-col field-gap"},A={class:"cui-label"},D={class:"flex flex-col field-gap"},H={class:"flex items-center"},I={class:"flex flex-col field-switch-gap"},L={class:"cui-label-switch"},F={class:"card-title"},G={class:"flex flex-col gap-6"},J={class:"flex flex-col field-gap"},K={class:"cui-label"},P={class:"card-title"},Q={class:"flex flex-col gap-6"},W={class:"flex flex-col field-gap"},X={class:"cui-label"},Y={class:"flex flex-col field-gap"},Z={class:"flex items-center"},ee={class:"flex flex-col field-switch-gap"},se={class:"cui-label-switch"},le={class:"flex flex-col field-gap"},te={class:"flex items-center"},oe={class:"flex flex-col field-switch-gap"},ae={class:"cui-label-switch"},ie={class:"flex flex-col field-gap"},ne={class:"flex items-center"},ce={class:"flex flex-col field-switch-gap"},de={class:"cui-label-switch"},_e=N({__name:"SettingsAppearance",setup(re){const g=k(),w=z(),V=C(),{locale:p,languages:x}=v(g),{colors:$,theme:u,autoMode:m}=v(w),{uiSettings:n}=v(V);return(s,a)=>{const _=S,d=B,f=U,h=y;return E(),T("div",null,[e("div",R,[e("div",null,[e("span",O,t(s.$t("views.settings.theme")),1),l(h,{class:"cui-card"},{content:c(()=>[e("div",j,[e("div",q,[e("label",A,t(s.$t("components.form.label.theme")),1),l(_,{modelValue:o(u),"onUpdate:modelValue":a[0]||(a[0]=i=>b(u)?u.value=i:null),options:o($),disabled:o(m)},null,8,["modelValue","options","disabled"])]),e("div",D,[e("div",H,[e("div",I,[e("label",L,t(s.$t("components.form.label.system_preference")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.system_preference")),1)]),_:1})]),l(f,{modelValue:o(m),"onUpdate:modelValue":a[1]||(a[1]=i=>b(m)?m.value=i:null),class:"ml-auto shrink-0"},null,8,["modelValue"])])])])]),_:1})]),e("div",null,[e("span",F,t(s.$t("views.settings.locale")),1),l(h,{class:"cui-card"},{content:c(()=>[e("div",G,[e("div",J,[e("label",K,t(s.$t("components.form.label.language")),1),l(_,{modelValue:o(p),"onUpdate:modelValue":a[2]||(a[2]=i=>b(p)?p.value=i:null),options:o(x)},null,8,["modelValue","options"])])])]),_:1})]),e("div",null,[e("span",P,t(s.$t("views.settings.interface")),1),l(h,{class:"cui-card"},{content:c(()=>[e("div",Q,[e("div",W,[e("label",X,t(s.$t("components.form.label.default_settings_page")),1),l(_,{modelValue:o(n).interface.selectedSettingsView,"onUpdate:modelValue":a[3]||(a[3]=i=>o(n).interface.selectedSettingsView=i),options:o(M)},null,8,["modelValue","options"]),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.default_settings_page")),1)]),_:1})]),e("div",Y,[e("div",Z,[e("div",ee,[e("label",se,t(s.$t("components.form.label.show_camera_events")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.show_camera_events")),1)]),_:1})]),l(f,{modelValue:o(n).cameras.showEvents,"onUpdate:modelValue":a[4]||(a[4]=i=>o(n).cameras.showEvents=i),class:"ml-auto shrink-0"},null,8,["modelValue"])])]),e("div",le,[e("div",te,[e("div",oe,[e("label",ae,t(s.$t("components.form.label.show_bottombar_on_mobile")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.show_bottombar_on_mobile")),1)]),_:1})]),l(f,{modelValue:o(n).interface.showBottomBarOnMobile,"onUpdate:modelValue":a[5]||(a[5]=i=>o(n).interface.showBottomBarOnMobile=i),class:"ml-auto shrink-0"},null,8,["modelValue"])])]),e("div",ie,[e("div",ne,[e("div",ce,[e("label",de,t(s.$t("components.form.label.navbar_stay_collapsed")),1),l(d,{severity:"secondary",variant:"simple",size:"small",class:"cui-input-switch-hint"},{default:c(()=>[r(t(s.$t("components.form.hint.navbar_stay_collapsed")),1)]),_:1})]),l(f,{modelValue:o(n).interface.navbarStayCollapsed,"onUpdate:modelValue":a[6]||(a[6]=i=>o(n).interface.navbarStayCollapsed=i),class:"ml-auto shrink-0"},null,8,["modelValue"])])])])]),_:1})])])])}}});export{_e as _};