@fastybird/smart-panel-admin 0.3.0-alpha.1 → 0.4.0-alpha.1

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 (135) hide show
  1. package/dist/assets/{card-add-form-D2wBoWST.js → card-add-form-BsKpEVSG.js} +1 -1
  2. package/dist/assets/{card-edit-form-oK3mSlML.js → card-edit-form-CG0omi1q.js} +1 -1
  3. package/dist/assets/{common-LjqSJ2w6.js → common-ijhzs9_0.js} +4 -4
  4. package/dist/assets/{components-C34zzmt7.js → components-0xSqJd1c.js} +1 -1
  5. package/dist/assets/{components-BCPfUU-j.js → components-BViDH0OA.js} +1 -1
  6. package/dist/assets/{components-BLfc1MlY.js → components-Br-sBa7A.js} +2 -2
  7. package/dist/assets/{components-CDfCKLkZ.js → components-BtakwF5C.js} +1 -1
  8. package/dist/assets/{components-DwAqis1g.js → components-CBFW7yNV.js} +1 -1
  9. package/dist/assets/{components-BYIJy9De.js → components-CRHs3JWN.js} +1 -1
  10. package/dist/assets/{components-BxZMz7g1.js → components-D8I6wSQ8.js} +1 -1
  11. package/dist/assets/{components-zntv1iWu.js → components-RJ5hO6AZ.js} +1 -1
  12. package/dist/assets/{composables-Dsv-S7n0.js → composables-Bpcc_wGH.js} +1 -1
  13. package/dist/assets/{composables-amAhfyg5.js → composables-Cc7ANpfc.js} +1 -1
  14. package/dist/assets/{composables-DfCOBSXt.js → composables-CeE5S8dp.js} +1 -1
  15. package/dist/assets/{composables-De3rv2lp2.js → composables-Dcxmf37Z2.js} +1 -1
  16. package/dist/assets/{composables-BgFk1XuI.js → composables-DhwoC-xC.js} +1 -1
  17. package/dist/assets/{composables-5tSo56du.js → composables-DjU-Mk8L.js} +1 -1
  18. package/dist/assets/{composables-BcK22aju.js → composables-DkeM-E-p.js} +1 -1
  19. package/dist/assets/{composables-Bv1GVare.js → composables-JWXuz4Gg.js} +1 -1
  20. package/dist/assets/{composables-CL9tjnlW.js → composables-M1QbhteH.js} +1 -1
  21. package/dist/assets/{dashboard-l-K0BzBS.js → dashboard-CcsVnJli.js} +2 -2
  22. package/dist/assets/{dashboard.types-CGuzPmDh.js → dashboard.types-BSWYPVMP.js} +1 -1
  23. package/dist/assets/{data-source-edit-form-C5Wcrefb.js → data-source-edit-form-DuXbKZsR.js} +1 -1
  24. package/dist/assets/{drawer-LKnhOqwr.js → drawer-Ca1WSyqR.js} +1 -1
  25. package/dist/assets/{index-DXY4jKQI.js → index-tT2AZiq7.js} +4 -4
  26. package/dist/assets/{input-number-C9TVlza8.js → input-number-Bb7n4uvB.js} +1 -1
  27. package/dist/assets/{integration-config-dialog-jWnak0GZ.js → integration-config-dialog-C0ChvpT-.js} +1 -1
  28. package/dist/assets/{layout-config-DFNzcRMe.js → layout-config-DT1WSySd.js} +1 -1
  29. package/dist/assets/{layout-default-CCKARlf1.js → layout-default-DdQVQJAR.js} +1 -1
  30. package/dist/assets/{layout-lock-CnSvcXQz.js → layout-lock-CD8TZuEc.js} +1 -1
  31. package/dist/assets/layout-profile-BJIyycQO.js +1 -0
  32. package/dist/assets/{layout-profile-DDFrjZOI.js → layout-profile-hzdzTiCI.js} +1 -1
  33. package/dist/assets/layout-sign-BfXyu4t6.js +1 -0
  34. package/dist/assets/{layout-sign-BrGmz1dY.js → layout-sign-CubSN77S.js} +1 -1
  35. package/dist/assets/{list-data-sources-adjust-Cvx5WuuM.js → list-data-sources-adjust-DbA9x9uL.js} +1 -1
  36. package/dist/assets/{list-locations-Dn75UDxD.js → list-locations-BAkteV6w.js} +1 -1
  37. package/dist/assets/{list-users-DohKbIH_.js → list-users-CX25ULzY.js} +1 -1
  38. package/dist/assets/{logs-entries.transformers-CFhU4BfT.js → logs-entries.transformers-CIMe9NHA.js} +1 -1
  39. package/dist/assets/{page-configure-BWnN6L11.js → page-configure-CKJbFsu5.js} +1 -1
  40. package/dist/assets/{page-configure-BvsoJ6EQ.js → page-configure-DsUMLQte.js} +1 -1
  41. package/dist/assets/{pagination-vfM1mS8g.js → pagination-DyMVjp0G.js} +1 -1
  42. package/dist/assets/{popover-B5i4oVbf.js → popover-CoIdSl5j.js} +1 -1
  43. package/dist/assets/{radio-RRswXuZL.js → radio-CkbffHwt.js} +1 -1
  44. package/dist/assets/{scene-add-form-3PHZ9CAP.js → scene-add-form-1xqS-Zwc.js} +1 -1
  45. package/dist/assets/{scene-edit-form-CUlRumo8.js → scene-edit-form-CnhBke6f.js} +1 -1
  46. package/dist/assets/{select-data-source-plugin-hKAxVmQE.js → select-data-source-plugin-D_Rr1G2V.js} +1 -1
  47. package/dist/assets/{steps-CLOv-S4r.js → steps-BCN5GARC.js} +1 -1
  48. package/dist/assets/{system-C1nSQ3sm.js → system-BMK3_vT4.js} +2 -2
  49. package/dist/assets/{table-B3657QfB.js → table-BBFlVv11.js} +1 -1
  50. package/dist/assets/{tile-detail-2UY_-dDn.js → tile-detail-BnXoG-mM.js} +1 -1
  51. package/dist/assets/{tile-edit-form-DmRLfU8m.js → tile-edit-form-CRidbbfw.js} +1 -1
  52. package/dist/assets/{types-9baeYq6L.js → types-B8T_f6P6.js} +1 -1
  53. package/dist/assets/{useBuddyChat-B63wU9F4.js → useBuddyChat-sBjT11x4.js} +1 -1
  54. package/dist/assets/{useDataSources-DRMKex_V.js → useDataSources-D7jZWw_x.js} +1 -1
  55. package/dist/assets/{useDevices-TD2aAUZO.js → useDevices-DjAEYc5E.js} +1 -1
  56. package/dist/assets/{useGeolocation-mKKOuxg_.js → useGeolocation-CFfGhfyA.js} +1 -1
  57. package/dist/assets/{useLocation-DuJE3I8e.js → useLocation-D0YmETja.js} +1 -1
  58. package/dist/assets/{usePage-CrOTXlKi.js → usePage-DxZOVY25.js} +1 -1
  59. package/dist/assets/{useSpaces-3OxOE6UI.js → useSpaces-BP8OSF1K.js} +1 -1
  60. package/dist/assets/{view-buddy-chat-BAqskPD0.js → view-buddy-chat-D4j48OAb.js} +1 -1
  61. package/dist/assets/{view-card-add-2bHG0sN8.js → view-card-add-DeK5zCyy.js} +1 -1
  62. package/dist/assets/{view-card-edit-V7pwqwqk.js → view-card-edit-BExd5Tas.js} +1 -1
  63. package/dist/assets/{view-channel-BlvJl6Dh.js → view-channel-EpG8CcDv.js} +1 -1
  64. package/dist/assets/{view-channel-add-CPOvfiA3.js → view-channel-add-B4_S-V-F.js} +1 -1
  65. package/dist/assets/{view-channel-edit-DJ_cC2Ma.js → view-channel-edit-cTzPa7i1.js} +1 -1
  66. package/dist/assets/{view-channel-property-add-C_Od3YX0.js → view-channel-property-add-k-lJorCn.js} +1 -1
  67. package/dist/assets/{view-channel-property-edit-DrmmDXuU.js → view-channel-property-edit-QlMu_XxI.js} +1 -1
  68. package/dist/assets/{view-channels-DiiaiVHE.js → view-channels-C91gagjr.js} +1 -1
  69. package/dist/assets/{view-config-module-edit-SI_sHs6v.js → view-config-module-edit-DrSXZ1W6.js} +1 -1
  70. package/dist/assets/{view-config-modules-BXc0btoY.js → view-config-modules-Cum4b9aH.js} +1 -1
  71. package/dist/assets/{view-config-plugin-edit-DTYw7rrc.js → view-config-plugin-edit-BjV4ooM5.js} +1 -1
  72. package/dist/assets/{view-config-plugins-BH8NkMyB.js → view-config-plugins-B1WULfYE.js} +1 -1
  73. package/dist/assets/{view-data-source-add-7nxEVNz7.js → view-data-source-add-CzGBZw57.js} +1 -1
  74. package/dist/assets/{view-data-source-add-DXldrS3Q.js → view-data-source-add-D-1_vWOi.js} +1 -1
  75. package/dist/assets/{view-data-source-edit-SgzXQn9S.js → view-data-source-edit-BtdR1p_l.js} +1 -1
  76. package/dist/assets/{view-data-source-edit-BeLKnw_a.js → view-data-source-edit-CnFbTiv7.js} +1 -1
  77. package/dist/assets/{view-device-CzGDKkF-.js → view-device-P4fRqi-Q.js} +1 -1
  78. package/dist/assets/{view-device-add-Bv4LkeKs.js → view-device-add-CkOjM9yk.js} +1 -1
  79. package/dist/assets/{view-device-control-lRfTffUW.js → view-device-control-8VD_DGLT.js} +1 -1
  80. package/dist/assets/{view-device-edit-CCOQfEhY.js → view-device-edit-CE4HGO2q.js} +1 -1
  81. package/dist/assets/{view-devices-CiIkqjDZ.js → view-devices-yzulbi65.js} +1 -1
  82. package/dist/assets/{view-display-QwOlb8nb.js → view-display-CBCX5FwU.js} +1 -1
  83. package/dist/assets/{view-display-edit-B_5upzCW.js → view-display-edit-DkDoZWEw.js} +1 -1
  84. package/dist/assets/{view-display-tokens-CMJnRLPC.js → view-display-tokens-DFVrFXQG.js} +1 -1
  85. package/dist/assets/{view-displays-C9NwRC-R.js → view-displays-CUHpQZZ1.js} +1 -1
  86. package/dist/assets/{view-extension-detail-Di3pQRT2.js → view-extension-detail-Du1p0NtR.js} +1 -1
  87. package/dist/assets/{view-extensions-BLvMmgcU.js → view-extensions-CzadZyFf.js} +1 -1
  88. package/dist/assets/{view-location-CNR9QxiY.js → view-location-CKokQ4HT.js} +1 -1
  89. package/dist/assets/{view-location-add-BVXYIBsX.js → view-location-add-BPVj2vVr.js} +1 -1
  90. package/dist/assets/{view-location-edit-CBcno0Dd.js → view-location-edit-DBZ3e6rA.js} +1 -1
  91. package/dist/assets/{view-locations-d8qdREfl.js → view-locations-CiQoQ0iV.js} +1 -1
  92. package/dist/assets/{view-lock-screen-WXoahiR0.js → view-lock-screen-CQzp0vqf.js} +1 -1
  93. package/dist/assets/{view-onboarding-tLNzFr96.js → view-onboarding-DpfQZUAl.js} +1 -1
  94. package/dist/assets/{view-page-DXMRvJP7.js → view-page-RD0rWHge.js} +1 -1
  95. package/dist/assets/{view-page-add-DYR2DnfP.js → view-page-add-Cikx5xdo.js} +1 -1
  96. package/dist/assets/{view-page-configure-C788eb6x.js → view-page-configure-BzY_8wjf.js} +1 -1
  97. package/dist/assets/{view-page-configure-BAFNIwZ4.js → view-page-configure-Dtf3w5Ty.js} +1 -1
  98. package/dist/assets/{view-page-data-source-add-DhtZURh2.js → view-page-data-source-add-s1Y37afb.js} +1 -1
  99. package/dist/assets/{view-page-data-source-edit-Dg45YSzX.js → view-page-data-source-edit-D2HeNkP3.js} +1 -1
  100. package/dist/assets/{view-page-edit-CWevbHt2.js → view-page-edit-Cusw5uW-.js} +1 -1
  101. package/dist/assets/{view-page-plugin-COZ72C1b.js → view-page-plugin-aq6BVtqg.js} +1 -1
  102. package/dist/assets/{view-pages-Dv9u2VML.js → view-pages-cq1b35iY.js} +1 -1
  103. package/dist/assets/{view-profile-general-CLyftWk7.js → view-profile-general-CRgwvPj9.js} +1 -1
  104. package/dist/assets/{view-profile-security-yM-LxWtV.js → view-profile-security-fC27TTAI.js} +1 -1
  105. package/dist/assets/{view-scene-add-BBUbNY6S.js → view-scene-add-BSJ5pOq-.js} +1 -1
  106. package/dist/assets/{view-scene-edit-x-rtIHIc.js → view-scene-edit-RYZb9gV2.js} +1 -1
  107. package/dist/assets/{view-scenes-CzyqMB7Z.js → view-scenes-BoWbZjwJ.js} +1 -1
  108. package/dist/assets/{view-sign-in-CI1ZxPvP.js → view-sign-in-bUacqD-K.js} +1 -1
  109. package/dist/assets/{view-sign-up-nRktzNwo.js → view-sign-up-y2j1a6IR.js} +1 -1
  110. package/dist/assets/{view-space-1j4irsiZ.js → view-space-14-9mbbl.js} +1 -1
  111. package/dist/assets/{view-space-add-CyHwXomz.js → view-space-add-ZTlD_jbe.js} +1 -1
  112. package/dist/assets/{view-space-edit-DgCAAvE5.js → view-space-edit-h--upcKb.js} +1 -1
  113. package/dist/assets/{view-spaces-C8XDK228.js → view-spaces-BYke5YdU.js} +1 -1
  114. package/dist/assets/{view-spaces-onboarding-CLAQmyTN.js → view-spaces-onboarding-DzbMvEKS.js} +1 -1
  115. package/dist/assets/{view-stats-Cee9D56o.js → view-stats-DqmNW8tG.js} +1 -1
  116. package/dist/assets/{view-system-info-DnbsoVV_.js → view-system-info-DTSU3Lxl.js} +1 -1
  117. package/dist/assets/{view-system-log-detail-Boi_fmQp.js → view-system-log-detail-sNNuNU0s.js} +1 -1
  118. package/dist/assets/{view-system-logs-BkL2fJRc.js → view-system-logs-DUeGbO2b.js} +1 -1
  119. package/dist/assets/{view-tile-Di7UC97n.js → view-tile-DrgPVgEk.js} +1 -1
  120. package/dist/assets/{view-tile-add-BrcyAygU.js → view-tile-add-CmrosKtF.js} +1 -1
  121. package/dist/assets/{view-tile-add-DUgS3WdU.js → view-tile-add-D6Tr78DB.js} +1 -1
  122. package/dist/assets/{view-tile-data-source-add-Aqf8c-ci.js → view-tile-data-source-add-DSrprbWL.js} +1 -1
  123. package/dist/assets/{view-tile-data-source-edit-BOtw_wK3.js → view-tile-data-source-edit-DFluVmy9.js} +1 -1
  124. package/dist/assets/{view-tile-edit-D-UeHlS7.js → view-tile-edit-C4V5bBdG.js} +1 -1
  125. package/dist/assets/{view-tile-edit-Uq18cYCY.js → view-tile-edit-NCUxPlvO.js} +1 -1
  126. package/dist/assets/{view-tile-edit-HPtq7EEJ.js → view-tile-edit-lttivdUi.js} +1 -1
  127. package/dist/assets/{view-user-add-D52LLVc4.js → view-user-add-BFqB9B8M.js} +1 -1
  128. package/dist/assets/{view-user-edit-C-ki-z-h.js → view-user-edit-VR2PystP.js} +1 -1
  129. package/dist/assets/{view-users-BfYVU6Fp.js → view-users-CNbcdZ0O.js} +1 -1
  130. package/dist/assets/{weather-CAxgcywL.js → weather-CQiiCwYf.js} +2 -2
  131. package/dist/assets/{weather-forecast.transformers-MmviZmsY.js → weather-forecast.transformers-B0Pmd8-e.js} +1 -1
  132. package/dist/index.html +52 -52
  133. package/package.json +1 -1
  134. package/dist/assets/layout-profile-Bq9hxAbr.js +0 -1
  135. package/dist/assets/layout-sign-C0BjQVlj.js +0 -1
