@fastybird/smart-panel-admin 1.1.0-alpha.14 → 1.1.0-alpha.16

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 (195) hide show
  1. package/dist/assets/{alert-yihCwD8R.js → alert-I-oSc4A8.js} +1 -1
  2. package/dist/assets/{card-add-form-DDw7ivch.js → card-add-form-CwVNfOa0.js} +1 -1
  3. package/dist/assets/{card-edit-form-B3hRZuWC.js → card-edit-form-CSyu6tst.js} +1 -1
  4. package/dist/assets/{checkbox-BnTF8QQI.js → checkbox-CtqO8Xm5.js} +1 -1
  5. package/dist/assets/{clamp-CQCGrFFp.js → clamp-_tCsf9IO.js} +1 -1
  6. package/dist/assets/{col-CzZne6ci.js → col-CQn4VXnk.js} +1 -1
  7. package/dist/assets/{collapse-DWbIsaf5.js → collapse-hdC45R5w.js} +1 -1
  8. package/dist/assets/{common-Be4p2bm6.js → common-D4Z2wgrj.js} +3 -3
  9. package/dist/assets/{components-CN5-Z9sY.js → components-C29cEP3E.js} +1 -1
  10. package/dist/assets/{components-DTfrniwZ.js → components-ChpIwZ2c.js} +1 -1
  11. package/dist/assets/{components-D2P4NPr0.js → components-CzhROY3R.js} +1 -1
  12. package/dist/assets/{components-Jhch-C1x.js → components-DMv2ePKp.js} +1 -1
  13. package/dist/assets/{components-B6KVVlvx.js → components-DOu6SAYU.js} +1 -1
  14. package/dist/assets/{components-CJLSmKhZ.js → components-EQDhXTcZ.js} +2 -2
  15. package/dist/assets/components-I6YluL_k.js +1 -0
  16. package/dist/assets/{components-CMRqWpX_.js → components-exNTKYiX.js} +1 -1
  17. package/dist/assets/{components-BlK8IDv9.js → components-g-LPjaFP.js} +1 -1
  18. package/dist/assets/{components-BSArkYBL.js → components-xe0tG-zv.js} +2 -2
  19. package/dist/assets/composables-2NuyfNXO.js +1 -0
  20. package/dist/assets/{composables-F1c0ZXok.js → composables-B3z1DCa7.js} +1 -1
  21. package/dist/assets/composables-BVhAEToZ.js +1 -0
  22. package/dist/assets/{composables-DyBL_gKO.js → composables-BgJl3zKR.js} +1 -1
  23. package/dist/assets/{composables-D84XXmKl.js → composables-CF8Jf15i.js} +1 -1
  24. package/dist/assets/composables-CPxmcJSb2.js +1 -0
  25. package/dist/assets/{composables-BgNPIoD2.js → composables-CYT0Ry4D.js} +1 -1
  26. package/dist/assets/{composables-Chz2jA57.js → composables-Cpk78oG1.js} +1 -1
  27. package/dist/assets/{composables-BzEjPyX0.js → composables-D2O7i4W5.js} +1 -1
  28. package/dist/assets/{composables-CsYg2_R5.js → composables-DLFP4TLA.js} +1 -1
  29. package/dist/assets/{composables-D_6On_O2.js → composables-DeXiqZuU.js} +1 -1
  30. package/dist/assets/{config-BAg35nXl.js → config-DAgVgX46.js} +2 -2
  31. package/dist/assets/{dashboard-BP8rehB1.js → dashboard-YUP0xrqH.js} +2 -2
  32. package/dist/assets/{dashboard.types-CoQH7Qfe.js → dashboard.types-CkyEAwdv.js} +1 -1
  33. package/dist/assets/{data-source-edit-form-CEOgesmu.js → data-source-edit-form-BlyvQ5Mk.js} +1 -1
  34. package/dist/assets/{descriptions-OOM-Fb43.js → descriptions-BHa0Pjk7.js} +1 -1
  35. package/dist/assets/devices-DQl0qr-s.js +2 -0
  36. package/dist/assets/{devices-virtual.constants-CJ8nxI4P.js → devices-virtual.constants-D0L6zhgQ.js} +1 -1
  37. package/dist/assets/devices.constants-DHQemX04.js +1 -0
  38. package/dist/assets/{dialog-2YGolnKK.js → dialog-4clb5GeY.js} +1 -1
  39. package/dist/assets/{drawer-ZByrLyWq.js → drawer-Dnlv6Zc7.js} +1 -1
  40. package/dist/assets/{form-0kI-cr8s.js → form-Wa6uIXea.js} +1 -1
  41. package/dist/assets/index-CV45di_J.css +1 -0
  42. package/dist/assets/{index-D2CTpnSM.js → index-W6henE9u.js} +5 -5
  43. package/dist/assets/{input-number-P-FTRt-j.js → input-number-Cqu-p2BC.js} +1 -1
  44. package/dist/assets/{integration-config-dialog-Ct2v_YF5.js → integration-config-dialog-DWcOAIcd.js} +1 -1
  45. package/dist/assets/{keys-DakHO8Vr.js → keys-BMDz3FOI.js} +1 -1
  46. package/dist/assets/{keys-DghNVBR5.js → keys-DMEIfK2a.js} +1 -1
  47. package/dist/assets/{layout-config-v_oQGjV4.js → layout-config-TRoVTCgx.js} +1 -1
  48. package/dist/assets/{layout-default-XbBPq_81.js → layout-default-CUOZ4MAi.js} +1 -1
  49. package/dist/assets/{layout-lock-2YeXM9of.js → layout-lock-C-s1eZ35.js} +1 -1
  50. package/dist/assets/layout-profile-CMTEn6TJ.js +1 -0
  51. package/dist/assets/{layout-profile-DGs-EjZZ.js → layout-profile-D1uL3lv-.js} +1 -1
  52. package/dist/assets/layout-sign-0Gx0uVg6.js +1 -0
  53. package/dist/assets/{layout-sign-U-HX1M_n.js → layout-sign-MILHx4Av.js} +1 -1
  54. package/dist/assets/{list-data-sources-adjust-DUMnlftH.js → list-data-sources-adjust-BRhmPWJF.js} +1 -1
  55. package/dist/assets/{list-locations-B_KTPYdW.js → list-locations-CE_JzOaE.js} +1 -1
  56. package/dist/assets/{list-users-BnLSxKig.js → list-users-1kC5_j5X.js} +1 -1
  57. package/dist/assets/{logs-entries.transformers-DLC8m8_x.js → logs-entries.transformers-Bp2zoFAY.js} +1 -1
  58. package/dist/assets/{mcp.exceptions-DY-0lLaB.js → mcp.exceptions-cay0WaYC.js} +1 -1
  59. package/dist/assets/{notifications.exceptions-COOX9nH5.js → notifications.exceptions-Deqj0F89.js} +1 -1
  60. package/dist/assets/{omit-CCKuCzp5.js → omit-Dl8Tg7dR.js} +1 -1
  61. package/dist/assets/{page-configure-BMkkMAO5.js → page-configure-Dn69RQ5P.js} +1 -1
  62. package/dist/assets/{page-configure-B-Ar9MA3.js → page-configure-Dz17Sp3H.js} +1 -1
  63. package/dist/assets/{pagination-tCwT80iV.js → pagination-BFOA9Lqt.js} +1 -1
  64. package/dist/assets/{radio-C3SNUtyn.js → radio-DvF3ArlX.js} +1 -1
  65. package/dist/assets/{scene-add-form-BoW3-DGd.js → scene-add-form-telggkNn.js} +1 -1
  66. package/dist/assets/{scene-edit-form-BuIwrWnr.js → scene-edit-form-D6fUKT6Q.js} +1 -1
  67. package/dist/assets/{schemas.utils-gKqZ9UX4.js → schemas.utils-fK_cgNcT.js} +1 -1
  68. package/dist/assets/{select-DhXPyxTf.js → select-CTZp3DyT.js} +1 -1
  69. package/dist/assets/{select-data-source-plugin-JdxhyaNg.js → select-data-source-plugin-BMvwgPrL.js} +1 -1
  70. package/dist/assets/{slider-Cy4bDJ2V.js → slider-CaVuBQD9.js} +1 -1
  71. package/dist/assets/{spaces-DgO_s8bw.js → spaces-DVdwHxsH.js} +2 -2
  72. package/dist/assets/{spaces-home-control.constants-CGCfIxbC.js → spaces-home-control.constants-BgmjmN0q.js} +1 -1
  73. package/dist/assets/{steps-n7W-efe3.js → steps-DuddYjrb.js} +1 -1
  74. package/dist/assets/{system-CD2XKcCX.js → system-EoTYvhDY.js} +2 -2
  75. package/dist/assets/{table-I-saZisX.js → table-CeNNpGH7.js} +1 -1
  76. package/dist/assets/{tabs-CoLOTPkl.js → tabs-CXWSFwGj.js} +1 -1
  77. package/dist/assets/{tile-detail-BdC6bNQ6.js → tile-detail-DrEapGjL.js} +1 -1
  78. package/dist/assets/{tile-edit-form-DkGWaIe5.js → tile-edit-form-CCaFW-XS.js} +1 -1
  79. package/dist/assets/{types-C4XLI6VR.js → types-CE88rjDb.js} +1 -1
  80. package/dist/assets/types-gvL9TxC-.js +1 -0
  81. package/dist/assets/{use-dialog-CQ0XM_6p.js → use-dialog-Dy1ldJel.js} +1 -1
  82. package/dist/assets/{use-ordered-children-Bf4bJLEh.js → use-ordered-children-DEKYVxDi.js} +1 -1
  83. package/dist/assets/{useBuddyChat-Be8nQBdr.js → useBuddyChat-BAy2-Ry5.js} +1 -1
  84. package/dist/assets/{useConfigModule-5WRiFhe8.js → useConfigModule-CJHOZRLY.js} +1 -1
  85. package/dist/assets/{useDataSources-Ct4AwM4K.js → useDataSources-XOQc7nLH.js} +1 -1
  86. package/dist/assets/{useDevicesPlugins-1qFZMfyo.js → useDevicesPlugins-DEYJEOHX.js} +1 -1
  87. package/dist/assets/useEventBus-CPELSGhQ.js +1 -0
  88. package/dist/assets/{useExtensions-CU8BwsSY.js → useExtensions-ChNl1Nvt.js} +1 -1
  89. package/dist/assets/{useGeolocation-Cq53_JVi.js → useGeolocation-Corncs7O.js} +1 -1
  90. package/dist/assets/{useLocation-C1jGf7ps.js → useLocation-BpcB0mED.js} +1 -1
  91. package/dist/assets/{useMcpClients-Ba0gBdaa.js → useMcpClients-DLp6nlKS.js} +1 -1
  92. package/dist/assets/{useModule-BqRjllB1.js → useModule-BzC-HPHF.js} +1 -1
  93. package/dist/assets/{useModules-CV4rTp9H.js → useModules-C_VhvJHC.js} +1 -1
  94. package/dist/assets/{useNumberFormat-Cjyy_ksr.js → useNumberFormat-BR5R6xq8.js} +1 -1
  95. package/dist/assets/{usePage-DccGV-jP.js → usePage-CafNhHit.js} +1 -1
  96. package/dist/assets/{usePersonalTokens-D_AQL9lY.js → usePersonalTokens-CzAHNnO2.js} +1 -1
  97. package/dist/assets/{usePlugin-Cqtg7k__.js → usePlugin-CQedVYWO.js} +1 -1
  98. package/dist/assets/{usePlugins-D2-Pd2HX.js → usePlugins-CLZiBdYY.js} +1 -1
  99. package/dist/assets/{useSpaces-BXdflM37.js → useSpaces-CPYe_mwZ.js} +1 -1
  100. package/dist/assets/{useUuid-B9e3LtCp.js → useUuid-D7PWqngt.js} +1 -1
  101. package/dist/assets/{view-buddy-chat-dyKTPDo2.js → view-buddy-chat-BedBKSKL.js} +1 -1
  102. package/dist/assets/{view-card-add-CnH-inyA.js → view-card-add-pt5m96qu.js} +1 -1
  103. package/dist/assets/{view-card-edit-BENeBcHV.js → view-card-edit-DXjl5oBU.js} +1 -1
  104. package/dist/assets/{view-channel-CU3JfWIe.js → view-channel-Ba138KV7.js} +1 -1
  105. package/dist/assets/{view-channel-add-DAN2U6GO.js → view-channel-add-DuoPUzeY.js} +1 -1
  106. package/dist/assets/{view-channel-edit-UmSF5GLP.js → view-channel-edit-DQ6tJADU.js} +1 -1
  107. package/dist/assets/{view-channel-property-add-Dv88UweR.js → view-channel-property-add-CnTLdMir.js} +1 -1
  108. package/dist/assets/{view-channel-property-edit-B4LBh545.js → view-channel-property-edit-1YMqTX0A.js} +1 -1
  109. package/dist/assets/{view-channels-4lEPD2E2.js → view-channels-CGqkcr4L.js} +1 -1
  110. package/dist/assets/{view-config-module-edit-lppvVF5G.js → view-config-module-edit-B5Bac46h.js} +1 -1
  111. package/dist/assets/{view-config-modules-CfZx9xuf.js → view-config-modules-Bay5nICT.js} +1 -1
  112. package/dist/assets/{view-config-plugin-edit-CZmu4clV.js → view-config-plugin-edit-C7tkLRb8.js} +1 -1
  113. package/dist/assets/{view-config-plugins-BXgIWoB4.js → view-config-plugins-Cb7qeQ6t.js} +1 -1
  114. package/dist/assets/{view-data-source-add-91aLO5pf.js → view-data-source-add-BwwcOapn.js} +1 -1
  115. package/dist/assets/{view-data-source-add-hwDgK-c2.js → view-data-source-add-C-YsEqNf.js} +1 -1
  116. package/dist/assets/{view-data-source-edit-Dkrok8aR.js → view-data-source-edit-3a7uStGk.js} +1 -1
  117. package/dist/assets/{view-data-source-edit-CJeuDbrE.js → view-data-source-edit-Bjpg7BqJ.js} +1 -1
  118. package/dist/assets/{view-device-uYeBFA9R.js → view-device-CbiJT-WF.js} +1 -1
  119. package/dist/assets/{view-device-add-n-q0Mz8S.js → view-device-add-BbaM0dhl.js} +1 -1
  120. package/dist/assets/{view-device-control-Cp-g_YME.js → view-device-control-DaaVC0p8.js} +1 -1
  121. package/dist/assets/{view-device-edit-DocPrD60.js → view-device-edit-Bmi8qely.js} +1 -1
  122. package/dist/assets/{view-devices-BD7h3l0B.js → view-devices-D3bJGe5R.js} +1 -1
  123. package/dist/assets/{view-devices-wizard-C2voYEbU.js → view-devices-wizard-Bie75MnV.js} +1 -1
  124. package/dist/assets/{view-display-BD5o2mG8.js → view-display-BPX9RiY5.js} +1 -1
  125. package/dist/assets/{view-display-edit-CFDGYH0S.js → view-display-edit-C1nr56vB.js} +1 -1
  126. package/dist/assets/{view-display-tokens-w7HCVkyw.js → view-display-tokens-ChsaJMyS.js} +1 -1
  127. package/dist/assets/{view-displays-t0qXiBm5.js → view-displays-DvlfLyrG.js} +1 -1
  128. package/dist/assets/{view-extension-detail-DdZcjMKN.js → view-extension-detail-DFw0OsMF.js} +1 -1
  129. package/dist/assets/{view-extensions-Br-djyy2.js → view-extensions-BA9i1fyS.js} +1 -1
  130. package/dist/assets/{view-location-aWULpud9.js → view-location-BOJ0Uja9.js} +1 -1
  131. package/dist/assets/{view-location-add-Cpl8k92w.js → view-location-add-B_PB1oaL.js} +1 -1
  132. package/dist/assets/{view-location-edit-CTWfLskv.js → view-location-edit-DYuz_sYs.js} +1 -1
  133. package/dist/assets/{view-locations-BCEjWSVc.js → view-locations-dclVguNJ.js} +1 -1
  134. package/dist/assets/{view-lock-screen-7nnGeAm1.js → view-lock-screen-C9W836P_.js} +1 -1
  135. package/dist/assets/{view-mcp-clients-Crn9F-mI.js → view-mcp-clients-CxGgawX9.js} +1 -1
  136. package/dist/assets/{view-mcp-oauth-consent-DQ4KkWj_.js → view-mcp-oauth-consent-B2aQFOBm.js} +1 -1
  137. package/dist/assets/{view-mcp-oauth-management-Kkg2HXaa.js → view-mcp-oauth-management-xnTPjJ36.js} +1 -1
  138. package/dist/assets/{view-notifications-CT3BL_tR.js → view-notifications-BKBYRF9F.js} +1 -1
  139. package/dist/assets/{view-onboarding-Bqusuomg.js → view-onboarding-BHdDgVMj.js} +1 -1
  140. package/dist/assets/{view-page-CY4erm62.js → view-page-DJwQBf8C.js} +1 -1
  141. package/dist/assets/{view-page-add-Ck9a0Url.js → view-page-add-CMkgrgRF.js} +1 -1
  142. package/dist/assets/{view-page-configure-B1TC0nD7.js → view-page-configure-JhXEhrod.js} +1 -1
  143. package/dist/assets/{view-page-configure-BhzroC3P.js → view-page-configure-ho3B4Gtr.js} +1 -1
  144. package/dist/assets/{view-page-data-source-add-DOf2qn92.js → view-page-data-source-add-CnP1yn09.js} +1 -1
  145. package/dist/assets/{view-page-data-source-edit-CeB830cc.js → view-page-data-source-edit-D5WExoYy.js} +1 -1
  146. package/dist/assets/{view-page-edit-DJhv78rC.js → view-page-edit-ubc81fqj.js} +1 -1
  147. package/dist/assets/{view-page-plugin-BxylNI0o.js → view-page-plugin-CtxG2AwO.js} +1 -1
  148. package/dist/assets/{view-pages--u0uAq2L.js → view-pages-CZR6c3uY.js} +1 -1
  149. package/dist/assets/{view-profile-general-YfUuJvfa.js → view-profile-general-CFUrEtJy.js} +1 -1
  150. package/dist/assets/{view-profile-security-HW58o6b4.js → view-profile-security-CM-xrNiL.js} +1 -1
  151. package/dist/assets/{view-remote-access-CNmz7M-Q.js → view-remote-access-DMcIAtbJ.js} +1 -1
  152. package/dist/assets/{view-scene-add-Chu7WP57.js → view-scene-add-H5f00zTk.js} +1 -1
  153. package/dist/assets/{view-scene-edit-CXhPK6-c.js → view-scene-edit-BYUTky-m.js} +1 -1
  154. package/dist/assets/{view-scenes-C40MSkwq.js → view-scenes-eWQiAb02.js} +1 -1
  155. package/dist/assets/{view-sign-in-pL5vMo3_.js → view-sign-in-D31IT93n.js} +1 -1
  156. package/dist/assets/{view-sign-up-BilpSpzy.js → view-sign-up-BFvb0t1U.js} +1 -1
  157. package/dist/assets/{view-simulator-device-wizard-DF5RWntc.js → view-simulator-device-wizard-xcGSPrEU.js} +1 -1
  158. package/dist/assets/{view-space-add-DH2JpSpG.js → view-space-add-DLF9C3Az.js} +1 -1
  159. package/dist/assets/{view-space-configure-BKKdjkjJ.js → view-space-configure-LA94Bfj9.js} +1 -1
  160. package/dist/assets/{view-space-edit-De3tqNaO.js → view-space-edit-CVBH6AaO.js} +1 -1
  161. package/dist/assets/{view-space-plugin-BQ0KTse6.js → view-space-plugin-DALFumLq.js} +1 -1
  162. package/dist/assets/{view-spaces-DPP7hz9z.js → view-spaces-BpplLq0s.js} +1 -1
  163. package/dist/assets/{view-spaces-wizard-BGwcAHwA.js → view-spaces-wizard-DTzT5Ajh.js} +1 -1
  164. package/dist/assets/{view-stats-CoTeuVhI.js → view-stats-DgbiVpuT.js} +1 -1
  165. package/dist/assets/{view-system-backups-DsIvX2hj.js → view-system-backups-BUaKjaoI.js} +1 -1
  166. package/dist/assets/{view-system-info-DrPg3X6D.js → view-system-info-DOVllJ0V.js} +1 -1
  167. package/dist/assets/{view-system-log-detail-lRDFdO1t.js → view-system-log-detail-D19o4Zoo.js} +1 -1
  168. package/dist/assets/{view-system-logs-6QitutQ2.js → view-system-logs-CnF-VVpx.js} +1 -1
  169. package/dist/assets/{view-tile-B8qmw39T.js → view-tile-DvsHTEes.js} +1 -1
  170. package/dist/assets/{view-tile-add-DZTJwie6.js → view-tile-add-ChtKYIGF.js} +1 -1
  171. package/dist/assets/{view-tile-add-BVuIqOqK.js → view-tile-add-DNOx9gjy.js} +1 -1
  172. package/dist/assets/{view-tile-data-source-add-BxXFKnyJ.js → view-tile-data-source-add-C4DB5pJI.js} +1 -1
  173. package/dist/assets/{view-tile-data-source-edit-Cd0TdY0M.js → view-tile-data-source-edit-BgVjSqCX.js} +1 -1
  174. package/dist/assets/{view-tile-edit-VGHWTKqe.js → view-tile-edit-C-qWFXGR.js} +1 -1
  175. package/dist/assets/{view-tile-edit-BmLhOuRu.js → view-tile-edit-CLNWeo9W.js} +1 -1
  176. package/dist/assets/{view-tile-edit-C4XMP2P4.js → view-tile-edit-pikK5iSE.js} +1 -1
  177. package/dist/assets/{view-user-add-Dp4jgsq7.js → view-user-add-CITnz-HU.js} +1 -1
  178. package/dist/assets/{view-user-edit-BKKDP-9i.js → view-user-edit-CdKYi6nv.js} +1 -1
  179. package/dist/assets/{view-users-DSOg0hNu.js → view-users-Dz1RKiyE.js} +1 -1
  180. package/dist/assets/{view-virtual-device-wizard-CuPl8CpA.js → view-virtual-device-wizard-CHj4A2oD.js} +1 -1
  181. package/dist/assets/{weather-Baz5jDm6.js → weather-Bd3vPXEz.js} +2 -2
  182. package/dist/assets/{weather-forecast.transformers-B4kjmFkm.js → weather-forecast.transformers-vk4s_2pl.js} +1 -1
  183. package/dist/index.html +95 -95
  184. package/package.json +1 -1
  185. package/dist/assets/components-5fhvzfND.js +0 -1
  186. package/dist/assets/composables-B-YqClP2.js +0 -1
  187. package/dist/assets/composables-D5PbebWI.js +0 -1
  188. package/dist/assets/composables-DXuIMKku2.js +0 -1
  189. package/dist/assets/devices-BigHPDnE.js +0 -2
  190. package/dist/assets/devices.constants-HX5whDWr.js +0 -1
  191. package/dist/assets/index-hWiJEHfB.css +0 -1
  192. package/dist/assets/layout-profile-DYJoyuR-.js +0 -1
  193. package/dist/assets/layout-sign-DicgjAC8.js +0 -1
  194. package/dist/assets/types-C55HbQe7.js +0 -1
  195. package/dist/assets/useEventBus-BQdZXy2X.js +0 -1
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as d,ci as f,ii as p,ji as m,jr as ee,k as h,kr as g,qi as _,ui as v,x as te,xr as y}from"./icon-with-child-CgZMNB3F.js";import{t as b}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as x,Er as S,Qr as C,Rr as w,Tr as ne,jr as re,vr as ie,yr as ae}from"./common-Be4p2bm6.js";import{t as oe}from"./alert-yihCwD8R.js";import{t as se}from"./useUuid-B9e3LtCp.js";import{t as ce}from"./common.constants-C6QiEtuS.js";import{d as T,f as E}from"./keys-DgS2vm-E.js";import{f as le}from"./types-C4XLI6VR.js";import{r as ue}from"./composables-CsYg2_R5.js";import"./dashboard.types-CoQH7Qfe.js";import{n as de,t as D}from"./select-data-source-plugin-JdxhyaNg.js";var O={class:`uppercase`},k={class:`flex flex-col overflow-hidden h-full`},A={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},j={class:`p-2`},M=[`id`],N=c({name:`ViewTileDataSourceAdd`,__name:`view-tile-data-source-add`,props:{tileId:{},tile:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:N}){let P=c,F=N,I=te(),{t:L}=d();b({title:L(`dashboardModule.meta.tiles.addDataSource.title`)});let{generate:R}=se(),{isMDDevice:z,isLGDevice:B}=ae(),{plugins:V}=le(),H=R(),U=u(!1),W=u(T.NONE),G=u(!1),K=u(!1),q=u(void 0),fe=r(()=>V.value.find(e=>(e.elements??[]).some(e=>e.type===q.value))),J=r(()=>(fe.value?.elements??[]).find(e=>e.type===q.value)),Y=r(()=>J.value&&J.value.schemas?.dataSourceAddFormSchema?J.value.schemas?.dataSourceAddFormSchema:ue),X=r(()=>{let e=[];return e.push({label:L(`dashboardModule.breadcrumbs.tiles.detail`),route:I.resolve({name:E.TILE,params:{id:P.tile?.id}})}),e.push({label:L(`dashboardModule.breadcrumbs.tiles.addDataSource`),route:I.resolve({name:E.TILE_ADD_DATA_SOURCE,params:{id:P.tile?.id}})}),e}),Z=()=>{re.confirm(L(`dashboardModule.texts.misc.confirmDiscard`),L(`dashboardModule.headings.misc.discard`),{confirmButtonText:L(`dashboardModule.buttons.yes.title`),cancelButtonText:L(`dashboardModule.buttons.no.title`),type:`warning`}).then(()=>{B.value?I.replace({name:E.TILE,params:{id:P.tile?.id}}):I.push({name:E.TILE,params:{id:P.tile?.id}})}).catch(()=>{})},Q=()=>{U.value=!0},$=()=>{B.value?I.replace({name:E.TILE,params:{id:P.tile?.id}}):I.push({name:E.TILE,params:{id:P.tile?.id}})};return f(()=>W.value,e=>{e===T.OK&&(B.value?I.replace({name:E.TILE,params:{id:P.tile?.id}}):I.push({name:E.TILE,params:{id:P.tile?.id}}))}),f(()=>K.value,e=>{F(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(y,null,[o(m(ne),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:database-cog-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(L)(`dashboardModule.headings.tiles.addDataSource`)),1)]),subtitle:v(()=>[a(_(m(L)(`dashboardModule.subHeadings.tiles.addDataSource`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(S),{key:0,align:m(x).LEFT,teleport:``,small:``,onClick:c[0]||=()=>K.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(S),{key:1,align:m(x).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,O,_(m(L)(`dashboardModule.buttons.save.title`)),1)]),_:1},8,[`align`])),o(m(ie),{items:X.value},null,8,[`items`]),n(`div`,k,[o(m(C),{class:`grow-1 p-2 md:px-4`},{default:v(()=>[o(D,{modelValue:q.value,"onUpdate:modelValue":c[1]||=e=>q.value=e},null,8,[`modelValue`]),o(m(w)),q.value?(l(),e(y,{key:0},[J.value?.components?.dataSourceAddForm===void 0?(l(),s(de,{key:1,id:m(H),"remote-form-submit":U.value,"onUpdate:remoteFormSubmit":c[6]||=e=>U.value=e,"remote-form-result":W.value,"onUpdate:remoteFormResult":c[7]||=e=>W.value=e,"remote-form-reset":G.value,"onUpdate:remoteFormReset":c[8]||=e=>G.value=e,"remote-form-changed":K.value,"onUpdate:remoteFormChanged":c[9]||=e=>K.value=e,type:q.value,parent:`tile`,"parent-id":P.tile.id,schema:Y.value},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`,`parent-id`,`schema`])):(l(),s(p(J.value?.components?.dataSourceAddForm),{key:0,id:m(H),"remote-form-submit":U.value,"onUpdate:remoteFormSubmit":c[2]||=e=>U.value=e,"remote-form-result":W.value,"onUpdate:remoteFormResult":c[3]||=e=>W.value=e,"remote-form-reset":G.value,"onUpdate:remoteFormReset":c[4]||=e=>G.value=e,"remote-form-changed":K.value,"onUpdate:remoteFormChanged":c[5]||=e=>K.value=e,parent:`tile`,"parent-id":P.tile.id,schema:Y.value},null,40,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`parent-id`,`schema`]))],64)):(l(),s(m(oe),{key:1,title:m(L)(`dashboardModule.headings.dataSources.selectPlugin`),description:m(L)(`dashboardModule.texts.dataSources.selectPlugin`),closable:!1,"show-icon":``,type:`info`},null,8,[`title`,`description`]))]),_:1}),m(z)?(l(),e(`div`,A,[n(`div`,j,[K.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(L)(`dashboardModule.buttons.discard.title`)),1)]),_:1})):g(``,!0),K.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(L)(`dashboardModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:m(ce),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[o(m(h),{loading:W.value===m(T).WORKING,disabled:W.value!==m(T).NONE,type:`primary`,onClick:Q},ee({default:v(()=>[a(` `+_(m(L)(`dashboardModule.buttons.save.title`)),1)]),_:2},[W.value===m(T).OK||W.value===m(T).ERROR?{name:`icon`,fn:v(()=>[W.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):W.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,M)])])):g(``,!0)])],64))}});export{N as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as d,ci as f,ii as p,ji as m,jr as ee,k as h,kr as g,qi as _,ui as v,x as te,xr as y}from"./icon-with-child-CgZMNB3F.js";import{t as b}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as x,Er as S,Qr as C,Rr as w,Tr as ne,jr as re,vr as ie,yr as ae}from"./common-D4Z2wgrj.js";import{t as oe}from"./alert-I-oSc4A8.js";import{t as se}from"./useUuid-D7PWqngt.js";import{t as ce}from"./common.constants-C6QiEtuS.js";import{d as T,f as E}from"./keys-DgS2vm-E.js";import{f as le}from"./types-CE88rjDb.js";import{r as ue}from"./composables-DLFP4TLA.js";import"./dashboard.types-CkyEAwdv.js";import{n as de,t as D}from"./select-data-source-plugin-BMvwgPrL.js";var O={class:`uppercase`},k={class:`flex flex-col overflow-hidden h-full`},A={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},j={class:`p-2`},M=[`id`],N=c({name:`ViewTileDataSourceAdd`,__name:`view-tile-data-source-add`,props:{tileId:{},tile:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:N}){let P=c,F=N,I=te(),{t:L}=d();b({title:L(`dashboardModule.meta.tiles.addDataSource.title`)});let{generate:R}=se(),{isMDDevice:z,isLGDevice:B}=ae(),{plugins:V}=le(),H=R(),U=u(!1),W=u(T.NONE),G=u(!1),K=u(!1),q=u(void 0),fe=r(()=>V.value.find(e=>(e.elements??[]).some(e=>e.type===q.value))),J=r(()=>(fe.value?.elements??[]).find(e=>e.type===q.value)),Y=r(()=>J.value&&J.value.schemas?.dataSourceAddFormSchema?J.value.schemas?.dataSourceAddFormSchema:ue),X=r(()=>{let e=[];return e.push({label:L(`dashboardModule.breadcrumbs.tiles.detail`),route:I.resolve({name:E.TILE,params:{id:P.tile?.id}})}),e.push({label:L(`dashboardModule.breadcrumbs.tiles.addDataSource`),route:I.resolve({name:E.TILE_ADD_DATA_SOURCE,params:{id:P.tile?.id}})}),e}),Z=()=>{re.confirm(L(`dashboardModule.texts.misc.confirmDiscard`),L(`dashboardModule.headings.misc.discard`),{confirmButtonText:L(`dashboardModule.buttons.yes.title`),cancelButtonText:L(`dashboardModule.buttons.no.title`),type:`warning`}).then(()=>{B.value?I.replace({name:E.TILE,params:{id:P.tile?.id}}):I.push({name:E.TILE,params:{id:P.tile?.id}})}).catch(()=>{})},Q=()=>{U.value=!0},$=()=>{B.value?I.replace({name:E.TILE,params:{id:P.tile?.id}}):I.push({name:E.TILE,params:{id:P.tile?.id}})};return f(()=>W.value,e=>{e===T.OK&&(B.value?I.replace({name:E.TILE,params:{id:P.tile?.id}}):I.push({name:E.TILE,params:{id:P.tile?.id}}))}),f(()=>K.value,e=>{F(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(y,null,[o(m(ne),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:database-cog-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(L)(`dashboardModule.headings.tiles.addDataSource`)),1)]),subtitle:v(()=>[a(_(m(L)(`dashboardModule.subHeadings.tiles.addDataSource`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(S),{key:0,align:m(x).LEFT,teleport:``,small:``,onClick:c[0]||=()=>K.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(S),{key:1,align:m(x).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,O,_(m(L)(`dashboardModule.buttons.save.title`)),1)]),_:1},8,[`align`])),o(m(ie),{items:X.value},null,8,[`items`]),n(`div`,k,[o(m(C),{class:`grow-1 p-2 md:px-4`},{default:v(()=>[o(D,{modelValue:q.value,"onUpdate:modelValue":c[1]||=e=>q.value=e},null,8,[`modelValue`]),o(m(w)),q.value?(l(),e(y,{key:0},[J.value?.components?.dataSourceAddForm===void 0?(l(),s(de,{key:1,id:m(H),"remote-form-submit":U.value,"onUpdate:remoteFormSubmit":c[6]||=e=>U.value=e,"remote-form-result":W.value,"onUpdate:remoteFormResult":c[7]||=e=>W.value=e,"remote-form-reset":G.value,"onUpdate:remoteFormReset":c[8]||=e=>G.value=e,"remote-form-changed":K.value,"onUpdate:remoteFormChanged":c[9]||=e=>K.value=e,type:q.value,parent:`tile`,"parent-id":P.tile.id,schema:Y.value},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`type`,`parent-id`,`schema`])):(l(),s(p(J.value?.components?.dataSourceAddForm),{key:0,id:m(H),"remote-form-submit":U.value,"onUpdate:remoteFormSubmit":c[2]||=e=>U.value=e,"remote-form-result":W.value,"onUpdate:remoteFormResult":c[3]||=e=>W.value=e,"remote-form-reset":G.value,"onUpdate:remoteFormReset":c[4]||=e=>G.value=e,"remote-form-changed":K.value,"onUpdate:remoteFormChanged":c[5]||=e=>K.value=e,parent:`tile`,"parent-id":P.tile.id,schema:Y.value},null,40,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`parent-id`,`schema`]))],64)):(l(),s(m(oe),{key:1,title:m(L)(`dashboardModule.headings.dataSources.selectPlugin`),description:m(L)(`dashboardModule.texts.dataSources.selectPlugin`),closable:!1,"show-icon":``,type:`info`},null,8,[`title`,`description`]))]),_:1}),m(z)?(l(),e(`div`,A,[n(`div`,j,[K.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(L)(`dashboardModule.buttons.discard.title`)),1)]),_:1})):g(``,!0),K.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(L)(`dashboardModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:m(ce),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[o(m(h),{loading:W.value===m(T).WORKING,disabled:W.value!==m(T).NONE,type:`primary`,onClick:Q},ee({default:v(()=>[a(` `+_(m(L)(`dashboardModule.buttons.save.title`)),1)]),_:2},[W.value===m(T).OK||W.value===m(T).ERROR?{name:`icon`,fn:v(()=>[W.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):W.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,M)])])):g(``,!0)])],64))}});export{N as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as d,Yr as f,ci as p,di as te,ii as ne,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as ie,xr as ae}from"./icon-with-child-CgZMNB3F.js";import{t as oe}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as y,Er as b,Qr as se,Tr as ce,jr as le,p as ue,vr as de,yr as x}from"./common-Be4p2bm6.js";import{t as fe}from"./directive-D42ORGRu.js";import{t as S}from"./useUuid-B9e3LtCp.js";import{t as C}from"./common.constants-C6QiEtuS.js";import{a as w,d as T,f as E,i as pe}from"./keys-DgS2vm-E.js";import{f as me}from"./types-C4XLI6VR.js";import{a as D,i as O}from"./composables-CsYg2_R5.js";import"./dashboard.types-CoQH7Qfe.js";import{t as k}from"./data-source-edit-form-CEOgesmu.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=[`id`],F=c({name:`ViewTileDataSourceEdit`,__name:`view-tile-data-source-edit`,props:{tileId:{},tile:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:F}){let I=c,L=F,R=ie(),{t:z}=ee(),he=ue();oe({title:z(`dashboardModule.meta.tiles.editDataSource.title`)});let{validate:ge}=S(),{isMDDevice:B,isLGDevice:V}=x(),{dataSource:H,isLoading:U,fetchDataSource:_e}=D({id:I.id,parent:`tile`,parentId:I.tile.id}),W=u(!1);if(!ge(I.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=me(),G=u(!1),K=u(T.NONE),q=u(!1),J=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===H.value?.type))),Y=r(()=>(ye.value?.elements??[]).find(e=>e.type===H.value?.type)),X=r(()=>Y.value&&Y.value.schemas?.dataSourceEditFormSchema?Y.value.schemas?.dataSourceEditFormSchema:O),be=r(()=>{let e=[];return e.push({label:z(`dashboardModule.breadcrumbs.tiles.detail`),route:R.resolve({name:E.TILE,params:{id:I.tile?.id}})}),e.push({label:z(`dashboardModule.breadcrumbs.tiles.editDataSource`),route:R.resolve({name:E.TILE_EDIT_DATA_SOURCE,params:{dataSourceId:I.id,id:I.tile?.id}})}),e}),Z=()=>{le.confirm(z(`dashboardModule.texts.misc.confirmDiscard`),z(`dashboardModule.headings.misc.discard`),{confirmButtonText:z(`dashboardModule.buttons.yes.title`),cancelButtonText:z(`dashboardModule.buttons.no.title`),type:`warning`}).then(()=>{V.value?R.replace({name:E.TILE,params:{id:I.tile?.id}}):R.push({name:E.TILE,params:{id:I.tile?.id}})}).catch(()=>{})},Q=()=>{G.value=!0},$=()=>{V.value?R.replace({name:E.TILE,params:{id:I.tile?.id}}):R.push({name:E.TILE,params:{id:I.tile?.id}})};return d(async()=>{_e().then(()=>{if(H.value!==null&&(W.value=!0),!U.value&&H.value===null&&!W.value)throw new w(`Data source not found`)}).catch(e=>{let t=e;throw t instanceof pe&&t.code===404?new w(`Data source not found`):new w(`Something went wrong`,t)})}),f(()=>{L(`update:remote-form-changed`,J.value)}),p(()=>K.value,e=>{e===T.OK&&(V.value?R.replace({name:E.TILE,params:{id:I.tile?.id}}):R.push({name:E.TILE,params:{id:I.tile?.id}}))}),p(()=>U.value,e=>{if(!e&&H.value===null&&!W.value)throw new w(`Data source not found`)}),p(()=>H.value,e=>{if(e!==null)W.value=!0;else if(W.value&&!U.value)he.warning(z(`dashboardModule.messages.dataSources.deletedWhileEditing`),{duration:0}),I.tile?.id?V.value?R.replace({name:E.TILE,params:{id:I.tile.id}}):R.push({name:E.TILE,params:{id:I.tile.id}}):V.value?R.replace({name:E.PAGES}):R.push({name:E.PAGES});else if(!U.value&&e===null&&!W.value)throw new w(`Data source not found`)}),p(()=>J.value,e=>{L(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(ae,null,[o(m(ce),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:database-cog-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(z)(`dashboardModule.headings.tiles.editDataSource`)),1)]),subtitle:v(()=>[a(_(m(z)(`dashboardModule.subHeadings.tiles.editDataSource`)),1)]),_:1}),m(B)?g(``,!0):(l(),s(m(b),{key:0,align:m(y).LEFT,teleport:``,small:``,onClick:c[0]||=()=>J.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(B)?g(``,!0):(l(),s(m(b),{key:1,align:m(y).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(z)(`dashboardModule.buttons.save.title`)),1)]),_:1},8,[`align`])),o(m(de),{items:be.value},null,8,[`items`]),te((l(),e(`div`,{"element-loading-text":m(z)(`dashboardModule.texts.dataSources.loadingDataSource`),class:`flex flex-col overflow-hidden h-full`},[m(H)===null?g(``,!0):(l(),s(m(se),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[Y.value?.components?.dataSourceEditForm===void 0?(l(),s(k,{key:1,"remote-form-submit":G.value,"onUpdate:remoteFormSubmit":c[5]||=e=>G.value=e,"remote-form-result":K.value,"onUpdate:remoteFormResult":c[6]||=e=>K.value=e,"remote-form-reset":q.value,"onUpdate:remoteFormReset":c[7]||=e=>q.value=e,"remote-form-changed":J.value,"onUpdate:remoteFormChanged":c[8]||=e=>J.value=e,"data-source":m(H),schema:X.value},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`])):(l(),s(ne(Y.value?.components?.dataSourceEditForm),{key:0,"remote-form-submit":G.value,"onUpdate:remoteFormSubmit":c[1]||=e=>G.value=e,"remote-form-result":K.value,"onUpdate:remoteFormResult":c[2]||=e=>K.value=e,"remote-form-reset":q.value,"onUpdate:remoteFormReset":c[3]||=e=>q.value=e,"remote-form-changed":J.value,"onUpdate:remoteFormChanged":c[4]||=e=>J.value=e,"data-source":m(H),schema:X.value},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`]))]),_:1})),m(B)?(l(),e(`div`,M,[n(`div`,N,[J.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(z)(`dashboardModule.buttons.discard.title`)),1)]),_:1})):g(``,!0),J.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(z)(`dashboardModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:m(C),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[o(m(h),{loading:K.value===m(T).WORKING,disabled:K.value!==m(T).NONE||!J.value,type:`primary`,onClick:Q},re({default:v(()=>[a(` `+_(m(z)(`dashboardModule.buttons.save.title`)),1)]),_:2},[K.value===m(T).OK||K.value===m(T).ERROR?{name:`icon`,fn:v(()=>[K.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):K.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,P)])])):g(``,!0)],8,j)),[[m(fe),m(U)||m(H)===null]])],64))}});export{F as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as d,Yr as f,ci as p,di as te,ii as ne,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as ie,xr as ae}from"./icon-with-child-CgZMNB3F.js";import{t as oe}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as y,Er as b,Qr as se,Tr as ce,jr as le,p as ue,vr as de,yr as x}from"./common-D4Z2wgrj.js";import{t as fe}from"./directive-D42ORGRu.js";import{t as S}from"./useUuid-D7PWqngt.js";import{t as C}from"./common.constants-C6QiEtuS.js";import{a as w,d as T,f as E,i as pe}from"./keys-DgS2vm-E.js";import{f as me}from"./types-CE88rjDb.js";import{a as D,i as O}from"./composables-DLFP4TLA.js";import"./dashboard.types-CkyEAwdv.js";import{t as k}from"./data-source-edit-form-BlyvQ5Mk.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=[`id`],F=c({name:`ViewTileDataSourceEdit`,__name:`view-tile-data-source-edit`,props:{tileId:{},tile:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:F}){let I=c,L=F,R=ie(),{t:z}=ee(),he=ue();oe({title:z(`dashboardModule.meta.tiles.editDataSource.title`)});let{validate:ge}=S(),{isMDDevice:B,isLGDevice:V}=x(),{dataSource:H,isLoading:U,fetchDataSource:_e}=D({id:I.id,parent:`tile`,parentId:I.tile.id}),W=u(!1);if(!ge(I.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=me(),G=u(!1),K=u(T.NONE),q=u(!1),J=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===H.value?.type))),Y=r(()=>(ye.value?.elements??[]).find(e=>e.type===H.value?.type)),X=r(()=>Y.value&&Y.value.schemas?.dataSourceEditFormSchema?Y.value.schemas?.dataSourceEditFormSchema:O),be=r(()=>{let e=[];return e.push({label:z(`dashboardModule.breadcrumbs.tiles.detail`),route:R.resolve({name:E.TILE,params:{id:I.tile?.id}})}),e.push({label:z(`dashboardModule.breadcrumbs.tiles.editDataSource`),route:R.resolve({name:E.TILE_EDIT_DATA_SOURCE,params:{dataSourceId:I.id,id:I.tile?.id}})}),e}),Z=()=>{le.confirm(z(`dashboardModule.texts.misc.confirmDiscard`),z(`dashboardModule.headings.misc.discard`),{confirmButtonText:z(`dashboardModule.buttons.yes.title`),cancelButtonText:z(`dashboardModule.buttons.no.title`),type:`warning`}).then(()=>{V.value?R.replace({name:E.TILE,params:{id:I.tile?.id}}):R.push({name:E.TILE,params:{id:I.tile?.id}})}).catch(()=>{})},Q=()=>{G.value=!0},$=()=>{V.value?R.replace({name:E.TILE,params:{id:I.tile?.id}}):R.push({name:E.TILE,params:{id:I.tile?.id}})};return d(async()=>{_e().then(()=>{if(H.value!==null&&(W.value=!0),!U.value&&H.value===null&&!W.value)throw new w(`Data source not found`)}).catch(e=>{let t=e;throw t instanceof pe&&t.code===404?new w(`Data source not found`):new w(`Something went wrong`,t)})}),f(()=>{L(`update:remote-form-changed`,J.value)}),p(()=>K.value,e=>{e===T.OK&&(V.value?R.replace({name:E.TILE,params:{id:I.tile?.id}}):R.push({name:E.TILE,params:{id:I.tile?.id}}))}),p(()=>U.value,e=>{if(!e&&H.value===null&&!W.value)throw new w(`Data source not found`)}),p(()=>H.value,e=>{if(e!==null)W.value=!0;else if(W.value&&!U.value)he.warning(z(`dashboardModule.messages.dataSources.deletedWhileEditing`),{duration:0}),I.tile?.id?V.value?R.replace({name:E.TILE,params:{id:I.tile.id}}):R.push({name:E.TILE,params:{id:I.tile.id}}):V.value?R.replace({name:E.PAGES}):R.push({name:E.PAGES});else if(!U.value&&e===null&&!W.value)throw new w(`Data source not found`)}),p(()=>J.value,e=>{L(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(ae,null,[o(m(ce),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:database-cog-outline`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(z)(`dashboardModule.headings.tiles.editDataSource`)),1)]),subtitle:v(()=>[a(_(m(z)(`dashboardModule.subHeadings.tiles.editDataSource`)),1)]),_:1}),m(B)?g(``,!0):(l(),s(m(b),{key:0,align:m(y).LEFT,teleport:``,small:``,onClick:c[0]||=()=>J.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(B)?g(``,!0):(l(),s(m(b),{key:1,align:m(y).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(z)(`dashboardModule.buttons.save.title`)),1)]),_:1},8,[`align`])),o(m(de),{items:be.value},null,8,[`items`]),te((l(),e(`div`,{"element-loading-text":m(z)(`dashboardModule.texts.dataSources.loadingDataSource`),class:`flex flex-col overflow-hidden h-full`},[m(H)===null?g(``,!0):(l(),s(m(se),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[Y.value?.components?.dataSourceEditForm===void 0?(l(),s(k,{key:1,"remote-form-submit":G.value,"onUpdate:remoteFormSubmit":c[5]||=e=>G.value=e,"remote-form-result":K.value,"onUpdate:remoteFormResult":c[6]||=e=>K.value=e,"remote-form-reset":q.value,"onUpdate:remoteFormReset":c[7]||=e=>q.value=e,"remote-form-changed":J.value,"onUpdate:remoteFormChanged":c[8]||=e=>J.value=e,"data-source":m(H),schema:X.value},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`])):(l(),s(ne(Y.value?.components?.dataSourceEditForm),{key:0,"remote-form-submit":G.value,"onUpdate:remoteFormSubmit":c[1]||=e=>G.value=e,"remote-form-result":K.value,"onUpdate:remoteFormResult":c[2]||=e=>K.value=e,"remote-form-reset":q.value,"onUpdate:remoteFormReset":c[3]||=e=>q.value=e,"remote-form-changed":J.value,"onUpdate:remoteFormChanged":c[4]||=e=>J.value=e,"data-source":m(H),schema:X.value},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`data-source`,`schema`]))]),_:1})),m(B)?(l(),e(`div`,M,[n(`div`,N,[J.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(z)(`dashboardModule.buttons.discard.title`)),1)]),_:1})):g(``,!0),J.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(z)(`dashboardModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:m(C),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[o(m(h),{loading:K.value===m(T).WORKING,disabled:K.value!==m(T).NONE||!J.value,type:`primary`,onClick:Q},re({default:v(()=>[a(` `+_(m(z)(`dashboardModule.buttons.save.title`)),1)]),_:2},[K.value===m(T).OK||K.value===m(T).ERROR?{name:`icon`,fn:v(()=>[K.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):K.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,P)])])):g(``,!0)],8,j)),[[m(fe),m(U)||m(H)===null]])],64))}});export{F as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as ee,Mr as i,Nr as a,Or as o,Pr as s,Qr as c,Si as l,T as te,Wr as ne,Yr as re,ci as u,di as d,ii as f,ji as p,jr as ie,k as m,kr as h,qi as g,ui as _,x as ae,xr as oe}from"./icon-with-child-CgZMNB3F.js";import{t as se}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as v,Er as y,Qr as ce,Tr as le,jr as b,p as x,vr as S,yr as ue}from"./common-Be4p2bm6.js";import{t as de}from"./directive-D42ORGRu.js";import{t as fe}from"./useUuid-B9e3LtCp.js";import{t as pe}from"./common.constants-C6QiEtuS.js";import{a as C,d as w,f as T,i as me}from"./keys-DgS2vm-E.js";import{l as he}from"./composables-CsYg2_R5.js";import{i as ge,r as E}from"./useDataSources-Ct4AwM4K.js";import{t as D}from"./tile-edit-form-DkGWaIe5.js";var O={class:`uppercase`},k=[`element-loading-text`],A={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},j={class:`p-2`},M=[`id`],N=s({name:`ViewPageTileEdit`,__name:`view-tile-edit`,props:{id:{},tile:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(s,{emit:N}){let P=s,F=N,I=ae(),{t:L}=te(),_e=x();se({title:L(`dashboardModule.meta.tiles.edit.title`)});let{validate:ve}=fe(),{isMDDevice:R,isLGDevice:z}=ue(),{tile:B,isLoading:V,fetchTile:ye}=E({id:P.id}),H=l(!1),U=l(null);if(!ve(P.id))throw Error(`Element identifier is not valid`);let{plugins:be}=ge(),W=l(!1),G=l(w.NONE),K=l(!1),q=l(!1),J=r(()=>be.value.find(e=>(e.elements??[]).some(e=>e.type===B.value?.type))),Y=r(()=>(J.value?.elements??[]).find(e=>e.type===B.value?.type)),X=r(()=>Y.value&&Y.value.schemas?.tileEditFormSchema?Y.value.schemas?.tileEditFormSchema:he),xe=r(()=>{let e=[];return e.push({label:L(`dashboardModule.breadcrumbs.tiles.detail`),route:I.resolve({name:T.TILE,params:{id:P.id}})}),e.push({label:L(`dashboardModule.breadcrumbs.tiles.edit`),route:I.resolve({name:T.TILE_EDIT,params:{id:P.id}})}),e}),Z=()=>{b.confirm(L(`dashboardModule.texts.misc.confirmDiscard`),L(`dashboardModule.headings.misc.discard`),{confirmButtonText:L(`dashboardModule.buttons.yes.title`),cancelButtonText:L(`dashboardModule.buttons.no.title`),type:`warning`}).then(()=>{z.value?I.replace({name:T.TILE,params:{id:P.id}}):I.push({name:T.TILE,params:{id:P.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{z.value?I.replace({name:T.TILE,params:{id:P.id}}):I.push({name:T.TILE,params:{id:P.id}})};return ne(async()=>{ye().then(()=>{if(!V.value&&B.value===null&&!H.value)throw new C(`Tile not found`);B.value!==null&&(H.value=!0)}).catch(e=>{let t=e;throw t instanceof me&&t.code===404?new C(`Tile not found`):new C(`Something went wrong`,t)})}),re(()=>{F(`update:remote-form-changed`,q.value)}),u(()=>G.value,e=>{e===w.OK&&(z.value?I.replace({name:T.TILE,params:{id:P.id}}):I.push({name:T.TILE,params:{id:P.id}}))}),u(()=>V.value,e=>{if(!e&&B.value===null&&!H.value)throw new C(`Tile not found`)}),u(()=>B.value,e=>{if(e!==null)H.value=!0,e.parent?.type===`page`&&e.parent?.id&&(U.value=e.parent.id);else if(H.value&&!V.value)_e.warning(L(`dashboardModule.messages.tiles.deletedWhileEditing`),{duration:0}),U.value?z.value?I.replace({name:T.PAGE,params:{id:U.value}}):I.push({name:T.PAGE,params:{id:U.value}}):z.value?I.replace({name:T.PAGES}):I.push({name:T.PAGES});else if(!V.value&&e===null&&!H.value)throw new C(`Tile not found`)}),u(()=>q.value,e=>{F(`update:remote-form-changed`,e)}),(r,s)=>(c(),e(oe,null,[a(p(le),{teleport:``},{icon:_(()=>[a(p(t),{icon:`mdi:widget-tree`,class:`w[20px] h[20px]`})]),title:_(()=>[i(g(p(L)(`dashboardModule.headings.tiles.edit`)),1)]),subtitle:_(()=>[i(g(p(L)(`dashboardModule.subHeadings.tiles.edit`)),1)]),_:1}),p(R)?h(``,!0):(c(),o(p(y),{key:0,align:p(v).LEFT,teleport:``,small:``,onClick:s[0]||=()=>q.value?Z():$()},{icon:_(()=>[a(p(ee),{size:24},{default:_(()=>[a(p(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),p(R)?h(``,!0):(c(),o(p(y),{key:1,align:p(v).RIGHT,teleport:``,small:``,onClick:Q},{default:_(()=>[n(`span`,O,g(p(L)(`dashboardModule.buttons.save.title`)),1)]),_:1},8,[`align`])),a(p(S),{items:xe.value},null,8,[`items`]),d((c(),e(`div`,{"element-loading-text":p(L)(`dashboardModule.texts.tiles.loadingTile`),class:`flex flex-col overflow-hidden h-full`},[p(B)===null?h(``,!0):(c(),o(p(ce),{key:0,class:`grow-1 p-2 md:px-4`},{default:_(()=>[Y.value?.components?.tileEditForm===void 0?(c(),o(D,{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[8]||=e=>q.value=e,tile:p(B),schema:X.value},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`])):(c(),o(f(Y.value?.components?.tileEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[4]||=e=>q.value=e,tile:p(B),schema:X.value},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`]))]),_:1})),p(R)?(c(),e(`div`,A,[n(`div`,j,[q.value?(c(),o(p(m),{key:0,link:``,class:`mr-2`,onClick:Z},{default:_(()=>[i(g(p(L)(`dashboardModule.buttons.discard.title`)),1)]),_:1})):h(``,!0),q.value?h(``,!0):(c(),o(p(m),{key:1,link:``,class:`mr-2`,onClick:$},{default:_(()=>[i(g(p(L)(`dashboardModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:p(pe),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[a(p(m),{loading:G.value===p(w).WORKING,disabled:G.value!==p(w).NONE||!q.value,type:`primary`,onClick:Q},ie({default:_(()=>[i(` `+g(p(L)(`dashboardModule.buttons.save.title`)),1)]),_:2},[G.value===p(w).OK||G.value===p(w).ERROR?{name:`icon`,fn:_(()=>[G.value===p(w).OK?(c(),o(p(t),{key:0,icon:`mdi:check-circle`})):G.value===p(w).ERROR?(c(),o(p(t),{key:1,icon:`mdi:cross-circle`})):h(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,M)])])):h(``,!0)],8,k)),[[p(de),p(V)||p(B)===null]])],64))}});export{N as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as ee,Mr as i,Nr as a,Or as o,Pr as s,Qr as c,Si as l,T as te,Wr as ne,Yr as re,ci as u,di as d,ii as f,ji as p,jr as ie,k as m,kr as h,qi as g,ui as _,x as ae,xr as oe}from"./icon-with-child-CgZMNB3F.js";import{t as se}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as v,Er as y,Qr as ce,Tr as le,jr as b,p as x,vr as S,yr as ue}from"./common-D4Z2wgrj.js";import{t as de}from"./directive-D42ORGRu.js";import{t as fe}from"./useUuid-D7PWqngt.js";import{t as pe}from"./common.constants-C6QiEtuS.js";import{a as C,d as w,f as T,i as me}from"./keys-DgS2vm-E.js";import{l as he}from"./composables-DLFP4TLA.js";import{i as ge,r as E}from"./useDataSources-XOQc7nLH.js";import{t as D}from"./tile-edit-form-CCaFW-XS.js";var O={class:`uppercase`},k=[`element-loading-text`],A={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},j={class:`p-2`},M=[`id`],N=s({name:`ViewPageTileEdit`,__name:`view-tile-edit`,props:{id:{},tile:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(s,{emit:N}){let P=s,F=N,I=ae(),{t:L}=te(),_e=x();se({title:L(`dashboardModule.meta.tiles.edit.title`)});let{validate:ve}=fe(),{isMDDevice:R,isLGDevice:z}=ue(),{tile:B,isLoading:V,fetchTile:ye}=E({id:P.id}),H=l(!1),U=l(null);if(!ve(P.id))throw Error(`Element identifier is not valid`);let{plugins:be}=ge(),W=l(!1),G=l(w.NONE),K=l(!1),q=l(!1),J=r(()=>be.value.find(e=>(e.elements??[]).some(e=>e.type===B.value?.type))),Y=r(()=>(J.value?.elements??[]).find(e=>e.type===B.value?.type)),X=r(()=>Y.value&&Y.value.schemas?.tileEditFormSchema?Y.value.schemas?.tileEditFormSchema:he),xe=r(()=>{let e=[];return e.push({label:L(`dashboardModule.breadcrumbs.tiles.detail`),route:I.resolve({name:T.TILE,params:{id:P.id}})}),e.push({label:L(`dashboardModule.breadcrumbs.tiles.edit`),route:I.resolve({name:T.TILE_EDIT,params:{id:P.id}})}),e}),Z=()=>{b.confirm(L(`dashboardModule.texts.misc.confirmDiscard`),L(`dashboardModule.headings.misc.discard`),{confirmButtonText:L(`dashboardModule.buttons.yes.title`),cancelButtonText:L(`dashboardModule.buttons.no.title`),type:`warning`}).then(()=>{z.value?I.replace({name:T.TILE,params:{id:P.id}}):I.push({name:T.TILE,params:{id:P.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{z.value?I.replace({name:T.TILE,params:{id:P.id}}):I.push({name:T.TILE,params:{id:P.id}})};return ne(async()=>{ye().then(()=>{if(!V.value&&B.value===null&&!H.value)throw new C(`Tile not found`);B.value!==null&&(H.value=!0)}).catch(e=>{let t=e;throw t instanceof me&&t.code===404?new C(`Tile not found`):new C(`Something went wrong`,t)})}),re(()=>{F(`update:remote-form-changed`,q.value)}),u(()=>G.value,e=>{e===w.OK&&(z.value?I.replace({name:T.TILE,params:{id:P.id}}):I.push({name:T.TILE,params:{id:P.id}}))}),u(()=>V.value,e=>{if(!e&&B.value===null&&!H.value)throw new C(`Tile not found`)}),u(()=>B.value,e=>{if(e!==null)H.value=!0,e.parent?.type===`page`&&e.parent?.id&&(U.value=e.parent.id);else if(H.value&&!V.value)_e.warning(L(`dashboardModule.messages.tiles.deletedWhileEditing`),{duration:0}),U.value?z.value?I.replace({name:T.PAGE,params:{id:U.value}}):I.push({name:T.PAGE,params:{id:U.value}}):z.value?I.replace({name:T.PAGES}):I.push({name:T.PAGES});else if(!V.value&&e===null&&!H.value)throw new C(`Tile not found`)}),u(()=>q.value,e=>{F(`update:remote-form-changed`,e)}),(r,s)=>(c(),e(oe,null,[a(p(le),{teleport:``},{icon:_(()=>[a(p(t),{icon:`mdi:widget-tree`,class:`w[20px] h[20px]`})]),title:_(()=>[i(g(p(L)(`dashboardModule.headings.tiles.edit`)),1)]),subtitle:_(()=>[i(g(p(L)(`dashboardModule.subHeadings.tiles.edit`)),1)]),_:1}),p(R)?h(``,!0):(c(),o(p(y),{key:0,align:p(v).LEFT,teleport:``,small:``,onClick:s[0]||=()=>q.value?Z():$()},{icon:_(()=>[a(p(ee),{size:24},{default:_(()=>[a(p(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),p(R)?h(``,!0):(c(),o(p(y),{key:1,align:p(v).RIGHT,teleport:``,small:``,onClick:Q},{default:_(()=>[n(`span`,O,g(p(L)(`dashboardModule.buttons.save.title`)),1)]),_:1},8,[`align`])),a(p(S),{items:xe.value},null,8,[`items`]),d((c(),e(`div`,{"element-loading-text":p(L)(`dashboardModule.texts.tiles.loadingTile`),class:`flex flex-col overflow-hidden h-full`},[p(B)===null?h(``,!0):(c(),o(p(ce),{key:0,class:`grow-1 p-2 md:px-4`},{default:_(()=>[Y.value?.components?.tileEditForm===void 0?(c(),o(D,{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[8]||=e=>q.value=e,tile:p(B),schema:X.value},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`])):(c(),o(f(Y.value?.components?.tileEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":s[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":s[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":s[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":s[4]||=e=>q.value=e,tile:p(B),schema:X.value},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`]))]),_:1})),p(R)?(c(),e(`div`,A,[n(`div`,j,[q.value?(c(),o(p(m),{key:0,link:``,class:`mr-2`,onClick:Z},{default:_(()=>[i(g(p(L)(`dashboardModule.buttons.discard.title`)),1)]),_:1})):h(``,!0),q.value?h(``,!0):(c(),o(p(m),{key:1,link:``,class:`mr-2`,onClick:$},{default:_(()=>[i(g(p(L)(`dashboardModule.buttons.close.title`)),1)]),_:1})),n(`div`,{id:p(pe),class:`order-2 inline-block [&>*:first-child:not(:only-child)]:hidden`},[a(p(m),{loading:G.value===p(w).WORKING,disabled:G.value!==p(w).NONE||!q.value,type:`primary`,onClick:Q},ie({default:_(()=>[i(` `+g(p(L)(`dashboardModule.buttons.save.title`)),1)]),_:2},[G.value===p(w).OK||G.value===p(w).ERROR?{name:`icon`,fn:_(()=>[G.value===p(w).OK?(c(),o(p(t),{key:0,icon:`mdi:check-circle`})):G.value===p(w).ERROR?(c(),o(p(t),{key:1,icon:`mdi:cross-circle`})):h(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])],8,M)])])):h(``,!0)],8,k)),[[p(de),p(V)||p(B)===null]])],64))}});export{N as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as te,Yr as ne,ci as d,di as f,ii as p,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as y,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as x}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as S,Er as C,Qr as ie,Tr as ae,jr as oe,p as se,vr as ce,yr as le}from"./common-Be4p2bm6.js";import{t as ue}from"./directive-D42ORGRu.js";import{t as de}from"./useUuid-B9e3LtCp.js";import{a as w,d as T,f as E,i as fe}from"./keys-DgS2vm-E.js";import"./dashboard-BP8rehB1.js";import{l as pe}from"./composables-CsYg2_R5.js";import{i as me,r as D}from"./useDataSources-Ct4AwM4K.js";import{t as O}from"./tile-edit-form-DkGWaIe5.js";import{r as k}from"./pages-tiles.constants-BzKCg6RC.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=c({name:`ViewPageTileEdit`,__name:`view-tile-edit`,props:{pageId:{},page:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:P}){let F=c,I=P,L=y(),{t:R}=ee(),he=se();x({title:R(`pagesTilesPlugin.meta.pages.editTile.title`)});let{validate:ge}=de(),{isMDDevice:z,isLGDevice:B}=le(),{tile:V,isLoading:H,fetchTile:_e}=D({id:F.id,parent:`page`,parentId:F.page.id}),U=u(!1);if(!ge(F.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=me(),W=u(!1),G=u(T.NONE),K=u(!1),q=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===V.value?.type))),J=r(()=>(ye.value?.elements??[]).find(e=>e.type===V.value?.type)),Y=r(()=>J.value?.schemas?.tileEditFormSchema??pe),X=r(()=>{let e=[];return e.push({label:R(`dashboardModule.breadcrumbs.pages.list`),route:L.resolve({name:E.PAGES})}),e.push({label:R(`dashboardModule.breadcrumbs.pages.detail`,{page:F.page?.title}),route:L.resolve({name:E.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesTilesPlugin.breadcrumbs.pages.configure`,{page:F.page?.title}),route:L.resolve({name:k.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesTilesPlugin.breadcrumbs.pages.editTile`,{page:F.page?.title}),route:L.resolve({name:k.PAGE_EDIT_TILE,params:{id:F.page?.id,tileId:V.value?.id}})}),e}),Z=()=>{oe.confirm(R(`pagesTilesPlugin.texts.misc.confirmDiscard`),R(`pagesTilesPlugin.headings.misc.discard`),{confirmButtonText:R(`pagesTilesPlugin.buttons.yes.title`),cancelButtonText:R(`pagesTilesPlugin.buttons.no.title`),type:`warning`}).then(()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})};return te(async()=>{_e().then(()=>{if(V.value!==null&&(U.value=!0),!H.value&&V.value===null&&!U.value)throw new w(`Tile not found`)}).catch(e=>{let t=e;throw t instanceof fe&&t.code===404?new w(`Tile not found`):new w(`Something went wrong`,t)})}),ne(()=>{I(`update:remote-form-changed`,q.value)}),d(()=>H.value,e=>{if(!e&&V.value===null&&!U.value)throw new w(`Tile not found`)}),d(()=>V.value,e=>{if(e!==null)U.value=!0;else if(U.value&&!H.value)he.warning(R(`pagesTilesPlugin.messages.tiles.deletedWhileEditing`),{duration:0}),F.page?.id?B.value?L.replace({name:k.PAGE,params:{id:F.page.id}}):L.push({name:k.PAGE,params:{id:F.page.id}}):B.value?L.replace({name:E.PAGES}):L.push({name:E.PAGES});else if(!H.value&&e===null&&!U.value)throw new w(`Tile not found`)}),d(()=>q.value,e=>{I(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(m(ae),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:widget-tree`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(R)(`pagesTilesPlugin.headings.pages.editTile`)),1)]),subtitle:v(()=>[a(_(m(R)(`pagesTilesPlugin.subHeadings.pages.editTile`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(C),{key:0,align:m(S).LEFT,teleport:``,small:``,onClick:c[0]||=()=>q.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(C),{key:1,align:m(S).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(R)(`pagesTilesPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(m(ce),{items:X.value},null,8,[`items`]),f((l(),e(`div`,{"element-loading-text":m(R)(`pagesTilesPlugin.texts.tiles.loadingTile`),class:`flex flex-col overflow-hidden h-full`},[m(V)===null?g(``,!0):(l(),s(m(ie),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[J.value?.components?.tileEditForm===void 0?(l(),s(m(O),{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[8]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`])):(l(),s(p(J.value?.components?.tileEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[4]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`]))]),_:1})),m(z)?(l(),e(`div`,M,[n(`div`,N,[q.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(R)(`pagesTilesPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),q.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(R)(`pagesTilesPlugin.buttons.close.title`)),1)]),_:1})),o(m(h),{loading:G.value===m(T).WORKING,disabled:G.value!==m(T).NONE||!q.value,type:`primary`,class:`order-2`,onClick:Q},re({default:v(()=>[a(` `+_(m(R)(`pagesTilesPlugin.buttons.update.title`)),1)]),_:2},[G.value===m(T).OK||G.value===m(T).ERROR?{name:`icon`,fn:v(()=>[G.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):G.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)],8,j)),[[m(ue),m(H)||m(V)===null]])],64))}});export{P as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as te,Yr as ne,ci as d,di as f,ii as p,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as y,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as x}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as S,Er as C,Qr as ie,Tr as ae,jr as oe,p as se,vr as ce,yr as le}from"./common-D4Z2wgrj.js";import{t as ue}from"./directive-D42ORGRu.js";import{t as de}from"./useUuid-D7PWqngt.js";import{a as w,d as T,f as E,i as fe}from"./keys-DgS2vm-E.js";import"./dashboard-YUP0xrqH.js";import{l as pe}from"./composables-DLFP4TLA.js";import{i as me,r as D}from"./useDataSources-XOQc7nLH.js";import{t as O}from"./tile-edit-form-CCaFW-XS.js";import{r as k}from"./pages-tiles.constants-BzKCg6RC.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=c({name:`ViewPageTileEdit`,__name:`view-tile-edit`,props:{pageId:{},page:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:P}){let F=c,I=P,L=y(),{t:R}=ee(),he=se();x({title:R(`pagesTilesPlugin.meta.pages.editTile.title`)});let{validate:ge}=de(),{isMDDevice:z,isLGDevice:B}=le(),{tile:V,isLoading:H,fetchTile:_e}=D({id:F.id,parent:`page`,parentId:F.page.id}),U=u(!1);if(!ge(F.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=me(),W=u(!1),G=u(T.NONE),K=u(!1),q=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===V.value?.type))),J=r(()=>(ye.value?.elements??[]).find(e=>e.type===V.value?.type)),Y=r(()=>J.value?.schemas?.tileEditFormSchema??pe),X=r(()=>{let e=[];return e.push({label:R(`dashboardModule.breadcrumbs.pages.list`),route:L.resolve({name:E.PAGES})}),e.push({label:R(`dashboardModule.breadcrumbs.pages.detail`,{page:F.page?.title}),route:L.resolve({name:E.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesTilesPlugin.breadcrumbs.pages.configure`,{page:F.page?.title}),route:L.resolve({name:k.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesTilesPlugin.breadcrumbs.pages.editTile`,{page:F.page?.title}),route:L.resolve({name:k.PAGE_EDIT_TILE,params:{id:F.page?.id,tileId:V.value?.id}})}),e}),Z=()=>{oe.confirm(R(`pagesTilesPlugin.texts.misc.confirmDiscard`),R(`pagesTilesPlugin.headings.misc.discard`),{confirmButtonText:R(`pagesTilesPlugin.buttons.yes.title`),cancelButtonText:R(`pagesTilesPlugin.buttons.no.title`),type:`warning`}).then(()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})};return te(async()=>{_e().then(()=>{if(V.value!==null&&(U.value=!0),!H.value&&V.value===null&&!U.value)throw new w(`Tile not found`)}).catch(e=>{let t=e;throw t instanceof fe&&t.code===404?new w(`Tile not found`):new w(`Something went wrong`,t)})}),ne(()=>{I(`update:remote-form-changed`,q.value)}),d(()=>H.value,e=>{if(!e&&V.value===null&&!U.value)throw new w(`Tile not found`)}),d(()=>V.value,e=>{if(e!==null)U.value=!0;else if(U.value&&!H.value)he.warning(R(`pagesTilesPlugin.messages.tiles.deletedWhileEditing`),{duration:0}),F.page?.id?B.value?L.replace({name:k.PAGE,params:{id:F.page.id}}):L.push({name:k.PAGE,params:{id:F.page.id}}):B.value?L.replace({name:E.PAGES}):L.push({name:E.PAGES});else if(!H.value&&e===null&&!U.value)throw new w(`Tile not found`)}),d(()=>q.value,e=>{I(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(m(ae),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:widget-tree`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(R)(`pagesTilesPlugin.headings.pages.editTile`)),1)]),subtitle:v(()=>[a(_(m(R)(`pagesTilesPlugin.subHeadings.pages.editTile`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(C),{key:0,align:m(S).LEFT,teleport:``,small:``,onClick:c[0]||=()=>q.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(C),{key:1,align:m(S).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(R)(`pagesTilesPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(m(ce),{items:X.value},null,8,[`items`]),f((l(),e(`div`,{"element-loading-text":m(R)(`pagesTilesPlugin.texts.tiles.loadingTile`),class:`flex flex-col overflow-hidden h-full`},[m(V)===null?g(``,!0):(l(),s(m(ie),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[J.value?.components?.tileEditForm===void 0?(l(),s(m(O),{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[8]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`])):(l(),s(p(J.value?.components?.tileEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[4]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`]))]),_:1})),m(z)?(l(),e(`div`,M,[n(`div`,N,[q.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(R)(`pagesTilesPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),q.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(R)(`pagesTilesPlugin.buttons.close.title`)),1)]),_:1})),o(m(h),{loading:G.value===m(T).WORKING,disabled:G.value!==m(T).NONE||!q.value,type:`primary`,class:`order-2`,onClick:Q},re({default:v(()=>[a(` `+_(m(R)(`pagesTilesPlugin.buttons.update.title`)),1)]),_:2},[G.value===m(T).OK||G.value===m(T).ERROR?{name:`icon`,fn:v(()=>[G.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):G.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)],8,j)),[[m(ue),m(H)||m(V)===null]])],64))}});export{P as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as te,Yr as ne,ci as d,di as f,ii as p,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as y,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as x}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as S,Er as C,Qr as ie,Tr as ae,jr as oe,p as se,vr as ce,yr as le}from"./common-Be4p2bm6.js";import{t as ue}from"./directive-D42ORGRu.js";import{t as de}from"./useUuid-B9e3LtCp.js";import{a as w,d as T,f as E,i as fe}from"./keys-DgS2vm-E.js";import"./dashboard-BP8rehB1.js";import{l as pe}from"./composables-CsYg2_R5.js";import{i as me,r as D}from"./useDataSources-Ct4AwM4K.js";import{t as O}from"./tile-edit-form-DkGWaIe5.js";import{o as k}from"./pages-cards.contants-DcS0YOKq.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=c({name:`ViewCardTileEdit`,__name:`view-tile-edit`,props:{pageId:{},page:{},cardId:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:P}){let F=c,I=P,L=y(),{t:R}=ee(),he=se();x({title:R(`pagesCardsPlugin.meta.pages.editTile.title`)});let{validate:ge}=de(),{isMDDevice:z,isLGDevice:B}=le(),{tile:V,isLoading:H,fetchTile:_e}=D({id:F.id,parent:`card`,parentId:F.cardId}),U=u(!1);if(!ge(F.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=me(),W=u(!1),G=u(T.NONE),K=u(!1),q=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===V.value?.type))),J=r(()=>(ye.value?.elements??[]).find(e=>e.type===V.value?.type)),Y=r(()=>J.value?.schemas?.tileEditFormSchema??pe),X=r(()=>{let e=[];return e.push({label:R(`dashboardModule.breadcrumbs.pages.list`),route:L.resolve({name:E.PAGES})}),e.push({label:R(`dashboardModule.breadcrumbs.pages.detail`,{page:F.page?.title}),route:L.resolve({name:E.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesCardsPlugin.breadcrumbs.pages.configure`,{page:F.page?.title}),route:L.resolve({name:k.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesCardsPlugin.breadcrumbs.pages.editTile`,{page:F.page?.title}),route:L.resolve({name:k.PAGE_CARD_EDIT_TILE,params:{id:F.page?.id,cardId:F.cardId,tileId:V.value?.id}})}),e}),Z=()=>{oe.confirm(R(`pagesCardsPlugin.texts.misc.confirmDiscard`),R(`pagesCardsPlugin.headings.misc.discard`),{confirmButtonText:R(`pagesCardsPlugin.buttons.yes.title`),cancelButtonText:R(`pagesCardsPlugin.buttons.no.title`),type:`warning`}).then(()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})};return te(async()=>{_e().then(()=>{if(V.value!==null&&(U.value=!0),!H.value&&V.value===null&&!U.value)throw new w(`Tile not found`)}).catch(e=>{if(e instanceof w)throw e;let t=e;throw t instanceof fe&&t.code===404?new w(`Tile not found`):new w(`Something went wrong`,t)})}),ne(()=>{I(`update:remote-form-changed`,q.value)}),d(()=>H.value,e=>{if(!e&&V.value===null&&!U.value)throw new w(`Tile not found`)}),d(()=>V.value,e=>{if(e!==null)U.value=!0;else if(U.value&&!H.value)he.warning(R(`pagesCardsPlugin.messages.tiles.deletedWhileEditing`),{duration:0}),F.page?.id?B.value?L.replace({name:k.PAGE,params:{id:F.page.id}}):L.push({name:k.PAGE,params:{id:F.page.id}}):B.value?L.replace({name:E.PAGES}):L.push({name:E.PAGES});else if(!H.value&&e===null&&!U.value)throw new w(`Tile not found`)}),d(()=>G.value,e=>{e===T.OK&&(B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}}))}),d(()=>q.value,e=>{I(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(m(ae),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:widget-tree`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(R)(`pagesCardsPlugin.headings.pages.editTile`)),1)]),subtitle:v(()=>[a(_(m(R)(`pagesCardsPlugin.subHeadings.pages.editTile`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(C),{key:0,align:m(S).LEFT,teleport:``,small:``,onClick:c[0]||=()=>q.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(C),{key:1,align:m(S).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(R)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(m(ce),{items:X.value},null,8,[`items`]),f((l(),e(`div`,{"element-loading-text":m(R)(`pagesCardsPlugin.texts.tiles.loadingTile`),class:`flex flex-col overflow-hidden h-full`},[m(V)===null?g(``,!0):(l(),s(m(ie),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[J.value?.components?.tileEditForm===void 0?(l(),s(m(O),{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[8]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`])):(l(),s(p(J.value?.components?.tileEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[4]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`]))]),_:1})),m(z)?(l(),e(`div`,M,[n(`div`,N,[q.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(R)(`pagesCardsPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),q.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(R)(`pagesCardsPlugin.buttons.close.title`)),1)]),_:1})),o(m(h),{loading:G.value===m(T).WORKING,disabled:G.value!==m(T).NONE||!q.value,type:`primary`,class:`order-2`,onClick:Q},re({default:v(()=>[a(` `+_(m(R)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:2},[G.value===m(T).OK||G.value===m(T).ERROR?{name:`icon`,fn:v(()=>[G.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):G.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)],8,j)),[[m(ue),m(H)||m(V)===null]])],64))}});export{P as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as te,Yr as ne,ci as d,di as f,ii as p,ji as m,jr as re,k as h,kr as g,qi as _,ui as v,x as y,xr as b}from"./icon-with-child-CgZMNB3F.js";import{t as x}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as S,Er as C,Qr as ie,Tr as ae,jr as oe,p as se,vr as ce,yr as le}from"./common-D4Z2wgrj.js";import{t as ue}from"./directive-D42ORGRu.js";import{t as de}from"./useUuid-D7PWqngt.js";import{a as w,d as T,f as E,i as fe}from"./keys-DgS2vm-E.js";import"./dashboard-YUP0xrqH.js";import{l as pe}from"./composables-DLFP4TLA.js";import{i as me,r as D}from"./useDataSources-XOQc7nLH.js";import{t as O}from"./tile-edit-form-CCaFW-XS.js";import{o as k}from"./pages-cards.contants-DcS0YOKq.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=c({name:`ViewCardTileEdit`,__name:`view-tile-edit`,props:{pageId:{},page:{},cardId:{},id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:P}){let F=c,I=P,L=y(),{t:R}=ee(),he=se();x({title:R(`pagesCardsPlugin.meta.pages.editTile.title`)});let{validate:ge}=de(),{isMDDevice:z,isLGDevice:B}=le(),{tile:V,isLoading:H,fetchTile:_e}=D({id:F.id,parent:`card`,parentId:F.cardId}),U=u(!1);if(!ge(F.id))throw Error(`Element identifier is not valid`);let{plugins:ve}=me(),W=u(!1),G=u(T.NONE),K=u(!1),q=u(!1),ye=r(()=>ve.value.find(e=>(e.elements??[]).some(e=>e.type===V.value?.type))),J=r(()=>(ye.value?.elements??[]).find(e=>e.type===V.value?.type)),Y=r(()=>J.value?.schemas?.tileEditFormSchema??pe),X=r(()=>{let e=[];return e.push({label:R(`dashboardModule.breadcrumbs.pages.list`),route:L.resolve({name:E.PAGES})}),e.push({label:R(`dashboardModule.breadcrumbs.pages.detail`,{page:F.page?.title}),route:L.resolve({name:E.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesCardsPlugin.breadcrumbs.pages.configure`,{page:F.page?.title}),route:L.resolve({name:k.PAGE,params:{id:F.page?.id}})}),e.push({label:R(`pagesCardsPlugin.breadcrumbs.pages.editTile`,{page:F.page?.title}),route:L.resolve({name:k.PAGE_CARD_EDIT_TILE,params:{id:F.page?.id,cardId:F.cardId,tileId:V.value?.id}})}),e}),Z=()=>{oe.confirm(R(`pagesCardsPlugin.texts.misc.confirmDiscard`),R(`pagesCardsPlugin.headings.misc.discard`),{confirmButtonText:R(`pagesCardsPlugin.buttons.yes.title`),cancelButtonText:R(`pagesCardsPlugin.buttons.no.title`),type:`warning`}).then(()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})}).catch(()=>{})},Q=()=>{W.value=!0},$=()=>{B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}})};return te(async()=>{_e().then(()=>{if(V.value!==null&&(U.value=!0),!H.value&&V.value===null&&!U.value)throw new w(`Tile not found`)}).catch(e=>{if(e instanceof w)throw e;let t=e;throw t instanceof fe&&t.code===404?new w(`Tile not found`):new w(`Something went wrong`,t)})}),ne(()=>{I(`update:remote-form-changed`,q.value)}),d(()=>H.value,e=>{if(!e&&V.value===null&&!U.value)throw new w(`Tile not found`)}),d(()=>V.value,e=>{if(e!==null)U.value=!0;else if(U.value&&!H.value)he.warning(R(`pagesCardsPlugin.messages.tiles.deletedWhileEditing`),{duration:0}),F.page?.id?B.value?L.replace({name:k.PAGE,params:{id:F.page.id}}):L.push({name:k.PAGE,params:{id:F.page.id}}):B.value?L.replace({name:E.PAGES}):L.push({name:E.PAGES});else if(!H.value&&e===null&&!U.value)throw new w(`Tile not found`)}),d(()=>G.value,e=>{e===T.OK&&(B.value?L.replace({name:k.PAGE,params:{id:F.page?.id}}):L.push({name:k.PAGE,params:{id:F.page?.id}}))}),d(()=>q.value,e=>{I(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(b,null,[o(m(ae),{teleport:``},{icon:v(()=>[o(m(t),{icon:`mdi:widget-tree`,class:`w[20px] h[20px]`})]),title:v(()=>[a(_(m(R)(`pagesCardsPlugin.headings.pages.editTile`)),1)]),subtitle:v(()=>[a(_(m(R)(`pagesCardsPlugin.subHeadings.pages.editTile`)),1)]),_:1}),m(z)?g(``,!0):(l(),s(m(C),{key:0,align:m(S).LEFT,teleport:``,small:``,onClick:c[0]||=()=>q.value?Z():$()},{icon:v(()=>[o(m(i),{size:24},{default:v(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(z)?g(``,!0):(l(),s(m(C),{key:1,align:m(S).RIGHT,teleport:``,small:``,onClick:Q},{default:v(()=>[n(`span`,A,_(m(R)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:1},8,[`align`])),o(m(ce),{items:X.value},null,8,[`items`]),f((l(),e(`div`,{"element-loading-text":m(R)(`pagesCardsPlugin.texts.tiles.loadingTile`),class:`flex flex-col overflow-hidden h-full`},[m(V)===null?g(``,!0):(l(),s(m(ie),{key:0,class:`grow-1 p-2 md:px-4`},{default:v(()=>[J.value?.components?.tileEditForm===void 0?(l(),s(m(O),{key:1,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[5]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[6]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[7]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[8]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`])):(l(),s(p(J.value?.components?.tileEditForm),{key:0,"remote-form-submit":W.value,"onUpdate:remoteFormSubmit":c[1]||=e=>W.value=e,"remote-form-result":G.value,"onUpdate:remoteFormResult":c[2]||=e=>G.value=e,"remote-form-reset":K.value,"onUpdate:remoteFormReset":c[3]||=e=>K.value=e,"remote-form-changed":q.value,"onUpdate:remoteFormChanged":c[4]||=e=>q.value=e,tile:m(V),schema:Y.value,"only-draft":``,"with-position":!1,"with-size":!1},null,40,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`tile`,`schema`]))]),_:1})),m(z)?(l(),e(`div`,M,[n(`div`,N,[q.value?(l(),s(m(h),{key:0,link:``,class:`mr-2`,onClick:Z},{default:v(()=>[a(_(m(R)(`pagesCardsPlugin.buttons.discard.title`)),1)]),_:1})):g(``,!0),q.value?g(``,!0):(l(),s(m(h),{key:1,link:``,class:`mr-2`,onClick:$},{default:v(()=>[a(_(m(R)(`pagesCardsPlugin.buttons.close.title`)),1)]),_:1})),o(m(h),{loading:G.value===m(T).WORKING,disabled:G.value!==m(T).NONE||!q.value,type:`primary`,class:`order-2`,onClick:Q},re({default:v(()=>[a(` `+_(m(R)(`pagesCardsPlugin.buttons.update.title`)),1)]),_:2},[G.value===m(T).OK||G.value===m(T).ERROR?{name:`icon`,fn:v(()=>[G.value===m(T).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):G.value===m(T).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):g(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):g(``,!0)],8,j)),[[m(ue),m(H)||m(V)===null]])],64))}});export{P as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as d,Yr as f,ci as p,ji as m,jr as h,k as g,kr as _,qi as v,ui as y,x as b,xr as x}from"./icon-with-child-CgZMNB3F.js";import{t as S}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as C,Er as w,Qr as T,Tr as E,jr as D,vr as O,yr as k}from"./common-Be4p2bm6.js";import{t as A}from"./useUuid-B9e3LtCp.js";import{m as j,p as M}from"./composables-F1c0ZXok.js";import{n as N}from"./components-D2P4NPr0.js";var P={class:`uppercase`},F={class:`flex flex-col overflow-hidden h-full`},I={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},L={class:`p-2`},R=c({name:`ViewUserAdd`,__name:`view-user-add`,props:{remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:R}){let z=R,B=b(),{t:V}=d();S({title:V(`usersModule.meta.users.add.title`)});let{generate:H}=A(),{isMDDevice:U,isLGDevice:W}=k(),G=H(),K=u(!1),q=u(M.NONE),J=u(!1),Y=u(!1),X=r(()=>[{label:V(`usersModule.breadcrumbs.users`),route:B.resolve({name:j.USERS})},{label:V(`usersModule.breadcrumbs.editUser`),route:B.resolve({name:j.USER_ADD})}]),Z=()=>{D.confirm(V(`usersModule.texts.misc.confirmDiscard`),V(`usersModule.headings.discard`),{confirmButtonText:V(`usersModule.buttons.yes.title`),cancelButtonText:V(`usersModule.buttons.no.title`),type:`warning`}).then(()=>{W.value?B.replace({name:j.USERS}):B.push({name:j.USERS})}).catch(()=>{})},Q=()=>{K.value=!0},$=()=>{W.value?B.replace({name:j.USERS}):B.push({name:j.USERS})};return f(()=>{z(`update:remote-form-changed`,Y.value)}),p(()=>q.value,e=>{e===M.OK&&(W.value?B.replace({name:j.USERS}):B.push({name:j.USERS}))}),p(()=>Y.value,e=>{z(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(x,null,[o(m(E),{teleport:``},{icon:y(()=>[o(m(t),{icon:`mdi:user-multiple-add`,class:`w[32px] h[32px]`})]),title:y(()=>[a(v(m(V)(`usersModule.headings.addUser`)),1)]),subtitle:y(()=>[a(v(m(V)(`usersModule.subHeadings.addUser`)),1)]),_:1}),m(U)?_(``,!0):(l(),s(m(w),{key:0,align:m(C).LEFT,teleport:``,small:``,onClick:c[0]||=()=>Y.value?Z():$()},{icon:y(()=>[o(m(i),{size:24},{default:y(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(U)?_(``,!0):(l(),s(m(w),{key:1,align:m(C).RIGHT,teleport:``,small:``,onClick:Q},{default:y(()=>[n(`span`,P,v(m(V)(`usersModule.buttons.save.title`)),1)]),_:1},8,[`align`])),o(m(O),{items:X.value},null,8,[`items`]),n(`div`,F,[o(m(T),{class:`grow-1 p-2 md:px-4`},{default:y(()=>[o(m(N),{id:m(G),"remote-form-submit":K.value,"onUpdate:remoteFormSubmit":c[1]||=e=>K.value=e,"remote-form-result":q.value,"onUpdate:remoteFormResult":c[2]||=e=>q.value=e,"remote-form-reset":J.value,"onUpdate:remoteFormReset":c[3]||=e=>J.value=e,"remote-form-changed":Y.value,"onUpdate:remoteFormChanged":c[4]||=e=>Y.value=e},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`])]),_:1}),m(U)?(l(),e(`div`,I,[n(`div`,L,[Y.value?(l(),s(m(g),{key:0,link:``,class:`mr-2`,onClick:Z},{default:y(()=>[a(v(m(V)(`usersModule.buttons.discard.title`)),1)]),_:1})):_(``,!0),Y.value?_(``,!0):(l(),s(m(g),{key:1,link:``,class:`mr-2`,onClick:$},{default:y(()=>[a(v(m(V)(`usersModule.buttons.cancel.title`)),1)]),_:1})),o(m(g),{loading:q.value===m(M).WORKING,disabled:q.value!==m(M).NONE,type:`primary`,class:`order-2`,onClick:Q},h({default:y(()=>[a(` `+v(m(V)(`usersModule.buttons.save.title`)),1)]),_:2},[q.value===m(M).OK||q.value===m(M).ERROR?{name:`icon`,fn:y(()=>[q.value===m(M).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):q.value===m(M).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):_(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):_(``,!0)])],64))}});export{R as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as d,Yr as f,ci as p,ji as m,jr as h,k as g,kr as _,qi as v,ui as y,x as b,xr as x}from"./icon-with-child-CgZMNB3F.js";import{t as S}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as C,Er as w,Qr as T,Tr as E,jr as D,vr as O,yr as k}from"./common-D4Z2wgrj.js";import{t as A}from"./useUuid-D7PWqngt.js";import{m as j,p as M}from"./composables-B3z1DCa7.js";import{n as N}from"./components-CzhROY3R.js";var P={class:`uppercase`},F={class:`flex flex-col overflow-hidden h-full`},I={key:0,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},L={class:`p-2`},R=c({name:`ViewUserAdd`,__name:`view-user-add`,props:{remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(c,{emit:R}){let z=R,B=b(),{t:V}=d();S({title:V(`usersModule.meta.users.add.title`)});let{generate:H}=A(),{isMDDevice:U,isLGDevice:W}=k(),G=H(),K=u(!1),q=u(M.NONE),J=u(!1),Y=u(!1),X=r(()=>[{label:V(`usersModule.breadcrumbs.users`),route:B.resolve({name:j.USERS})},{label:V(`usersModule.breadcrumbs.editUser`),route:B.resolve({name:j.USER_ADD})}]),Z=()=>{D.confirm(V(`usersModule.texts.misc.confirmDiscard`),V(`usersModule.headings.discard`),{confirmButtonText:V(`usersModule.buttons.yes.title`),cancelButtonText:V(`usersModule.buttons.no.title`),type:`warning`}).then(()=>{W.value?B.replace({name:j.USERS}):B.push({name:j.USERS})}).catch(()=>{})},Q=()=>{K.value=!0},$=()=>{W.value?B.replace({name:j.USERS}):B.push({name:j.USERS})};return f(()=>{z(`update:remote-form-changed`,Y.value)}),p(()=>q.value,e=>{e===M.OK&&(W.value?B.replace({name:j.USERS}):B.push({name:j.USERS}))}),p(()=>Y.value,e=>{z(`update:remote-form-changed`,e)}),(r,c)=>(l(),e(x,null,[o(m(E),{teleport:``},{icon:y(()=>[o(m(t),{icon:`mdi:user-multiple-add`,class:`w[32px] h[32px]`})]),title:y(()=>[a(v(m(V)(`usersModule.headings.addUser`)),1)]),subtitle:y(()=>[a(v(m(V)(`usersModule.subHeadings.addUser`)),1)]),_:1}),m(U)?_(``,!0):(l(),s(m(w),{key:0,align:m(C).LEFT,teleport:``,small:``,onClick:c[0]||=()=>Y.value?Z():$()},{icon:y(()=>[o(m(i),{size:24},{default:y(()=>[o(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(U)?_(``,!0):(l(),s(m(w),{key:1,align:m(C).RIGHT,teleport:``,small:``,onClick:Q},{default:y(()=>[n(`span`,P,v(m(V)(`usersModule.buttons.save.title`)),1)]),_:1},8,[`align`])),o(m(O),{items:X.value},null,8,[`items`]),n(`div`,F,[o(m(T),{class:`grow-1 p-2 md:px-4`},{default:y(()=>[o(m(N),{id:m(G),"remote-form-submit":K.value,"onUpdate:remoteFormSubmit":c[1]||=e=>K.value=e,"remote-form-result":q.value,"onUpdate:remoteFormResult":c[2]||=e=>q.value=e,"remote-form-reset":J.value,"onUpdate:remoteFormReset":c[3]||=e=>J.value=e,"remote-form-changed":Y.value,"onUpdate:remoteFormChanged":c[4]||=e=>Y.value=e},null,8,[`id`,`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`])]),_:1}),m(U)?(l(),e(`div`,I,[n(`div`,L,[Y.value?(l(),s(m(g),{key:0,link:``,class:`mr-2`,onClick:Z},{default:y(()=>[a(v(m(V)(`usersModule.buttons.discard.title`)),1)]),_:1})):_(``,!0),Y.value?_(``,!0):(l(),s(m(g),{key:1,link:``,class:`mr-2`,onClick:$},{default:y(()=>[a(v(m(V)(`usersModule.buttons.cancel.title`)),1)]),_:1})),o(m(g),{loading:q.value===m(M).WORKING,disabled:q.value!==m(M).NONE,type:`primary`,class:`order-2`,onClick:Q},h({default:y(()=>[a(` `+v(m(V)(`usersModule.buttons.save.title`)),1)]),_:2},[q.value===m(M).OK||q.value===m(M).ERROR?{name:`icon`,fn:y(()=>[q.value===m(M).OK?(l(),s(m(t),{key:0,icon:`mdi:check-circle`})):q.value===m(M).ERROR?(l(),s(m(t),{key:1,icon:`mdi:cross-circle`})):_(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):_(``,!0)])],64))}});export{R as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as ee,H as r,Mr as i,Nr as a,Or as o,Pr as s,Qr as c,Si as l,T as u,Wr as d,Yr as te,ci as f,di as p,ji as m,jr as h,k as g,kr as _,qi as v,ui as y,x as b,xr as ne}from"./icon-with-child-CgZMNB3F.js";import{t as re}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as x,Er as S,P as C,Qr as w,Tr as ie,jr as ae,p as oe,vr as se,yr as ce}from"./common-Be4p2bm6.js";import{t as le}from"./directive-D42ORGRu.js";import{t as ue}from"./useUuid-B9e3LtCp.js";import{c as de,l as T,m as E,p as D,s as O}from"./composables-F1c0ZXok.js";import{t as k}from"./components-D2P4NPr0.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=s({name:`ViewUserEdit`,__name:`view-user-edit`,props:{id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(s,{emit:P}){let F=s,I=P,L=b(),{t:R}=u(),{meta:z}=re({}),B=oe(),{validate:V}=ue(),{isMDDevice:H,isLGDevice:U}=ce(),W=l(!1),{user:G,isLoading:K,fetchUser:fe}=O({id:F.id});if(!V(F.id))throw Error(`User identifier is not valid`);let q=l(!1),J=l(D.NONE),Y=l(!1),X=l(!1),pe=ee(()=>[{label:R(`usersModule.breadcrumbs.users`),route:L.resolve({name:E.USERS})},{label:R(`usersModule.breadcrumbs.editUser`),route:L.resolve({name:E.USER_EDIT,params:{id:F.id}})}]),Z=()=>{ae.confirm(R(`usersModule.texts.misc.confirmDiscard`),R(`usersModule.headings.discard`),{confirmButtonText:R(`usersModule.buttons.yes.title`),cancelButtonText:R(`usersModule.buttons.no.title`),type:`warning`}).then(()=>{U.value?L.replace({name:E.USERS}):L.push({name:E.USERS})}).catch(()=>{})},Q=()=>{q.value=!0},$=()=>{U.value?L.replace({name:E.USERS}):L.push({name:E.USERS})};return d(async()=>{fe().then(()=>{if(!K.value&&G.value===null&&!W.value)throw new T(`User not found`);G.value!==null&&(W.value=!0)}).catch(e=>{let t=e;throw t instanceof de&&t.code===404?new T(`User not found`):new T(`Something went wrong`,t)})}),te(()=>{I(`update:remote-form-changed`,X.value)}),f(()=>J.value,e=>{e===D.OK&&(U.value?L.replace({name:E.USERS}):L.push({name:E.USERS}))}),f(()=>K.value,e=>{if(!e&&G.value===null&&!W.value)throw new T(`User not found`)}),f(()=>G.value,e=>{if(e!==null)W.value=!0,z.title=R(`usersModule.meta.users.edit.title`,{user:G.value?.username});else if(W.value&&!K.value)B.warning(R(`usersModule.messages.deletedWhileEditing`),{duration:0}),U.value?L.replace({name:E.USERS}):L.push({name:E.USERS});else if(!K.value&&e===null&&!W.value)throw new T(`User not found`)}),f(()=>X.value,e=>{I(`update:remote-form-changed`,e)}),(ee,s)=>(c(),e(ne,null,[a(m(ie),{teleport:``},h({icon:y(()=>[a(m(C),{size:32,email:m(G)?.email},null,8,[`email`])]),title:y(()=>[i(v(m(G)?.username),1)]),_:2},[m(G)?.email===null?void 0:{name:`subtitle`,fn:y(()=>[i(v(m(G)?.email),1)]),key:`0`}]),1024),m(H)?_(``,!0):(c(),o(m(S),{key:0,align:m(x).LEFT,teleport:``,small:``,onClick:s[0]||=()=>X.value?Z():$()},{icon:y(()=>[a(m(r),{size:24},{default:y(()=>[a(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(H)?_(``,!0):(c(),o(m(S),{key:1,align:m(x).RIGHT,teleport:``,small:``,onClick:Q},{default:y(()=>[n(`span`,A,v(m(R)(`usersModule.buttons.save.title`)),1)]),_:1},8,[`align`])),a(m(se),{items:pe.value},null,8,[`items`]),p((c(),e(`div`,{"element-loading-text":m(R)(`usersModule.texts.misc.loadingUser`),class:`flex flex-col overflow-hidden h-full`},[m(G)===null?_(``,!0):(c(),o(m(w),{key:0,class:`grow-1 p-2 md:px-4`},{default:y(()=>[a(m(k),{"remote-form-submit":q.value,"onUpdate:remoteFormSubmit":s[1]||=e=>q.value=e,"remote-form-result":J.value,"onUpdate:remoteFormResult":s[2]||=e=>J.value=e,"remote-form-reset":Y.value,"onUpdate:remoteFormReset":s[3]||=e=>Y.value=e,"remote-form-changed":X.value,"onUpdate:remoteFormChanged":s[4]||=e=>X.value=e,user:m(G)},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`user`])]),_:1})),m(H)?(c(),e(`div`,M,[n(`div`,N,[X.value?(c(),o(m(g),{key:0,link:``,class:`mr-2`,onClick:Z},{default:y(()=>[i(v(m(R)(`usersModule.buttons.discard.title`)),1)]),_:1})):_(``,!0),X.value?_(``,!0):(c(),o(m(g),{key:1,link:``,class:`mr-2`,onClick:$},{default:y(()=>[i(v(m(R)(`usersModule.buttons.close.title`)),1)]),_:1})),a(m(g),{loading:J.value===m(D).WORKING,disabled:m(K)||J.value!==m(D).NONE||!X.value,type:`primary`,class:`order-2`,onClick:Q},h({default:y(()=>[i(` `+v(m(R)(`usersModule.buttons.save.title`)),1)]),_:2},[J.value===m(D).OK||J.value===m(D).ERROR?{name:`icon`,fn:y(()=>[J.value===m(D).OK?(c(),o(m(t),{key:0,icon:`mdi:check-circle`})):J.value===m(D).ERROR?(c(),o(m(t),{key:1,icon:`mdi:cross-circle`})):_(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):_(``,!0)],8,j)),[[m(le),m(K)||m(G)===null]])],64))}});export{P as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as ee,H as r,Mr as i,Nr as a,Or as o,Pr as s,Qr as c,Si as l,T as u,Wr as d,Yr as te,ci as f,di as p,ji as m,jr as h,k as g,kr as _,qi as v,ui as y,x as b,xr as ne}from"./icon-with-child-CgZMNB3F.js";import{t as re}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as x,Er as S,P as C,Qr as w,Tr as ie,jr as ae,p as oe,vr as se,yr as ce}from"./common-D4Z2wgrj.js";import{t as le}from"./directive-D42ORGRu.js";import{t as ue}from"./useUuid-D7PWqngt.js";import{c as de,l as T,m as E,p as D,s as O}from"./composables-B3z1DCa7.js";import{t as k}from"./components-CzhROY3R.js";var A={class:`uppercase`},j=[`element-loading-text`],M={key:1,class:`flex flex-row gap-2 justify-end items-center b-t b-t-solid shadow-top z-10 w-full h-[3rem]`,style:{"background-color":`var(--el-drawer-bg-color)`}},N={class:`p-2`},P=s({name:`ViewUserEdit`,__name:`view-user-edit`,props:{id:{},remoteFormChanged:{type:Boolean}},emits:[`update:remote-form-changed`],setup(s,{emit:P}){let F=s,I=P,L=b(),{t:R}=u(),{meta:z}=re({}),B=oe(),{validate:V}=ue(),{isMDDevice:H,isLGDevice:U}=ce(),W=l(!1),{user:G,isLoading:K,fetchUser:fe}=O({id:F.id});if(!V(F.id))throw Error(`User identifier is not valid`);let q=l(!1),J=l(D.NONE),Y=l(!1),X=l(!1),pe=ee(()=>[{label:R(`usersModule.breadcrumbs.users`),route:L.resolve({name:E.USERS})},{label:R(`usersModule.breadcrumbs.editUser`),route:L.resolve({name:E.USER_EDIT,params:{id:F.id}})}]),Z=()=>{ae.confirm(R(`usersModule.texts.misc.confirmDiscard`),R(`usersModule.headings.discard`),{confirmButtonText:R(`usersModule.buttons.yes.title`),cancelButtonText:R(`usersModule.buttons.no.title`),type:`warning`}).then(()=>{U.value?L.replace({name:E.USERS}):L.push({name:E.USERS})}).catch(()=>{})},Q=()=>{q.value=!0},$=()=>{U.value?L.replace({name:E.USERS}):L.push({name:E.USERS})};return d(async()=>{fe().then(()=>{if(!K.value&&G.value===null&&!W.value)throw new T(`User not found`);G.value!==null&&(W.value=!0)}).catch(e=>{let t=e;throw t instanceof de&&t.code===404?new T(`User not found`):new T(`Something went wrong`,t)})}),te(()=>{I(`update:remote-form-changed`,X.value)}),f(()=>J.value,e=>{e===D.OK&&(U.value?L.replace({name:E.USERS}):L.push({name:E.USERS}))}),f(()=>K.value,e=>{if(!e&&G.value===null&&!W.value)throw new T(`User not found`)}),f(()=>G.value,e=>{if(e!==null)W.value=!0,z.title=R(`usersModule.meta.users.edit.title`,{user:G.value?.username});else if(W.value&&!K.value)B.warning(R(`usersModule.messages.deletedWhileEditing`),{duration:0}),U.value?L.replace({name:E.USERS}):L.push({name:E.USERS});else if(!K.value&&e===null&&!W.value)throw new T(`User not found`)}),f(()=>X.value,e=>{I(`update:remote-form-changed`,e)}),(ee,s)=>(c(),e(ne,null,[a(m(ie),{teleport:``},h({icon:y(()=>[a(m(C),{size:32,email:m(G)?.email},null,8,[`email`])]),title:y(()=>[i(v(m(G)?.username),1)]),_:2},[m(G)?.email===null?void 0:{name:`subtitle`,fn:y(()=>[i(v(m(G)?.email),1)]),key:`0`}]),1024),m(H)?_(``,!0):(c(),o(m(S),{key:0,align:m(x).LEFT,teleport:``,small:``,onClick:s[0]||=()=>X.value?Z():$()},{icon:y(()=>[a(m(r),{size:24},{default:y(()=>[a(m(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),m(H)?_(``,!0):(c(),o(m(S),{key:1,align:m(x).RIGHT,teleport:``,small:``,onClick:Q},{default:y(()=>[n(`span`,A,v(m(R)(`usersModule.buttons.save.title`)),1)]),_:1},8,[`align`])),a(m(se),{items:pe.value},null,8,[`items`]),p((c(),e(`div`,{"element-loading-text":m(R)(`usersModule.texts.misc.loadingUser`),class:`flex flex-col overflow-hidden h-full`},[m(G)===null?_(``,!0):(c(),o(m(w),{key:0,class:`grow-1 p-2 md:px-4`},{default:y(()=>[a(m(k),{"remote-form-submit":q.value,"onUpdate:remoteFormSubmit":s[1]||=e=>q.value=e,"remote-form-result":J.value,"onUpdate:remoteFormResult":s[2]||=e=>J.value=e,"remote-form-reset":Y.value,"onUpdate:remoteFormReset":s[3]||=e=>Y.value=e,"remote-form-changed":X.value,"onUpdate:remoteFormChanged":s[4]||=e=>X.value=e,user:m(G)},null,8,[`remote-form-submit`,`remote-form-result`,`remote-form-reset`,`remote-form-changed`,`user`])]),_:1})),m(H)?(c(),e(`div`,M,[n(`div`,N,[X.value?(c(),o(m(g),{key:0,link:``,class:`mr-2`,onClick:Z},{default:y(()=>[i(v(m(R)(`usersModule.buttons.discard.title`)),1)]),_:1})):_(``,!0),X.value?_(``,!0):(c(),o(m(g),{key:1,link:``,class:`mr-2`,onClick:$},{default:y(()=>[i(v(m(R)(`usersModule.buttons.close.title`)),1)]),_:1})),a(m(g),{loading:J.value===m(D).WORKING,disabled:m(K)||J.value!==m(D).NONE||!X.value,type:`primary`,class:`order-2`,onClick:Q},h({default:y(()=>[i(` `+v(m(R)(`usersModule.buttons.save.title`)),1)]),_:2},[J.value===m(D).OK||J.value===m(D).ERROR?{name:`icon`,fn:y(()=>[J.value===m(D).OK?(c(),o(m(t),{key:0,icon:`mdi:check-circle`})):J.value===m(D).ERROR?(c(),o(m(t),{key:1,icon:`mdi:cross-circle`})):_(``,!0)]),key:`0`}:void 0]),1032,[`loading`,`disabled`])])])):_(``,!0)],8,j)),[[m(le),m(K)||m(G)===null]])],64))}});export{P as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,Sr as d,T as ee,Wr as te,Yr as ne,_i as f,b as p,ci as m,ii as h,ji as g,k as _,kr as v,ni as re,qi as y,ui as b,x as ie,xr as ae}from"./icon-with-child-CgZMNB3F.js";import{t as oe}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as x,Er as S,Or as se,Tr as ce,g as le,h as ue,jr as C,vr as w,yr as de}from"./common-Be4p2bm6.js";import{t as fe}from"./drawer-ZByrLyWq.js";import{l as pe,m as T,n as E,t as D}from"./composables-F1c0ZXok.js";import{t as O}from"./composables-DXuIMKku2.js";import{t as k}from"./list-users-BnLSxKig.js";var A={class:`uppercase`},j={class:`uppercase`},M={class:`flex items-center`},N={key:3,class:`grow-1 flex flex-col gap-2 lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2 overflow-hidden mt-2`},P={class:`flex flex-col h-full`},F=c({name:`ViewUsers`,__name:`view-users`,props:{id:{}},setup(c){let F=c,I=p(),L=ie(),{t:R}=ee(),{profile:z}=O();oe({title:R(`usersModule.meta.users.list.title`)});let{isMDDevice:B,isLGDevice:V}=de(),{fetchUsers:H,users:me,usersPaginated:he,totalRows:ge,filters:U,filtersActive:_e,sortBy:W,sortDir:G,paginateSize:K,paginatePage:q,areLoading:ve,resetFilter:ye}=E(),J=D(),be=u(!1),Y=u(!1),X=u(!1),Z=r(()=>I.name===T.USERS),xe=r(()=>[{label:R(`usersModule.breadcrumbs.users`),route:L.resolve({name:T.USERS})}]),Q=e=>{X.value?C.confirm(R(`usersModule.texts.misc.confirmDiscard`),R(`usersModule.headings.discard`),{confirmButtonText:R(`usersModule.buttons.yes.title`),cancelButtonText:R(`usersModule.buttons.no.title`),type:`warning`}).then(()=>{V.value?L.replace({name:T.USERS}):L.push({name:T.USERS}),e?.()}).catch(()=>{}):(V.value?L.replace({name:T.USERS}):L.push({name:T.USERS}),e?.())},Se=e=>{V.value?L.replace({name:T.USER_EDIT,params:{id:e}}):L.push({name:T.USER_EDIT,params:{id:e}})},$=()=>{V.value?L.replace({name:T.USER_ADD}):L.push({name:T.USER_ADD})},Ce=e=>{J.remove(e)},we=(e,t)=>{switch(e){case`delete`:J.bulkRemove(t);break}},Te=()=>{ye()};return te(()=>{H().catch(e=>{throw new pe(`Something went wrong`,e)}),Y.value=I.matched.find(e=>e.name===T.USER_ADD||e.name===T.USER_EDIT)!==void 0}),ne(()=>{be.value=!0}),m(()=>I.path,()=>{Y.value=I.matched.find(e=>e.name===T.USER_ADD||e.name===T.USER_EDIT)!==void 0}),(r,c)=>{let u=re(`router-view`);return l(),e(ae,null,[o(g(w),{items:xe.value},null,8,[`items`]),!g(B)&&Z.value?(l(),s(g(ce),{key:0,teleport:``},{icon:b(()=>[o(g(t),{icon:`mdi:users-group`,class:`w[20px] h[20px]`})]),title:b(()=>[a(y(g(R)(`usersModule.headings.users`)),1)]),subtitle:b(()=>[a(y(g(R)(`usersModule.subHeadings.users`)),1)]),_:1})):v(``,!0),!g(B)&&Z.value?(l(),s(g(S),{key:1,align:g(x).LEFT,teleport:``,small:``,onClick:c[0]||=e=>g(L).push(`/`)},{icon:b(()=>[o(g(i),{size:24},{default:b(()=>[o(g(t),{icon:`mdi:chevron-left`})]),_:1})]),default:b(()=>[n(`span`,A,y(g(R)(`application.buttons.home.title`)),1)]),_:1},8,[`align`])):v(``,!0),!g(B)&&Z.value?(l(),s(g(S),{key:2,align:g(x).RIGHT,teleport:``,small:``,onClick:$},{default:b(()=>[n(`span`,j,y(g(R)(`usersModule.buttons.add.title`)),1)]),_:1},8,[`align`])):v(``,!0),o(g(ue),{heading:g(R)(`usersModule.headings.users`),"sub-heading":g(R)(`usersModule.subHeadings.users`),icon:`mdi:users-group`},{extra:b(()=>[n(`div`,M,[o(g(_),{type:`primary`,plain:``,class:`px-4! ml-2!`,onClick:$},{icon:b(()=>[o(g(t),{icon:`mdi:plus`})]),default:b(()=>[a(` `+y(g(R)(`usersModule.buttons.add.title`)),1)]),_:1})])]),_:1},8,[`heading`,`sub-heading`]),Z.value||g(V)?(l(),e(`div`,N,[o(k,{filters:g(U),"onUpdate:filters":c[1]||=e=>f(U)?U.value=e:null,"sort-by":g(W),"onUpdate:sortBy":c[2]||=e=>f(W)?W.value=e:null,"sort-dir":g(G),"onUpdate:sortDir":c[3]||=e=>f(G)?G.value=e:null,"paginate-size":g(K),"onUpdate:paginateSize":c[4]||=e=>f(K)?K.value=e:null,"paginate-page":g(q),"onUpdate:paginatePage":c[5]||=e=>f(q)?q.value=e:null,items:g(he),"all-items":g(me),"total-rows":g(ge),loading:g(ve),"filters-active":g(_e),"current-user-id":g(z)?.id??null,onEdit:Se,onRemove:Ce,onResetFilters:Te,onBulkAction:we},null,8,[`filters`,`sort-by`,`sort-dir`,`paginate-size`,`paginate-page`,`items`,`all-items`,`total-rows`,`loading`,`filters-active`,`current-user-id`])])):(l(),s(u,{key:F.id},{default:b(({Component:e})=>[(l(),s(h(e)))]),_:1})),g(V)?(l(),s(g(fe),{key:5,modelValue:Y.value,"onUpdate:modelValue":c[8]||=e=>Y.value=e,"show-close":!1,size:`40%`,"with-header":!1,"before-close":Q},{default:b(()=>[n(`div`,P,[o(g(se),{"menu-button-hidden":``},{"button-right":b(()=>[o(g(S),{align:g(x).RIGHT,class:`mr-2`,onClick:c[6]||=()=>Q()},{icon:b(()=>[o(g(i),null,{default:b(()=>[o(g(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),Y.value?(l(),s(g(le),{key:0},{icon:b(()=>[o(g(t),{icon:`mdi:user-edit`})]),message:b(()=>[a(y(g(R)(`usersModule.messages.requestError`)),1)]),default:b(()=>[(l(),s(d,null,{default:b(()=>[(l(),s(u,{key:F.id},{default:b(({Component:e})=>[(l(),s(h(e),{"remote-form-changed":X.value,"onUpdate:remoteFormChanged":c[7]||=e=>X.value=e},null,40,[`remote-form-changed`]))]),_:1}))]),_:1}))]),_:1})):v(``,!0)])]),_:1},8,[`modelValue`])):v(``,!0)],64)}}});export{F as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,Sr as d,T as ee,Wr as te,Yr as ne,_i as f,b as p,ci as m,ii as h,ji as g,k as _,kr as v,ni as re,qi as y,ui as b,x as ie,xr as ae}from"./icon-with-child-CgZMNB3F.js";import{t as oe}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as x,Er as S,Or as se,Tr as ce,g as le,h as ue,jr as C,vr as w,yr as de}from"./common-D4Z2wgrj.js";import{t as fe}from"./drawer-Dnlv6Zc7.js";import{l as pe,m as T,n as E,t as D}from"./composables-B3z1DCa7.js";import{t as O}from"./composables-CPxmcJSb2.js";import{t as k}from"./list-users-1kC5_j5X.js";var A={class:`uppercase`},j={class:`uppercase`},M={class:`flex items-center`},N={key:3,class:`grow-1 flex flex-col gap-2 lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2 overflow-hidden mt-2`},P={class:`flex flex-col h-full`},F=c({name:`ViewUsers`,__name:`view-users`,props:{id:{}},setup(c){let F=c,I=p(),L=ie(),{t:R}=ee(),{profile:z}=O();oe({title:R(`usersModule.meta.users.list.title`)});let{isMDDevice:B,isLGDevice:V}=de(),{fetchUsers:H,users:me,usersPaginated:he,totalRows:ge,filters:U,filtersActive:_e,sortBy:W,sortDir:G,paginateSize:K,paginatePage:q,areLoading:ve,resetFilter:ye}=E(),J=D(),be=u(!1),Y=u(!1),X=u(!1),Z=r(()=>I.name===T.USERS),xe=r(()=>[{label:R(`usersModule.breadcrumbs.users`),route:L.resolve({name:T.USERS})}]),Q=e=>{X.value?C.confirm(R(`usersModule.texts.misc.confirmDiscard`),R(`usersModule.headings.discard`),{confirmButtonText:R(`usersModule.buttons.yes.title`),cancelButtonText:R(`usersModule.buttons.no.title`),type:`warning`}).then(()=>{V.value?L.replace({name:T.USERS}):L.push({name:T.USERS}),e?.()}).catch(()=>{}):(V.value?L.replace({name:T.USERS}):L.push({name:T.USERS}),e?.())},Se=e=>{V.value?L.replace({name:T.USER_EDIT,params:{id:e}}):L.push({name:T.USER_EDIT,params:{id:e}})},$=()=>{V.value?L.replace({name:T.USER_ADD}):L.push({name:T.USER_ADD})},Ce=e=>{J.remove(e)},we=(e,t)=>{switch(e){case`delete`:J.bulkRemove(t);break}},Te=()=>{ye()};return te(()=>{H().catch(e=>{throw new pe(`Something went wrong`,e)}),Y.value=I.matched.find(e=>e.name===T.USER_ADD||e.name===T.USER_EDIT)!==void 0}),ne(()=>{be.value=!0}),m(()=>I.path,()=>{Y.value=I.matched.find(e=>e.name===T.USER_ADD||e.name===T.USER_EDIT)!==void 0}),(r,c)=>{let u=re(`router-view`);return l(),e(ae,null,[o(g(w),{items:xe.value},null,8,[`items`]),!g(B)&&Z.value?(l(),s(g(ce),{key:0,teleport:``},{icon:b(()=>[o(g(t),{icon:`mdi:users-group`,class:`w[20px] h[20px]`})]),title:b(()=>[a(y(g(R)(`usersModule.headings.users`)),1)]),subtitle:b(()=>[a(y(g(R)(`usersModule.subHeadings.users`)),1)]),_:1})):v(``,!0),!g(B)&&Z.value?(l(),s(g(S),{key:1,align:g(x).LEFT,teleport:``,small:``,onClick:c[0]||=e=>g(L).push(`/`)},{icon:b(()=>[o(g(i),{size:24},{default:b(()=>[o(g(t),{icon:`mdi:chevron-left`})]),_:1})]),default:b(()=>[n(`span`,A,y(g(R)(`application.buttons.home.title`)),1)]),_:1},8,[`align`])):v(``,!0),!g(B)&&Z.value?(l(),s(g(S),{key:2,align:g(x).RIGHT,teleport:``,small:``,onClick:$},{default:b(()=>[n(`span`,j,y(g(R)(`usersModule.buttons.add.title`)),1)]),_:1},8,[`align`])):v(``,!0),o(g(ue),{heading:g(R)(`usersModule.headings.users`),"sub-heading":g(R)(`usersModule.subHeadings.users`),icon:`mdi:users-group`},{extra:b(()=>[n(`div`,M,[o(g(_),{type:`primary`,plain:``,class:`px-4! ml-2!`,onClick:$},{icon:b(()=>[o(g(t),{icon:`mdi:plus`})]),default:b(()=>[a(` `+y(g(R)(`usersModule.buttons.add.title`)),1)]),_:1})])]),_:1},8,[`heading`,`sub-heading`]),Z.value||g(V)?(l(),e(`div`,N,[o(k,{filters:g(U),"onUpdate:filters":c[1]||=e=>f(U)?U.value=e:null,"sort-by":g(W),"onUpdate:sortBy":c[2]||=e=>f(W)?W.value=e:null,"sort-dir":g(G),"onUpdate:sortDir":c[3]||=e=>f(G)?G.value=e:null,"paginate-size":g(K),"onUpdate:paginateSize":c[4]||=e=>f(K)?K.value=e:null,"paginate-page":g(q),"onUpdate:paginatePage":c[5]||=e=>f(q)?q.value=e:null,items:g(he),"all-items":g(me),"total-rows":g(ge),loading:g(ve),"filters-active":g(_e),"current-user-id":g(z)?.id??null,onEdit:Se,onRemove:Ce,onResetFilters:Te,onBulkAction:we},null,8,[`filters`,`sort-by`,`sort-dir`,`paginate-size`,`paginate-page`,`items`,`all-items`,`total-rows`,`loading`,`filters-active`,`current-user-id`])])):(l(),s(u,{key:F.id},{default:b(({Component:e})=>[(l(),s(h(e)))]),_:1})),g(V)?(l(),s(g(fe),{key:5,modelValue:Y.value,"onUpdate:modelValue":c[8]||=e=>Y.value=e,"show-close":!1,size:`40%`,"with-header":!1,"before-close":Q},{default:b(()=>[n(`div`,P,[o(g(se),{"menu-button-hidden":``},{"button-right":b(()=>[o(g(S),{align:g(x).RIGHT,class:`mr-2`,onClick:c[6]||=()=>Q()},{icon:b(()=>[o(g(i),null,{default:b(()=>[o(g(t),{icon:`mdi:close`})]),_:1})]),_:1},8,[`align`])]),_:1}),Y.value?(l(),s(g(le),{key:0},{icon:b(()=>[o(g(t),{icon:`mdi:user-edit`})]),message:b(()=>[a(y(g(R)(`usersModule.messages.requestError`)),1)]),default:b(()=>[(l(),s(d,null,{default:b(()=>[(l(),s(u,{key:F.id},{default:b(({Component:e})=>[(l(),s(h(e),{"remote-form-changed":X.value,"onUpdate:remoteFormChanged":c[7]||=e=>X.value=e},null,40,[`remote-form-changed`]))]),_:1}))]),_:1}))]),_:1})):v(``,!0)])]),_:1},8,[`modelValue`])):v(``,!0)],64)}}});export{F as default};
@@ -1 +1 @@
1
- import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as d,bi as f,ci as p,ei as m,ji as h,jr as g,k as _,kr as v,n as y,qi as b,r as x,ui as S,x as C,xr as w}from"./icon-with-child-CgZMNB3F.js";import{t as T}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as E,Er as D,Mr as O,Qr as k,Tr as A,_ as j,_r as M,dn as N,ei as P,h as F,kn as I,m as L,p as R,qr as z,r as te,rn as B,sn as ne,vr as V,x as re,yr as H}from"./common-Be4p2bm6.js";import{n as U,t as ie}from"./descriptions-OOM-Fb43.js";import{n as W,t as ae}from"./table-I-saZisX.js";import{n as G,t as K}from"./form-0kI-cr8s.js";import{t as q}from"./alert-yihCwD8R.js";import{r as J,t as Y}from"./select-DhXPyxTf.js";import{t as X}from"./card-C50YgvLJ.js";import{t as oe}from"./checkbox-BnTF8QQI.js";import{x as se}from"./components-BSArkYBL.js";import{n as Z,t as Q}from"./steps-n7W-efe3.js";import{t as ce}from"./dist-DJgPCOr0.js";import{C as le,g as ue,n as de}from"./keys-DakHO8Vr.js";import{a as fe,n as pe,r as me}from"./keys-DghNVBR5.js";import{o as $,r as he}from"./devices.constants-HX5whDWr.js";import"./devices-BigHPDnE.js";import{A as ge,M as _e,N as ve,P as ye,j as be,k as xe}from"./composables-D5PbebWI.js";import{a as Se,i as Ce,n as we,o as Te,r as Ee}from"./devices-virtual.constants-CJ8nxI4P.js";var De={class:`space-y-4`},Oe={key:0,"data-test-id":`blocked-categories`},ke={class:`text-sm text-gray-500 mb-2`},Ae={class:`flex flex-wrap gap-2`},je=c({name:`VirtualWizardCategoryStep`,__name:`virtual-wizard-category-step`,props:{modelValue:{}},emits:[`update:modelValue`],setup(t,{expose:i,emit:c}){let u=c,{t:d}=ee(),f=r(()=>Te.map(e=>({value:e,label:d(`devicesModule.categories.devices.${e}`)}))),p=r(()=>Se.map(e=>({value:e,label:d(`devicesModule.categories.devices.${e}`),reason:d(`devicesVirtualPlugin.wizard.category.blockedReason`)}))),g=e=>{u(`update:modelValue`,e)};return i({categories:f,blockedCategories:p}),(r,i)=>(l(),e(`div`,De,[o(h(q),{type:`info`,title:h(d)(`devicesVirtualPlugin.wizard.category.heading`),description:h(d)(`devicesVirtualPlugin.wizard.category.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),o(h(K),{"label-position":`top`},{default:S(()=>[o(h(G),{label:h(d)(`devicesVirtualPlugin.fields.devices.category.title`)},{default:S(()=>[o(h(J),{"model-value":t.modelValue,placeholder:h(d)(`devicesVirtualPlugin.fields.devices.category.placeholder`),name:`category`,filterable:``,class:`w-full`,"onUpdate:modelValue":g},{default:S(()=>[(l(!0),e(w,null,m(f.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`])]),_:1},8,[`label`])]),_:1}),p.value.length>0?(l(),e(`div`,Oe,[n(`p`,ke,b(h(d)(`devicesVirtualPlugin.wizard.category.blockedHeading`)),1),n(`div`,Ae,[(l(!0),e(w,null,m(p.value,e=>(l(),s(h(z),{key:e.value,type:`info`,title:e.reason,class:`opacity-60! cursor-not-allowed!`},{default:S(()=>[a(b(e.label),1)]),_:2},1032,[`title`]))),128))])])):v(``,!0)]))}}),Me={class:`space-y-4`},Ne={class:`text-xs text-gray-500 mt-1`},Pe={class:`text-xs text-gray-500 mt-1`},Fe=c({name:`VirtualWizardDetailsStep`,__name:`virtual-wizard-details-step`,props:{category:{},name:{},roomId:{},zoneIds:{}},emits:[`update:name`,`update:roomId`,`update:zoneIds`],setup(t,{expose:i,emit:a}){let c=t,f=a,{t:g}=ee(),_=j(),v=re().getStore(de),y=r(()=>c.name),x=r(()=>c.roomId),C=r(()=>c.zoneIds),T=r(()=>ce(v.findAll().filter(e=>e.type===ue.ROOM),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),E=r(()=>ce(v.findAll().filter(e=>e.type===ue.ZONE&&!le(e.category)),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),D=r(()=>{if(c.category===null)return``;let e=g(`devicesModule.categories.devices.${c.category}`);if(c.roomId===null)return e;let t=v.findById(c.roomId);return t?`${e} — ${t.name}`:e}),O=u(c.name===``||c.name===D.value?c.name:null);p(D,e=>{c.name===O.value&&e!==c.name&&(O.value=e,f(`update:name`,e))},{immediate:!0});let k=e=>{f(`update:name`,e)},A=e=>{f(`update:roomId`,e)},M=e=>{f(`update:zoneIds`,e)};return d(()=>{v.fetch().catch(e=>_.error(`Failed to load rooms and zones`,e))}),i({roomOptions:T,zoneOptions:E,generatedName:D}),(t,r)=>(l(),e(`div`,Me,[o(h(q),{type:`info`,title:h(g)(`devicesVirtualPlugin.wizard.details.heading`),description:h(g)(`devicesVirtualPlugin.wizard.details.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),o(h(K),{"label-position":`top`},{default:S(()=>[o(h(G),{label:h(g)(`devicesVirtualPlugin.fields.devices.name.title`)},{default:S(()=>[o(h(P),{"model-value":y.value,placeholder:h(g)(`devicesVirtualPlugin.fields.devices.name.placeholder`),name:`name`,"onUpdate:modelValue":k},null,8,[`model-value`,`placeholder`])]),_:1},8,[`label`]),o(h(G),{label:h(g)(`devicesModule.fields.devices.room.title`)},{default:S(()=>[o(h(J),{"model-value":x.value,placeholder:h(g)(`devicesModule.fields.devices.room.placeholder`),name:`room`,filterable:``,clearable:``,class:`w-full`,"onUpdate:modelValue":A},{default:S(()=>[(l(!0),e(w,null,m(T.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`]),n(`div`,Ne,b(h(g)(`devicesModule.fields.devices.room.hint`)),1)]),_:1},8,[`label`]),o(h(G),{label:h(g)(`devicesModule.fields.devices.zones.title`)},{default:S(()=>[o(h(J),{"model-value":C.value,placeholder:h(g)(`devicesModule.fields.devices.zones.placeholder`),name:`zones`,filterable:``,clearable:``,multiple:``,class:`w-full`,"onUpdate:modelValue":M},{default:S(()=>[(l(!0),e(w,null,m(E.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`]),n(`div`,Pe,b(h(g)(`devicesModule.fields.devices.zones.hint`)),1)]),_:1},8,[`label`])]),_:1})]))}}),Ie={class:`space-y-4`},Le={class:`flex items-center gap-3`,"data-test-id":`mapping-progress`},Re=[`data-test-id`],ze={class:`flex items-center gap-2 flex-wrap`},Be={class:`flex flex-wrap items-center gap-2`},Ve=[`data-test-id`],He={class:`flex items-center gap-2 flex-wrap`},Ue={class:`text-sm font-medium`},We={class:`flex flex-wrap items-center gap-2`},Ge=c({name:`VirtualWizardMappingStep`,__name:`virtual-wizard-mapping-step`,props:{category:{},modelValue:{}},emits:[`update:modelValue`,`update:valid`],setup(t,{expose:i,emit:c}){let u=t,g=c,{t:y}=ee(),C=L(),T=j(),E=R(),D=re(),k=D.getStore(fe),A=D.getStore(me),M=D.getStore(pe),N=f({}),P=f({}),F=f({}),V=f({}),H=f({}),U=f({}),ie=0,W=new Map,ae=e=>ye[e]?.constraints??{},G=e=>ve[e]?.constraints??{},K=r(()=>{if(u.category===null)return[];let e=ge[u.category];if(!e)return[];let t=(be[u.category]??[...e.required,...e.optional]).filter(e=>e!==B.device_information);return[...t.filter(t=>e.required.includes(t)),...t.filter(t=>!e.required.includes(t))].map(t=>{let n=e.required.includes(t),r=xe[t]??{required:[],optional:[]};return{specChannel:t,required:n,slots:[...r.required,...r.optional].map(e=>{let i=_e(t,e),a=r.required.includes(e);return{key:`${t}.${e}`,specChannel:t,specProperty:e,required:n&&a,channelRequired:n,propertyRequired:a,permissions:i?.permissions??[],dataType:i?.data_type??null,unit:i?.unit??null}})}})}),X=r(()=>K.value.flatMap(e=>e.slots)),oe=r(()=>X.value.map(e=>({specChannel:e.specChannel,specProperty:e.specProperty,sourceProperty:N[e.key]??null}))),Z=r(()=>{let e=new Set(X.value.filter(e=>typeof N[e.key]==`string`).map(e=>e.specChannel)),t=X.value.filter(t=>t.required||t.propertyRequired&&e.has(t.specChannel)),n=t.filter(e=>typeof N[e.key]!=`string`);return{requiredTotal:t.length,requiredFilled:t.length-n.length,remaining:n}}),Q=r(()=>Object.keys(N).length>0),le=r(()=>Q.value&&Z.value.remaining.length===0),ue=r(()=>Z.value.requiredTotal===0?Q.value?100:0:Math.round(Z.value.requiredFilled/Z.value.requiredTotal*100)),de=r(()=>{let e=[],t=K.value.filter(e=>e.slots.some(e=>typeof N[e.key]==`string`)).map(e=>e.specChannel);if(u.category!==null&&t.length>0){let n=G(u.category);for(let r of n.oneOrMoreOf??[])r.some(e=>t.includes(e))||e.push({specChannel:r[0],message:y(`devicesVirtualPlugin.wizard.mapping.constraints.deviceOneOrMoreOf`,{channels:r.map(e=>y(`devicesModule.categories.channels.${e}`)).join(`, `)})});for(let r of n.oneOf??[])r.filter(e=>t.includes(e)).length>1&&e.push({specChannel:r[0],message:y(`devicesVirtualPlugin.wizard.mapping.constraints.deviceOneOf`,{channels:r.map(e=>y(`devicesModule.categories.channels.${e}`)).join(`, `)})});for(let r of n.mutuallyExclusiveGroups??[]){let n=r.filter(e=>e.some(e=>t.includes(e)));n.length>1&&e.push({specChannel:n[0][0],message:y(`devicesVirtualPlugin.wizard.mapping.constraints.deviceMutuallyExclusive`,{groups:n.map(e=>e.map(e=>y(`devicesModule.categories.channels.${e}`)).join(` + `)).join(` / `)})})}}for(let t of K.value){let n=t.slots.filter(e=>typeof N[e.key]==`string`).map(e=>e.specProperty);if(n.length===0)continue;let r=ae(t.specChannel);for(let i of r.oneOrMoreOf??[])i.some(e=>n.includes(e))||e.push({specChannel:t.specChannel,message:y(`devicesVirtualPlugin.wizard.mapping.constraints.oneOrMoreOf`,{properties:i.map(e=>y(`devicesModule.categories.channelsProperties.${e}`)).join(`, `)})});for(let i of r.oneOf??[])i.filter(e=>n.includes(e)).length>1&&e.push({specChannel:t.specChannel,message:y(`devicesVirtualPlugin.wizard.mapping.constraints.oneOf`,{properties:i.map(e=>y(`devicesModule.categories.channelsProperties.${e}`)).join(`, `)})});for(let i of r.mutuallyExclusiveGroups??[]){let r=i.filter(e=>e.some(e=>n.includes(e)));r.length>1&&e.push({specChannel:t.specChannel,message:y(`devicesVirtualPlugin.wizard.mapping.constraints.mutuallyExclusive`,{groups:r.map(e=>e.map(e=>y(`devicesModule.categories.channelsProperties.${e}`)).join(` + `)).join(` / `)})})}}return e}),$=r(()=>Object.values(F).some(e=>e)),he=r(()=>u.category!==null&&le.value&&Object.keys(P).length===0&&de.value.length===0&&!$.value),Se=r(()=>ce(k.findAll().filter(e=>!e.draft&&(!e.hidden||e.hiddenBy===ne.system)&&e.type!==`virtual`),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),Ce=e=>e===null?[]:ce(A.findForDevice(e),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name})),Te=e=>e===null?[]:ce(M.findForChannel(e),[e=>e.name??e.category],[`asc`]).map(e=>({value:e.id,label:e.name??y(`devicesModule.categories.channelsProperties.${e.category}`)})),Ee=e=>[e.dataType,e.unit,e.permissions.join(`/`)].filter(e=>typeof e==`string`&&e.length>0).join(` · `),De=(e,t)=>t.required||U[e.specChannel]===!0||typeof N[t.key]==`string`||typeof P[t.key]==`string`,Oe=e=>e.slots.filter(t=>De(e,t)),ke=e=>e.slots.length-Oe(e).length,Ae=async e=>{try{return await A.fetch({deviceId:e})}catch(t){return T.error(`Failed to load source channels`,t),A.findForDevice(e)}},je=async e=>{try{await M.fetch({channelId:e})}catch(e){T.error(`Failed to load source properties`,e)}return M.findForChannel(e)},Me=(e,t,n)=>{let r=e=>e.spec_channel===t.slot.specChannel&&e.spec_property===t.slot.specProperty&&e.source_property===t.sourceProperty,i=e[n];return i&&r(i)?i:e.find(r)??null},Ne=async e=>{if(u.category===null||e.length===0)return;let t=++ie;for(let n of e)W.set(n.slot.key,t),F[n.slot.key]=!0,delete P[n.slot.key];let n=(e,n)=>{W.get(e)===t&&(delete F[e],n===null?delete P[e]:P[e]=n)};try{let{data:t,error:r}=await C.client.POST(`/${x}/${we}/devices/compatibility`,{body:{data:{category:u.category,candidates:e.map(e=>({spec_channel:e.slot.specChannel,spec_property:e.slot.specProperty,source_property:e.sourceProperty}))}}}),i=t?.data;if(!i){let t=r?te(r,y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`)):y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`);for(let r of e)n(r.slot.key,t);E.error(t);return}e.forEach((e,t)=>{let r=Me(i,e,t);if(!r){n(e.slot.key,y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`));return}n(e.slot.key,r.compatible?null:r.reason??y(`devicesVirtualPlugin.wizard.mapping.errors.incompatible`))})}catch(t){T.error(`Virtual device compatibility check failed`,t);let r=y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`);for(let t of e)n(t.slot.key,r);E.error(r)}},Pe=async(e,t)=>{let n=X.value.find(t=>t.key===e);if(n){if(W.set(e,++ie),delete P[e],delete F[e],t===null){delete N[e];return}N[e]=t,await Ne([{slot:n,sourceProperty:t}])}},Fe=async(e,t)=>{let n=K.value.find(t=>t.specChannel===e);if(!n||t===null)return;let r=++ie;for(let e of n.slots)W.set(e.key,r),delete F[e.key];let i=await je(t);if(n.slots.some(e=>W.get(e.key)!==r))return;let a=A.findById(t),o=[];for(let e of n.slots){let n=i.find(t=>t.category===e.specProperty);if(!n){let t=N[e.key];t&&o.push({slot:e,sourceProperty:t});continue}delete P[e.key],N[e.key]=n.id,V[e.key]={device:a?.device??null,channel:t},o.push({slot:e,sourceProperty:n.id})}if(o.length===0){E.info(y(`devicesVirtualPlugin.wizard.mapping.shortcut.nothingApplied`));return}U[e]=!0,E.info(y(`devicesVirtualPlugin.wizard.mapping.shortcut.applied`,{filled:o.length,total:n.slots.length})),await Ne(o)},Ge=(e,t)=>{V[e]={device:t,channel:null},Pe(e,null).catch(e=>T.error(`Failed to clear source property`,e)),t!==null&&Ae(t).catch(e=>T.error(`Failed to load source channels`,e))},Ke=(e,t)=>{V[e]={device:V[e]?.device??null,channel:t},Pe(e,null).catch(e=>T.error(`Failed to clear source property`,e)),t!==null&&je(t).catch(e=>T.error(`Failed to load source properties`,e))},qe=(e,t)=>{Pe(e,t).catch(e=>T.error(`Failed to select source property`,e))},Je=(e,t)=>{H[e]={device:t,channel:null},t!==null&&Ae(t).catch(e=>T.error(`Failed to load source channels`,e))},Ye=(e,t)=>{H[e]={device:H[e]?.device??null,channel:t},t!==null&&je(t).catch(e=>T.error(`Failed to load source properties`,e))},Xe=e=>{Fe(e,H[e]?.channel??null).catch(e=>T.error(`Failed to apply source channel`,e))},Ze=e=>e.filter(e=>e.sourceProperty!==null).map(e=>`${e.specChannel}.${e.specProperty}=${e.sourceProperty}`).sort().join(`|`),Qe=()=>{for(let[e,t]of Object.entries(N)){if(V[e]?.channel)continue;let n=M.findById(t),r=n?A.findById(n.channel):null;V[e]={device:r?.device??null,channel:r?.id??null}}};return p(()=>u.modelValue,e=>{if(Ze(e)!==Ze(oe.value)){for(let e of Object.keys(N))delete N[e];for(let e of Object.keys(P))delete P[e];for(let e of Object.keys(F))delete F[e];for(let e of Object.keys(V))delete V[e];W.clear();for(let t of e)t.sourceProperty!==null&&(N[`${t.specChannel}.${t.specProperty}`]=t.sourceProperty);Qe()}},{deep:!0,immediate:!0}),p(()=>u.category,(e,t)=>{if(!(t==null||t===e)){for(let e of Object.keys(N))delete N[e];for(let e of Object.keys(P))delete P[e];for(let e of Object.keys(F))delete F[e];for(let e of Object.keys(V))delete V[e];for(let e of Object.keys(H))delete H[e];W.clear(),ie++}}),p(oe,e=>g(`update:modelValue`,e),{deep:!0,immediate:!0}),p(he,e=>g(`update:valid`,e),{immediate:!0}),d(()=>{k.fetch({hidden:I.all}).catch(e=>T.error(`Failed to load source devices`,e))}),i({slots:X,groups:K,errors:P,checking:F,pickers:V,progress:Z,constraintViolations:de,isValid:he,sourceDevicesOptions:Se,selectSource:Pe,applyChannel:Fe}),(r,i)=>(l(),e(`div`,Ie,[o(h(q),{type:`info`,title:h(y)(`devicesVirtualPlugin.wizard.mapping.heading`),description:h(y)(`devicesVirtualPlugin.wizard.mapping.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),t.category===null?(l(),s(h(q),{key:0,type:`warning`,title:h(y)(`devicesVirtualPlugin.wizard.mapping.noCategory`),closable:!1,"show-icon":``},null,8,[`title`])):(l(),e(w,{key:1},[n(`div`,Le,[o(h(se),{percentage:ue.value,status:le.value?`success`:void 0,class:`grow`},null,8,[`percentage`,`status`]),Z.value.requiredTotal>0?(l(),s(h(O),{key:0,size:`small`,class:`whitespace-nowrap`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.progress`,{filled:Z.value.requiredFilled,total:Z.value.requiredTotal})),1)]),_:1})):Q.value?v(``,!0):(l(),s(h(O),{key:1,size:`small`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.noRequired`)),1)]),_:1}))]),(l(!0),e(w,null,m(de.value,e=>(l(),s(h(q),{key:`${e.specChannel}-${e.message}`,type:`error`,closable:!1,"show-icon":``,class:`mt-2`,"data-test-id":`constraint-violation`},{default:S(()=>[n(`strong`,null,b(h(y)(`devicesModule.categories.channels.${e.specChannel}`)),1),a(` `+b(e.message),1)]),_:2},1024))),128)),(l(!0),e(w,null,m(K.value,t=>(l(),e(`div`,{key:t.specChannel,class:`b b-solid b-gray-200 dark:b-gray-700 rounded p-3 space-y-3`,"data-test-id":`slot-group-${t.specChannel}`},[n(`div`,ze,[n(`strong`,null,b(h(y)(`devicesModule.categories.channels.${t.specChannel}`)),1),o(h(z),{type:t.required?`danger`:`info`,size:`small`},{default:S(()=>[a(b(t.required?h(y)(`devicesVirtualPlugin.wizard.mapping.channelRequired`):h(y)(`devicesVirtualPlugin.wizard.mapping.channelOptional`)),1)]),_:2},1032,[`type`])]),n(`div`,Be,[o(h(O),{size:`small`,class:`basis-full`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.shortcut.description`)),1)]),_:1}),o(h(J),{"model-value":H[t.specChannel]?.device??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.devicePlaceholder`),name:`shortcut-device-${t.specChannel}`,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Je(t.specChannel,e)},{default:S(()=>[(l(!0),e(w,null,m(Se.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`name`,`onUpdate:modelValue`]),o(h(J),{"model-value":H[t.specChannel]?.channel??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.channelPlaceholder`),name:`shortcut-channel-${t.specChannel}`,disabled:!H[t.specChannel]?.device,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Ye(t.specChannel,e)},{default:S(()=>[(l(!0),e(w,null,m(Ce(H[t.specChannel]?.device??null),e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`name`,`disabled`,`onUpdate:modelValue`]),o(h(_),{disabled:!H[t.specChannel]?.channel,plain:``,onClick:e=>Xe(t.specChannel)},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.shortcut.apply`)),1)]),_:1},8,[`disabled`,`onClick`])]),(l(!0),e(w,null,m(Oe(t),t=>(l(),e(`div`,{key:t.key,class:`space-y-1`,"data-test-id":`slot-${t.key}`},[n(`div`,He,[n(`span`,Ue,b(h(y)(`devicesModule.categories.channelsProperties.${t.specProperty}`)),1),t.required?(l(),s(h(z),{key:0,type:`danger`,size:`small`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.propertyRequired`)),1)]),_:1})):v(``,!0),o(h(O),{size:`small`,type:`info`},{default:S(()=>[a(b(Ee(t)),1)]),_:2},1024)]),n(`div`,We,[o(h(J),{"model-value":V[t.key]?.device??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.devicePlaceholder`),name:`device-${t.key}`,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Ge(t.key,e)},{default:S(()=>[(l(!0),e(w,null,m(Se.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`name`,`onUpdate:modelValue`]),o(h(J),{"model-value":V[t.key]?.channel??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.channelPlaceholder`),name:`channel-${t.key}`,disabled:!V[t.key]?.device,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Ke(t.key,e)},{default:S(()=>[(l(!0),e(w,null,m(Ce(V[t.key]?.device??null),e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`name`,`disabled`,`onUpdate:modelValue`]),o(h(J),{"model-value":N[t.key]??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.propertyPlaceholder`),name:`property-${t.key}`,disabled:!V[t.key]?.channel,loading:F[t.key]===!0,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>qe(t.key,e)},{default:S(()=>[(l(!0),e(w,null,m(Te(V[t.key]?.channel??null),e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`name`,`disabled`,`loading`,`onUpdate:modelValue`])]),P[t.key]?(l(),s(h(O),{key:0,size:`small`,type:`danger`,class:`block`,"data-test-id":`slot-error-${t.key}`},{default:S(()=>[a(b(P[t.key]),1)]),_:2},1032,[`data-test-id`])):v(``,!0)],8,Ve))),128)),ke(t)>0?(l(),s(h(_),{key:0,link:``,type:`primary`,onClick:e=>U[t.specChannel]=!0},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.showOptional`,{count:ke(t)})),1)]),_:2},1032,[`onClick`])):v(``,!0)],8,Re))),128))],64))]))}}),Ke={class:`space-y-4`},qe={class:`text-xs text-gray-500`},Je=c({name:`VirtualWizardReviewStep`,__name:`virtual-wizard-review-step`,props:{category:{},mappings:{},name:{},roomId:{},zoneIds:{},showCreateAction:{type:Boolean,default:!0}},emits:[`created`,`submitting`],setup(t,{expose:i,emit:c}){let d=t,f=c,{t:p}=ee(),m=L(),g=j(),x=R(),C=re(),T=C.getStore(fe),E=C.getStore(me),D=C.getStore(pe),O=C.getStore(de),k=u(`idle`),A=u(null),M=u(!1),P=u(`idle`),F=u(null),I=u(0),z=r(()=>d.mappings.filter(e=>e.sourceProperty!==null)),B=()=>p(`devicesVirtualPlugin.wizard.review.unknownSource`),V=e=>{let t=D.findById(e),n=t?E.findById(t.channel):null,r=n?T.findById(n.device):null;return{deviceId:n?.device??null,deviceName:r?.name??B(),channelName:n?.name??B(),propertyName:t?t.name??p(`devicesModule.categories.channelsProperties.${t.category}`):B()}},H=r(()=>z.value.map(e=>V(e.sourceProperty))),G=r(()=>z.value.map((e,t)=>{let n=H.value[t];return{key:`${e.specChannel}.${e.specProperty}`,specChannel:e.specChannel,specProperty:e.specProperty,sourceDevice:n.deviceName,sourceChannel:n.channelName,sourceProperty:n.propertyName}})),K=r(()=>{let e=H.value.map(e=>e.deviceId);return e.length===0||e.some(e=>e===null)?!1:new Set(e).size===1}),J=r(()=>{if(!K.value)return null;let e=H.value[0]?.deviceId??null;return e===null?null:T.findById(e)}),Y=r(()=>d.category===null?``:p(`devicesModule.categories.devices.${d.category}`)),X=r(()=>{if(d.roomId===null)return p(`devicesVirtualPlugin.wizard.review.noRoom`);let e=O.findById(d.roomId);return e?e.name:B()}),se=r(()=>d.zoneIds.length===0?p(`devicesVirtualPlugin.wizard.review.noZones`):d.zoneIds.map(e=>{let t=O.findById(e);return t?t.name:B()}).join(`, `)),Z=r(()=>k.value!==`submitting`&&k.value!==`created`&&d.category!==null&&d.name.trim().length>0&&G.value.length>0),Q=(e,t)=>{let n=D.findById(e.sourceProperty)?.dataType??null,r=ye[e.specChannel],i=Object.values(r?.properties??{}).find(t=>t.category===e.specProperty);return(n===null?void 0:i?.data_types?.find(e=>e.data_type===n))??t},ce=e=>{let t=_e(e.specChannel,e.specProperty);if(!t)return g.error(`No specification found for ${e.specChannel}.${e.specProperty}; leaving it out of the create payload`),null;let n=Q(e,{data_type:t.data_type,format:t.format??void 0,step:t.step??void 0});return{type:Ee,category:e.specProperty,identifier:e.specProperty,name:null,permissions:t.permissions,data_type:n.data_type,format:n.format??null,invalid:D.findById(e.sourceProperty)?.invalid??t.invalid??null,step:n.step??null,value:null,value_origin:N.source,source_property:e.sourceProperty}},le=r(()=>{let e=new Map;for(let t of z.value){let n=ce(t);if(!n)continue;let r=e.get(t.specChannel)??[];r.push(n),e.set(t.specChannel,r)}return Array.from(e.entries()).map(([e,t])=>({type:Ee,category:e,identifier:e,name:p(`devicesModule.categories.channels.${e}`),properties:t}))}),ue=async e=>{I.value=0;for(let t of d.zoneIds)try{await T.addZone({id:e,zoneId:t})}catch(n){g.error(`Failed to assign the created device id=${e} to zone id=${t}`,n),I.value+=1}I.value>0&&x.warning(p(`devicesVirtualPlugin.wizard.review.errors.zonesFailed`,{count:I.value}))},$=async()=>{let e=J.value;if(e){P.value=`hiding`,F.value=null;try{await T.edit({id:e.id,data:{type:e.type,hidden:!0,hiddenBy:ne.system}}),P.value=`hidden`}catch(t){g.error(`Failed to hide the source device id=${e.id}`,t),P.value=`failed`,F.value=t instanceof Error?t.message:p(`devicesVirtualPlugin.wizard.review.errors.hideFailed`),x.error(p(`devicesVirtualPlugin.wizard.review.errors.hideFailedFlash`,{device:e.name}))}}},ge=()=>{$().catch(e=>g.error(`Failed to retry hiding the source device`,e))},ve=async()=>{if(!Z.value)return;let e=d.category,t=d.name.trim(),n=d.roomId,r=d.zoneIds,i=le.value;if(e===null)return;k.value=`submitting`,f(`submitting`,!0),A.value=null;let a={type:Ee,category:e,name:t,room_id:n,channels:i};try{let{data:e,error:t}=await m.client.POST(`/${y}/${he}/devices`,{body:{data:a}});if(!e){A.value=t?te(t,p(`devicesVirtualPlugin.wizard.review.errors.createFailed`)):p(`devicesVirtualPlugin.wizard.review.errors.createFailed`),k.value=`error`,f(`submitting`,!1),x.error(A.value);return}let n=e.data;k.value=`created`;try{await T.get({id:n.id})}catch(e){g.error(`Failed to refresh the created device`,e)}r.length>0&&await ue(n.id),M.value&&K.value&&await $(),f(`submitting`,!1),f(`created`,{id:n.id,name:n.name})}catch(e){g.error(`Failed to create the virtual device`,e),A.value=p(`devicesVirtualPlugin.wizard.review.errors.createFailed`),k.value=`error`,f(`submitting`,!1),x.error(A.value)}};return i({rows:G,canHideSource:K,sourceDevice:J,submitState:k,hideState:P,hideError:F,createError:A,canCreate:Z,onCreate:ve,onRetryHide:ge}),(r,i)=>(l(),e(`div`,Ke,[o(h(q),{type:`info`,title:h(p)(`devicesVirtualPlugin.wizard.review.heading`),description:h(p)(`devicesVirtualPlugin.wizard.review.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),o(h(ie),{column:1,border:``,"data-test-id":`review-summary`},{default:S(()=>[o(h(U),{label:h(p)(`devicesVirtualPlugin.fields.devices.category.title`)},{default:S(()=>[a(b(Y.value),1)]),_:1},8,[`label`]),o(h(U),{label:h(p)(`devicesVirtualPlugin.fields.devices.name.title`)},{default:S(()=>[a(b(t.name),1)]),_:1},8,[`label`]),o(h(U),{label:h(p)(`devicesModule.fields.devices.room.title`)},{default:S(()=>[a(b(X.value),1)]),_:1},8,[`label`]),o(h(U),{label:h(p)(`devicesModule.fields.devices.zones.title`)},{default:S(()=>[a(b(se.value),1)]),_:1},8,[`label`])]),_:1}),G.value.length===0?(l(),s(h(q),{key:0,type:`warning`,title:h(p)(`devicesVirtualPlugin.wizard.review.noMappings`),closable:!1,"show-icon":``,"data-test-id":`review-no-mappings`},null,8,[`title`])):(l(),s(h(ae),{key:1,data:G.value,"data-test-id":`review-rows`},{default:S(()=>[o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.property`)},{default:S(({row:e})=>[n(`strong`,null,b(h(p)(`devicesModule.categories.channels.${e.specChannel}`)),1),a(` · `+b(h(p)(`devicesModule.categories.channelsProperties.${e.specProperty}`)),1)]),_:1},8,[`label`]),o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.sourceDevice`),prop:`sourceDevice`},null,8,[`label`]),o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.sourceChannel`),prop:`sourceChannel`},null,8,[`label`]),o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.sourceProperty`),prop:`sourceProperty`},null,8,[`label`])]),_:1},8,[`data`])),K.value&&k.value!==`created`?(l(),e(w,{key:2},[o(h(oe),{modelValue:M.value,"onUpdate:modelValue":i[0]||=e=>M.value=e,"data-test-id":`hide-source-checkbox`},{default:S(()=>[a(b(h(p)(`devicesVirtualPlugin.wizard.review.hideSource.label`,{device:J.value?.name??``})),1)]),_:1},8,[`modelValue`]),n(`div`,qe,b(h(p)(`devicesVirtualPlugin.wizard.review.hideSource.hint`)),1)],64)):v(``,!0),k.value===`error`?(l(),s(h(q),{key:3,type:`error`,title:A.value??``,closable:!1,"show-icon":``,"data-test-id":`create-error`},null,8,[`title`])):v(``,!0),k.value===`created`?(l(),e(w,{key:4},[o(h(q),{type:`success`,title:h(p)(`devicesVirtualPlugin.wizard.review.created`,{name:t.name}),closable:!1,"show-icon":``,"data-test-id":`create-success`},null,8,[`title`]),P.value===`failed`?(l(),s(h(q),{key:0,type:`warning`,title:F.value??``,closable:!1,"show-icon":``,"data-test-id":`hide-error`},{default:S(()=>[o(h(_),{size:`small`,"data-test-id":`retry-hide`,onClick:ge},{default:S(()=>[a(b(h(p)(`devicesVirtualPlugin.wizard.review.hideSource.retry`)),1)]),_:1})]),_:1},8,[`title`])):P.value===`hidden`?(l(),s(h(q),{key:1,type:`success`,title:h(p)(`devicesVirtualPlugin.wizard.review.hideSource.success`,{device:J.value?.name??``}),closable:!1,"show-icon":``,"data-test-id":`hide-success`},null,8,[`title`])):v(``,!0)],64)):d.showCreateAction===!1?v(``,!0):(l(),s(h(_),{key:5,type:`primary`,disabled:!Z.value,loading:k.value===`submitting`,"data-test-id":`create-device`,onClick:ve},{default:S(()=>[a(b(h(p)(`devicesVirtualPlugin.wizard.review.create`)),1)]),_:1},8,[`disabled`,`loading`]))]))}}),Ye={class:`flex items-center`},Xe={class:`grow-1 flex flex-col gap-2 lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2 overflow-hidden mt-2`},Ze={class:`p-4`},Qe={key:2,class:`mt-2 flex justify-end lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2`},$e=4,et=c({name:`ViewVirtualDeviceWizard`,__name:`view-virtual-device-wizard`,setup(c,{expose:d}){let{t:m}=ee(),y=C(),{isMDDevice:x,isLGDevice:O}=H();T({title:m(`devicesVirtualPlugin.wizard.title`)});let j=f({category:null,mappings:[],name:``,roomId:null,zoneIds:[]}),N=u(0),P=u(!1),I=u(null),L=u(null),R=u(!1),z=r(()=>N.value===$e-1),te=r(()=>N.value===0?j.category!==null:N.value===1?P.value:N.value===2&&j.name.trim().length>0),B=r(()=>[{label:m(`devicesModule.breadcrumbs.devices.list`),route:y.resolve({name:$.DEVICES})},{label:m(`devicesVirtualPlugin.wizard.breadcrumb`),route:y.resolve({name:Ce.WIZARD})}]);M(()=>!R.value);let ne=()=>{R.value||(O.value?y.replace({name:$.DEVICES}):y.push({name:$.DEVICES}))},re=()=>{R.value||N.value!==0&&--N.value},U=()=>{!te.value||z.value||(N.value+=1)},ie=e=>{P.value=e},W=e=>{I.value=e},ae=()=>{if(I.value===null)return;let e={name:$.DEVICE,params:{id:I.value.id}};O.value?y.replace(e):y.push(e)};return p(()=>j.category,(e,t)=>{t==null||t===e||(j.mappings=[],P.value=!1)}),d({activeStep:N,canAdvance:te,createdDevice:I}),(r,c)=>(l(),e(w,null,[h(x)?v(``,!0):(l(),s(h(A),{key:0,teleport:``},{icon:S(()=>[o(h(t),{icon:`mdi:wizard-hat`,class:`w[20px] h[20px]`})]),title:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.title`)),1)]),subtitle:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.subtitle`)),1)]),_:1})),h(x)?v(``,!0):(l(),s(h(D),{key:1,align:h(E).LEFT,teleport:``,small:``,onClick:ne},{icon:S(()=>[o(h(i),{size:24},{default:S(()=>[o(h(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),o(h(V),{items:B.value},null,8,[`items`]),o(h(F),{heading:h(m)(`devicesVirtualPlugin.wizard.title`),"sub-heading":h(m)(`devicesVirtualPlugin.wizard.subtitle`),icon:`mdi:wizard-hat`},g({_:2},[h(x)?{name:`extra`,fn:S(()=>[n(`div`,Ye,[I.value===null&&N.value>0?(l(),s(h(_),{key:0,disabled:R.value,"data-test-id":`wizard-back`,onClick:re},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.back`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?(l(),s(h(_),{key:1,link:``,class:`ml-2!`,disabled:R.value,"data-test-id":`wizard-cancel`,onClick:ne},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.cancel`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?v(``,!0):(l(),s(h(_),{key:2,type:`primary`,"data-test-id":`wizard-view-device`,onClick:ae},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.viewDevice`)),1)]),_:1})),I.value===null&&z.value?(l(),s(h(_),{key:3,type:`primary`,class:`ml-2!`,disabled:!L.value?.canCreate,loading:R.value,"data-test-id":`create-device`,onClick:L.value?.onCreate},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.review.create`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])):v(``,!0),I.value===null&&!z.value?(l(),s(h(_),{key:4,type:`primary`,class:`ml-2!`,disabled:!te.value,"data-test-id":`wizard-next`,onClick:U},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.next`)),1)]),_:1},8,[`disabled`])):v(``,!0)])]),key:`0`}:void 0]),1032,[`heading`,`sub-heading`]),n(`div`,Xe,[o(h(X),{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`},{header:S(()=>[o(h(Z),{active:N.value,"finish-status":`success`,"align-center":``},{default:S(()=>[o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.category`)},null,8,[`title`]),o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.mapping`)},null,8,[`title`]),o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.details`)},null,8,[`title`]),o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.review`)},null,8,[`title`])]),_:1},8,[`active`])]),default:S(()=>[o(h(k),{class:`flex-1 overflow-hidden h-full`},{default:S(()=>[n(`div`,Ze,[N.value===0?(l(),s(je,{key:0,modelValue:j.category,"onUpdate:modelValue":c[0]||=e=>j.category=e},null,8,[`modelValue`])):N.value===1?(l(),s(Ge,{key:1,modelValue:j.mappings,"onUpdate:modelValue":c[1]||=e=>j.mappings=e,category:j.category,"onUpdate:valid":ie},null,8,[`modelValue`,`category`])):N.value===2?(l(),s(Fe,{key:2,name:j.name,"onUpdate:name":c[2]||=e=>j.name=e,"room-id":j.roomId,"onUpdate:roomId":c[3]||=e=>j.roomId=e,"zone-ids":j.zoneIds,"onUpdate:zoneIds":c[4]||=e=>j.zoneIds=e,category:j.category},null,8,[`name`,`room-id`,`zone-ids`,`category`])):(l(),s(Je,{key:3,ref_key:`reviewStep`,ref:L,category:j.category,mappings:j.mappings,name:j.name,"room-id":j.roomId,"zone-ids":j.zoneIds,"show-create-action":!1,onCreated:W,onSubmitting:c[5]||=e=>R.value=e},null,8,[`category`,`mappings`,`name`,`room-id`,`zone-ids`]))])]),_:1})]),_:1})]),h(x)?v(``,!0):(l(),e(`div`,Qe,[I.value===null&&N.value>0?(l(),s(h(_),{key:0,disabled:R.value,"data-test-id":`wizard-back`,onClick:re},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.back`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?(l(),s(h(_),{key:1,link:``,class:`ml-2!`,disabled:R.value,"data-test-id":`wizard-cancel`,onClick:ne},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.cancel`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?v(``,!0):(l(),s(h(_),{key:2,type:`primary`,class:`ml-2!`,"data-test-id":`wizard-view-device`,onClick:ae},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.viewDevice`)),1)]),_:1})),I.value===null&&z.value?(l(),s(h(_),{key:3,type:`primary`,class:`ml-2!`,disabled:!L.value?.canCreate,loading:R.value,"data-test-id":`create-device`,onClick:L.value?.onCreate},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.review.create`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])):v(``,!0),I.value===null&&!z.value?(l(),s(h(_),{key:4,type:`primary`,class:`ml-2!`,disabled:!te.value,"data-test-id":`wizard-next`,onClick:U},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.next`)),1)]),_:1},8,[`disabled`])):v(``,!0)]))],64))}});export{et as default};
1
+ import"./rolldown-runtime-QTnfLwEv.js";import{Ar as e,D as t,Dr as n,Er as r,H as i,Mr as a,Nr as o,Or as s,Pr as c,Qr as l,Si as u,T as ee,Wr as d,bi as f,ci as p,ei as m,ji as h,jr as g,k as _,kr as v,n as y,qi as b,r as x,ui as S,x as C,xr as w}from"./icon-with-child-CgZMNB3F.js";import{t as T}from"./vue-meta.esm-browser.min-C5z7o_np.js";import{Dr as E,Er as D,Mr as O,Qr as k,Tr as A,_ as j,_r as M,dn as N,ei as P,h as F,kn as I,m as L,p as R,qr as z,r as te,rn as B,sn as ne,vr as V,x as re,yr as H}from"./common-D4Z2wgrj.js";import{n as U,t as ie}from"./descriptions-BHa0Pjk7.js";import{n as W,t as ae}from"./table-CeNNpGH7.js";import{n as G,t as K}from"./form-Wa6uIXea.js";import{t as q}from"./alert-I-oSc4A8.js";import{r as J,t as Y}from"./select-CTZp3DyT.js";import{t as X}from"./card-C50YgvLJ.js";import{t as oe}from"./checkbox-CtqO8Xm5.js";import{x as se}from"./components-xe0tG-zv.js";import{n as Z,t as Q}from"./steps-DuddYjrb.js";import{t as ce}from"./dist-DJgPCOr0.js";import{C as le,g as ue,n as de}from"./keys-BMDz3FOI.js";import{i as fe,o as pe,r as me}from"./keys-DMEIfK2a.js";import{o as $,r as he}from"./devices.constants-DHQemX04.js";import"./devices-DQl0qr-s.js";import{A as ge,M as _e,N as ve,P as ye,j as be,k as xe}from"./composables-2NuyfNXO.js";import{a as Se,i as Ce,n as we,o as Te,r as Ee}from"./devices-virtual.constants-D0L6zhgQ.js";var De={class:`space-y-4`},Oe={key:0,"data-test-id":`blocked-categories`},ke={class:`text-sm text-gray-500 mb-2`},Ae={class:`flex flex-wrap gap-2`},je=c({name:`VirtualWizardCategoryStep`,__name:`virtual-wizard-category-step`,props:{modelValue:{}},emits:[`update:modelValue`],setup(t,{expose:i,emit:c}){let u=c,{t:d}=ee(),f=r(()=>Te.map(e=>({value:e,label:d(`devicesModule.categories.devices.${e}`)}))),p=r(()=>Se.map(e=>({value:e,label:d(`devicesModule.categories.devices.${e}`),reason:d(`devicesVirtualPlugin.wizard.category.blockedReason`)}))),g=e=>{u(`update:modelValue`,e)};return i({categories:f,blockedCategories:p}),(r,i)=>(l(),e(`div`,De,[o(h(q),{type:`info`,title:h(d)(`devicesVirtualPlugin.wizard.category.heading`),description:h(d)(`devicesVirtualPlugin.wizard.category.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),o(h(K),{"label-position":`top`},{default:S(()=>[o(h(G),{label:h(d)(`devicesVirtualPlugin.fields.devices.category.title`)},{default:S(()=>[o(h(J),{"model-value":t.modelValue,placeholder:h(d)(`devicesVirtualPlugin.fields.devices.category.placeholder`),name:`category`,filterable:``,class:`w-full`,"onUpdate:modelValue":g},{default:S(()=>[(l(!0),e(w,null,m(f.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`])]),_:1},8,[`label`])]),_:1}),p.value.length>0?(l(),e(`div`,Oe,[n(`p`,ke,b(h(d)(`devicesVirtualPlugin.wizard.category.blockedHeading`)),1),n(`div`,Ae,[(l(!0),e(w,null,m(p.value,e=>(l(),s(h(z),{key:e.value,type:`info`,title:e.reason,class:`opacity-60! cursor-not-allowed!`},{default:S(()=>[a(b(e.label),1)]),_:2},1032,[`title`]))),128))])])):v(``,!0)]))}}),Me={class:`space-y-4`},Ne={class:`text-xs text-gray-500 mt-1`},Pe={class:`text-xs text-gray-500 mt-1`},Fe=c({name:`VirtualWizardDetailsStep`,__name:`virtual-wizard-details-step`,props:{category:{},name:{},roomId:{},zoneIds:{}},emits:[`update:name`,`update:roomId`,`update:zoneIds`],setup(t,{expose:i,emit:a}){let c=t,f=a,{t:g}=ee(),_=j(),v=re().getStore(de),y=r(()=>c.name),x=r(()=>c.roomId),C=r(()=>c.zoneIds),T=r(()=>ce(v.findAll().filter(e=>e.type===ue.ROOM),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),E=r(()=>ce(v.findAll().filter(e=>e.type===ue.ZONE&&!le(e.category)),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),D=r(()=>{if(c.category===null)return``;let e=g(`devicesModule.categories.devices.${c.category}`);if(c.roomId===null)return e;let t=v.findById(c.roomId);return t?`${e} — ${t.name}`:e}),O=u(c.name===``||c.name===D.value?c.name:null);p(D,e=>{c.name===O.value&&e!==c.name&&(O.value=e,f(`update:name`,e))},{immediate:!0});let k=e=>{f(`update:name`,e)},A=e=>{f(`update:roomId`,e)},M=e=>{f(`update:zoneIds`,e)};return d(()=>{v.fetch().catch(e=>_.error(`Failed to load rooms and zones`,e))}),i({roomOptions:T,zoneOptions:E,generatedName:D}),(t,r)=>(l(),e(`div`,Me,[o(h(q),{type:`info`,title:h(g)(`devicesVirtualPlugin.wizard.details.heading`),description:h(g)(`devicesVirtualPlugin.wizard.details.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),o(h(K),{"label-position":`top`},{default:S(()=>[o(h(G),{label:h(g)(`devicesVirtualPlugin.fields.devices.name.title`)},{default:S(()=>[o(h(P),{"model-value":y.value,placeholder:h(g)(`devicesVirtualPlugin.fields.devices.name.placeholder`),name:`name`,"onUpdate:modelValue":k},null,8,[`model-value`,`placeholder`])]),_:1},8,[`label`]),o(h(G),{label:h(g)(`devicesModule.fields.devices.room.title`)},{default:S(()=>[o(h(J),{"model-value":x.value,placeholder:h(g)(`devicesModule.fields.devices.room.placeholder`),name:`room`,filterable:``,clearable:``,class:`w-full`,"onUpdate:modelValue":A},{default:S(()=>[(l(!0),e(w,null,m(T.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`]),n(`div`,Ne,b(h(g)(`devicesModule.fields.devices.room.hint`)),1)]),_:1},8,[`label`]),o(h(G),{label:h(g)(`devicesModule.fields.devices.zones.title`)},{default:S(()=>[o(h(J),{"model-value":C.value,placeholder:h(g)(`devicesModule.fields.devices.zones.placeholder`),name:`zones`,filterable:``,clearable:``,multiple:``,class:`w-full`,"onUpdate:modelValue":M},{default:S(()=>[(l(!0),e(w,null,m(E.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`]),n(`div`,Pe,b(h(g)(`devicesModule.fields.devices.zones.hint`)),1)]),_:1},8,[`label`])]),_:1})]))}}),Ie={class:`space-y-4`},Le={class:`flex items-center gap-3`,"data-test-id":`mapping-progress`},Re=[`data-test-id`],ze={class:`flex items-center gap-2 flex-wrap`},Be={class:`flex flex-wrap items-center gap-2`},Ve=[`data-test-id`],He={class:`flex items-center gap-2 flex-wrap`},Ue={class:`text-sm font-medium`},We={class:`flex flex-wrap items-center gap-2`},Ge=c({name:`VirtualWizardMappingStep`,__name:`virtual-wizard-mapping-step`,props:{category:{},modelValue:{}},emits:[`update:modelValue`,`update:valid`],setup(t,{expose:i,emit:c}){let u=t,g=c,{t:y}=ee(),C=L(),T=j(),E=R(),D=re(),k=D.getStore(pe),A=D.getStore(fe),M=D.getStore(me),N=f({}),P=f({}),F=f({}),V=f({}),H=f({}),U=f({}),ie=0,W=new Map,ae=e=>ye[e]?.constraints??{},G=e=>ve[e]?.constraints??{},K=r(()=>{if(u.category===null)return[];let e=ge[u.category];if(!e)return[];let t=(be[u.category]??[...e.required,...e.optional]).filter(e=>e!==B.device_information);return[...t.filter(t=>e.required.includes(t)),...t.filter(t=>!e.required.includes(t))].map(t=>{let n=e.required.includes(t),r=xe[t]??{required:[],optional:[]};return{specChannel:t,required:n,slots:[...r.required,...r.optional].map(e=>{let i=_e(t,e),a=r.required.includes(e);return{key:`${t}.${e}`,specChannel:t,specProperty:e,required:n&&a,channelRequired:n,propertyRequired:a,permissions:i?.permissions??[],dataType:i?.data_type??null,unit:i?.unit??null}})}})}),X=r(()=>K.value.flatMap(e=>e.slots)),oe=r(()=>X.value.map(e=>({specChannel:e.specChannel,specProperty:e.specProperty,sourceProperty:N[e.key]??null}))),Z=r(()=>{let e=new Set(X.value.filter(e=>typeof N[e.key]==`string`).map(e=>e.specChannel)),t=X.value.filter(t=>t.required||t.propertyRequired&&e.has(t.specChannel)),n=t.filter(e=>typeof N[e.key]!=`string`);return{requiredTotal:t.length,requiredFilled:t.length-n.length,remaining:n}}),Q=r(()=>Object.keys(N).length>0),le=r(()=>Q.value&&Z.value.remaining.length===0),ue=r(()=>Z.value.requiredTotal===0?Q.value?100:0:Math.round(Z.value.requiredFilled/Z.value.requiredTotal*100)),de=r(()=>{let e=[],t=K.value.filter(e=>e.slots.some(e=>typeof N[e.key]==`string`)).map(e=>e.specChannel);if(u.category!==null&&t.length>0){let n=G(u.category);for(let r of n.oneOrMoreOf??[])r.some(e=>t.includes(e))||e.push({specChannel:r[0],message:y(`devicesVirtualPlugin.wizard.mapping.constraints.deviceOneOrMoreOf`,{channels:r.map(e=>y(`devicesModule.categories.channels.${e}`)).join(`, `)})});for(let r of n.oneOf??[])r.filter(e=>t.includes(e)).length>1&&e.push({specChannel:r[0],message:y(`devicesVirtualPlugin.wizard.mapping.constraints.deviceOneOf`,{channels:r.map(e=>y(`devicesModule.categories.channels.${e}`)).join(`, `)})});for(let r of n.mutuallyExclusiveGroups??[]){let n=r.filter(e=>e.some(e=>t.includes(e)));n.length>1&&e.push({specChannel:n[0][0],message:y(`devicesVirtualPlugin.wizard.mapping.constraints.deviceMutuallyExclusive`,{groups:n.map(e=>e.map(e=>y(`devicesModule.categories.channels.${e}`)).join(` + `)).join(` / `)})})}}for(let t of K.value){let n=t.slots.filter(e=>typeof N[e.key]==`string`).map(e=>e.specProperty);if(n.length===0)continue;let r=ae(t.specChannel);for(let i of r.oneOrMoreOf??[])i.some(e=>n.includes(e))||e.push({specChannel:t.specChannel,message:y(`devicesVirtualPlugin.wizard.mapping.constraints.oneOrMoreOf`,{properties:i.map(e=>y(`devicesModule.categories.channelsProperties.${e}`)).join(`, `)})});for(let i of r.oneOf??[])i.filter(e=>n.includes(e)).length>1&&e.push({specChannel:t.specChannel,message:y(`devicesVirtualPlugin.wizard.mapping.constraints.oneOf`,{properties:i.map(e=>y(`devicesModule.categories.channelsProperties.${e}`)).join(`, `)})});for(let i of r.mutuallyExclusiveGroups??[]){let r=i.filter(e=>e.some(e=>n.includes(e)));r.length>1&&e.push({specChannel:t.specChannel,message:y(`devicesVirtualPlugin.wizard.mapping.constraints.mutuallyExclusive`,{groups:r.map(e=>e.map(e=>y(`devicesModule.categories.channelsProperties.${e}`)).join(` + `)).join(` / `)})})}}return e}),$=r(()=>Object.values(F).some(e=>e)),he=r(()=>u.category!==null&&le.value&&Object.keys(P).length===0&&de.value.length===0&&!$.value),Se=r(()=>ce(k.findAll().filter(e=>!e.draft&&(!e.hidden||e.hiddenBy===ne.system)&&e.type!==`virtual`),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name}))),Ce=e=>e===null?[]:ce(A.findForDevice(e),[e=>e.name],[`asc`]).map(e=>({value:e.id,label:e.name})),Te=e=>e===null?[]:ce(M.findForChannel(e),[e=>e.name??e.category],[`asc`]).map(e=>({value:e.id,label:e.name??y(`devicesModule.categories.channelsProperties.${e.category}`)})),Ee=e=>[e.dataType,e.unit,e.permissions.join(`/`)].filter(e=>typeof e==`string`&&e.length>0).join(` · `),De=(e,t)=>t.required||U[e.specChannel]===!0||typeof N[t.key]==`string`||typeof P[t.key]==`string`,Oe=e=>e.slots.filter(t=>De(e,t)),ke=e=>e.slots.length-Oe(e).length,Ae=async e=>{try{return await A.fetch({deviceId:e})}catch(t){return T.error(`Failed to load source channels`,t),A.findForDevice(e)}},je=async e=>{try{await M.fetch({channelId:e})}catch(e){T.error(`Failed to load source properties`,e)}return M.findForChannel(e)},Me=(e,t,n)=>{let r=e=>e.spec_channel===t.slot.specChannel&&e.spec_property===t.slot.specProperty&&e.source_property===t.sourceProperty,i=e[n];return i&&r(i)?i:e.find(r)??null},Ne=async e=>{if(u.category===null||e.length===0)return;let t=++ie;for(let n of e)W.set(n.slot.key,t),F[n.slot.key]=!0,delete P[n.slot.key];let n=(e,n)=>{W.get(e)===t&&(delete F[e],n===null?delete P[e]:P[e]=n)};try{let{data:t,error:r}=await C.client.POST(`/${x}/${we}/devices/compatibility`,{body:{data:{category:u.category,candidates:e.map(e=>({spec_channel:e.slot.specChannel,spec_property:e.slot.specProperty,source_property:e.sourceProperty}))}}}),i=t?.data;if(!i){let t=r?te(r,y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`)):y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`);for(let r of e)n(r.slot.key,t);E.error(t);return}e.forEach((e,t)=>{let r=Me(i,e,t);if(!r){n(e.slot.key,y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`));return}n(e.slot.key,r.compatible?null:r.reason??y(`devicesVirtualPlugin.wizard.mapping.errors.incompatible`))})}catch(t){T.error(`Virtual device compatibility check failed`,t);let r=y(`devicesVirtualPlugin.wizard.mapping.errors.checkFailed`);for(let t of e)n(t.slot.key,r);E.error(r)}},Pe=async(e,t)=>{let n=X.value.find(t=>t.key===e);if(n){if(W.set(e,++ie),delete P[e],delete F[e],t===null){delete N[e];return}N[e]=t,await Ne([{slot:n,sourceProperty:t}])}},Fe=async(e,t)=>{let n=K.value.find(t=>t.specChannel===e);if(!n||t===null)return;let r=++ie;for(let e of n.slots)W.set(e.key,r),delete F[e.key];let i=await je(t);if(n.slots.some(e=>W.get(e.key)!==r))return;let a=A.findById(t),o=[];for(let e of n.slots){let n=i.find(t=>t.category===e.specProperty);if(!n){let t=N[e.key];t&&o.push({slot:e,sourceProperty:t});continue}delete P[e.key],N[e.key]=n.id,V[e.key]={device:a?.device??null,channel:t},o.push({slot:e,sourceProperty:n.id})}if(o.length===0){E.info(y(`devicesVirtualPlugin.wizard.mapping.shortcut.nothingApplied`));return}U[e]=!0,E.info(y(`devicesVirtualPlugin.wizard.mapping.shortcut.applied`,{filled:o.length,total:n.slots.length})),await Ne(o)},Ge=(e,t)=>{V[e]={device:t,channel:null},Pe(e,null).catch(e=>T.error(`Failed to clear source property`,e)),t!==null&&Ae(t).catch(e=>T.error(`Failed to load source channels`,e))},Ke=(e,t)=>{V[e]={device:V[e]?.device??null,channel:t},Pe(e,null).catch(e=>T.error(`Failed to clear source property`,e)),t!==null&&je(t).catch(e=>T.error(`Failed to load source properties`,e))},qe=(e,t)=>{Pe(e,t).catch(e=>T.error(`Failed to select source property`,e))},Je=(e,t)=>{H[e]={device:t,channel:null},t!==null&&Ae(t).catch(e=>T.error(`Failed to load source channels`,e))},Ye=(e,t)=>{H[e]={device:H[e]?.device??null,channel:t},t!==null&&je(t).catch(e=>T.error(`Failed to load source properties`,e))},Xe=e=>{Fe(e,H[e]?.channel??null).catch(e=>T.error(`Failed to apply source channel`,e))},Ze=e=>e.filter(e=>e.sourceProperty!==null).map(e=>`${e.specChannel}.${e.specProperty}=${e.sourceProperty}`).sort().join(`|`),Qe=()=>{for(let[e,t]of Object.entries(N)){if(V[e]?.channel)continue;let n=M.findById(t),r=n?A.findById(n.channel):null;V[e]={device:r?.device??null,channel:r?.id??null}}};return p(()=>u.modelValue,e=>{if(Ze(e)!==Ze(oe.value)){for(let e of Object.keys(N))delete N[e];for(let e of Object.keys(P))delete P[e];for(let e of Object.keys(F))delete F[e];for(let e of Object.keys(V))delete V[e];W.clear();for(let t of e)t.sourceProperty!==null&&(N[`${t.specChannel}.${t.specProperty}`]=t.sourceProperty);Qe()}},{deep:!0,immediate:!0}),p(()=>u.category,(e,t)=>{if(!(t==null||t===e)){for(let e of Object.keys(N))delete N[e];for(let e of Object.keys(P))delete P[e];for(let e of Object.keys(F))delete F[e];for(let e of Object.keys(V))delete V[e];for(let e of Object.keys(H))delete H[e];W.clear(),ie++}}),p(oe,e=>g(`update:modelValue`,e),{deep:!0,immediate:!0}),p(he,e=>g(`update:valid`,e),{immediate:!0}),d(()=>{k.fetch({hidden:I.all}).catch(e=>T.error(`Failed to load source devices`,e))}),i({slots:X,groups:K,errors:P,checking:F,pickers:V,progress:Z,constraintViolations:de,isValid:he,sourceDevicesOptions:Se,selectSource:Pe,applyChannel:Fe}),(r,i)=>(l(),e(`div`,Ie,[o(h(q),{type:`info`,title:h(y)(`devicesVirtualPlugin.wizard.mapping.heading`),description:h(y)(`devicesVirtualPlugin.wizard.mapping.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),t.category===null?(l(),s(h(q),{key:0,type:`warning`,title:h(y)(`devicesVirtualPlugin.wizard.mapping.noCategory`),closable:!1,"show-icon":``},null,8,[`title`])):(l(),e(w,{key:1},[n(`div`,Le,[o(h(se),{percentage:ue.value,status:le.value?`success`:void 0,class:`grow`},null,8,[`percentage`,`status`]),Z.value.requiredTotal>0?(l(),s(h(O),{key:0,size:`small`,class:`whitespace-nowrap`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.progress`,{filled:Z.value.requiredFilled,total:Z.value.requiredTotal})),1)]),_:1})):Q.value?v(``,!0):(l(),s(h(O),{key:1,size:`small`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.noRequired`)),1)]),_:1}))]),(l(!0),e(w,null,m(de.value,e=>(l(),s(h(q),{key:`${e.specChannel}-${e.message}`,type:`error`,closable:!1,"show-icon":``,class:`mt-2`,"data-test-id":`constraint-violation`},{default:S(()=>[n(`strong`,null,b(h(y)(`devicesModule.categories.channels.${e.specChannel}`)),1),a(` `+b(e.message),1)]),_:2},1024))),128)),(l(!0),e(w,null,m(K.value,t=>(l(),e(`div`,{key:t.specChannel,class:`b b-solid b-gray-200 dark:b-gray-700 rounded p-3 space-y-3`,"data-test-id":`slot-group-${t.specChannel}`},[n(`div`,ze,[n(`strong`,null,b(h(y)(`devicesModule.categories.channels.${t.specChannel}`)),1),o(h(z),{type:t.required?`danger`:`info`,size:`small`},{default:S(()=>[a(b(t.required?h(y)(`devicesVirtualPlugin.wizard.mapping.channelRequired`):h(y)(`devicesVirtualPlugin.wizard.mapping.channelOptional`)),1)]),_:2},1032,[`type`])]),n(`div`,Be,[o(h(O),{size:`small`,class:`basis-full`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.shortcut.description`)),1)]),_:1}),o(h(J),{"model-value":H[t.specChannel]?.device??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.devicePlaceholder`),name:`shortcut-device-${t.specChannel}`,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Je(t.specChannel,e)},{default:S(()=>[(l(!0),e(w,null,m(Se.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`name`,`onUpdate:modelValue`]),o(h(J),{"model-value":H[t.specChannel]?.channel??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.channelPlaceholder`),name:`shortcut-channel-${t.specChannel}`,disabled:!H[t.specChannel]?.device,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Ye(t.specChannel,e)},{default:S(()=>[(l(!0),e(w,null,m(Ce(H[t.specChannel]?.device??null),e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`name`,`disabled`,`onUpdate:modelValue`]),o(h(_),{disabled:!H[t.specChannel]?.channel,plain:``,onClick:e=>Xe(t.specChannel)},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.shortcut.apply`)),1)]),_:1},8,[`disabled`,`onClick`])]),(l(!0),e(w,null,m(Oe(t),t=>(l(),e(`div`,{key:t.key,class:`space-y-1`,"data-test-id":`slot-${t.key}`},[n(`div`,He,[n(`span`,Ue,b(h(y)(`devicesModule.categories.channelsProperties.${t.specProperty}`)),1),t.required?(l(),s(h(z),{key:0,type:`danger`,size:`small`},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.propertyRequired`)),1)]),_:1})):v(``,!0),o(h(O),{size:`small`,type:`info`},{default:S(()=>[a(b(Ee(t)),1)]),_:2},1024)]),n(`div`,We,[o(h(J),{"model-value":V[t.key]?.device??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.devicePlaceholder`),name:`device-${t.key}`,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Ge(t.key,e)},{default:S(()=>[(l(!0),e(w,null,m(Se.value,e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:1},8,[`model-value`,`placeholder`,`name`,`onUpdate:modelValue`]),o(h(J),{"model-value":V[t.key]?.channel??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.channelPlaceholder`),name:`channel-${t.key}`,disabled:!V[t.key]?.device,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>Ke(t.key,e)},{default:S(()=>[(l(!0),e(w,null,m(Ce(V[t.key]?.device??null),e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`name`,`disabled`,`onUpdate:modelValue`]),o(h(J),{"model-value":N[t.key]??null,placeholder:h(y)(`devicesVirtualPlugin.wizard.mapping.source.propertyPlaceholder`),name:`property-${t.key}`,disabled:!V[t.key]?.channel,loading:F[t.key]===!0,filterable:``,clearable:``,class:`w-60`,"onUpdate:modelValue":e=>qe(t.key,e)},{default:S(()=>[(l(!0),e(w,null,m(Te(V[t.key]?.channel??null),e=>(l(),s(h(Y),{key:e.value,label:e.label,value:e.value},null,8,[`label`,`value`]))),128))]),_:2},1032,[`model-value`,`placeholder`,`name`,`disabled`,`loading`,`onUpdate:modelValue`])]),P[t.key]?(l(),s(h(O),{key:0,size:`small`,type:`danger`,class:`block`,"data-test-id":`slot-error-${t.key}`},{default:S(()=>[a(b(P[t.key]),1)]),_:2},1032,[`data-test-id`])):v(``,!0)],8,Ve))),128)),ke(t)>0?(l(),s(h(_),{key:0,link:``,type:`primary`,onClick:e=>U[t.specChannel]=!0},{default:S(()=>[a(b(h(y)(`devicesVirtualPlugin.wizard.mapping.showOptional`,{count:ke(t)})),1)]),_:2},1032,[`onClick`])):v(``,!0)],8,Re))),128))],64))]))}}),Ke={class:`space-y-4`},qe={class:`text-xs text-gray-500`},Je=c({name:`VirtualWizardReviewStep`,__name:`virtual-wizard-review-step`,props:{category:{},mappings:{},name:{},roomId:{},zoneIds:{},showCreateAction:{type:Boolean,default:!0}},emits:[`created`,`submitting`],setup(t,{expose:i,emit:c}){let d=t,f=c,{t:p}=ee(),m=L(),g=j(),x=R(),C=re(),T=C.getStore(pe),E=C.getStore(fe),D=C.getStore(me),O=C.getStore(de),k=u(`idle`),A=u(null),M=u(!1),P=u(`idle`),F=u(null),I=u(0),z=r(()=>d.mappings.filter(e=>e.sourceProperty!==null)),B=()=>p(`devicesVirtualPlugin.wizard.review.unknownSource`),V=e=>{let t=D.findById(e),n=t?E.findById(t.channel):null,r=n?T.findById(n.device):null;return{deviceId:n?.device??null,deviceName:r?.name??B(),channelName:n?.name??B(),propertyName:t?t.name??p(`devicesModule.categories.channelsProperties.${t.category}`):B()}},H=r(()=>z.value.map(e=>V(e.sourceProperty))),G=r(()=>z.value.map((e,t)=>{let n=H.value[t];return{key:`${e.specChannel}.${e.specProperty}`,specChannel:e.specChannel,specProperty:e.specProperty,sourceDevice:n.deviceName,sourceChannel:n.channelName,sourceProperty:n.propertyName}})),K=r(()=>{let e=H.value.map(e=>e.deviceId);return e.length===0||e.some(e=>e===null)?!1:new Set(e).size===1}),J=r(()=>{if(!K.value)return null;let e=H.value[0]?.deviceId??null;return e===null?null:T.findById(e)}),Y=r(()=>d.category===null?``:p(`devicesModule.categories.devices.${d.category}`)),X=r(()=>{if(d.roomId===null)return p(`devicesVirtualPlugin.wizard.review.noRoom`);let e=O.findById(d.roomId);return e?e.name:B()}),se=r(()=>d.zoneIds.length===0?p(`devicesVirtualPlugin.wizard.review.noZones`):d.zoneIds.map(e=>{let t=O.findById(e);return t?t.name:B()}).join(`, `)),Z=r(()=>k.value!==`submitting`&&k.value!==`created`&&d.category!==null&&d.name.trim().length>0&&G.value.length>0),Q=(e,t)=>{let n=D.findById(e.sourceProperty)?.dataType??null,r=ye[e.specChannel],i=Object.values(r?.properties??{}).find(t=>t.category===e.specProperty);return(n===null?void 0:i?.data_types?.find(e=>e.data_type===n))??t},ce=e=>{let t=_e(e.specChannel,e.specProperty);if(!t)return g.error(`No specification found for ${e.specChannel}.${e.specProperty}; leaving it out of the create payload`),null;let n=Q(e,{data_type:t.data_type,format:t.format??void 0,step:t.step??void 0});return{type:Ee,category:e.specProperty,identifier:e.specProperty,name:null,permissions:t.permissions,data_type:n.data_type,format:n.format??null,invalid:D.findById(e.sourceProperty)?.invalid??t.invalid??null,step:n.step??null,value:null,value_origin:N.source,source_property:e.sourceProperty}},le=r(()=>{let e=new Map;for(let t of z.value){let n=ce(t);if(!n)continue;let r=e.get(t.specChannel)??[];r.push(n),e.set(t.specChannel,r)}return Array.from(e.entries()).map(([e,t])=>({type:Ee,category:e,identifier:e,name:p(`devicesModule.categories.channels.${e}`),properties:t}))}),ue=async e=>{I.value=0;for(let t of d.zoneIds)try{await T.addZone({id:e,zoneId:t})}catch(n){g.error(`Failed to assign the created device id=${e} to zone id=${t}`,n),I.value+=1}I.value>0&&x.warning(p(`devicesVirtualPlugin.wizard.review.errors.zonesFailed`,{count:I.value}))},$=async()=>{let e=J.value;if(e){P.value=`hiding`,F.value=null;try{await T.edit({id:e.id,data:{type:e.type,hidden:!0,hiddenBy:ne.system}}),P.value=`hidden`}catch(t){g.error(`Failed to hide the source device id=${e.id}`,t),P.value=`failed`,F.value=t instanceof Error?t.message:p(`devicesVirtualPlugin.wizard.review.errors.hideFailed`),x.error(p(`devicesVirtualPlugin.wizard.review.errors.hideFailedFlash`,{device:e.name}))}}},ge=()=>{$().catch(e=>g.error(`Failed to retry hiding the source device`,e))},ve=async()=>{if(!Z.value)return;let e=d.category,t=d.name.trim(),n=d.roomId,r=d.zoneIds,i=le.value;if(e===null)return;k.value=`submitting`,f(`submitting`,!0),A.value=null;let a={type:Ee,category:e,name:t,room_id:n,channels:i};try{let{data:e,error:t}=await m.client.POST(`/${y}/${he}/devices`,{body:{data:a}});if(!e){A.value=t?te(t,p(`devicesVirtualPlugin.wizard.review.errors.createFailed`)):p(`devicesVirtualPlugin.wizard.review.errors.createFailed`),k.value=`error`,f(`submitting`,!1),x.error(A.value);return}let n=e.data;k.value=`created`;try{await T.get({id:n.id})}catch(e){g.error(`Failed to refresh the created device`,e)}r.length>0&&await ue(n.id),M.value&&K.value&&await $(),f(`submitting`,!1),f(`created`,{id:n.id,name:n.name})}catch(e){g.error(`Failed to create the virtual device`,e),A.value=p(`devicesVirtualPlugin.wizard.review.errors.createFailed`),k.value=`error`,f(`submitting`,!1),x.error(A.value)}};return i({rows:G,canHideSource:K,sourceDevice:J,submitState:k,hideState:P,hideError:F,createError:A,canCreate:Z,onCreate:ve,onRetryHide:ge}),(r,i)=>(l(),e(`div`,Ke,[o(h(q),{type:`info`,title:h(p)(`devicesVirtualPlugin.wizard.review.heading`),description:h(p)(`devicesVirtualPlugin.wizard.review.description`),closable:!1,"show-icon":``},null,8,[`title`,`description`]),o(h(ie),{column:1,border:``,"data-test-id":`review-summary`},{default:S(()=>[o(h(U),{label:h(p)(`devicesVirtualPlugin.fields.devices.category.title`)},{default:S(()=>[a(b(Y.value),1)]),_:1},8,[`label`]),o(h(U),{label:h(p)(`devicesVirtualPlugin.fields.devices.name.title`)},{default:S(()=>[a(b(t.name),1)]),_:1},8,[`label`]),o(h(U),{label:h(p)(`devicesModule.fields.devices.room.title`)},{default:S(()=>[a(b(X.value),1)]),_:1},8,[`label`]),o(h(U),{label:h(p)(`devicesModule.fields.devices.zones.title`)},{default:S(()=>[a(b(se.value),1)]),_:1},8,[`label`])]),_:1}),G.value.length===0?(l(),s(h(q),{key:0,type:`warning`,title:h(p)(`devicesVirtualPlugin.wizard.review.noMappings`),closable:!1,"show-icon":``,"data-test-id":`review-no-mappings`},null,8,[`title`])):(l(),s(h(ae),{key:1,data:G.value,"data-test-id":`review-rows`},{default:S(()=>[o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.property`)},{default:S(({row:e})=>[n(`strong`,null,b(h(p)(`devicesModule.categories.channels.${e.specChannel}`)),1),a(` · `+b(h(p)(`devicesModule.categories.channelsProperties.${e.specProperty}`)),1)]),_:1},8,[`label`]),o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.sourceDevice`),prop:`sourceDevice`},null,8,[`label`]),o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.sourceChannel`),prop:`sourceChannel`},null,8,[`label`]),o(h(W),{label:h(p)(`devicesVirtualPlugin.wizard.review.columns.sourceProperty`),prop:`sourceProperty`},null,8,[`label`])]),_:1},8,[`data`])),K.value&&k.value!==`created`?(l(),e(w,{key:2},[o(h(oe),{modelValue:M.value,"onUpdate:modelValue":i[0]||=e=>M.value=e,"data-test-id":`hide-source-checkbox`},{default:S(()=>[a(b(h(p)(`devicesVirtualPlugin.wizard.review.hideSource.label`,{device:J.value?.name??``})),1)]),_:1},8,[`modelValue`]),n(`div`,qe,b(h(p)(`devicesVirtualPlugin.wizard.review.hideSource.hint`)),1)],64)):v(``,!0),k.value===`error`?(l(),s(h(q),{key:3,type:`error`,title:A.value??``,closable:!1,"show-icon":``,"data-test-id":`create-error`},null,8,[`title`])):v(``,!0),k.value===`created`?(l(),e(w,{key:4},[o(h(q),{type:`success`,title:h(p)(`devicesVirtualPlugin.wizard.review.created`,{name:t.name}),closable:!1,"show-icon":``,"data-test-id":`create-success`},null,8,[`title`]),P.value===`failed`?(l(),s(h(q),{key:0,type:`warning`,title:F.value??``,closable:!1,"show-icon":``,"data-test-id":`hide-error`},{default:S(()=>[o(h(_),{size:`small`,"data-test-id":`retry-hide`,onClick:ge},{default:S(()=>[a(b(h(p)(`devicesVirtualPlugin.wizard.review.hideSource.retry`)),1)]),_:1})]),_:1},8,[`title`])):P.value===`hidden`?(l(),s(h(q),{key:1,type:`success`,title:h(p)(`devicesVirtualPlugin.wizard.review.hideSource.success`,{device:J.value?.name??``}),closable:!1,"show-icon":``,"data-test-id":`hide-success`},null,8,[`title`])):v(``,!0)],64)):d.showCreateAction===!1?v(``,!0):(l(),s(h(_),{key:5,type:`primary`,disabled:!Z.value,loading:k.value===`submitting`,"data-test-id":`create-device`,onClick:ve},{default:S(()=>[a(b(h(p)(`devicesVirtualPlugin.wizard.review.create`)),1)]),_:1},8,[`disabled`,`loading`]))]))}}),Ye={class:`flex items-center`},Xe={class:`grow-1 flex flex-col gap-2 lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2 overflow-hidden mt-2`},Ze={class:`p-4`},Qe={key:2,class:`mt-2 flex justify-end lt-sm:mx-1 sm:mx-2 lt-sm:mb-1 sm:mb-2`},$e=4,et=c({name:`ViewVirtualDeviceWizard`,__name:`view-virtual-device-wizard`,setup(c,{expose:d}){let{t:m}=ee(),y=C(),{isMDDevice:x,isLGDevice:O}=H();T({title:m(`devicesVirtualPlugin.wizard.title`)});let j=f({category:null,mappings:[],name:``,roomId:null,zoneIds:[]}),N=u(0),P=u(!1),I=u(null),L=u(null),R=u(!1),z=r(()=>N.value===$e-1),te=r(()=>N.value===0?j.category!==null:N.value===1?P.value:N.value===2&&j.name.trim().length>0),B=r(()=>[{label:m(`devicesModule.breadcrumbs.devices.list`),route:y.resolve({name:$.DEVICES})},{label:m(`devicesVirtualPlugin.wizard.breadcrumb`),route:y.resolve({name:Ce.WIZARD})}]);M(()=>!R.value);let ne=()=>{R.value||(O.value?y.replace({name:$.DEVICES}):y.push({name:$.DEVICES}))},re=()=>{R.value||N.value!==0&&--N.value},U=()=>{!te.value||z.value||(N.value+=1)},ie=e=>{P.value=e},W=e=>{I.value=e},ae=()=>{if(I.value===null)return;let e={name:$.DEVICE,params:{id:I.value.id}};O.value?y.replace(e):y.push(e)};return p(()=>j.category,(e,t)=>{t==null||t===e||(j.mappings=[],P.value=!1)}),d({activeStep:N,canAdvance:te,createdDevice:I}),(r,c)=>(l(),e(w,null,[h(x)?v(``,!0):(l(),s(h(A),{key:0,teleport:``},{icon:S(()=>[o(h(t),{icon:`mdi:wizard-hat`,class:`w[20px] h[20px]`})]),title:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.title`)),1)]),subtitle:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.subtitle`)),1)]),_:1})),h(x)?v(``,!0):(l(),s(h(D),{key:1,align:h(E).LEFT,teleport:``,small:``,onClick:ne},{icon:S(()=>[o(h(i),{size:24},{default:S(()=>[o(h(t),{icon:`mdi:chevron-left`})]),_:1})]),_:1},8,[`align`])),o(h(V),{items:B.value},null,8,[`items`]),o(h(F),{heading:h(m)(`devicesVirtualPlugin.wizard.title`),"sub-heading":h(m)(`devicesVirtualPlugin.wizard.subtitle`),icon:`mdi:wizard-hat`},g({_:2},[h(x)?{name:`extra`,fn:S(()=>[n(`div`,Ye,[I.value===null&&N.value>0?(l(),s(h(_),{key:0,disabled:R.value,"data-test-id":`wizard-back`,onClick:re},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.back`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?(l(),s(h(_),{key:1,link:``,class:`ml-2!`,disabled:R.value,"data-test-id":`wizard-cancel`,onClick:ne},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.cancel`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?v(``,!0):(l(),s(h(_),{key:2,type:`primary`,"data-test-id":`wizard-view-device`,onClick:ae},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.viewDevice`)),1)]),_:1})),I.value===null&&z.value?(l(),s(h(_),{key:3,type:`primary`,class:`ml-2!`,disabled:!L.value?.canCreate,loading:R.value,"data-test-id":`create-device`,onClick:L.value?.onCreate},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.review.create`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])):v(``,!0),I.value===null&&!z.value?(l(),s(h(_),{key:4,type:`primary`,class:`ml-2!`,disabled:!te.value,"data-test-id":`wizard-next`,onClick:U},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.next`)),1)]),_:1},8,[`disabled`])):v(``,!0)])]),key:`0`}:void 0]),1032,[`heading`,`sub-heading`]),n(`div`,Xe,[o(h(X),{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`},{header:S(()=>[o(h(Z),{active:N.value,"finish-status":`success`,"align-center":``},{default:S(()=>[o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.category`)},null,8,[`title`]),o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.mapping`)},null,8,[`title`]),o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.details`)},null,8,[`title`]),o(h(Q),{title:h(m)(`devicesVirtualPlugin.wizard.steps.review`)},null,8,[`title`])]),_:1},8,[`active`])]),default:S(()=>[o(h(k),{class:`flex-1 overflow-hidden h-full`},{default:S(()=>[n(`div`,Ze,[N.value===0?(l(),s(je,{key:0,modelValue:j.category,"onUpdate:modelValue":c[0]||=e=>j.category=e},null,8,[`modelValue`])):N.value===1?(l(),s(Ge,{key:1,modelValue:j.mappings,"onUpdate:modelValue":c[1]||=e=>j.mappings=e,category:j.category,"onUpdate:valid":ie},null,8,[`modelValue`,`category`])):N.value===2?(l(),s(Fe,{key:2,name:j.name,"onUpdate:name":c[2]||=e=>j.name=e,"room-id":j.roomId,"onUpdate:roomId":c[3]||=e=>j.roomId=e,"zone-ids":j.zoneIds,"onUpdate:zoneIds":c[4]||=e=>j.zoneIds=e,category:j.category},null,8,[`name`,`room-id`,`zone-ids`,`category`])):(l(),s(Je,{key:3,ref_key:`reviewStep`,ref:L,category:j.category,mappings:j.mappings,name:j.name,"room-id":j.roomId,"zone-ids":j.zoneIds,"show-create-action":!1,onCreated:W,onSubmitting:c[5]||=e=>R.value=e},null,8,[`category`,`mappings`,`name`,`room-id`,`zone-ids`]))])]),_:1})]),_:1})]),h(x)?v(``,!0):(l(),e(`div`,Qe,[I.value===null&&N.value>0?(l(),s(h(_),{key:0,disabled:R.value,"data-test-id":`wizard-back`,onClick:re},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.back`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?(l(),s(h(_),{key:1,link:``,class:`ml-2!`,disabled:R.value,"data-test-id":`wizard-cancel`,onClick:ne},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.cancel`)),1)]),_:1},8,[`disabled`])):v(``,!0),I.value===null?v(``,!0):(l(),s(h(_),{key:2,type:`primary`,class:`ml-2!`,"data-test-id":`wizard-view-device`,onClick:ae},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.viewDevice`)),1)]),_:1})),I.value===null&&z.value?(l(),s(h(_),{key:3,type:`primary`,class:`ml-2!`,disabled:!L.value?.canCreate,loading:R.value,"data-test-id":`create-device`,onClick:L.value?.onCreate},{default:S(()=>[a(b(h(m)(`devicesVirtualPlugin.wizard.review.create`)),1)]),_:1},8,[`disabled`,`loading`,`onClick`])):v(``,!0),I.value===null&&!z.value?(l(),s(h(_),{key:4,type:`primary`,class:`ml-2!`,disabled:!te.value,"data-test-id":`wizard-next`,onClick:U},{default:S(()=>[a(b(h(m)(`devicesModule.wizard.actions.next`)),1)]),_:1},8,[`disabled`])):v(``,!0)]))],64))}});export{et as default};