@@ -1 +1 @@
1
- import"./chunk-DECur_0Z.js";import{$r as e,Ai as t,Ar as n,Br as r,C as i,Di as a,Dr as o,Ft as s,Hr as c,Jt as l,Lr as u,Lt as d,Mt as f,Nr as p,O as m,Oi as h,Qr as g,Qt as _,S as v,Si as y,Sr as b,T as x,Tr as S,Ur as C,Vr as w,Xr as T,Yt as E,Zt as D,_i as O,_r as k,ai as ee,br as A,ci as te,ct as ne,d as j,di as re,f as ie,gr as M,h as N,hr as P,in as F,ji as I,lr as L,m as R,mi as ae,mr as z,mt as oe,n as B,p as V,pi as se,pt as ce,sr as le,t as H,tn as ue,tt as de,ui as U,ut as fe,vr as W,w as pe,wi as me,xr as G}from"./icon-with-child-DmQ_XhQy.js";import{At as he,B as ge,Bi as _e,Bt as ve,Ci as K,Di as ye,Ei as be,Ft as xe,Gr as Se,H as Ce,Ht as q,Ii as we,Ir as Te,Ji as Ee,Kr as De,Li as J,Nt as Oe,Oi as ke,Pr as Ae,Ri as je,Rt as Me,Si as Ne,Ti as Pe,Wr as Fe,Wt as Ie,Xt as Le,Yr as Re,Yt as ze,_ as Be,_a as Ve,_r as Y,aa as He,bi as X,d as Ue,fr as We,ga as Ge,ha as Ke,hr as Z,ji as qe,jt as Je,mi as Ye,mr as Xe,ni as Ze,pi as Qe,qi as $e,qt as et,ri as tt,ur as Q,va as nt,xi as rt,y as it,yi as at,zr as ot}from"./common-LjqSJ2w6.js";import{n as $,r as st,t as ct}from"./table-B3657QfB.js";import{t as lt}from"./skeleton-DMwdgp1r.js";import{t as ut}from"./input-number-C9TVlza8.js";import{n as dt,r as ft}from"./radio-RRswXuZL.js";import{t as pt}from"./pagination-vfM1mS8g.js";import{i as mt}from"./composables-Bv1GVare.js";import{t as ht}from"./useSpaces-3OxOE6UI.js";import{a as gt,c as _t,d as vt,f as yt,g as bt,h as xt,l as St,m as Ct,p as wt,t as Tt,u as Et}from"./composables-Dsv-S7n0.js";import{b as Dt,n as Ot,r as kt,y as At}from"./composables-amAhfyg5.js";import{t as jt}from"./useDevices-TD2aAUZO.js";var Mt=Symbol(`sliderContextKey`),Nt=D({modelValue:{type:_([Number,Array]),default:0},id:{type:String,default:void 0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},showInput:Boolean,showInputControls:{type:Boolean,default:!0},size:ne,inputSize:ne,showStops:Boolean,showTooltip:{type:Boolean,default:!0},formatTooltip:{type:_(Function),default:void 0},disabled:{type:Boolean,default:void 0},range:Boolean,vertical:Boolean,height:String,rangeStartLabel:{type:String,default:void 0},rangeEndLabel:{type:String,default:void 0},formatValueText:{type:_(Function),default:void 0},tooltipClass:{type:String,default:void 0},placement:{type:String,values:$e,default:`top`},marks:{type:_(Object)},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},..._e([`ariaLabel`])}),Pt=e=>F(e)||y(e)&&e.every(F),Ft={[Ve]:Pt,[Ge]:Pt,[Ke]:Pt},It=(e,t,r)=>{let i=U();return u(async()=>{e.range?(y(e.modelValue)?(t.firstValue=Math.max(e.min,e.modelValue[0]),t.secondValue=Math.min(e.max,e.modelValue[1])):(t.firstValue=e.min,t.secondValue=e.max),t.oldValue=[t.firstValue,t.secondValue]):(!F(e.modelValue)||Number.isNaN(e.modelValue)?t.firstValue=e.min:t.firstValue=Math.min(e.max,Math.max(e.min,e.modelValue)),t.oldValue=t.firstValue),s(window,`resize`,r),await n(),r()}),{sliderWrapper:i}},Lt=e=>z(()=>e.marks?Object.keys(e.marks).map(Number.parseFloat).sort((e,t)=>e-t).filter(t=>t<=e.max&&t>=e.min).map(t=>({point:t,position:(t-e.min)*100/(e.max-e.min),mark:e.marks[t]})):[]),Rt=(e,t,r)=>{let{formItem:i}=v(),a=re(),o=U(),s=U(),c={firstButton:o,secondButton:s},l=pe(),u=z(()=>Math.min(t.firstValue,t.secondValue)),d=z(()=>Math.max(t.firstValue,t.secondValue)),f=z(()=>e.range?`${100*(d.value-u.value)/(e.max-e.min)}%`:`${100*(t.firstValue-e.min)/(e.max-e.min)}%`),p=z(()=>e.range?`${100*(u.value-e.min)/(e.max-e.min)}%`:`0%`),m=z(()=>e.vertical?{height:e.height}:{}),h=z(()=>e.vertical?{height:f.value,bottom:p.value}:{width:f.value,left:p.value}),g=()=>{a.value&&(t.sliderSize=a.value.getBoundingClientRect()[e.vertical?`height`:`width`])},_=n=>{let r=e.min+n*(e.max-e.min)/100;if(!e.range)return o;let i;return i=Math.abs(u.value-r)<Math.abs(d.value-r)?t.firstValue<t.secondValue?`firstButton`:`secondButton`:t.firstValue>t.secondValue?`firstButton`:`secondButton`,c[i]},y=e=>{let t=_(e);return t.value.setPosition(e),t},b=n=>{t.firstValue=n??e.min,S(e.range?[u.value,d.value]:n??e.min)},x=n=>{t.secondValue=n,e.range&&S([u.value,d.value])},S=e=>{r(Ve,e),r(Ge,e)},C=async()=>{await n(),r(Ke,e.range?[u.value,d.value]:e.modelValue)},w=n=>{if(l.value||t.dragging)return;g();let r=0;if(e.vertical){let e=n.touches?.item(0)?.clientY??n.clientY;r=(a.value.getBoundingClientRect().bottom-e)/t.sliderSize*100}else r=((n.touches?.item(0)?.clientX??n.clientX)-a.value.getBoundingClientRect().left)/t.sliderSize*100;if(!(r<0||r>100))return y(r)};return{elFormItem:i,slider:a,firstButton:o,secondButton:s,sliderDisabled:l,minValue:u,maxValue:d,runwayStyle:m,barStyle:h,resetSize:g,setPosition:y,emitChange:C,onSliderWrapperPrevent:e=>{(c.firstButton.value?.dragging||c.secondButton.value?.dragging)&&e.preventDefault()},onSliderClick:e=>{w(e)&&C()},onSliderDown:async e=>{let t=w(e);t&&(await n(),t.value.onButtonDown(e))},onSliderMarkerDown:e=>{l.value||t.dragging||y(e)&&C()},setFirstValue:b,setSecondValue:x}},zt=(e,t,n,r)=>({stops:z(()=>{if(!e.showStops||e.min>e.max)return[];if(e.step===0)return l(`ElSlider`,`step should not be 0.`),[];let i=Math.ceil((e.max-e.min)/e.step),a=100*e.step/(e.max-e.min),o=Array.from({length:i-1}).map((e,t)=>(t+1)*a);return e.range?o.filter(t=>t<100*(n.value-e.min)/(e.max-e.min)||t>100*(r.value-e.min)/(e.max-e.min)):o.filter(n=>n>100*(t.firstValue-e.min)/(e.max-e.min))}),getStopStyle:t=>e.vertical?{bottom:`${t}%`}:{left:`${t}%`}}),Bt=(e,t,n,r,i,a)=>{let o=e=>{i(Ve,e),i(Ge,e)},s=()=>e.range?![n.value,r.value].every((e,n)=>e===t.oldValue[n]):e.modelValue!==t.oldValue,c=()=>{e.min>e.max&&E(`Slider`,`min should not be greater than max.`);let n=e.modelValue;e.range&&y(n)?n[1]<e.min?o([e.min,e.min]):n[0]>e.max?o([e.max,e.max]):n[0]<e.min?o([e.min,n[1]]):n[1]>e.max?o([n[0],e.max]):(t.firstValue=n[0],t.secondValue=n[1],s()&&(e.validateEvent&&a?.validate?.(`change`).catch(e=>l(e)),t.oldValue=n.slice())):!e.range&&F(n)&&!Number.isNaN(n)&&(n<e.min?o(e.min):n>e.max?o(e.max):(t.firstValue=n,s()&&(e.validateEvent&&a?.validate?.(`change`).catch(e=>l(e)),t.oldValue=n)))};c(),T(()=>t.dragging,e=>{e||c()}),T(()=>e.modelValue,(e,n)=>{t.dragging||y(e)&&y(n)&&e.every((e,t)=>e===n[t])&&t.firstValue===e[0]&&t.secondValue===e[1]||c()},{deep:!0}),T(()=>[e.min,e.max],()=>{c()})},Vt=(e,t,n)=>{let r=U(),i=U(!1),a=z(()=>t.value instanceof Function);return{tooltip:r,tooltipVisible:i,formatValue:z(()=>a.value&&t.value(e.modelValue)||e.modelValue),displayTooltip:st(()=>{n.value&&(i.value=!0)},50),hideTooltip:st(()=>{n.value&&(i.value=!1)},50)}},Ht=(e,t,r)=>{let{disabled:i,min:a,max:c,step:l,showTooltip:u,persistent:d,precision:f,sliderSize:p,formatTooltip:m,emitChange:h,resetSize:g,updateDragging:_}=o(Mt),{tooltip:v,tooltipVisible:y,formatValue:b,displayTooltip:x,hideTooltip:S}=Vt(e,m,u),C=U(),w=z(()=>`${(e.modelValue-a.value)/(c.value-a.value)*100}%`),E=z(()=>e.vertical?{bottom:w.value}:{left:w.value}),D=()=>{t.hovering=!0,x()},O=()=>{t.hovering=!1,t.dragging||S()},k=e=>{i.value||(e.preventDefault(),P(e),window.addEventListener(`mousemove`,F),window.addEventListener(`touchmove`,F),window.addEventListener(`mouseup`,I),window.addEventListener(`touchend`,I),window.addEventListener(`contextmenu`,I),C.value.focus())},ee=e=>{i.value||(t.newPosition=Number.parseFloat(w.value)+e/(c.value-a.value)*100,L(t.newPosition),h())},A=()=>{ee(-l.value)},te=()=>{ee(l.value)},ne=()=>{ee(-l.value*4)},j=()=>{ee(l.value*4)},re=()=>{i.value||(L(0),h())},ie=()=>{i.value||(L(100),h())},M=e=>{let t=Ee(e),n=!0;switch(t){case nt.left:case nt.down:A();break;case nt.right:case nt.up:te();break;case nt.home:re();break;case nt.end:ie();break;case nt.pageDown:ne();break;case nt.pageUp:j();break;default:n=!1;break}n&&e.preventDefault()},N=e=>{let t,n;return e.type.startsWith(`touch`)?(n=e.touches[0].clientY,t=e.touches[0].clientX):(n=e.clientY,t=e.clientX),{clientX:t,clientY:n}},P=n=>{t.dragging=!0,t.isClick=!0;let{clientX:r,clientY:i}=N(n);e.vertical?t.startY=i:t.startX=r,t.startPosition=Number.parseFloat(w.value),t.newPosition=t.startPosition},F=n=>{if(t.dragging){t.isClick=!1,x(),g();let r,{clientX:i,clientY:a}=N(n);e.vertical?(t.currentY=a,r=(t.startY-t.currentY)/p.value*100):(t.currentX=i,r=(t.currentX-t.startX)/p.value*100),t.newPosition=t.startPosition+r,L(t.newPosition)}},I=()=>{t.dragging&&(setTimeout(()=>{t.dragging=!1,t.hovering||S(),t.isClick||L(t.newPosition),h()},0),window.removeEventListener(`mousemove`,F),window.removeEventListener(`touchmove`,F),window.removeEventListener(`mouseup`,I),window.removeEventListener(`touchend`,I),window.removeEventListener(`contextmenu`,I))},L=async i=>{if(i===null||Number.isNaN(+i))return;i=He(i,0,100);let o=Math.floor((c.value-a.value)/l.value),s=o*l.value/(c.value-a.value)*100,u=s+(100-s)/2,d;if(i<s){let e=s/o,t=Math.round(i/e);d=a.value+t*l.value}else d=i<u?a.value+o*l.value:c.value;d=Number.parseFloat(d.toFixed(f.value)),d!==e.modelValue&&r(Ve,d),!t.dragging&&e.modelValue!==t.oldValue&&(t.oldValue=e.modelValue),await n(),t.dragging&&x(),v.value.updatePopper()};return T(()=>t.dragging,e=>{_(e)}),s(C,`touchstart`,k,{passive:!1}),{disabled:i,button:C,tooltip:v,tooltipVisible:y,showTooltip:u,persistent:d,wrapperStyle:E,formatValue:b,handleMouseEnter:D,handleMouseLeave:O,onButtonDown:k,onKeyDown:M,setPosition:L}},Ut=D({modelValue:{type:Number,default:0},vertical:Boolean,tooltipClass:String,placement:{type:String,values:$e,default:`top`}}),Wt={[Ve]:e=>F(e)},Gt=[`tabindex`],Kt=b({name:`ElSliderButton`,__name:`button`,props:Ut,emits:Wt,setup(e,{expose:n,emit:i}){let a=e,o=i,s=ce(`slider`),c=te({hovering:!1,dragging:!1,isClick:!1,startX:0,currentX:0,startY:0,currentY:0,startPosition:0,newPosition:0,oldValue:a.modelValue}),l=z(()=>p.value?m.value:!1),{disabled:u,button:d,tooltip:f,showTooltip:p,persistent:m,tooltipVisible:_,wrapperStyle:v,formatValue:y,handleMouseEnter:b,handleMouseLeave:x,onButtonDown:S,onKeyDown:C,setPosition:w}=Ht(a,c,o),{hovering:T,dragging:E}=ae(c);return n({onButtonDown:S,onKeyDown:C,setPosition:w,hovering:T,dragging:E}),(e,n)=>(r(),W(`div`,{ref_key:`button`,ref:d,class:h([O(s).e(`button-wrapper`),{hover:O(T),dragging:O(E)}]),style:t(O(v)),tabindex:O(u)?void 0:0,onMouseenter:n[0]||=(...e)=>O(b)&&O(b)(...e),onMouseleave:n[1]||=(...e)=>O(x)&&O(x)(...e),onMousedown:n[2]||=(...e)=>O(S)&&O(S)(...e),onFocus:n[3]||=(...e)=>O(b)&&O(b)(...e),onBlur:n[4]||=(...e)=>O(x)&&O(x)(...e),onKeydown:n[5]||=(...e)=>O(C)&&O(C)(...e)},[G(O(qe),{ref_key:`tooltip`,ref:f,visible:O(_),placement:e.placement,"fallback-placements":[`top`,`bottom`,`right`,`left`],"stop-popper-mouse-event":!1,"popper-class":e.tooltipClass,disabled:!O(p),persistent:l.value},{content:g(()=>[P(`span`,null,I(O(y)),1)]),default:g(()=>[P(`div`,{class:h([O(s).e(`button`),{hover:O(T),dragging:O(E)}])},null,2)]),_:1},8,[`visible`,`placement`,`popper-class`,`disabled`,`persistent`])],46,Gt))}}),qt=b({name:`ElSliderMarker`,props:D({mark:{type:_([String,Object]),default:void 0}}),setup(e){let t=ce(`slider`),n=z(()=>a(e.mark)?e.mark:e.mark.label),r=z(()=>a(e.mark)?void 0:e.mark.style);return()=>S(`div`,{class:t.e(`marks-text`),style:r.value},n.value)}}),Jt=[`id`,`role`,`aria-label`,`aria-labelledby`],Yt={key:1},Xt=de(b({name:`ElSlider`,__name:`slider`,props:Nt,emits:Ft,setup(e,{expose:n,emit:a}){let o=e,l=a,u=ce(`slider`),{t:d}=oe(),f=te({firstValue:0,secondValue:0,oldValue:0,dragging:!1,sliderSize:1}),{elFormItem:p,slider:m,firstButton:g,secondButton:_,sliderDisabled:v,minValue:y,maxValue:b,runwayStyle:S,barStyle:C,resetSize:T,emitChange:E,onSliderWrapperPrevent:D,onSliderClick:ee,onSliderDown:A,onSliderMarkerDown:ne,setFirstValue:j,setSecondValue:re}=Rt(o,f,l),{stops:ie,getStopStyle:N}=zt(o,f,y,b),{inputId:F,isLabeledByFormItem:I}=i(o,{formItemContext:p}),R=x(),B=z(()=>o.inputSize||R.value),V=z(()=>o.ariaLabel||d(`el.slider.defaultLabel`,{min:o.min,max:o.max})),se=z(()=>o.range?o.rangeStartLabel||d(`el.slider.defaultRangeStartLabel`):V.value),H=z(()=>o.formatValueText?o.formatValueText(he.value):`${he.value}`),ue=z(()=>o.rangeEndLabel||d(`el.slider.defaultRangeEndLabel`)),de=z(()=>o.formatValueText?o.formatValueText(ge.value):`${ge.value}`),U=z(()=>[u.b(),u.m(R.value),u.is(`vertical`,o.vertical),{[u.m(`with-input`)]:o.showInput}]),fe=Lt(o);Bt(o,f,y,b,l,p);let pe=z(()=>{let e=[o.min,o.max,o.step].map(e=>{let t=`${e}`.split(`.`)[1];return t?t.length:0});return Math.max.apply(null,e)}),{sliderWrapper:me}=It(o,f,T),{firstValue:he,secondValue:ge,sliderSize:_e}=ae(f),ve=e=>{f.dragging=e};return s(me,`touchstart`,D,{passive:!1}),s(me,`touchmove`,D,{passive:!1}),w(Mt,{...ae(o),sliderSize:_e,disabled:v,precision:pe,emitChange:E,resetSize:T,updateDragging:ve}),n({onSliderClick:ee}),(e,n)=>(r(),W(`div`,{id:e.range?O(F):void 0,ref_key:`sliderWrapper`,ref:me,class:h(U.value),role:e.range?`group`:void 0,"aria-label":e.range&&!O(I)?V.value:void 0,"aria-labelledby":e.range&&O(I)?O(p)?.labelId:void 0},[P(`div`,{ref_key:`slider`,ref:m,class:h([O(u).e(`runway`),{"show-input":e.showInput&&!e.range},O(u).is(`disabled`,O(v))]),style:t(O(S)),onMousedown:n[0]||=(...e)=>O(A)&&O(A)(...e),onTouchstartPassive:n[1]||=(...e)=>O(A)&&O(A)(...e)},[P(`div`,{class:h(O(u).e(`bar`)),style:t(O(C))},null,6),G(Kt,{id:e.range?void 0:O(F),ref_key:`firstButton`,ref:g,"model-value":O(he),vertical:e.vertical,"tooltip-class":e.tooltipClass,placement:e.placement,role:`slider`,"aria-label":e.range||!O(I)?se.value:void 0,"aria-labelledby":!e.range&&O(I)?O(p)?.labelId:void 0,"aria-valuemin":e.min,"aria-valuemax":e.range?O(ge):e.max,"aria-valuenow":O(he),"aria-valuetext":H.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-disabled":O(v),"onUpdate:modelValue":O(j)},null,8,[`id`,`model-value`,`vertical`,`tooltip-class`,`placement`,`aria-label`,`aria-labelledby`,`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`aria-disabled`,`onUpdate:modelValue`]),e.range?(r(),M(Kt,{key:0,ref_key:`secondButton`,ref:_,"model-value":O(ge),vertical:e.vertical,"tooltip-class":e.tooltipClass,placement:e.placement,role:`slider`,"aria-label":ue.value,"aria-valuemin":O(he),"aria-valuemax":e.max,"aria-valuenow":O(ge),"aria-valuetext":de.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-disabled":O(v),"onUpdate:modelValue":O(re)},null,8,[`model-value`,`vertical`,`tooltip-class`,`placement`,`aria-label`,`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`aria-disabled`,`onUpdate:modelValue`])):k(`v-if`,!0),e.showStops?(r(),W(`div`,Yt,[(r(!0),W(L,null,c(O(ie),(e,n)=>(r(),W(`div`,{key:n,class:h(O(u).e(`stop`)),style:t(O(N)(e))},null,6))),128))])):k(`v-if`,!0),O(fe).length>0?(r(),W(L,{key:2},[P(`div`,null,[(r(!0),W(L,null,c(O(fe),(e,n)=>(r(),W(`div`,{key:n,style:t(O(N)(e.position)),class:h([O(u).e(`stop`),O(u).e(`marks-stop`)])},null,6))),128))]),P(`div`,{class:h(O(u).e(`marks`))},[(r(!0),W(L,null,c(O(fe),(e,n)=>(r(),M(O(qt),{key:n,mark:e.mark,style:t(O(N)(e.position)),onMousedown:le(t=>O(ne)(e.position),[`stop`])},null,8,[`mark`,`style`,`onMousedown`]))),128))],2)],64)):k(`v-if`,!0)],38),e.showInput&&!e.range?(r(),M(O(ut),{key:0,ref:`input`,"model-value":O(he),class:h(O(u).e(`input`)),step:e.step,disabled:O(v),controls:e.showInputControls,min:e.min,max:e.max,precision:pe.value,size:B.value,"onUpdate:modelValue":O(j),onChange:O(E)},null,8,[`model-value`,`class`,`step`,`disabled`,`controls`,`min`,`max`,`precision`,`size`,`onUpdate:modelValue`,`onChange`])):k(`v-if`,!0)],10,Jt))}})),Zt={label:`label`,value:`value`,disabled:`disabled`},Qt=D({direction:{type:_(String),default:`horizontal`},options:{type:_(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:_(Object),default:()=>Zt},block:Boolean,size:ne,disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},id:String,name:String,..._e([`ariaLabel`])}),$t={[Ve]:e=>a(e)||F(e)||ue(e),[Ke]:e=>a(e)||F(e)||ue(e)},en=[`id`,`aria-label`,`aria-labelledby`],tn=[`name`,`disabled`,`checked`,`onChange`],nn=de(b({name:`ElSegmented`,__name:`segmented`,props:Qt,emits:$t,setup(e,{emit:n}){let a=e,o=n,s=ce(`segmented`),u=fe(),p=x(),m=pe(),{formItem:g}=v(),{inputId:_,isLabeledByFormItem:y}=i(a,{formItemContext:g}),b=U(null),S=f(),w=te({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),E=(e,t)=>{let n=ne(t);o(Ve,n),o(Ke,n),e.target.checked=n===a.modelValue},D=z(()=>({...Zt,...a.props})),ee=e=>e,ne=e=>me(e)?e[D.value.value]:e,j=e=>me(e)?e[D.value.label]:e,re=e=>!!(m.value||me(e)&&e[D.value.disabled]),ie=e=>a.modelValue===ne(e),M=e=>a.options.find(t=>ne(t)===e),N=e=>[s.e(`item`),s.is(`selected`,ie(e)),s.is(`disabled`,re(e))],F=()=>{if(!b.value)return;let e=b.value.querySelector(`.is-selected`),t=b.value.querySelector(`.is-selected input`);if(!e||!t){w.width=0,w.height=0,w.translateX=0,w.translateY=0,w.focusVisible=!1;return}w.isInit=!0,a.direction===`vertical`?(w.height=e.offsetHeight,w.translateY=e.offsetTop):(w.width=e.offsetWidth,w.translateX=e.offsetLeft);try{w.focusVisible=t.matches(`:focus-visible`)}catch{}},R=z(()=>[s.b(),s.m(p.value),s.is(`block`,a.block)]),ae=z(()=>({width:a.direction===`vertical`?`100%`:`${w.width}px`,height:a.direction===`vertical`?`${w.height}px`:`100%`,transform:a.direction===`vertical`?`translateY(${w.translateY}px)`:`translateX(${w.translateX}px)`,display:w.isInit?`block`:`none`})),oe=z(()=>[s.e(`item-selected`),s.is(`disabled`,re(M(a.modelValue))),s.is(`focus-visible`,w.focusVisible)]),B=z(()=>a.name||u.value);return d(b,F),T(S,F),T(()=>a.modelValue,()=>{F(),a.validateEvent&&g?.validate?.(`change`).catch(e=>l(e))},{flush:`post`}),(n,i)=>e.options.length?(r(),W(`div`,{key:0,id:O(_),ref_key:`segmentedRef`,ref:b,class:h(R.value),role:`radiogroup`,"aria-label":O(y)?void 0:e.ariaLabel||`segmented`,"aria-labelledby":O(y)?O(g).labelId:void 0},[P(`div`,{class:h([O(s).e(`group`),O(s).m(e.direction)])},[P(`div`,{style:t(ae.value),class:h(oe.value)},null,6),(r(!0),W(L,null,c(e.options,(e,t)=>(r(),W(`label`,{key:t,class:h(N(e))},[P(`input`,{class:h(O(s).e(`item-input`)),type:`radio`,name:B.value,disabled:re(e),checked:ie(e),onChange:t=>E(t,e)},null,42,tn),P(`div`,{class:h(O(s).e(`item-label`))},[C(n.$slots,`default`,{item:ee(e)},()=>[A(I(j(e)),1)])],2)],2))),128))],2)],10,en)):k(`v-if`,!0)}})),rn={class:`flex w-full`},an=b({name:`SpacesFilter`,__name:`spaces-filter`,props:{filters:{},filtersActive:{type:Boolean},selectedCount:{},bulkActions:{}},emits:[`update:filters`,`reset-filters`,`adjust-list`,`bulk-action`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Te(n,`filters`,i),s=U(void 0);return T(()=>o.value.search,e=>{e===``&&(o.value.search=void 0)}),(e,t)=>(r(),W(`div`,rn,[G(O(we),{ref_key:`filterFormEl`,ref:s,inline:!0,model:O(o),class:`grow-1`},{default:g(()=>[G(O(ke),{modelValue:O(o).search,"onUpdate:modelValue":t[0]||=e=>O(o).search=e,placeholder:O(a)(`spacesModule.fields.search.placeholder`),class:`max-w[280px] p-1`,clearable:``},{suffix:g(()=>[G(O(m),null,{default:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`model`]),G(O(Ce),{"selected-count":n.selectedCount,actions:n.bulkActions,onAction:t[1]||=e=>i(`bulk-action`,e)},null,8,[`selected-count`,`actions`]),n.filtersActive?(r(),M(O(N),{key:0,plain:``,class:`px-2! mt-1 mr-1`,onClick:t[2]||=e=>i(`reset-filters`)},{default:g(()=>[G(O(V),{icon:`mdi:filter-off`})]),_:1})):k(``,!0),G(O(N),{plain:``,class:`px-2! mt-1 mr-1`,onClick:t[3]||=e=>i(`adjust-list`)},{default:g(()=>[G(O(V),{icon:`mdi:slider`})]),_:1})]))}}),on={key:0,class:`h-full w-full leading-normal`},sn={key:1,class:`h-full w-full leading-normal`},cn={key:2,class:`h-full w-full leading-normal`},ln={class:`block`},un=b({name:`SpacesTable`,__name:`spaces-table`,props:{items:{},totalRows:{},loading:{type:Boolean},filtersActive:{type:Boolean},tableHeight:{},filters:{},sortBy:{},sortDir:{}},emits:[`detail`,`edit`,`remove`,`add`,`reset-filters`,`update:sort-by`,`update:sort-dir`,`selected-changes`],setup(n,{emit:i}){let a=n,o=i,{t:s}=j(),{isMDDevice:c}=Ae(),l=z(()=>a.totalRows===0),u=z(()=>a.tableHeight??400),d=({prop:e,order:t})=>{o(`update:sort-by`,e),o(`update:sort-dir`,t===`descending`?`desc`:t===`ascending`?`asc`:null)},f=e=>{o(`detail`,e.id)},p=e=>{o(`selected-changes`,e)};return(n,i)=>e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.texts.loadingSpaces`),data:a.items,"default-sort":a.sortBy!==void 0&&a.sortDir!==null?{prop:a.sortBy,order:a.sortDir===`desc`?`descending`:`ascending`}:void 0,"table-layout":`fixed`,"row-key":`id`,class:`flex-grow`,style:t({maxHeight:u.value+`px`}),"max-height":u.value,onSortChange:d,onSelectionChange:p,onRowClick:f},{empty:g(()=>[a.loading?(r(),W(`div`,on,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:home-group`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):a.filtersActive&&!a.loading?(r(),W(`div`,sn,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:home-group`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(s)(`spacesModule.texts.noFilteredSpaces`)),1)]),_:1}),G(O(N),{type:`primary`,plain:``,class:`mt-4`,onClick:i[0]||=e=>o(`reset-filters`)},{icon:g(()=>[G(O(V),{icon:`mdi:filter-off`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.buttons.resetFilters.title`)),1)]),_:1})]),_:1})])):l.value&&!a.loading?(r(),W(`div`,cn,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:home-group`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.texts.noSpaces`)),1)]),_:1})])):k(``,!0)]),default:g(()=>[O(c)?(r(),M(O($),{key:0,type:`selection`,fixed:``,width:30})):k(``,!0),G(O($),{width:60,align:`center`},{default:g(e=>[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:e.row.icon||(e.row.type===O(q).ROOM?`mdi:door`:`mdi:home-floor-1`),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024)]),_:1}),G(O($),{label:O(s)(`spacesModule.table.columns.name`),prop:`name`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],"min-width":200,"class-name":`py-0!`},{default:g(e=>[P(`strong`,ln,I(e.row.name),1),e.row.description?(r(),M(O(De),{key:0,size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.row.description),1)]),_:2},1024)):k(``,!0)]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.type`),prop:`type`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],width:120},{default:g(e=>[G(O(K),{type:e.row.type===O(q).ROOM?`primary`:`info`,size:`small`},{default:g(()=>[A(I(O(s)(`spacesModule.misc.types.${e.row.type}`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.category`),prop:`category`,width:150},{default:g(e=>[e.row.category?(r(),M(O(De),{key:0,size:`small`},{default:g(()=>[A(I(O(s)(`spacesModule.fields.spaces.category.options.${e.row.category}`)),1)]),_:2},1024)):(r(),M(O(De),{key:1,size:`small`,type:`info`},{default:g(()=>[...i[2]||=[A(` — `,-1)]]),_:1}))]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.order`),prop:`displayOrder`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],width:100,align:`center`},{default:g(e=>[A(I(e.row.displayOrder),1)]),_:1},8,[`label`]),G(O($),{width:190,align:`right`},{default:g(e=>[P(`div`,{onClick:i[1]||=le(()=>{},[`stop`])},[G(O(N),{size:`small`,plain:``,"data-test-id":`detail-space`,onClick:t=>o(`detail`,e.row.id)},{icon:g(()=>[G(O(V),{icon:`mdi:file-search-outline`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.buttons.detail.title`)),1)]),_:1},8,[`onClick`]),G(O(N),{size:`small`,plain:``,class:`ml-1!`,"data-test-id":`edit-space`,onClick:t=>o(`edit`,e.row.id)},{icon:g(()=>[G(O(V),{icon:`mdi:pencil`})]),_:1},8,[`onClick`]),G(O(N),{size:`small`,type:`warning`,plain:``,class:`ml-1!`,"data-test-id":`remove-space`,onClick:t=>o(`remove`,e.row.id)},{icon:g(()=>[G(O(V),{icon:`mdi:trash`})]),_:1},8,[`onClick`])])]),_:1})]),_:1},8,[`element-loading-text`,`data`,`default-sort`,`style`,`max-height`])),[[O(Se),a.loading]])}}),dn=b({name:`ListSpaces`,__name:`list-spaces`,props:{items:{},allItems:{},totalRows:{},loading:{type:Boolean},filtersActive:{type:Boolean},filters:{},paginatePage:{},paginateSize:{},sortBy:{},sortDir:{}},emits:[`detail`,`edit`,`remove`,`add`,`adjust-list`,`reset-filters`,`update:filters`,`update:paginate-size`,`update:paginate-page`,`update:sort-by`,`update:sort-dir`,`bulk-action`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),{isMDDevice:o}=Ae(),s=null,c=U(null),l=U(null),d=Te(n,`filters`,i),f=U(n.sortBy),m=U(n.sortDir??null),h=U(n.paginatePage),_=U(n.paginateSize),v=U(250),y=U([]),b=z(()=>[{key:`delete`,label:a(`application.bulkActions.delete`),icon:`mdi:trash`,type:`danger`}]),x=e=>{i(`detail`,e)},S=e=>{i(`edit`,e)},C=e=>{i(`remove`,e)},w=()=>{i(`add`)},E=()=>{i(`reset-filters`)},D=e=>{i(`update:paginate-size`,e)},k=e=>{i(`update:paginate-page`,e)},A=e=>{y.value=e},te=e=>{i(`bulk-action`,e,y.value)};return u(()=>{if(!c.value)return;let e=()=>{c.value&&l.value&&(v.value=c.value.clientHeight-l.value.clientHeight)};typeof window<`u`&&`ResizeObserver`in window&&(s=new ResizeObserver(e),s.observe(c.value)),e()}),p(()=>{s&&c.value&&s.unobserve(c.value)}),T(()=>f.value,e=>{i(`update:sort-by`,e)}),T(()=>m.value,e=>{i(`update:sort-dir`,e)}),T(()=>n.paginatePage,e=>{h.value=e}),T(()=>n.paginateSize,e=>{_.value=e}),T(()=>n.sortDir??null,e=>{m.value=e}),T(()=>n.sortBy,e=>{f.value=e}),T(()=>o.value,e=>{e||(y.value=[])}),(e,t)=>(r(),W(L,null,[G(O(at),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:g(()=>[G(an,{filters:O(d),"onUpdate:filters":t[0]||=e=>ee(d)?d.value=e:null,"filters-active":n.filtersActive,"selected-count":y.value.length,"bulk-actions":b.value,onResetFilters:t[1]||=e=>i(`reset-filters`),onAdjustList:t[2]||=e=>i(`adjust-list`),onBulkAction:te},null,8,[`filters`,`filters-active`,`selected-count`,`bulk-actions`])]),_:1}),P(`div`,{ref_key:`wrapper`,ref:c,class:`flex-grow overflow-hidden`},[G(O(at),{shadow:`never`,class:`max-h-full flex flex-col overflow-hidden box-border`,"body-class":`p-0! max-h-full overflow-hidden flex flex-col`},{default:g(()=>[G(un,{filters:O(d),"onUpdate:filters":t[3]||=e=>ee(d)?d.value=e:null,"sort-by":f.value,"onUpdate:sortBy":t[4]||=e=>f.value=e,"sort-dir":m.value,"onUpdate:sortDir":t[5]||=e=>m.value=e,items:n.items,"total-rows":n.totalRows,loading:n.loading,"filters-active":n.filtersActive,"table-height":v.value,onDetail:x,onEdit:S,onRemove:C,onAdd:w,onResetFilters:E,onSelectedChanges:A},null,8,[`filters`,`sort-by`,`sort-dir`,`items`,`total-rows`,`loading`,`filters-active`,`table-height`]),P(`div`,{ref_key:`paginator`,ref:l,class:`flex justify-center w-full py-4`},[G(O(pt),{"current-page":h.value,"onUpdate:currentPage":t[6]||=e=>h.value=e,"page-size":_.value,"onUpdate:pageSize":t[7]||=e=>_.value=e,layout:O(o)?`total, sizes, prev, pager, next, jumper`:`total, sizes, prev, pager, next`,total:n.allItems.length,onSizeChange:D,onCurrentChange:k},null,8,[`current-page`,`page-size`,`layout`,`total`])],512)]),_:1})],512)],64))}}),fn={class:`px-2`},pn={class:`px-5 py-2 text-center`},mn=ie(b({name:`ListSpacesAdjust`,__name:`list-spaces-adjust`,props:{filters:{},filtersActive:{type:Boolean}},emits:[`update:filters`,`reset-filters`],setup(e,{emit:t}){let n=e,i=t,a=ce(`list-spaces-adjust`),{t:o}=j(),s=U([`type`]),c=Te(n,`filters`,i);return(e,t)=>(r(),W(L,null,[G(O(ot),{teleport:``},{icon:g(()=>[G(O(V),{icon:`mdi:filter`})]),title:g(()=>[A(I(O(o)(`spacesModule.headings.adjustFilters`)),1)]),subtitle:g(()=>[A(I(O(o)(`spacesModule.subHeadings.adjustFilters`)),1)]),_:1}),P(`div`,{class:h([[O(a).b()],`flex flex-col h-full w-full overflow-hidden`])},[G(O(ye),{class:`flex-grow`},{default:g(()=>[G(O(Qe),{modelValue:s.value,"onUpdate:modelValue":t[1]||=e=>s.value=e},{default:g(()=>[G(O(Ye),{name:`type`,class:h([O(a).e(`filter-item`)])},{title:g(()=>[G(O(De),{class:`!px-2`},{default:g(()=>[A(I(O(o)(`spacesModule.filters.type.title`)),1)]),_:1})]),default:g(()=>[P(`div`,fn,[G(O(ft),{modelValue:O(c).type,"onUpdate:modelValue":t[0]||=e=>O(c).type=e},{default:g(()=>[G(O(dt),{label:O(o)(`spacesModule.misc.types.room`),value:O(q).ROOM},null,8,[`label`,`value`]),G(O(dt),{label:O(o)(`spacesModule.misc.types.zone`),value:O(q).ZONE},null,8,[`label`,`value`]),G(O(dt),{label:O(o)(`spacesModule.filters.type.all`),value:`all`},null,8,[`label`])]),_:1},8,[`modelValue`])])]),_:1},8,[`class`])]),_:1},8,[`modelValue`])]),_:1}),P(`div`,pn,[G(O(N),{disabled:!n.filtersActive,onClick:t[2]||=e=>i(`reset-filters`)},{icon:g(()=>[G(O(V),{icon:`mdi:filter-remove`})]),default:g(()=>[A(` `+I(O(o)(`spacesModule.buttons.reset.title`)),1)]),_:1},8,[`disabled`])])],2)],64))}}),[[`__scopeId`,`data-v-2f65479c`]]),hn={saved:e=>typeof e==`object`,cancel:()=>!0,"update:remote-form-changed":e=>typeof e==`boolean`},gn={class:`flex items-center gap-2`},_n={class:`font-medium`},vn={class:`px-2`},yn={class:`flex items-center gap-2`},bn={class:`flex items-center gap-2`},xn={class:`flex items-center gap-2`},Sn={class:`font-medium`},Cn={class:`px-2`},wn={class:`flex items-center gap-2`},Tn={key:0,class:`flex gap-2 justify-end mt-4`},En=b({__name:`space-add-form`,props:{hideActions:{type:Boolean,default:!1}},emits:hn,setup(e,{expose:t,emit:n}){let i=e,a=n,{t:o}=j(),{zoneSpaces:s}=ht(),{model:l,formEl:u,formChanged:d,submit:f,formResult:p,createdSpace:h}=xt({id:Ue().toString()}),_=U();T(_,e=>{u.value=e},{immediate:!0});let v=U([`general`,`organization`]),y=te({icon:null,description:null}),b=z({get:()=>l.icon?.replace(`mdi:`,``)??null,set:e=>{l.icon=e?`mdi:${e}`:null}}),{categoryOptions:x,categoryGroups:S,currentTemplates:C}=Ct(z(()=>l.type));T(()=>l.type,e=>{l.category&&!Le(l.category,e)&&(l.category=null,l.icon===y.icon&&(l.icon=null,y.icon=null),l.description===y.description&&(l.description=null,y.description=null)),e===q.ZONE&&(l.parentId=null),_.value?.clearValidate()});let w=e=>{if(e&&C.value[e]){let t=C.value[e];(!l.icon||l.icon===y.icon)&&(l.icon=t.icon,y.icon=t.icon),(!l.description||l.description===y.description)&&(l.description=t.description,y.description=t.description)}},E=z(()=>({name:[{required:!0,message:o(`spacesModule.fields.spaces.name.validation.required`),trigger:`blur`}],category:[{required:l.type===q.ZONE,message:o(`spacesModule.fields.spaces.category.validation.requiredForZone`),trigger:`blur`}]}));T(()=>d.value,e=>{a(`update:remote-form-changed`,e)},{immediate:!0});let D=async()=>{try{await f(),h.value&&a(`saved`,h.value)}catch{}},ee=()=>{a(`cancel`)};return t({submit:D}),(e,t)=>(r(),M(O(we),{ref_key:`formElRef`,ref:_,model:O(l),rules:E.value,"label-position":`top`,onSubmit:le(D,[`prevent`])},{default:g(()=>[G(O(Qe),{modelValue:v.value,"onUpdate:modelValue":t[7]||=e=>v.value=e},{default:g(()=>[G(O(Ye),{name:`general`},{title:g(()=>[P(`div`,gn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1}),P(`span`,_n,I(O(o)(`spacesModule.edit.sections.general.title`)),1)])]),default:g(()=>[P(`div`,vn,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.name.title`),prop:`name`},{default:g(()=>[G(O(ke),{modelValue:O(l).name,"onUpdate:modelValue":t[0]||=e=>O(l).name=e,placeholder:O(o)(`spacesModule.fields.spaces.name.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.type.title`),prop:`type`},{default:g(()=>[G(O(Ne),{modelValue:O(l).type,"onUpdate:modelValue":t[1]||=e=>O(l).type=e},{default:g(()=>[G(O(X),{label:O(o)(`spacesModule.fields.spaces.type.options.room`),value:O(q).ROOM},null,8,[`label`,`value`]),G(O(X),{label:O(o)(`spacesModule.fields.spaces.type.options.zone`),value:O(q).ZONE},null,8,[`label`,`value`])]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.category.title`),prop:`category`},{default:g(()=>[G(O(Ne),{modelValue:O(l).category,"onUpdate:modelValue":t[2]||=e=>O(l).category=e,placeholder:O(o)(`spacesModule.fields.spaces.category.placeholder`),clearable:O(l).type!==O(q).ZONE,onChange:w},{default:g(()=>[O(S)?(r(!0),W(L,{key:0},c(O(S),e=>(r(),M(O(rt),{key:e.key,label:O(o)(`spacesModule.fields.spaces.category.groups.${e.key}`)},{default:g(()=>[(r(!0),W(L,null,c(e.categories,e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,yn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128)):(r(!0),W(L,{key:1},c(O(x),e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,bn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`clearable`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.fields.spaces.category.hint`),type:`info`,closable:!1,"show-icon":``,class:`my-2!`},null,8,[`title`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.description.title`),prop:`description`},{default:g(()=>[G(O(ke),{modelValue:O(l).description,"onUpdate:modelValue":t[3]||=e=>O(l).description=e,type:`textarea`,rows:3,placeholder:O(o)(`spacesModule.fields.spaces.description.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.icon.title`),prop:`icon`},{default:g(()=>[G(O(ge),{modelValue:b.value,"onUpdate:modelValue":t[4]||=e=>b.value=e,placeholder:O(o)(`spacesModule.fields.spaces.icon.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.displayOrder.title`),prop:`displayOrder`},{default:g(()=>[G(O(ut),{modelValue:O(l).displayOrder,"onUpdate:modelValue":t[5]||=e=>O(l).displayOrder=e,min:0},null,8,[`modelValue`])]),_:1},8,[`label`])])]),_:1}),O(l).type===O(q).ROOM?(r(),M(O(Ye),{key:0,name:`organization`},{title:g(()=>[P(`div`,xn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:sitemap`})]),_:1}),P(`span`,Sn,I(O(o)(`spacesModule.edit.sections.organization.title`)),1)])]),default:g(()=>[P(`div`,Cn,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.parentZone.title`),prop:`parentId`},{default:g(()=>[G(O(Ne),{modelValue:O(l).parentId,"onUpdate:modelValue":t[6]||=e=>O(l).parentId=e,placeholder:O(o)(`spacesModule.fields.spaces.parentZone.placeholder`),clearable:``,filterable:``},{default:g(()=>[(r(!0),W(L,null,c(O(s),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`span`,wn,[e.icon?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:e.icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.edit.sections.organization.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`])])]),_:1})):k(``,!0)]),_:1},8,[`modelValue`]),i.hideActions?k(``,!0):(r(),W(`div`,Tn,[G(O(N),{onClick:ee},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:O(p)===O(Oe).WORKING,onClick:D},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]))]),_:1},8,[`model`,`rules`]))}}),Dn={saved:e=>typeof e==`object`,cancel:()=>!0,"update:remote-form-changed":e=>typeof e==`boolean`},On={class:`flex items-center gap-2`},kn={class:`font-medium`},An={class:`px-2`},jn={class:`flex items-center gap-2`},Mn={class:`flex items-center gap-2`},Nn={class:`flex items-center gap-2`},Pn={class:`font-medium`},Fn={class:`px-2`},In={class:`flex items-center gap-2`},Ln={class:`flex items-center gap-2`},Rn={class:`font-medium`},zn={class:`px-2`},Bn={class:`border border-solid border-gray-200 rounded-lg p-4 mb-2`},Vn={class:`flex items-center justify-between mb-3`},Hn={class:`flex items-center gap-2`},Un={class:`font-medium`},Wn={class:`flex items-center gap-2`},Gn={class:`font-medium`},Kn={class:`px-2`},qn={key:0,class:`flex gap-2 justify-end mt-4`},Jn=b({__name:`space-edit-form`,props:{space:{},hideActions:{type:Boolean,default:!1}},emits:Dn,setup(e,{expose:t,emit:n}){let i=e,a=n,{t:o}=j(),{zoneSpaces:s,findById:l}=ht(),{model:u,formEl:d,formChanged:f,submit:p,formResult:h}=vt({space:z(()=>i.space)}),_=U();T(_,e=>{d.value=e},{immediate:!0});let v=U([`general`,`organization`]),y=te({icon:null,description:null}),b=z({get:()=>u.icon?.replace(`mdi:`,``)??null,set:e=>{u.icon=e?`mdi:${e}`:null}}),{categoryOptions:x,categoryGroups:S,currentTemplates:C}=Ct(z(()=>u.type)),w=z(()=>s.value.filter(e=>!i.space||e.id!==i.space.id)),E=()=>u.statusWidgets?.find(e=>e.type===Ie.ENERGY),D=z(()=>!!E()),ee=z(()=>[{label:o(`spacesModule.fields.spaces.statusWidgets.energy.range.options.today`),value:Je.TODAY},{label:o(`spacesModule.fields.spaces.statusWidgets.energy.range.options.week`),value:Je.WEEK},{label:o(`spacesModule.fields.spaces.statusWidgets.energy.range.options.month`),value:Je.MONTH}]),ne=z({get:()=>E()?.settings?.range??he.range,set:e=>{let t=E();t&&(t.settings={...t.settings,range:e})}}),re=z({get:()=>E()?.settings?.showProduction??he.showProduction,set:e=>{let t=E();t&&(t.settings={...t.settings,showProduction:e})}}),ie=e=>{if(e){let e=u.statusWidgets??[];if(e.some(e=>e.type===Ie.ENERGY))return;e.push({type:Ie.ENERGY,order:e.length,settings:{range:he.range,showProduction:he.showProduction}}),u.statusWidgets=e}else{let e=(u.statusWidgets??[]).filter(e=>e.type!==Ie.ENERGY);u.statusWidgets=e.length>0?e:null}};T(()=>u.type,e=>{u.category&&!Le(u.category,e)&&(u.category=null,u.icon===y.icon&&(u.icon=null,y.icon=null),u.description===y.description&&(u.description=null,y.description=null)),e===q.ZONE&&(u.parentId=null),_.value?.clearValidate()});let F=e=>{if(e&&C.value[e]){let t=C.value[e];(!u.icon||u.icon===y.icon)&&(u.icon=t.icon,y.icon=t.icon),(!u.description||u.description===y.description)&&(u.description=t.description,y.description=t.description)}},R=z(()=>({name:[{required:!0,message:o(`spacesModule.fields.spaces.name.validation.required`),trigger:`blur`}],category:[{required:u.type===q.ZONE,message:o(`spacesModule.fields.spaces.category.validation.requiredForZone`),trigger:`blur`}]}));T(()=>f.value,e=>{a(`update:remote-form-changed`,e)},{immediate:!0}),T(()=>i.space,e=>{e&&(y.icon=null,y.description=null)});let ae=async()=>{try{await p();let e=l(u.id);e&&a(`saved`,e)}catch{}},oe=()=>{a(`cancel`)};return t({submit:ae}),(t,n)=>(r(),M(O(we),{ref_key:`formRef`,ref:_,model:O(u),rules:R.value,"label-position":`top`,onSubmit:le(ae,[`prevent`])},{default:g(()=>[G(O(Qe),{modelValue:v.value,"onUpdate:modelValue":n[9]||=e=>v.value=e},{default:g(()=>[G(O(Ye),{name:`general`},{title:g(()=>[P(`div`,On,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1}),P(`span`,kn,I(O(o)(`spacesModule.edit.sections.general.title`)),1)])]),default:g(()=>[P(`div`,An,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.name.title`),prop:`name`},{default:g(()=>[G(O(ke),{modelValue:O(u).name,"onUpdate:modelValue":n[0]||=e=>O(u).name=e,placeholder:O(o)(`spacesModule.fields.spaces.name.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.category.title`),prop:`category`},{default:g(()=>[G(O(Ne),{modelValue:O(u).category,"onUpdate:modelValue":n[1]||=e=>O(u).category=e,placeholder:O(o)(`spacesModule.fields.spaces.category.placeholder`),clearable:O(u).type!==O(q).ZONE,onChange:F},{default:g(()=>[O(S)?(r(!0),W(L,{key:0},c(O(S),e=>(r(),M(O(rt),{key:e.key,label:O(o)(`spacesModule.fields.spaces.category.groups.${e.key}`)},{default:g(()=>[(r(!0),W(L,null,c(e.categories,e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,jn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128)):(r(!0),W(L,{key:1},c(O(x),e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,Mn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`clearable`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.fields.spaces.category.hint`),type:`info`,closable:!1,"show-icon":``,class:`!my-2`},null,8,[`title`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.description.title`),prop:`description`},{default:g(()=>[G(O(ke),{modelValue:O(u).description,"onUpdate:modelValue":n[2]||=e=>O(u).description=e,type:`textarea`,rows:3,placeholder:O(o)(`spacesModule.fields.spaces.description.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.icon.title`),prop:`icon`},{default:g(()=>[G(O(ge),{modelValue:b.value,"onUpdate:modelValue":n[3]||=e=>b.value=e,placeholder:O(o)(`spacesModule.fields.spaces.icon.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.displayOrder.title`),prop:`displayOrder`},{default:g(()=>[G(O(ut),{modelValue:O(u).displayOrder,"onUpdate:modelValue":n[4]||=e=>O(u).displayOrder=e,min:0},null,8,[`modelValue`])]),_:1},8,[`label`])])]),_:1}),O(u).type===O(q).ROOM?(r(),M(O(Ye),{key:0,name:`organization`},{title:g(()=>[P(`div`,Nn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:sitemap`})]),_:1}),P(`span`,Pn,I(O(o)(`spacesModule.edit.sections.organization.title`)),1)])]),default:g(()=>[P(`div`,Fn,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.parentZone.title`),prop:`parentId`},{default:g(()=>[G(O(Ne),{modelValue:O(u).parentId,"onUpdate:modelValue":n[5]||=e=>O(u).parentId=e,placeholder:O(o)(`spacesModule.fields.spaces.parentZone.placeholder`),clearable:``,filterable:``},{default:g(()=>[(r(!0),W(L,null,c(w.value,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`span`,In,[e.icon?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:e.icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.edit.sections.organization.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`])])]),_:1})):k(``,!0),G(O(Ye),{name:`statusWidgets`},{title:g(()=>[P(`div`,Ln,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:view-dashboard-variant`})]),_:1}),P(`span`,Rn,I(O(o)(`spacesModule.edit.sections.statusWidgets.title`)),1)])]),default:g(()=>[P(`div`,zn,[G(O(je),{title:O(o)(`spacesModule.edit.sections.statusWidgets.hint`),type:`info`,closable:!1,"show-icon":``,class:`!mb-4`},null,8,[`title`]),P(`div`,Bn,[P(`div`,Vn,[P(`div`,Hn,[G(O(V),{icon:`mdi:flash-outline`,class:`text-lg`}),P(`span`,Un,I(O(o)(`spacesModule.fields.spaces.statusWidgets.energy.title`)),1)]),G(O(Re),{"model-value":D.value,onChange:ie},null,8,[`model-value`])]),D.value?(r(),W(L,{key:0},[G(O(J),{label:O(o)(`spacesModule.fields.spaces.statusWidgets.energy.range.title`)},{default:g(()=>[G(O(nn),{modelValue:ne.value,"onUpdate:modelValue":n[6]||=e=>ne.value=e,options:ee.value,block:``},null,8,[`modelValue`,`options`])]),_:1},8,[`label`]),G(O(J),{"label-position":`left`},{label:g(()=>[A(I(O(o)(`spacesModule.fields.spaces.statusWidgets.energy.showProduction.title`)),1)]),default:g(()=>[G(O(Re),{modelValue:re.value,"onUpdate:modelValue":n[7]||=e=>re.value=e},null,8,[`modelValue`])]),_:1})],64)):k(``,!0)])])]),_:1}),G(O(Ye),{name:`smartOverrides`},{title:g(()=>[P(`div`,Wn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:tune`})]),_:1}),P(`span`,Gn,I(O(o)(`spacesModule.edit.sections.smartOverrides.title`)),1),G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(O(o)(`spacesModule.edit.sections.smartOverrides.badge`)),1)]),_:1})])]),default:g(()=>[P(`div`,Kn,[G(O(je),{title:O(o)(`spacesModule.edit.sections.smartOverrides.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`]),G(O(J),{prop:`suggestionsEnabled`,"label-position":`left`},{label:g(()=>[A(I(O(o)(`spacesModule.fields.spaces.suggestionsEnabled.title`)),1)]),default:g(()=>[G(O(Re),{modelValue:O(u).suggestionsEnabled,"onUpdate:modelValue":n[8]||=e=>O(u).suggestionsEnabled=e},null,8,[`modelValue`])]),_:1}),G(O(je),{title:O(o)(`spacesModule.fields.spaces.suggestionsEnabled.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`])])]),_:1})]),_:1},8,[`modelValue`]),e.hideActions?k(``,!0):(r(),W(`div`,qn,[G(O(N),{onClick:oe},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:O(h)===O(Oe).WORKING,onClick:ae},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]))]),_:1},8,[`model`,`rules`]))}}),Yn={key:1,class:`flex justify-center py-4`},Xn={class:`flex items-center gap-2`},Zn={class:`flex flex-col`},Qn={key:0,class:`text-xs text-gray-400`},$n={class:`flex gap-1`},er={class:`flex justify-between items-center mt-4`},tr={class:`text-xs text-gray-400`},nr=b({__name:`space-lighting-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{lightingSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>[{value:Z.main,label:n(`spacesModule.lightingRoles.main`)},{value:Z.task,label:n(`spacesModule.lightingRoles.task`)},{value:Z.ambient,label:n(`spacesModule.lightingRoles.ambient`)},{value:Z.accent,label:n(`spacesModule.lightingRoles.accent`)},{value:Z.night,label:n(`spacesModule.lightingRoles.night`)},{value:Z.other,label:n(`spacesModule.lightingRoles.other`)},{value:Z.hidden,label:n(`spacesModule.lightingRoles.hidden`)}]),p=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/lighting/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map(e=>({deviceId:e.device_id,deviceName:e.device_name,channelId:e.channel_id,channelName:e.channel_name,role:e.role?e.role:null,priority:e.priority??0,hasBrightness:e.has_brightness??!1,hasColorTemp:e.has_color_temp??!1,hasColor:e.has_color??!1}))}finally{s.value=!1}},m=async(e,n)=>{try{if(n){let{error:r}=await i.client.POST(`/${B}/${Me}/spaces/{id}/lighting/roles`,{params:{path:{id:t.space.id}},body:{data:{device_id:e.deviceId,channel_id:e.channelId,role:n}}});if(r){a.error(`Failed to update lighting role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/lighting/roles/{deviceId}/{channelId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId,channelId:e.channelId}}});if(n){a.error(`Failed to clear lighting role`);return}e.role=null}}catch{a.error(`Failed to update lighting role`)}},_=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/lighting/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await p(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&p()}),T(()=>o?.value,()=>{t.space?.id&&p()}),u(()=>{t.space?.id&&p()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.lightingRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.lightingRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,Yn,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,Xn,[G(O(V),{icon:`mdi:lightbulb`}),P(`div`,Zn,[P(`span`,null,I(e.deviceName),1),e.channelName?(r(),W(`span`,Qn,I(e.channelName),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.lightingRoles.role.title`),width:`160`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.lightingRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>m(e,t)},{default:g(()=>[(r(!0),W(L,null,c(f.value,e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`]),G(O($),{label:``,width:`100`},{default:g(({row:e})=>[P(`div`,$n,[e.hasBrightness?(r(),M(O(K),{key:0,type:`info`,size:`small`},{default:g(()=>[...i[0]||=[A(`Dim`,-1)]]),_:1})):k(``,!0),e.hasColor?(r(),M(O(K),{key:1,type:`success`,size:`small`},{default:g(()=>[...i[1]||=[A(`RGB`,-1)]]),_:1})):k(``,!0)])]),_:1})]),_:1},8,[`data`]),P(`div`,er,[G(O(N),{size:`small`,loading:l.value,onClick:_},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.lightingRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,tr,I(O(n)(`spacesModule.fields.spaces.lightingRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:lightbulb`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.lightingRoles.noLights`)),1)]),_:1}))],2))}}),rr={key:1,class:`flex justify-center py-4`},ir={class:`flex items-center gap-2`},ar={class:`flex flex-col`},or={key:0,class:`text-xs text-gray-400`},sr={class:`flex gap-1`},cr={class:`flex justify-between items-center mt-4`},lr={class:`text-xs text-gray-400 ml-4`},ur=b({__name:`space-climate-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{climateSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>[{value:Y.heating_only,label:n(`spacesModule.climateRoles.${Y.heating_only}`)},{value:Y.cooling_only,label:n(`spacesModule.climateRoles.${Y.cooling_only}`)},{value:Y.auto,label:n(`spacesModule.climateRoles.${Y.auto}`)},{value:Y.auxiliary,label:n(`spacesModule.climateRoles.${Y.auxiliary}`)},{value:Y.hidden,label:n(`spacesModule.climateRoles.${Y.hidden}`)}]),p=z(()=>[{value:Y.sensor,label:n(`spacesModule.climateRoles.${Y.sensor}`)},{value:Y.hidden,label:n(`spacesModule.climateRoles.${Y.hidden}`)}]),m=e=>e.deviceCategory===`sensor`?p.value:f.value,_=e=>{switch(e){case`thermostat`:return`mdi:thermostat`;case`heating_unit`:return`mdi:radiator`;case`water_heater`:return`mdi:water-boiler`;case`air_conditioner`:return`mdi:air-conditioner`;case`fan`:return`mdi:fan`;case`air_humidifier`:return`mdi:air-humidifier`;case`air_dehumidifier`:return`mdi:air-humidifier-off`;case`air_purifier`:return`mdi:air-purifier`;case`sensor`:return`mdi:thermometer`;default:return`mdi:thermostat-box`}},v=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/climate/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map(e=>({deviceId:e.device_id,deviceName:e.device_name,deviceCategory:e.device_category??``,channelId:e.channel_id??null,channelName:e.channel_name??null,role:e.role?e.role:null,priority:e.priority??0,hasTemperature:e.has_temperature??!1,hasHumidity:e.has_humidity??!1}))}finally{s.value=!1}},y=async(e,n)=>{try{if(n){let r={device_id:e.deviceId,role:n};e.channelId&&(r.channel_id=e.channelId);let{error:o}=await i.client.POST(`/${B}/${Me}/spaces/{id}/climate/roles`,{params:{path:{id:t.space.id}},body:{data:r}});if(o){a.error(`Failed to update climate role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/climate/roles/{deviceId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId},query:e.channelId?{channelId:e.channelId}:void 0}});if(n){a.error(`Failed to clear climate role`);return}e.role=null}}catch{a.error(`Failed to update climate role`)}},b=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/climate/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await v(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&v()}),T(()=>o?.value,()=>{t.space?.id&&v()}),u(()=>{t.space?.id&&v()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.climateRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.climateRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,rr,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,ir,[G(O(V),{icon:_(e.deviceCategory)},null,8,[`icon`]),P(`div`,ar,[P(`span`,null,I(e.deviceName),1),e.channelName?(r(),W(`span`,or,I(e.channelName),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.climateRoles.role.title`),width:`200`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.climateRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>y(e,t)},{default:g(()=>[(r(!0),W(L,null,c(m(e),e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`]),G(O($),{label:``,width:`120`},{default:g(({row:e})=>[P(`div`,sr,[e.hasTemperature?(r(),M(O(K),{key:0,type:`warning`,size:`small`},{default:g(()=>[...i[0]||=[A(`Temp`,-1)]]),_:1})):k(``,!0),e.hasHumidity?(r(),M(O(K),{key:1,type:`info`,size:`small`},{default:g(()=>[...i[1]||=[A(`Humid`,-1)]]),_:1})):k(``,!0)])]),_:1})]),_:1},8,[`data`]),P(`div`,cr,[G(O(N),{size:`small`,loading:l.value,onClick:b},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.climateRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,lr,I(O(n)(`spacesModule.fields.spaces.climateRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:thermostat`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.climateRoles.noDevices`)),1)]),_:1}))],2))}}),dr={key:1,class:`flex justify-center py-4`},fr={class:`flex items-center gap-2`},pr={class:`flex flex-col`},mr={key:0,class:`text-xs text-gray-400`},hr={class:`flex gap-1`},gr={class:`flex justify-between items-center mt-4`},_r={class:`text-xs text-gray-400`},vr=b({__name:`space-covers-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{coversSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>[{value:We.primary,label:n(`spacesModule.coversRoles.primary`)},{value:We.blackout,label:n(`spacesModule.coversRoles.blackout`)},{value:We.sheer,label:n(`spacesModule.coversRoles.sheer`)},{value:We.outdoor,label:n(`spacesModule.coversRoles.outdoor`)},{value:We.hidden,label:n(`spacesModule.coversRoles.hidden`)}]),p=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/covers/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map(e=>({deviceId:e.device_id,deviceName:e.device_name,channelId:e.channel_id,channelName:e.channel_name,role:e.role?e.role:null,priority:e.priority??0,hasPosition:e.has_position??!1,hasCommand:e.has_command??!1,hasTilt:e.has_tilt??!1,coverType:e.cover_type??null}))}finally{s.value=!1}},m=async(e,n)=>{try{if(n){let{error:r}=await i.client.POST(`/${B}/${Me}/spaces/{id}/covers/roles`,{params:{path:{id:t.space.id}},body:{data:{device_id:e.deviceId,channel_id:e.channelId,role:n}}});if(r){a.error(`Failed to update covers role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/covers/roles/{deviceId}/{channelId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId,channelId:e.channelId}}});if(n){a.error(`Failed to clear covers role`);return}e.role=null}}catch{a.error(`Failed to update covers role`)}},_=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/covers/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await p(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&p()}),T(()=>o?.value,()=>{t.space?.id&&p()}),u(()=>{t.space?.id&&p()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.coversRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.coversRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,dr,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,fr,[G(O(V),{icon:`mdi:blinds`}),P(`div`,pr,[P(`span`,null,I(e.deviceName),1),e.channelName?(r(),W(`span`,mr,I(e.channelName),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.coversRoles.role.title`),width:`160`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.coversRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>m(e,t)},{default:g(()=>[(r(!0),W(L,null,c(f.value,e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`]),G(O($),{label:``,width:`100`},{default:g(({row:e})=>[P(`div`,hr,[e.hasPosition?(r(),M(O(K),{key:0,type:`info`,size:`small`},{default:g(()=>[...i[0]||=[A(`Pos`,-1)]]),_:1})):k(``,!0),e.hasTilt?(r(),M(O(K),{key:1,type:`success`,size:`small`},{default:g(()=>[...i[1]||=[A(`Tilt`,-1)]]),_:1})):k(``,!0)])]),_:1})]),_:1},8,[`data`]),P(`div`,gr,[G(O(N),{size:`small`,loading:l.value,onClick:_},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.coversRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,_r,I(O(n)(`spacesModule.fields.spaces.coversRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:blinds`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.coversRoles.noCovers`)),1)]),_:1}))],2))}}),yr={key:1,class:`flex justify-center py-4`},br={class:`flex items-center gap-2`},xr={class:`flex flex-col`},Sr={class:`text-xs text-gray-400`},Cr={class:`flex justify-between items-center mt-4`},wr={class:`text-xs text-gray-400 ml-4`},Tr=b({name:`SpaceSensorRoles`,__name:`space-sensor-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{sensorSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>xe.map(e=>({value:e,label:n(`spacesModule.sensorRoles.${e}`)}))),p=e=>{switch(e){case`temperature`:return n(`spacesModule.sensorRoles.categories.temperature`);case`humidity`:return n(`spacesModule.sensorRoles.categories.humidity`);case`pressure`:return n(`spacesModule.sensorRoles.categories.pressure`);case`illuminance`:return n(`spacesModule.sensorRoles.categories.illuminance`);case`smoke`:return n(`spacesModule.sensorRoles.categories.smoke`);case`gas`:return n(`spacesModule.sensorRoles.categories.gas`);case`carbon_monoxide`:return n(`spacesModule.sensorRoles.categories.carbon_monoxide`);case`carbon_dioxide`:return n(`spacesModule.sensorRoles.categories.carbon_dioxide`);case`leak`:return n(`spacesModule.sensorRoles.categories.leak`);case`motion`:return n(`spacesModule.sensorRoles.categories.motion`);case`occupancy`:return n(`spacesModule.sensorRoles.categories.occupancy`);case`contact`:return n(`spacesModule.sensorRoles.categories.contact`);case`air_quality`:return n(`spacesModule.sensorRoles.categories.air_quality`);case`air_particulate`:return n(`spacesModule.sensorRoles.categories.air_particulate`);case`nitrogen_dioxide`:return n(`spacesModule.sensorRoles.categories.nitrogen_dioxide`);case`ozone`:return n(`spacesModule.sensorRoles.categories.ozone`);case`sulphur_dioxide`:return n(`spacesModule.sensorRoles.categories.sulphur_dioxide`);case`volatile_organic_compounds`:return n(`spacesModule.sensorRoles.categories.volatile_organic_compounds`);case`electrical_energy`:return n(`spacesModule.sensorRoles.categories.electrical_energy`);case`electrical_generation`:return n(`spacesModule.sensorRoles.categories.electrical_generation`);case`electrical_power`:return n(`spacesModule.sensorRoles.categories.electrical_power`);case`battery`:return n(`spacesModule.sensorRoles.categories.battery`);default:return e}},m=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/sensors/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map((e,t)=>({deviceId:e.device_id,deviceName:e.device_name,channelId:e.channel_id,channelName:e.channel_name??e.channel_category,channelCategory:e.channel_category,role:e.role?e.role:null,priority:e.priority??t}))}finally{s.value=!1}},_=async(e,n)=>{try{if(n){let{error:r}=await i.client.POST(`/${B}/${Me}/spaces/{id}/sensors/roles`,{params:{path:{id:t.space.id}},body:{data:{device_id:e.deviceId,channel_id:e.channelId,role:n}}});if(r){a.error(`Failed to update sensor role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/sensors/roles/{deviceId}/{channelId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId,channelId:e.channelId}}});if(n){a.error(`Failed to clear sensor role`);return}e.role=null}}catch{a.error(`Failed to update sensor role`)}},v=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/sensors/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await m(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&m()}),T(()=>o?.value,()=>{t.space?.id&&m()}),u(()=>{t.space?.id&&m()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.sensorRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.sensorRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,yr,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,br,[G(O(V),{icon:`mdi:motion-sensor`}),P(`div`,xr,[P(`span`,null,I(e.deviceName),1),P(`span`,Sr,I(e.channelName),1)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.sensorRoles.channel.title`),width:`200`},{default:g(({row:e})=>[G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(p(e.channelCategory)),1)]),_:2},1024)]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.sensorRoles.role.title`),width:`200`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.sensorRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>_(e,t)},{default:g(()=>[(r(!0),W(L,null,c(f.value,e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`])]),_:1},8,[`data`]),P(`div`,Cr,[G(O(N),{size:`small`,loading:l.value,onClick:v},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.sensorRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,wr,I(O(n)(`spacesModule.fields.spaces.sensorRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:motion-sensor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.sensorRoles.noSensors`)),1)]),_:1}))],2))}}),Er=b({name:`SpaceLightingRolesDialog`,__name:`space-lighting-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.lightingRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(nr,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),Dr=b({name:`SpaceClimateRolesDialog`,__name:`space-climate-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.climateRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(ur,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),Or=b({name:`SpaceCoversRolesDialog`,__name:`space-covers-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.coversRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(vr,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),kr=b({name:`SpaceSensorRolesDialog`,__name:`space-sensor-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.sensorRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(Tr,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),Ar={class:`flex items-start gap-3`},jr={class:`flex-1 min-w-0 space-domain-card__content`},Mr={class:`space-domain-card__title`},Nr={class:`space-domain-card__description`},Pr={class:`space-domain-card__tags`},Fr={class:`flex items-center gap-1`},Ir={key:2,class:`space-domain-card__not-configured`},Lr={class:`space-domain-card__chevron`},Rr=ie(b({name:`SpaceDomainCard`,__name:`space-domain-card`,props:{icon:{},iconColor:{},title:{},description:{},tags:{},loading:{type:Boolean}},emits:[`click`],setup(e,{emit:n}){let i=e,a=n,{t:o}=j();return(e,n)=>(r(),M(O(at),{shadow:`hover`,class:`space-domain-card`,"body-class":`p-4!`,onClick:n[0]||=e=>a(`click`)},{default:g(()=>[P(`div`,Ar,[P(`div`,{class:`space-domain-card__icon`,style:t({backgroundColor:`var(--el-color-${i.iconColor}-light-9)`,color:`var(--el-color-${i.iconColor})`})},[G(O(V),{icon:i.icon},null,8,[`icon`])],4),P(`div`,jr,[P(`h3`,Mr,I(i.title),1),P(`p`,Nr,I(i.description),1),P(`div`,Pr,[i.loading?(r(),M(O(lt),{key:0,animated:``,rows:0,class:`w-20`})):i.tags.length>0?(r(!0),W(L,{key:1},c(i.tags,e=>(r(),M(O(K),{key:e.label,type:e.type,size:`small`},{default:g(()=>[P(`div`,Fr,[G(O(V),{icon:e.icon},null,8,[`icon`]),A(` `+I(e.label)+` `,1),G(O(Pe),{value:e.count,type:e.type,class:`ml-1`},null,8,[`value`,`type`])])]),_:2},1032,[`type`]))),128)):(r(),W(`span`,Ir,I(O(o)(`spacesModule.detail.domains.notConfigured`)),1))])]),P(`div`,Lr,[G(O(V),{icon:`mdi:chevron-right`})])])]),_:1}))}}),[[`__scopeId`,`data-v-c693d882`]]),zr=[`element-loading-text`],Br={class:`flex items-center gap-3 flex-1 pr-2`},Vr={class:`font-medium text-sm`},Hr={class:`flex items-center justify-between w-full`},Ur={class:`flex gap-1 ml-2`},Wr={class:`flex items-center justify-between w-full`},Gr={class:`flex gap-1 ml-2`},Kr={class:`flex items-center justify-between w-full`},qr={class:`flex gap-1 ml-2`},Jr={class:`flex justify-between items-center mt-2`},Yr={class:`flex items-center gap-2`},Xr={class:`text-xs text-gray-400`},Zr=b({name:`SpaceMediaActivitiesDialog`,__name:`space-media-activities-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`bindings-changed`],setup(t,{emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),u=z({get:()=>a.visible,set:e=>o(`update:visible`,e)}),{endpoints:d,activeState:f,fetchingEndpoints:p,fetchingBindings:m,activating:_,deactivating:v,applyingDefaults:y,activationError:b,fetchEndpoints:x,fetchBindings:S,fetchActiveState:C,activate:w,deactivate:E,saveBinding:D,createBinding:ee,deleteBinding:ne,applyDefaults:re,findBindingByActivity:ie,endpointsByType:F}=Et(z(()=>a.space?.id)),R=[Q.watch,Q.listen,Q.gaming,Q.background],ae=U(``),oe=U(null),B=U(!1),se=z(()=>p.value||m.value),ce=()=>({displayEndpointId:``,audioEndpointId:``,sourceEndpointId:``,remoteEndpointId:``,displayInputId:``,audioInputId:``,sourceInputId:``,audioVolumePreset:30}),H=te({[Q.watch]:ce(),[Q.listen]:ce(),[Q.gaming]:ce(),[Q.background]:ce()}),ue=te({[Q.watch]:ce(),[Q.listen]:ce(),[Q.gaming]:ce(),[Q.background]:ce()}),de=te({[Q.watch]:!1,[Q.listen]:!1,[Q.gaming]:!1,[Q.background]:!1}),fe=te({[Q.watch]:null,[Q.listen]:null,[Q.gaming]:null,[Q.background]:null}),pe=F(Xe.display),me=F(Xe.audio_output),he=F(Xe.source),ge=F(Xe.remote_target),_e=(e,t)=>{H[e].displayEndpointId=t?.displayEndpointId??``,H[e].audioEndpointId=t?.audioEndpointId??``,H[e].sourceEndpointId=t?.sourceEndpointId??``,H[e].remoteEndpointId=t?.remoteEndpointId??``,H[e].displayInputId=t?.displayInputId??``,H[e].audioInputId=t?.audioInputId??``,H[e].sourceInputId=t?.sourceInputId??``,H[e].audioVolumePreset=t?.audioVolumePreset??30,Object.assign(ue[e],{...H[e]})},ve=()=>{for(let e of R)_e(e,ie(e))},ye=e=>{let t=H[e],n=ue[e];return t.displayEndpointId!==n.displayEndpointId||t.audioEndpointId!==n.audioEndpointId||t.sourceEndpointId!==n.sourceEndpointId||t.remoteEndpointId!==n.remoteEndpointId||t.displayInputId!==n.displayInputId||t.audioInputId!==n.audioInputId||t.sourceInputId!==n.sourceInputId||t.audioVolumePreset!==n.audioVolumePreset},be=(e,t)=>{let n=H[e][t];return n?d.value.find(e=>e.endpointId===n)?.capabilities.inputSelect??!1:!1},xe=e=>{let t=H[e].audioEndpointId;return t?d.value.find(e=>e.endpointId===t)?.capabilities.volume??!1:!1},Ce=e=>{let t=d.value.find(t=>t.endpointId===e);return t?.links?.inputSelect?.dataType===`enum`&&Array.isArray(t.links.inputSelect.format)&&t.links.inputSelect.format.length>0?{type:`select`,options:t.links.inputSelect.format}:{type:`text`}},q=e=>{let t=Ce(e);return t.type===`select`?t.options:[]},Te=e=>{let t=`spacesModule.media.activities.mediaInputSources.${e}`,n=s(t);return n===t?String(e):n},Ee=e=>{let t=` (${s(`spacesModule.media.endpointTypes.${e.type}`)})`;return e.name.endsWith(t)?e.name.slice(0,-t.length):e.name},De=e=>{switch(e){case`active`:return`success`;case`activating`:return`primary`;case`failed`:return`danger`;case`deactivated`:return`info`;default:return`info`}},Oe=e=>{let t=f.value?.activityKey===e&&f.value?.state!==`deactivated`,n=t?f.value.state:void 0,r=ie(e);return{isActive:t,state:n,binding:r,hasSlots:!!(r?.displayEndpointId||r?.audioEndpointId||r?.sourceEndpointId||r?.remoteEndpointId)}},Ae=e=>{let{isActive:t,state:n}=Oe(e);return t&&n?De(n):_t(e)},Me=e=>{let{isActive:t,state:n,binding:r,hasSlots:i}=Oe(e);return s(t?`spacesModule.media.activities.activationState.${n}`:r?i?`spacesModule.media.activities.status.configured`:`spacesModule.media.activities.status.incomplete`:`spacesModule.media.activities.status.unconfigured`)},Pe=new Map,Fe=e=>{let t=H[e];return{displayEndpointId:t.displayEndpointId||null,audioEndpointId:t.audioEndpointId||null,sourceEndpointId:t.sourceEndpointId||null,remoteEndpointId:t.remoteEndpointId||null,displayInputId:be(e,`displayEndpointId`)&&t.displayInputId||null,audioInputId:be(e,`audioEndpointId`)&&t.audioInputId||null,sourceInputId:be(e,`sourceEndpointId`)&&t.sourceInputId||null,audioVolumePreset:xe(e)?t.audioVolumePreset:null}},Ie=async e=>{if(!de[e]){de[e]=!0,fe[e]=null;try{let t=ie(e),n=Fe(e),r=!n.displayEndpointId&&!n.audioEndpointId&&!n.sourceEndpointId&&!n.remoteEndpointId,i={...H[e]};r&&t?(await ne(t.id),_e(e,void 0),Object.assign(ue[e],i)):r?Object.assign(ue[e],i):t?(await D(t.id,n),Object.assign(ue[e],i)):(await ee(e,n),Object.assign(ue[e],i))}catch(t){fe[e]=t instanceof Error?t.message:`Failed to save`}finally{de[e]=!1}}},Le=e=>{let t=Pe.get(e);t&&clearTimeout(t),Pe.set(e,setTimeout(()=>{Pe.delete(e),Ie(e)},500))};for(let e of R)T(()=>H[e],()=>{!B.value||!ye(e)||Le(e)},{deep:!0}),T(()=>H[e].displayEndpointId,()=>{B.value&&(H[e].displayInputId=``)}),T(()=>H[e].audioEndpointId,()=>{B.value&&(H[e].audioInputId=``,H[e].audioVolumePreset=30)}),T(()=>H[e].sourceEndpointId,()=>{B.value&&(H[e].sourceInputId=``)});let Re=async e=>{oe.value=e;try{await w(e),l.success(s(`spacesModule.media.activities.activateSuccess`))}catch{l.error(s(`spacesModule.media.activities.activateFailed`))}finally{oe.value=null}},ze=async()=>{try{await E(),l.success(s(`spacesModule.media.activities.deactivateSuccess`))}catch{b.value=null,l.error(s(`spacesModule.media.activities.deactivateFailed`))}},Ve=async()=>{B.value=!1;try{await re(),ve(),l.success(s(`spacesModule.media.activities.defaultsApplied`))}catch{l.error(s(`spacesModule.media.activities.defaultsFailed`))}await n(),B.value=!0},Y=async()=>{B.value=!1,await Promise.all([x(),S(),C()]),ve(),await n(),B.value=!0},He=async()=>{B.value=!1;let e=[],t=new Set;for(let[n,r]of Pe)clearTimeout(r),t.add(n),e.push(Ie(n));Pe.clear();for(let n of R)!t.has(n)&&ye(n)&&e.push(Ie(n));await Promise.allSettled(e),o(`bindings-changed`),u.value=!1};return(t,n)=>(r(),M(O(tt),{modelValue:u.value,"onUpdate:modelValue":n[2]||=e=>u.value=e,title:O(s)(`spacesModule.dialogs.mediaActivities.title`),class:`max-w-[800px]`,"destroy-on-close":``,onOpen:Y,onClose:He},{footer:g(()=>[G(O(N),{type:`primary`,onClick:He},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[e((r(),W(`div`,{"element-loading-text":O(s)(`spacesModule.media.activities.loading`),class:`flex flex-col gap-4`},[G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-0!`},{default:g(()=>[A(I(O(s)(`spacesModule.media.activities.description`)),1)]),_:1}),G(O(Qe),{modelValue:ae.value,"onUpdate:modelValue":n[0]||=e=>ae.value=e,accordion:``},{default:g(()=>[(r(),W(L,null,c(R,e=>G(O(Ye),{key:e,name:e},{title:g(()=>[P(`div`,Br,[G(O(V),{icon:O(St)(e),class:`w[20px] h[20px] shrink-0`},null,8,[`icon`]),P(`span`,Vr,I(O(s)(`spacesModule.media.activityLabels.${e}`)),1),G(O(K),{type:Ae(e),size:`small`,round:``},{default:g(()=>[A(I(Me(e)),1)]),_:2},1032,[`type`]),de[e]?(r(),M(O(V),{key:0,icon:`mdi:loading`,class:`animate-spin text-blue-500 w[14px] h[14px]`})):k(``,!0),n[3]||=P(`div`,{class:`flex-1`},null,-1),G(O(N),{size:`small`,type:`success`,circle:``,loading:O(_)&&oe.value===e,disabled:O(_)||O(v)||O(f)?.state===`activating`,title:O(s)(`spacesModule.media.activities.run`),onClick:le(t=>Re(e),[`stop`])},{icon:g(()=>[G(O(V),{icon:`mdi:play`})]),_:1},8,[`loading`,`disabled`,`title`,`onClick`])])]),default:g(()=>[G(O(we),{"label-position":`top`,class:`flex flex-col gap-2`},{default:g(()=>[P(`div`,{class:h(be(e,`displayEndpointId`)?`grid grid-cols-2 gap-x-4`:``)},[G(O(J),{label:O(s)(`spacesModule.media.activities.slots.display`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].displayEndpointId,"onUpdate:modelValue":t=>H[e].displayEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(pe),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},{default:g(()=>[P(`div`,Hr,[P(`span`,null,I(Ee(e)),1),P(`div`,Ur,[e.capabilities.inputSelect?(r(),M(O(K),{key:0,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.input`)),1)]),_:1})):k(``,!0)])])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),be(e,`displayEndpointId`)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.displayInput`)},{default:g(()=>[Ce(H[e].displayEndpointId).type===`select`?(r(),M(O(Ne),{key:0,modelValue:H[e].displayInputId,"onUpdate:modelValue":t=>H[e].displayInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.displayInputPlaceholder`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(q(H[e].displayEndpointId),e=>(r(),M(O(X),{key:String(e),label:Te(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(r(),M(O(ke),{key:1,modelValue:H[e].displayInputId,"onUpdate:modelValue":t=>H[e].displayInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.displayInputPlaceholder`),clearable:``},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]))]),_:2},1032,[`label`])):k(``,!0)],2),P(`div`,{class:h(be(e,`audioEndpointId`)?`grid grid-cols-2 gap-x-4`:``)},[G(O(J),{label:O(s)(`spacesModule.media.activities.slots.audio`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].audioEndpointId,"onUpdate:modelValue":t=>H[e].audioEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(me),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},{default:g(()=>[P(`div`,Wr,[P(`span`,null,I(Ee(e)),1),P(`div`,Gr,[e.capabilities.volume?(r(),M(O(K),{key:0,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.volume`)),1)]),_:1})):k(``,!0),e.capabilities.inputSelect?(r(),M(O(K),{key:1,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.input`)),1)]),_:1})):k(``,!0)])])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),be(e,`audioEndpointId`)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.audioInput`)},{default:g(()=>[Ce(H[e].audioEndpointId).type===`select`?(r(),M(O(Ne),{key:0,modelValue:H[e].audioInputId,"onUpdate:modelValue":t=>H[e].audioInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.audioInputPlaceholder`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(q(H[e].audioEndpointId),e=>(r(),M(O(X),{key:String(e),label:Te(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(r(),M(O(ke),{key:1,modelValue:H[e].audioInputId,"onUpdate:modelValue":t=>H[e].audioInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.audioInputPlaceholder`),clearable:``},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]))]),_:2},1032,[`label`])):k(``,!0)],2),xe(e)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.audioVolume`)},{default:g(()=>[G(O(Xt),{modelValue:H[e].audioVolumePreset,"onUpdate:modelValue":t=>H[e].audioVolumePreset=t,min:0,max:100,"show-input":``},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:2},1032,[`label`])):k(``,!0),P(`div`,{class:h(be(e,`sourceEndpointId`)?`grid grid-cols-2 gap-x-4`:``)},[G(O(J),{label:O(s)(`spacesModule.media.activities.slots.source`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].sourceEndpointId,"onUpdate:modelValue":t=>H[e].sourceEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(he),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},{default:g(()=>[P(`div`,Kr,[P(`span`,null,I(Ee(e)),1),P(`div`,qr,[e.capabilities.inputSelect?(r(),M(O(K),{key:0,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.input`)),1)]),_:1})):k(``,!0)])])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),be(e,`sourceEndpointId`)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.sourceInput`)},{default:g(()=>[Ce(H[e].sourceEndpointId).type===`select`?(r(),M(O(Ne),{key:0,modelValue:H[e].sourceInputId,"onUpdate:modelValue":t=>H[e].sourceInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.sourceInputPlaceholder`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(q(H[e].sourceEndpointId),e=>(r(),M(O(X),{key:String(e),label:Te(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(r(),M(O(ke),{key:1,modelValue:H[e].sourceInputId,"onUpdate:modelValue":t=>H[e].sourceInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.sourceInputPlaceholder`),clearable:``},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]))]),_:2},1032,[`label`])):k(``,!0)],2),G(O(J),{label:O(s)(`spacesModule.media.activities.slots.remote`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].remoteEndpointId,"onUpdate:modelValue":t=>H[e].remoteEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(ge),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),fe[e]?(r(),M(O(je),{key:1,type:`error`,title:O(s)(`spacesModule.media.activities.saveError`),description:fe[e],"show-icon":``,closable:``,onClose:t=>fe[e]=null},null,8,[`title`,`description`,`onClose`])):k(``,!0)]),_:2},1024)]),_:2},1032,[`name`])),64))]),_:1},8,[`modelValue`]),P(`div`,Jr,[P(`div`,Yr,[G(O(N),{size:`small`,loading:O(y),onClick:Ve},{default:g(()=>[A(I(O(s)(`spacesModule.media.activities.applyDefaults`)),1)]),_:1},8,[`loading`]),O(f)&&O(f).state!==`deactivated`?(r(),M(O(N),{key:0,size:`small`,type:`warning`,loading:O(v),disabled:O(_),onClick:ze},{icon:g(()=>[G(O(V),{icon:`mdi:stop`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.media.activities.deactivate`)),1)]),_:1},8,[`loading`,`disabled`])):k(``,!0)]),P(`div`,Xr,I(O(s)(`spacesModule.media.activities.applyDefaultsHint`)),1)]),O(b)?(r(),M(O(je),{key:0,type:`error`,title:O(s)(`spacesModule.media.activities.activateFailed`),description:O(b),"show-icon":``,closable:``,onClose:n[1]||=e=>b.value=null},null,8,[`title`,`description`])):k(``,!0)],8,zr)),[[O(Se),se.value]])]),_:1},8,[`modelValue`,`title`]))}}),Qr={class:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4`},$r=b({name:`SpaceDomainsSection`,__name:`space-domains-section`,props:{space:{}},setup(e,{expose:t}){let n=e,{t:i}=j(),a=it(),{lightingSignal:o,climateSignal:s,coversSignal:l,sensorSignal:d}=Tt(),f=U(!1),p=U(!1),m=U(!1),h=U(!1),g=U(!1),_=U(!1),v=U([]),y=e=>{switch(e){case Z.main:return`primary`;case Z.task:return`warning`;case Z.ambient:return`success`;case Z.accent:return`danger`;case Z.night:default:return`info`}},b=e=>{switch(e){case Z.main:return`mdi:lightbulb`;case Z.task:return`mdi:desk-lamp`;case Z.ambient:return`mdi:lightbulb-group`;case Z.accent:return`mdi:spotlight-beam`;case Z.night:return`mdi:weather-night`;default:return`mdi:lightbulb-outline`}},x=async()=>{if(n.space?.id){_.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/lighting/targets`,{params:{path:{id:n.space.id}}});if(t||!e){v.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}let s=[Z.main,Z.task,Z.ambient,Z.accent,Z.night,Z.other];v.value=Array.from(o.entries()).sort(([e],[t])=>s.indexOf(e)-s.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.lightingRoles.${e}`),type:y(e),icon:b(e),count:t}))}finally{_.value=!1}}},S=U(!1),C=U([]),w=e=>{switch(e){case Y.heating_only:return`danger`;case Y.cooling_only:return`primary`;case Y.auto:return`success`;case Y.auxiliary:return`warning`;default:return`info`}},E=e=>{switch(e){case Y.heating_only:return`mdi:fire`;case Y.cooling_only:return`mdi:snowflake`;case Y.auto:return`mdi:thermostat-auto`;case Y.auxiliary:return`mdi:radiator`;case Y.sensor:return`mdi:thermometer`;default:return`mdi:eye-off`}},D=async()=>{if(n.space?.id){S.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/climate/targets`,{params:{path:{id:n.space.id}}});if(t||!e){C.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role||e.role===Y.hidden)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}let s=[Y.heating_only,Y.cooling_only,Y.auto,Y.auxiliary,Y.sensor];C.value=Array.from(o.entries()).sort(([e],[t])=>s.indexOf(e)-s.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.climateRoles.${e}`),type:w(e),icon:E(e),count:t}))}finally{S.value=!1}}},O=U(!1),k=U([]),ee=e=>{switch(e){case We.primary:return`primary`;case We.blackout:return`danger`;case We.sheer:return`success`;case We.outdoor:return`warning`;default:return`info`}},A=e=>{switch(e){case We.primary:return`mdi:blinds`;case We.blackout:return`mdi:blinds-horizontal-closed`;case We.sheer:return`mdi:curtains`;case We.outdoor:return`mdi:window-shutter`;default:return`mdi:blinds-horizontal`}},te=async()=>{if(n.space?.id){O.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/covers/targets`,{params:{path:{id:n.space.id}}});if(t||!e){k.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}let s=[We.primary,We.blackout,We.sheer,We.outdoor,We.hidden];k.value=Array.from(o.entries()).sort(([e],[t])=>s.indexOf(e)-s.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.coversRoles.${e}`),type:ee(e),icon:A(e),count:t}))}finally{O.value=!1}}},ne=U(!1),re=U([]),ie=e=>{switch(e){case ve.ENVIRONMENT:return`success`;case ve.SAFETY:return`danger`;case ve.SECURITY:return`warning`;case ve.AIR_QUALITY:return`info`;case ve.ENERGY:return`primary`;default:return`info`}},N=e=>{switch(e){case ve.ENVIRONMENT:return`mdi:thermometer`;case ve.SAFETY:return`mdi:shield-alert`;case ve.SECURITY:return`mdi:motion-sensor`;case ve.AIR_QUALITY:return`mdi:air-filter`;case ve.ENERGY:return`mdi:lightning-bolt`;default:return`mdi:chart-line`}},F=async()=>{if(n.space?.id){ne.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/sensors/targets`,{params:{path:{id:n.space.id}}});if(t||!e){re.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role||e.role===ve.HIDDEN)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}re.value=Array.from(o.entries()).sort(([e],[t])=>xe.indexOf(e)-xe.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.sensorRoles.${e}`),type:ie(e),icon:N(e),count:t}))}finally{ne.value=!1}}},{fetchEndpoints:I,fetchBindings:R,findBindingByActivity:ae}=Et(z(()=>n.space?.id)),oe=U(!1),V=U([]),se=[Q.watch,Q.listen,Q.gaming,Q.background],ce=async()=>{if(n.space?.id){oe.value=!0;try{await Promise.all([I(),R()]);let e=[];for(let t of se){let n=ae(t);if(!n)continue;let r=[n.displayEndpointId,n.audioEndpointId,n.sourceEndpointId,n.remoteEndpointId].filter(Boolean).length;e.push({label:i(`spacesModule.media.activityLabels.${t}`),type:_t(t),icon:St(t),count:r})}V.value=e}catch{V.value=[]}finally{oe.value=!1}}},le=z(()=>[{key:`lighting`,icon:`mdi:lightbulb`,iconColor:`warning`,title:i(`spacesModule.detail.domains.lighting.title`),description:i(`spacesModule.detail.domains.lighting.description`),tags:v.value,loading:_.value,openDialog:()=>{f.value=!0}},{key:`climate`,icon:`mdi:thermostat`,iconColor:`danger`,title:i(`spacesModule.detail.domains.climate.title`),description:i(`spacesModule.detail.domains.climate.description`),tags:C.value,loading:S.value,openDialog:()=>{p.value=!0}},{key:`covers`,icon:`mdi:blinds`,iconColor:`primary`,title:i(`spacesModule.detail.domains.covers.title`),description:i(`spacesModule.detail.domains.covers.description`),tags:k.value,loading:O.value,openDialog:()=>{m.value=!0}},{key:`sensor`,icon:`mdi:chart-bell-curve`,iconColor:`success`,title:i(`spacesModule.detail.domains.sensor.title`),description:i(`spacesModule.detail.domains.sensor.description`),tags:re.value,loading:ne.value,openDialog:()=>{h.value=!0}},{key:`media`,icon:`mdi:play-box-multiple`,iconColor:`info`,title:i(`spacesModule.detail.domains.media.title`),description:i(`spacesModule.detail.domains.media.description`),tags:V.value,loading:oe.value,openDialog:()=>{g.value=!0}}]),H=()=>{x(),D(),te(),F(),ce()};T(()=>o?.value,()=>{n.space?.id&&x()}),T(()=>s?.value,()=>{n.space?.id&&D()}),T(()=>l?.value,()=>{n.space?.id&&te()}),T(()=>d?.value,()=>{n.space?.id&&F()}),T(()=>n.space?.id,e=>{e&&H()});let ue=()=>{x()},de=()=>{D()},fe=()=>{te()},pe=()=>{F()},me=()=>{ce()};return u(()=>{n.space?.id&&H()}),t({reload:H}),(e,t)=>(r(),W(L,null,[P(`div`,Qr,[(r(!0),W(L,null,c(le.value,e=>(r(),M(Rr,{key:e.key,icon:e.icon,"icon-color":e.iconColor,title:e.title,description:e.description,tags:e.tags,loading:e.loading,onClick:t=>e.openDialog()},null,8,[`icon`,`icon-color`,`title`,`description`,`tags`,`loading`,`onClick`]))),128))]),G(Er,{visible:f.value,"onUpdate:visible":t[0]||=e=>f.value=e,space:n.space,onRolesChanged:ue},null,8,[`visible`,`space`]),G(Dr,{visible:p.value,"onUpdate:visible":t[1]||=e=>p.value=e,space:n.space,onRolesChanged:de},null,8,[`visible`,`space`]),G(Or,{visible:m.value,"onUpdate:visible":t[2]||=e=>m.value=e,space:n.space,onRolesChanged:fe},null,8,[`visible`,`space`]),G(kr,{visible:h.value,"onUpdate:visible":t[3]||=e=>h.value=e,space:n.space,onRolesChanged:pe},null,8,[`visible`,`space`]),G(Zr,{visible:g.value,"onUpdate:visible":t[4]||=e=>g.value=e,space:n.space,onBindingsChanged:me},null,8,[`visible`,`space`])],64))}}),ei={class:`grid m-0`},ti={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ni={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},ri={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ii={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},ai={key:0,class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},oi={key:1,class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},si={key:2,class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ci={key:3,class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center gap-2 min-w-[8rem]`},li={key:4,class:`b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ui={key:5,class:`col-start-2 m-0 p-2 flex items-center gap-2 min-w-[8rem]`},di={class:`flex items-center gap-1`},fi={key:1,class:`text-gray-400 text-sm`},pi={class:`flex items-center gap-2`},mi=b({name:`SpaceDetail`,__name:`space-detail`,props:{space:{}},setup(e){let t=e,{t:i}=j(),a=Be(),{spaces:o,firstLoadFinished:s,fetchSpaces:l}=ht(),{editSpace:d}=bt(z(()=>t.space?.id));u(async()=>{s.value||await l().catch(()=>{})});let f=U(null),h=U(!1),_=U(!1),v=U(null),y=U(null),b=U(!1),x=z(()=>o.value.filter(e=>!(e.type!==q.ZONE||!ze(e.category)))),S=z(()=>t.space?.parentId?o.value.find(e=>e.id===t.space?.parentId)??null:null),C=()=>{_.value=!0,y.value=t.space?.parentId??null,f.value=t.space?.parentId??null,b.value=!1,n(()=>{v.value?.focus()})},w=()=>{setTimeout(()=>{!b.value&&!h.value&&_.value&&(_.value=!1),b.value=!1},200)},E=e=>{_.value&&e.key===`Escape`&&(f.value=y.value,_.value=!1,b.value=!1)},D=async e=>{if(!t.space||e===t.space.parentId){_.value=!1,b.value=!1;return}b.value=!0,h.value=!0;try{await d({name:t.space.name,parentId:e}),a.success(i(`spacesModule.messages.edited`,{space:t.space.name})),_.value=!1,b.value=!1}catch{f.value=y.value,a.error(i(`spacesModule.messages.saveError`)),_.value=!1,b.value=!1}finally{h.value=!1}};return T(()=>t.space?.parentId??null,e=>{_.value||(f.value=e,y.value=e)},{immediate:!0}),u(()=>{document.addEventListener(`keydown`,E)}),p(()=>{document.removeEventListener(`keydown`,E)}),(t,n)=>(r(),M(O(at),{class:`mt-2`,"body-class":`p-0!`},{default:g(()=>[P(`dl`,ei,[P(`dt`,ti,I(O(i)(`spacesModule.fields.spaces.name.title`)),1),P(`dd`,ni,[G(O(De),null,{default:g(()=>[A(I(e.space.name),1)]),_:1})]),P(`dt`,ri,I(O(i)(`spacesModule.fields.spaces.type.title`)),1),P(`dd`,ii,[G(O(De),null,{default:g(()=>[A(I(O(i)(`spacesModule.misc.types.${e.space.type}`)),1)]),_:1})]),e.space.description?(r(),W(`dt`,ai,I(O(i)(`spacesModule.fields.spaces.description.title`)),1)):k(``,!0),e.space.description?(r(),W(`dd`,oi,[G(O(De),null,{default:g(()=>[A(I(e.space.description),1)]),_:1})])):k(``,!0),e.space.icon?(r(),W(`dt`,si,I(O(i)(`spacesModule.fields.spaces.icon.title`)),1)):k(``,!0),e.space.icon?(r(),W(`dd`,ci,[G(O(m),null,{default:g(()=>[G(O(V),{icon:e.space.icon},null,8,[`icon`])]),_:1}),G(O(De),null,{default:g(()=>[A(I(e.space.icon),1)]),_:1})])):k(``,!0),e.space.type===O(q).ROOM?(r(),W(`dt`,li,I(O(i)(`spacesModule.detail.parentZone.title`)),1)):k(``,!0),e.space.type===O(q).ROOM?(r(),W(`dd`,ui,[_.value?(r(),M(O(Ne),{key:1,ref_key:`floorSelectRef`,ref:v,modelValue:f.value,"onUpdate:modelValue":n[0]||=e=>f.value=e,placeholder:O(i)(`spacesModule.detail.parentZone.select`),clearable:``,size:`small`,class:`max-w-[250px]`,loading:h.value,onChange:D,onBlur:w},{default:g(()=>[(r(!0),W(L,null,c(x.value,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`div`,pi,[G(O(V),{icon:e.icon||`mdi:home-floor-1`},null,8,[`icon`]),P(`span`,null,I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`loading`])):(r(),W(`div`,{key:0,class:`flex items-center gap-2 cursor-pointer hover:opacity-70`,onClick:C},[S.value?(r(),M(O(K),{key:0,type:`success`,size:`small`},{default:g(()=>[P(`div`,di,[G(O(V),{icon:S.value.icon||`mdi:home-floor-1`},null,8,[`icon`]),A(` `+I(S.value.name),1)])]),_:1})):(r(),W(`span`,fi,I(O(i)(`spacesModule.detail.parentZone.none`)),1))]))])):k(``,!0)])]),_:1}))}}),hi={class:`flex items-center gap-2`},gi={class:`font-medium`},_i={key:0,class:`text-xs text-gray-500`},vi={class:`flex items-center gap-2 justify-end`},yi={key:0,class:`h-full w-full leading-normal`},bi={key:1,class:`h-full w-full leading-normal`},xi={class:`mb-4`},Si=b({name:`SpaceDevicesSection`,__name:`space-devices-section`,props:{spaceId:{},spaceType:{}},emits:[`open-add-dialog`],setup(t,{expose:n,emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),{roomSpaces:d}=ht(),{devices:f,loading:p,firstLoadFinished:m,fetchDevices:h,removeDevice:_,reassignDevice:v}=wt(se(a,`spaceId`),se(a,`spaceType`)),y=U(!1),b=U(null),x=U(null),S=U(!1),C=e=>({generic:`mdi:devices`,lighting:`mdi:lightbulb`,switcher:`mdi:toggle-switch`,thermostat:`mdi:thermostat`,sensor:`mdi:gauge`,valve:`mdi:pipe-valve`,media:`mdi:cast`,camera:`mdi:camera`,door:`mdi:door`,lock:`mdi:lock`,window_covering:`mdi:blinds`})[e]||`mdi:devices`,w=()=>{o(`open-add-dialog`)},T=e=>{b.value=e,x.value=null,y.value=!0},E=async()=>{if(b.value){S.value=!0;try{await v(b.value.id,x.value),y.value=!1,l.success(s(`spacesModule.messages.edited`,{space:b.value.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}finally{S.value=!1}}},D=e=>{Fe.confirm(s(`spacesModule.detail.devices.confirmRemove`,{name:e.name}),s(`spacesModule.detail.devices.removeHeading`),{confirmButtonText:s(`spacesModule.buttons.yes.title`),cancelButtonText:s(`spacesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await _(e.id),l.success(s(`spacesModule.detail.devices.removed`,{name:e.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}}).catch(()=>{l.info(s(`spacesModule.detail.devices.removeCanceled`))})};return u(async()=>{m.value||await h()}),n({openAddDialog:w,fetchDevices:h}),(t,n)=>(r(),W(L,null,[e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.detail.devices.loading`),data:O(f),"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[O(p)?(r(),W(`div`,yi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(r(),W(`div`,bi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.detail.devices.empty`)),1)]),extra:g(()=>[G(O(N),{type:`primary`,plain:``,onClick:w},{icon:g(()=>[G(O(V),{icon:`mdi:plus`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.devices.add`)),1)]),_:1})]),_:1})]))]),default:g(()=>[G(O($),{label:O(s)(`spacesModule.onboarding.deviceName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,hi,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:C(e.category),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[P(`div`,gi,I(e.name),1),e.description?(r(),W(`div`,_i,I(e.description),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.category`),width:`150`},{default:g(({row:e})=>[G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`devicesModule.categories.devices.${e.category}`)),1)]),_:2},1024)]),_:1},8,[`label`]),G(O($),{label:O(s)(`devicesModule.table.devices.columns.state.title`),width:`100`,align:`center`},{default:g(({row:e})=>[G(O(K),{type:e.status?.online?`success`:`danger`,size:`small`},{default:g(()=>[A(I(e.status?.online?`Online`:`Offline`),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:``,width:a.spaceType===O(q).ZONE?110:220,align:`right`},{default:g(({row:e})=>[P(`div`,vi,[a.spaceType===O(q).ROOM?(r(),M(O(N),{key:0,type:`warning`,plain:``,size:`small`,onClick:t=>T(e)},{icon:g(()=>[G(O(V),{icon:`mdi:swap-horizontal`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.devices.reassign`)),1)]),_:1},8,[`onClick`])):k(``,!0),G(O(N),{type:`danger`,plain:``,size:`small`,onClick:t=>D(e)},{icon:g(()=>[G(O(V),{icon:`mdi:close`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.devices.remove`)),1)]),_:1},8,[`onClick`])])]),_:1},8,[`width`])]),_:1},8,[`element-loading-text`,`data`])),[[O(Se),O(p)]]),G(O(tt),{modelValue:y.value,"onUpdate:modelValue":n[2]||=e=>y.value=e,title:O(s)(`spacesModule.detail.devices.reassign`),width:`400px`},{footer:g(()=>[G(O(N),{onClick:n[1]||=e=>y.value=!1},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:S.value,onClick:E},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]),default:g(()=>[P(`p`,xi,I(O(s)(`spacesModule.detail.devices.selectRoom`)),1),G(O(Ne),{modelValue:x.value,"onUpdate:modelValue":n[0]||=e=>x.value=e,placeholder:O(s)(`spacesModule.onboarding.selectSpace`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(d),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id,disabled:e.id===a.spaceId},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`modelValue`,`title`])],64))}}),Ci={class:`flex items-center gap-2`},wi={class:`font-medium`},Ti={key:0,class:`text-xs text-gray-500`},Ei={class:`flex items-center gap-2 justify-end`},Di={key:0,class:`h-full w-full leading-normal`},Oi={key:1,class:`h-full w-full leading-normal`},ki={class:`mb-4`},Ai=b({name:`SpaceScenesSection`,__name:`space-scenes-section`,props:{spaceId:{}},emits:[`open-add-dialog`],setup(t,{expose:n,emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),{spaces:d}=ht(),{scenes:f,loading:p,firstLoadFinished:m,fetchScenes:h,reassignScene:_,removeScene:v}=gt(se(a,`spaceId`)),y=U(!1),b=U(null),x=U(null),S=U(!1),C=e=>e.icon?e.icon:At[e.category]||At[Dt.GENERIC],w=()=>{o(`open-add-dialog`)},T=e=>{b.value=e,x.value=null,y.value=!0},E=async()=>{if(b.value){S.value=!0;try{await _(b.value.id,x.value),y.value=!1,l.success(s(`spacesModule.detail.scenes.reassigned`,{name:b.value.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}finally{S.value=!1}}},D=e=>{Fe.confirm(s(`spacesModule.detail.scenes.confirmRemove`,{name:e.name}),s(`spacesModule.detail.scenes.removeHeading`),{confirmButtonText:s(`spacesModule.buttons.yes.title`),cancelButtonText:s(`spacesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await v(e.id),l.success(s(`spacesModule.detail.scenes.removed`,{name:e.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}}).catch(()=>{l.info(s(`spacesModule.detail.scenes.removeCanceled`))})};return u(async()=>{m.value||await h()}),n({openAddDialog:w,fetchScenes:h}),(t,n)=>(r(),W(L,null,[e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.detail.scenes.loading`),data:O(f),"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[O(p)?(r(),W(`div`,Di,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(r(),W(`div`,Oi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.detail.scenes.empty`)),1)]),extra:g(()=>[G(O(N),{type:`primary`,plain:``,onClick:w},{icon:g(()=>[G(O(V),{icon:`mdi:plus`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.scenes.add`)),1)]),_:1})]),_:1})]))]),default:g(()=>[G(O($),{label:O(s)(`spacesModule.detail.scenes.name`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,Ci,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:C(e),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[P(`div`,wi,I(e.name),1),e.description?(r(),W(`div`,Ti,I(e.description),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.detail.scenes.category`),width:`150`},{default:g(({row:e})=>[G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`scenes.categories.${e.category}`)),1)]),_:2},1024)]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.detail.scenes.status`),width:`100`,align:`center`},{default:g(({row:e})=>[G(O(K),{type:e.enabled?`success`:`info`,size:`small`},{default:g(()=>[A(I(e.enabled?O(s)(`spacesModule.detail.scenes.enabled`):O(s)(`spacesModule.detail.scenes.disabled`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:``,width:`220`,align:`right`},{default:g(({row:e})=>[P(`div`,Ei,[G(O(N),{type:`warning`,plain:``,size:`small`,onClick:t=>T(e)},{icon:g(()=>[G(O(V),{icon:`mdi:swap-horizontal`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.scenes.reassign`)),1)]),_:1},8,[`onClick`]),G(O(N),{type:`danger`,plain:``,size:`small`,onClick:t=>D(e)},{icon:g(()=>[G(O(V),{icon:`mdi:close`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.scenes.remove`)),1)]),_:1},8,[`onClick`])])]),_:1})]),_:1},8,[`element-loading-text`,`data`])),[[O(Se),O(p)]]),G(O(tt),{modelValue:y.value,"onUpdate:modelValue":n[2]||=e=>y.value=e,title:O(s)(`spacesModule.detail.scenes.reassign`),width:`400px`},{footer:g(()=>[G(O(N),{onClick:n[1]||=e=>y.value=!1},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:S.value,onClick:E},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]),default:g(()=>[P(`p`,ki,I(O(s)(`spacesModule.detail.scenes.selectSpace`)),1),G(O(Ne),{modelValue:x.value,"onUpdate:modelValue":n[0]||=e=>x.value=e,placeholder:O(s)(`spacesModule.onboarding.selectSpace`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(d),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id,disabled:e.id===a.spaceId},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`modelValue`,`title`])],64))}}),ji={class:`flex items-center gap-2`},Mi={class:`block`},Ni={key:1,class:`font-medium`},Pi={class:`flex items-center gap-2 justify-end`},Fi={key:0,class:`h-full w-full leading-normal`},Ii={key:1,class:`h-full w-full leading-normal`},Li={class:`mb-4`},Ri=b({name:`SpaceDisplaysSection`,__name:`space-displays-section`,props:{spaceId:{}},emits:[`open-add-dialog`],setup(t,{expose:n,emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),{roomSpaces:d}=ht(),{displays:f,loading:p,fetchDisplays:m,removeDisplay:h,reassignDisplay:_}=yt(se(a,`spaceId`)),v=U(!1),y=U(null),b=U(null),x=U(!1),S=()=>{o(`open-add-dialog`)},C=e=>{y.value=e,b.value=null,v.value=!0},w=async()=>{if(y.value){x.value=!0;try{await _(y.value.id,b.value),v.value=!1,l.success(s(`spacesModule.messages.edited`,{space:y.value.name||y.value.macAddress}))}catch{l.error(s(`spacesModule.messages.saveError`))}finally{x.value=!1}}},T=e=>{let t=e.name||e.macAddress;Fe.confirm(s(`spacesModule.detail.displays.confirmRemove`,{name:t}),s(`spacesModule.detail.displays.removeHeading`),{confirmButtonText:s(`spacesModule.buttons.yes.title`),cancelButtonText:s(`spacesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await h(e.id),l.success(s(`spacesModule.detail.displays.removed`,{name:t}))}catch{l.error(s(`spacesModule.messages.saveError`))}}).catch(()=>{l.info(s(`spacesModule.detail.displays.removeCanceled`))})};return u(async()=>{await m()}),n({openAddDialog:S,fetchDisplays:m}),(t,n)=>(r(),W(L,null,[e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.detail.displays.loading`),data:O(f),"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[O(p)?(r(),W(`div`,Fi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(r(),W(`div`,Ii,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.detail.displays.empty`)),1)]),extra:g(()=>[G(O(N),{type:`primary`,plain:``,onClick:S},{icon:g(()=>[G(O(V),{icon:`mdi:plus`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.displays.add`)),1)]),_:1})]),_:1})]))]),default:g(()=>[G(O($),{label:O(s)(`spacesModule.onboarding.displayName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,ji,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:`mdi:monitor`,class:`w[20px] h[20px]`})]),_:1}),P(`div`,null,[e.name?(r(),W(L,{key:0},[P(`strong`,Mi,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.macAddress),1)]),_:2},1024)],64)):(r(),W(`div`,Ni,I(e.macAddress),1))])])]),_:1},8,[`label`]),G(O($),{label:O(s)(`displaysModule.table.columns.state.title`),width:`100`,align:`center`},{default:g(({row:e})=>[G(O(K),{type:e.online?`success`:`danger`,size:`small`},{default:g(()=>[A(I(e.online?`Online`:`Offline`),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:``,width:`220`,align:`right`},{default:g(({row:e})=>[P(`div`,Pi,[G(O(N),{type:`warning`,plain:``,size:`small`,onClick:t=>C(e)},{icon:g(()=>[G(O(V),{icon:`mdi:swap-horizontal`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.displays.reassign`)),1)]),_:1},8,[`onClick`]),G(O(N),{type:`danger`,plain:``,size:`small`,onClick:t=>T(e)},{icon:g(()=>[G(O(V),{icon:`mdi:close`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.displays.remove`)),1)]),_:1},8,[`onClick`])])]),_:1})]),_:1},8,[`element-loading-text`,`data`])),[[O(Se),O(p)]]),G(O(tt),{modelValue:v.value,"onUpdate:modelValue":n[2]||=e=>v.value=e,title:O(s)(`spacesModule.detail.displays.reassign`),width:`400px`},{footer:g(()=>[G(O(N),{onClick:n[1]||=e=>v.value=!1},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:x.value,onClick:w},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]),default:g(()=>[P(`p`,Li,I(O(s)(`spacesModule.detail.displays.selectRoom`)),1),G(O(Ne),{modelValue:b.value,"onUpdate:modelValue":n[0]||=e=>b.value=e,placeholder:O(s)(`spacesModule.onboarding.selectSpace`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(d),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id,disabled:e.id===a.spaceId},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`modelValue`,`title`])],64))}}),zi={key:0,class:`h-full w-full leading-normal`},Bi={key:1,class:`h-full w-full leading-normal`},Vi={class:`flex items-center gap-2`},Hi={class:`block text-sm`},Ui={key:1,class:`font-medium`},Wi={key:1,class:`text-gray-400 text-sm`},Gi=b({name:`SpaceAddDeviceDialog`,__name:`space-add-device-dialog`,props:{visible:{type:Boolean},spaceId:{},spaceType:{}},emits:[`update:visible`,`device-added`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Be(),{devices:s}=jt(),{findById:c}=ht(),l=U(``),u=U(null),{devices:d,addDevice:f}=wt(z(()=>n.spaceId),z(()=>n.spaceType)),p=z(()=>new Set(d.value.map(e=>e.id))),m=z(()=>s.value.filter(e=>n.spaceType===q.ZONE?!p.value.has(e.id):e.roomId!==n.spaceId).sort((e,t)=>e.name.localeCompare(t.name))),h=z(()=>(l.value.trim()?m.value.filter(e=>{let t=l.value.toLowerCase();return e.name.toLowerCase().includes(t)||e.description?.toLowerCase().includes(t)}):m.value).sort((e,t)=>e.name.localeCompare(t.name))),_=e=>({generic:`mdi:devices`,lighting:`mdi:lightbulb`,switcher:`mdi:toggle-switch`,thermostat:`mdi:thermostat`,sensor:`mdi:gauge`,valve:`mdi:pipe-valve`,media:`mdi:cast`,camera:`mdi:camera`,door:`mdi:door`,lock:`mdi:lock`,window_covering:`mdi:blinds`})[e.category]||`mdi:devices`,v=e=>c(e)?.name||`Unknown`,y=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),b=()=>{y.value=!1,l.value=``,u.value=null},x=async e=>{u.value=e.id;try{await f(e.id),o.success(a(`spacesModule.messages.edited`,{space:e.name})),i(`device-added`)}catch{o.error(a(`spacesModule.messages.saveError`))}finally{u.value=null}};return T(()=>n.visible,e=>{e||(l.value=``,u.value=null)}),(e,t)=>(r(),M(O(tt),{modelValue:y.value,"onUpdate:modelValue":t[1]||=e=>y.value=e,title:O(a)(`spacesModule.detail.devices.selectDevice`),class:`max-w-[700px]`,onClose:b},{footer:g(()=>[G(O(N),{onClick:b},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.close.title`)),1)]),_:1})]),default:g(()=>[G(O(ke),{modelValue:l.value,"onUpdate:modelValue":t[0]||=e=>l.value=e,placeholder:O(a)(`devicesModule.fields.devices.search.placeholder`),clearable:``,class:`mb-4`},{prefix:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1},8,[`modelValue`,`placeholder`]),G(O(ct),{data:h.value,"max-height":`400px`,"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[m.value.length===0?(r(),W(`div`,zi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(a)(`spacesModule.detail.devices.noAvailable`)),1)]),_:1})])):l.value.trim()&&h.value.length===0?(r(),W(`div`,Bi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(a)(`devicesModule.texts.devices.noFilteredDevices`)),1)]),_:1})]),_:1})])):k(``,!0)]),default:g(()=>[G(O($),{label:O(a)(`spacesModule.onboarding.deviceName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,Vi,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:_(e),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[e.description?(r(),W(L,{key:0},[P(`strong`,Hi,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.description),1)]),_:2},1024)],64)):(r(),W(`div`,Ui,I(e.name),1))])])]),_:1},8,[`label`]),G(O($),{label:O(a)(`spacesModule.onboarding.assignedSpace`),width:`150`},{default:g(({row:e})=>[e.roomId?(r(),M(O(K),{key:0,size:`small`,type:`warning`},{default:g(()=>[A(I(v(e.roomId)),1)]),_:2},1024)):(r(),W(`span`,Wi,`-`))]),_:1},8,[`label`]),G(O($),{label:``,width:`150`,align:`right`},{default:g(({row:e})=>[G(O(N),{type:n.spaceType===O(q).ROOM&&e.roomId?`warning`:`default`,plain:``,size:`small`,loading:u.value===e.id,onClick:t=>x(e)},{icon:g(()=>[G(O(V),{icon:n.spaceType===O(q).ROOM&&e.roomId?`mdi:swap-horizontal`:`mdi:plus`},null,8,[`icon`])]),default:g(()=>[A(` `+I(n.spaceType===O(q).ROOM&&e.roomId?O(a)(`spacesModule.detail.devices.reassign`):O(a)(`spacesModule.detail.devices.assign`)),1)]),_:2},1032,[`type`,`loading`,`onClick`])]),_:1})]),_:1},8,[`data`])]),_:1},8,[`modelValue`,`title`]))}}),Ki={key:0,class:`h-full w-full leading-normal`},qi={key:1,class:`h-full w-full leading-normal`},Ji={class:`flex items-center gap-2`},Yi={class:`block text-sm`},Xi={key:1,class:`font-medium`},Zi={key:1,class:`text-gray-400 text-sm`},Qi=b({name:`SpaceAddSceneDialog`,__name:`space-add-scene-dialog`,props:{visible:{type:Boolean},spaceId:{}},emits:[`update:visible`,`scene-added`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Be(),{scenes:s,loaded:c,fetchScenes:l}=kt(),{editScene:d}=Ot(),{findById:f}=ht(),p=U(``),m=U(null),h=z(()=>s.value.filter(e=>e.draft?!1:e.primarySpaceId!==n.spaceId).sort((e,t)=>e.name.localeCompare(t.name))),_=z(()=>(p.value.trim()?h.value.filter(e=>{let t=p.value.toLowerCase();return e.name.toLowerCase().includes(t)||e.description?.toLowerCase().includes(t)}):h.value).sort((e,t)=>e.name.localeCompare(t.name))),v=e=>At[e.category]||At[Dt.GENERIC],y=e=>f(e)?.name||`Unknown`,b=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),x=()=>{b.value=!1,p.value=``,m.value=null},S=async e=>{m.value=e.id;try{await d({id:e.id,data:{primarySpaceId:n.spaceId}}),o.success(a(`spacesModule.detail.scenes.assigned`,{name:e.name})),i(`scene-added`)}catch{o.error(a(`spacesModule.messages.saveError`))}finally{m.value=null}};return u(async()=>{c.value||await l()}),T(()=>n.visible,e=>{e||(p.value=``,m.value=null)}),(e,t)=>(r(),M(O(tt),{modelValue:b.value,"onUpdate:modelValue":t[1]||=e=>b.value=e,title:O(a)(`spacesModule.detail.scenes.selectScene`),class:`max-w-[700px]`,onClose:x},{footer:g(()=>[G(O(N),{onClick:x},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.close.title`)),1)]),_:1})]),default:g(()=>[G(O(ke),{modelValue:p.value,"onUpdate:modelValue":t[0]||=e=>p.value=e,placeholder:O(a)(`spacesModule.detail.scenes.searchPlaceholder`),clearable:``,class:`mb-4`},{prefix:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1},8,[`modelValue`,`placeholder`]),G(O(ct),{data:_.value,"max-height":`400px`,"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[h.value.length===0?(r(),W(`div`,Ki,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(a)(`spacesModule.detail.scenes.noAvailable`)),1)]),_:1})])):p.value.trim()&&_.value.length===0?(r(),W(`div`,qi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(a)(`spacesModule.detail.scenes.noFilteredScenes`)),1)]),_:1})]),_:1})])):k(``,!0)]),default:g(()=>[G(O($),{label:O(a)(`spacesModule.detail.scenes.name`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,Ji,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:v(e),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[e.description?(r(),W(L,{key:0},[P(`strong`,Yi,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.description),1)]),_:2},1024)],64)):(r(),W(`div`,Xi,I(e.name),1))])])]),_:1},8,[`label`]),G(O($),{label:O(a)(`spacesModule.detail.scenes.assignedSpace`),width:`150`},{default:g(({row:e})=>[e.primarySpaceId?(r(),M(O(K),{key:0,size:`small`,type:`warning`},{default:g(()=>[A(I(y(e.primarySpaceId)),1)]),_:2},1024)):(r(),W(`span`,Zi,`-`))]),_:1},8,[`label`]),G(O($),{label:``,width:`150`,align:`right`},{default:g(({row:e})=>[G(O(N),{type:e.primarySpaceId?`warning`:`default`,plain:``,size:`small`,loading:m.value===e.id,onClick:t=>S(e)},{icon:g(()=>[G(O(V),{icon:e.primarySpaceId?`mdi:swap-horizontal`:`mdi:plus`},null,8,[`icon`])]),default:g(()=>[A(` `+I(e.primarySpaceId?O(a)(`spacesModule.detail.scenes.reassign`):O(a)(`spacesModule.detail.scenes.assign`)),1)]),_:2},1032,[`type`,`loading`,`onClick`])]),_:1})]),_:1},8,[`data`])]),_:1},8,[`modelValue`,`title`]))}}),$i={key:0,class:`h-full w-full leading-normal`},ea={key:1,class:`h-full w-full leading-normal`},ta={class:`flex items-center gap-2`},na={class:`block`},ra={key:1,class:`font-medium`},ia={key:1,class:`text-gray-400 text-sm`},aa=b({name:`SpaceAddDisplayDialog`,__name:`space-add-display-dialog`,props:{visible:{type:Boolean},spaceId:{}},emits:[`update:visible`,`display-added`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Be(),{displays:s}=mt(),{findById:c}=ht(),l=U(``),u=U(null),{reassignDisplay:d}=yt(z(()=>n.spaceId)),f=z(()=>s.value.filter(e=>e.role===`room`?e.roomId!==n.spaceId:!1).sort((e,t)=>{let n=e.name||e.macAddress,r=t.name||t.macAddress;return n.localeCompare(r)})),p=z(()=>(l.value.trim()?f.value.filter(e=>{let t=l.value.toLowerCase();return(e.name||``).toLowerCase().includes(t)||e.macAddress.toLowerCase().includes(t)}):f.value).sort((e,t)=>{let n=e.name||e.macAddress,r=t.name||t.macAddress;return n.localeCompare(r)})),m=e=>c(e)?.name||`Unknown`,h=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),_=()=>{h.value=!1,l.value=``,u.value=null},v=async e=>{u.value=e.id;try{await d(e.id,n.spaceId),o.success(a(`spacesModule.messages.edited`,{space:e.name||e.macAddress})),i(`display-added`)}catch{o.error(a(`spacesModule.messages.saveError`))}finally{u.value=null}};return T(()=>n.visible,e=>{e||(l.value=``,u.value=null)}),(e,t)=>(r(),M(O(tt),{modelValue:h.value,"onUpdate:modelValue":t[1]||=e=>h.value=e,title:O(a)(`spacesModule.detail.displays.selectDisplay`),class:`max-w-[700px]`,onClose:_},{footer:g(()=>[G(O(N),{onClick:_},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.close.title`)),1)]),_:1})]),default:g(()=>[G(O(ke),{modelValue:l.value,"onUpdate:modelValue":t[0]||=e=>l.value=e,placeholder:O(a)(`displaysModule.fields.search.placeholder`),clearable:``,class:`mb-4`},{prefix:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1},8,[`modelValue`,`placeholder`]),G(O(ct),{data:p.value,"max-height":`400px`,"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[f.value.length===0?(r(),W(`div`,$i,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(a)(`spacesModule.detail.displays.noAvailable`)),1)]),_:1})])):l.value.trim()&&p.value.length===0?(r(),W(`div`,ea,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(a)(`displaysModule.texts.noFilteredDisplays`)),1)]),_:1})]),_:1})])):k(``,!0)]),default:g(()=>[G(O($),{label:O(a)(`spacesModule.onboarding.displayName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,ta,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:`mdi:monitor`,class:`w[20px] h[20px]`})]),_:1}),P(`div`,null,[e.name?(r(),W(L,{key:0},[P(`strong`,na,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.macAddress),1)]),_:2},1024)],64)):(r(),W(`div`,ra,I(e.macAddress),1))])])]),_:1},8,[`label`]),G(O($),{label:O(a)(`spacesModule.onboarding.assignedSpace`),width:`150`},{default:g(({row:e})=>[e.roomId?(r(),M(O(K),{key:0,size:`small`,type:`warning`},{default:g(()=>[A(I(m(e.roomId)),1)]),_:2},1024)):(r(),W(`span`,ia,`-`))]),_:1},8,[`label`]),G(O($),{label:``,width:`150`,align:`right`},{default:g(({row:e})=>[G(O(N),{type:e.roomId?`warning`:`default`,plain:``,size:`small`,loading:u.value===e.id,onClick:t=>v(e)},{icon:g(()=>[G(O(V),{icon:e.roomId?`mdi:swap-horizontal`:`mdi:plus`},null,8,[`icon`])]),default:g(()=>[A(` `+I(e.roomId?O(a)(`spacesModule.detail.displays.reassign`):O(a)(`spacesModule.detail.displays.assign`)),1)]),_:2},1032,[`type`,`loading`,`onClick`])]),_:1})]),_:1},8,[`data`])]),_:1},8,[`modelValue`,`title`]))}}),oa={class:`flex items-center gap-2`},sa={class:`flex items-center gap-2`},ca=b({name:`SpaceSelect`,__name:`space-select`,props:{modelValue:{},filter:{default:`all`},placeholder:{},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(e){let t=e,{t:n}=j(),{spaces:i,roomSpaces:a,zoneSpaces:o,fetching:s,findById:l}=ht(),u=z(()=>t.filter===`all`),d=z(()=>t.filter===`room`?a.value:t.filter===`zone`?o.value:i.value),f=z(()=>{let e=[],t=a.value.slice().sort((e,t)=>e.name.localeCompare(t.name)),r=o.value.slice().sort((e,t)=>e.name.localeCompare(t.name));return t.length>0&&e.push({type:q.ROOM,label:n(`spacesModule.labels.rooms`),options:t}),r.length>0&&e.push({type:q.ZONE,label:n(`spacesModule.labels.zones`),options:r}),e}),p=z(()=>{if(!t.modelValue)return null;let e=l(t.modelValue);return e?et(e):null});return(t,n)=>(r(),M(O(Ne),{"model-value":e.modelValue,placeholder:e.placeholder,clearable:e.clearable,filterable:e.filterable,disabled:e.disabled,loading:O(s),class:`w-full`,"onUpdate:modelValue":n[0]||=e=>t.$emit(`update:modelValue`,e)},{prefix:g(()=>[p.value?(r(),M(O(V),{key:0,icon:p.value,class:`text-lg`},null,8,[`icon`])):k(``,!0)]),default:g(()=>[u.value?(r(!0),W(L,{key:0},c(f.value,e=>(r(),M(O(rt),{key:e.type,label:e.label},{default:g(()=>[(r(!0),W(L,null,c(e.options,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`div`,oa,[G(O(V),{icon:O(et)(e),class:`text-lg`},null,8,[`icon`]),P(`span`,null,I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128)):(r(!0),W(L,{key:1},c(d.value,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`div`,sa,[G(O(V),{icon:O(et)(e),class:`text-lg`},null,8,[`icon`]),P(`span`,null,I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`clearable`,`filterable`,`disabled`,`loading`]))}});export{Ri as a,mi as c,En as d,mn as f,Gi as i,$r as l,Xt as m,aa as n,Ai as o,dn as p,Qi as r,Si as s,ca as t,Jn as u};
1
+ import"./chunk-DECur_0Z.js";import{$r as e,Ai as t,Ar as n,Br as r,C as i,Di as a,Dr as o,Ft as s,Hr as c,Jt as l,Lr as u,Lt as d,Mt as f,Nr as p,O as m,Oi as h,Qr as g,Qt as _,S as v,Si as y,Sr as b,T as x,Tr as S,Ur as C,Vr as w,Xr as T,Yt as E,Zt as D,_i as O,_r as k,ai as ee,br as A,ci as te,ct as ne,d as j,di as re,f as ie,gr as M,h as N,hr as P,in as F,ji as I,lr as L,m as R,mi as ae,mr as z,mt as oe,n as B,p as V,pi as se,pt as ce,sr as le,t as H,tn as ue,tt as de,ui as U,ut as fe,vr as W,w as pe,wi as me,xr as G}from"./icon-with-child-DmQ_XhQy.js";import{At as he,B as ge,Bi as _e,Bt as ve,Ci as K,Di as ye,Ei as be,Ft as xe,Gr as Se,H as Ce,Ht as q,Ii as we,Ir as Te,Ji as Ee,Kr as De,Li as J,Nt as Oe,Oi as ke,Pr as Ae,Ri as je,Rt as Me,Si as Ne,Ti as Pe,Wr as Fe,Wt as Ie,Xt as Le,Yr as Re,Yt as ze,_ as Be,_a as Ve,_r as Y,aa as He,bi as X,d as Ue,fr as We,ga as Ge,ha as Ke,hr as Z,ji as qe,jt as Je,mi as Ye,mr as Xe,ni as Ze,pi as Qe,qi as $e,qt as et,ri as tt,ur as Q,va as nt,xi as rt,y as it,yi as at,zr as ot}from"./common-ijhzs9_0.js";import{n as $,r as st,t as ct}from"./table-BBFlVv11.js";import{t as lt}from"./skeleton-DMwdgp1r.js";import{t as ut}from"./input-number-Bb7n4uvB.js";import{n as dt,r as ft}from"./radio-CkbffHwt.js";import{t as pt}from"./pagination-DyMVjp0G.js";import{i as mt}from"./composables-JWXuz4Gg.js";import{t as ht}from"./useSpaces-BP8OSF1K.js";import{a as gt,c as _t,d as vt,f as yt,g as bt,h as xt,l as St,m as Ct,p as wt,t as Tt,u as Et}from"./composables-Bpcc_wGH.js";import{b as Dt,n as Ot,r as kt,y as At}from"./composables-Cc7ANpfc.js";import{t as jt}from"./useDevices-DjAEYc5E.js";var Mt=Symbol(`sliderContextKey`),Nt=D({modelValue:{type:_([Number,Array]),default:0},id:{type:String,default:void 0},min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},showInput:Boolean,showInputControls:{type:Boolean,default:!0},size:ne,inputSize:ne,showStops:Boolean,showTooltip:{type:Boolean,default:!0},formatTooltip:{type:_(Function),default:void 0},disabled:{type:Boolean,default:void 0},range:Boolean,vertical:Boolean,height:String,rangeStartLabel:{type:String,default:void 0},rangeEndLabel:{type:String,default:void 0},formatValueText:{type:_(Function),default:void 0},tooltipClass:{type:String,default:void 0},placement:{type:String,values:$e,default:`top`},marks:{type:_(Object)},validateEvent:{type:Boolean,default:!0},persistent:{type:Boolean,default:!0},..._e([`ariaLabel`])}),Pt=e=>F(e)||y(e)&&e.every(F),Ft={[Ve]:Pt,[Ge]:Pt,[Ke]:Pt},It=(e,t,r)=>{let i=U();return u(async()=>{e.range?(y(e.modelValue)?(t.firstValue=Math.max(e.min,e.modelValue[0]),t.secondValue=Math.min(e.max,e.modelValue[1])):(t.firstValue=e.min,t.secondValue=e.max),t.oldValue=[t.firstValue,t.secondValue]):(!F(e.modelValue)||Number.isNaN(e.modelValue)?t.firstValue=e.min:t.firstValue=Math.min(e.max,Math.max(e.min,e.modelValue)),t.oldValue=t.firstValue),s(window,`resize`,r),await n(),r()}),{sliderWrapper:i}},Lt=e=>z(()=>e.marks?Object.keys(e.marks).map(Number.parseFloat).sort((e,t)=>e-t).filter(t=>t<=e.max&&t>=e.min).map(t=>({point:t,position:(t-e.min)*100/(e.max-e.min),mark:e.marks[t]})):[]),Rt=(e,t,r)=>{let{formItem:i}=v(),a=re(),o=U(),s=U(),c={firstButton:o,secondButton:s},l=pe(),u=z(()=>Math.min(t.firstValue,t.secondValue)),d=z(()=>Math.max(t.firstValue,t.secondValue)),f=z(()=>e.range?`${100*(d.value-u.value)/(e.max-e.min)}%`:`${100*(t.firstValue-e.min)/(e.max-e.min)}%`),p=z(()=>e.range?`${100*(u.value-e.min)/(e.max-e.min)}%`:`0%`),m=z(()=>e.vertical?{height:e.height}:{}),h=z(()=>e.vertical?{height:f.value,bottom:p.value}:{width:f.value,left:p.value}),g=()=>{a.value&&(t.sliderSize=a.value.getBoundingClientRect()[e.vertical?`height`:`width`])},_=n=>{let r=e.min+n*(e.max-e.min)/100;if(!e.range)return o;let i;return i=Math.abs(u.value-r)<Math.abs(d.value-r)?t.firstValue<t.secondValue?`firstButton`:`secondButton`:t.firstValue>t.secondValue?`firstButton`:`secondButton`,c[i]},y=e=>{let t=_(e);return t.value.setPosition(e),t},b=n=>{t.firstValue=n??e.min,S(e.range?[u.value,d.value]:n??e.min)},x=n=>{t.secondValue=n,e.range&&S([u.value,d.value])},S=e=>{r(Ve,e),r(Ge,e)},C=async()=>{await n(),r(Ke,e.range?[u.value,d.value]:e.modelValue)},w=n=>{if(l.value||t.dragging)return;g();let r=0;if(e.vertical){let e=n.touches?.item(0)?.clientY??n.clientY;r=(a.value.getBoundingClientRect().bottom-e)/t.sliderSize*100}else r=((n.touches?.item(0)?.clientX??n.clientX)-a.value.getBoundingClientRect().left)/t.sliderSize*100;if(!(r<0||r>100))return y(r)};return{elFormItem:i,slider:a,firstButton:o,secondButton:s,sliderDisabled:l,minValue:u,maxValue:d,runwayStyle:m,barStyle:h,resetSize:g,setPosition:y,emitChange:C,onSliderWrapperPrevent:e=>{(c.firstButton.value?.dragging||c.secondButton.value?.dragging)&&e.preventDefault()},onSliderClick:e=>{w(e)&&C()},onSliderDown:async e=>{let t=w(e);t&&(await n(),t.value.onButtonDown(e))},onSliderMarkerDown:e=>{l.value||t.dragging||y(e)&&C()},setFirstValue:b,setSecondValue:x}},zt=(e,t,n,r)=>({stops:z(()=>{if(!e.showStops||e.min>e.max)return[];if(e.step===0)return l(`ElSlider`,`step should not be 0.`),[];let i=Math.ceil((e.max-e.min)/e.step),a=100*e.step/(e.max-e.min),o=Array.from({length:i-1}).map((e,t)=>(t+1)*a);return e.range?o.filter(t=>t<100*(n.value-e.min)/(e.max-e.min)||t>100*(r.value-e.min)/(e.max-e.min)):o.filter(n=>n>100*(t.firstValue-e.min)/(e.max-e.min))}),getStopStyle:t=>e.vertical?{bottom:`${t}%`}:{left:`${t}%`}}),Bt=(e,t,n,r,i,a)=>{let o=e=>{i(Ve,e),i(Ge,e)},s=()=>e.range?![n.value,r.value].every((e,n)=>e===t.oldValue[n]):e.modelValue!==t.oldValue,c=()=>{e.min>e.max&&E(`Slider`,`min should not be greater than max.`);let n=e.modelValue;e.range&&y(n)?n[1]<e.min?o([e.min,e.min]):n[0]>e.max?o([e.max,e.max]):n[0]<e.min?o([e.min,n[1]]):n[1]>e.max?o([n[0],e.max]):(t.firstValue=n[0],t.secondValue=n[1],s()&&(e.validateEvent&&a?.validate?.(`change`).catch(e=>l(e)),t.oldValue=n.slice())):!e.range&&F(n)&&!Number.isNaN(n)&&(n<e.min?o(e.min):n>e.max?o(e.max):(t.firstValue=n,s()&&(e.validateEvent&&a?.validate?.(`change`).catch(e=>l(e)),t.oldValue=n)))};c(),T(()=>t.dragging,e=>{e||c()}),T(()=>e.modelValue,(e,n)=>{t.dragging||y(e)&&y(n)&&e.every((e,t)=>e===n[t])&&t.firstValue===e[0]&&t.secondValue===e[1]||c()},{deep:!0}),T(()=>[e.min,e.max],()=>{c()})},Vt=(e,t,n)=>{let r=U(),i=U(!1),a=z(()=>t.value instanceof Function);return{tooltip:r,tooltipVisible:i,formatValue:z(()=>a.value&&t.value(e.modelValue)||e.modelValue),displayTooltip:st(()=>{n.value&&(i.value=!0)},50),hideTooltip:st(()=>{n.value&&(i.value=!1)},50)}},Ht=(e,t,r)=>{let{disabled:i,min:a,max:c,step:l,showTooltip:u,persistent:d,precision:f,sliderSize:p,formatTooltip:m,emitChange:h,resetSize:g,updateDragging:_}=o(Mt),{tooltip:v,tooltipVisible:y,formatValue:b,displayTooltip:x,hideTooltip:S}=Vt(e,m,u),C=U(),w=z(()=>`${(e.modelValue-a.value)/(c.value-a.value)*100}%`),E=z(()=>e.vertical?{bottom:w.value}:{left:w.value}),D=()=>{t.hovering=!0,x()},O=()=>{t.hovering=!1,t.dragging||S()},k=e=>{i.value||(e.preventDefault(),P(e),window.addEventListener(`mousemove`,F),window.addEventListener(`touchmove`,F),window.addEventListener(`mouseup`,I),window.addEventListener(`touchend`,I),window.addEventListener(`contextmenu`,I),C.value.focus())},ee=e=>{i.value||(t.newPosition=Number.parseFloat(w.value)+e/(c.value-a.value)*100,L(t.newPosition),h())},A=()=>{ee(-l.value)},te=()=>{ee(l.value)},ne=()=>{ee(-l.value*4)},j=()=>{ee(l.value*4)},re=()=>{i.value||(L(0),h())},ie=()=>{i.value||(L(100),h())},M=e=>{let t=Ee(e),n=!0;switch(t){case nt.left:case nt.down:A();break;case nt.right:case nt.up:te();break;case nt.home:re();break;case nt.end:ie();break;case nt.pageDown:ne();break;case nt.pageUp:j();break;default:n=!1;break}n&&e.preventDefault()},N=e=>{let t,n;return e.type.startsWith(`touch`)?(n=e.touches[0].clientY,t=e.touches[0].clientX):(n=e.clientY,t=e.clientX),{clientX:t,clientY:n}},P=n=>{t.dragging=!0,t.isClick=!0;let{clientX:r,clientY:i}=N(n);e.vertical?t.startY=i:t.startX=r,t.startPosition=Number.parseFloat(w.value),t.newPosition=t.startPosition},F=n=>{if(t.dragging){t.isClick=!1,x(),g();let r,{clientX:i,clientY:a}=N(n);e.vertical?(t.currentY=a,r=(t.startY-t.currentY)/p.value*100):(t.currentX=i,r=(t.currentX-t.startX)/p.value*100),t.newPosition=t.startPosition+r,L(t.newPosition)}},I=()=>{t.dragging&&(setTimeout(()=>{t.dragging=!1,t.hovering||S(),t.isClick||L(t.newPosition),h()},0),window.removeEventListener(`mousemove`,F),window.removeEventListener(`touchmove`,F),window.removeEventListener(`mouseup`,I),window.removeEventListener(`touchend`,I),window.removeEventListener(`contextmenu`,I))},L=async i=>{if(i===null||Number.isNaN(+i))return;i=He(i,0,100);let o=Math.floor((c.value-a.value)/l.value),s=o*l.value/(c.value-a.value)*100,u=s+(100-s)/2,d;if(i<s){let e=s/o,t=Math.round(i/e);d=a.value+t*l.value}else d=i<u?a.value+o*l.value:c.value;d=Number.parseFloat(d.toFixed(f.value)),d!==e.modelValue&&r(Ve,d),!t.dragging&&e.modelValue!==t.oldValue&&(t.oldValue=e.modelValue),await n(),t.dragging&&x(),v.value.updatePopper()};return T(()=>t.dragging,e=>{_(e)}),s(C,`touchstart`,k,{passive:!1}),{disabled:i,button:C,tooltip:v,tooltipVisible:y,showTooltip:u,persistent:d,wrapperStyle:E,formatValue:b,handleMouseEnter:D,handleMouseLeave:O,onButtonDown:k,onKeyDown:M,setPosition:L}},Ut=D({modelValue:{type:Number,default:0},vertical:Boolean,tooltipClass:String,placement:{type:String,values:$e,default:`top`}}),Wt={[Ve]:e=>F(e)},Gt=[`tabindex`],Kt=b({name:`ElSliderButton`,__name:`button`,props:Ut,emits:Wt,setup(e,{expose:n,emit:i}){let a=e,o=i,s=ce(`slider`),c=te({hovering:!1,dragging:!1,isClick:!1,startX:0,currentX:0,startY:0,currentY:0,startPosition:0,newPosition:0,oldValue:a.modelValue}),l=z(()=>p.value?m.value:!1),{disabled:u,button:d,tooltip:f,showTooltip:p,persistent:m,tooltipVisible:_,wrapperStyle:v,formatValue:y,handleMouseEnter:b,handleMouseLeave:x,onButtonDown:S,onKeyDown:C,setPosition:w}=Ht(a,c,o),{hovering:T,dragging:E}=ae(c);return n({onButtonDown:S,onKeyDown:C,setPosition:w,hovering:T,dragging:E}),(e,n)=>(r(),W(`div`,{ref_key:`button`,ref:d,class:h([O(s).e(`button-wrapper`),{hover:O(T),dragging:O(E)}]),style:t(O(v)),tabindex:O(u)?void 0:0,onMouseenter:n[0]||=(...e)=>O(b)&&O(b)(...e),onMouseleave:n[1]||=(...e)=>O(x)&&O(x)(...e),onMousedown:n[2]||=(...e)=>O(S)&&O(S)(...e),onFocus:n[3]||=(...e)=>O(b)&&O(b)(...e),onBlur:n[4]||=(...e)=>O(x)&&O(x)(...e),onKeydown:n[5]||=(...e)=>O(C)&&O(C)(...e)},[G(O(qe),{ref_key:`tooltip`,ref:f,visible:O(_),placement:e.placement,"fallback-placements":[`top`,`bottom`,`right`,`left`],"stop-popper-mouse-event":!1,"popper-class":e.tooltipClass,disabled:!O(p),persistent:l.value},{content:g(()=>[P(`span`,null,I(O(y)),1)]),default:g(()=>[P(`div`,{class:h([O(s).e(`button`),{hover:O(T),dragging:O(E)}])},null,2)]),_:1},8,[`visible`,`placement`,`popper-class`,`disabled`,`persistent`])],46,Gt))}}),qt=b({name:`ElSliderMarker`,props:D({mark:{type:_([String,Object]),default:void 0}}),setup(e){let t=ce(`slider`),n=z(()=>a(e.mark)?e.mark:e.mark.label),r=z(()=>a(e.mark)?void 0:e.mark.style);return()=>S(`div`,{class:t.e(`marks-text`),style:r.value},n.value)}}),Jt=[`id`,`role`,`aria-label`,`aria-labelledby`],Yt={key:1},Xt=de(b({name:`ElSlider`,__name:`slider`,props:Nt,emits:Ft,setup(e,{expose:n,emit:a}){let o=e,l=a,u=ce(`slider`),{t:d}=oe(),f=te({firstValue:0,secondValue:0,oldValue:0,dragging:!1,sliderSize:1}),{elFormItem:p,slider:m,firstButton:g,secondButton:_,sliderDisabled:v,minValue:y,maxValue:b,runwayStyle:S,barStyle:C,resetSize:T,emitChange:E,onSliderWrapperPrevent:D,onSliderClick:ee,onSliderDown:A,onSliderMarkerDown:ne,setFirstValue:j,setSecondValue:re}=Rt(o,f,l),{stops:ie,getStopStyle:N}=zt(o,f,y,b),{inputId:F,isLabeledByFormItem:I}=i(o,{formItemContext:p}),R=x(),B=z(()=>o.inputSize||R.value),V=z(()=>o.ariaLabel||d(`el.slider.defaultLabel`,{min:o.min,max:o.max})),se=z(()=>o.range?o.rangeStartLabel||d(`el.slider.defaultRangeStartLabel`):V.value),H=z(()=>o.formatValueText?o.formatValueText(he.value):`${he.value}`),ue=z(()=>o.rangeEndLabel||d(`el.slider.defaultRangeEndLabel`)),de=z(()=>o.formatValueText?o.formatValueText(ge.value):`${ge.value}`),U=z(()=>[u.b(),u.m(R.value),u.is(`vertical`,o.vertical),{[u.m(`with-input`)]:o.showInput}]),fe=Lt(o);Bt(o,f,y,b,l,p);let pe=z(()=>{let e=[o.min,o.max,o.step].map(e=>{let t=`${e}`.split(`.`)[1];return t?t.length:0});return Math.max.apply(null,e)}),{sliderWrapper:me}=It(o,f,T),{firstValue:he,secondValue:ge,sliderSize:_e}=ae(f),ve=e=>{f.dragging=e};return s(me,`touchstart`,D,{passive:!1}),s(me,`touchmove`,D,{passive:!1}),w(Mt,{...ae(o),sliderSize:_e,disabled:v,precision:pe,emitChange:E,resetSize:T,updateDragging:ve}),n({onSliderClick:ee}),(e,n)=>(r(),W(`div`,{id:e.range?O(F):void 0,ref_key:`sliderWrapper`,ref:me,class:h(U.value),role:e.range?`group`:void 0,"aria-label":e.range&&!O(I)?V.value:void 0,"aria-labelledby":e.range&&O(I)?O(p)?.labelId:void 0},[P(`div`,{ref_key:`slider`,ref:m,class:h([O(u).e(`runway`),{"show-input":e.showInput&&!e.range},O(u).is(`disabled`,O(v))]),style:t(O(S)),onMousedown:n[0]||=(...e)=>O(A)&&O(A)(...e),onTouchstartPassive:n[1]||=(...e)=>O(A)&&O(A)(...e)},[P(`div`,{class:h(O(u).e(`bar`)),style:t(O(C))},null,6),G(Kt,{id:e.range?void 0:O(F),ref_key:`firstButton`,ref:g,"model-value":O(he),vertical:e.vertical,"tooltip-class":e.tooltipClass,placement:e.placement,role:`slider`,"aria-label":e.range||!O(I)?se.value:void 0,"aria-labelledby":!e.range&&O(I)?O(p)?.labelId:void 0,"aria-valuemin":e.min,"aria-valuemax":e.range?O(ge):e.max,"aria-valuenow":O(he),"aria-valuetext":H.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-disabled":O(v),"onUpdate:modelValue":O(j)},null,8,[`id`,`model-value`,`vertical`,`tooltip-class`,`placement`,`aria-label`,`aria-labelledby`,`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`aria-disabled`,`onUpdate:modelValue`]),e.range?(r(),M(Kt,{key:0,ref_key:`secondButton`,ref:_,"model-value":O(ge),vertical:e.vertical,"tooltip-class":e.tooltipClass,placement:e.placement,role:`slider`,"aria-label":ue.value,"aria-valuemin":O(he),"aria-valuemax":e.max,"aria-valuenow":O(ge),"aria-valuetext":de.value,"aria-orientation":e.vertical?`vertical`:`horizontal`,"aria-disabled":O(v),"onUpdate:modelValue":O(re)},null,8,[`model-value`,`vertical`,`tooltip-class`,`placement`,`aria-label`,`aria-valuemin`,`aria-valuemax`,`aria-valuenow`,`aria-valuetext`,`aria-orientation`,`aria-disabled`,`onUpdate:modelValue`])):k(`v-if`,!0),e.showStops?(r(),W(`div`,Yt,[(r(!0),W(L,null,c(O(ie),(e,n)=>(r(),W(`div`,{key:n,class:h(O(u).e(`stop`)),style:t(O(N)(e))},null,6))),128))])):k(`v-if`,!0),O(fe).length>0?(r(),W(L,{key:2},[P(`div`,null,[(r(!0),W(L,null,c(O(fe),(e,n)=>(r(),W(`div`,{key:n,style:t(O(N)(e.position)),class:h([O(u).e(`stop`),O(u).e(`marks-stop`)])},null,6))),128))]),P(`div`,{class:h(O(u).e(`marks`))},[(r(!0),W(L,null,c(O(fe),(e,n)=>(r(),M(O(qt),{key:n,mark:e.mark,style:t(O(N)(e.position)),onMousedown:le(t=>O(ne)(e.position),[`stop`])},null,8,[`mark`,`style`,`onMousedown`]))),128))],2)],64)):k(`v-if`,!0)],38),e.showInput&&!e.range?(r(),M(O(ut),{key:0,ref:`input`,"model-value":O(he),class:h(O(u).e(`input`)),step:e.step,disabled:O(v),controls:e.showInputControls,min:e.min,max:e.max,precision:pe.value,size:B.value,"onUpdate:modelValue":O(j),onChange:O(E)},null,8,[`model-value`,`class`,`step`,`disabled`,`controls`,`min`,`max`,`precision`,`size`,`onUpdate:modelValue`,`onChange`])):k(`v-if`,!0)],10,Jt))}})),Zt={label:`label`,value:`value`,disabled:`disabled`},Qt=D({direction:{type:_(String),default:`horizontal`},options:{type:_(Array),default:()=>[]},modelValue:{type:[String,Number,Boolean],default:void 0},props:{type:_(Object),default:()=>Zt},block:Boolean,size:ne,disabled:{type:Boolean,default:void 0},validateEvent:{type:Boolean,default:!0},id:String,name:String,..._e([`ariaLabel`])}),$t={[Ve]:e=>a(e)||F(e)||ue(e),[Ke]:e=>a(e)||F(e)||ue(e)},en=[`id`,`aria-label`,`aria-labelledby`],tn=[`name`,`disabled`,`checked`,`onChange`],nn=de(b({name:`ElSegmented`,__name:`segmented`,props:Qt,emits:$t,setup(e,{emit:n}){let a=e,o=n,s=ce(`segmented`),u=fe(),p=x(),m=pe(),{formItem:g}=v(),{inputId:_,isLabeledByFormItem:y}=i(a,{formItemContext:g}),b=U(null),S=f(),w=te({isInit:!1,width:0,height:0,translateX:0,translateY:0,focusVisible:!1}),E=(e,t)=>{let n=ne(t);o(Ve,n),o(Ke,n),e.target.checked=n===a.modelValue},D=z(()=>({...Zt,...a.props})),ee=e=>e,ne=e=>me(e)?e[D.value.value]:e,j=e=>me(e)?e[D.value.label]:e,re=e=>!!(m.value||me(e)&&e[D.value.disabled]),ie=e=>a.modelValue===ne(e),M=e=>a.options.find(t=>ne(t)===e),N=e=>[s.e(`item`),s.is(`selected`,ie(e)),s.is(`disabled`,re(e))],F=()=>{if(!b.value)return;let e=b.value.querySelector(`.is-selected`),t=b.value.querySelector(`.is-selected input`);if(!e||!t){w.width=0,w.height=0,w.translateX=0,w.translateY=0,w.focusVisible=!1;return}w.isInit=!0,a.direction===`vertical`?(w.height=e.offsetHeight,w.translateY=e.offsetTop):(w.width=e.offsetWidth,w.translateX=e.offsetLeft);try{w.focusVisible=t.matches(`:focus-visible`)}catch{}},R=z(()=>[s.b(),s.m(p.value),s.is(`block`,a.block)]),ae=z(()=>({width:a.direction===`vertical`?`100%`:`${w.width}px`,height:a.direction===`vertical`?`${w.height}px`:`100%`,transform:a.direction===`vertical`?`translateY(${w.translateY}px)`:`translateX(${w.translateX}px)`,display:w.isInit?`block`:`none`})),oe=z(()=>[s.e(`item-selected`),s.is(`disabled`,re(M(a.modelValue))),s.is(`focus-visible`,w.focusVisible)]),B=z(()=>a.name||u.value);return d(b,F),T(S,F),T(()=>a.modelValue,()=>{F(),a.validateEvent&&g?.validate?.(`change`).catch(e=>l(e))},{flush:`post`}),(n,i)=>e.options.length?(r(),W(`div`,{key:0,id:O(_),ref_key:`segmentedRef`,ref:b,class:h(R.value),role:`radiogroup`,"aria-label":O(y)?void 0:e.ariaLabel||`segmented`,"aria-labelledby":O(y)?O(g).labelId:void 0},[P(`div`,{class:h([O(s).e(`group`),O(s).m(e.direction)])},[P(`div`,{style:t(ae.value),class:h(oe.value)},null,6),(r(!0),W(L,null,c(e.options,(e,t)=>(r(),W(`label`,{key:t,class:h(N(e))},[P(`input`,{class:h(O(s).e(`item-input`)),type:`radio`,name:B.value,disabled:re(e),checked:ie(e),onChange:t=>E(t,e)},null,42,tn),P(`div`,{class:h(O(s).e(`item-label`))},[C(n.$slots,`default`,{item:ee(e)},()=>[A(I(j(e)),1)])],2)],2))),128))],2)],10,en)):k(`v-if`,!0)}})),rn={class:`flex w-full`},an=b({name:`SpacesFilter`,__name:`spaces-filter`,props:{filters:{},filtersActive:{type:Boolean},selectedCount:{},bulkActions:{}},emits:[`update:filters`,`reset-filters`,`adjust-list`,`bulk-action`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Te(n,`filters`,i),s=U(void 0);return T(()=>o.value.search,e=>{e===``&&(o.value.search=void 0)}),(e,t)=>(r(),W(`div`,rn,[G(O(we),{ref_key:`filterFormEl`,ref:s,inline:!0,model:O(o),class:`grow-1`},{default:g(()=>[G(O(ke),{modelValue:O(o).search,"onUpdate:modelValue":t[0]||=e=>O(o).search=e,placeholder:O(a)(`spacesModule.fields.search.placeholder`),class:`max-w[280px] p-1`,clearable:``},{suffix:g(()=>[G(O(m),null,{default:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1})]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`model`]),G(O(Ce),{"selected-count":n.selectedCount,actions:n.bulkActions,onAction:t[1]||=e=>i(`bulk-action`,e)},null,8,[`selected-count`,`actions`]),n.filtersActive?(r(),M(O(N),{key:0,plain:``,class:`px-2! mt-1 mr-1`,onClick:t[2]||=e=>i(`reset-filters`)},{default:g(()=>[G(O(V),{icon:`mdi:filter-off`})]),_:1})):k(``,!0),G(O(N),{plain:``,class:`px-2! mt-1 mr-1`,onClick:t[3]||=e=>i(`adjust-list`)},{default:g(()=>[G(O(V),{icon:`mdi:slider`})]),_:1})]))}}),on={key:0,class:`h-full w-full leading-normal`},sn={key:1,class:`h-full w-full leading-normal`},cn={key:2,class:`h-full w-full leading-normal`},ln={class:`block`},un=b({name:`SpacesTable`,__name:`spaces-table`,props:{items:{},totalRows:{},loading:{type:Boolean},filtersActive:{type:Boolean},tableHeight:{},filters:{},sortBy:{},sortDir:{}},emits:[`detail`,`edit`,`remove`,`add`,`reset-filters`,`update:sort-by`,`update:sort-dir`,`selected-changes`],setup(n,{emit:i}){let a=n,o=i,{t:s}=j(),{isMDDevice:c}=Ae(),l=z(()=>a.totalRows===0),u=z(()=>a.tableHeight??400),d=({prop:e,order:t})=>{o(`update:sort-by`,e),o(`update:sort-dir`,t===`descending`?`desc`:t===`ascending`?`asc`:null)},f=e=>{o(`detail`,e.id)},p=e=>{o(`selected-changes`,e)};return(n,i)=>e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.texts.loadingSpaces`),data:a.items,"default-sort":a.sortBy!==void 0&&a.sortDir!==null?{prop:a.sortBy,order:a.sortDir===`desc`?`descending`:`ascending`}:void 0,"table-layout":`fixed`,"row-key":`id`,class:`flex-grow`,style:t({maxHeight:u.value+`px`}),"max-height":u.value,onSortChange:d,onSelectionChange:p,onRowClick:f},{empty:g(()=>[a.loading?(r(),W(`div`,on,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:home-group`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):a.filtersActive&&!a.loading?(r(),W(`div`,sn,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:home-group`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(s)(`spacesModule.texts.noFilteredSpaces`)),1)]),_:1}),G(O(N),{type:`primary`,plain:``,class:`mt-4`,onClick:i[0]||=e=>o(`reset-filters`)},{icon:g(()=>[G(O(V),{icon:`mdi:filter-off`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.buttons.resetFilters.title`)),1)]),_:1})]),_:1})])):l.value&&!a.loading?(r(),W(`div`,cn,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:home-group`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.texts.noSpaces`)),1)]),_:1})])):k(``,!0)]),default:g(()=>[O(c)?(r(),M(O($),{key:0,type:`selection`,fixed:``,width:30})):k(``,!0),G(O($),{width:60,align:`center`},{default:g(e=>[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:e.row.icon||(e.row.type===O(q).ROOM?`mdi:door`:`mdi:home-floor-1`),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024)]),_:1}),G(O($),{label:O(s)(`spacesModule.table.columns.name`),prop:`name`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],"min-width":200,"class-name":`py-0!`},{default:g(e=>[P(`strong`,ln,I(e.row.name),1),e.row.description?(r(),M(O(De),{key:0,size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.row.description),1)]),_:2},1024)):k(``,!0)]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.type`),prop:`type`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],width:120},{default:g(e=>[G(O(K),{type:e.row.type===O(q).ROOM?`primary`:`info`,size:`small`},{default:g(()=>[A(I(O(s)(`spacesModule.misc.types.${e.row.type}`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.category`),prop:`category`,width:150},{default:g(e=>[e.row.category?(r(),M(O(De),{key:0,size:`small`},{default:g(()=>[A(I(O(s)(`spacesModule.fields.spaces.category.options.${e.row.category}`)),1)]),_:2},1024)):(r(),M(O(De),{key:1,size:`small`,type:`info`},{default:g(()=>[...i[2]||=[A(` — `,-1)]]),_:1}))]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.order`),prop:`displayOrder`,sortable:`custom`,"sort-orders":[`ascending`,`descending`],width:100,align:`center`},{default:g(e=>[A(I(e.row.displayOrder),1)]),_:1},8,[`label`]),G(O($),{width:190,align:`right`},{default:g(e=>[P(`div`,{onClick:i[1]||=le(()=>{},[`stop`])},[G(O(N),{size:`small`,plain:``,"data-test-id":`detail-space`,onClick:t=>o(`detail`,e.row.id)},{icon:g(()=>[G(O(V),{icon:`mdi:file-search-outline`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.buttons.detail.title`)),1)]),_:1},8,[`onClick`]),G(O(N),{size:`small`,plain:``,class:`ml-1!`,"data-test-id":`edit-space`,onClick:t=>o(`edit`,e.row.id)},{icon:g(()=>[G(O(V),{icon:`mdi:pencil`})]),_:1},8,[`onClick`]),G(O(N),{size:`small`,type:`warning`,plain:``,class:`ml-1!`,"data-test-id":`remove-space`,onClick:t=>o(`remove`,e.row.id)},{icon:g(()=>[G(O(V),{icon:`mdi:trash`})]),_:1},8,[`onClick`])])]),_:1})]),_:1},8,[`element-loading-text`,`data`,`default-sort`,`style`,`max-height`])),[[O(Se),a.loading]])}}),dn=b({name:`ListSpaces`,__name:`list-spaces`,props:{items:{},allItems:{},totalRows:{},loading:{type:Boolean},filtersActive:{type:Boolean},filters:{},paginatePage:{},paginateSize:{},sortBy:{},sortDir:{}},emits:[`detail`,`edit`,`remove`,`add`,`adjust-list`,`reset-filters`,`update:filters`,`update:paginate-size`,`update:paginate-page`,`update:sort-by`,`update:sort-dir`,`bulk-action`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),{isMDDevice:o}=Ae(),s=null,c=U(null),l=U(null),d=Te(n,`filters`,i),f=U(n.sortBy),m=U(n.sortDir??null),h=U(n.paginatePage),_=U(n.paginateSize),v=U(250),y=U([]),b=z(()=>[{key:`delete`,label:a(`application.bulkActions.delete`),icon:`mdi:trash`,type:`danger`}]),x=e=>{i(`detail`,e)},S=e=>{i(`edit`,e)},C=e=>{i(`remove`,e)},w=()=>{i(`add`)},E=()=>{i(`reset-filters`)},D=e=>{i(`update:paginate-size`,e)},k=e=>{i(`update:paginate-page`,e)},A=e=>{y.value=e},te=e=>{i(`bulk-action`,e,y.value)};return u(()=>{if(!c.value)return;let e=()=>{c.value&&l.value&&(v.value=c.value.clientHeight-l.value.clientHeight)};typeof window<`u`&&`ResizeObserver`in window&&(s=new ResizeObserver(e),s.observe(c.value)),e()}),p(()=>{s&&c.value&&s.unobserve(c.value)}),T(()=>f.value,e=>{i(`update:sort-by`,e)}),T(()=>m.value,e=>{i(`update:sort-dir`,e)}),T(()=>n.paginatePage,e=>{h.value=e}),T(()=>n.paginateSize,e=>{_.value=e}),T(()=>n.sortDir??null,e=>{m.value=e}),T(()=>n.sortBy,e=>{f.value=e}),T(()=>o.value,e=>{e||(y.value=[])}),(e,t)=>(r(),W(L,null,[G(O(at),{shadow:`never`,class:`px-1 py-2 shrink-0`,"body-class":`p-0!`},{default:g(()=>[G(an,{filters:O(d),"onUpdate:filters":t[0]||=e=>ee(d)?d.value=e:null,"filters-active":n.filtersActive,"selected-count":y.value.length,"bulk-actions":b.value,onResetFilters:t[1]||=e=>i(`reset-filters`),onAdjustList:t[2]||=e=>i(`adjust-list`),onBulkAction:te},null,8,[`filters`,`filters-active`,`selected-count`,`bulk-actions`])]),_:1}),P(`div`,{ref_key:`wrapper`,ref:c,class:`flex-grow overflow-hidden`},[G(O(at),{shadow:`never`,class:`max-h-full flex flex-col overflow-hidden box-border`,"body-class":`p-0! max-h-full overflow-hidden flex flex-col`},{default:g(()=>[G(un,{filters:O(d),"onUpdate:filters":t[3]||=e=>ee(d)?d.value=e:null,"sort-by":f.value,"onUpdate:sortBy":t[4]||=e=>f.value=e,"sort-dir":m.value,"onUpdate:sortDir":t[5]||=e=>m.value=e,items:n.items,"total-rows":n.totalRows,loading:n.loading,"filters-active":n.filtersActive,"table-height":v.value,onDetail:x,onEdit:S,onRemove:C,onAdd:w,onResetFilters:E,onSelectedChanges:A},null,8,[`filters`,`sort-by`,`sort-dir`,`items`,`total-rows`,`loading`,`filters-active`,`table-height`]),P(`div`,{ref_key:`paginator`,ref:l,class:`flex justify-center w-full py-4`},[G(O(pt),{"current-page":h.value,"onUpdate:currentPage":t[6]||=e=>h.value=e,"page-size":_.value,"onUpdate:pageSize":t[7]||=e=>_.value=e,layout:O(o)?`total, sizes, prev, pager, next, jumper`:`total, sizes, prev, pager, next`,total:n.allItems.length,onSizeChange:D,onCurrentChange:k},null,8,[`current-page`,`page-size`,`layout`,`total`])],512)]),_:1})],512)],64))}}),fn={class:`px-2`},pn={class:`px-5 py-2 text-center`},mn=ie(b({name:`ListSpacesAdjust`,__name:`list-spaces-adjust`,props:{filters:{},filtersActive:{type:Boolean}},emits:[`update:filters`,`reset-filters`],setup(e,{emit:t}){let n=e,i=t,a=ce(`list-spaces-adjust`),{t:o}=j(),s=U([`type`]),c=Te(n,`filters`,i);return(e,t)=>(r(),W(L,null,[G(O(ot),{teleport:``},{icon:g(()=>[G(O(V),{icon:`mdi:filter`})]),title:g(()=>[A(I(O(o)(`spacesModule.headings.adjustFilters`)),1)]),subtitle:g(()=>[A(I(O(o)(`spacesModule.subHeadings.adjustFilters`)),1)]),_:1}),P(`div`,{class:h([[O(a).b()],`flex flex-col h-full w-full overflow-hidden`])},[G(O(ye),{class:`flex-grow`},{default:g(()=>[G(O(Qe),{modelValue:s.value,"onUpdate:modelValue":t[1]||=e=>s.value=e},{default:g(()=>[G(O(Ye),{name:`type`,class:h([O(a).e(`filter-item`)])},{title:g(()=>[G(O(De),{class:`!px-2`},{default:g(()=>[A(I(O(o)(`spacesModule.filters.type.title`)),1)]),_:1})]),default:g(()=>[P(`div`,fn,[G(O(ft),{modelValue:O(c).type,"onUpdate:modelValue":t[0]||=e=>O(c).type=e},{default:g(()=>[G(O(dt),{label:O(o)(`spacesModule.misc.types.room`),value:O(q).ROOM},null,8,[`label`,`value`]),G(O(dt),{label:O(o)(`spacesModule.misc.types.zone`),value:O(q).ZONE},null,8,[`label`,`value`]),G(O(dt),{label:O(o)(`spacesModule.filters.type.all`),value:`all`},null,8,[`label`])]),_:1},8,[`modelValue`])])]),_:1},8,[`class`])]),_:1},8,[`modelValue`])]),_:1}),P(`div`,pn,[G(O(N),{disabled:!n.filtersActive,onClick:t[2]||=e=>i(`reset-filters`)},{icon:g(()=>[G(O(V),{icon:`mdi:filter-remove`})]),default:g(()=>[A(` `+I(O(o)(`spacesModule.buttons.reset.title`)),1)]),_:1},8,[`disabled`])])],2)],64))}}),[[`__scopeId`,`data-v-2f65479c`]]),hn={saved:e=>typeof e==`object`,cancel:()=>!0,"update:remote-form-changed":e=>typeof e==`boolean`},gn={class:`flex items-center gap-2`},_n={class:`font-medium`},vn={class:`px-2`},yn={class:`flex items-center gap-2`},bn={class:`flex items-center gap-2`},xn={class:`flex items-center gap-2`},Sn={class:`font-medium`},Cn={class:`px-2`},wn={class:`flex items-center gap-2`},Tn={key:0,class:`flex gap-2 justify-end mt-4`},En=b({__name:`space-add-form`,props:{hideActions:{type:Boolean,default:!1}},emits:hn,setup(e,{expose:t,emit:n}){let i=e,a=n,{t:o}=j(),{zoneSpaces:s}=ht(),{model:l,formEl:u,formChanged:d,submit:f,formResult:p,createdSpace:h}=xt({id:Ue().toString()}),_=U();T(_,e=>{u.value=e},{immediate:!0});let v=U([`general`,`organization`]),y=te({icon:null,description:null}),b=z({get:()=>l.icon?.replace(`mdi:`,``)??null,set:e=>{l.icon=e?`mdi:${e}`:null}}),{categoryOptions:x,categoryGroups:S,currentTemplates:C}=Ct(z(()=>l.type));T(()=>l.type,e=>{l.category&&!Le(l.category,e)&&(l.category=null,l.icon===y.icon&&(l.icon=null,y.icon=null),l.description===y.description&&(l.description=null,y.description=null)),e===q.ZONE&&(l.parentId=null),_.value?.clearValidate()});let w=e=>{if(e&&C.value[e]){let t=C.value[e];(!l.icon||l.icon===y.icon)&&(l.icon=t.icon,y.icon=t.icon),(!l.description||l.description===y.description)&&(l.description=t.description,y.description=t.description)}},E=z(()=>({name:[{required:!0,message:o(`spacesModule.fields.spaces.name.validation.required`),trigger:`blur`}],category:[{required:l.type===q.ZONE,message:o(`spacesModule.fields.spaces.category.validation.requiredForZone`),trigger:`blur`}]}));T(()=>d.value,e=>{a(`update:remote-form-changed`,e)},{immediate:!0});let D=async()=>{try{await f(),h.value&&a(`saved`,h.value)}catch{}},ee=()=>{a(`cancel`)};return t({submit:D}),(e,t)=>(r(),M(O(we),{ref_key:`formElRef`,ref:_,model:O(l),rules:E.value,"label-position":`top`,onSubmit:le(D,[`prevent`])},{default:g(()=>[G(O(Qe),{modelValue:v.value,"onUpdate:modelValue":t[7]||=e=>v.value=e},{default:g(()=>[G(O(Ye),{name:`general`},{title:g(()=>[P(`div`,gn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1}),P(`span`,_n,I(O(o)(`spacesModule.edit.sections.general.title`)),1)])]),default:g(()=>[P(`div`,vn,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.name.title`),prop:`name`},{default:g(()=>[G(O(ke),{modelValue:O(l).name,"onUpdate:modelValue":t[0]||=e=>O(l).name=e,placeholder:O(o)(`spacesModule.fields.spaces.name.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.type.title`),prop:`type`},{default:g(()=>[G(O(Ne),{modelValue:O(l).type,"onUpdate:modelValue":t[1]||=e=>O(l).type=e},{default:g(()=>[G(O(X),{label:O(o)(`spacesModule.fields.spaces.type.options.room`),value:O(q).ROOM},null,8,[`label`,`value`]),G(O(X),{label:O(o)(`spacesModule.fields.spaces.type.options.zone`),value:O(q).ZONE},null,8,[`label`,`value`])]),_:1},8,[`modelValue`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.category.title`),prop:`category`},{default:g(()=>[G(O(Ne),{modelValue:O(l).category,"onUpdate:modelValue":t[2]||=e=>O(l).category=e,placeholder:O(o)(`spacesModule.fields.spaces.category.placeholder`),clearable:O(l).type!==O(q).ZONE,onChange:w},{default:g(()=>[O(S)?(r(!0),W(L,{key:0},c(O(S),e=>(r(),M(O(rt),{key:e.key,label:O(o)(`spacesModule.fields.spaces.category.groups.${e.key}`)},{default:g(()=>[(r(!0),W(L,null,c(e.categories,e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,yn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128)):(r(!0),W(L,{key:1},c(O(x),e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,bn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`clearable`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.fields.spaces.category.hint`),type:`info`,closable:!1,"show-icon":``,class:`my-2!`},null,8,[`title`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.description.title`),prop:`description`},{default:g(()=>[G(O(ke),{modelValue:O(l).description,"onUpdate:modelValue":t[3]||=e=>O(l).description=e,type:`textarea`,rows:3,placeholder:O(o)(`spacesModule.fields.spaces.description.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.icon.title`),prop:`icon`},{default:g(()=>[G(O(ge),{modelValue:b.value,"onUpdate:modelValue":t[4]||=e=>b.value=e,placeholder:O(o)(`spacesModule.fields.spaces.icon.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.displayOrder.title`),prop:`displayOrder`},{default:g(()=>[G(O(ut),{modelValue:O(l).displayOrder,"onUpdate:modelValue":t[5]||=e=>O(l).displayOrder=e,min:0},null,8,[`modelValue`])]),_:1},8,[`label`])])]),_:1}),O(l).type===O(q).ROOM?(r(),M(O(Ye),{key:0,name:`organization`},{title:g(()=>[P(`div`,xn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:sitemap`})]),_:1}),P(`span`,Sn,I(O(o)(`spacesModule.edit.sections.organization.title`)),1)])]),default:g(()=>[P(`div`,Cn,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.parentZone.title`),prop:`parentId`},{default:g(()=>[G(O(Ne),{modelValue:O(l).parentId,"onUpdate:modelValue":t[6]||=e=>O(l).parentId=e,placeholder:O(o)(`spacesModule.fields.spaces.parentZone.placeholder`),clearable:``,filterable:``},{default:g(()=>[(r(!0),W(L,null,c(O(s),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`span`,wn,[e.icon?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:e.icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.edit.sections.organization.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`])])]),_:1})):k(``,!0)]),_:1},8,[`modelValue`]),i.hideActions?k(``,!0):(r(),W(`div`,Tn,[G(O(N),{onClick:ee},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:O(p)===O(Oe).WORKING,onClick:D},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]))]),_:1},8,[`model`,`rules`]))}}),Dn={saved:e=>typeof e==`object`,cancel:()=>!0,"update:remote-form-changed":e=>typeof e==`boolean`},On={class:`flex items-center gap-2`},kn={class:`font-medium`},An={class:`px-2`},jn={class:`flex items-center gap-2`},Mn={class:`flex items-center gap-2`},Nn={class:`flex items-center gap-2`},Pn={class:`font-medium`},Fn={class:`px-2`},In={class:`flex items-center gap-2`},Ln={class:`flex items-center gap-2`},Rn={class:`font-medium`},zn={class:`px-2`},Bn={class:`border border-solid border-gray-200 rounded-lg p-4 mb-2`},Vn={class:`flex items-center justify-between mb-3`},Hn={class:`flex items-center gap-2`},Un={class:`font-medium`},Wn={class:`flex items-center gap-2`},Gn={class:`font-medium`},Kn={class:`px-2`},qn={key:0,class:`flex gap-2 justify-end mt-4`},Jn=b({__name:`space-edit-form`,props:{space:{},hideActions:{type:Boolean,default:!1}},emits:Dn,setup(e,{expose:t,emit:n}){let i=e,a=n,{t:o}=j(),{zoneSpaces:s,findById:l}=ht(),{model:u,formEl:d,formChanged:f,submit:p,formResult:h}=vt({space:z(()=>i.space)}),_=U();T(_,e=>{d.value=e},{immediate:!0});let v=U([`general`,`organization`]),y=te({icon:null,description:null}),b=z({get:()=>u.icon?.replace(`mdi:`,``)??null,set:e=>{u.icon=e?`mdi:${e}`:null}}),{categoryOptions:x,categoryGroups:S,currentTemplates:C}=Ct(z(()=>u.type)),w=z(()=>s.value.filter(e=>!i.space||e.id!==i.space.id)),E=()=>u.statusWidgets?.find(e=>e.type===Ie.ENERGY),D=z(()=>!!E()),ee=z(()=>[{label:o(`spacesModule.fields.spaces.statusWidgets.energy.range.options.today`),value:Je.TODAY},{label:o(`spacesModule.fields.spaces.statusWidgets.energy.range.options.week`),value:Je.WEEK},{label:o(`spacesModule.fields.spaces.statusWidgets.energy.range.options.month`),value:Je.MONTH}]),ne=z({get:()=>E()?.settings?.range??he.range,set:e=>{let t=E();t&&(t.settings={...t.settings,range:e})}}),re=z({get:()=>E()?.settings?.showProduction??he.showProduction,set:e=>{let t=E();t&&(t.settings={...t.settings,showProduction:e})}}),ie=e=>{if(e){let e=u.statusWidgets??[];if(e.some(e=>e.type===Ie.ENERGY))return;e.push({type:Ie.ENERGY,order:e.length,settings:{range:he.range,showProduction:he.showProduction}}),u.statusWidgets=e}else{let e=(u.statusWidgets??[]).filter(e=>e.type!==Ie.ENERGY);u.statusWidgets=e.length>0?e:null}};T(()=>u.type,e=>{u.category&&!Le(u.category,e)&&(u.category=null,u.icon===y.icon&&(u.icon=null,y.icon=null),u.description===y.description&&(u.description=null,y.description=null)),e===q.ZONE&&(u.parentId=null),_.value?.clearValidate()});let F=e=>{if(e&&C.value[e]){let t=C.value[e];(!u.icon||u.icon===y.icon)&&(u.icon=t.icon,y.icon=t.icon),(!u.description||u.description===y.description)&&(u.description=t.description,y.description=t.description)}},R=z(()=>({name:[{required:!0,message:o(`spacesModule.fields.spaces.name.validation.required`),trigger:`blur`}],category:[{required:u.type===q.ZONE,message:o(`spacesModule.fields.spaces.category.validation.requiredForZone`),trigger:`blur`}]}));T(()=>f.value,e=>{a(`update:remote-form-changed`,e)},{immediate:!0}),T(()=>i.space,e=>{e&&(y.icon=null,y.description=null)});let ae=async()=>{try{await p();let e=l(u.id);e&&a(`saved`,e)}catch{}},oe=()=>{a(`cancel`)};return t({submit:ae}),(t,n)=>(r(),M(O(we),{ref_key:`formRef`,ref:_,model:O(u),rules:R.value,"label-position":`top`,onSubmit:le(ae,[`prevent`])},{default:g(()=>[G(O(Qe),{modelValue:v.value,"onUpdate:modelValue":n[9]||=e=>v.value=e},{default:g(()=>[G(O(Ye),{name:`general`},{title:g(()=>[P(`div`,On,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1}),P(`span`,kn,I(O(o)(`spacesModule.edit.sections.general.title`)),1)])]),default:g(()=>[P(`div`,An,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.name.title`),prop:`name`},{default:g(()=>[G(O(ke),{modelValue:O(u).name,"onUpdate:modelValue":n[0]||=e=>O(u).name=e,placeholder:O(o)(`spacesModule.fields.spaces.name.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.category.title`),prop:`category`},{default:g(()=>[G(O(Ne),{modelValue:O(u).category,"onUpdate:modelValue":n[1]||=e=>O(u).category=e,placeholder:O(o)(`spacesModule.fields.spaces.category.placeholder`),clearable:O(u).type!==O(q).ZONE,onChange:F},{default:g(()=>[O(S)?(r(!0),W(L,{key:0},c(O(S),e=>(r(),M(O(rt),{key:e.key,label:O(o)(`spacesModule.fields.spaces.category.groups.${e.key}`)},{default:g(()=>[(r(!0),W(L,null,c(e.categories,e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,jn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128)):(r(!0),W(L,{key:1},c(O(x),e=>(r(),M(O(X),{key:e,label:O(o)(`spacesModule.fields.spaces.category.options.${e}`),value:e},{default:g(()=>[P(`span`,Mn,[O(C)[e]?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:O(C)[e].icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(O(o)(`spacesModule.fields.spaces.category.options.${e}`)),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`clearable`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.fields.spaces.category.hint`),type:`info`,closable:!1,"show-icon":``,class:`!my-2`},null,8,[`title`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.description.title`),prop:`description`},{default:g(()=>[G(O(ke),{modelValue:O(u).description,"onUpdate:modelValue":n[2]||=e=>O(u).description=e,type:`textarea`,rows:3,placeholder:O(o)(`spacesModule.fields.spaces.description.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.icon.title`),prop:`icon`},{default:g(()=>[G(O(ge),{modelValue:b.value,"onUpdate:modelValue":n[3]||=e=>b.value=e,placeholder:O(o)(`spacesModule.fields.spaces.icon.placeholder`)},null,8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(J),{label:O(o)(`spacesModule.fields.spaces.displayOrder.title`),prop:`displayOrder`},{default:g(()=>[G(O(ut),{modelValue:O(u).displayOrder,"onUpdate:modelValue":n[4]||=e=>O(u).displayOrder=e,min:0},null,8,[`modelValue`])]),_:1},8,[`label`])])]),_:1}),O(u).type===O(q).ROOM?(r(),M(O(Ye),{key:0,name:`organization`},{title:g(()=>[P(`div`,Nn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:sitemap`})]),_:1}),P(`span`,Pn,I(O(o)(`spacesModule.edit.sections.organization.title`)),1)])]),default:g(()=>[P(`div`,Fn,[G(O(J),{label:O(o)(`spacesModule.fields.spaces.parentZone.title`),prop:`parentId`},{default:g(()=>[G(O(Ne),{modelValue:O(u).parentId,"onUpdate:modelValue":n[5]||=e=>O(u).parentId=e,placeholder:O(o)(`spacesModule.fields.spaces.parentZone.placeholder`),clearable:``,filterable:``},{default:g(()=>[(r(!0),W(L,null,c(w.value,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`span`,In,[e.icon?(r(),M(O(m),{key:0},{default:g(()=>[G(O(V),{icon:e.icon},null,8,[`icon`])]),_:2},1024)):k(``,!0),A(` `+I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`label`]),G(O(je),{title:O(o)(`spacesModule.edit.sections.organization.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`])])]),_:1})):k(``,!0),G(O(Ye),{name:`statusWidgets`},{title:g(()=>[P(`div`,Ln,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:view-dashboard-variant`})]),_:1}),P(`span`,Rn,I(O(o)(`spacesModule.edit.sections.statusWidgets.title`)),1)])]),default:g(()=>[P(`div`,zn,[G(O(je),{title:O(o)(`spacesModule.edit.sections.statusWidgets.hint`),type:`info`,closable:!1,"show-icon":``,class:`!mb-4`},null,8,[`title`]),P(`div`,Bn,[P(`div`,Vn,[P(`div`,Hn,[G(O(V),{icon:`mdi:flash-outline`,class:`text-lg`}),P(`span`,Un,I(O(o)(`spacesModule.fields.spaces.statusWidgets.energy.title`)),1)]),G(O(Re),{"model-value":D.value,onChange:ie},null,8,[`model-value`])]),D.value?(r(),W(L,{key:0},[G(O(J),{label:O(o)(`spacesModule.fields.spaces.statusWidgets.energy.range.title`)},{default:g(()=>[G(O(nn),{modelValue:ne.value,"onUpdate:modelValue":n[6]||=e=>ne.value=e,options:ee.value,block:``},null,8,[`modelValue`,`options`])]),_:1},8,[`label`]),G(O(J),{"label-position":`left`},{label:g(()=>[A(I(O(o)(`spacesModule.fields.spaces.statusWidgets.energy.showProduction.title`)),1)]),default:g(()=>[G(O(Re),{modelValue:re.value,"onUpdate:modelValue":n[7]||=e=>re.value=e},null,8,[`modelValue`])]),_:1})],64)):k(``,!0)])])]),_:1}),G(O(Ye),{name:`smartOverrides`},{title:g(()=>[P(`div`,Wn,[G(O(m),{size:20},{default:g(()=>[G(O(V),{icon:`mdi:tune`})]),_:1}),P(`span`,Gn,I(O(o)(`spacesModule.edit.sections.smartOverrides.title`)),1),G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(O(o)(`spacesModule.edit.sections.smartOverrides.badge`)),1)]),_:1})])]),default:g(()=>[P(`div`,Kn,[G(O(je),{title:O(o)(`spacesModule.edit.sections.smartOverrides.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`]),G(O(J),{prop:`suggestionsEnabled`,"label-position":`left`},{label:g(()=>[A(I(O(o)(`spacesModule.fields.spaces.suggestionsEnabled.title`)),1)]),default:g(()=>[G(O(Re),{modelValue:O(u).suggestionsEnabled,"onUpdate:modelValue":n[8]||=e=>O(u).suggestionsEnabled=e},null,8,[`modelValue`])]),_:1}),G(O(je),{title:O(o)(`spacesModule.fields.spaces.suggestionsEnabled.hint`),type:`info`,closable:!1,"show-icon":``},null,8,[`title`])])]),_:1})]),_:1},8,[`modelValue`]),e.hideActions?k(``,!0):(r(),W(`div`,qn,[G(O(N),{onClick:oe},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:O(h)===O(Oe).WORKING,onClick:ae},{default:g(()=>[A(I(O(o)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]))]),_:1},8,[`model`,`rules`]))}}),Yn={key:1,class:`flex justify-center py-4`},Xn={class:`flex items-center gap-2`},Zn={class:`flex flex-col`},Qn={key:0,class:`text-xs text-gray-400`},$n={class:`flex gap-1`},er={class:`flex justify-between items-center mt-4`},tr={class:`text-xs text-gray-400`},nr=b({__name:`space-lighting-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{lightingSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>[{value:Z.main,label:n(`spacesModule.lightingRoles.main`)},{value:Z.task,label:n(`spacesModule.lightingRoles.task`)},{value:Z.ambient,label:n(`spacesModule.lightingRoles.ambient`)},{value:Z.accent,label:n(`spacesModule.lightingRoles.accent`)},{value:Z.night,label:n(`spacesModule.lightingRoles.night`)},{value:Z.other,label:n(`spacesModule.lightingRoles.other`)},{value:Z.hidden,label:n(`spacesModule.lightingRoles.hidden`)}]),p=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/lighting/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map(e=>({deviceId:e.device_id,deviceName:e.device_name,channelId:e.channel_id,channelName:e.channel_name,role:e.role?e.role:null,priority:e.priority??0,hasBrightness:e.has_brightness??!1,hasColorTemp:e.has_color_temp??!1,hasColor:e.has_color??!1}))}finally{s.value=!1}},m=async(e,n)=>{try{if(n){let{error:r}=await i.client.POST(`/${B}/${Me}/spaces/{id}/lighting/roles`,{params:{path:{id:t.space.id}},body:{data:{device_id:e.deviceId,channel_id:e.channelId,role:n}}});if(r){a.error(`Failed to update lighting role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/lighting/roles/{deviceId}/{channelId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId,channelId:e.channelId}}});if(n){a.error(`Failed to clear lighting role`);return}e.role=null}}catch{a.error(`Failed to update lighting role`)}},_=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/lighting/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await p(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&p()}),T(()=>o?.value,()=>{t.space?.id&&p()}),u(()=>{t.space?.id&&p()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.lightingRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.lightingRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,Yn,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,Xn,[G(O(V),{icon:`mdi:lightbulb`}),P(`div`,Zn,[P(`span`,null,I(e.deviceName),1),e.channelName?(r(),W(`span`,Qn,I(e.channelName),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.lightingRoles.role.title`),width:`160`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.lightingRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>m(e,t)},{default:g(()=>[(r(!0),W(L,null,c(f.value,e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`]),G(O($),{label:``,width:`100`},{default:g(({row:e})=>[P(`div`,$n,[e.hasBrightness?(r(),M(O(K),{key:0,type:`info`,size:`small`},{default:g(()=>[...i[0]||=[A(`Dim`,-1)]]),_:1})):k(``,!0),e.hasColor?(r(),M(O(K),{key:1,type:`success`,size:`small`},{default:g(()=>[...i[1]||=[A(`RGB`,-1)]]),_:1})):k(``,!0)])]),_:1})]),_:1},8,[`data`]),P(`div`,er,[G(O(N),{size:`small`,loading:l.value,onClick:_},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.lightingRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,tr,I(O(n)(`spacesModule.fields.spaces.lightingRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:lightbulb`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.lightingRoles.noLights`)),1)]),_:1}))],2))}}),rr={key:1,class:`flex justify-center py-4`},ir={class:`flex items-center gap-2`},ar={class:`flex flex-col`},or={key:0,class:`text-xs text-gray-400`},sr={class:`flex gap-1`},cr={class:`flex justify-between items-center mt-4`},lr={class:`text-xs text-gray-400 ml-4`},ur=b({__name:`space-climate-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{climateSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>[{value:Y.heating_only,label:n(`spacesModule.climateRoles.${Y.heating_only}`)},{value:Y.cooling_only,label:n(`spacesModule.climateRoles.${Y.cooling_only}`)},{value:Y.auto,label:n(`spacesModule.climateRoles.${Y.auto}`)},{value:Y.auxiliary,label:n(`spacesModule.climateRoles.${Y.auxiliary}`)},{value:Y.hidden,label:n(`spacesModule.climateRoles.${Y.hidden}`)}]),p=z(()=>[{value:Y.sensor,label:n(`spacesModule.climateRoles.${Y.sensor}`)},{value:Y.hidden,label:n(`spacesModule.climateRoles.${Y.hidden}`)}]),m=e=>e.deviceCategory===`sensor`?p.value:f.value,_=e=>{switch(e){case`thermostat`:return`mdi:thermostat`;case`heating_unit`:return`mdi:radiator`;case`water_heater`:return`mdi:water-boiler`;case`air_conditioner`:return`mdi:air-conditioner`;case`fan`:return`mdi:fan`;case`air_humidifier`:return`mdi:air-humidifier`;case`air_dehumidifier`:return`mdi:air-humidifier-off`;case`air_purifier`:return`mdi:air-purifier`;case`sensor`:return`mdi:thermometer`;default:return`mdi:thermostat-box`}},v=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/climate/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map(e=>({deviceId:e.device_id,deviceName:e.device_name,deviceCategory:e.device_category??``,channelId:e.channel_id??null,channelName:e.channel_name??null,role:e.role?e.role:null,priority:e.priority??0,hasTemperature:e.has_temperature??!1,hasHumidity:e.has_humidity??!1}))}finally{s.value=!1}},y=async(e,n)=>{try{if(n){let r={device_id:e.deviceId,role:n};e.channelId&&(r.channel_id=e.channelId);let{error:o}=await i.client.POST(`/${B}/${Me}/spaces/{id}/climate/roles`,{params:{path:{id:t.space.id}},body:{data:r}});if(o){a.error(`Failed to update climate role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/climate/roles/{deviceId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId},query:e.channelId?{channelId:e.channelId}:void 0}});if(n){a.error(`Failed to clear climate role`);return}e.role=null}}catch{a.error(`Failed to update climate role`)}},b=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/climate/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await v(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&v()}),T(()=>o?.value,()=>{t.space?.id&&v()}),u(()=>{t.space?.id&&v()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.climateRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.climateRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,rr,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,ir,[G(O(V),{icon:_(e.deviceCategory)},null,8,[`icon`]),P(`div`,ar,[P(`span`,null,I(e.deviceName),1),e.channelName?(r(),W(`span`,or,I(e.channelName),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.climateRoles.role.title`),width:`200`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.climateRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>y(e,t)},{default:g(()=>[(r(!0),W(L,null,c(m(e),e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`]),G(O($),{label:``,width:`120`},{default:g(({row:e})=>[P(`div`,sr,[e.hasTemperature?(r(),M(O(K),{key:0,type:`warning`,size:`small`},{default:g(()=>[...i[0]||=[A(`Temp`,-1)]]),_:1})):k(``,!0),e.hasHumidity?(r(),M(O(K),{key:1,type:`info`,size:`small`},{default:g(()=>[...i[1]||=[A(`Humid`,-1)]]),_:1})):k(``,!0)])]),_:1})]),_:1},8,[`data`]),P(`div`,cr,[G(O(N),{size:`small`,loading:l.value,onClick:b},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.climateRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,lr,I(O(n)(`spacesModule.fields.spaces.climateRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:thermostat`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.climateRoles.noDevices`)),1)]),_:1}))],2))}}),dr={key:1,class:`flex justify-center py-4`},fr={class:`flex items-center gap-2`},pr={class:`flex flex-col`},mr={key:0,class:`text-xs text-gray-400`},hr={class:`flex gap-1`},gr={class:`flex justify-between items-center mt-4`},_r={class:`text-xs text-gray-400`},vr=b({__name:`space-covers-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{coversSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>[{value:We.primary,label:n(`spacesModule.coversRoles.primary`)},{value:We.blackout,label:n(`spacesModule.coversRoles.blackout`)},{value:We.sheer,label:n(`spacesModule.coversRoles.sheer`)},{value:We.outdoor,label:n(`spacesModule.coversRoles.outdoor`)},{value:We.hidden,label:n(`spacesModule.coversRoles.hidden`)}]),p=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/covers/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map(e=>({deviceId:e.device_id,deviceName:e.device_name,channelId:e.channel_id,channelName:e.channel_name,role:e.role?e.role:null,priority:e.priority??0,hasPosition:e.has_position??!1,hasCommand:e.has_command??!1,hasTilt:e.has_tilt??!1,coverType:e.cover_type??null}))}finally{s.value=!1}},m=async(e,n)=>{try{if(n){let{error:r}=await i.client.POST(`/${B}/${Me}/spaces/{id}/covers/roles`,{params:{path:{id:t.space.id}},body:{data:{device_id:e.deviceId,channel_id:e.channelId,role:n}}});if(r){a.error(`Failed to update covers role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/covers/roles/{deviceId}/{channelId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId,channelId:e.channelId}}});if(n){a.error(`Failed to clear covers role`);return}e.role=null}}catch{a.error(`Failed to update covers role`)}},_=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/covers/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await p(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&p()}),T(()=>o?.value,()=>{t.space?.id&&p()}),u(()=>{t.space?.id&&p()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.coversRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.coversRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,dr,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,fr,[G(O(V),{icon:`mdi:blinds`}),P(`div`,pr,[P(`span`,null,I(e.deviceName),1),e.channelName?(r(),W(`span`,mr,I(e.channelName),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.coversRoles.role.title`),width:`160`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.coversRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>m(e,t)},{default:g(()=>[(r(!0),W(L,null,c(f.value,e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`]),G(O($),{label:``,width:`100`},{default:g(({row:e})=>[P(`div`,hr,[e.hasPosition?(r(),M(O(K),{key:0,type:`info`,size:`small`},{default:g(()=>[...i[0]||=[A(`Pos`,-1)]]),_:1})):k(``,!0),e.hasTilt?(r(),M(O(K),{key:1,type:`success`,size:`small`},{default:g(()=>[...i[1]||=[A(`Tilt`,-1)]]),_:1})):k(``,!0)])]),_:1})]),_:1},8,[`data`]),P(`div`,gr,[G(O(N),{size:`small`,loading:l.value,onClick:_},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.coversRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,_r,I(O(n)(`spacesModule.fields.spaces.coversRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:blinds`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.coversRoles.noCovers`)),1)]),_:1}))],2))}}),yr={key:1,class:`flex justify-center py-4`},br={class:`flex items-center gap-2`},xr={class:`flex flex-col`},Sr={class:`text-xs text-gray-400`},Cr={class:`flex justify-between items-center mt-4`},wr={class:`text-xs text-gray-400 ml-4`},Tr=b({name:`SpaceSensorRoles`,__name:`space-sensor-roles`,props:{space:{},hideHeader:{type:Boolean,default:!1}},setup(e){let t=e,{t:n}=j(),i=it(),a=Be(),{sensorSignal:o}=Tt(),s=U(!1),l=U(!1),d=U([]),f=z(()=>xe.map(e=>({value:e,label:n(`spacesModule.sensorRoles.${e}`)}))),p=e=>{switch(e){case`temperature`:return n(`spacesModule.sensorRoles.categories.temperature`);case`humidity`:return n(`spacesModule.sensorRoles.categories.humidity`);case`pressure`:return n(`spacesModule.sensorRoles.categories.pressure`);case`illuminance`:return n(`spacesModule.sensorRoles.categories.illuminance`);case`smoke`:return n(`spacesModule.sensorRoles.categories.smoke`);case`gas`:return n(`spacesModule.sensorRoles.categories.gas`);case`carbon_monoxide`:return n(`spacesModule.sensorRoles.categories.carbon_monoxide`);case`carbon_dioxide`:return n(`spacesModule.sensorRoles.categories.carbon_dioxide`);case`leak`:return n(`spacesModule.sensorRoles.categories.leak`);case`motion`:return n(`spacesModule.sensorRoles.categories.motion`);case`occupancy`:return n(`spacesModule.sensorRoles.categories.occupancy`);case`contact`:return n(`spacesModule.sensorRoles.categories.contact`);case`air_quality`:return n(`spacesModule.sensorRoles.categories.air_quality`);case`air_particulate`:return n(`spacesModule.sensorRoles.categories.air_particulate`);case`nitrogen_dioxide`:return n(`spacesModule.sensorRoles.categories.nitrogen_dioxide`);case`ozone`:return n(`spacesModule.sensorRoles.categories.ozone`);case`sulphur_dioxide`:return n(`spacesModule.sensorRoles.categories.sulphur_dioxide`);case`volatile_organic_compounds`:return n(`spacesModule.sensorRoles.categories.volatile_organic_compounds`);case`electrical_energy`:return n(`spacesModule.sensorRoles.categories.electrical_energy`);case`electrical_generation`:return n(`spacesModule.sensorRoles.categories.electrical_generation`);case`electrical_power`:return n(`spacesModule.sensorRoles.categories.electrical_power`);case`battery`:return n(`spacesModule.sensorRoles.categories.battery`);default:return e}},m=async()=>{s.value=!0;try{let{data:e,error:n}=await i.client.GET(`/${B}/${Me}/spaces/{id}/sensors/targets`,{params:{path:{id:t.space.id}}});if(n||!e)return;d.value=(e.data??[]).map((e,t)=>({deviceId:e.device_id,deviceName:e.device_name,channelId:e.channel_id,channelName:e.channel_name??e.channel_category,channelCategory:e.channel_category,role:e.role?e.role:null,priority:e.priority??t}))}finally{s.value=!1}},_=async(e,n)=>{try{if(n){let{error:r}=await i.client.POST(`/${B}/${Me}/spaces/{id}/sensors/roles`,{params:{path:{id:t.space.id}},body:{data:{device_id:e.deviceId,channel_id:e.channelId,role:n}}});if(r){a.error(`Failed to update sensor role`);return}e.role=n}else{let{error:n}=await i.client.DELETE(`/${B}/${Me}/spaces/{id}/sensors/roles/{deviceId}/{channelId}`,{params:{path:{id:t.space.id,deviceId:e.deviceId,channelId:e.channelId}}});if(n){a.error(`Failed to clear sensor role`);return}e.role=null}}catch{a.error(`Failed to update sensor role`)}},v=async()=>{l.value=!0;try{let{data:e,error:n}=await i.client.POST(`/${B}/${Me}/spaces/{id}/sensors/roles/defaults`,{params:{path:{id:t.space.id}}});if(n||!e){a.error(`Failed to apply default roles`);return}await m(),a.success(`Applied ${e.data?.success_count??0} default role(s)`)}finally{l.value=!1}};return T(()=>t.space?.id,e=>{e&&m()}),T(()=>o?.value,()=>{t.space?.id&&m()}),u(()=>{t.space?.id&&m()}),(t,i)=>(r(),W(`div`,{class:h({"mt-2":!e.hideHeader})},[e.hideHeader?k(``,!0):(r(),M(O(Ze),{key:0,"content-position":`left`,class:`mt-6!`},{default:g(()=>[A(I(O(n)(`spacesModule.edit.sections.smartOverrides.sensorRoles`)),1)]),_:1})),G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-4!`},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.sensorRoles.description`)),1)]),_:1}),s.value&&d.value.length===0?(r(),W(`div`,yr,[G(O(V),{icon:`mdi:loading`,class:`animate-spin text-2xl`})])):d.value.length>0||s.value?(r(),W(L,{key:2},[G(O(ct),{data:d.value,border:``,"max-height":`400px`},{default:g(()=>[G(O($),{prop:`deviceName`,label:O(n)(`spacesModule.onboarding.deviceName`),"min-width":`180`},{default:g(({row:e})=>[P(`div`,br,[G(O(V),{icon:`mdi:motion-sensor`}),P(`div`,xr,[P(`span`,null,I(e.deviceName),1),P(`span`,Sr,I(e.channelName),1)])])]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.sensorRoles.channel.title`),width:`200`},{default:g(({row:e})=>[G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(p(e.channelCategory)),1)]),_:2},1024)]),_:1},8,[`label`]),G(O($),{label:O(n)(`spacesModule.fields.spaces.sensorRoles.role.title`),width:`200`},{default:g(({row:e})=>[G(O(Ne),{"model-value":e.role??``,placeholder:O(n)(`spacesModule.fields.spaces.sensorRoles.role.placeholder`),clearable:``,"onUpdate:modelValue":t=>_(e,t)},{default:g(()=>[(r(!0),W(L,null,c(f.value,e=>(r(),M(O(X),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`onUpdate:modelValue`])]),_:1},8,[`label`])]),_:1},8,[`data`]),P(`div`,Cr,[G(O(N),{size:`small`,loading:l.value,onClick:v},{default:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.sensorRoles.applyDefaults`)),1)]),_:1},8,[`loading`]),P(`div`,wr,I(O(n)(`spacesModule.fields.spaces.sensorRoles.applyDefaultsHint`)),1)])],64)):(r(),M(O(R),{key:3},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:motion-sensor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(n)(`spacesModule.fields.spaces.sensorRoles.noSensors`)),1)]),_:1}))],2))}}),Er=b({name:`SpaceLightingRolesDialog`,__name:`space-lighting-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.lightingRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(nr,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),Dr=b({name:`SpaceClimateRolesDialog`,__name:`space-climate-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.climateRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(ur,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),Or=b({name:`SpaceCoversRolesDialog`,__name:`space-covers-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.coversRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(vr,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),kr=b({name:`SpaceSensorRolesDialog`,__name:`space-sensor-roles-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`roles-changed`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),s=()=>{i(`roles-changed`),o.value=!1};return(e,t)=>(r(),M(O(tt),{modelValue:o.value,"onUpdate:modelValue":t[0]||=e=>o.value=e,title:O(a)(`spacesModule.dialogs.sensorRoles.title`),class:`max-w-[700px]`,onClose:s},{footer:g(()=>[G(O(N),{type:`primary`,onClick:s},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[G(Tr,{space:n.space,"hide-header":``},null,8,[`space`])]),_:1},8,[`modelValue`,`title`]))}}),Ar={class:`flex items-start gap-3`},jr={class:`flex-1 min-w-0 space-domain-card__content`},Mr={class:`space-domain-card__title`},Nr={class:`space-domain-card__description`},Pr={class:`space-domain-card__tags`},Fr={class:`flex items-center gap-1`},Ir={key:2,class:`space-domain-card__not-configured`},Lr={class:`space-domain-card__chevron`},Rr=ie(b({name:`SpaceDomainCard`,__name:`space-domain-card`,props:{icon:{},iconColor:{},title:{},description:{},tags:{},loading:{type:Boolean}},emits:[`click`],setup(e,{emit:n}){let i=e,a=n,{t:o}=j();return(e,n)=>(r(),M(O(at),{shadow:`hover`,class:`space-domain-card`,"body-class":`p-4!`,onClick:n[0]||=e=>a(`click`)},{default:g(()=>[P(`div`,Ar,[P(`div`,{class:`space-domain-card__icon`,style:t({backgroundColor:`var(--el-color-${i.iconColor}-light-9)`,color:`var(--el-color-${i.iconColor})`})},[G(O(V),{icon:i.icon},null,8,[`icon`])],4),P(`div`,jr,[P(`h3`,Mr,I(i.title),1),P(`p`,Nr,I(i.description),1),P(`div`,Pr,[i.loading?(r(),M(O(lt),{key:0,animated:``,rows:0,class:`w-20`})):i.tags.length>0?(r(!0),W(L,{key:1},c(i.tags,e=>(r(),M(O(K),{key:e.label,type:e.type,size:`small`},{default:g(()=>[P(`div`,Fr,[G(O(V),{icon:e.icon},null,8,[`icon`]),A(` `+I(e.label)+` `,1),G(O(Pe),{value:e.count,type:e.type,class:`ml-1`},null,8,[`value`,`type`])])]),_:2},1032,[`type`]))),128)):(r(),W(`span`,Ir,I(O(o)(`spacesModule.detail.domains.notConfigured`)),1))])]),P(`div`,Lr,[G(O(V),{icon:`mdi:chevron-right`})])])]),_:1}))}}),[[`__scopeId`,`data-v-c693d882`]]),zr=[`element-loading-text`],Br={class:`flex items-center gap-3 flex-1 pr-2`},Vr={class:`font-medium text-sm`},Hr={class:`flex items-center justify-between w-full`},Ur={class:`flex gap-1 ml-2`},Wr={class:`flex items-center justify-between w-full`},Gr={class:`flex gap-1 ml-2`},Kr={class:`flex items-center justify-between w-full`},qr={class:`flex gap-1 ml-2`},Jr={class:`flex justify-between items-center mt-2`},Yr={class:`flex items-center gap-2`},Xr={class:`text-xs text-gray-400`},Zr=b({name:`SpaceMediaActivitiesDialog`,__name:`space-media-activities-dialog`,props:{visible:{type:Boolean},space:{}},emits:[`update:visible`,`bindings-changed`],setup(t,{emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),u=z({get:()=>a.visible,set:e=>o(`update:visible`,e)}),{endpoints:d,activeState:f,fetchingEndpoints:p,fetchingBindings:m,activating:_,deactivating:v,applyingDefaults:y,activationError:b,fetchEndpoints:x,fetchBindings:S,fetchActiveState:C,activate:w,deactivate:E,saveBinding:D,createBinding:ee,deleteBinding:ne,applyDefaults:re,findBindingByActivity:ie,endpointsByType:F}=Et(z(()=>a.space?.id)),R=[Q.watch,Q.listen,Q.gaming,Q.background],ae=U(``),oe=U(null),B=U(!1),se=z(()=>p.value||m.value),ce=()=>({displayEndpointId:``,audioEndpointId:``,sourceEndpointId:``,remoteEndpointId:``,displayInputId:``,audioInputId:``,sourceInputId:``,audioVolumePreset:30}),H=te({[Q.watch]:ce(),[Q.listen]:ce(),[Q.gaming]:ce(),[Q.background]:ce()}),ue=te({[Q.watch]:ce(),[Q.listen]:ce(),[Q.gaming]:ce(),[Q.background]:ce()}),de=te({[Q.watch]:!1,[Q.listen]:!1,[Q.gaming]:!1,[Q.background]:!1}),fe=te({[Q.watch]:null,[Q.listen]:null,[Q.gaming]:null,[Q.background]:null}),pe=F(Xe.display),me=F(Xe.audio_output),he=F(Xe.source),ge=F(Xe.remote_target),_e=(e,t)=>{H[e].displayEndpointId=t?.displayEndpointId??``,H[e].audioEndpointId=t?.audioEndpointId??``,H[e].sourceEndpointId=t?.sourceEndpointId??``,H[e].remoteEndpointId=t?.remoteEndpointId??``,H[e].displayInputId=t?.displayInputId??``,H[e].audioInputId=t?.audioInputId??``,H[e].sourceInputId=t?.sourceInputId??``,H[e].audioVolumePreset=t?.audioVolumePreset??30,Object.assign(ue[e],{...H[e]})},ve=()=>{for(let e of R)_e(e,ie(e))},ye=e=>{let t=H[e],n=ue[e];return t.displayEndpointId!==n.displayEndpointId||t.audioEndpointId!==n.audioEndpointId||t.sourceEndpointId!==n.sourceEndpointId||t.remoteEndpointId!==n.remoteEndpointId||t.displayInputId!==n.displayInputId||t.audioInputId!==n.audioInputId||t.sourceInputId!==n.sourceInputId||t.audioVolumePreset!==n.audioVolumePreset},be=(e,t)=>{let n=H[e][t];return n?d.value.find(e=>e.endpointId===n)?.capabilities.inputSelect??!1:!1},xe=e=>{let t=H[e].audioEndpointId;return t?d.value.find(e=>e.endpointId===t)?.capabilities.volume??!1:!1},Ce=e=>{let t=d.value.find(t=>t.endpointId===e);return t?.links?.inputSelect?.dataType===`enum`&&Array.isArray(t.links.inputSelect.format)&&t.links.inputSelect.format.length>0?{type:`select`,options:t.links.inputSelect.format}:{type:`text`}},q=e=>{let t=Ce(e);return t.type===`select`?t.options:[]},Te=e=>{let t=`spacesModule.media.activities.mediaInputSources.${e}`,n=s(t);return n===t?String(e):n},Ee=e=>{let t=` (${s(`spacesModule.media.endpointTypes.${e.type}`)})`;return e.name.endsWith(t)?e.name.slice(0,-t.length):e.name},De=e=>{switch(e){case`active`:return`success`;case`activating`:return`primary`;case`failed`:return`danger`;case`deactivated`:return`info`;default:return`info`}},Oe=e=>{let t=f.value?.activityKey===e&&f.value?.state!==`deactivated`,n=t?f.value.state:void 0,r=ie(e);return{isActive:t,state:n,binding:r,hasSlots:!!(r?.displayEndpointId||r?.audioEndpointId||r?.sourceEndpointId||r?.remoteEndpointId)}},Ae=e=>{let{isActive:t,state:n}=Oe(e);return t&&n?De(n):_t(e)},Me=e=>{let{isActive:t,state:n,binding:r,hasSlots:i}=Oe(e);return s(t?`spacesModule.media.activities.activationState.${n}`:r?i?`spacesModule.media.activities.status.configured`:`spacesModule.media.activities.status.incomplete`:`spacesModule.media.activities.status.unconfigured`)},Pe=new Map,Fe=e=>{let t=H[e];return{displayEndpointId:t.displayEndpointId||null,audioEndpointId:t.audioEndpointId||null,sourceEndpointId:t.sourceEndpointId||null,remoteEndpointId:t.remoteEndpointId||null,displayInputId:be(e,`displayEndpointId`)&&t.displayInputId||null,audioInputId:be(e,`audioEndpointId`)&&t.audioInputId||null,sourceInputId:be(e,`sourceEndpointId`)&&t.sourceInputId||null,audioVolumePreset:xe(e)?t.audioVolumePreset:null}},Ie=async e=>{if(!de[e]){de[e]=!0,fe[e]=null;try{let t=ie(e),n=Fe(e),r=!n.displayEndpointId&&!n.audioEndpointId&&!n.sourceEndpointId&&!n.remoteEndpointId,i={...H[e]};r&&t?(await ne(t.id),_e(e,void 0),Object.assign(ue[e],i)):r?Object.assign(ue[e],i):t?(await D(t.id,n),Object.assign(ue[e],i)):(await ee(e,n),Object.assign(ue[e],i))}catch(t){fe[e]=t instanceof Error?t.message:`Failed to save`}finally{de[e]=!1}}},Le=e=>{let t=Pe.get(e);t&&clearTimeout(t),Pe.set(e,setTimeout(()=>{Pe.delete(e),Ie(e)},500))};for(let e of R)T(()=>H[e],()=>{!B.value||!ye(e)||Le(e)},{deep:!0}),T(()=>H[e].displayEndpointId,()=>{B.value&&(H[e].displayInputId=``)}),T(()=>H[e].audioEndpointId,()=>{B.value&&(H[e].audioInputId=``,H[e].audioVolumePreset=30)}),T(()=>H[e].sourceEndpointId,()=>{B.value&&(H[e].sourceInputId=``)});let Re=async e=>{oe.value=e;try{await w(e),l.success(s(`spacesModule.media.activities.activateSuccess`))}catch{l.error(s(`spacesModule.media.activities.activateFailed`))}finally{oe.value=null}},ze=async()=>{try{await E(),l.success(s(`spacesModule.media.activities.deactivateSuccess`))}catch{b.value=null,l.error(s(`spacesModule.media.activities.deactivateFailed`))}},Ve=async()=>{B.value=!1;try{await re(),ve(),l.success(s(`spacesModule.media.activities.defaultsApplied`))}catch{l.error(s(`spacesModule.media.activities.defaultsFailed`))}await n(),B.value=!0},Y=async()=>{B.value=!1,await Promise.all([x(),S(),C()]),ve(),await n(),B.value=!0},He=async()=>{B.value=!1;let e=[],t=new Set;for(let[n,r]of Pe)clearTimeout(r),t.add(n),e.push(Ie(n));Pe.clear();for(let n of R)!t.has(n)&&ye(n)&&e.push(Ie(n));await Promise.allSettled(e),o(`bindings-changed`),u.value=!1};return(t,n)=>(r(),M(O(tt),{modelValue:u.value,"onUpdate:modelValue":n[2]||=e=>u.value=e,title:O(s)(`spacesModule.dialogs.mediaActivities.title`),class:`max-w-[800px]`,"destroy-on-close":``,onOpen:Y,onClose:He},{footer:g(()=>[G(O(N),{type:`primary`,onClick:He},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.done.title`)),1)]),_:1})]),default:g(()=>[e((r(),W(`div`,{"element-loading-text":O(s)(`spacesModule.media.activities.loading`),class:`flex flex-col gap-4`},[G(O(je),{type:`info`,closable:!1,"show-icon":``,class:`mb-0!`},{default:g(()=>[A(I(O(s)(`spacesModule.media.activities.description`)),1)]),_:1}),G(O(Qe),{modelValue:ae.value,"onUpdate:modelValue":n[0]||=e=>ae.value=e,accordion:``},{default:g(()=>[(r(),W(L,null,c(R,e=>G(O(Ye),{key:e,name:e},{title:g(()=>[P(`div`,Br,[G(O(V),{icon:O(St)(e),class:`w[20px] h[20px] shrink-0`},null,8,[`icon`]),P(`span`,Vr,I(O(s)(`spacesModule.media.activityLabels.${e}`)),1),G(O(K),{type:Ae(e),size:`small`,round:``},{default:g(()=>[A(I(Me(e)),1)]),_:2},1032,[`type`]),de[e]?(r(),M(O(V),{key:0,icon:`mdi:loading`,class:`animate-spin text-blue-500 w[14px] h[14px]`})):k(``,!0),n[3]||=P(`div`,{class:`flex-1`},null,-1),G(O(N),{size:`small`,type:`success`,circle:``,loading:O(_)&&oe.value===e,disabled:O(_)||O(v)||O(f)?.state===`activating`,title:O(s)(`spacesModule.media.activities.run`),onClick:le(t=>Re(e),[`stop`])},{icon:g(()=>[G(O(V),{icon:`mdi:play`})]),_:1},8,[`loading`,`disabled`,`title`,`onClick`])])]),default:g(()=>[G(O(we),{"label-position":`top`,class:`flex flex-col gap-2`},{default:g(()=>[P(`div`,{class:h(be(e,`displayEndpointId`)?`grid grid-cols-2 gap-x-4`:``)},[G(O(J),{label:O(s)(`spacesModule.media.activities.slots.display`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].displayEndpointId,"onUpdate:modelValue":t=>H[e].displayEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(pe),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},{default:g(()=>[P(`div`,Hr,[P(`span`,null,I(Ee(e)),1),P(`div`,Ur,[e.capabilities.inputSelect?(r(),M(O(K),{key:0,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.input`)),1)]),_:1})):k(``,!0)])])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),be(e,`displayEndpointId`)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.displayInput`)},{default:g(()=>[Ce(H[e].displayEndpointId).type===`select`?(r(),M(O(Ne),{key:0,modelValue:H[e].displayInputId,"onUpdate:modelValue":t=>H[e].displayInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.displayInputPlaceholder`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(q(H[e].displayEndpointId),e=>(r(),M(O(X),{key:String(e),label:Te(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(r(),M(O(ke),{key:1,modelValue:H[e].displayInputId,"onUpdate:modelValue":t=>H[e].displayInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.displayInputPlaceholder`),clearable:``},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]))]),_:2},1032,[`label`])):k(``,!0)],2),P(`div`,{class:h(be(e,`audioEndpointId`)?`grid grid-cols-2 gap-x-4`:``)},[G(O(J),{label:O(s)(`spacesModule.media.activities.slots.audio`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].audioEndpointId,"onUpdate:modelValue":t=>H[e].audioEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(me),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},{default:g(()=>[P(`div`,Wr,[P(`span`,null,I(Ee(e)),1),P(`div`,Gr,[e.capabilities.volume?(r(),M(O(K),{key:0,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.volume`)),1)]),_:1})):k(``,!0),e.capabilities.inputSelect?(r(),M(O(K),{key:1,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.input`)),1)]),_:1})):k(``,!0)])])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),be(e,`audioEndpointId`)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.audioInput`)},{default:g(()=>[Ce(H[e].audioEndpointId).type===`select`?(r(),M(O(Ne),{key:0,modelValue:H[e].audioInputId,"onUpdate:modelValue":t=>H[e].audioInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.audioInputPlaceholder`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(q(H[e].audioEndpointId),e=>(r(),M(O(X),{key:String(e),label:Te(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(r(),M(O(ke),{key:1,modelValue:H[e].audioInputId,"onUpdate:modelValue":t=>H[e].audioInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.audioInputPlaceholder`),clearable:``},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]))]),_:2},1032,[`label`])):k(``,!0)],2),xe(e)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.audioVolume`)},{default:g(()=>[G(O(Xt),{modelValue:H[e].audioVolumePreset,"onUpdate:modelValue":t=>H[e].audioVolumePreset=t,min:0,max:100,"show-input":``},null,8,[`modelValue`,`onUpdate:modelValue`])]),_:2},1032,[`label`])):k(``,!0),P(`div`,{class:h(be(e,`sourceEndpointId`)?`grid grid-cols-2 gap-x-4`:``)},[G(O(J),{label:O(s)(`spacesModule.media.activities.slots.source`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].sourceEndpointId,"onUpdate:modelValue":t=>H[e].sourceEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(he),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},{default:g(()=>[P(`div`,Kr,[P(`span`,null,I(Ee(e)),1),P(`div`,qr,[e.capabilities.inputSelect?(r(),M(O(K),{key:0,size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`spacesModule.media.capabilities.input`)),1)]),_:1})):k(``,!0)])])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),be(e,`sourceEndpointId`)?(r(),M(O(J),{key:0,label:O(s)(`spacesModule.media.activities.overrides.sourceInput`)},{default:g(()=>[Ce(H[e].sourceEndpointId).type===`select`?(r(),M(O(Ne),{key:0,modelValue:H[e].sourceInputId,"onUpdate:modelValue":t=>H[e].sourceInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.sourceInputPlaceholder`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(q(H[e].sourceEndpointId),e=>(r(),M(O(X),{key:String(e),label:Te(e),value:String(e)},null,8,[`label`,`value`]))),128))]),_:2},1032,[`modelValue`,`onUpdate:modelValue`,`placeholder`])):(r(),M(O(ke),{key:1,modelValue:H[e].sourceInputId,"onUpdate:modelValue":t=>H[e].sourceInputId=t,placeholder:O(s)(`spacesModule.media.activities.overrides.sourceInputPlaceholder`),clearable:``},null,8,[`modelValue`,`onUpdate:modelValue`,`placeholder`]))]),_:2},1032,[`label`])):k(``,!0)],2),G(O(J),{label:O(s)(`spacesModule.media.activities.slots.remote`)},{default:g(()=>[G(O(Ne),{modelValue:H[e].remoteEndpointId,"onUpdate:modelValue":t=>H[e].remoteEndpointId=t,placeholder:O(s)(`spacesModule.media.activities.selectEndpoint`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(ge),e=>(r(),M(O(X),{key:e.endpointId,label:Ee(e),value:e.endpointId},null,8,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`onUpdate:modelValue`,`placeholder`])]),_:2},1032,[`label`]),fe[e]?(r(),M(O(je),{key:1,type:`error`,title:O(s)(`spacesModule.media.activities.saveError`),description:fe[e],"show-icon":``,closable:``,onClose:t=>fe[e]=null},null,8,[`title`,`description`,`onClose`])):k(``,!0)]),_:2},1024)]),_:2},1032,[`name`])),64))]),_:1},8,[`modelValue`]),P(`div`,Jr,[P(`div`,Yr,[G(O(N),{size:`small`,loading:O(y),onClick:Ve},{default:g(()=>[A(I(O(s)(`spacesModule.media.activities.applyDefaults`)),1)]),_:1},8,[`loading`]),O(f)&&O(f).state!==`deactivated`?(r(),M(O(N),{key:0,size:`small`,type:`warning`,loading:O(v),disabled:O(_),onClick:ze},{icon:g(()=>[G(O(V),{icon:`mdi:stop`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.media.activities.deactivate`)),1)]),_:1},8,[`loading`,`disabled`])):k(``,!0)]),P(`div`,Xr,I(O(s)(`spacesModule.media.activities.applyDefaultsHint`)),1)]),O(b)?(r(),M(O(je),{key:0,type:`error`,title:O(s)(`spacesModule.media.activities.activateFailed`),description:O(b),"show-icon":``,closable:``,onClose:n[1]||=e=>b.value=null},null,8,[`title`,`description`])):k(``,!0)],8,zr)),[[O(Se),se.value]])]),_:1},8,[`modelValue`,`title`]))}}),Qr={class:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-4`},$r=b({name:`SpaceDomainsSection`,__name:`space-domains-section`,props:{space:{}},setup(e,{expose:t}){let n=e,{t:i}=j(),a=it(),{lightingSignal:o,climateSignal:s,coversSignal:l,sensorSignal:d}=Tt(),f=U(!1),p=U(!1),m=U(!1),h=U(!1),g=U(!1),_=U(!1),v=U([]),y=e=>{switch(e){case Z.main:return`primary`;case Z.task:return`warning`;case Z.ambient:return`success`;case Z.accent:return`danger`;case Z.night:default:return`info`}},b=e=>{switch(e){case Z.main:return`mdi:lightbulb`;case Z.task:return`mdi:desk-lamp`;case Z.ambient:return`mdi:lightbulb-group`;case Z.accent:return`mdi:spotlight-beam`;case Z.night:return`mdi:weather-night`;default:return`mdi:lightbulb-outline`}},x=async()=>{if(n.space?.id){_.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/lighting/targets`,{params:{path:{id:n.space.id}}});if(t||!e){v.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}let s=[Z.main,Z.task,Z.ambient,Z.accent,Z.night,Z.other];v.value=Array.from(o.entries()).sort(([e],[t])=>s.indexOf(e)-s.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.lightingRoles.${e}`),type:y(e),icon:b(e),count:t}))}finally{_.value=!1}}},S=U(!1),C=U([]),w=e=>{switch(e){case Y.heating_only:return`danger`;case Y.cooling_only:return`primary`;case Y.auto:return`success`;case Y.auxiliary:return`warning`;default:return`info`}},E=e=>{switch(e){case Y.heating_only:return`mdi:fire`;case Y.cooling_only:return`mdi:snowflake`;case Y.auto:return`mdi:thermostat-auto`;case Y.auxiliary:return`mdi:radiator`;case Y.sensor:return`mdi:thermometer`;default:return`mdi:eye-off`}},D=async()=>{if(n.space?.id){S.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/climate/targets`,{params:{path:{id:n.space.id}}});if(t||!e){C.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role||e.role===Y.hidden)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}let s=[Y.heating_only,Y.cooling_only,Y.auto,Y.auxiliary,Y.sensor];C.value=Array.from(o.entries()).sort(([e],[t])=>s.indexOf(e)-s.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.climateRoles.${e}`),type:w(e),icon:E(e),count:t}))}finally{S.value=!1}}},O=U(!1),k=U([]),ee=e=>{switch(e){case We.primary:return`primary`;case We.blackout:return`danger`;case We.sheer:return`success`;case We.outdoor:return`warning`;default:return`info`}},A=e=>{switch(e){case We.primary:return`mdi:blinds`;case We.blackout:return`mdi:blinds-horizontal-closed`;case We.sheer:return`mdi:curtains`;case We.outdoor:return`mdi:window-shutter`;default:return`mdi:blinds-horizontal`}},te=async()=>{if(n.space?.id){O.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/covers/targets`,{params:{path:{id:n.space.id}}});if(t||!e){k.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}let s=[We.primary,We.blackout,We.sheer,We.outdoor,We.hidden];k.value=Array.from(o.entries()).sort(([e],[t])=>s.indexOf(e)-s.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.coversRoles.${e}`),type:ee(e),icon:A(e),count:t}))}finally{O.value=!1}}},ne=U(!1),re=U([]),ie=e=>{switch(e){case ve.ENVIRONMENT:return`success`;case ve.SAFETY:return`danger`;case ve.SECURITY:return`warning`;case ve.AIR_QUALITY:return`info`;case ve.ENERGY:return`primary`;default:return`info`}},N=e=>{switch(e){case ve.ENVIRONMENT:return`mdi:thermometer`;case ve.SAFETY:return`mdi:shield-alert`;case ve.SECURITY:return`mdi:motion-sensor`;case ve.AIR_QUALITY:return`mdi:air-filter`;case ve.ENERGY:return`mdi:lightning-bolt`;default:return`mdi:chart-line`}},F=async()=>{if(n.space?.id){ne.value=!0;try{let{data:e,error:t}=await a.client.GET(`/${B}/${Me}/spaces/{id}/sensors/targets`,{params:{path:{id:n.space.id}}});if(t||!e){re.value=[];return}let r=e.data??[],o=new Map;for(let e of r){if(!e.role||e.role===ve.HIDDEN)continue;let t=e.role;o.set(t,(o.get(t)??0)+1)}re.value=Array.from(o.entries()).sort(([e],[t])=>xe.indexOf(e)-xe.indexOf(t)).map(([e,t])=>({label:i(`spacesModule.sensorRoles.${e}`),type:ie(e),icon:N(e),count:t}))}finally{ne.value=!1}}},{fetchEndpoints:I,fetchBindings:R,findBindingByActivity:ae}=Et(z(()=>n.space?.id)),oe=U(!1),V=U([]),se=[Q.watch,Q.listen,Q.gaming,Q.background],ce=async()=>{if(n.space?.id){oe.value=!0;try{await Promise.all([I(),R()]);let e=[];for(let t of se){let n=ae(t);if(!n)continue;let r=[n.displayEndpointId,n.audioEndpointId,n.sourceEndpointId,n.remoteEndpointId].filter(Boolean).length;e.push({label:i(`spacesModule.media.activityLabels.${t}`),type:_t(t),icon:St(t),count:r})}V.value=e}catch{V.value=[]}finally{oe.value=!1}}},le=z(()=>[{key:`lighting`,icon:`mdi:lightbulb`,iconColor:`warning`,title:i(`spacesModule.detail.domains.lighting.title`),description:i(`spacesModule.detail.domains.lighting.description`),tags:v.value,loading:_.value,openDialog:()=>{f.value=!0}},{key:`climate`,icon:`mdi:thermostat`,iconColor:`danger`,title:i(`spacesModule.detail.domains.climate.title`),description:i(`spacesModule.detail.domains.climate.description`),tags:C.value,loading:S.value,openDialog:()=>{p.value=!0}},{key:`covers`,icon:`mdi:blinds`,iconColor:`primary`,title:i(`spacesModule.detail.domains.covers.title`),description:i(`spacesModule.detail.domains.covers.description`),tags:k.value,loading:O.value,openDialog:()=>{m.value=!0}},{key:`sensor`,icon:`mdi:chart-bell-curve`,iconColor:`success`,title:i(`spacesModule.detail.domains.sensor.title`),description:i(`spacesModule.detail.domains.sensor.description`),tags:re.value,loading:ne.value,openDialog:()=>{h.value=!0}},{key:`media`,icon:`mdi:play-box-multiple`,iconColor:`info`,title:i(`spacesModule.detail.domains.media.title`),description:i(`spacesModule.detail.domains.media.description`),tags:V.value,loading:oe.value,openDialog:()=>{g.value=!0}}]),H=()=>{x(),D(),te(),F(),ce()};T(()=>o?.value,()=>{n.space?.id&&x()}),T(()=>s?.value,()=>{n.space?.id&&D()}),T(()=>l?.value,()=>{n.space?.id&&te()}),T(()=>d?.value,()=>{n.space?.id&&F()}),T(()=>n.space?.id,e=>{e&&H()});let ue=()=>{x()},de=()=>{D()},fe=()=>{te()},pe=()=>{F()},me=()=>{ce()};return u(()=>{n.space?.id&&H()}),t({reload:H}),(e,t)=>(r(),W(L,null,[P(`div`,Qr,[(r(!0),W(L,null,c(le.value,e=>(r(),M(Rr,{key:e.key,icon:e.icon,"icon-color":e.iconColor,title:e.title,description:e.description,tags:e.tags,loading:e.loading,onClick:t=>e.openDialog()},null,8,[`icon`,`icon-color`,`title`,`description`,`tags`,`loading`,`onClick`]))),128))]),G(Er,{visible:f.value,"onUpdate:visible":t[0]||=e=>f.value=e,space:n.space,onRolesChanged:ue},null,8,[`visible`,`space`]),G(Dr,{visible:p.value,"onUpdate:visible":t[1]||=e=>p.value=e,space:n.space,onRolesChanged:de},null,8,[`visible`,`space`]),G(Or,{visible:m.value,"onUpdate:visible":t[2]||=e=>m.value=e,space:n.space,onRolesChanged:fe},null,8,[`visible`,`space`]),G(kr,{visible:h.value,"onUpdate:visible":t[3]||=e=>h.value=e,space:n.space,onRolesChanged:pe},null,8,[`visible`,`space`]),G(Zr,{visible:g.value,"onUpdate:visible":t[4]||=e=>g.value=e,space:n.space,onBindingsChanged:me},null,8,[`visible`,`space`])],64))}}),ei={class:`grid m-0`},ti={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ni={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},ri={class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ii={class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},ai={key:0,class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},oi={key:1,class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center min-w-[8rem]`},si={key:2,class:`b-b b-b-solid b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ci={key:3,class:`col-start-2 b-b b-b-solid m-0 p-2 flex items-center gap-2 min-w-[8rem]`},li={key:4,class:`b-r b-r-solid py-3 px-2 flex items-center justify-end`,style:{background:`var(--el-fill-color-light)`}},ui={key:5,class:`col-start-2 m-0 p-2 flex items-center gap-2 min-w-[8rem]`},di={class:`flex items-center gap-1`},fi={key:1,class:`text-gray-400 text-sm`},pi={class:`flex items-center gap-2`},mi=b({name:`SpaceDetail`,__name:`space-detail`,props:{space:{}},setup(e){let t=e,{t:i}=j(),a=Be(),{spaces:o,firstLoadFinished:s,fetchSpaces:l}=ht(),{editSpace:d}=bt(z(()=>t.space?.id));u(async()=>{s.value||await l().catch(()=>{})});let f=U(null),h=U(!1),_=U(!1),v=U(null),y=U(null),b=U(!1),x=z(()=>o.value.filter(e=>!(e.type!==q.ZONE||!ze(e.category)))),S=z(()=>t.space?.parentId?o.value.find(e=>e.id===t.space?.parentId)??null:null),C=()=>{_.value=!0,y.value=t.space?.parentId??null,f.value=t.space?.parentId??null,b.value=!1,n(()=>{v.value?.focus()})},w=()=>{setTimeout(()=>{!b.value&&!h.value&&_.value&&(_.value=!1),b.value=!1},200)},E=e=>{_.value&&e.key===`Escape`&&(f.value=y.value,_.value=!1,b.value=!1)},D=async e=>{if(!t.space||e===t.space.parentId){_.value=!1,b.value=!1;return}b.value=!0,h.value=!0;try{await d({name:t.space.name,parentId:e}),a.success(i(`spacesModule.messages.edited`,{space:t.space.name})),_.value=!1,b.value=!1}catch{f.value=y.value,a.error(i(`spacesModule.messages.saveError`)),_.value=!1,b.value=!1}finally{h.value=!1}};return T(()=>t.space?.parentId??null,e=>{_.value||(f.value=e,y.value=e)},{immediate:!0}),u(()=>{document.addEventListener(`keydown`,E)}),p(()=>{document.removeEventListener(`keydown`,E)}),(t,n)=>(r(),M(O(at),{class:`mt-2`,"body-class":`p-0!`},{default:g(()=>[P(`dl`,ei,[P(`dt`,ti,I(O(i)(`spacesModule.fields.spaces.name.title`)),1),P(`dd`,ni,[G(O(De),null,{default:g(()=>[A(I(e.space.name),1)]),_:1})]),P(`dt`,ri,I(O(i)(`spacesModule.fields.spaces.type.title`)),1),P(`dd`,ii,[G(O(De),null,{default:g(()=>[A(I(O(i)(`spacesModule.misc.types.${e.space.type}`)),1)]),_:1})]),e.space.description?(r(),W(`dt`,ai,I(O(i)(`spacesModule.fields.spaces.description.title`)),1)):k(``,!0),e.space.description?(r(),W(`dd`,oi,[G(O(De),null,{default:g(()=>[A(I(e.space.description),1)]),_:1})])):k(``,!0),e.space.icon?(r(),W(`dt`,si,I(O(i)(`spacesModule.fields.spaces.icon.title`)),1)):k(``,!0),e.space.icon?(r(),W(`dd`,ci,[G(O(m),null,{default:g(()=>[G(O(V),{icon:e.space.icon},null,8,[`icon`])]),_:1}),G(O(De),null,{default:g(()=>[A(I(e.space.icon),1)]),_:1})])):k(``,!0),e.space.type===O(q).ROOM?(r(),W(`dt`,li,I(O(i)(`spacesModule.detail.parentZone.title`)),1)):k(``,!0),e.space.type===O(q).ROOM?(r(),W(`dd`,ui,[_.value?(r(),M(O(Ne),{key:1,ref_key:`floorSelectRef`,ref:v,modelValue:f.value,"onUpdate:modelValue":n[0]||=e=>f.value=e,placeholder:O(i)(`spacesModule.detail.parentZone.select`),clearable:``,size:`small`,class:`max-w-[250px]`,loading:h.value,onChange:D,onBlur:w},{default:g(()=>[(r(!0),W(L,null,c(x.value,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`div`,pi,[G(O(V),{icon:e.icon||`mdi:home-floor-1`},null,8,[`icon`]),P(`span`,null,I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`modelValue`,`placeholder`,`loading`])):(r(),W(`div`,{key:0,class:`flex items-center gap-2 cursor-pointer hover:opacity-70`,onClick:C},[S.value?(r(),M(O(K),{key:0,type:`success`,size:`small`},{default:g(()=>[P(`div`,di,[G(O(V),{icon:S.value.icon||`mdi:home-floor-1`},null,8,[`icon`]),A(` `+I(S.value.name),1)])]),_:1})):(r(),W(`span`,fi,I(O(i)(`spacesModule.detail.parentZone.none`)),1))]))])):k(``,!0)])]),_:1}))}}),hi={class:`flex items-center gap-2`},gi={class:`font-medium`},_i={key:0,class:`text-xs text-gray-500`},vi={class:`flex items-center gap-2 justify-end`},yi={key:0,class:`h-full w-full leading-normal`},bi={key:1,class:`h-full w-full leading-normal`},xi={class:`mb-4`},Si=b({name:`SpaceDevicesSection`,__name:`space-devices-section`,props:{spaceId:{},spaceType:{}},emits:[`open-add-dialog`],setup(t,{expose:n,emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),{roomSpaces:d}=ht(),{devices:f,loading:p,firstLoadFinished:m,fetchDevices:h,removeDevice:_,reassignDevice:v}=wt(se(a,`spaceId`),se(a,`spaceType`)),y=U(!1),b=U(null),x=U(null),S=U(!1),C=e=>({generic:`mdi:devices`,lighting:`mdi:lightbulb`,switcher:`mdi:toggle-switch`,thermostat:`mdi:thermostat`,sensor:`mdi:gauge`,valve:`mdi:pipe-valve`,media:`mdi:cast`,camera:`mdi:camera`,door:`mdi:door`,lock:`mdi:lock`,window_covering:`mdi:blinds`})[e]||`mdi:devices`,w=()=>{o(`open-add-dialog`)},T=e=>{b.value=e,x.value=null,y.value=!0},E=async()=>{if(b.value){S.value=!0;try{await v(b.value.id,x.value),y.value=!1,l.success(s(`spacesModule.messages.edited`,{space:b.value.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}finally{S.value=!1}}},D=e=>{Fe.confirm(s(`spacesModule.detail.devices.confirmRemove`,{name:e.name}),s(`spacesModule.detail.devices.removeHeading`),{confirmButtonText:s(`spacesModule.buttons.yes.title`),cancelButtonText:s(`spacesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await _(e.id),l.success(s(`spacesModule.detail.devices.removed`,{name:e.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}}).catch(()=>{l.info(s(`spacesModule.detail.devices.removeCanceled`))})};return u(async()=>{m.value||await h()}),n({openAddDialog:w,fetchDevices:h}),(t,n)=>(r(),W(L,null,[e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.detail.devices.loading`),data:O(f),"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[O(p)?(r(),W(`div`,yi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(r(),W(`div`,bi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.detail.devices.empty`)),1)]),extra:g(()=>[G(O(N),{type:`primary`,plain:``,onClick:w},{icon:g(()=>[G(O(V),{icon:`mdi:plus`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.devices.add`)),1)]),_:1})]),_:1})]))]),default:g(()=>[G(O($),{label:O(s)(`spacesModule.onboarding.deviceName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,hi,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:C(e.category),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[P(`div`,gi,I(e.name),1),e.description?(r(),W(`div`,_i,I(e.description),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.table.columns.category`),width:`150`},{default:g(({row:e})=>[G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`devicesModule.categories.devices.${e.category}`)),1)]),_:2},1024)]),_:1},8,[`label`]),G(O($),{label:O(s)(`devicesModule.table.devices.columns.state.title`),width:`100`,align:`center`},{default:g(({row:e})=>[G(O(K),{type:e.status?.online?`success`:`danger`,size:`small`},{default:g(()=>[A(I(e.status?.online?`Online`:`Offline`),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:``,width:a.spaceType===O(q).ZONE?110:220,align:`right`},{default:g(({row:e})=>[P(`div`,vi,[a.spaceType===O(q).ROOM?(r(),M(O(N),{key:0,type:`warning`,plain:``,size:`small`,onClick:t=>T(e)},{icon:g(()=>[G(O(V),{icon:`mdi:swap-horizontal`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.devices.reassign`)),1)]),_:1},8,[`onClick`])):k(``,!0),G(O(N),{type:`danger`,plain:``,size:`small`,onClick:t=>D(e)},{icon:g(()=>[G(O(V),{icon:`mdi:close`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.devices.remove`)),1)]),_:1},8,[`onClick`])])]),_:1},8,[`width`])]),_:1},8,[`element-loading-text`,`data`])),[[O(Se),O(p)]]),G(O(tt),{modelValue:y.value,"onUpdate:modelValue":n[2]||=e=>y.value=e,title:O(s)(`spacesModule.detail.devices.reassign`),width:`400px`},{footer:g(()=>[G(O(N),{onClick:n[1]||=e=>y.value=!1},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:S.value,onClick:E},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]),default:g(()=>[P(`p`,xi,I(O(s)(`spacesModule.detail.devices.selectRoom`)),1),G(O(Ne),{modelValue:x.value,"onUpdate:modelValue":n[0]||=e=>x.value=e,placeholder:O(s)(`spacesModule.onboarding.selectSpace`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(d),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id,disabled:e.id===a.spaceId},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`modelValue`,`title`])],64))}}),Ci={class:`flex items-center gap-2`},wi={class:`font-medium`},Ti={key:0,class:`text-xs text-gray-500`},Ei={class:`flex items-center gap-2 justify-end`},Di={key:0,class:`h-full w-full leading-normal`},Oi={key:1,class:`h-full w-full leading-normal`},ki={class:`mb-4`},Ai=b({name:`SpaceScenesSection`,__name:`space-scenes-section`,props:{spaceId:{}},emits:[`open-add-dialog`],setup(t,{expose:n,emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),{spaces:d}=ht(),{scenes:f,loading:p,firstLoadFinished:m,fetchScenes:h,reassignScene:_,removeScene:v}=gt(se(a,`spaceId`)),y=U(!1),b=U(null),x=U(null),S=U(!1),C=e=>e.icon?e.icon:At[e.category]||At[Dt.GENERIC],w=()=>{o(`open-add-dialog`)},T=e=>{b.value=e,x.value=null,y.value=!0},E=async()=>{if(b.value){S.value=!0;try{await _(b.value.id,x.value),y.value=!1,l.success(s(`spacesModule.detail.scenes.reassigned`,{name:b.value.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}finally{S.value=!1}}},D=e=>{Fe.confirm(s(`spacesModule.detail.scenes.confirmRemove`,{name:e.name}),s(`spacesModule.detail.scenes.removeHeading`),{confirmButtonText:s(`spacesModule.buttons.yes.title`),cancelButtonText:s(`spacesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await v(e.id),l.success(s(`spacesModule.detail.scenes.removed`,{name:e.name}))}catch{l.error(s(`spacesModule.messages.saveError`))}}).catch(()=>{l.info(s(`spacesModule.detail.scenes.removeCanceled`))})};return u(async()=>{m.value||await h()}),n({openAddDialog:w,fetchScenes:h}),(t,n)=>(r(),W(L,null,[e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.detail.scenes.loading`),data:O(f),"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[O(p)?(r(),W(`div`,Di,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(r(),W(`div`,Oi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.detail.scenes.empty`)),1)]),extra:g(()=>[G(O(N),{type:`primary`,plain:``,onClick:w},{icon:g(()=>[G(O(V),{icon:`mdi:plus`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.scenes.add`)),1)]),_:1})]),_:1})]))]),default:g(()=>[G(O($),{label:O(s)(`spacesModule.detail.scenes.name`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,Ci,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:C(e),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[P(`div`,wi,I(e.name),1),e.description?(r(),W(`div`,Ti,I(e.description),1)):k(``,!0)])])]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.detail.scenes.category`),width:`150`},{default:g(({row:e})=>[G(O(K),{size:`small`,type:`info`},{default:g(()=>[A(I(O(s)(`scenes.categories.${e.category}`)),1)]),_:2},1024)]),_:1},8,[`label`]),G(O($),{label:O(s)(`spacesModule.detail.scenes.status`),width:`100`,align:`center`},{default:g(({row:e})=>[G(O(K),{type:e.enabled?`success`:`info`,size:`small`},{default:g(()=>[A(I(e.enabled?O(s)(`spacesModule.detail.scenes.enabled`):O(s)(`spacesModule.detail.scenes.disabled`)),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:``,width:`220`,align:`right`},{default:g(({row:e})=>[P(`div`,Ei,[G(O(N),{type:`warning`,plain:``,size:`small`,onClick:t=>T(e)},{icon:g(()=>[G(O(V),{icon:`mdi:swap-horizontal`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.scenes.reassign`)),1)]),_:1},8,[`onClick`]),G(O(N),{type:`danger`,plain:``,size:`small`,onClick:t=>D(e)},{icon:g(()=>[G(O(V),{icon:`mdi:close`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.scenes.remove`)),1)]),_:1},8,[`onClick`])])]),_:1})]),_:1},8,[`element-loading-text`,`data`])),[[O(Se),O(p)]]),G(O(tt),{modelValue:y.value,"onUpdate:modelValue":n[2]||=e=>y.value=e,title:O(s)(`spacesModule.detail.scenes.reassign`),width:`400px`},{footer:g(()=>[G(O(N),{onClick:n[1]||=e=>y.value=!1},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:S.value,onClick:E},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]),default:g(()=>[P(`p`,ki,I(O(s)(`spacesModule.detail.scenes.selectSpace`)),1),G(O(Ne),{modelValue:x.value,"onUpdate:modelValue":n[0]||=e=>x.value=e,placeholder:O(s)(`spacesModule.onboarding.selectSpace`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(d),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id,disabled:e.id===a.spaceId},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`modelValue`,`title`])],64))}}),ji={class:`flex items-center gap-2`},Mi={class:`block`},Ni={key:1,class:`font-medium`},Pi={class:`flex items-center gap-2 justify-end`},Fi={key:0,class:`h-full w-full leading-normal`},Ii={key:1,class:`h-full w-full leading-normal`},Li={class:`mb-4`},Ri=b({name:`SpaceDisplaysSection`,__name:`space-displays-section`,props:{spaceId:{}},emits:[`open-add-dialog`],setup(t,{expose:n,emit:i}){let a=t,o=i,{t:s}=j(),l=Be(),{roomSpaces:d}=ht(),{displays:f,loading:p,fetchDisplays:m,removeDisplay:h,reassignDisplay:_}=yt(se(a,`spaceId`)),v=U(!1),y=U(null),b=U(null),x=U(!1),S=()=>{o(`open-add-dialog`)},C=e=>{y.value=e,b.value=null,v.value=!0},w=async()=>{if(y.value){x.value=!0;try{await _(y.value.id,b.value),v.value=!1,l.success(s(`spacesModule.messages.edited`,{space:y.value.name||y.value.macAddress}))}catch{l.error(s(`spacesModule.messages.saveError`))}finally{x.value=!1}}},T=e=>{let t=e.name||e.macAddress;Fe.confirm(s(`spacesModule.detail.displays.confirmRemove`,{name:t}),s(`spacesModule.detail.displays.removeHeading`),{confirmButtonText:s(`spacesModule.buttons.yes.title`),cancelButtonText:s(`spacesModule.buttons.no.title`),type:`warning`}).then(async()=>{try{await h(e.id),l.success(s(`spacesModule.detail.displays.removed`,{name:t}))}catch{l.error(s(`spacesModule.messages.saveError`))}}).catch(()=>{l.info(s(`spacesModule.detail.displays.removeCanceled`))})};return u(async()=>{await m()}),n({openAddDialog:S,fetchDisplays:m}),(t,n)=>(r(),W(L,null,[e((r(),M(O(ct),{"element-loading-text":O(s)(`spacesModule.detail.displays.loading`),data:O(f),"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[O(p)?(r(),W(`div`,Fi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:database-refresh`})]),_:1})]),_:1})])):(r(),W(`div`,Ii,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(s)(`spacesModule.detail.displays.empty`)),1)]),extra:g(()=>[G(O(N),{type:`primary`,plain:``,onClick:S},{icon:g(()=>[G(O(V),{icon:`mdi:plus`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.displays.add`)),1)]),_:1})]),_:1})]))]),default:g(()=>[G(O($),{label:O(s)(`spacesModule.onboarding.displayName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,ji,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:`mdi:monitor`,class:`w[20px] h[20px]`})]),_:1}),P(`div`,null,[e.name?(r(),W(L,{key:0},[P(`strong`,Mi,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.macAddress),1)]),_:2},1024)],64)):(r(),W(`div`,Ni,I(e.macAddress),1))])])]),_:1},8,[`label`]),G(O($),{label:O(s)(`displaysModule.table.columns.state.title`),width:`100`,align:`center`},{default:g(({row:e})=>[G(O(K),{type:e.online?`success`:`danger`,size:`small`},{default:g(()=>[A(I(e.online?`Online`:`Offline`),1)]),_:2},1032,[`type`])]),_:1},8,[`label`]),G(O($),{label:``,width:`220`,align:`right`},{default:g(({row:e})=>[P(`div`,Pi,[G(O(N),{type:`warning`,plain:``,size:`small`,onClick:t=>C(e)},{icon:g(()=>[G(O(V),{icon:`mdi:swap-horizontal`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.displays.reassign`)),1)]),_:1},8,[`onClick`]),G(O(N),{type:`danger`,plain:``,size:`small`,onClick:t=>T(e)},{icon:g(()=>[G(O(V),{icon:`mdi:close`})]),default:g(()=>[A(` `+I(O(s)(`spacesModule.detail.displays.remove`)),1)]),_:1},8,[`onClick`])])]),_:1})]),_:1},8,[`element-loading-text`,`data`])),[[O(Se),O(p)]]),G(O(tt),{modelValue:v.value,"onUpdate:modelValue":n[2]||=e=>v.value=e,title:O(s)(`spacesModule.detail.displays.reassign`),width:`400px`},{footer:g(()=>[G(O(N),{onClick:n[1]||=e=>v.value=!1},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.cancel.title`)),1)]),_:1}),G(O(N),{type:`primary`,loading:x.value,onClick:w},{default:g(()=>[A(I(O(s)(`spacesModule.buttons.save.title`)),1)]),_:1},8,[`loading`])]),default:g(()=>[P(`p`,Li,I(O(s)(`spacesModule.detail.displays.selectRoom`)),1),G(O(Ne),{modelValue:b.value,"onUpdate:modelValue":n[0]||=e=>b.value=e,placeholder:O(s)(`spacesModule.onboarding.selectSpace`),clearable:``,class:`w-full`},{default:g(()=>[(r(!0),W(L,null,c(O(d),e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id,disabled:e.id===a.spaceId},null,8,[`label`,`value`,`disabled`]))),128))]),_:1},8,[`modelValue`,`placeholder`])]),_:1},8,[`modelValue`,`title`])],64))}}),zi={key:0,class:`h-full w-full leading-normal`},Bi={key:1,class:`h-full w-full leading-normal`},Vi={class:`flex items-center gap-2`},Hi={class:`block text-sm`},Ui={key:1,class:`font-medium`},Wi={key:1,class:`text-gray-400 text-sm`},Gi=b({name:`SpaceAddDeviceDialog`,__name:`space-add-device-dialog`,props:{visible:{type:Boolean},spaceId:{},spaceType:{}},emits:[`update:visible`,`device-added`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Be(),{devices:s}=jt(),{findById:c}=ht(),l=U(``),u=U(null),{devices:d,addDevice:f}=wt(z(()=>n.spaceId),z(()=>n.spaceType)),p=z(()=>new Set(d.value.map(e=>e.id))),m=z(()=>s.value.filter(e=>n.spaceType===q.ZONE?!p.value.has(e.id):e.roomId!==n.spaceId).sort((e,t)=>e.name.localeCompare(t.name))),h=z(()=>(l.value.trim()?m.value.filter(e=>{let t=l.value.toLowerCase();return e.name.toLowerCase().includes(t)||e.description?.toLowerCase().includes(t)}):m.value).sort((e,t)=>e.name.localeCompare(t.name))),_=e=>({generic:`mdi:devices`,lighting:`mdi:lightbulb`,switcher:`mdi:toggle-switch`,thermostat:`mdi:thermostat`,sensor:`mdi:gauge`,valve:`mdi:pipe-valve`,media:`mdi:cast`,camera:`mdi:camera`,door:`mdi:door`,lock:`mdi:lock`,window_covering:`mdi:blinds`})[e.category]||`mdi:devices`,v=e=>c(e)?.name||`Unknown`,y=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),b=()=>{y.value=!1,l.value=``,u.value=null},x=async e=>{u.value=e.id;try{await f(e.id),o.success(a(`spacesModule.messages.edited`,{space:e.name})),i(`device-added`)}catch{o.error(a(`spacesModule.messages.saveError`))}finally{u.value=null}};return T(()=>n.visible,e=>{e||(l.value=``,u.value=null)}),(e,t)=>(r(),M(O(tt),{modelValue:y.value,"onUpdate:modelValue":t[1]||=e=>y.value=e,title:O(a)(`spacesModule.detail.devices.selectDevice`),class:`max-w-[700px]`,onClose:b},{footer:g(()=>[G(O(N),{onClick:b},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.close.title`)),1)]),_:1})]),default:g(()=>[G(O(ke),{modelValue:l.value,"onUpdate:modelValue":t[0]||=e=>l.value=e,placeholder:O(a)(`devicesModule.fields.devices.search.placeholder`),clearable:``,class:`mb-4`},{prefix:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1},8,[`modelValue`,`placeholder`]),G(O(ct),{data:h.value,"max-height":`400px`,"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[m.value.length===0?(r(),W(`div`,zi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(a)(`spacesModule.detail.devices.noAvailable`)),1)]),_:1})])):l.value.trim()&&h.value.length===0?(r(),W(`div`,Bi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:devices`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(a)(`devicesModule.texts.devices.noFilteredDevices`)),1)]),_:1})]),_:1})])):k(``,!0)]),default:g(()=>[G(O($),{label:O(a)(`spacesModule.onboarding.deviceName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,Vi,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:_(e),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[e.description?(r(),W(L,{key:0},[P(`strong`,Hi,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.description),1)]),_:2},1024)],64)):(r(),W(`div`,Ui,I(e.name),1))])])]),_:1},8,[`label`]),G(O($),{label:O(a)(`spacesModule.onboarding.assignedSpace`),width:`150`},{default:g(({row:e})=>[e.roomId?(r(),M(O(K),{key:0,size:`small`,type:`warning`},{default:g(()=>[A(I(v(e.roomId)),1)]),_:2},1024)):(r(),W(`span`,Wi,`-`))]),_:1},8,[`label`]),G(O($),{label:``,width:`150`,align:`right`},{default:g(({row:e})=>[G(O(N),{type:n.spaceType===O(q).ROOM&&e.roomId?`warning`:`default`,plain:``,size:`small`,loading:u.value===e.id,onClick:t=>x(e)},{icon:g(()=>[G(O(V),{icon:n.spaceType===O(q).ROOM&&e.roomId?`mdi:swap-horizontal`:`mdi:plus`},null,8,[`icon`])]),default:g(()=>[A(` `+I(n.spaceType===O(q).ROOM&&e.roomId?O(a)(`spacesModule.detail.devices.reassign`):O(a)(`spacesModule.detail.devices.assign`)),1)]),_:2},1032,[`type`,`loading`,`onClick`])]),_:1})]),_:1},8,[`data`])]),_:1},8,[`modelValue`,`title`]))}}),Ki={key:0,class:`h-full w-full leading-normal`},qi={key:1,class:`h-full w-full leading-normal`},Ji={class:`flex items-center gap-2`},Yi={class:`block text-sm`},Xi={key:1,class:`font-medium`},Zi={key:1,class:`text-gray-400 text-sm`},Qi=b({name:`SpaceAddSceneDialog`,__name:`space-add-scene-dialog`,props:{visible:{type:Boolean},spaceId:{}},emits:[`update:visible`,`scene-added`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Be(),{scenes:s,loaded:c,fetchScenes:l}=kt(),{editScene:d}=Ot(),{findById:f}=ht(),p=U(``),m=U(null),h=z(()=>s.value.filter(e=>e.draft?!1:e.primarySpaceId!==n.spaceId).sort((e,t)=>e.name.localeCompare(t.name))),_=z(()=>(p.value.trim()?h.value.filter(e=>{let t=p.value.toLowerCase();return e.name.toLowerCase().includes(t)||e.description?.toLowerCase().includes(t)}):h.value).sort((e,t)=>e.name.localeCompare(t.name))),v=e=>At[e.category]||At[Dt.GENERIC],y=e=>f(e)?.name||`Unknown`,b=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),x=()=>{b.value=!1,p.value=``,m.value=null},S=async e=>{m.value=e.id;try{await d({id:e.id,data:{primarySpaceId:n.spaceId}}),o.success(a(`spacesModule.detail.scenes.assigned`,{name:e.name})),i(`scene-added`)}catch{o.error(a(`spacesModule.messages.saveError`))}finally{m.value=null}};return u(async()=>{c.value||await l()}),T(()=>n.visible,e=>{e||(p.value=``,m.value=null)}),(e,t)=>(r(),M(O(tt),{modelValue:b.value,"onUpdate:modelValue":t[1]||=e=>b.value=e,title:O(a)(`spacesModule.detail.scenes.selectScene`),class:`max-w-[700px]`,onClose:x},{footer:g(()=>[G(O(N),{onClick:x},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.close.title`)),1)]),_:1})]),default:g(()=>[G(O(ke),{modelValue:p.value,"onUpdate:modelValue":t[0]||=e=>p.value=e,placeholder:O(a)(`spacesModule.detail.scenes.searchPlaceholder`),clearable:``,class:`mb-4`},{prefix:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1},8,[`modelValue`,`placeholder`]),G(O(ct),{data:_.value,"max-height":`400px`,"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[h.value.length===0?(r(),W(`div`,Ki,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(a)(`spacesModule.detail.scenes.noAvailable`)),1)]),_:1})])):p.value.trim()&&_.value.length===0?(r(),W(`div`,qi,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:play-box-multiple`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(a)(`spacesModule.detail.scenes.noFilteredScenes`)),1)]),_:1})]),_:1})])):k(``,!0)]),default:g(()=>[G(O($),{label:O(a)(`spacesModule.detail.scenes.name`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,Ji,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:v(e),class:`w[20px] h[20px]`},null,8,[`icon`])]),_:2},1024),P(`div`,null,[e.description?(r(),W(L,{key:0},[P(`strong`,Yi,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.description),1)]),_:2},1024)],64)):(r(),W(`div`,Xi,I(e.name),1))])])]),_:1},8,[`label`]),G(O($),{label:O(a)(`spacesModule.detail.scenes.assignedSpace`),width:`150`},{default:g(({row:e})=>[e.primarySpaceId?(r(),M(O(K),{key:0,size:`small`,type:`warning`},{default:g(()=>[A(I(y(e.primarySpaceId)),1)]),_:2},1024)):(r(),W(`span`,Zi,`-`))]),_:1},8,[`label`]),G(O($),{label:``,width:`150`,align:`right`},{default:g(({row:e})=>[G(O(N),{type:e.primarySpaceId?`warning`:`default`,plain:``,size:`small`,loading:m.value===e.id,onClick:t=>S(e)},{icon:g(()=>[G(O(V),{icon:e.primarySpaceId?`mdi:swap-horizontal`:`mdi:plus`},null,8,[`icon`])]),default:g(()=>[A(` `+I(e.primarySpaceId?O(a)(`spacesModule.detail.scenes.reassign`):O(a)(`spacesModule.detail.scenes.assign`)),1)]),_:2},1032,[`type`,`loading`,`onClick`])]),_:1})]),_:1},8,[`data`])]),_:1},8,[`modelValue`,`title`]))}}),$i={key:0,class:`h-full w-full leading-normal`},ea={key:1,class:`h-full w-full leading-normal`},ta={class:`flex items-center gap-2`},na={class:`block`},ra={key:1,class:`font-medium`},ia={key:1,class:`text-gray-400 text-sm`},aa=b({name:`SpaceAddDisplayDialog`,__name:`space-add-display-dialog`,props:{visible:{type:Boolean},spaceId:{}},emits:[`update:visible`,`display-added`],setup(e,{emit:t}){let n=e,i=t,{t:a}=j(),o=Be(),{displays:s}=mt(),{findById:c}=ht(),l=U(``),u=U(null),{reassignDisplay:d}=yt(z(()=>n.spaceId)),f=z(()=>s.value.filter(e=>e.role===`room`?e.roomId!==n.spaceId:!1).sort((e,t)=>{let n=e.name||e.macAddress,r=t.name||t.macAddress;return n.localeCompare(r)})),p=z(()=>(l.value.trim()?f.value.filter(e=>{let t=l.value.toLowerCase();return(e.name||``).toLowerCase().includes(t)||e.macAddress.toLowerCase().includes(t)}):f.value).sort((e,t)=>{let n=e.name||e.macAddress,r=t.name||t.macAddress;return n.localeCompare(r)})),m=e=>c(e)?.name||`Unknown`,h=z({get:()=>n.visible,set:e=>i(`update:visible`,e)}),_=()=>{h.value=!1,l.value=``,u.value=null},v=async e=>{u.value=e.id;try{await d(e.id,n.spaceId),o.success(a(`spacesModule.messages.edited`,{space:e.name||e.macAddress})),i(`display-added`)}catch{o.error(a(`spacesModule.messages.saveError`))}finally{u.value=null}};return T(()=>n.visible,e=>{e||(l.value=``,u.value=null)}),(e,t)=>(r(),M(O(tt),{modelValue:h.value,"onUpdate:modelValue":t[1]||=e=>h.value=e,title:O(a)(`spacesModule.detail.displays.selectDisplay`),class:`max-w-[700px]`,onClose:_},{footer:g(()=>[G(O(N),{onClick:_},{default:g(()=>[A(I(O(a)(`spacesModule.buttons.close.title`)),1)]),_:1})]),default:g(()=>[G(O(ke),{modelValue:l.value,"onUpdate:modelValue":t[0]||=e=>l.value=e,placeholder:O(a)(`displaysModule.fields.search.placeholder`),clearable:``,class:`mb-4`},{prefix:g(()=>[G(O(V),{icon:`mdi:magnify`})]),_:1},8,[`modelValue`,`placeholder`]),G(O(ct),{data:p.value,"max-height":`400px`,"table-layout":`fixed`,"row-key":`id`},{empty:g(()=>[f.value.length===0?(r(),W(`div`,$i,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:information`})]),_:1})]),title:g(()=>[A(I(O(a)(`spacesModule.detail.displays.noAvailable`)),1)]),_:1})])):l.value.trim()&&p.value.length===0?(r(),W(`div`,ea,[G(O(R),{class:`h-full w-full`},{icon:g(()=>[G(O(H),{size:80},{primary:g(()=>[G(O(V),{icon:`mdi:monitor`})]),secondary:g(()=>[G(O(V),{icon:`mdi:filter-multiple`})]),_:1})]),title:g(()=>[G(O(De),{class:`block`},{default:g(()=>[A(I(O(a)(`displaysModule.texts.noFilteredDisplays`)),1)]),_:1})]),_:1})])):k(``,!0)]),default:g(()=>[G(O($),{label:O(a)(`spacesModule.onboarding.displayName`),"min-width":`200`},{default:g(({row:e})=>[P(`div`,ta,[G(O(be),{size:32},{default:g(()=>[G(O(V),{icon:`mdi:monitor`,class:`w[20px] h[20px]`})]),_:1}),P(`div`,null,[e.name?(r(),W(L,{key:0},[P(`strong`,na,I(e.name),1),G(O(De),{size:`small`,class:`block leading-4`,truncated:``},{default:g(()=>[A(I(e.macAddress),1)]),_:2},1024)],64)):(r(),W(`div`,ra,I(e.macAddress),1))])])]),_:1},8,[`label`]),G(O($),{label:O(a)(`spacesModule.onboarding.assignedSpace`),width:`150`},{default:g(({row:e})=>[e.roomId?(r(),M(O(K),{key:0,size:`small`,type:`warning`},{default:g(()=>[A(I(m(e.roomId)),1)]),_:2},1024)):(r(),W(`span`,ia,`-`))]),_:1},8,[`label`]),G(O($),{label:``,width:`150`,align:`right`},{default:g(({row:e})=>[G(O(N),{type:e.roomId?`warning`:`default`,plain:``,size:`small`,loading:u.value===e.id,onClick:t=>v(e)},{icon:g(()=>[G(O(V),{icon:e.roomId?`mdi:swap-horizontal`:`mdi:plus`},null,8,[`icon`])]),default:g(()=>[A(` `+I(e.roomId?O(a)(`spacesModule.detail.displays.reassign`):O(a)(`spacesModule.detail.displays.assign`)),1)]),_:2},1032,[`type`,`loading`,`onClick`])]),_:1})]),_:1},8,[`data`])]),_:1},8,[`modelValue`,`title`]))}}),oa={class:`flex items-center gap-2`},sa={class:`flex items-center gap-2`},ca=b({name:`SpaceSelect`,__name:`space-select`,props:{modelValue:{},filter:{default:`all`},placeholder:{},clearable:{type:Boolean,default:!0},filterable:{type:Boolean,default:!0},disabled:{type:Boolean,default:!1}},emits:[`update:modelValue`],setup(e){let t=e,{t:n}=j(),{spaces:i,roomSpaces:a,zoneSpaces:o,fetching:s,findById:l}=ht(),u=z(()=>t.filter===`all`),d=z(()=>t.filter===`room`?a.value:t.filter===`zone`?o.value:i.value),f=z(()=>{let e=[],t=a.value.slice().sort((e,t)=>e.name.localeCompare(t.name)),r=o.value.slice().sort((e,t)=>e.name.localeCompare(t.name));return t.length>0&&e.push({type:q.ROOM,label:n(`spacesModule.labels.rooms`),options:t}),r.length>0&&e.push({type:q.ZONE,label:n(`spacesModule.labels.zones`),options:r}),e}),p=z(()=>{if(!t.modelValue)return null;let e=l(t.modelValue);return e?et(e):null});return(t,n)=>(r(),M(O(Ne),{"model-value":e.modelValue,placeholder:e.placeholder,clearable:e.clearable,filterable:e.filterable,disabled:e.disabled,loading:O(s),class:`w-full`,"onUpdate:modelValue":n[0]||=e=>t.$emit(`update:modelValue`,e)},{prefix:g(()=>[p.value?(r(),M(O(V),{key:0,icon:p.value,class:`text-lg`},null,8,[`icon`])):k(``,!0)]),default:g(()=>[u.value?(r(!0),W(L,{key:0},c(f.value,e=>(r(),M(O(rt),{key:e.type,label:e.label},{default:g(()=>[(r(!0),W(L,null,c(e.options,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`div`,oa,[G(O(V),{icon:O(et)(e),class:`text-lg`},null,8,[`icon`]),P(`span`,null,I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:2},1032,[`label`]))),128)):(r(!0),W(L,{key:1},c(d.value,e=>(r(),M(O(X),{key:e.id,label:e.name,value:e.id},{default:g(()=>[P(`div`,sa,[G(O(V),{icon:O(et)(e),class:`text-lg`},null,8,[`icon`]),P(`span`,null,I(e.name),1)])]),_:2},1032,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`clearable`,`filterable`,`disabled`,`loading`]))}});export{Ri as a,mi as c,En as d,mn as f,Gi as i,$r as l,Xt as m,aa as n,Ai as o,dn as p,Qi as r,Si as s,ca as t,Jn as u};