music-assistant-frontend 2.17.32__py3-none-any.whl → 2.17.41__py3-none-any.whl

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 (167) hide show
  1. music_assistant_frontend/assets/{About-CV6HY6Cu.js → About-DjEKMtWh.js} +1 -1
  2. music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-DlAmWTWI.js +1 -0
  3. music_assistant_frontend/assets/AddPlayerGroup-BVzL6A8r.js +1 -0
  4. music_assistant_frontend/assets/AddProviderDetails-B06Ia24W.css +1 -0
  5. music_assistant_frontend/assets/AddProviderDetails-D30Mw-Nl.js +1 -0
  6. music_assistant_frontend/assets/AlbumDetails-DIiD1wiL.js +1 -0
  7. music_assistant_frontend/assets/ArtistDetails-BLoaXpH9.js +1 -0
  8. music_assistant_frontend/assets/AudiobookDetails-D1UciFr4.js +1 -0
  9. music_assistant_frontend/assets/BrowseView-BUEuIHkS.js +1 -0
  10. music_assistant_frontend/assets/BrowseView-D3jhZGn3.css +1 -0
  11. music_assistant_frontend/assets/{Button-BiCjBB20.js → Button-CrfR8Gdt.js} +1 -1
  12. music_assistant_frontend/assets/Container-C7yRkeCv.js +1 -0
  13. music_assistant_frontend/assets/CreateTokenDialog.vue_vue_type_script_setup_true_lang-474EAUdT.js +1 -0
  14. music_assistant_frontend/assets/Default-BIlZyn6h.js +23 -0
  15. music_assistant_frontend/assets/Default-DUBdqrKF.css +1 -0
  16. music_assistant_frontend/assets/{EditConfig-CcxrPgWJ.css → EditConfig-C41erRjv.css} +1 -1
  17. music_assistant_frontend/assets/EditConfig-DwDuuRhd.js +2 -0
  18. music_assistant_frontend/assets/EditCoreConfig-Aw02E0ut.css +1 -0
  19. music_assistant_frontend/assets/EditCoreConfig-CLb_2BVu.js +1 -0
  20. music_assistant_frontend/assets/EditPlayer-BZh7oINx.js +1 -0
  21. music_assistant_frontend/assets/EditPlayer-Bo0nzovm.css +1 -0
  22. music_assistant_frontend/assets/EditPlayerDsp-DQaIOevS.js +9 -0
  23. music_assistant_frontend/assets/EditProvider-CmRug90M.css +1 -0
  24. music_assistant_frontend/assets/EditProvider-o3q0C5wF.js +1 -0
  25. music_assistant_frontend/assets/FrontendConfig-CC26HR3b.css +1 -0
  26. music_assistant_frontend/assets/FrontendConfig-CQl8w4ld.js +1 -0
  27. music_assistant_frontend/assets/HomeView-nyWFBpLX.js +1 -0
  28. music_assistant_frontend/assets/ItemsListing-Cnfrbqt8.js +1 -0
  29. music_assistant_frontend/assets/{ItemsListing-DBRgGdb9.css → ItemsListing-Cv7Ad2QK.css} +1 -1
  30. music_assistant_frontend/assets/LibraryAlbums-COuzy_s-.js +1 -0
  31. music_assistant_frontend/assets/LibraryArtists-DCgII6_w.js +1 -0
  32. music_assistant_frontend/assets/LibraryAudiobooks-CfZi3ns9.js +1 -0
  33. music_assistant_frontend/assets/LibraryPlaylists-BuwJSWCa.js +1 -0
  34. music_assistant_frontend/assets/LibraryPodcasts-oFS6kYXN.js +1 -0
  35. music_assistant_frontend/assets/LibraryRadios-Cx4xxpyx.js +1 -0
  36. music_assistant_frontend/assets/LibraryTracks-CXxPkKdA.js +1 -0
  37. music_assistant_frontend/assets/ListItem-By9ygptX.css +1 -0
  38. music_assistant_frontend/assets/{ListItem-iWXF1T59.js → ListItem-CU9QYmiw.js} +1 -1
  39. music_assistant_frontend/assets/MediaItemImages-DD5b9P4k.js +1 -0
  40. music_assistant_frontend/assets/MediaItemThumb-A-03axGx.js +1 -0
  41. music_assistant_frontend/assets/NowPlayingBadge-DlzVWxxU.css +1 -0
  42. music_assistant_frontend/assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-cf4_7ViH.js +1 -0
  43. music_assistant_frontend/assets/PanelviewItemCompact-BWonx8dk.js +1 -0
  44. music_assistant_frontend/assets/PlayerCard-BuYb5sHK.js +1 -0
  45. music_assistant_frontend/assets/PlayerCard-CvqvdlaR.css +1 -0
  46. music_assistant_frontend/assets/Players-CaAKKMjV.css +1 -0
  47. music_assistant_frontend/assets/Players-XoTdClyI.js +1 -0
  48. music_assistant_frontend/assets/PlaylistDetails-DVLuG9eO.js +1 -0
  49. music_assistant_frontend/assets/PodcastDetails-D3X5hbMO.js +1 -0
  50. music_assistant_frontend/assets/{ProviderDetails-sWAPBlBe.css → ProviderDetails-DK0UG-xQ.css} +1 -1
  51. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_style_index_0_lang-B173j0nZ.js +8 -0
  52. music_assistant_frontend/assets/Providers-DyXDj3We.css +1 -0
  53. music_assistant_frontend/assets/Providers-jK6IN_CB.js +1 -0
  54. music_assistant_frontend/assets/RadioDetails-Cp9sBWtL.js +1 -0
  55. music_assistant_frontend/assets/RemoteAccessSettings-BzYfkBdB.css +1 -0
  56. music_assistant_frontend/assets/RemoteAccessSettings-DlFcnYsi.js +8 -0
  57. music_assistant_frontend/assets/Search-BzxWW1E8.js +1 -0
  58. music_assistant_frontend/assets/ServerLogs-BpNO59ZQ.js +4 -0
  59. music_assistant_frontend/assets/Settings-D3hGnPIi.js +1 -0
  60. music_assistant_frontend/assets/{Settings-CbTYv9HY.css → Settings-DJG4OcV0.css} +1 -1
  61. music_assistant_frontend/assets/SystemConfig-qR6YwzO_.js +1 -0
  62. music_assistant_frontend/assets/Toolbar-C66D0zTJ.js +1 -0
  63. music_assistant_frontend/assets/{Toolbar-DOjWle_n.css → Toolbar-Du9HN1PS.css} +1 -1
  64. music_assistant_frontend/assets/TrackDetails-BkWIihtm.js +1 -0
  65. music_assistant_frontend/assets/UserManagement-C4NBrehd.js +1 -0
  66. music_assistant_frontend/assets/UserProfile-BLSOU7kW.js +1 -0
  67. music_assistant_frontend/assets/VCheckbox-CvH8ekHL.css +1 -0
  68. music_assistant_frontend/assets/VCheckbox-DccbdgFZ.js +1 -0
  69. music_assistant_frontend/assets/{VCheckboxBtn-pFfosXS7.js → VCheckboxBtn-Dik76WyM.js} +1 -1
  70. music_assistant_frontend/assets/VExpansionPanels-BYnWit6K.js +1 -0
  71. music_assistant_frontend/assets/{VForm-lwT5Vjdc.js → VForm-BPHMcC1Q.js} +1 -1
  72. music_assistant_frontend/assets/{VInfiniteScroll-D5IkGjaw.js → VInfiniteScroll-CfzetGUD.js} +1 -1
  73. music_assistant_frontend/assets/{VSelect-BULCN41e.js → VSelect-Cz5ACGBh.js} +1 -1
  74. music_assistant_frontend/assets/VSelectionControl-BHjDOTFl.js +1 -0
  75. music_assistant_frontend/assets/{VSlider-SvfKY3nA.js → VSlider-N-Vl7wpy.js} +1 -1
  76. music_assistant_frontend/assets/VSwitch-DnBzHYGj.js +1 -0
  77. music_assistant_frontend/assets/{VToolbar-p_Wr_MDA.js → VToolbar-Db4qfa2C.js} +1 -1
  78. music_assistant_frontend/assets/VVirtualScroll-CG155sfU.js +1 -0
  79. music_assistant_frontend/assets/WidgetRow-BRke-iAc.js +1 -0
  80. music_assistant_frontend/assets/book-audio-C6G39POC.js +1 -0
  81. music_assistant_frontend/assets/createLucideIcon-Bb8oGlVw.js +1 -0
  82. music_assistant_frontend/assets/disc-3-Cgy2B2Vr.js +1 -0
  83. music_assistant_frontend/assets/folder-BWSuatVc.js +1 -0
  84. music_assistant_frontend/assets/{index-Co2Il0FF.js → index-D2rF_80D.js} +70 -76
  85. music_assistant_frontend/assets/index-DzOBqp_F.css +1 -0
  86. music_assistant_frontend/assets/libopus-decoder-c8_y7RJK.js +1 -0
  87. music_assistant_frontend/assets/list-music-BxVnxbpG.js +1 -0
  88. music_assistant_frontend/assets/{marquee_text_sync-CRO4rHS2.js → marquee_text_sync-Bj0t3siK.js} +1 -1
  89. music_assistant_frontend/assets/music-2-DQ83ewHN.js +1 -0
  90. music_assistant_frontend/assets/oggOpusDecoder-CbfFfr_v.js +1 -0
  91. music_assistant_frontend/assets/podcast-0C3hw7Sn.js +1 -0
  92. music_assistant_frontend/assets/radio-C5JwViug.js +1 -0
  93. music_assistant_frontend/assets/search-Dxc3u4CV.js +1 -0
  94. music_assistant_frontend/assets/settings-Cw59R2QP.js +1 -0
  95. music_assistant_frontend/assets/user-round-C7trb2Kq.js +1 -0
  96. music_assistant_frontend/assets/userPreferences-DWdlmlmR.js +1 -0
  97. music_assistant_frontend/index.html +2 -2
  98. music_assistant_frontend/sw.js +1 -1
  99. {music_assistant_frontend-2.17.32.dist-info → music_assistant_frontend-2.17.41.dist-info}/METADATA +1 -1
  100. music_assistant_frontend-2.17.41.dist-info/RECORD +165 -0
  101. music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-BeduIUk6.js +0 -1
  102. music_assistant_frontend/assets/AddPlayerGroup-Du383NUc.js +0 -1
  103. music_assistant_frontend/assets/AddProviderDetails-DH9lhcSK.js +0 -1
  104. music_assistant_frontend/assets/AlbumDetails-COxyRlta.js +0 -1
  105. music_assistant_frontend/assets/ArtistDetails-BXxNva8k.js +0 -1
  106. music_assistant_frontend/assets/AudiobookDetails-Dosym9RN.js +0 -1
  107. music_assistant_frontend/assets/BrowseView-CYbwlBvT.css +0 -1
  108. music_assistant_frontend/assets/BrowseView-pB3l4XUD.js +0 -1
  109. music_assistant_frontend/assets/Container-CxScoaQr.js +0 -1
  110. music_assistant_frontend/assets/CreateTokenDialog.vue_vue_type_script_setup_true_lang-D2Qjl841.js +0 -1
  111. music_assistant_frontend/assets/Default-DHOHMFeE.js +0 -21
  112. music_assistant_frontend/assets/Default-DJnoQ5hD.css +0 -1
  113. music_assistant_frontend/assets/EditConfig-DB9H12KG.js +0 -2
  114. music_assistant_frontend/assets/EditCoreConfig-BMQ7BS3a.js +0 -1
  115. music_assistant_frontend/assets/EditPlayer-DzVgRHoC.js +0 -1
  116. music_assistant_frontend/assets/EditPlayerDsp-D5V1CkM-.js +0 -9
  117. music_assistant_frontend/assets/EditProvider-CJto140u.js +0 -1
  118. music_assistant_frontend/assets/FrontendConfig-BUkcUaxv.js +0 -1
  119. music_assistant_frontend/assets/HomeView-oK5JMBeb.js +0 -1
  120. music_assistant_frontend/assets/ItemsListing-A1ZT1kbn.js +0 -1
  121. music_assistant_frontend/assets/LibraryAlbums-DJho375s.js +0 -1
  122. music_assistant_frontend/assets/LibraryArtists-DcWnNjeu.js +0 -1
  123. music_assistant_frontend/assets/LibraryAudiobooks-B117NR_V.js +0 -1
  124. music_assistant_frontend/assets/LibraryPlaylists-CoLgVbrh.js +0 -1
  125. music_assistant_frontend/assets/LibraryPodcasts-BEHMJqOA.js +0 -1
  126. music_assistant_frontend/assets/LibraryRadios-BrqYjq3J.js +0 -1
  127. music_assistant_frontend/assets/LibraryTracks-Bmvmk-4Y.js +0 -1
  128. music_assistant_frontend/assets/ListItem-CZjh-Z2L.css +0 -1
  129. music_assistant_frontend/assets/MediaItemImages-BOf5Uj2V.js +0 -1
  130. music_assistant_frontend/assets/MediaItemThumb-Dw_UVqvI.js +0 -1
  131. music_assistant_frontend/assets/PanelviewItemCompact-DqrW-65j.js +0 -1
  132. music_assistant_frontend/assets/PlayerCard-CAzWxRts.js +0 -1
  133. music_assistant_frontend/assets/PlayerCard-FDH7ZKgP.css +0 -1
  134. music_assistant_frontend/assets/Players-C2XxoddH.js +0 -1
  135. music_assistant_frontend/assets/Players-DiFMAcvk.css +0 -1
  136. music_assistant_frontend/assets/PlaylistDetails-C7LgYTrG.js +0 -1
  137. music_assistant_frontend/assets/PodcastDetails-DWV8dfji.js +0 -1
  138. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-ne-sT3oC.js +0 -8
  139. music_assistant_frontend/assets/Providers-CNZqCuOW.js +0 -1
  140. music_assistant_frontend/assets/Providers-Df6R6NDc.css +0 -1
  141. music_assistant_frontend/assets/RadioDetails-CHnY3szA.js +0 -1
  142. music_assistant_frontend/assets/RemoteAccessSettings-Bf5s7Cwr.css +0 -1
  143. music_assistant_frontend/assets/RemoteAccessSettings-C7tOdY92.js +0 -1
  144. music_assistant_frontend/assets/Search-DnZKGW7M.js +0 -1
  145. music_assistant_frontend/assets/ServerLogs-CN-V6Ykv.js +0 -4
  146. music_assistant_frontend/assets/Settings-CUlHRuiJ.js +0 -1
  147. music_assistant_frontend/assets/SystemConfig-CfZR6dJU.js +0 -1
  148. music_assistant_frontend/assets/Toolbar-B6JfB3ZK.js +0 -1
  149. music_assistant_frontend/assets/TrackDetails-U0dq6UQ-.js +0 -1
  150. music_assistant_frontend/assets/UserManagement-BL2RuBx9.js +0 -1
  151. music_assistant_frontend/assets/UserProfile-B0pe-Ula.js +0 -1
  152. music_assistant_frontend/assets/VAlert-BDbtqfCV.css +0 -1
  153. music_assistant_frontend/assets/VAlert-CqZcE68W.js +0 -1
  154. music_assistant_frontend/assets/VDialog-DwTSAOeg.css +0 -1
  155. music_assistant_frontend/assets/VDialog-oA-qD8nK.js +0 -1
  156. music_assistant_frontend/assets/VExpansionPanels-ynbmIXCh.js +0 -1
  157. music_assistant_frontend/assets/VSelectionControl-BU644enI.js +0 -1
  158. music_assistant_frontend/assets/VSwitch-CbeBX82z.js +0 -1
  159. music_assistant_frontend/assets/VVirtualScroll-Bmp7pEa7.js +0 -1
  160. music_assistant_frontend/assets/WidgetRow-CI7rsYFv.js +0 -1
  161. music_assistant_frontend/assets/index-W5yBuLNV.css +0 -1
  162. music_assistant_frontend/assets/userPreferences-BuMozdux.js +0 -1
  163. music_assistant_frontend/assets/userPreferences-Cm6AcKY5.css +0 -1
  164. music_assistant_frontend-2.17.32.dist-info/RECORD +0 -148
  165. {music_assistant_frontend-2.17.32.dist-info → music_assistant_frontend-2.17.41.dist-info}/WHEEL +0 -0
  166. {music_assistant_frontend-2.17.32.dist-info → music_assistant_frontend-2.17.41.dist-info}/licenses/LICENSE +0 -0
  167. {music_assistant_frontend-2.17.32.dist-info → music_assistant_frontend-2.17.41.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,8 @@
1
+ import{C as At}from"./Container-C7yRkeCv.js";import{d2 as Bt,az as vt,b8 as Et,J as ee,i as Pt,a3 as Nt,ax as St,bc as Ge,bm as K,L as Mt,aF as z,aG as j,aH as N,aP as F,o as M,by as Ue,aK as te,d3 as ne,E as p,bp as k,aV as D,bF as ie,aW as T,bg as x,cw as Ve,c7 as He,M as le,ah as Rt,b5 as Tt,aE as Dt,b_ as ue,cc as Lt,cA as Zt,r as jt,_ as kt}from"./index-D2rF_80D.js";import{V as Gt}from"./VSwitch-DnBzHYGj.js";import{V as Ut,b as Vt,c as Ht,a as Wt}from"./VExpansionPanels-BYnWit6K.js";import"./index-kQIztB-E.js";import"./VSelectionControl-BHjDOTFl.js";const zt="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCA4MDAgNDUwIj4KICA8IS0tIEFycm93IG1hcmtlcnMgKG11c3QgYmUgZGVmaW5lZCBmaXJzdCkgLS0+CiAgPGRlZnM+CiAgICA8bWFya2VyIGlkPSJhcnJvd2hlYWQiIG1hcmtlcldpZHRoPSIxMCIgbWFya2VySGVpZ2h0PSIxMCIgcmVmWD0iOSIgcmVmWT0iMyIgb3JpZW50PSJhdXRvIj4KICAgICAgPHBvbHlnb24gcG9pbnRzPSIwIDAsIDEwIDMsIDAgNiIgZmlsbD0iY3VycmVudENvbG9yIi8+CiAgICA8L21hcmtlcj4KICAgIDxtYXJrZXIgaWQ9ImFycm93aGVhZC1ncmVlbiIgbWFya2VyV2lkdGg9IjEwIiBtYXJrZXJIZWlnaHQ9IjEwIiByZWZYPSI5IiByZWZZPSIzIiBvcmllbnQ9ImF1dG8iPgogICAgICA8cG9seWdvbiBwb2ludHM9IjAgMCwgMTAgMywgMCA2IiBmaWxsPSIjNENBRjUwIi8+CiAgICA8L21hcmtlcj4KICA8L2RlZnM+CgogIDxzdHlsZT4KICAgIHRleHQgewogICAgICBmb250LWZhbWlseTogLWFwcGxlLXN5c3RlbSwgQmxpbmtNYWNTeXN0ZW1Gb250LCAiU2Vnb2UgVUkiLCBSb2JvdG8sICJIZWx2ZXRpY2EgTmV1ZSIsIEFyaWFsLCBzYW5zLXNlcmlmOwogICAgfQogIDwvc3R5bGU+CgogIDwhLS0gUmVtb3RlIENsaWVudCAtLT4KICA8Zz4KICAgIDxyZWN0IHg9IjUwIiB5PSI3MCIgd2lkdGg9IjE2MCIgaGVpZ2h0PSIxMDAiIHJ4PSIxMiIgZmlsbD0iIzRDQUY1MCIgb3BhY2l0eT0iMC4xMiIgc3Ryb2tlPSIjNENBRjUwIiBzdHJva2Utd2lkdGg9IjIuNSIvPgogICAgPHRleHQgeD0iMTMwIiB5PSIxMDgiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtc2l6ZT0iMTUiIGZvbnQtd2VpZ2h0PSI2MDAiIGZpbGw9ImN1cnJlbnRDb2xvciI+UmVtb3RlIENsaWVudDwvdGV4dD4KICAgIDx0ZXh0IHg9IjEzMCIgeT0iMTM1IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjExIiBmaWxsPSJjdXJyZW50Q29sb3IiIG9wYWNpdHk9IjAuNzUiPmFwcC5tdXNpYy1hc3Npc3RhbnQuaW88L3RleHQ+CiAgPC9nPgoKICA8IS0tIFNpZ25hbGluZyBTZXJ2ZXIgLS0+CiAgPGc+CiAgICA8cmVjdCB4PSIzMjAiIHk9IjUwIiB3aWR0aD0iMTYwIiBoZWlnaHQ9IjE0MCIgcng9IjEyIiBmaWxsPSIjMjE5NkYzIiBvcGFjaXR5PSIwLjEyIiBzdHJva2U9IiMyMTk2RjMiIHN0cm9rZS13aWR0aD0iMi41Ii8+CiAgICA8dGV4dCB4PSI0MDAiIHk9Ijg4IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjE1IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSJjdXJyZW50Q29sb3IiPlNpZ25hbGluZyBTZXJ2ZXI8L3RleHQ+CiAgICA8dGV4dCB4PSI0MDAiIHk9IjExOCIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZm9udC1zaXplPSIxMSIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjciPkhBIENsb3VkPC90ZXh0PgogICAgPHRleHQgeD0iNDAwIiB5PSIxNDAiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtc2l6ZT0iMTEiIGZpbGw9ImN1cnJlbnRDb2xvciIgb3BhY2l0eT0iMC43Ij5TVFVOL1RVUk48L3RleHQ+CiAgICA8dGV4dCB4PSI0MDAiIHk9IjE2MiIgdGV4dC1hbmNob3I9Im1pZGRsZSIgZm9udC1zaXplPSIxMSIgZmlsbD0iY3VycmVudENvbG9yIiBvcGFjaXR5PSIwLjciPldlYlJUQzwvdGV4dD4KICA8L2c+CgogIDwhLS0gTXVzaWMgQXNzaXN0YW50IFNlcnZlciAtLT4KICA8Zz4KICAgIDxyZWN0IHg9IjU5MCIgeT0iNzAiIHdpZHRoPSIxNjAiIGhlaWdodD0iMTAwIiByeD0iMTIiIGZpbGw9IiM5QzI3QjAiIG9wYWNpdHk9IjAuMTIiIHN0cm9rZT0iIzlDMjdCMCIgc3Ryb2tlLXdpZHRoPSIyLjUiLz4KICAgIDx0ZXh0IHg9IjY3MCIgeT0iMTA4IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjE1IiBmb250LXdlaWdodD0iNjAwIiBmaWxsPSJjdXJyZW50Q29sb3IiPk11c2ljIEFzc2lzdGFudDwvdGV4dD4KICAgIDx0ZXh0IHg9IjY3MCIgeT0iMTI4IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjExIiBmaWxsPSJjdXJyZW50Q29sb3IiIG9wYWNpdHk9IjAuNzUiPlNlcnZlcjwvdGV4dD4KICAgIDx0ZXh0IHg9IjY3MCIgeT0iMTUwIiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjEwIiBmaWxsPSJjdXJyZW50Q29sb3IiIG9wYWNpdHk9IjAuNiI+UmVtb3RlIElEOiB4eHh4Li4uPC90ZXh0PgogIDwvZz4KCiAgPCEtLSBTdGVwIDE6IFJlbW90ZSBDbGllbnQgdG8gU2lnbmFsaW5nIFNlcnZlciAtLT4KICA8Zz4KICAgIDxsaW5lIHgxPSIyMTAiIHkxPSIxMjAiIHgyPSIzMTUiIHkyPSIxMjAiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNSIgb3BhY2l0eT0iMC43IiBtYXJrZXItZW5kPSJ1cmwoI2Fycm93aGVhZCkiLz4KICAgIDxyZWN0IHg9IjIzMiIgeT0iOTAiIHdpZHRoPSI5NiIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiIG9wYWNpdHk9IjAuOSIgcng9IjQiLz4KICAgIDx0ZXh0IHg9IjI4MCIgeT0iMTA0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjExIiBmb250LXdlaWdodD0iNTAwIiBmaWxsPSJjdXJyZW50Q29sb3IiPjEuIENvbm5lY3Qgd2l0aCBJRDwvdGV4dD4KICA8L2c+CgogIDwhLS0gU3RlcCAyOiBTaWduYWxpbmcgU2VydmVyIHRvIE11c2ljIEFzc2lzdGFudCAtLT4KICA8Zz4KICAgIDxsaW5lIHgxPSI0ODUiIHkxPSIxMjAiIHgyPSI1ODUiIHkyPSIxMjAiIHN0cm9rZT0iY3VycmVudENvbG9yIiBzdHJva2Utd2lkdGg9IjIuNSIgb3BhY2l0eT0iMC43IiBtYXJrZXItZW5kPSJ1cmwoI2Fycm93aGVhZCkiLz4KICAgIDxyZWN0IHg9IjUwMiIgeT0iOTAiIHdpZHRoPSI2NiIgaGVpZ2h0PSIyMCIgZmlsbD0id2hpdGUiIG9wYWNpdHk9IjAuOSIgcng9IjQiLz4KICAgIDx0ZXh0IHg9IjUzNSIgeT0iMTA0IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjExIiBmb250LXdlaWdodD0iNTAwIiBmaWxsPSJjdXJyZW50Q29sb3IiPjIuIE5lZ290aWF0ZTwvdGV4dD4KICA8L2c+CgogIDwhLS0gU3RlcCAzOiBEaXJlY3QgUDJQIENvbm5lY3Rpb24gKGN1cnZlZCBwYXRoKSAtLT4KICA8Zz4KICAgIDxwYXRoIGQ9Ik0gMTMwLDE3NSBRIDQwMCwzMTAgNjcwLDE3NSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNENBRjUwIiBzdHJva2Utd2lkdGg9IjQiIHN0cm9rZS1kYXNoYXJyYXk9IjEyLDYiIG1hcmtlci1lbmQ9InVybCgjYXJyb3doZWFkLWdyZWVuKSIvPgogICAgPHJlY3QgeD0iMzEwIiB5PSIyNzAiIHdpZHRoPSIxODAiIGhlaWdodD0iNTAiIGZpbGw9IndoaXRlIiBvcGFjaXR5PSIwLjk1IiByeD0iNiIvPgogICAgPHRleHQgeD0iNDAwIiB5PSIyODkiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtc2l6ZT0iMTMiIGZvbnQtd2VpZ2h0PSI2MDAiIGZpbGw9IiM0Q0FGNTAiPjMuIERpcmVjdCBQMlAgQ29ubmVjdGlvbjwvdGV4dD4KICAgIDx0ZXh0IHg9IjQwMCIgeT0iMzA3IiB0ZXh0LWFuY2hvcj0ibWlkZGxlIiBmb250LXNpemU9IjExIiBmaWxsPSIjNENBRjUwIj4oRW5kLXRvLUVuZCBFbmNyeXB0ZWQpPC90ZXh0PgogIDwvZz4KCiAgPCEtLSBMZWdlbmQgLS0+CiAgPGcgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTgwLCAzODUpIj4KICAgIDxsaW5lIHgxPSIwIiB5MT0iMCIgeDI9IjUwIiB5Mj0iMCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIHN0cm9rZS13aWR0aD0iMi41IiBvcGFjaXR5PSIwLjciLz4KICAgIDx0ZXh0IHg9IjU4IiB5PSI1IiBmb250LXNpemU9IjExIiBmb250LXdlaWdodD0iNTAwIiBmaWxsPSJjdXJyZW50Q29sb3IiPlNpZ25hbGluZyAoc2V0dXAgb25seSk8L3RleHQ+CgogICAgPGxpbmUgeDE9IjI1MCIgeTE9IjAiIHgyPSIzMDAiIHkyPSIwIiBzdHJva2U9IiM0Q0FGNTAiIHN0cm9rZS13aWR0aD0iNCIgc3Ryb2tlLWRhc2hhcnJheT0iMTIsNiIvPgogICAgPHRleHQgeD0iMzA4IiB5PSI1IiBmb250LXNpemU9IjExIiBmb250LXdlaWdodD0iNTAwIiBmaWxsPSJjdXJyZW50Q29sb3IiPkRpcmVjdCBlbmNyeXB0ZWQgY29ubmVjdGlvbjwvdGV4dD4KICA8L2c+Cjwvc3ZnPgo=";var Q={},de,We;function Ft(){return We||(We=1,de=function(){return typeof Promise=="function"&&Promise.prototype&&Promise.prototype.then}),de}var ge={},W={},ze;function X(){if(ze)return W;ze=1;let r;const i=[0,26,44,70,100,134,172,196,242,292,346,404,466,532,581,655,733,815,901,991,1085,1156,1258,1364,1474,1588,1706,1828,1921,2051,2185,2323,2465,2611,2761,2876,3034,3196,3362,3532,3706];return W.getSymbolSize=function(t){if(!t)throw new Error('"version" cannot be null or undefined');if(t<1||t>40)throw new Error('"version" should be in range from 1 to 40');return t*4+17},W.getSymbolTotalCodewords=function(t){return i[t]},W.getBCHDigit=function(o){let t=0;for(;o!==0;)t++,o>>>=1;return t},W.setToSJISFunction=function(t){if(typeof t!="function")throw new Error('"toSJISFunc" is not a valid function.');r=t},W.isKanjiModeEnabled=function(){return typeof r<"u"},W.toSJIS=function(t){return r(t)},W}var fe={},Fe;function Le(){return Fe||(Fe=1,(function(r){r.L={bit:1},r.M={bit:0},r.Q={bit:3},r.H={bit:2};function i(o){if(typeof o!="string")throw new Error("Param is not a string");switch(o.toLowerCase()){case"l":case"low":return r.L;case"m":case"medium":return r.M;case"q":case"quartile":return r.Q;case"h":case"high":return r.H;default:throw new Error("Unknown EC Level: "+o)}}r.isValid=function(t){return t&&typeof t.bit<"u"&&t.bit>=0&&t.bit<4},r.from=function(t,e){if(r.isValid(t))return t;try{return i(t)}catch{return e}}})(fe)),fe}var Ie,Xe;function Xt(){if(Xe)return Ie;Xe=1;function r(){this.buffer=[],this.length=0}return r.prototype={get:function(i){const o=Math.floor(i/8);return(this.buffer[o]>>>7-i%8&1)===1},put:function(i,o){for(let t=0;t<o;t++)this.putBit((i>>>o-t-1&1)===1)},getLengthInBits:function(){return this.length},putBit:function(i){const o=Math.floor(this.length/8);this.buffer.length<=o&&this.buffer.push(0),i&&(this.buffer[o]|=128>>>this.length%8),this.length++}},Ie=r,Ie}var he,Je;function Jt(){if(Je)return he;Je=1;function r(i){if(!i||i<1)throw new Error("BitMatrix size must be defined and greater than 0");this.size=i,this.data=new Uint8Array(i*i),this.reservedBit=new Uint8Array(i*i)}return r.prototype.set=function(i,o,t,e){const n=i*this.size+o;this.data[n]=t,e&&(this.reservedBit[n]=!0)},r.prototype.get=function(i,o){return this.data[i*this.size+o]},r.prototype.xor=function(i,o,t){this.data[i*this.size+o]^=t},r.prototype.isReserved=function(i,o){return this.reservedBit[i*this.size+o]},he=r,he}var me={},Ye;function Yt(){return Ye||(Ye=1,(function(r){const i=X().getSymbolSize;r.getRowColCoords=function(t){if(t===1)return[];const e=Math.floor(t/7)+2,n=i(t),s=n===145?26:Math.ceil((n-13)/(2*e-2))*2,c=[n-7];for(let a=1;a<e-1;a++)c[a]=c[a-1]-s;return c.push(6),c.reverse()},r.getPositions=function(t){const e=[],n=r.getRowColCoords(t),s=n.length;for(let c=0;c<s;c++)for(let a=0;a<s;a++)c===0&&a===0||c===0&&a===s-1||c===s-1&&a===0||e.push([n[c],n[a]]);return e}})(me)),me}var pe={},Qe;function Qt(){if(Qe)return pe;Qe=1;const r=X().getSymbolSize,i=7;return pe.getPositions=function(t){const e=r(t);return[[0,0],[e-i,0],[0,e-i]]},pe}var Ce={},qe;function qt(){return qe||(qe=1,(function(r){r.Patterns={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTERN101:5,PATTERN110:6,PATTERN111:7};const i={N1:3,N2:3,N3:40,N4:10};r.isValid=function(e){return e!=null&&e!==""&&!isNaN(e)&&e>=0&&e<=7},r.from=function(e){return r.isValid(e)?parseInt(e,10):void 0},r.getPenaltyN1=function(e){const n=e.size;let s=0,c=0,a=0,d=null,g=null;for(let h=0;h<n;h++){c=a=0,d=g=null;for(let m=0;m<n;m++){let l=e.get(h,m);l===d?c++:(c>=5&&(s+=i.N1+(c-5)),d=l,c=1),l=e.get(m,h),l===g?a++:(a>=5&&(s+=i.N1+(a-5)),g=l,a=1)}c>=5&&(s+=i.N1+(c-5)),a>=5&&(s+=i.N1+(a-5))}return s},r.getPenaltyN2=function(e){const n=e.size;let s=0;for(let c=0;c<n-1;c++)for(let a=0;a<n-1;a++){const d=e.get(c,a)+e.get(c,a+1)+e.get(c+1,a)+e.get(c+1,a+1);(d===4||d===0)&&s++}return s*i.N2},r.getPenaltyN3=function(e){const n=e.size;let s=0,c=0,a=0;for(let d=0;d<n;d++){c=a=0;for(let g=0;g<n;g++)c=c<<1&2047|e.get(d,g),g>=10&&(c===1488||c===93)&&s++,a=a<<1&2047|e.get(g,d),g>=10&&(a===1488||a===93)&&s++}return s*i.N3},r.getPenaltyN4=function(e){let n=0;const s=e.data.length;for(let a=0;a<s;a++)n+=e.data[a];return Math.abs(Math.ceil(n*100/s/5)-10)*i.N4};function o(t,e,n){switch(t){case r.Patterns.PATTERN000:return(e+n)%2===0;case r.Patterns.PATTERN001:return e%2===0;case r.Patterns.PATTERN010:return n%3===0;case r.Patterns.PATTERN011:return(e+n)%3===0;case r.Patterns.PATTERN100:return(Math.floor(e/2)+Math.floor(n/3))%2===0;case r.Patterns.PATTERN101:return e*n%2+e*n%3===0;case r.Patterns.PATTERN110:return(e*n%2+e*n%3)%2===0;case r.Patterns.PATTERN111:return(e*n%3+(e+n)%2)%2===0;default:throw new Error("bad maskPattern:"+t)}}r.applyMask=function(e,n){const s=n.size;for(let c=0;c<s;c++)for(let a=0;a<s;a++)n.isReserved(a,c)||n.xor(a,c,o(e,a,c))},r.getBestMask=function(e,n){const s=Object.keys(r.Patterns).length;let c=0,a=1/0;for(let d=0;d<s;d++){n(d),r.applyMask(d,e);const g=r.getPenaltyN1(e)+r.getPenaltyN2(e)+r.getPenaltyN3(e)+r.getPenaltyN4(e);r.applyMask(d,e),g<a&&(a=g,c=d)}return c}})(Ce)),Ce}var re={},Ke;function mt(){if(Ke)return re;Ke=1;const r=Le(),i=[1,1,1,1,1,1,1,1,1,1,2,2,1,2,2,4,1,2,4,4,2,4,4,4,2,4,6,5,2,4,6,6,2,5,8,8,4,5,8,8,4,5,8,11,4,8,10,11,4,9,12,16,4,9,16,16,6,10,12,18,6,10,17,16,6,11,16,19,6,13,18,21,7,14,21,25,8,16,20,25,8,17,23,25,9,17,23,34,9,18,25,30,10,20,27,32,12,21,29,35,12,23,34,37,12,25,34,40,13,26,35,42,14,28,38,45,15,29,40,48,16,31,43,51,17,33,45,54,18,35,48,57,19,37,51,60,19,38,53,63,20,40,56,66,21,43,59,70,22,45,62,74,24,47,65,77,25,49,68,81],o=[7,10,13,17,10,16,22,28,15,26,36,44,20,36,52,64,26,48,72,88,36,64,96,112,40,72,108,130,48,88,132,156,60,110,160,192,72,130,192,224,80,150,224,264,96,176,260,308,104,198,288,352,120,216,320,384,132,240,360,432,144,280,408,480,168,308,448,532,180,338,504,588,196,364,546,650,224,416,600,700,224,442,644,750,252,476,690,816,270,504,750,900,300,560,810,960,312,588,870,1050,336,644,952,1110,360,700,1020,1200,390,728,1050,1260,420,784,1140,1350,450,812,1200,1440,480,868,1290,1530,510,924,1350,1620,540,980,1440,1710,570,1036,1530,1800,570,1064,1590,1890,600,1120,1680,1980,630,1204,1770,2100,660,1260,1860,2220,720,1316,1950,2310,750,1372,2040,2430];return re.getBlocksCount=function(e,n){switch(n){case r.L:return i[(e-1)*4+0];case r.M:return i[(e-1)*4+1];case r.Q:return i[(e-1)*4+2];case r.H:return i[(e-1)*4+3];default:return}},re.getTotalCodewordsCount=function(e,n){switch(n){case r.L:return o[(e-1)*4+0];case r.M:return o[(e-1)*4+1];case r.Q:return o[(e-1)*4+2];case r.H:return o[(e-1)*4+3];default:return}},re}var we={},$={},xe;function Kt(){if(xe)return $;xe=1;const r=new Uint8Array(512),i=new Uint8Array(256);return(function(){let t=1;for(let e=0;e<255;e++)r[e]=t,i[t]=e,t<<=1,t&256&&(t^=285);for(let e=255;e<512;e++)r[e]=r[e-255]})(),$.log=function(t){if(t<1)throw new Error("log("+t+")");return i[t]},$.exp=function(t){return r[t]},$.mul=function(t,e){return t===0||e===0?0:r[i[t]+i[e]]},$}var $e;function xt(){return $e||($e=1,(function(r){const i=Kt();r.mul=function(t,e){const n=new Uint8Array(t.length+e.length-1);for(let s=0;s<t.length;s++)for(let c=0;c<e.length;c++)n[s+c]^=i.mul(t[s],e[c]);return n},r.mod=function(t,e){let n=new Uint8Array(t);for(;n.length-e.length>=0;){const s=n[0];for(let a=0;a<e.length;a++)n[a]^=i.mul(e[a],s);let c=0;for(;c<n.length&&n[c]===0;)c++;n=n.slice(c)}return n},r.generateECPolynomial=function(t){let e=new Uint8Array([1]);for(let n=0;n<t;n++)e=r.mul(e,new Uint8Array([1,i.exp(n)]));return e}})(we)),we}var ye,Oe;function $t(){if(Oe)return ye;Oe=1;const r=xt();function i(o){this.genPoly=void 0,this.degree=o,this.degree&&this.initialize(this.degree)}return i.prototype.initialize=function(t){this.degree=t,this.genPoly=r.generateECPolynomial(this.degree)},i.prototype.encode=function(t){if(!this.genPoly)throw new Error("Encoder not initialized");const e=new Uint8Array(t.length+this.degree);e.set(t);const n=r.mod(e,this.genPoly),s=this.degree-n.length;if(s>0){const c=new Uint8Array(this.degree);return c.set(n,s),c}return n},ye=i,ye}var _e={},be={},Ae={},et;function pt(){return et||(et=1,Ae.isValid=function(i){return!isNaN(i)&&i>=1&&i<=40}),Ae}var G={},tt;function Ct(){if(tt)return G;tt=1;const r="[0-9]+",i="[A-Z $%*+\\-./:]+";let o="(?:[u3000-u303F]|[u3040-u309F]|[u30A0-u30FF]|[uFF00-uFFEF]|[u4E00-u9FAF]|[u2605-u2606]|[u2190-u2195]|u203B|[u2010u2015u2018u2019u2025u2026u201Cu201Du2225u2260]|[u0391-u0451]|[u00A7u00A8u00B1u00B4u00D7u00F7])+";o=o.replace(/u/g,"\\u");const t="(?:(?![A-Z0-9 $%*+\\-./:]|"+o+`)(?:.|[\r
2
+ ]))+`;G.KANJI=new RegExp(o,"g"),G.BYTE_KANJI=new RegExp("[^A-Z0-9 $%*+\\-./:]+","g"),G.BYTE=new RegExp(t,"g"),G.NUMERIC=new RegExp(r,"g"),G.ALPHANUMERIC=new RegExp(i,"g");const e=new RegExp("^"+o+"$"),n=new RegExp("^"+r+"$"),s=new RegExp("^[A-Z0-9 $%*+\\-./:]+$");return G.testKanji=function(a){return e.test(a)},G.testNumeric=function(a){return n.test(a)},G.testAlphanumeric=function(a){return s.test(a)},G}var nt;function J(){return nt||(nt=1,(function(r){const i=pt(),o=Ct();r.NUMERIC={id:"Numeric",bit:1,ccBits:[10,12,14]},r.ALPHANUMERIC={id:"Alphanumeric",bit:2,ccBits:[9,11,13]},r.BYTE={id:"Byte",bit:4,ccBits:[8,16,16]},r.KANJI={id:"Kanji",bit:8,ccBits:[8,10,12]},r.MIXED={bit:-1},r.getCharCountIndicator=function(n,s){if(!n.ccBits)throw new Error("Invalid mode: "+n);if(!i.isValid(s))throw new Error("Invalid version: "+s);return s>=1&&s<10?n.ccBits[0]:s<27?n.ccBits[1]:n.ccBits[2]},r.getBestModeForData=function(n){return o.testNumeric(n)?r.NUMERIC:o.testAlphanumeric(n)?r.ALPHANUMERIC:o.testKanji(n)?r.KANJI:r.BYTE},r.toString=function(n){if(n&&n.id)return n.id;throw new Error("Invalid mode")},r.isValid=function(n){return n&&n.bit&&n.ccBits};function t(e){if(typeof e!="string")throw new Error("Param is not a string");switch(e.toLowerCase()){case"numeric":return r.NUMERIC;case"alphanumeric":return r.ALPHANUMERIC;case"kanji":return r.KANJI;case"byte":return r.BYTE;default:throw new Error("Unknown mode: "+e)}}r.from=function(n,s){if(r.isValid(n))return n;try{return t(n)}catch{return s}}})(be)),be}var it;function Ot(){return it||(it=1,(function(r){const i=X(),o=mt(),t=Le(),e=J(),n=pt(),s=7973,c=i.getBCHDigit(s);function a(m,l,u){for(let v=1;v<=40;v++)if(l<=r.getCapacity(v,u,m))return v}function d(m,l){return e.getCharCountIndicator(m,l)+4}function g(m,l){let u=0;return m.forEach(function(v){const L=d(v.mode,l);u+=L+v.getBitsLength()}),u}function h(m,l){for(let u=1;u<=40;u++)if(g(m,u)<=r.getCapacity(u,l,e.MIXED))return u}r.from=function(l,u){return n.isValid(l)?parseInt(l,10):u},r.getCapacity=function(l,u,v){if(!n.isValid(l))throw new Error("Invalid QR Code version");typeof v>"u"&&(v=e.BYTE);const L=i.getSymbolTotalCodewords(l),E=o.getTotalCodewordsCount(l,u),R=(L-E)*8;if(v===e.MIXED)return R;const P=R-d(v,l);switch(v){case e.NUMERIC:return Math.floor(P/10*3);case e.ALPHANUMERIC:return Math.floor(P/11*2);case e.KANJI:return Math.floor(P/13);case e.BYTE:default:return Math.floor(P/8)}},r.getBestVersionForData=function(l,u){let v;const L=t.from(u,t.M);if(Array.isArray(l)){if(l.length>1)return h(l,L);if(l.length===0)return 1;v=l[0]}else v=l;return a(v.mode,v.getLength(),L)},r.getEncodedBits=function(l){if(!n.isValid(l)||l<7)throw new Error("Invalid QR Code version");let u=l<<12;for(;i.getBCHDigit(u)-c>=0;)u^=s<<i.getBCHDigit(u)-c;return l<<12|u}})(_e)),_e}var Be={},rt;function en(){if(rt)return Be;rt=1;const r=X(),i=1335,o=21522,t=r.getBCHDigit(i);return Be.getEncodedBits=function(n,s){const c=n.bit<<3|s;let a=c<<10;for(;r.getBCHDigit(a)-t>=0;)a^=i<<r.getBCHDigit(a)-t;return(c<<10|a)^o},Be}var ve={},Ee,ot;function tn(){if(ot)return Ee;ot=1;const r=J();function i(o){this.mode=r.NUMERIC,this.data=o.toString()}return i.getBitsLength=function(t){return 10*Math.floor(t/3)+(t%3?t%3*3+1:0)},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(t){let e,n,s;for(e=0;e+3<=this.data.length;e+=3)n=this.data.substr(e,3),s=parseInt(n,10),t.put(s,10);const c=this.data.length-e;c>0&&(n=this.data.substr(e),s=parseInt(n,10),t.put(s,c*3+1))},Ee=i,Ee}var Pe,st;function nn(){if(st)return Pe;st=1;const r=J(),i=["0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"," ","$","%","*","+","-",".","/",":"];function o(t){this.mode=r.ALPHANUMERIC,this.data=t}return o.getBitsLength=function(e){return 11*Math.floor(e/2)+6*(e%2)},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(e){let n;for(n=0;n+2<=this.data.length;n+=2){let s=i.indexOf(this.data[n])*45;s+=i.indexOf(this.data[n+1]),e.put(s,11)}this.data.length%2&&e.put(i.indexOf(this.data[n]),6)},Pe=o,Pe}var Ne,at;function rn(){if(at)return Ne;at=1;const r=J();function i(o){this.mode=r.BYTE,typeof o=="string"?this.data=new TextEncoder().encode(o):this.data=new Uint8Array(o)}return i.getBitsLength=function(t){return t*8},i.prototype.getLength=function(){return this.data.length},i.prototype.getBitsLength=function(){return i.getBitsLength(this.data.length)},i.prototype.write=function(o){for(let t=0,e=this.data.length;t<e;t++)o.put(this.data[t],8)},Ne=i,Ne}var Se,ct;function on(){if(ct)return Se;ct=1;const r=J(),i=X();function o(t){this.mode=r.KANJI,this.data=t}return o.getBitsLength=function(e){return e*13},o.prototype.getLength=function(){return this.data.length},o.prototype.getBitsLength=function(){return o.getBitsLength(this.data.length)},o.prototype.write=function(t){let e;for(e=0;e<this.data.length;e++){let n=i.toSJIS(this.data[e]);if(n>=33088&&n<=40956)n-=33088;else if(n>=57408&&n<=60351)n-=49472;else throw new Error("Invalid SJIS character: "+this.data[e]+`
3
+ Make sure your charset is UTF-8`);n=(n>>>8&255)*192+(n&255),t.put(n,13)}},Se=o,Se}var Me={exports:{}},lt;function sn(){return lt||(lt=1,(function(r){var i={single_source_shortest_paths:function(o,t,e){var n={},s={};s[t]=0;var c=i.PriorityQueue.make();c.push(t,0);for(var a,d,g,h,m,l,u,v,L;!c.empty();){a=c.pop(),d=a.value,h=a.cost,m=o[d]||{};for(g in m)m.hasOwnProperty(g)&&(l=m[g],u=h+l,v=s[g],L=typeof s[g]>"u",(L||v>u)&&(s[g]=u,c.push(g,u),n[g]=d))}if(typeof e<"u"&&typeof s[e]>"u"){var E=["Could not find a path from ",t," to ",e,"."].join("");throw new Error(E)}return n},extract_shortest_path_from_predecessor_list:function(o,t){for(var e=[],n=t;n;)e.push(n),o[n],n=o[n];return e.reverse(),e},find_path:function(o,t,e){var n=i.single_source_shortest_paths(o,t,e);return i.extract_shortest_path_from_predecessor_list(n,e)},PriorityQueue:{make:function(o){var t=i.PriorityQueue,e={},n;o=o||{};for(n in t)t.hasOwnProperty(n)&&(e[n]=t[n]);return e.queue=[],e.sorter=o.sorter||t.default_sorter,e},default_sorter:function(o,t){return o.cost-t.cost},push:function(o,t){var e={value:o,cost:t};this.queue.push(e),this.queue.sort(this.sorter)},pop:function(){return this.queue.shift()},empty:function(){return this.queue.length===0}}};r.exports=i})(Me)),Me.exports}var ut;function an(){return ut||(ut=1,(function(r){const i=J(),o=tn(),t=nn(),e=rn(),n=on(),s=Ct(),c=X(),a=sn();function d(E){return unescape(encodeURIComponent(E)).length}function g(E,R,P){const A=[];let Z;for(;(Z=E.exec(P))!==null;)A.push({data:Z[0],index:Z.index,mode:R,length:Z[0].length});return A}function h(E){const R=g(s.NUMERIC,i.NUMERIC,E),P=g(s.ALPHANUMERIC,i.ALPHANUMERIC,E);let A,Z;return c.isKanjiModeEnabled()?(A=g(s.BYTE,i.BYTE,E),Z=g(s.KANJI,i.KANJI,E)):(A=g(s.BYTE_KANJI,i.BYTE,E),Z=[]),R.concat(P,A,Z).sort(function(_,y){return _.index-y.index}).map(function(_){return{data:_.data,mode:_.mode,length:_.length}})}function m(E,R){switch(R){case i.NUMERIC:return o.getBitsLength(E);case i.ALPHANUMERIC:return t.getBitsLength(E);case i.KANJI:return n.getBitsLength(E);case i.BYTE:return e.getBitsLength(E)}}function l(E){return E.reduce(function(R,P){const A=R.length-1>=0?R[R.length-1]:null;return A&&A.mode===P.mode?(R[R.length-1].data+=P.data,R):(R.push(P),R)},[])}function u(E){const R=[];for(let P=0;P<E.length;P++){const A=E[P];switch(A.mode){case i.NUMERIC:R.push([A,{data:A.data,mode:i.ALPHANUMERIC,length:A.length},{data:A.data,mode:i.BYTE,length:A.length}]);break;case i.ALPHANUMERIC:R.push([A,{data:A.data,mode:i.BYTE,length:A.length}]);break;case i.KANJI:R.push([A,{data:A.data,mode:i.BYTE,length:d(A.data)}]);break;case i.BYTE:R.push([{data:A.data,mode:i.BYTE,length:d(A.data)}])}}return R}function v(E,R){const P={},A={start:{}};let Z=["start"];for(let I=0;I<E.length;I++){const _=E[I],y=[];for(let f=0;f<_.length;f++){const B=_[f],C=""+I+f;y.push(C),P[C]={node:B,lastCount:0},A[C]={};for(let b=0;b<Z.length;b++){const w=Z[b];P[w]&&P[w].node.mode===B.mode?(A[w][C]=m(P[w].lastCount+B.length,B.mode)-m(P[w].lastCount,B.mode),P[w].lastCount+=B.length):(P[w]&&(P[w].lastCount=B.length),A[w][C]=m(B.length,B.mode)+4+i.getCharCountIndicator(B.mode,R))}}Z=y}for(let I=0;I<Z.length;I++)A[Z[I]].end=0;return{map:A,table:P}}function L(E,R){let P;const A=i.getBestModeForData(E);if(P=i.from(R,A),P!==i.BYTE&&P.bit<A.bit)throw new Error('"'+E+'" cannot be encoded with mode '+i.toString(P)+`.
4
+ Suggested mode is: `+i.toString(A));switch(P===i.KANJI&&!c.isKanjiModeEnabled()&&(P=i.BYTE),P){case i.NUMERIC:return new o(E);case i.ALPHANUMERIC:return new t(E);case i.KANJI:return new n(E);case i.BYTE:return new e(E)}}r.fromArray=function(R){return R.reduce(function(P,A){return typeof A=="string"?P.push(L(A,null)):A.data&&P.push(L(A.data,A.mode)),P},[])},r.fromString=function(R,P){const A=h(R,c.isKanjiModeEnabled()),Z=u(A),I=v(Z,P),_=a.find_path(I.map,"start","end"),y=[];for(let f=1;f<_.length-1;f++)y.push(I.table[_[f]].node);return r.fromArray(l(y))},r.rawSplit=function(R){return r.fromArray(h(R,c.isKanjiModeEnabled()))}})(ve)),ve}var dt;function cn(){if(dt)return ge;dt=1;const r=X(),i=Le(),o=Xt(),t=Jt(),e=Yt(),n=Qt(),s=qt(),c=mt(),a=$t(),d=Ot(),g=en(),h=J(),m=an();function l(I,_){const y=I.size,f=n.getPositions(_);for(let B=0;B<f.length;B++){const C=f[B][0],b=f[B][1];for(let w=-1;w<=7;w++)if(!(C+w<=-1||y<=C+w))for(let S=-1;S<=7;S++)b+S<=-1||y<=b+S||(w>=0&&w<=6&&(S===0||S===6)||S>=0&&S<=6&&(w===0||w===6)||w>=2&&w<=4&&S>=2&&S<=4?I.set(C+w,b+S,!0,!0):I.set(C+w,b+S,!1,!0))}}function u(I){const _=I.size;for(let y=8;y<_-8;y++){const f=y%2===0;I.set(y,6,f,!0),I.set(6,y,f,!0)}}function v(I,_){const y=e.getPositions(_);for(let f=0;f<y.length;f++){const B=y[f][0],C=y[f][1];for(let b=-2;b<=2;b++)for(let w=-2;w<=2;w++)b===-2||b===2||w===-2||w===2||b===0&&w===0?I.set(B+b,C+w,!0,!0):I.set(B+b,C+w,!1,!0)}}function L(I,_){const y=I.size,f=d.getEncodedBits(_);let B,C,b;for(let w=0;w<18;w++)B=Math.floor(w/3),C=w%3+y-8-3,b=(f>>w&1)===1,I.set(B,C,b,!0),I.set(C,B,b,!0)}function E(I,_,y){const f=I.size,B=g.getEncodedBits(_,y);let C,b;for(C=0;C<15;C++)b=(B>>C&1)===1,C<6?I.set(C,8,b,!0):C<8?I.set(C+1,8,b,!0):I.set(f-15+C,8,b,!0),C<8?I.set(8,f-C-1,b,!0):C<9?I.set(8,15-C-1+1,b,!0):I.set(8,15-C-1,b,!0);I.set(f-8,8,1,!0)}function R(I,_){const y=I.size;let f=-1,B=y-1,C=7,b=0;for(let w=y-1;w>0;w-=2)for(w===6&&w--;;){for(let S=0;S<2;S++)if(!I.isReserved(B,w-S)){let H=!1;b<_.length&&(H=(_[b]>>>C&1)===1),I.set(B,w-S,H),C--,C===-1&&(b++,C=7)}if(B+=f,B<0||y<=B){B-=f,f=-f;break}}}function P(I,_,y){const f=new o;y.forEach(function(S){f.put(S.mode.bit,4),f.put(S.getLength(),h.getCharCountIndicator(S.mode,I)),S.write(f)});const B=r.getSymbolTotalCodewords(I),C=c.getTotalCodewordsCount(I,_),b=(B-C)*8;for(f.getLengthInBits()+4<=b&&f.put(0,4);f.getLengthInBits()%8!==0;)f.putBit(0);const w=(b-f.getLengthInBits())/8;for(let S=0;S<w;S++)f.put(S%2?17:236,8);return A(f,I,_)}function A(I,_,y){const f=r.getSymbolTotalCodewords(_),B=c.getTotalCodewordsCount(_,y),C=f-B,b=c.getBlocksCount(_,y),w=f%b,S=b-w,H=Math.floor(f/b),q=Math.floor(C/b),yt=q+1,Ze=H-q,_t=new a(Ze);let oe=0;const O=new Array(b),je=new Array(b);let se=0;const bt=new Uint8Array(I.buffer);for(let Y=0;Y<b;Y++){const ce=Y<S?q:yt;O[Y]=bt.slice(oe,oe+ce),je[Y]=_t.encode(O[Y]),oe+=ce,se=Math.max(se,ce)}const ae=new Uint8Array(f);let ke=0,U,V;for(U=0;U<se;U++)for(V=0;V<b;V++)U<O[V].length&&(ae[ke++]=O[V][U]);for(U=0;U<Ze;U++)for(V=0;V<b;V++)ae[ke++]=je[V][U];return ae}function Z(I,_,y,f){let B;if(Array.isArray(I))B=m.fromArray(I);else if(typeof I=="string"){let H=_;if(!H){const q=m.rawSplit(I);H=d.getBestVersionForData(q,y)}B=m.fromString(I,H||40)}else throw new Error("Invalid data");const C=d.getBestVersionForData(B,y);if(!C)throw new Error("The amount of data is too big to be stored in a QR Code");if(!_)_=C;else if(_<C)throw new Error(`
5
+ The chosen QR Code version cannot contain this amount of data.
6
+ Minimum version required to store current data is: `+C+`.
7
+ `);const b=P(_,y,B),w=r.getSymbolSize(_),S=new t(w);return l(S,_),u(S),v(S,_),E(S,y,0),_>=7&&L(S,_),R(S,b),isNaN(f)&&(f=s.getBestMask(S,E.bind(null,S,y))),s.applyMask(f,S),E(S,y,f),{modules:S,version:_,errorCorrectionLevel:y,maskPattern:f,segments:B}}return ge.create=function(_,y){if(typeof _>"u"||_==="")throw new Error("No input text");let f=i.M,B,C;return typeof y<"u"&&(f=i.from(y.errorCorrectionLevel,i.M),B=d.from(y.version),C=s.from(y.maskPattern),y.toSJISFunc&&r.setToSJISFunction(y.toSJISFunc)),Z(_,B,f,C)},ge}var Re={},Te={},gt;function wt(){return gt||(gt=1,(function(r){function i(o){if(typeof o=="number"&&(o=o.toString()),typeof o!="string")throw new Error("Color should be defined as hex string");let t=o.slice().replace("#","").split("");if(t.length<3||t.length===5||t.length>8)throw new Error("Invalid hex color: "+o);(t.length===3||t.length===4)&&(t=Array.prototype.concat.apply([],t.map(function(n){return[n,n]}))),t.length===6&&t.push("F","F");const e=parseInt(t.join(""),16);return{r:e>>24&255,g:e>>16&255,b:e>>8&255,a:e&255,hex:"#"+t.slice(0,6).join("")}}r.getOptions=function(t){t||(t={}),t.color||(t.color={});const e=typeof t.margin>"u"||t.margin===null||t.margin<0?4:t.margin,n=t.width&&t.width>=21?t.width:void 0,s=t.scale||4;return{width:n,scale:n?4:s,margin:e,color:{dark:i(t.color.dark||"#000000ff"),light:i(t.color.light||"#ffffffff")},type:t.type,rendererOpts:t.rendererOpts||{}}},r.getScale=function(t,e){return e.width&&e.width>=t+e.margin*2?e.width/(t+e.margin*2):e.scale},r.getImageWidth=function(t,e){const n=r.getScale(t,e);return Math.floor((t+e.margin*2)*n)},r.qrToImageData=function(t,e,n){const s=e.modules.size,c=e.modules.data,a=r.getScale(s,n),d=Math.floor((s+n.margin*2)*a),g=n.margin*a,h=[n.color.light,n.color.dark];for(let m=0;m<d;m++)for(let l=0;l<d;l++){let u=(m*d+l)*4,v=n.color.light;if(m>=g&&l>=g&&m<d-g&&l<d-g){const L=Math.floor((m-g)/a),E=Math.floor((l-g)/a);v=h[c[L*s+E]?1:0]}t[u++]=v.r,t[u++]=v.g,t[u++]=v.b,t[u]=v.a}}})(Te)),Te}var ft;function ln(){return ft||(ft=1,(function(r){const i=wt();function o(e,n,s){e.clearRect(0,0,n.width,n.height),n.style||(n.style={}),n.height=s,n.width=s,n.style.height=s+"px",n.style.width=s+"px"}function t(){try{return document.createElement("canvas")}catch{throw new Error("You need to specify a canvas element")}}r.render=function(n,s,c){let a=c,d=s;typeof a>"u"&&(!s||!s.getContext)&&(a=s,s=void 0),s||(d=t()),a=i.getOptions(a);const g=i.getImageWidth(n.modules.size,a),h=d.getContext("2d"),m=h.createImageData(g,g);return i.qrToImageData(m.data,n,a),o(h,d,g),h.putImageData(m,0,0),d},r.renderToDataURL=function(n,s,c){let a=c;typeof a>"u"&&(!s||!s.getContext)&&(a=s,s=void 0),a||(a={});const d=r.render(n,s,a),g=a.type||"image/png",h=a.rendererOpts||{};return d.toDataURL(g,h.quality)}})(Re)),Re}var De={},It;function un(){if(It)return De;It=1;const r=wt();function i(e,n){const s=e.a/255,c=n+'="'+e.hex+'"';return s<1?c+" "+n+'-opacity="'+s.toFixed(2).slice(1)+'"':c}function o(e,n,s){let c=e+n;return typeof s<"u"&&(c+=" "+s),c}function t(e,n,s){let c="",a=0,d=!1,g=0;for(let h=0;h<e.length;h++){const m=Math.floor(h%n),l=Math.floor(h/n);!m&&!d&&(d=!0),e[h]?(g++,h>0&&m>0&&e[h-1]||(c+=d?o("M",m+s,.5+l+s):o("m",a,0),a=0,d=!1),m+1<n&&e[h+1]||(c+=o("h",g),g=0)):a++}return c}return De.render=function(n,s,c){const a=r.getOptions(s),d=n.modules.size,g=n.modules.data,h=d+a.margin*2,m=a.color.light.a?"<path "+i(a.color.light,"fill")+' d="M0 0h'+h+"v"+h+'H0z"/>':"",l="<path "+i(a.color.dark,"stroke")+' d="'+t(g,d,a.margin)+'"/>',u='viewBox="0 0 '+h+" "+h+'"',L='<svg xmlns="http://www.w3.org/2000/svg" '+(a.width?'width="'+a.width+'" height="'+a.width+'" ':"")+u+' shape-rendering="crispEdges">'+m+l+`</svg>
8
+ `;return typeof c=="function"&&c(null,L),L},De}var ht;function dn(){if(ht)return Q;ht=1;const r=Ft(),i=cn(),o=ln(),t=un();function e(n,s,c,a,d){const g=[].slice.call(arguments,1),h=g.length,m=typeof g[h-1]=="function";if(!m&&!r())throw new Error("Callback required as last argument");if(m){if(h<2)throw new Error("Too few arguments provided");h===2?(d=c,c=s,s=a=void 0):h===3&&(s.getContext&&typeof d>"u"?(d=a,a=void 0):(d=a,a=c,c=s,s=void 0))}else{if(h<1)throw new Error("Too few arguments provided");return h===1?(c=s,s=a=void 0):h===2&&!s.getContext&&(a=c,c=s,s=void 0),new Promise(function(l,u){try{const v=i.create(c,a);l(n(v,s,a))}catch(v){u(v)}})}try{const l=i.create(c,a);d(null,n(l,s,a))}catch(l){d(l)}}return Q.create=i.create,Q.toCanvas=e.bind(null,o.render),Q.toDataURL=e.bind(null,o.renderToDataURL),Q.toString=e.bind(null,function(n,s,c){return t.render(n,c)}),Q}var gn=dn();const fn=Bt(gn),In={key:0,class:"loading-wrapper"},hn={key:1,class:"remote-access-wrapper"},mn={class:"hero-icon-wrapper"},pn={class:"hero-description"},Cn={class:"feature-grid"},wn={class:"feature-item"},yn={class:"feature-item"},_n={class:"feature-item"},bn={class:"feature-item"},An={class:"d-flex align-center justify-space-between w-100"},Bn={class:"status-text"},vn={class:"upgrade-description"},En={class:"remote-id-explanation"},Pn={class:"remote-id-display-wrapper"},Nn={class:"remote-id-boxes"},Sn={class:"remote-id-box-text"},Mn={class:"qr-code-section"},Rn={class:"qr-code-title"},Tn={class:"qr-code-description"},Dn={class:"qr-code-wrapper"},Ln=["src"],Zn={class:"usage-title"},jn={class:"steps-list"},kn={class:"step-item"},Gn={class:"step-content"},Un={class:"step-item"},Vn={class:"step-content"},Hn={class:"step-item"},Wn={class:"step-content"},zn={class:"diagram-section"},Fn={class:"diagram-title"},Xn=["src"],Jn={class:"specs-section"},Yn={class:"spec-item"},Qn={class:"spec-content"},qn={class:"spec-title"},Kn={class:"spec-description"},xn={class:"spec-item"},$n={class:"spec-content"},On={class:"spec-title"},ei={class:"spec-description"},ti={key:0},ni={key:1},ii={class:"spec-item"},ri={class:"spec-content"},oi={class:"spec-title"},si={class:"spec-description"},ai=vt({__name:"RemoteAccessSettings",setup(r){const{t:i}=Et(),o=ee(!0),t=ee(!1),e=ee(null);let n=null;const s=[8,5,5,8],c=Pt(()=>{const l=e.value?.remote_id||"",u=[];let v=0;for(const L of s)u.push(l.slice(v,v+L)),v+=L;return u});Nt(async()=>{await a(),n=setInterval(async()=>{await a(!0)},5e3)}),St(()=>{n&&(clearInterval(n),n=null)});const a=async(l=!1)=>{l||(o.value=!0);try{e.value=await Ge.getRemoteAccessInfo()}catch(u){console.error("Error loading remote access info:",u),l||K.error(i("settings.remote_access_error_loading"))}finally{l||(o.value=!1)}},d=async l=>{if(!(!e.value||l===null)){t.value=!0;try{e.value=await Ge.configureRemoteAccess(l),K.success(i(l?"settings.remote_access_enabled_success":"settings.remote_access_disabled_success"))}catch(u){console.error("Error toggling remote access:",u),K.error(i("settings.remote_access_error_toggle"))}finally{t.value=!1}}},g=async()=>{if(!e.value?.remote_id)return;const l=c.value.join("-");await Zt(l)?K.success(i("settings.remote_access_id_copied")):K.error(i("settings.remote_access_error_copy"))},h=ee(null),m=async l=>{if(!l){h.value=null;return}try{const u=`https://app.music-assistant.io/?remote_id=${l}`;h.value=await fn.toDataURL(u,{width:200,margin:2,color:{dark:"#000000",light:"#ffffff"}})}catch(u){console.error("Error generating QR code:",u),h.value=null}};return Mt(()=>e.value?.remote_id,l=>{l?m(l):h.value=null},{immediate:!0}),(l,u)=>(j(),z(At,null,{default:N(()=>[o.value?(j(),F("div",In,[M(Ue,{indeterminate:"",size:"64",color:"primary"})])):e.value?(j(),F("div",hn,[M(x,{class:"hero-card mb-6",elevation:"0",rounded:"lg"},{default:N(()=>[M(ne,{class:"hero-content"},{default:N(()=>[p("div",mn,[M(k,{size:"48",color:"primary"},{default:N(()=>[...u[0]||(u[0]=[D("mdi-cloud-lock",-1)])]),_:1})]),M(ie,{class:"hero-title"},{default:N(()=>[D(T(l.$t("settings.remote_access_title")),1)]),_:1}),p("p",pn,T(l.$t("settings.remote_access_explanation_intro")),1),p("div",Cn,[p("div",wn,[M(k,{size:"20",color:"primary"},{default:N(()=>[...u[1]||(u[1]=[D("mdi-check-circle",-1)])]),_:1}),p("span",null,T(l.$t("settings.remote_access_feature_webrtc")),1)]),p("div",yn,[M(k,{size:"20",color:"primary"},{default:N(()=>[...u[2]||(u[2]=[D("mdi-check-circle",-1)])]),_:1}),p("span",null,T(l.$t("settings.remote_access_feature_encrypted")),1)]),p("div",_n,[M(k,{size:"20",color:"primary"},{default:N(()=>[...u[3]||(u[3]=[D("mdi-check-circle",-1)])]),_:1}),p("span",null,T(l.$t("settings.remote_access_feature_no_port_forwarding")),1)]),p("div",bn,[M(k,{size:"20",color:"primary"},{default:N(()=>[...u[4]||(u[4]=[D("mdi-check-circle",-1)])]),_:1}),p("span",null,T(l.$t("settings.remote_access_explanation_ha_cloud")),1)])])]),_:1})]),_:1}),M(x,{class:"status-card mb-6",elevation:"0",rounded:"lg"},{default:N(()=>[M(ne,{class:"status-header"},{default:N(()=>[p("div",An,[p("div",null,[M(ie,{class:"status-title"},{default:N(()=>[D(T(l.$t("settings.remote_access_status")),1)]),_:1}),p("div",Bn,T(e.value.enabled?l.$t("settings.remote_access_enabled"):l.$t("settings.remote_access_disabled")),1)]),M(Gt,{"model-value":e.value.enabled,loading:t.value,disabled:t.value,color:"primary","hide-details":"",class:"status-switch","onUpdate:modelValue":d},null,8,["model-value","loading","disabled"])])]),_:1}),e.value.enabled?(j(),z(Ve,{key:0,class:"status-badges"},{default:N(()=>[M(He,{color:e.value.connected?"success":"warning",size:"default",variant:"flat",class:"status-chip"},{default:N(()=>[D(T(e.value.connected?l.$t("settings.remote_access_connected"):l.$t("settings.remote_access_connecting")),1)]),_:1},8,["color"]),M(He,{color:e.value.using_ha_cloud?"success":"default",size:"default",variant:"outlined",class:"status-chip"},{default:N(()=>[D(T(e.value.using_ha_cloud?l.$t("settings.remote_access_mode_optimized"):l.$t("settings.remote_access_mode_basic")),1)]),_:1},8,["color"])]),_:1})):te("",!0)]),_:1}),e.value.enabled&&!e.value.using_ha_cloud?(j(),z(x,{key:0,class:"upgrade-card mb-6",elevation:"0",rounded:"lg"},{default:N(()=>[M(ne,{class:"upgrade-content"},{default:N(()=>[M(k,{size:"60",color:"primary",class:"upgrade-icon"},{default:N(()=>[...u[5]||(u[5]=[D(" mdi-cloud-alert ",-1)])]),_:1}),M(ie,{class:"upgrade-title"},{default:N(()=>[D(T(l.$t("settings.remote_access_mode_basic")),1)]),_:1}),p("p",vn,T(l.$t("settings.remote_access_mode_basic_description")),1),M(le,{color:"primary",variant:"elevated",size:"large",class:"upgrade-button",href:"https://www.nabucasa.com",target:"_blank"},{default:N(()=>[D(T(l.$t("settings.remote_access_upgrade_to_optimized"))+" ",1),M(k,{end:""},{default:N(()=>[...u[6]||(u[6]=[D("mdi-open-in-new",-1)])]),_:1})]),_:1})]),_:1})]),_:1})):te("",!0),e.value.enabled&&e.value.remote_id?(j(),z(x,{key:1,class:"remote-id-card mb-6",elevation:"0",rounded:"lg"},{default:N(()=>[M(ne,{class:"remote-id-header"},{default:N(()=>[M(k,{size:"28",color:"primary",class:"mr-2"},{default:N(()=>[...u[7]||(u[7]=[D("mdi-identifier",-1)])]),_:1}),M(ie,{class:"remote-id-title"},{default:N(()=>[D(T(l.$t("settings.remote_access_your_id")),1)]),_:1})]),_:1}),M(Ve,{class:"remote-id-content"},{default:N(()=>[p("p",En,T(l.$t("settings.remote_access_id_explanation")),1),p("div",Pn,[p("div",Nn,[(j(!0),F(Rt,null,Tt(c.value,(v,L)=>(j(),F("div",{key:L,class:jt(["remote-id-box",`remote-id-box-${L}`])},[p("code",Sn,T(v),1)],2))),128))]),M(le,{icon:"mdi-content-copy",variant:"text",size:"small",color:"primary",class:"copy-button",title:l.$t("settings.remote_access_copy_id"),onClick:g},null,8,["title"])]),p("div",Mn,[p("div",Rn,[M(k,{size:"20",color:"primary",class:"mr-2"},{default:N(()=>[...u[8]||(u[8]=[D("mdi-qrcode",-1)])]),_:1}),D(" "+T(l.$t("settings.remote_access_qr_code")),1)]),p("p",Tn,T(l.$t("settings.remote_access_qr_code_description")),1),p("div",Dn,[h.value?(j(),F("img",{key:0,src:h.value,alt:"Remote ID QR Code",class:"qr-code-image"},null,8,Ln)):(j(),z(Ue,{key:1,indeterminate:"",size:"32",color:"primary"}))])]),p("div",null,[p("div",Zn,T(l.$t("settings.remote_access_how_to_use")),1),p("div",jn,[p("div",kn,[u[11]||(u[11]=p("div",{class:"step-number"},"1",-1)),p("div",Gn,[D(T(l.$t("settings.remote_access_step_1"))+" ",1),M(le,{color:"primary",variant:"text",size:"small",href:"https://app.music-assistant.io",target:"_blank",class:"step-link"},{default:N(()=>[u[10]||(u[10]=D(" app.music-assistant.io ",-1)),M(k,{end:"",size:"small"},{default:N(()=>[...u[9]||(u[9]=[D("mdi-open-in-new",-1)])]),_:1})]),_:1})])]),p("div",Un,[u[12]||(u[12]=p("div",{class:"step-number"},"2",-1)),p("div",Vn,T(l.$t("settings.remote_access_step_2")),1)]),p("div",Hn,[u[13]||(u[13]=p("div",{class:"step-number"},"3",-1)),p("div",Wn,T(l.$t("settings.remote_access_step_3")),1)])])])]),_:1})]),_:1})):te("",!0),e.value.enabled?(j(),z(Ut,{key:2,class:"technical-panels"},{default:N(()=>[M(Wt,null,{default:N(()=>[M(Vt,null,{default:N(()=>[M(k,{start:""},{default:N(()=>[...u[14]||(u[14]=[D("mdi-information-outline",-1)])]),_:1}),D(" "+T(l.$t("settings.remote_access_technical_details")),1)]),_:1}),M(Ht,null,{default:N(()=>[p("div",zn,[p("div",Fn,T(l.$t("settings.remote_access_connection_flow")),1),M(x,{variant:"outlined",class:"diagram-card"},{default:N(()=>[p("img",{src:Dt(zt),alt:"Remote Access Connection Flow",class:"diagram-image"},null,8,Xn)]),_:1})]),p("div",Jn,[p("div",Yn,[M(ue,{size:"48",color:"primary",variant:"tonal",class:"spec-icon"},{default:N(()=>[M(k,null,{default:N(()=>[...u[15]||(u[15]=[D("mdi-access-point-network",-1)])]),_:1})]),_:1}),p("div",Qn,[p("div",qn,T(l.$t("settings.remote_access_signaling_server")),1),p("div",Kn,T(l.$t("settings.remote_access_signaling_server_description")),1)])]),p("div",xn,[M(ue,{size:"48",color:"primary",variant:"tonal",class:"spec-icon"},{default:N(()=>[M(k,null,{default:N(()=>[...u[16]||(u[16]=[D("mdi-lan-connect",-1)])]),_:1})]),_:1}),p("div",$n,[p("div",On,T(l.$t("settings.remote_access_protocol")),1),p("div",ei,[e.value.using_ha_cloud?(j(),F("span",ti,T(l.$t("settings.remote_access_protocol_optimized")),1)):(j(),F("span",ni,T(l.$t("settings.remote_access_protocol_basic")),1))])])]),p("div",ii,[M(ue,{size:"48",color:"primary",variant:"tonal",class:"spec-icon"},{default:N(()=>[M(k,null,{default:N(()=>[...u[17]||(u[17]=[D("mdi-lock",-1)])]),_:1})]),_:1}),p("div",ri,[p("div",oi,T(l.$t("settings.remote_access_encryption")),1),p("div",si,T(l.$t("settings.remote_access_encryption_description")),1)])])])]),_:1})]),_:1})]),_:1})):te("",!0)])):(j(),z(Lt,{key:2,type:"error",variant:"tonal",class:"error-alert"},{default:N(()=>[D(T(l.$t("settings.remote_access_error_loading")),1)]),_:1}))]),_:1}))}}),Ii=kt(ai,[["__scopeId","data-v-731e49cc"]]);export{Ii as default};
@@ -0,0 +1 @@
1
+ import{C as A}from"./Container-C7yRkeCv.js";import{I}from"./ItemsListing-Cnfrbqt8.js";import{T as L}from"./Toolbar-C66D0zTJ.js";import{W as d}from"./WidgetRow-BRke-iAc.js";import{u as V}from"./userPreferences-DWdlmlmR.js";import{az as C,J as p,L as y,a3 as B,b7 as a,a4 as O,aP as f,aG as i,o as m,aE as r,aH as b,aF as n,aK as c,c8 as P,c9 as R,ah as K,b5 as U,bd as o,ca as D,c7 as F,bc as E}from"./index-D2rF_80D.js";import{S as M}from"./search-Dxc3u4CV.js";import"./index-kQIztB-E.js";import"./Button-CrfR8Gdt.js";import"./ListItem-CU9QYmiw.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-cf4_7ViH.js";import"./MediaItemThumb-A-03axGx.js";import"./VCheckbox-DccbdgFZ.js";import"./VCheckboxBtn-Dik76WyM.js";import"./VSelectionControl-BHjDOTFl.js";import"./PanelviewItemCompact-BWonx8dk.js";import"./VInfiniteScroll-CfzetGUD.js";import"./VVirtualScroll-CG155sfU.js";import"./VToolbar-Db4qfa2C.js";import"./createLucideIcon-Bb8oGlVw.js";const G={key:1},H={key:2},ne=C({__name:"Search",setup(N){const v=p(!1),t=p(),s=p(!1),h=p(),{getPreference:S,setPreference:k}=V();y(()=>a.globalSearchTerm,()=>{clearTimeout(h.value),h.value=setTimeout(()=>{g(a.globalSearchTerm,a.globalSearchType)},1e3)},{immediate:!0}),y(()=>a.globalSearchType,()=>{g(a.globalSearchTerm,a.globalSearchType)});const g=async function(e,u){s.value=!0,k("globalSearch",e||"");const l=a.globalSearchType?50:8,$=u?[u]:void 0;e?t.value=await E.search(e,$,l):t.value=void 0,s.value=!1};B(()=>{if(!a.globalSearchTerm){const e=S("globalSearch").value;e&&e!=="null"&&(a.globalSearchTerm=e)}});const w=function(e){e.ctrlKey||e.altKey||e.metaKey||(!v.value&&e.key=="Backspace"&&a.globalSearchTerm?a.globalSearchTerm=a.globalSearchTerm.slice(0,-1):!v.value&&e.key.length==1&&(a.globalSearchTerm+=e.key))};document.addEventListener("keyup",w),O(()=>{document.removeEventListener("keyup",w)});const T=function(e){return t.value?e==o.TRACK?t.value.tracks:e==o.ARTIST?t.value.artists:e==o.ALBUM?t.value.albums:e==o.PLAYLIST?t.value.playlists:e==o.PODCAST?t.value.podcasts:e==o.AUDIOBOOK?t.value.audiobooks:e==o.RADIO?t.value.radio:[]:[]};return(e,u)=>(i(),f("section",null,[m(L,{icon:r(M),title:e.$t("global_search")},null,8,["icon","title"]),m(A,{variant:"default"},{default:b(()=>[m(P,{id:"searchInput",modelValue:r(a).globalSearchTerm,"onUpdate:modelValue":u[0]||(u[0]=l=>r(a).globalSearchTerm=l),clearable:"","prepend-inner-icon":"mdi-magnify",label:e.$t("type_to_search"),"hide-details":"",variant:"outlined",onFocus:u[1]||(u[1]=l=>v.value=!0),onBlur:u[2]||(u[2]=l=>v.value=!1)},null,8,["modelValue","label"]),m(R,{modelValue:r(a).globalSearchType,"onUpdate:modelValue":u[3]||(u[3]=l=>r(a).globalSearchType=l),style:{"margin-top":"10px","margin-left":"10px"}},{default:b(()=>[(i(!0),f(K,null,U([void 0,r(o).TRACK,r(o).ARTIST,r(o).ALBUM,r(o).PLAYLIST,r(o).PODCAST,r(o).AUDIOBOOK,r(o).RADIO],l=>(i(),n(F,{key:l,text:e.$t(l?l+"s":"searchtype_all"),value:l},null,8,["text","value"]))),128))]),_:1},8,["modelValue"]),s.value?(i(),n(D,{key:0,color:"accent",height:"4",indeterminate:"",rounded:"",style:{"margin-top":"15px"}})):c("",!0),r(a).globalSearchType?s.value?c("",!0):(i(),f("div",H,[m(I,{itemtype:`${r(a).globalSearchType}s`,"show-provider":!0,"show-favorites-only-filter":!1,"show-select-button":!1,"show-refresh-button":!1,"load-items":async l=>T(r(a).globalSearchType),title:e.$t(`${r(a).globalSearchType}s`),"allow-key-hooks":!1,"show-search-button":!1,"infinite-scroll":!0,"sort-keys":[],style:{padding:"0"}},null,8,["itemtype","load-items","title"])])):(i(),f("div",G,[t.value&&!s.value?(i(),n(d,{key:0,"widget-row":{title:e.$t("tracks"),icon:"mdi-file-music",items:t.value.tracks},"show-provider-on-cover":!0},null,8,["widget-row"])):c("",!0),t.value&&!s.value?(i(),n(d,{key:1,"widget-row":{title:e.$t("artists"),icon:"mdi-account-music",items:t.value.artists},"show-provider-on-cover":!0},null,8,["widget-row"])):c("",!0),t.value&&!s.value?(i(),n(d,{key:2,"widget-row":{title:e.$t("albums"),icon:"mdi-album",items:t.value.albums},"show-provider-on-cover":!0},null,8,["widget-row"])):c("",!0),t.value&&!s.value?(i(),n(d,{key:3,"widget-row":{title:e.$t("playlists"),icon:"mdi-playlist-music",items:t.value.playlists},"show-provider-on-cover":!0},null,8,["widget-row"])):c("",!0),t.value&&!s.value?(i(),n(d,{key:4,"widget-row":{title:e.$t("podcasts"),icon:"mdi-podcast",items:t.value.podcasts},"show-provider-on-cover":!0},null,8,["widget-row"])):c("",!0),t.value&&!s.value?(i(),n(d,{key:5,"widget-row":{title:e.$t("audiobooks"),icon:"mdi-book-play-outline",items:t.value.audiobooks},"show-provider-on-cover":!0},null,8,["widget-row"])):c("",!0),t.value&&!s.value?(i(),n(d,{key:6,"widget-row":{title:e.$t("radios"),icon:"mdi-radio",items:t.value.radio},"show-provider-on-cover":!0},null,8,["widget-row"])):c("",!0)]))]),_:1})]))}});export{ne as default};
@@ -0,0 +1,4 @@
1
+ import{C as I}from"./Container-C7yRkeCv.js";import{az as B,J as r,i as y,L as E,a3 as R,ax as S,aF as z,aG as v,aH as n,o as a,bF as F,E as f,cn as N,M as V,aV as b,aW as i,bi as j,cw as D,aP as _,aK as x,by as H,bp as M,cc as O,bg as P,bc as C,R as A,_ as G}from"./index-D2rF_80D.js";import{V as J}from"./VSwitch-DnBzHYGj.js";import"./index-kQIztB-E.js";import"./VSelectionControl-BHjDOTFl.js";const K={class:"d-flex flex-column flex-sm-row align-start align-sm-center ga-2 w-100"},W={class:"d-flex flex-wrap ga-2"},q={key:0,class:"pa-8 text-center"},Q={class:"mt-4"},X={key:1,class:"pa-8 text-center"},Y={class:"text-error"},Z={key:2,class:"pa-4 text-center"},ee={class:"log-content"},h=150,te=B({__name:"ServerLogs",setup(ae){const c=r(""),m=r(!0),w=r(!1),d=r(""),p=r(!0),u=r(null);let s=null;const k=y(()=>{const e=c.value.split(`
2
+ `);return e.length>h?e.slice(-h).join(`
3
+ `):c.value}),L=y(()=>c.value.split(`
4
+ `).length>h),T=()=>{u.value&&A(()=>{u.value&&(u.value.scrollTop=u.value.scrollHeight)})},g=async(e=!1)=>{try{e?w.value=!0:m.value=!0,d.value="";const t=await fetch(`${C.baseUrl}/music-assistant.log`);if(!t.ok)throw new Error(`Failed to fetch logs: ${t.statusText}`);const o=await t.text(),l=c.value;c.value=o,(!e||o!==l)&&setTimeout(()=>T(),100)}catch(t){d.value=t.message||"Failed to load server logs",console.error("Error loading logs:",t)}finally{m.value=!1,w.value=!1}},U=()=>{g(!0)},$=async()=>{try{const t=await(await fetch(`${C.baseUrl}/music-assistant.log`)).blob(),o=window.URL.createObjectURL(t),l=document.createElement("a");l.href=o,l.download="music-assistant.log",document.body.appendChild(l),l.click(),document.body.removeChild(l),window.URL.revokeObjectURL(o)}catch(e){console.error("Error downloading log:",e)}};return E(p,e=>{e?s=setInterval(()=>{g(!0)},5e3):s&&(clearInterval(s),s=null)}),R(async()=>{await g(!1),p.value&&(s=setInterval(()=>{g(!0)},5e3))}),S(()=>{s&&clearInterval(s)}),(e,t)=>(v(),z(I,null,{default:n(()=>[a(P,{class:"mb-4",elevation:"0",variant:"flat"},{default:n(()=>[a(F,{class:"text-subtitle-1 font-weight-bold py-3"},{default:n(()=>[f("div",K,[a(J,{modelValue:p.value,"onUpdate:modelValue":t[0]||(t[0]=o=>p.value=o),color:"primary",density:"compact","hide-details":"",label:e.$t("settings.auto_refresh_log")},null,8,["modelValue","label"]),a(N,{class:"d-none d-sm-block"}),f("div",W,[a(V,{color:"primary",variant:"text",loading:w.value,"prepend-icon":"mdi-refresh",size:"small",onClick:U},{default:n(()=>[b(i(e.$t("settings.reload")),1)]),_:1},8,["loading"]),a(V,{color:"primary",variant:"elevated","prepend-icon":"mdi-download",size:"small",onClick:$},{default:n(()=>[b(i(e.$t("settings.download_log")),1)]),_:1})])])]),_:1}),a(j),a(D,{class:"pa-0"},{default:n(()=>[m.value?(v(),_("div",q,[a(H,{indeterminate:"",color:"primary"}),f("div",Q,i(e.$t("loading")),1)])):d.value?(v(),_("div",X,[a(M,{icon:"mdi-alert-circle",color:"error",size:"48",class:"mb-4"}),f("div",Y,i(d.value),1)])):L.value?(v(),_("div",Z,[a(O,{type:"info",variant:"tonal"},{default:n(()=>[b(i(e.$t("settings.log_truncated",[h])),1)]),_:1})])):x("",!0),!m.value&&!d.value?(v(),_("div",{key:3,ref_key:"logContainer",ref:u,class:"log-container"},[f("pre",ee,i(k.value),1)],512)):x("",!0)]),_:1})]),_:1})]),_:1}))}}),ie=G(te,[["__scopeId","data-v-30a4366c"]]);export{ie as default};
@@ -0,0 +1 @@
1
+ import{C as Z}from"./Container-C7yRkeCv.js";import{T as ee}from"./Toolbar-C66D0zTJ.js";import{u as te}from"./userPreferences-DWdlmlmR.js";import{g as R,p as O,n as x,E as B,q as L,r as T,C as N,cV as se,i as p,cq as ie,ao as re,o as n,ae as U,x as Y,cW as ae,av as ne,cs as oe,c as le,d as de,f as ue,m as ce,t as V,z as me,B as ve,cX as ge,bp as D,an as pe,aw as fe,ah as G,az as be,b8 as ye,J as A,ba as _e,L as W,bW as ke,bc as c,aP as j,aG as g,aF as _,aH as u,aK as S,aE as y,M as I,cY as he,bi as Ce,bj as we,b5 as Ve,bg as Pe,aY as Se,bo as Be,bk as Me,ci as Ie,aV as E,aW as F,cj as De,b_ as Re,S as q,_ as Oe}from"./index-D2rF_80D.js";import{M as xe}from"./index-kQIztB-E.js";import{S as Le}from"./settings-Cw59R2QP.js";import"./VToolbar-Db4qfa2C.js";import"./createLucideIcon-Bb8oGlVw.js";const Te=O({divider:[Number,String],...N()},"VBreadcrumbsDivider"),Ne=R()({name:"VBreadcrumbsDivider",props:Te(),setup(t,o){let{slots:s}=o;return x(()=>B("li",{"aria-hidden":"true",class:T(["v-breadcrumbs-divider",t.class]),style:L(t.style)},[s?.default?.()??t.divider])),{}}}),$e=O({active:Boolean,activeClass:String,activeColor:String,color:String,disabled:Boolean,title:String,...N(),...ne(oe(),["width","maxWidth"]),...ae(),...Y({tag:"li"})},"VBreadcrumbsItem"),ze=R()({name:"VBreadcrumbsItem",props:$e(),setup(t,o){let{slots:s,attrs:k}=o;const m=se(t,k),l=p(()=>t.active||m.isActive?.value),{dimensionStyles:h}=ie(t),{textColorClasses:C,textColorStyles:d}=re(()=>l.value?t.activeColor:t.color);return x(()=>n(t.tag,{class:T(["v-breadcrumbs-item",{"v-breadcrumbs-item--active":l.value,"v-breadcrumbs-item--disabled":t.disabled,[`${t.activeClass}`]:l.value&&t.activeClass},C.value,t.class]),style:L([d.value,h.value,t.style]),"aria-current":l.value?"page":void 0},{default:()=>[m.isLink.value?B("a",U({class:"v-breadcrumbs-item--link",onClick:m.navigate},m.linkProps),[s.default?.()??t.title]):s.default?.()??t.title]})),{}}}),Ae=O({activeClass:String,activeColor:String,bgColor:String,color:String,disabled:Boolean,divider:{type:String,default:"/"},icon:ge,items:{type:Array,default:()=>[]},itemProps:Boolean,...N(),...ve(),...me(),...Y({tag:"ul"})},"VBreadcrumbs"),We=R()({name:"VBreadcrumbs",props:Ae(),setup(t,o){let{slots:s}=o;const{backgroundColorClasses:k,backgroundColorStyles:m}=le(()=>t.bgColor),{densityClasses:l}=de(t),{roundedClasses:h}=ue(t);ce({VBreadcrumbsDivider:{divider:V(()=>t.divider)},VBreadcrumbsItem:{activeClass:V(()=>t.activeClass),activeColor:V(()=>t.activeColor),color:V(()=>t.color),disabled:V(()=>t.disabled)}});const C=p(()=>t.items.map(d=>typeof d=="string"?{item:{title:d},raw:d}:{item:d,raw:d}));return x(()=>{const d=!!(s.prepend||t.icon);return n(t.tag,{class:T(["v-breadcrumbs",k.value,l.value,h.value,t.class]),style:L([m.value,t.style])},{default:()=>[d&&B("li",{key:"prepend",class:"v-breadcrumbs__prepend"},[s.prepend?n(pe,{key:"prepend-defaults",disabled:!t.icon,defaults:{VIcon:{icon:t.icon,start:!0}}},s.prepend):n(D,{key:"prepend-icon",start:!0,icon:t.icon},null)]),C.value.map((f,v,P)=>{let{item:b,raw:w}=f;return B(G,null,[s.item?.({item:b,index:v})??n(ze,U({key:v,disabled:v>=P.length-1},typeof b=="string"?{title:b}:b,t.itemProps&&fe(w)?w:{}),{default:s.title?()=>s.title?.({item:b,index:v}):void 0}),v<P.length-1&&n(Ne,null,{default:s.divider?()=>s.divider?.({item:w,index:v}):void 0})])}),s.default?.()]})}),{}}}),je=be({__name:"Settings",setup(t){const o=_e(),{t:s}=ye(),{getPreference:k,setPreference:m}=te(),l=A("list"),h=p(()=>{const e=o.currentRoute.value.name?.toString()||"";return e.includes("players")||e==="addgroup"}),C=k("settings.players.viewMode","list");W(()=>C.value,e=>{h.value&&e&&(e==="list"||e==="card")&&(l.value=e)},{immediate:!0});const d=function(){l.value=l.value==="list"?"card":"list",m("settings.players.viewMode",l.value)};q("playersViewMode",{viewMode:l,toggleViewMode:d});const f=A("list"),v=p(()=>(o.currentRoute.value.name?.toString()||"").includes("providers")),P=k("settings.providers.viewMode","list");W(()=>P.value,e=>{v.value&&e&&(e==="list"||e==="card")&&(f.value=e)},{immediate:!0});const b=function(){f.value=f.value==="list"?"card":"list",m("settings.providers.viewMode",f.value)};q("providersViewMode",{viewMode:f,toggleViewMode:b});const w=[{name:"profile",label:"auth.profile",description:"settings.profile_description",icon:"mdi-account-cog",color:"indigo",route:{name:"profile"},adminOnly:!1},{name:"providers",label:"settings.providers",description:"settings.providers_description",icon:"mdi-monitor-dashboard",color:"blue",route:{name:"providersettings"},adminOnly:!0},{name:"players",label:"settings.players",description:"settings.players_description",icon:"mdi-speaker-multiple",color:"green",route:{name:"playersettings"},adminOnly:!0},{name:"system",label:"settings.system",description:"settings.system_description",icon:"mdi-server",color:"purple",route:{name:"systemsettings"},adminOnly:!0},{name:"remote_access",label:"settings.remote_access",description:"settings.remote_access_description",icon:"mdi-cloud-lock",color:"deep-purple",route:{name:"remoteaccesssettings"},adminOnly:!0},{name:"frontend",label:"settings.frontend",description:"settings.frontend_description",icon:"mdi-palette",color:"orange",route:{name:"frontendsettings"},adminOnly:!1},{name:"users",label:"auth.user_management",description:"settings.users_description",icon:"mdi-account-multiple",color:"teal",route:{name:"usersettings"},adminOnly:!0},{name:"about",label:"settings.about",description:"settings.about_description",icon:"mdi-information-outline",color:"grey-darken-1",route:{name:"aboutsettings"},adminOnly:!1}],H=p(()=>{const e=ke.isAdmin();return w.filter(a=>!a.adminOnly||e)}),$=p(()=>o.currentRoute.value.name==="settings"),J=p(()=>{const e=o.currentRoute.value.name?.toString()||"";return e==="profile"?"profile":e.includes("player")||e==="addgroup"?"players":e.includes("system")||e.includes("core")||e.includes("serverlog")?"system":e.includes("frontend")?"frontend":e.includes("remoteaccess")?"remote_access":e.includes("user")?"users":e.includes("about")?"about":"providers"}),K=e=>{const a=c.getProvider(e);if(a)return a.name;const i=e.split("--")[0];return c.providerManifests[i]?.name||e},X=p(()=>{const e=o.currentRoute.value,a=e.name?.toString()||"",i=[{title:s("settings.settings"),disabled:!1,href:"#",to:{name:"settings"}}];if(!$.value){const r=J.value;r==="profile"?i.push({title:s("auth.profile"),disabled:a==="profile",to:{name:"profile"}}):r==="players"?i.push({title:s("settings.players"),disabled:a==="playersettings",to:{name:"playersettings"}}):r==="system"?i.push({title:s("settings.system"),disabled:a==="systemsettings",to:{name:"systemsettings"}}):r==="remote_access"?i.push({title:s("settings.remote_access"),disabled:a==="remoteaccesssettings",to:{name:"remoteaccesssettings"}}):r==="frontend"?i.push({title:s("settings.frontend"),disabled:a==="frontendsettings",to:{name:"frontendsettings"}}):r==="users"?i.push({title:s("settings.users"),disabled:a==="usersettings",to:{name:"usersettings"}}):r==="providers"?i.push({title:s("settings.providers"),disabled:a==="providersettings",to:{name:"providersettings"}}):r==="about"&&i.push({title:s("settings.about"),disabled:a==="aboutsettings",to:{name:"aboutsettings"}})}return xe(a).with("addproviderdetails",()=>{i.push({title:s("settings.setup_provider",[e.params.domain||""]),disabled:!0})}).with("editprovider",()=>{i.push({title:K(e.params.instanceId),disabled:!0})}).with("addgroup",()=>{i.push({title:s("settings.add_group_player"),disabled:!0})}).with("editplayer",()=>{i.push({title:s("settings.player_settings"),disabled:!0})}).with("editplayerdsp",()=>{i.push({title:"DSP",disabled:!0})}).with("editcore",()=>{const r=e.params.domain,M=s(`settings.core_module.${r}.name`),Q=M!==`settings.core_module.${r}.name`?M:c.providerManifests[r]?.name||r;i.push({title:Q,disabled:!0})}).with("serverlogs",()=>{i.push({title:s("settings.server_logging"),disabled:!0})}).otherwise(()=>{}),i}),z=p(()=>{const e=o.currentRoute.value,a=e.name?.toString()||"";if(a==="editcore"){const i=e.params.domain;if(i&&c.providerManifests[i])return c.providerManifests[i].documentation||null}else if(a==="editprovider"){const i=e.params.instanceId;if(i){const r=c.getProvider(i);if(r&&c.providerManifests[r.domain])return c.providerManifests[r.domain].documentation||null}}else if(a==="addproviderdetails"){const i=e.params.domain;if(i&&c.providerManifests[i])return c.providerManifests[i].documentation||null}return null});return(e,a)=>{const i=Be("router-view");return g(),j("div",null,[n(ee,{icon:y(Le),"show-loading":!0},{title:u(()=>[n(We,{items:X.value,class:"pa-0"},null,8,["items"])]),append:u(()=>[h.value?(g(),_(I,{key:0,icon:l.value==="list"?"mdi-view-list":"mdi-grid",variant:"text",title:y(s)("tooltip.toggle_view_mode"),onClick:a[0]||(a[0]=r=>d())},null,8,["icon","title"])):S("",!0),v.value?(g(),_(I,{key:1,icon:f.value==="list"?"mdi-view-list":"mdi-grid",variant:"text",title:y(s)("tooltip.toggle_view_mode"),onClick:a[1]||(a[1]=r=>b())},null,8,["icon","title"])):S("",!0),z.value?(g(),_(I,{key:2,icon:"mdi-help-circle",variant:"text",title:y(s)("settings.view_documentation"),onClick:a[2]||(a[2]=r=>y(he)(z.value))},null,8,["title"])):S("",!0)]),_:1},8,["icon"]),n(Ce),$.value?(g(),_(Z,{key:0,variant:"comfortable",class:"settings-overview"},{default:u(()=>[n(Pe,{class:"settings-main-card"},{default:u(()=>[n(we,{class:"settings-list"},{default:u(()=>[(g(!0),j(G,null,Ve(H.value,r=>(g(),_(Me,{key:r.name,ripple:!0,class:"settings-list-item",onClick:M=>y(o).push(r.route)},{prepend:u(()=>[n(Re,{color:r.color,size:"48"},{default:u(()=>[n(D,{icon:r.icon,size:"24",color:"white"},null,8,["icon"])]),_:2},1032,["color"])]),append:u(()=>[n(D,{icon:"mdi-chevron-right"})]),default:u(()=>[n(Ie,{class:"text-h6"},{default:u(()=>[E(F(y(s)(r.label)),1)]),_:2},1024),n(De,null,{default:u(()=>[E(F(y(s)(r.description)),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1})]),_:1})):(g(),_(i,{key:1},{default:u(({Component:r})=>[r?(g(),_(Se(r),{key:0})):S("",!0)]),_:1}))])}}}),Ke=Oe(je,[["__scopeId","data-v-3ce908d5"]]);export{Ke as default};
@@ -1 +1 @@
1
- .v-breadcrumbs{display:flex;align-items:center;line-height:1.6;padding:16px 12px}.v-breadcrumbs--rounded{border-radius:4px}.v-breadcrumbs--density-default{padding-top:16px;padding-bottom:16px}.v-breadcrumbs--density-comfortable{padding-top:12px;padding-bottom:12px}.v-breadcrumbs--density-compact{padding-top:8px;padding-bottom:8px}.v-breadcrumbs__prepend{align-items:center;display:inline-flex}.v-breadcrumbs-item{align-items:center;color:inherit;display:inline-flex;padding:0 4px;text-decoration:none;vertical-align:middle}.v-breadcrumbs-item--disabled{opacity:var(--v-disabled-opacity);pointer-events:none}.v-breadcrumbs-item--link{color:inherit;text-decoration:none}.v-breadcrumbs-item--link:hover{text-decoration:underline}.v-breadcrumbs-item .v-icon{font-size:1rem;margin-inline:-4px 2px}.v-breadcrumbs-divider{display:inline-block;padding:0 8px;vertical-align:middle}.settings-overview[data-v-6879739a]{padding:24px;max-width:800px;margin:0 auto}.settings-main-card[data-v-6879739a]{overflow:hidden}.settings-list[data-v-6879739a]{padding:0}.settings-list-item[data-v-6879739a]{cursor:pointer;padding:20px 24px;min-height:80px;border-bottom:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.settings-list-item[data-v-6879739a]:last-child{border-bottom:none}.settings-list-item[data-v-6879739a]:hover{background-color:rgba(var(--v-theme-on-surface),.05)}.settings-list-item[data-v-6879739a] .v-list-item__prepend{margin-right:16px}.v-avatar[data-v-6879739a]{box-shadow:0 2px 8px #00000026}@media (max-width: 600px){.settings-list-item[data-v-6879739a]{padding:12px 16px;min-height:64px}.settings-list-item[data-v-6879739a] .v-list-item__prepend{margin-right:12px}.settings-list-item[data-v-6879739a] .v-avatar{width:40px!important;height:40px!important}.settings-list-item[data-v-6879739a] .v-list-item-title{font-size:1rem!important;line-height:1.3}.settings-list-item[data-v-6879739a] .v-list-item-subtitle{font-size:.813rem!important;line-height:1.3}}
1
+ .v-breadcrumbs{display:flex;align-items:center;line-height:1.6;padding:16px 12px}.v-breadcrumbs--rounded{border-radius:4px}.v-breadcrumbs--density-default{padding-top:16px;padding-bottom:16px}.v-breadcrumbs--density-comfortable{padding-top:12px;padding-bottom:12px}.v-breadcrumbs--density-compact{padding-top:8px;padding-bottom:8px}.v-breadcrumbs__prepend{align-items:center;display:inline-flex}.v-breadcrumbs-item{align-items:center;color:inherit;display:inline-flex;padding:0 4px;text-decoration:none;vertical-align:middle}.v-breadcrumbs-item--disabled{opacity:var(--v-disabled-opacity);pointer-events:none}.v-breadcrumbs-item--link{color:inherit;text-decoration:none}.v-breadcrumbs-item--link:hover{text-decoration:underline}.v-breadcrumbs-item .v-icon{font-size:1rem;margin-inline:-4px 2px}.v-breadcrumbs-divider{display:inline-block;padding:0 8px;vertical-align:middle}.settings-overview[data-v-3ce908d5]{padding:24px;max-width:800px;margin:0 auto}.settings-main-card[data-v-3ce908d5]{overflow:hidden}.settings-list[data-v-3ce908d5]{padding:0}.settings-list-item[data-v-3ce908d5]{cursor:pointer;padding:20px 24px;min-height:80px;border-bottom:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.settings-list-item[data-v-3ce908d5]:last-child{border-bottom:none}.settings-list-item[data-v-3ce908d5]:hover{background-color:rgba(var(--v-theme-on-surface),.05)}.settings-list-item[data-v-3ce908d5] .v-list-item__prepend{margin-right:16px}.v-avatar[data-v-3ce908d5]{box-shadow:0 2px 8px #00000026}@media (max-width: 600px){.settings-list-item[data-v-3ce908d5]{padding:12px 16px;min-height:64px}.settings-list-item[data-v-3ce908d5] .v-list-item__prepend{margin-right:12px}.settings-list-item[data-v-3ce908d5] .v-avatar{width:40px!important;height:40px!important}.settings-list-item[data-v-3ce908d5] .v-list-item-title{font-size:1rem!important;line-height:1.3}.settings-list-item[data-v-3ce908d5] .v-list-item-subtitle{font-size:.813rem!important;line-height:1.3}}
@@ -0,0 +1 @@
1
+ import{C as z}from"./Container-C7yRkeCv.js";import{az as L,b8 as M,J as S,i as B,bc as o,a3 as E,aF as u,aG as r,aH as e,o as a,bj as N,aP as _,b5 as f,ah as C,bg as T,ba as j,bk as v,ci as h,aV as l,aW as c,cj as b,aK as D,bp as d,b_ as k,bl as F,aE as V,_ as A}from"./index-D2rF_80D.js";import"./index-kQIztB-E.js";const G=L({__name:"SystemConfig",setup(H){const m=j(),{t:i}=M(),p=S([]),x=[{domain:"logging",name:"settings.system_logging",description:"settings.system_logging_description",icon:"mdi-text-box-search",route:"/settings/serverlogs"}],y=B(()=>[...p.value].sort((t,n)=>o.providerManifests[t.domain].name.localeCompare(o.providerManifests[n.domain].name))),I=t=>{const n=i(`settings.core_module.${t.domain}.name`);return n!==`settings.core_module.${t.domain}.name`?n:o.providerManifests[t.domain].name},$=t=>{const n=i(`settings.core_module.${t.domain}.description`);return n!==`settings.core_module.${t.domain}.description`?n:o.providerManifests[t.domain].description},g=function(t){t.route?m.push(t.route):m.push(`/settings/editcore/${t.domain}`)};return E(async()=>{p.value=await o.getCoreConfigs()}),(t,n)=>(r(),u(z,{variant:"comfortable",class:"settings-overview"},{default:e(()=>[a(T,{class:"settings-main-card"},{default:e(()=>[a(N,{class:"settings-list"},{default:e(()=>[(r(!0),_(C,null,f(y.value,s=>(r(),u(v,{key:s.domain,ripple:!0,class:"settings-list-item",onClick:w=>g(s)},{prepend:e(()=>[a(k,{color:"blue",size:"48"},{default:e(()=>[a(F,{domain:s.domain,size:24,color:"white"},null,8,["domain"])]),_:2},1024)]),append:e(()=>[s.last_error?(r(),u(d,{key:0,color:"red",icon:"mdi-alert-circle",class:"mr-2",title:s.last_error},null,8,["title"])):D("",!0),a(d,{icon:"mdi-chevron-right"})]),default:e(()=>[a(h,{class:"text-h6"},{default:e(()=>[l(c(I(s)),1)]),_:2},1024),a(b,null,{default:e(()=>[l(c($(s)),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128)),(r(),_(C,null,f(x,s=>a(v,{key:s.domain,ripple:!0,class:"settings-list-item",onClick:w=>g(s)},{prepend:e(()=>[a(k,{color:"purple",size:"48"},{default:e(()=>[a(d,{icon:s.icon,size:"24",color:"white"},null,8,["icon"])]),_:2},1024)]),append:e(()=>[a(d,{icon:"mdi-chevron-right"})]),default:e(()=>[a(h,{class:"text-h6"},{default:e(()=>[l(c(V(i)(s.name)),1)]),_:2},1024),a(b,null,{default:e(()=>[l(c(V(i)(s.description)),1)]),_:2},1024)]),_:2},1032,["onClick"])),64))]),_:1})]),_:1})]),_:1}))}}),R=A(G,[["__scopeId","data-v-fe538fe8"]]);export{R as default};
@@ -0,0 +1 @@
1
+ import{g as D,p as Y,c as z,f as O,I as F,ao as R,u as E,cZ as q,cq as G,n as W,c_ as j,o as s,ae as $,cs as H,c$ as J,v as K,x as U,z as Z,cG as Q,C as I,cX as _,E as C,Y as ee,N as te,X as ae,bp as h,az as oe,J as le,aF as i,aG as l,bq as N,aH as n,M as V,aK as f,aY as B,aD as P,aP as g,aE as d,bc as k,by as A,ah as T,b5 as x,bw as M,bv as ne,bj as ie,bk as se,aX as re,b7 as ce,b9 as de,aW as ue,bb as fe,_ as be}from"./index-D2rF_80D.js";import{V as ve}from"./VToolbar-Db4qfa2C.js";const ge=Y({bordered:Boolean,color:String,content:[Number,String],dot:Boolean,floating:Boolean,icon:_,inline:Boolean,label:{type:String,default:"$vuetify.badge"},max:[Number,String],modelValue:{type:Boolean,default:!0},offsetX:[Number,String],offsetY:[Number,String],textColor:String,...I(),...Q({location:"top end"}),...Z(),...U(),...K(),...J({transition:"scale-rotate-transition"}),...H()},"VBadge"),L=D()({name:"VBadge",inheritAttrs:!1,props:ge(),setup(e,u){const{backgroundColorClasses:b,backgroundColorStyles:m}=z(()=>e.color),{roundedClasses:w}=O(e),{t:a}=F(),{textColorClasses:o,textColorStyles:t}=R(()=>e.textColor),{themeClasses:r}=E(),{locationStyles:v}=q(e,!0,c=>(e.floating?e.dot?2:4:e.dot?8:12)+(["top","bottom"].includes(c)?Number(e.offsetY??0):["left","right"].includes(c)?Number(e.offsetX??0):0)),{dimensionStyles:y}=G(e);return W(()=>{const c=Number(e.content),S=!e.max||isNaN(c)?e.content:c<=Number(e.max)?c:`${e.max}+`,[X,p]=j(u.attrs,["aria-atomic","aria-label","aria-live","role","title"]);return s(e.tag,$({class:["v-badge",{"v-badge--bordered":e.bordered,"v-badge--dot":e.dot,"v-badge--floating":e.floating,"v-badge--inline":e.inline},e.class]},p,{style:e.style}),{default:()=>[C("div",{class:"v-badge__wrapper"},[u.slots.default?.(),s(ee,{transition:e.transition},{default:()=>[te(C("span",$({class:["v-badge__badge",r.value,b.value,w.value,o.value],style:[m.value,t.value,y.value,e.inline?{}:v.value],"aria-atomic":"true","aria-label":a(e.label,c),"aria-live":"polite",role:"status"},X),[e.dot?void 0:u.slots.badge?u.slots.badge?.():e.icon?s(h,{icon:e.icon},null):S]),[[ae,e.modelValue]])]})])]})}),{}}}),me={key:0,class:"mobile-brand"},ye={key:1},ke=oe({__name:"Toolbar",props:{color:{default:"transparent"},icon:{default:void 0},title:{default:void 0},menuItems:{default:void 0},enforceOverflowMenu:{type:Boolean,default:!1},showLoading:{type:Boolean,default:void 0},home:{type:Boolean},iconAction:{type:Function,default:void 0}},emits:["iconClicked","titleClicked"],setup(e,{emit:u}){const b=le(!1),m=(a,o)=>{if(a.preventDefault(),o.subItems?.length){const t=o.closeOnContentClick===!1?o.subItems.map(y=>({...y,close_on_click:y.close_on_click??!1})):o.subItems,r="clientX"in a?a.clientX:0,v="clientY"in a?a.clientY:0;fe.emit("contextmenu",{items:t,posX:r,posY:v})}else o.action&&(b.value=!1,o.action())},w=u;return(a,o)=>(l(),i(ve,{color:e.color,class:"header"},N({title:n(()=>[P(a.$slots,"title",{},()=>[d(ce).mobileLayout&&e.home?(l(),g("div",me,[...o[3]||(o[3]=[C("img",{src:de,alt:"Music Assistant",class:"mobile-brand-logo"},null,-1),C("span",{class:"mobile-brand-text"},"Music Assistant",-1)])])):e.title?(l(),g("button",{key:1,onClick:o[1]||(o[1]=t=>w("titleClicked"))},ue(e.title),1)):f("",!0)],!0)]),_:2},[e.icon?{name:"prepend",fn:n(()=>[s(V,{icon:typeof e.icon=="string"?e.icon:void 0,size:"small",disabled:e.iconAction==null,style:{opacity:"0.8"},onClick:o[0]||(o[0]=t=>e.iconAction?.())},{default:n(()=>[typeof e.icon!="string"?(l(),i(B(e.icon),{key:0,class:"w-6 h-6"})):f("",!0)]),_:1},8,["icon","disabled"])]),key:"0"}:void 0,a.$slots.append?{name:"append",fn:n(()=>[P(a.$slots,"append",{},void 0,!0)]),key:"1"}:e.menuItems?.length?{name:"append",fn:n(()=>[e.showLoading&&(d(k).fetchesInProgress.value.length>0||d(k).syncTasks.value.length>0)?(l(),i(A,{key:0,color:"primary",indeterminate:"",title:a.$t("tooltip.loading")},null,8,["title"])):f("",!0),(l(!0),g(T,null,x(e.menuItems.filter(t=>!t.hide&&!e.enforceOverflowMenu&&(d(M)("bp7")||t.overflowAllowed===!1)),t=>(l(),i(V,{key:t.label,variant:"text",style:{width:"40px"},title:a.$t(t.label,t.labelArgs||[]),disabled:t.disabled==!0,onClick:r=>m(r,t)},{default:n(()=>[s(L,{"model-value":t.active==!0,color:"primary",dot:""},{default:n(()=>[typeof t.icon=="string"?(l(),i(h,{key:0,icon:t.icon,color:a.$vuetify.theme.current.dark?"#fff":"#000",size:"22px"},null,8,["icon","color"])):t.icon?(l(),i(B(t.icon),{key:1,class:"w-[22px] h-[22px]",color:a.$vuetify.theme.current.dark?"#fff":"#000"},null,8,["color"])):f("",!0)]),_:2},1032,["model-value"])]),_:2},1032,["title","disabled","onClick"]))),128)),(!d(M)("bp7")||e.enforceOverflowMenu)&&e.menuItems.filter(t=>t.hide!=!0&&t.overflowAllowed!==!1).length?(l(),g("div",ye,[s(ne,{modelValue:b.value,"onUpdate:modelValue":o[2]||(o[2]=t=>b.value=t),location:"bottom end",scrim:"","close-on-content-click":!1},{activator:n(({props:t})=>[s(V,$({variant:"plain",style:{width:"15px","margin-left":"-10px"}},t),{default:n(()=>[s(h,{icon:"mdi-dots-vertical",color:a.$vuetify.theme.current.dark?"#fff":"#000",size:"22",style:{"margin-right":"-5px",width:"15px"}},null,8,["color"])]),_:1},16)]),default:n(()=>[s(ie,{density:"compact",slim:"",tile:""},{default:n(()=>[(l(!0),g(T,null,x(e.menuItems.filter(t=>t.hide!=!0&&t.overflowAllowed!=!1),(t,r)=>(l(),i(se,{key:r,title:a.$t(t.label,t.labelArgs||[]),disabled:t.disabled==!0,"append-icon":t.subItems?.length?"mdi-chevron-right":void 0,onClick:re(v=>m(v,t),["prevent","stop"])},N({_:2},[t.icon?{name:"prepend",fn:n(()=>[s(L,{"model-value":t.active==!0,color:"primary",dot:""},{default:n(()=>[typeof t.icon=="string"?(l(),i(h,{key:0,icon:t.icon,color:a.$vuetify.theme.current.dark?"#fff":"#000",size:"22px"},null,8,["icon","color"])):(l(),i(B(t.icon),{key:1,class:"w-[22px] h-[22px]",color:a.$vuetify.theme.current.dark?"#fff":"#000"},null,8,["color"]))]),_:2},1032,["model-value"])]),key:"0"}:void 0]),1032,["title","disabled","append-icon","onClick"]))),128))]),_:1})]),_:1},8,["modelValue"])])):f("",!0)]),key:"2"}:e.showLoading?{name:"append",fn:n(()=>[d(k).fetchesInProgress.value.length>0||d(k).syncTasks.value.length>0?(l(),i(A,{key:0,color:"primary",indeterminate:""})):f("",!0)]),key:"3"}:void 0]),1032,["color"]))}}),we=be(ke,[["__scopeId","data-v-56a4abe4"]]);export{we as T,L as V};
@@ -1 +1 @@
1
- .v-badge{display:inline-block;line-height:1}.v-badge__badge{align-items:center;display:inline-flex;border-radius:10px;font-family:Roboto,sans-serif;font-size:.75rem;font-weight:500;height:1.25rem;justify-content:center;min-width:20px;padding:4px 6px;pointer-events:auto;position:absolute;text-align:center;text-indent:0;transition:.225s cubic-bezier(.4,0,.2,1);white-space:nowrap}.v-badge__badge{background:rgb(var(--v-theme-surface-variant));color:rgba(var(--v-theme-on-surface-variant),var(--v-high-emphasis-opacity))}.v-badge__badge:has(.v-icon){padding:4px 6px}.v-badge--bordered .v-badge__badge:after{border-radius:inherit;border-style:solid;border-width:2px;color:rgb(var(--v-theme-background));content:"";inset:0;position:absolute;transform:scale(1.05)}.v-badge--dot .v-badge__badge{border-radius:4.5px;height:9px;min-width:0;padding:0;width:9px}.v-badge--dot .v-badge__badge:after{border-width:1.5px}.v-badge--inline .v-badge__badge{position:relative;vertical-align:middle}.v-badge__badge .v-icon{color:inherit;font-size:.75rem;margin:0 -2px}.v-badge__badge img,.v-badge__badge .v-img{height:100%;width:100%}.v-badge__wrapper{display:flex;position:relative}.v-badge--inline .v-badge__wrapper{align-items:center;display:inline-flex;justify-content:center;margin:0 4px}@media (forced-colors: active){.v-badge__badge{forced-color-adjust:preserve-parent-color}.v-badge__badge.v-badge__badge{background:highlight!important;color:highlighttext!important}}.header.v-toolbar[data-v-3bfde582]{height:55px;font-family:JetBrains Mono Medium}.header.v-toolbar[data-v-3bfde582] .v-toolbar__content>.v-toolbar__append{margin-right:0}.header.v-toolbar>.v-toolbar__content>.v-toolbar-title[data-v-3bfde582]{margin-inline-start:10px}.header.v-toolbar>.v-toolbar__content>.v-toolbar__prepend[data-v-3bfde582]{margin-inline-start:6px}.header.v-toolbar>.v-toolbar__content>.v-toolbar__append[data-v-3bfde582]{margin-inline-end:21px}.header.v-toolbar-default>.v-toolbar__content>.v-toolbar-title[data-v-3bfde582]{margin-inline-start:0px}.header.v-toolbar-default>.v-toolbar__content>.v-toolbar__prepend[data-v-3bfde582]{margin-inline-start:10px}.header.v-toolbar-default>.v-toolbar__content>.v-toolbar__append[data-v-3bfde582]{margin-inline-end:10px}.mobile-brand[data-v-3bfde582]{display:flex;align-items:center;gap:1rem}.mobile-brand-logo[data-v-3bfde582]{height:30px;width:30px}.mobile-brand-text[data-v-3bfde582]{font-weight:600;letter-spacing:.5px;margin-top:4px}
1
+ .v-badge{display:inline-block;line-height:1}.v-badge__badge{align-items:center;display:inline-flex;border-radius:10px;font-family:Roboto,sans-serif;font-size:.75rem;font-weight:500;height:1.25rem;justify-content:center;min-width:20px;padding:4px 6px;pointer-events:auto;position:absolute;text-align:center;text-indent:0;transition:.225s cubic-bezier(.4,0,.2,1);white-space:nowrap}.v-badge__badge{background:rgb(var(--v-theme-surface-variant));color:rgba(var(--v-theme-on-surface-variant),var(--v-high-emphasis-opacity))}.v-badge__badge:has(.v-icon){padding:4px 6px}.v-badge--bordered .v-badge__badge:after{border-radius:inherit;border-style:solid;border-width:2px;color:rgb(var(--v-theme-background));content:"";inset:0;position:absolute;transform:scale(1.05)}.v-badge--dot .v-badge__badge{border-radius:4.5px;height:9px;min-width:0;padding:0;width:9px}.v-badge--dot .v-badge__badge:after{border-width:1.5px}.v-badge--inline .v-badge__badge{position:relative;vertical-align:middle}.v-badge__badge .v-icon{color:inherit;font-size:.75rem;margin:0 -2px}.v-badge__badge img,.v-badge__badge .v-img{height:100%;width:100%}.v-badge__wrapper{display:flex;position:relative}.v-badge--inline .v-badge__wrapper{align-items:center;display:inline-flex;justify-content:center;margin:0 4px}@media (forced-colors: active){.v-badge__badge{forced-color-adjust:preserve-parent-color}.v-badge__badge.v-badge__badge{background:highlight!important;color:highlighttext!important}}.header.v-toolbar[data-v-56a4abe4]{height:55px;font-family:JetBrains Mono Medium}.header.v-toolbar[data-v-56a4abe4] .v-toolbar__content{height:55px!important;min-height:55px!important;padding-top:0;padding-bottom:0;align-items:center}.header.v-toolbar[data-v-56a4abe4] .v-toolbar-title{margin-inline-start:10px!important}.header.v-toolbar[data-v-56a4abe4] .v-toolbar__prepend{margin-inline-start:12px!important;margin-inline-end:0px!important}.header.v-toolbar>.v-toolbar__content>.v-toolbar__append[data-v-56a4abe4]{margin-inline-end:5px}.header.v-toolbar-default>.v-toolbar__content>.v-toolbar__append[data-v-56a4abe4]{margin-inline-end:10px}.mobile-brand[data-v-56a4abe4]{display:flex;align-items:center;gap:1rem}.mobile-brand-logo[data-v-56a4abe4]{height:30px;width:30px}.mobile-brand-text[data-v-56a4abe4]{font-weight:600;letter-spacing:.5px;margin-top:4px}
@@ -0,0 +1 @@
1
+ import{I as d}from"./ItemsListing-Cnfrbqt8.js";import{I as y,_ as b}from"./ProviderDetails.vue_vue_type_style_index_0_lang-B173j0nZ.js";import{az as k,J as h,L as w,a3 as I,bc as s,bB as T,a4 as g,aP as E,aG as l,o as B,aF as m,aK as u,E as p,aE as D}from"./index-D2rF_80D.js";import"./Container-C7yRkeCv.js";import"./index-kQIztB-E.js";import"./Toolbar-C66D0zTJ.js";import"./VToolbar-Db4qfa2C.js";import"./Button-CrfR8Gdt.js";import"./ListItem-CU9QYmiw.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-cf4_7ViH.js";import"./MediaItemThumb-A-03axGx.js";import"./VCheckbox-DccbdgFZ.js";import"./VCheckboxBtn-Dik76WyM.js";import"./VSelectionControl-BHjDOTFl.js";import"./PanelviewItemCompact-BWonx8dk.js";import"./userPreferences-DWdlmlmR.js";import"./VInfiniteScroll-CfzetGUD.js";import"./VVirtualScroll-CG155sfU.js";import"./marquee_text_sync-Bj0t3siK.js";const q=k({__name:"TrackDetails",props:{itemId:{},provider:{},album:{}},setup(i){const r=i,e=h(),v=async function(){e.value=await s.getTrack(r.itemId,r.provider,r.album)};w(()=>r.itemId,t=>{t&&v()},{immediate:!0}),I(()=>{const t=s.subscribe(T.MEDIA_ITEM_UPDATED,a=>{const o=a.data;if(e.value?.uri==o.uri)e.value=o;else if("provider_mappings"in o){for(const n of o.provider_mappings)if(n.item_id==r.itemId&&[n.provider_instance,n.provider_domain].includes(r.provider)){e.value=o;break}}});g(t)});const c=async function(t){return await s.getTrackVersions(e.value.item_id,e.value.provider)},f=async function(t){return await s.getTrackAlbums(r.itemId,r.provider,t.libraryOnly)};return(t,a)=>(l(),E("section",null,[B(y,{item:e.value,"active-provider":i.provider},null,8,["item","active-provider"]),e.value?(l(),m(d,{key:0,itemtype:"trackalbums","parent-item":e.value,"show-provider":!0,"show-favorites-only-filter":!1,"show-library-only-filter":e.value.provider=="library"&&D(s).hasStreamingProviders.value,"show-track-number":!1,"show-refresh-button":!1,"load-items":f,"sort-keys":["name","sort_name","year","year_desc"],title:t.$t("appears_on"),path:i.provider+i.itemId,"allow-collapse":!0},null,8,["parent-item","show-library-only-filter","title","path"])):u("",!0),a[0]||(a[0]=p("br",null,null,-1)),e.value?(l(),m(d,{key:1,itemtype:"trackversions","parent-item":e.value,"show-provider":!0,"show-favorites-only-filter":!1,"show-track-number":!1,"load-items":c,"sort-keys":["name","sort_name","duration"],title:t.$t("other_versions"),"hide-on-empty":!0,path:i.provider+i.itemId,"allow-collapse":!0,"show-refresh-button":!1,"refresh-on-parent-update":!0},null,8,["parent-item","title","path"])):u("",!0),a[1]||(a[1]=p("br",null,null,-1)),e.value?(l(),m(b,{key:2,"item-details":e.value},null,8,["item-details"])):u("",!0),a[2]||(a[2]=p("br",null,null,-1))]))}});export{q as default};
@@ -0,0 +1 @@
1
+ import{C as pe}from"./Container-C7yRkeCv.js";import{L as ae}from"./ListItem-CU9QYmiw.js";import{az as I,b8 as R,J as U,i as S,bc as P,cQ as re,L as le,aF as T,aG as i,aH as t,o as l,bg as E,bF as j,aV as g,aW as s,cw as J,c8 as O,aK as C,aP as $,c7 as W,cm as X,cn as Q,M as z,bf as Y,bm as w,d8 as ue,E as V,_ as Z,b7 as ee,bi as ve,b_ as H,bp as K,ah as te,b5 as se,aX as oe,a3 as ce,am as fe,bb as _e}from"./index-D2rF_80D.js";import{V as A}from"./VSelect-Cz5ACGBh.js";import{_ as he}from"./CreateTokenDialog.vue_vue_type_script_setup_true_lang-474EAUdT.js";import"./index-kQIztB-E.js";import"./Button-CrfR8Gdt.js";import"./VVirtualScroll-CG155sfU.js";import"./VCheckboxBtn-Dik76WyM.js";import"./VSelectionControl-BHjDOTFl.js";const ye={key:1,class:"text-grey text-caption align-self-center"},be={key:1,class:"text-grey text-caption align-self-center"},ke=I({__name:"CreateUserDialog",props:{modelValue:{type:Boolean}},emits:["update:modelValue","created"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=U({username:"",displayName:"",password:"",confirmPassword:"",role:"user",playerFilter:[],providerFilter:[]}),m=[{title:u("auth.admin_role"),value:"admin"},{title:u("auth.user_role"),value:"user"}],h=S(()=>Object.values(P.players).map(e=>({title:e.name,value:e.player_id})).sort((e,o)=>e.title.localeCompare(o.title))),d=S(()=>Object.values(P.providers).filter(e=>e.type===re.MUSIC).map(e=>({title:e.name,value:e.instance_id})).sort((e,o)=>e.title.localeCompare(o.title))),k=e=>{a.value.playerFilter=a.value.playerFilter.filter(o=>o!==e)},y=e=>{a.value.providerFilter=a.value.providerFilter.filter(o=>o!==e)},D={required:e=>!!e||u("auth.field_required"),usernameLength:e=>e.length>=3||u("auth.username_min_length"),passwordLength:e=>e.length>=8||u("auth.password_min_length"),passwordMatch:e=>e===a.value.password||u("auth.passwords_must_match")},B=S(()=>a.value.username.length>=3&&a.value.password.length>=8&&a.value.password===a.value.confirmPassword&&a.value.role),L=()=>{a.value={username:"",displayName:"",password:"",confirmPassword:"",role:ue.USER,playerFilter:[],providerFilter:[]}},M=()=>{L(),p("update:modelValue",!1)},q=async()=>{b.value=!0;try{await P.createUser(a.value.username,a.value.password,a.value.role,a.value.displayName||void 0,a.value.playerFilter.length>0?a.value.playerFilter:void 0,a.value.providerFilter.length>0?a.value.providerFilter:void 0)?(w.success(u("auth.user_created")),L(),p("created"),p("update:modelValue",!1)):w.error(u("auth.user_create_failed"))}catch{w.error(u("auth.user_create_failed"))}finally{b.value=!1}};return le(()=>n.modelValue,e=>{e||L()}),(e,o)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"500","onUpdate:modelValue":o[7]||(o[7]=r=>p("update:modelValue",r))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(e.$t("auth.create_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[l(O,{modelValue:a.value.username,"onUpdate:modelValue":o[0]||(o[0]=r=>a.value.username=r),label:e.$t("auth.username"),variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.usernameLength],autofocus:""},null,8,["modelValue","label","rules"]),l(O,{modelValue:a.value.displayName,"onUpdate:modelValue":o[1]||(o[1]=r=>a.value.displayName=r),label:e.$t("auth.display_name"),variant:"outlined",density:"comfortable",class:"mb-2",hint:e.$t("optional"),"persistent-hint":""},null,8,["modelValue","label","hint"]),l(O,{modelValue:a.value.password,"onUpdate:modelValue":o[2]||(o[2]=r=>a.value.password=r),label:e.$t("auth.password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.passwordLength]},null,8,["modelValue","label","rules"]),l(O,{modelValue:a.value.confirmPassword,"onUpdate:modelValue":o[3]||(o[3]=r=>a.value.confirmPassword=r),label:e.$t("auth.confirm_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.passwordMatch]},null,8,["modelValue","label","rules"]),l(A,{modelValue:a.value.role,"onUpdate:modelValue":o[4]||(o[4]=r=>a.value.role=r),label:e.$t("auth.role"),items:m,variant:"outlined",density:"comfortable",class:"mb-2"},null,8,["modelValue","label"]),l(A,{modelValue:a.value.playerFilter,"onUpdate:modelValue":o[5]||(o[5]=r=>a.value.playerFilter=r),label:e.$t("auth.player_filter"),items:h.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.player_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>k(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",ye," (+"+s(a.value.playerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"]),l(A,{modelValue:a.value.providerFilter,"onUpdate:modelValue":o[6]||(o[6]=r=>a.value.providerFilter=r),label:e.$t("auth.provider_filter"),items:d.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.provider_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>y(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",be," (+"+s(a.value.providerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"])]),_:1}),l(X,{class:"pa-6 pt-4"},{default:t(()=>[l(Q),l(z,{variant:"text",onClick:M},{default:t(()=>[g(s(e.$t("cancel")),1)]),_:1}),l(z,{color:"primary",variant:"flat",loading:b.value,disabled:!B.value,onClick:q},{default:t(()=>[g(s(e.$t("create")),1)]),_:1},8,["loading","disabled"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),Ve={class:"text-body-1 mb-4"},ge={key:0,class:"user-name-box"},$e=I({__name:"DeleteUserDialog",props:{modelValue:{type:Boolean},user:{}},emits:["update:modelValue","deleted"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=async()=>{if(n.user){b.value=!0;try{await P.deleteUser(n.user.user_id)?(w.success(u("auth.user_deleted")),p("deleted"),p("update:modelValue",!1)):w.error(u("auth.user_delete_failed"))}catch{w.error(u("auth.user_delete_failed"))}finally{b.value=!1}}};return(m,h)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"480","onUpdate:modelValue":h[1]||(h[1]=d=>p("update:modelValue",d))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pl-6 pb-0"},{default:t(()=>[g(s(m.$t("auth.delete_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[V("p",Ve,s(m.$t("auth.confirm_delete_user")),1),c.user?(i(),$("div",ge,s(c.user.display_name||c.user.username),1)):C("",!0)]),_:1}),l(X,{class:"pa-6 pt-4"},{default:t(()=>[l(Q),l(z,{variant:"text",onClick:h[0]||(h[0]=d=>p("update:modelValue",!1))},{default:t(()=>[g(s(m.$t("cancel")),1)]),_:1}),l(z,{color:"error",variant:"flat",loading:b.value,onClick:a},{default:t(()=>[g(s(m.$t("auth.delete_user")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),we=Z($e,[["__scopeId","data-v-8cbf5f8f"]]),Ue={class:"text-body-1 mb-4"},Ce={key:0,class:"user-name-box"},Fe=I({__name:"DisableUserDialog",props:{modelValue:{type:Boolean},user:{}},emits:["update:modelValue","disabled"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=async()=>{if(n.user){b.value=!0;try{await P.disableUser(n.user.user_id)?(w.success(u("auth.user_disabled")),p("disabled"),p("update:modelValue",!1)):w.error(u("auth.user_disable_failed"))}catch{w.error(u("auth.user_disable_failed"))}finally{b.value=!1}}};return(m,h)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"480","onUpdate:modelValue":h[1]||(h[1]=d=>p("update:modelValue",d))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pl-6 pb-0"},{default:t(()=>[g(s(m.$t("auth.disable_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[V("p",Ue,s(m.$t("auth.confirm_disable_user")),1),c.user?(i(),$("div",Ce,s(c.user.display_name||c.user.username),1)):C("",!0)]),_:1}),l(X,{class:"pa-6 pt-4"},{default:t(()=>[l(Q),l(z,{variant:"text",onClick:h[0]||(h[0]=d=>p("update:modelValue",!1))},{default:t(()=>[g(s(m.$t("cancel")),1)]),_:1}),l(z,{color:"error",variant:"flat",loading:b.value,onClick:a},{default:t(()=>[g(s(m.$t("auth.disable_user")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),De=Z(Fe,[["__scopeId","data-v-9638370d"]]),Te={key:1,class:"text-grey text-caption align-self-center"},Ne={key:1,class:"text-grey text-caption align-self-center"},ze=I({__name:"EditUserDialog",props:{modelValue:{type:Boolean},user:{}},emits:["update:modelValue","updated"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=U({username:"",displayName:"",avatarUrl:"",role:"user",password:"",confirmPassword:"",playerFilter:[],providerFilter:[]}),m=[{title:u("auth.admin_role"),value:"admin"},{title:u("auth.user_role"),value:"user"}],h=S(()=>Object.values(P.players).map(e=>({title:e.name,value:e.player_id})).sort((e,o)=>e.title.localeCompare(o.title))),d=S(()=>Object.values(P.providers).filter(e=>e.type===re.MUSIC).map(e=>({title:e.name,value:e.instance_id})).sort((e,o)=>e.title.localeCompare(o.title))),k=e=>{a.value.playerFilter=a.value.playerFilter.filter(o=>o!==e)},y=e=>{a.value.providerFilter=a.value.providerFilter.filter(o=>o!==e)},D={required:e=>!!e||u("auth.field_required"),usernameLength:e=>e.length>=3||u("auth.username_min_length"),passwordLength:e=>e.length>=8||u("auth.password_min_length"),passwordMatch:e=>e===a.value.password||u("auth.passwords_must_match")},B=S(()=>!n.user||!ee.currentUser?!1:n.user.user_id===ee.currentUser.user_id),L=()=>{n.user?a.value={username:n.user.username,displayName:n.user.display_name||"",avatarUrl:n.user.avatar_url||"",role:n.user.role,password:"",confirmPassword:"",playerFilter:n.user.player_filter||[],providerFilter:n.user.provider_filter||[]}:a.value={username:"",displayName:"",avatarUrl:"",role:ue.USER,password:"",confirmPassword:"",playerFilter:[],providerFilter:[]}},M=()=>{L(),p("update:modelValue",!1)},q=async()=>{if(n.user){if(a.value.password&&a.value.password!==a.value.confirmPassword){w.error(u("auth.passwords_must_match"));return}b.value=!0;try{const e={};a.value.username!==n.user.username&&(e.username=a.value.username),a.value.displayName!==(n.user.display_name||"")&&(e.displayName=a.value.displayName),a.value.avatarUrl!==(n.user.avatar_url||"")&&(e.avatarUrl=a.value.avatarUrl),a.value.role!==n.user.role&&!B.value&&(e.role=a.value.role),a.value.password&&(e.password=a.value.password);const o=n.user.player_filter||[];JSON.stringify([...a.value.playerFilter].sort())!==JSON.stringify([...o].sort())&&(e.player_filter=a.value.playerFilter);const r=n.user.provider_filter||[];JSON.stringify([...a.value.providerFilter].sort())!==JSON.stringify([...r].sort())&&(e.provider_filter=a.value.providerFilter),await P.updateUser(n.user.user_id,e),w.success(u("auth.user_updated")),L(),p("updated"),p("update:modelValue",!1)}catch{w.error(u("auth.user_update_failed"))}finally{b.value=!1}}};return le(()=>n.user,L,{immediate:!0}),le(()=>n.modelValue,e=>{e&&L()}),(e,o)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"500","onUpdate:modelValue":o[8]||(o[8]=r=>p("update:modelValue",r))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(e.$t("auth.edit_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[l(O,{modelValue:a.value.username,"onUpdate:modelValue":o[0]||(o[0]=r=>a.value.username=r),label:e.$t("auth.username"),variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.usernameLength]},null,8,["modelValue","label","rules"]),l(O,{modelValue:a.value.displayName,"onUpdate:modelValue":o[1]||(o[1]=r=>a.value.displayName=r),label:e.$t("auth.display_name"),variant:"outlined",density:"comfortable",class:"mb-6",hint:e.$t("optional"),"persistent-hint":""},null,8,["modelValue","label","hint"]),l(O,{modelValue:a.value.avatarUrl,"onUpdate:modelValue":o[2]||(o[2]=r=>a.value.avatarUrl=r),label:e.$t("auth.avatar_url"),variant:"outlined",density:"comfortable",class:"mb-6",hint:e.$t("auth.avatar_url_hint"),"persistent-hint":""},null,8,["modelValue","label","hint"]),l(A,{modelValue:a.value.role,"onUpdate:modelValue":o[3]||(o[3]=r=>a.value.role=r),label:e.$t("auth.role"),items:m,variant:"outlined",density:"comfortable",disabled:B.value,class:"mb-2"},null,8,["modelValue","label","disabled"]),l(O,{modelValue:a.value.password,"onUpdate:modelValue":o[4]||(o[4]=r=>a.value.password=r),label:e.$t("auth.new_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",hint:e.$t("auth.password_optional_hint"),"persistent-hint":"",rules:a.value.password?[D.passwordLength]:[]},null,8,["modelValue","label","hint","rules"]),a.value.password?(i(),T(O,{key:0,modelValue:a.value.confirmPassword,"onUpdate:modelValue":o[5]||(o[5]=r=>a.value.confirmPassword=r),label:e.$t("auth.confirm_password"),type:"password",variant:"outlined",density:"comfortable",rules:[D.passwordMatch]},null,8,["modelValue","label","rules"])):C("",!0),l(A,{modelValue:a.value.playerFilter,"onUpdate:modelValue":o[6]||(o[6]=r=>a.value.playerFilter=r),label:e.$t("auth.player_filter"),items:h.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.player_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>k(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",Te," (+"+s(a.value.playerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"]),l(A,{modelValue:a.value.providerFilter,"onUpdate:modelValue":o[7]||(o[7]=r=>a.value.providerFilter=r),label:e.$t("auth.provider_filter"),items:d.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.provider_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>y(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",Ne," (+"+s(a.value.providerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"])]),_:1}),l(X,{class:"pa-6 pt-4"},{default:t(()=>[l(Q),l(z,{variant:"text",onClick:M},{default:t(()=>[g(s(e.$t("cancel")),1)]),_:1}),l(z,{color:"primary",variant:"flat",loading:b.value,onClick:q},{default:t(()=>[g(s(e.$t("save")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),Pe={class:"pa-4"},Le={class:"mb-2"},Me={class:"section-subtitle mb-6"},Oe={key:0,class:"empty-state"},Se={class:"text-medium-emphasis"},Ie={key:1,class:"tokens-list"},Re={class:"line-clamp-1"},Be={class:"token-meta"},qe={key:0,class:"token-divider"},Ae={key:1},Ee={class:"pa-4"},je={class:"section-header-with-action"},Je={class:"w-100"},Xe={class:"d-flex justify-space-between align-center gap-2"},Qe={class:"mb-2"},Ye={class:"section-subtitle"},Ge={key:0,class:"empty-state"},He={class:"text-medium-emphasis"},Ke={key:1,class:"tokens-list"},We={class:"line-clamp-1"},Ze={class:"token-meta"},xe={key:0,class:"token-divider"},ea={key:1},aa=I({__name:"ManageTokensDialog",props:{modelValue:{type:Boolean},user:{},tokens:{}},emits:["update:modelValue","revoke","token-created"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=S(()=>n.tokens.filter(d=>!d.is_long_lived)),m=S(()=>n.tokens.filter(d=>d.is_long_lived)),h=d=>new Date(d).toLocaleString();return(d,k)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"900",scrollable:"","onUpdate:modelValue":k[4]||(k[4]=y=>p("update:modelValue",y))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(d.$t("auth.tokens"))+" - "+s(c.user?.display_name||c.user?.username),1)]),_:1}),l(ve),l(J,{class:"pa-0"},{default:t(()=>[V("div",Pe,[V("h3",Le,s(d.$t("auth.active_sessions")),1),V("p",Me,s(d.$t("auth.active_sessions_description")),1),a.value.length===0?(i(),$("div",Oe,[l(H,{color:"blue-grey-darken-2",size:"64",class:"mb-3"},{default:t(()=>[l(K,{icon:"mdi-devices",size:"32"})]),_:1}),V("p",Se,s(d.$t("auth.no_active_sessions")),1)])):(i(),$("div",Ie,[(i(!0),$(te,null,se(a.value,y=>(i(),T(ae,{key:y.token_id},{prepend:t(()=>[l(H,{color:"blue-grey-darken-2",size:"40"},{default:t(()=>[l(K,{icon:"mdi-devices",size:"20"})]),_:1})]),title:t(()=>[V("div",Re,s(y.name),1)]),subtitle:t(()=>[V("div",Be,[V("span",null,s(d.$t("created"))+": "+s(h(y.created_at)),1),y.last_used_at?(i(),$("span",qe,"•")):C("",!0),y.last_used_at?(i(),$("span",Ae,s(d.$t("last_used"))+": "+s(h(y.last_used_at)),1)):C("",!0)])]),append:t(()=>[l(z,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:oe(D=>p("revoke",y),["stop"])},null,8,["onClick"])]),_:2},1024))),128))]))]),V("div",Ee,[V("div",je,[V("div",Je,[V("div",Xe,[V("h3",Qe,s(d.$t("auth.long_lived_tokens")),1),l(z,{color:"primary",variant:"flat","prepend-icon":"mdi-plus",size:"small",onClick:k[0]||(k[0]=y=>b.value=!0)},{default:t(()=>[g(s(d.$t("auth.create_token")),1)]),_:1})]),V("p",Ye,s(d.$t("auth.long_lived_tokens_description")),1)])]),m.value.length===0?(i(),$("div",Ge,[l(H,{color:"deep-purple-darken-2",size:"64",class:"mb-3"},{default:t(()=>[l(K,{icon:"mdi-key-variant",size:"32"})]),_:1}),V("p",He,s(d.$t("auth.no_long_lived_tokens")),1)])):(i(),$("div",Ke,[(i(!0),$(te,null,se(m.value,y=>(i(),T(ae,{key:y.token_id},{prepend:t(()=>[l(H,{color:"deep-purple-darken-2",size:"40"},{default:t(()=>[l(K,{icon:"mdi-key-variant",size:"20"})]),_:1})]),title:t(()=>[V("div",We,s(y.name),1)]),subtitle:t(()=>[V("div",Ze,[V("span",null,s(d.$t("created"))+": "+s(h(y.created_at)),1),y.last_used_at?(i(),$("span",xe,"•")):C("",!0),y.last_used_at?(i(),$("span",ea,s(d.$t("last_used"))+": "+s(h(y.last_used_at)),1)):C("",!0)])]),append:t(()=>[l(z,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:oe(D=>p("revoke",y),["stop"])},null,8,["onClick"])]),_:2},1024))),128))]))])]),_:1}),l(X,{class:"pa-6"},{default:t(()=>[l(Q),l(z,{variant:"tonal",onClick:k[1]||(k[1]=y=>p("update:modelValue",!1))},{default:t(()=>[g(s(d.$t("close")),1)]),_:1})]),_:1})]),_:1}),l(he,{modelValue:b.value,"onUpdate:modelValue":k[2]||(k[2]=y=>b.value=y),"user-id":c.user?.user_id,onCreated:k[3]||(k[3]=y=>p("token-created"))},null,8,["modelValue","user-id"])]),_:1},8,["model-value"]))}}),la=Z(aa,[["__scopeId","data-v-19f1861f"]]),ta={class:"text-body-1 mb-4"},sa={key:0,class:"token-name-box"},oa=I({__name:"RevokeTokenDialog",props:{modelValue:{type:Boolean},token:{}},emits:["update:modelValue","revoked"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=async()=>{if(!n.token)return;b.value=!0;const m=!n.token.is_long_lived;try{await P.revokeToken(n.token.token_id)?(w.success(u(m?"auth.session_revoked":"auth.token_revoked")),p("revoked"),p("update:modelValue",!1)):w.error(u(m?"auth.session_revoke_failed":"auth.token_revoke_failed"))}catch{w.error(u(m?"auth.session_revoke_failed":"auth.token_revoke_failed"))}finally{b.value=!1}};return(m,h)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"480","onUpdate:modelValue":h[1]||(h[1]=d=>p("update:modelValue",d))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(c.token?.is_long_lived?m.$t("auth.revoke_token"):m.$t("auth.revoke_session")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[V("p",ta,s(c.token?.is_long_lived?m.$t("auth.revoke_token_confirm"):m.$t("auth.revoke_session_confirm")),1),c.token?(i(),$("div",sa,s(c.token.name),1)):C("",!0)]),_:1}),l(X,{class:"pa-6 pt-4"},{default:t(()=>[l(Q),l(z,{variant:"text",onClick:h[0]||(h[0]=d=>p("update:modelValue",!1))},{default:t(()=>[g(s(m.$t("cancel")),1)]),_:1}),l(z,{color:"error",variant:"flat",loading:b.value,onClick:a},{default:t(()=>[g(s(m.$t("auth.revoke")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),ra=Z(oa,[["__scopeId","data-v-026d0253"]]),ua={class:"users-header w-100"},na={class:"user-avatar-wrapper"},ia={class:"line-clamp-1"},da={class:"line-clamp-1"},ma={key:0,class:"text-center pa-8 text-medium-emphasis"},pa=I({__name:"UserManagement",setup(c){const{t:F}=R(),u=U([]),n=U(""),p=U(!1),b=U(!1),a=U(!1),m=U(!1),h=U(!1),d=U(!1),k=U(null),y=U([]),D=U(null),B=S(()=>{if(!n.value)return u.value;const f=n.value.toLowerCase();return u.value.filter(v=>{const _=(v.display_name||v.username).toLowerCase(),x=v.username.toLowerCase();return _.includes(f)||x.includes(f)})}),L=f=>!f||!ee.currentUser?!1:f.user_id===ee.currentUser.user_id,M=async()=>{try{u.value=await P.getAllUsers()}catch{w.error(F("auth.users_load_failed"))}},q=f=>{k.value=f,b.value=!0},e=f=>{k.value=f,a.value=!0},o=f=>{k.value=f,m.value=!0},r=async f=>{k.value=f,await N(f.user_id),h.value=!0},N=async f=>{try{y.value=await P.getUserTokens(f)}catch{w.error(F("auth.tokens_load_failed"))}},G=async()=>{k.value&&await N(k.value.user_id)},ne=f=>{D.value=f,d.value=!0},ie=async()=>{k.value&&await N(k.value.user_id),D.value=null},de=async f=>{try{await P.enableUser(f.user_id)?(await M(),w.success(F("auth.user_enabled"))):w.error(F("auth.user_enable_failed"))}catch{w.error(F("auth.user_enable_failed"))}},me=(f,v)=>{const _=[{label:"auth.edit_user",labelArgs:[],action:()=>{q(v)},icon:"mdi-pencil"},{label:"auth.manage_tokens",labelArgs:[],action:()=>{r(v)},icon:"mdi-key-variant"},{label:v.enabled?"auth.disable_user":"auth.enable_user",labelArgs:[],action:()=>{v.enabled?e(v):de(v)},icon:v.enabled?"mdi-account-off":"mdi-account-check",hide:L(v)},{label:"auth.delete_user",labelArgs:[],action:()=>{o(v)},icon:"mdi-delete",color:"error",hide:L(v)}];_e.emit("contextmenu",{items:_,posX:f.clientX,posY:f.clientY})};return ce(()=>{M()}),(f,v)=>(i(),$("div",null,[V("div",ua,[l(O,{modelValue:n.value,"onUpdate:modelValue":v[0]||(v[0]=_=>n.value=_),placeholder:f.$t("search"),"prepend-inner-icon":"mdi-magnify",variant:"outlined",density:"compact","hide-details":"",clearable:"",style:{"max-width":"400px"}},null,8,["modelValue","placeholder"]),l(z,{color:"primary",variant:"flat",height:"40",class:"add-user-btn","prepend-icon":"mdi-plus",onClick:v[1]||(v[1]=_=>p.value=!0)},{default:t(()=>[g(s(f.$t("auth.create_user")),1)]),_:1})]),l(pe,null,{default:t(()=>[(i(!0),$(te,null,se(B.value,_=>(i(),T(ae,{key:_.user_id,"show-menu-btn":"",link:"",onMenu:x=>me(x,_),onClick:x=>q(_)},{prepend:t(()=>[V("div",na,[l(H,{size:"40",color:_.avatar_url?void 0:"grey-darken-2"},{default:t(()=>[_.avatar_url?(i(),T(fe,{key:0,src:_.avatar_url},null,8,["src"])):(i(),T(K,{key:1,icon:"mdi-account",size:"20",color:"grey-lighten-1"}))]),_:2},1032,["color"])])]),title:t(()=>[V("div",ia,s(_.display_name||_.username),1)]),subtitle:t(()=>[V("div",da,s(_.username)+" • "+s(f.$t(`auth.${_.role}_role`)),1)]),append:t(()=>[_.enabled?C("",!0):(i(),T(W,{key:0,size:"small",color:"error"},{default:t(()=>[g(s(f.$t("auth.disabled")),1)]),_:1}))]),_:2},1032,["onMenu","onClick"]))),128)),u.value.length===0?(i(),$("div",ma,s(f.$t("no_content")),1)):C("",!0)]),_:1}),l(ke,{modelValue:p.value,"onUpdate:modelValue":v[2]||(v[2]=_=>p.value=_),onCreated:M},null,8,["modelValue"]),l(ze,{modelValue:b.value,"onUpdate:modelValue":v[3]||(v[3]=_=>b.value=_),user:k.value,onUpdated:M},null,8,["modelValue","user"]),l(De,{modelValue:a.value,"onUpdate:modelValue":v[4]||(v[4]=_=>a.value=_),user:k.value,onDisabled:M},null,8,["modelValue","user"]),l(we,{modelValue:m.value,"onUpdate:modelValue":v[5]||(v[5]=_=>m.value=_),user:k.value,onDeleted:M},null,8,["modelValue","user"]),l(la,{modelValue:h.value,"onUpdate:modelValue":v[6]||(v[6]=_=>h.value=_),user:k.value,tokens:y.value,onRevoke:ne,onTokenCreated:G},null,8,["modelValue","user","tokens"]),l(ra,{modelValue:d.value,"onUpdate:modelValue":v[7]||(v[7]=_=>d.value=_),token:D.value,onRevoked:ie},null,8,["modelValue","token"])]))}}),$a=Z(pa,[["__scopeId","data-v-4952d4ff"]]);export{$a as default};
@@ -0,0 +1 @@
1
+ import{C as Z}from"./Container-C7yRkeCv.js";import{az as P,b8 as q,J as h,aP as k,aG as d,E as o,o as e,aW as s,M as $,aH as a,aV as y,b_ as T,bp as z,ah as M,b5 as G,aF as C,aX as E,aK as S,_ as F,i as D,aE as x,b7 as R,cc as ee,c8 as L,bc as A,bm as U,R as ae,L as se,am as B,bf as H,bg as J,bF as K,cw as W,cm as X,cn as j,a3 as te,bi as N}from"./index-D2rF_80D.js";import{L as O}from"./ListItem-CU9QYmiw.js";import{_ as le}from"./CreateTokenDialog.vue_vue_type_script_setup_true_lang-474EAUdT.js";import{V as oe}from"./VForm-BPHMcC1Q.js";import"./index-kQIztB-E.js";import"./Button-CrfR8Gdt.js";const ne={class:"long-lived-tokens"},re={class:"section-header-with-action"},ie={class:"section-header"},ue={class:"section-subtitle"},de={key:0,class:"empty-state"},ce={class:"text-medium-emphasis"},ve={class:"text-caption text-medium-emphasis mt-1"},_e={key:1,class:"tokens-list"},me={class:"line-clamp-1"},pe={class:"token-meta"},fe={key:0,class:"token-divider"},he={key:1},ke=P({__name:"LongLivedTokensList",props:{tokens:{}},emits:["revoke","created"],setup(V,{emit:c}){const{t:n}=q(),u=c,l=h(!1),_=v=>new Date(v).toLocaleString(),m=()=>{u("created")};return(v,p)=>(d(),k("div",ne,[o("div",re,[o("div",ie,[o("h3",null,s(v.$t("auth.long_lived_tokens")),1),o("p",ue,s(v.$t("auth.api_tokens_description")),1)]),e($,{color:"primary",variant:"flat","prepend-icon":"mdi-plus",onClick:p[0]||(p[0]=t=>l.value=!0)},{default:a(()=>[y(s(v.$t("auth.create_token")),1)]),_:1})]),V.tokens.length===0?(d(),k("div",de,[e(T,{color:"deep-purple-darken-2",size:"64",class:"mb-3"},{default:a(()=>[e(z,{icon:"mdi-key-variant",size:"32"})]),_:1}),o("p",ce,s(v.$t("auth.no_tokens")),1),o("p",ve,s(v.$t("auth.create_token_hint")),1)])):(d(),k("div",_e,[(d(!0),k(M,null,G(V.tokens,t=>(d(),C(O,{key:t.token_id},{prepend:a(()=>[e(T,{color:"deep-purple-darken-2",size:"40"},{default:a(()=>[e(z,{icon:"mdi-key-variant",size:"20"})]),_:1})]),title:a(()=>[o("div",me,s(t.name),1)]),subtitle:a(()=>[o("div",pe,[o("span",null,s(v.$t("created"))+": "+s(_(t.created_at)),1),t.last_used_at?(d(),k("span",fe,"•")):S("",!0),t.last_used_at?(d(),k("span",he,s(v.$t("last_used"))+": "+s(_(t.last_used_at)),1)):S("",!0)])]),append:a(()=>[e($,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:E(w=>u("revoke",t),["stop"])},null,8,["onClick"])]),_:2},1024))),128))])),e(le,{modelValue:l.value,"onUpdate:modelValue":p[1]||(p[1]=t=>l.value=t),onCreated:m},null,8,["modelValue"])]))}}),ge=F(ke,[["__scopeId","data-v-511373f4"]]),$e={class:"password-settings"},ye={class:"section-header"},be={class:"section-subtitle"},we=P({__name:"PasswordSettings",setup(V){const{t:c}=q(),n=h(""),u=h(""),l=h(!1),_=h(null),m={required:t=>!!t||c("auth.field_required"),passwordLength:t=>t.length>=8||c("auth.password_min_length"),passwordMatch:t=>t===n.value||c("auth.passwords_must_match")},v=D(()=>n.value.length>=8&&n.value===u.value),p=async()=>{l.value=!0;try{await A.changePassword(n.value)?(U.success(c("auth.password_changed")),n.value="",u.value="",await ae(),_.value?.resetValidation()):U.error(c("auth.password_change_failed"))}catch(t){U.error(t.message||c("auth.password_change_failed"))}finally{l.value=!1}};return(t,w)=>(d(),k("div",$e,[o("div",ye,[o("h3",null,s(t.$t("auth.change_password")),1),o("p",be,s(t.$t("auth.update_your_password")),1)]),x(R).isIngressSession?(d(),C(ee,{key:0,type:"info",variant:"tonal",density:"compact",class:"mb-4"},{default:a(()=>[y(s(t.$t("auth.ingress_password_note")),1)]),_:1})):S("",!0),e(oe,{ref_key:"passwordForm",ref:_,onSubmit:E(p,["prevent"])},{default:a(()=>[e(L,{modelValue:n.value,"onUpdate:modelValue":w[0]||(w[0]=i=>n.value=i),label:t.$t("auth.new_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",rules:[m.required,m.passwordLength]},null,8,["modelValue","label","rules"]),e(L,{modelValue:u.value,"onUpdate:modelValue":w[1]||(w[1]=i=>u.value=i),label:t.$t("auth.confirm_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-4",rules:[m.required,m.passwordMatch]},null,8,["modelValue","label","rules"]),e($,{type:"submit",color:"primary",variant:"flat",loading:l.value,disabled:!v.value},{default:a(()=>[y(s(t.$t("auth.change_password")),1)]),_:1},8,["loading","disabled"])]),_:1},512)]))}}),Ve=F(we,[["__scopeId","data-v-36fba185"]]),Ce={class:"profile-settings"},Ue={class:"section-header"},Le={class:"section-subtitle"},Te={class:"avatar-section"},ze={class:"avatar-container"},Se={class:"avatar-wrapper"},De={class:"avatar-text mt-2"},Pe={class:"profile-fields"},Fe={class:"actions"},Ie={class:"d-flex flex-column align-center mb-4"},Ae=P({__name:"ProfileSettings",setup(V){const{t:c}=q(),n=D(()=>R.currentUser),u=h(""),l=h(""),_=h(""),m=h(!1),v=h(!1),p=h(""),t=h(!1),w={required:r=>!!r||c("auth.field_required"),usernameLength:r=>r.length>=3||c("auth.username_min_length")},i=D(()=>n.value?u.value!==n.value.username||l.value!==(n.value.display_name||"")||_.value!==(n.value.avatar_url||""):!1),g=()=>{n.value&&(u.value=n.value.username,l.value=n.value.display_name||"",_.value=n.value.avatar_url||"",p.value=n.value.avatar_url||"")},I=async()=>{if(!(!n.value||!i.value)){m.value=!0;try{const r={};u.value!==n.value.username&&(r.username=u.value),l.value!==(n.value.display_name||"")&&(r.displayName=l.value),_.value!==(n.value.avatar_url||"")&&(r.avatarUrl=_.value);const f=await A.updateUser(n.value.user_id,r);f&&(R.currentUser=f,g(),U.success(c("auth.profile_updated")))}catch(r){U.error(r.message||c("error_generic"))}finally{m.value=!1}}},Q=()=>{v.value=!1,p.value=_.value,t.value=!1},Y=()=>{_.value=p.value,v.value=!1,t.value=!1};return se(n,g,{immediate:!0}),(r,f)=>(d(),k("div",Ce,[o("div",Ue,[o("h3",null,s(r.$t("auth.account_settings")),1),o("p",Le,s(r.$t("auth.manage_your_profile_info")),1)]),o("div",Te,[o("div",ze,[o("div",Se,[e(T,{size:"120",class:"profile-avatar",color:_.value?void 0:"grey-darken-2"},{default:a(()=>[_.value?(d(),C(B,{key:0,src:_.value,onError:f[0]||(f[0]=b=>t.value=!0)},null,8,["src"])):(d(),C(z,{key:1,icon:"mdi-account",size:"64",color:"grey-lighten-1"}))]),_:1},8,["color"]),e($,{icon:"mdi-camera",size:"small",variant:"elevated",class:"avatar-edit-btn",color:"surface",onClick:f[1]||(f[1]=b=>v.value=!0)})]),o("div",De,[e($,{variant:"text",size:"small",class:"text-capitalize",onClick:f[2]||(f[2]=b=>v.value=!0)},{default:a(()=>[y(s(r.$t("auth.change_avatar")),1)]),_:1})])]),o("div",Pe,[e(L,{modelValue:u.value,"onUpdate:modelValue":f[3]||(f[3]=b=>u.value=b),label:r.$t("auth.username"),variant:"outlined",density:"comfortable",rules:[w.required,w.usernameLength],class:"mb-2"},null,8,["modelValue","label","rules"]),e(L,{modelValue:l.value,"onUpdate:modelValue":f[4]||(f[4]=b=>l.value=b),label:r.$t("auth.display_name"),variant:"outlined",density:"comfortable",hint:r.$t("optional"),"persistent-hint":"",class:"mb-2"},null,8,["modelValue","label","hint"]),e(L,{"model-value":r.$t(`auth.${n.value?.role}_role`),label:r.$t("auth.role"),variant:"outlined",density:"comfortable",readonly:"",disabled:""},null,8,["model-value","label"])])]),o("div",Fe,[i.value?(d(),C($,{key:0,variant:"text",color:"grey",onClick:g},{default:a(()=>[y(s(r.$t("cancel")),1)]),_:1})):S("",!0),e($,{color:"primary",variant:"flat",loading:m.value,disabled:!i.value,onClick:I},{default:a(()=>[y(s(r.$t("save")),1)]),_:1},8,["loading","disabled"])]),e(H,{modelValue:v.value,"onUpdate:modelValue":f[7]||(f[7]=b=>v.value=b),"max-width":"500"},{default:a(()=>[e(J,null,{default:a(()=>[e(K,{class:"text-h5"},{default:a(()=>[y(s(r.$t("auth.change_avatar")),1)]),_:1}),e(W,null,{default:a(()=>[o("div",Ie,[e(T,{size:"140",color:p.value?void 0:"grey-darken-2"},{default:a(()=>[p.value?(d(),C(B,{key:0,src:p.value,onError:f[5]||(f[5]=b=>t.value=!0)},null,8,["src"])):(d(),C(z,{key:1,icon:"mdi-account",size:"72",color:"grey-lighten-1"}))]),_:1},8,["color"])]),e(L,{modelValue:p.value,"onUpdate:modelValue":f[6]||(f[6]=b=>p.value=b),label:r.$t("auth.avatar_url"),variant:"outlined",hint:r.$t("auth.avatar_url_hint"),"persistent-hint":"",clearable:""},null,8,["modelValue","label","hint"])]),_:1}),e(X,null,{default:a(()=>[e(j),e($,{variant:"text",onClick:Q},{default:a(()=>[y(s(r.$t("cancel")),1)]),_:1}),e($,{color:"primary",variant:"flat",onClick:Y},{default:a(()=>[y(s(r.$t("save")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])]))}}),qe=F(Ae,[["__scopeId","data-v-e98d7828"]]),Ne={class:"session-tokens"},Re={class:"section-header"},Ee={class:"section-subtitle"},Be={key:0,class:"empty-state"},Me={class:"text-medium-emphasis"},Ge={key:1,class:"tokens-list"},He={class:"line-clamp-1"},Je={class:"token-meta"},Ke={key:0,class:"token-divider"},We={key:1},Xe=P({__name:"SessionTokensList",props:{tokens:{}},emits:["revoke"],setup(V,{emit:c}){const n=c,u=l=>new Date(l).toLocaleString();return(l,_)=>(d(),k("div",Ne,[o("div",Re,[o("h3",null,s(l.$t("auth.active_sessions")),1),o("p",Ee,s(l.$t("auth.manage_active_sessions")),1)]),V.tokens.length===0?(d(),k("div",Be,[e(T,{color:"blue-grey-darken-2",size:"64",class:"mb-3"},{default:a(()=>[e(z,{icon:"mdi-devices-off",size:"32"})]),_:1}),o("p",Me,s(l.$t("no_content")),1)])):(d(),k("div",Ge,[(d(!0),k(M,null,G(V.tokens,m=>(d(),C(O,{key:m.token_id},{prepend:a(()=>[e(T,{color:"blue-grey-darken-2",size:"40"},{default:a(()=>[e(z,{icon:"mdi-devices",size:"20"})]),_:1})]),title:a(()=>[o("div",He,s(m.name),1)]),subtitle:a(()=>[o("div",Je,[o("span",null,s(l.$t("created"))+": "+s(u(m.created_at)),1),m.last_used_at?(d(),k("span",Ke,"•")):S("",!0),m.last_used_at?(d(),k("span",We,s(l.$t("last_used"))+": "+s(u(m.last_used_at)),1)):S("",!0)])]),append:a(()=>[e($,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:E(v=>n("revoke",m),["stop"])},null,8,["onClick"])]),_:2},1024))),128))]))]))}}),je=F(Xe,[["__scopeId","data-v-984369e1"]]),Oe={class:"user-profile"},Qe={class:"profile-content"},Ye={class:"text-body-1 mb-4"},Ze={class:"token-name-box"},xe=P({__name:"UserProfile",setup(V){const{t:c}=q(),n=h([]),u=h(!1),l=h(null),_=h(!1),m=D(()=>n.value.filter(i=>!i.is_long_lived)),v=D(()=>n.value.filter(i=>i.is_long_lived)),p=async()=>{try{n.value=await A.getUserTokens()}catch(i){console.error("Failed to load tokens:",i)}},t=i=>{l.value=i,u.value=!0},w=async()=>{if(l.value){_.value=!0;try{if(await A.revokeToken(l.value.token_id)){await p();const g=!l.value.is_long_lived;U.success(c(g?"auth.session_revoked":"auth.token_revoked"))}else{const g=!l.value.is_long_lived;U.error(c(g?"auth.session_revoke_failed":"auth.token_revoke_failed"))}}catch(i){console.error("Failed to revoke token:",i);const g=!l.value?.is_long_lived;U.error(c(g?"auth.session_revoke_failed":"auth.token_revoke_failed"))}finally{u.value=!1,l.value=null,_.value=!1}}};return te(()=>{p()}),(i,g)=>(d(),k("div",Oe,[e(Z,{variant:"comfortable",class:"profile-container"},{default:a(()=>[o("div",Qe,[e(qe),e(N,{class:"my-6"}),e(Ve),e(N,{class:"my-6"}),e(je,{tokens:m.value,onRevoke:t},null,8,["tokens"]),e(N,{class:"my-6"}),e(ge,{tokens:v.value,onRevoke:t,onCreated:p},null,8,["tokens"])])]),_:1}),e(H,{modelValue:u.value,"onUpdate:modelValue":g[1]||(g[1]=I=>u.value=I),"max-width":"480"},{default:a(()=>[e(J,null,{default:a(()=>[e(K,{class:"text-h6 pl-6 pb-0 mt-3"},{default:a(()=>[y(s(l.value?.is_long_lived?i.$t("auth.revoke_token"):i.$t("auth.revoke_session")),1)]),_:1}),e(W,{class:"px-6 pb-2"},{default:a(()=>[o("p",Ye,s(l.value?.is_long_lived?i.$t("auth.revoke_token_confirm"):i.$t("auth.revoke_session_confirm")),1),o("div",Ze,s(l.value?.name),1)]),_:1}),e(X,{class:"pa-6 pt-4"},{default:a(()=>[e(j),e($,{variant:"text",onClick:g[0]||(g[0]=I=>u.value=!1)},{default:a(()=>[y(s(i.$t("cancel")),1)]),_:1}),e($,{color:"error",variant:"flat",loading:_.value,onClick:w},{default:a(()=>[y(s(i.$t("auth.revoke")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]))}}),ra=F(xe,[["__scopeId","data-v-4961f1fb"]]);export{ra as default};
@@ -0,0 +1 @@
1
+ .v-checkbox.v-input{flex:0 1 auto}.v-checkbox .v-selection-control{min-height:var(--v-input-control-height)}
@@ -0,0 +1 @@
1
+ import{V as l,m as g}from"./VCheckboxBtn-Dik76WyM.js";import{g as A,p as F,j as R,dh as B,J as j,ay as U,n as w,dm as D,di as r,o as u,ae as d,ap as J,ai as M,dj as N}from"./index-D2rF_80D.js";const $=F({...N(),...M(g(),["inline"])},"VCheckbox"),E=A()({name:"VCheckbox",inheritAttrs:!1,props:$(),emits:{"update:modelValue":e=>!0,"update:focused":e=>!0},setup(e,c){let{attrs:n,slots:o}=c;const s=R(e,"modelValue"),{isFocused:i,focus:m,blur:V}=B(e),t=j(),f=U();return w(()=>{const[p,b]=D(n),k=r.filterProps(e),v=l.filterProps(e);return u(r,d({ref:t,class:["v-checkbox",e.class]},p,k,{modelValue:s.value,"onUpdate:modelValue":a=>s.value=a,id:e.id||`checkbox-${f}`,focused:i.value,style:e.style}),{...o,default:a=>{let{id:h,messagesId:x,isDisabled:P,isReadonly:y,isValid:C}=a;return u(l,d(v,{id:h.value,"aria-describedby":x.value,disabled:P.value,readonly:y.value},b,{error:C.value===!1,modelValue:s.value,"onUpdate:modelValue":I=>s.value=I,onFocus:m,onBlur:V}),o)}})}),J({},t)}});export{E as V};
@@ -1 +1 @@
1
- import{V as a,m as f}from"./VSelectionControl-BU644enI.js";import{g as V,p as v,j as c,t as l,n as I,ai as k,o as x,ae as h,cA as b}from"./index-Co2Il0FF.js";const C=v({indeterminate:Boolean,indeterminateIcon:{type:b,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=V()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(o){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),m=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return I(()=>{const o=k(a.filterProps(e),["modelValue"]);return x(a,h(o,{modelValue:n.value,"onUpdate:modelValue":[d=>n.value=d,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:m.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m};
1
+ import{V as a,m as f}from"./VSelectionControl-BHjDOTFl.js";import{g as V,p as v,j as c,t as l,n as I,ai as k,o as x,ae as h,cX as b}from"./index-D2rF_80D.js";const C=v({indeterminate:Boolean,indeterminateIcon:{type:b,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=V()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(o){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),m=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return I(()=>{const o=k(a.filterProps(e),["modelValue"]);return x(a,h(o,{modelValue:n.value,"onUpdate:modelValue":[d=>n.value=d,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:m.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m};
@@ -0,0 +1 @@
1
+ import{g as m,p as P,T as h,W as N,n as b,o as i,da as j,Z as q,C as E,N as w,X,E as u,q as y,r as v,db as I,c as A,cq as F,i as f,t as l,an as B,cs as O,cX as k,bp as U,U as W,e as Z,f as H,x as _,z as J,$ as K,A as M,S as Q,l as Y,G as ee,m as ae,v as ne,av as le,w as te}from"./index-D2rF_80D.js";const x=Symbol.for("vuetify:v-expansion-panel"),D=P({...E(),...q()},"VExpansionPanelText"),C=m()({name:"VExpansionPanelText",props:D(),setup(e,c){let{slots:n}=c;const a=h(x);if(!a)throw new Error("[Vuetify] v-expansion-panel-text needs to be placed inside v-expansion-panel");const{hasContent:s,onAfterLeave:d}=N(e,a.isSelected);return b(()=>i(j,{onAfterLeave:d},{default:()=>[w(u("div",{class:v(["v-expansion-panel-text",e.class]),style:y(e.style)},[n.default&&s.value&&u("div",{class:"v-expansion-panel-text__wrapper"},[n.default?.()])]),[[X,a.isSelected.value]])]})),{}}}),R=P({color:String,expandIcon:{type:k,default:"$expand"},collapseIcon:{type:k,default:"$collapse"},hideActions:Boolean,focusable:Boolean,static:Boolean,ripple:{type:[Boolean,Object],default:!1},readonly:Boolean,...E(),...O()},"VExpansionPanelTitle"),T=m()({name:"VExpansionPanelTitle",directives:{vRipple:I},props:R(),setup(e,c){let{slots:n}=c;const a=h(x);if(!a)throw new Error("[Vuetify] v-expansion-panel-title needs to be placed inside v-expansion-panel");const{backgroundColorClasses:s,backgroundColorStyles:d}=A(()=>e.color),{dimensionStyles:r}=F(e),p=f(()=>({collapseIcon:e.collapseIcon,disabled:a.disabled.value,expanded:a.isSelected.value,expandIcon:e.expandIcon,readonly:e.readonly})),V=l(()=>a.isSelected.value?e.collapseIcon:e.expandIcon);return b(()=>w(u("button",{class:v(["v-expansion-panel-title",{"v-expansion-panel-title--active":a.isSelected.value,"v-expansion-panel-title--focusable":e.focusable,"v-expansion-panel-title--static":e.static},s.value,e.class]),style:y([d.value,r.value,e.style]),type:"button",tabindex:a.disabled.value?-1:void 0,disabled:a.disabled.value,"aria-expanded":a.isSelected.value,onClick:e.readonly?void 0:a.toggle},[u("span",{class:"v-expansion-panel-title__overlay"},null),n.default?.(p.value),!e.hideActions&&i(B,{defaults:{VIcon:{icon:V.value}}},{default:()=>[u("span",{class:"v-expansion-panel-title__icon"},[n.actions?.(p.value)??i(U,null,null)])]})]),[[I,e.ripple]])),{}}}),z=P({title:String,text:String,bgColor:String,...M(),...K(),...J(),..._(),...R(),...D()},"VExpansionPanel"),ce=m()({name:"VExpansionPanel",props:z(),emits:{"group:selected":e=>!0},setup(e,c){let{slots:n}=c;const a=W(e,x),{backgroundColorClasses:s,backgroundColorStyles:d}=A(()=>e.bgColor),{elevationClasses:r}=Z(e),{roundedClasses:p}=H(e),V=l(()=>a?.disabled.value||e.disabled),S=f(()=>a.group.items.value.reduce((o,t,g)=>(a.group.selected.value.includes(t.id)&&o.push(g),o),[])),G=f(()=>{const o=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&S.value.some(t=>t-o===1)}),L=f(()=>{const o=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&S.value.some(t=>t-o===-1)});return Q(x,a),b(()=>{const o=!!(n.text||e.text),t=!!(n.title||e.title),g=T.filterProps(e),$=C.filterProps(e);return i(e.tag,{class:v(["v-expansion-panel",{"v-expansion-panel--active":a.isSelected.value,"v-expansion-panel--before-active":G.value,"v-expansion-panel--after-active":L.value,"v-expansion-panel--disabled":V.value},p.value,s.value,e.class]),style:y([d.value,e.style])},{default:()=>[u("div",{class:v(["v-expansion-panel__shadow",...r.value])},null),i(B,{defaults:{VExpansionPanelTitle:{...g},VExpansionPanelText:{...$}}},{default:()=>[t&&i(T,{key:"title"},{default:()=>[n.title?n.title():e.title]}),o&&i(C,{key:"text"},{default:()=>[n.text?n.text():e.text]}),n.default?.()]})]})}),{groupItem:a}}}),se=["default","accordion","inset","popout"],oe=P({flat:Boolean,...te(),...le(z(),["bgColor","collapseIcon","color","eager","elevation","expandIcon","focusable","hideActions","readonly","ripple","rounded","tile","static"]),...ne(),...E(),..._(),variant:{type:String,default:"default",validator:e=>se.includes(e)}},"VExpansionPanels"),de=m()({name:"VExpansionPanels",props:oe(),emits:{"update:modelValue":e=>!0},setup(e,c){let{slots:n}=c;const{next:a,prev:s}=Y(e,x),{themeClasses:d}=ee(e),r=l(()=>e.variant&&`v-expansion-panels--variant-${e.variant}`);return ae({VExpansionPanel:{bgColor:l(()=>e.bgColor),collapseIcon:l(()=>e.collapseIcon),color:l(()=>e.color),eager:l(()=>e.eager),elevation:l(()=>e.elevation),expandIcon:l(()=>e.expandIcon),focusable:l(()=>e.focusable),hideActions:l(()=>e.hideActions),readonly:l(()=>e.readonly),ripple:l(()=>e.ripple),rounded:l(()=>e.rounded),static:l(()=>e.static)}}),b(()=>i(e.tag,{class:v(["v-expansion-panels",{"v-expansion-panels--flat":e.flat,"v-expansion-panels--tile":e.tile},d.value,r.value,e.class]),style:y(e.style)},{default:()=>[n.default?.({prev:s,next:a})]})),{next:a,prev:s}}});export{de as V,ce as a,T as b,C as c};
@@ -1 +1 @@
1
- import{g as d,p,d1 as v,J as b,n as y,E as F,q as V,r as h,ap as R,d2 as C,C as P}from"./index-Co2Il0FF.js";const k=p({...P(),...C()},"VForm"),g=d()({name:"VForm",props:k(),emits:{"update:modelValue":a=>!0,submit:a=>!0},setup(a,n){let{slots:m,emit:l}=n;const s=v(a),o=b();function i(r){r.preventDefault(),s.reset()}function f(r){const t=r,e=s.validate();t.then=e.then.bind(e),t.catch=e.catch.bind(e),t.finally=e.finally.bind(e),l("submit",t),t.defaultPrevented||e.then(u=>{let{valid:c}=u;c&&o.value?.submit()}),t.preventDefault()}return y(()=>F("form",{ref:o,class:h(["v-form",a.class]),style:V(a.style),novalidate:!0,onReset:i,onSubmit:f},[m.default?.(s)])),R(s,o)}});export{g as V};
1
+ import{g as d,p,du as v,J as b,n as y,E as F,q as V,r as h,ap as R,dv as C,C as P}from"./index-D2rF_80D.js";const k=p({...P(),...C()},"VForm"),g=d()({name:"VForm",props:k(),emits:{"update:modelValue":a=>!0,submit:a=>!0},setup(a,n){let{slots:m,emit:l}=n;const s=v(a),o=b();function i(r){r.preventDefault(),s.reset()}function u(r){const t=r,e=s.validate();t.then=e.then.bind(e),t.catch=e.catch.bind(e),t.finally=e.finally.bind(e),l("submit",t),t.defaultPrevented||e.then(f=>{let{valid:c}=f;c&&o.value?.submit()}),t.preventDefault()}return y(()=>F("form",{ref:o,class:h(["v-form",a.class]),style:V(a.style),novalidate:!0,onReset:i,onSubmit:u},[m.default?.(s)])),R(s,o)}});export{g as V};
@@ -1 +1 @@
1
- import{g as L,p as N,J as R,K as w,i as _,s as $,a3 as E,I as B,bZ as D,n as A,o as c,q as H,r as W,x as J,b$ as K,R as v,cq as O,cr as U,L as Z,E as g,bh as j,b8 as q,M as G}from"./index-Co2Il0FF.js";const Q=N({color:String,direction:{type:String,default:"vertical",validator:e=>["vertical","horizontal"].includes(e)},side:{type:String,default:"end",validator:e=>["start","end","both"].includes(e)},mode:{type:String,default:"intersect",validator:e=>["intersect","manual"].includes(e)},margin:[Number,String],loadMoreText:{type:String,default:"$vuetify.infiniteScroll.loadMore"},emptyText:{type:String,default:"$vuetify.infiniteScroll.empty"},...K(),...J()},"VInfiniteScroll"),x=O({name:"VInfiniteScrollIntersect",props:{side:{type:String,required:!0},rootMargin:String},emits:{intersect:(e,d)=>!0},setup(e,d){let{emit:o}=d;const{intersectionRef:S,isIntersecting:i}=U();return Z(i,async a=>{o("intersect",e.side,a)}),A(()=>g("div",{class:"v-infinite-scroll-intersect",style:{"--v-infinite-margin-size":e.rootMargin},ref:S},[j(" ")])),{}}}),Y=L()({name:"VInfiniteScroll",props:Q(),emits:{load:e=>!0},setup(e,d){let{slots:o,emit:S}=d;const i=R(),a=w("ok"),f=w("ok"),b=_(()=>$(e.margin)),y=w(!1);function m(t){if(!i.value)return;const n=e.direction==="vertical"?"scrollTop":"scrollLeft";i.value[n]=t}function k(){if(!i.value)return 0;const t=e.direction==="vertical"?"scrollTop":"scrollLeft";return i.value[t]}function u(){if(!i.value)return 0;const t=e.direction==="vertical"?"scrollHeight":"scrollWidth";return i.value[t]}function z(){if(!i.value)return 0;const t=e.direction==="vertical"?"clientHeight":"clientWidth";return i.value[t]}E(()=>{i.value&&(e.side==="start"?m(u()):e.side==="both"&&m(u()/2-z()/2))});function h(t,n){t==="start"?a.value=n:t==="end"?f.value=n:t==="both"&&(a.value=n,f.value=n)}function C(t){return t==="start"?a.value:f.value}let I=0;function V(t,n){y.value=n,y.value&&s(t)}function s(t){if(e.mode!=="manual"&&!y.value)return;const n=C(t);if(!i.value||["empty","loading"].includes(n))return;I=u(),h(t,"loading");function l(r){h(t,r),v(()=>{r==="empty"||r==="error"||(r==="ok"&&t==="start"&&m(u()-I+k()),e.mode!=="manual"&&v(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{s(t)})})})}))})}S("load",{side:t,done:l})}const{t:T}=B();function M(t,n){if(e.side!==t&&e.side!=="both")return;const l=()=>s(t),r={side:t,props:{onClick:l,color:e.color}};return n==="error"?o.error?.(r):n==="empty"?o.empty?.(r)??g("div",null,[T(e.emptyText)]):e.mode==="manual"?n==="loading"?o.loading?.(r)??c(q,{indeterminate:!0,color:e.color},null):o["load-more"]?.(r)??c(G,{variant:"outlined",color:e.color,onClick:l},{default:()=>[T(e.loadMoreText)]}):o.loading?.(r)??c(q,{indeterminate:!0,color:e.color},null)}const{dimensionStyles:F}=D(e);A(()=>{const t=e.tag,n=e.side==="start"||e.side==="both",l=e.side==="end"||e.side==="both",r=e.mode==="intersect";return c(t,{ref:i,class:W(["v-infinite-scroll",`v-infinite-scroll--${e.direction}`,{"v-infinite-scroll--start":n,"v-infinite-scroll--end":l}]),style:H(F.value)},{default:()=>[g("div",{class:"v-infinite-scroll__side"},[M("start",a.value)]),n&&r&&c(x,{key:"start",side:"start",onIntersect:V,rootMargin:b.value},null),o.default?.(),l&&r&&c(x,{key:"end",side:"end",onIntersect:V,rootMargin:b.value},null),g("div",{class:"v-infinite-scroll__side"},[M("end",f.value)])]})});function P(t){const n=t??e.side;h(n,"ok"),v(()=>{n!=="end"&&m(u()-I+k()),e.mode!=="manual"&&v(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{n==="both"?(s("start"),s("end")):s(n)})})})})})}return{reset:P}}});export{Y as V};
1
+ import{g as L,p as N,J as R,K as w,i as _,s as E,a3 as $,I as B,cq as D,n as A,o as c,q as H,r as W,x as J,cs as K,R as v,cS as O,cT as U,L as j,E as g,aV as G,by as q,M as Q}from"./index-D2rF_80D.js";const X=N({color:String,direction:{type:String,default:"vertical",validator:e=>["vertical","horizontal"].includes(e)},side:{type:String,default:"end",validator:e=>["start","end","both"].includes(e)},mode:{type:String,default:"intersect",validator:e=>["intersect","manual"].includes(e)},margin:[Number,String],loadMoreText:{type:String,default:"$vuetify.infiniteScroll.loadMore"},emptyText:{type:String,default:"$vuetify.infiniteScroll.empty"},...K(),...J()},"VInfiniteScroll"),x=O({name:"VInfiniteScrollIntersect",props:{side:{type:String,required:!0},rootMargin:String},emits:{intersect:(e,d)=>!0},setup(e,d){let{emit:o}=d;const{intersectionRef:S,isIntersecting:i}=U();return j(i,async a=>{o("intersect",e.side,a)}),A(()=>g("div",{class:"v-infinite-scroll-intersect",style:{"--v-infinite-margin-size":e.rootMargin},ref:S},[G(" ")])),{}}}),Z=L()({name:"VInfiniteScroll",props:X(),emits:{load:e=>!0},setup(e,d){let{slots:o,emit:S}=d;const i=R(),a=w("ok"),f=w("ok"),V=_(()=>E(e.margin)),y=w(!1);function m(t){if(!i.value)return;const n=e.direction==="vertical"?"scrollTop":"scrollLeft";i.value[n]=t}function k(){if(!i.value)return 0;const t=e.direction==="vertical"?"scrollTop":"scrollLeft";return i.value[t]}function u(){if(!i.value)return 0;const t=e.direction==="vertical"?"scrollHeight":"scrollWidth";return i.value[t]}function z(){if(!i.value)return 0;const t=e.direction==="vertical"?"clientHeight":"clientWidth";return i.value[t]}$(()=>{i.value&&(e.side==="start"?m(u()):e.side==="both"&&m(u()/2-z()/2))});function I(t,n){t==="start"?a.value=n:t==="end"?f.value=n:t==="both"&&(a.value=n,f.value=n)}function C(t){return t==="start"?a.value:f.value}let h=0;function T(t,n){y.value=n,y.value&&s(t)}function s(t){if(e.mode!=="manual"&&!y.value)return;const n=C(t);if(!i.value||["empty","loading"].includes(n))return;h=u(),I(t,"loading");function l(r){I(t,r),v(()=>{r==="empty"||r==="error"||(r==="ok"&&t==="start"&&m(u()-h+k()),e.mode!=="manual"&&v(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{s(t)})})})}))})}S("load",{side:t,done:l})}const{t:b}=B();function M(t,n){if(e.side!==t&&e.side!=="both")return;const l=()=>s(t),r={side:t,props:{onClick:l,color:e.color}};return n==="error"?o.error?.(r):n==="empty"?o.empty?.(r)??g("div",null,[b(e.emptyText)]):e.mode==="manual"?n==="loading"?o.loading?.(r)??c(q,{indeterminate:!0,color:e.color},null):o["load-more"]?.(r)??c(Q,{variant:"outlined",color:e.color,onClick:l},{default:()=>[b(e.loadMoreText)]}):o.loading?.(r)??c(q,{indeterminate:!0,color:e.color},null)}const{dimensionStyles:F}=D(e);A(()=>{const t=e.tag,n=e.side==="start"||e.side==="both",l=e.side==="end"||e.side==="both",r=e.mode==="intersect";return c(t,{ref:i,class:W(["v-infinite-scroll",`v-infinite-scroll--${e.direction}`,{"v-infinite-scroll--start":n,"v-infinite-scroll--end":l}]),style:H(F.value)},{default:()=>[g("div",{class:"v-infinite-scroll__side"},[M("start",a.value)]),n&&r&&c(x,{key:"start",side:"start",onIntersect:T,rootMargin:V.value},null),o.default?.(),l&&r&&c(x,{key:"end",side:"end",onIntersect:T,rootMargin:V.value},null),g("div",{class:"v-infinite-scroll__side"},[M("end",f.value)])]})});function P(t){const n=t??e.side;I(n,"ok"),v(()=>{n!=="end"&&m(u()-h+k()),e.mode!=="manual"&&v(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{n==="both"?(s("start"),s("end")):s(n)})})})})})}return{reset:P}}});export{Z as V};
@@ -1 +1 @@
1
- import{K as le,L as N,I as ae,ct as be,i as I,t as $,dg as W,p as U,g as ke,J as F,d6 as we,j as Q,c_ as Ce,cQ as Pe,dh as xe,cZ as H,n as Se,bH as Y,o as v,ae as y,ap as Ie,cE as Ae,ai as De,cO as Le,d8 as Te,db as Z,c$ as G,di as Be,cA as Ee,R as Re,O as Fe,E as b,aL as X,ah as M,b4 as _e,aF as Oe,aJ as ee,dj as Ke,aU as $e,dd as He,bE as Me,bK as te,de as Ne,an as Ue,bh as qe}from"./index-Co2Il0FF.js";import{V as je}from"./VVirtualScroll-Bmp7pEa7.js";import{V as ze}from"./VCheckboxBtn-pFfosXS7.js";function Je(e,A){const a=le(!1);let k;function f(n){cancelAnimationFrame(k),a.value=!0,k=requestAnimationFrame(()=>{k=requestAnimationFrame(()=>{a.value=!1})})}async function D(){await new Promise(n=>requestAnimationFrame(n)),await new Promise(n=>requestAnimationFrame(n)),await new Promise(n=>requestAnimationFrame(n)),await new Promise(n=>{if(a.value){const p=N(a,()=>{p(),n()})}else n()})}async function w(n){if(n.key==="Tab"&&A.value?.focus(),!["PageDown","PageUp","Home","End"].includes(n.key))return;const p=e.value?.$el;if(!p)return;(n.key==="Home"||n.key==="End")&&p.scrollTo({top:n.key==="Home"?0:p.scrollHeight,behavior:"smooth"}),await D();const B=p.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(n.key==="PageDown"||n.key==="Home"){const o=p.getBoundingClientRect().top;for(const C of B)if(C.getBoundingClientRect().top>=o){C.focus();break}}else{const o=p.getBoundingClientRect().bottom;for(const C of[...B].reverse())if(C.getBoundingClientRect().bottom<=o){C.focus();break}}}return{onScrollPassive:f,onKeydown:w}}const We=U({closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"}},"autocomplete");function Qe(e,A){const{t:a}=ae(),k=be(),f=I(()=>`menu-${k}`),D=$(()=>W(A)),w=$(()=>f.value),n=$(()=>a(W(A)?e.closeText:e.openText));return{menuId:f,ariaExpanded:D,ariaControls:w,ariaLabel:n}}const Ye=U({chips:Boolean,closableChips:Boolean,eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuIcon:{type:Ee,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,noAutoScroll:Boolean,...We(),...Be({itemChildren:!1})},"Select"),Ze=U({...Ye(),...De(Te({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...Ae({transition:{component:Le}})},"VSelect"),tt=ke()({name:"VSelect",props:Ze(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,A){let{slots:a}=A;const{t:k}=ae(),f=F(),D=F(),w=F(),{items:n,transformIn:p,transformOut:B}=we(e),o=Q(e,"modelValue",[],t=>p(t===null?[null]:Ce(t)),t=>{const s=B(t);return e.multiple?s:s[0]??null}),C=I(()=>typeof e.counterValue=="function"?e.counterValue(o.value):typeof e.counterValue=="number"?e.counterValue:o.value.length),_=Pe(e),ne=xe(e),q=I(()=>o.value.map(t=>t.value)),P=le(!1);let g="",E=-1,j;const L=I(()=>e.hideSelected?n.value.filter(t=>!o.value.some(s=>(e.valueComparator||H)(s,t))):n.value),O=I(()=>e.hideNoData&&!L.value.length||_.isReadonly.value||_.isDisabled.value),K=Q(e,"menu"),r=I({get:()=>K.value,set:t=>{K.value&&!t&&D.value?.ΨopenChildren.size||t&&O.value||(K.value=t)}}),{menuId:oe,ariaExpanded:ue,ariaControls:ie,ariaLabel:z}=Qe(e,r),se=I(()=>({...e.menuProps,activatorProps:{...e.menuProps?.activatorProps||{},"aria-haspopup":"listbox"}})),T=F(),re=Je(T,f);function ce(t){e.openOnClear&&(r.value=!0)}function de(){O.value||(r.value=!r.value)}function fe(t){Z(t)&&J(t)}function J(t){if(!t.key||_.isReadonly.value)return;["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(t.key)&&t.preventDefault(),["Enter","ArrowDown"," "].includes(t.key)&&(r.value=!0),["Escape","Tab"].includes(t.key)&&(r.value=!1),t.key==="Home"?T.value?.focus("first"):t.key==="End"&&T.value?.focus("last");const s=1e3;if(!Z(t))return;const c=performance.now();c-j>s&&(g="",E=-1),g+=t.key.toLowerCase(),j=c;const x=L.value;function V(){let i=l();return i||g.at(-1)===g.at(-2)&&(g=g.slice(0,-1),i=l(),i)||(E=-1,i=l(),i)?i:(g=t.key.toLowerCase(),l())}function l(){for(let i=E+1;i<x.length;i++){const h=x[i];if(h.title.toLowerCase().startsWith(g))return[h,i]}}const u=V();if(!u)return;const[d,S]=u;E=S,T.value?.focus(S),e.multiple||(o.value=[d])}function R(t){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!t.props.disabled)if(e.multiple){const c=o.value.findIndex(V=>(e.valueComparator||H)(V.value,t.value)),x=s??!~c;if(~c){const V=x?[...o.value,t]:[...o.value];V.splice(c,1),o.value=V}else x&&(o.value=[...o.value,t])}else{const c=s!==!1;o.value=c?[t]:[],Re(()=>{r.value=!1})}}function ve(t){T.value?.$el.contains(t.relatedTarget)||(r.value=!1)}function me(){e.eager&&w.value?.calculateVisibleItems()}function pe(){P.value&&f.value?.focus()}function he(t){P.value=!0}function ye(t){if(t==null)o.value=[];else if(G(f.value,":autofill")||G(f.value,":-webkit-autofill")){const s=n.value.find(c=>c.title===t);s&&R(s)}else f.value&&(f.value.value="")}return N(r,()=>{if(!e.hideSelected&&r.value&&o.value.length){const t=L.value.findIndex(s=>o.value.some(c=>(e.valueComparator||H)(c.value,s.value)));Fe&&!e.noAutoScroll&&window.requestAnimationFrame(()=>{t>=0&&w.value?.scrollToIndex(t)})}}),N(n,(t,s)=>{r.value||P.value&&e.hideNoData&&!s.length&&t.length&&(r.value=!0)}),Se(()=>{const t=!!(e.chips||a.chip),s=!!(!e.hideNoData||L.value.length||a["prepend-item"]||a["append-item"]||a["no-data"]),c=o.value.length>0,x=Y.filterProps(e),V=c||!P.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder;return v(Y,y({ref:f},x,{modelValue:o.value.map(l=>l.props.title).join(", "),name:void 0,"onUpdate:modelValue":ye,focused:P.value,"onUpdate:focused":l=>P.value=l,validationValue:o.externalValue,counterValue:C.value,dirty:c,class:["v-select",{"v-select--active-menu":r.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":o.value.length,"v-select--selection-slot":!!a.selection},e.class],style:e.style,inputmode:"none",placeholder:V,"onClick:clear":ce,"onMousedown:control":de,onBlur:ve,onKeydown:J,"aria-expanded":ue.value,"aria-controls":ie.value,"aria-label":z.value,title:z.value}),{...a,default:()=>b(M,null,[b("select",{hidden:!0,multiple:e.multiple,name:ne.fieldName.value},[n.value.map(l=>b("option",{key:l.value,value:l.value,selected:q.value.includes(l.value)},null))]),v(_e,y({id:oe.value,ref:D,modelValue:r.value,"onUpdate:modelValue":l=>r.value=l,activator:"parent",contentClass:"v-select__content",disabled:O.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:me,onAfterLeave:pe},se.value),{default:()=>[s&&v(Oe,y({ref:T,selected:q.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:l=>l.preventDefault(),onKeydown:fe,onFocusin:he,tabindex:"-1",selectable:!0,"aria-live":"polite","aria-label":`${e.label}-list`,color:e.itemColor??e.color},re,e.listProps),{default:()=>[a["prepend-item"]?.(),!L.value.length&&!e.hideNoData&&(a["no-data"]?.()??v(ee,{key:"no-data",title:k(e.noDataText)},null)),v(je,{ref:w,renderless:!0,items:L.value,itemKey:"value"},{default:l=>{let{item:u,index:d,itemRef:S}=l;const i=Ke(u.props),h=y(u.props,{ref:S,key:u.value,onClick:()=>R(u,null)});return u.type==="divider"?a.divider?.({props:u.raw,index:d})??v($e,y(u.props,{key:`divider-${d}`}),null):u.type==="subheader"?a.subheader?.({props:u.raw,index:d})??v(He,y(u.props,{key:`subheader-${d}`}),null):a.item?.({item:u,index:d,props:h})??v(ee,y(h,{role:"option"}),{prepend:m=>{let{isSelected:ge}=m;return b(M,null,[e.multiple&&!e.hideSelected?v(ze,{key:u.value,modelValue:ge,ripple:!1,tabindex:"-1",onClick:Ve=>Ve.preventDefault()},null):void 0,i.prependAvatar&&v(Me,{image:i.prependAvatar},null),i.prependIcon&&v(X,{icon:i.prependIcon},null)])}})}}),a["append-item"]?.()]})]}),o.value.map((l,u)=>{function d(m){m.stopPropagation(),m.preventDefault(),R(l,!1)}const S=y(te.filterProps(l.props),{"onClick:close":d,onKeydown(m){m.key!=="Enter"&&m.key!==" "||(m.preventDefault(),m.stopPropagation(),d(m))},onMousedown(m){m.preventDefault(),m.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),i=t?!!a.chip:!!a.selection,h=i?Ne(t?a.chip({item:l,index:u,props:S}):a.selection({item:l,index:u})):void 0;if(!(i&&!h))return b("div",{key:l.value,class:"v-select__selection"},[t?a.chip?v(Ue,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:l.title}}},{default:()=>[h]}):v(te,y({key:"chip",closable:e.closableChips,size:"small",text:l.title,disabled:l.props.disabled},S),null):h??b("span",{class:"v-select__selection-text"},[l.title,e.multiple&&u<o.value.length-1&&b("span",{class:"v-select__selection-comma"},[qe(",")])])])})]),"append-inner":function(){for(var l=arguments.length,u=new Array(l),d=0;d<l;d++)u[d]=arguments[d];return b(M,null,[a["append-inner"]?.(...u),e.menuIcon?v(X,{class:"v-select__menu-icon",color:f.value?.fieldIconColor,icon:e.menuIcon},null):void 0])}})}),Ie({isFocused:P,menu:r,select:R},f)}});export{tt as V,Je as a,Ye as m,Qe as u};
1
+ import{K as le,L as N,I as ae,ay as be,i as I,t as O,aI as W,p as q,g as ke,J as F,dz as we,j as G,ds as Ce,dd as Pe,dJ as xe,dr as $,n as Se,c8 as X,o as v,ae as y,ap as Ie,c$ as Ae,ai as De,dK as Le,dB as Te,dE as Y,dt as Q,dL as Be,cX as Re,R as Ee,O as Fe,E as b,bp as Z,ah as H,bv as _e,bj as Ke,bk as ee,dM as Me,bi as Oe,dG as $e,b_ as He,c7 as te,dH as Ne,an as qe,aV as Ue}from"./index-D2rF_80D.js";import{V as ze}from"./VVirtualScroll-CG155sfU.js";import{V as je}from"./VCheckboxBtn-Dik76WyM.js";function Je(e,A){const a=le(!1);let k;function f(n){cancelAnimationFrame(k),a.value=!0,k=requestAnimationFrame(()=>{k=requestAnimationFrame(()=>{a.value=!1})})}async function D(){await new Promise(n=>requestAnimationFrame(n)),await new Promise(n=>requestAnimationFrame(n)),await new Promise(n=>requestAnimationFrame(n)),await new Promise(n=>{if(a.value){const p=N(a,()=>{p(),n()})}else n()})}async function w(n){if(n.key==="Tab"&&A.value?.focus(),!["PageDown","PageUp","Home","End"].includes(n.key))return;const p=e.value?.$el;if(!p)return;(n.key==="Home"||n.key==="End")&&p.scrollTo({top:n.key==="Home"?0:p.scrollHeight,behavior:"smooth"}),await D();const B=p.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(n.key==="PageDown"||n.key==="Home"){const o=p.getBoundingClientRect().top;for(const C of B)if(C.getBoundingClientRect().top>=o){C.focus();break}}else{const o=p.getBoundingClientRect().bottom;for(const C of[...B].reverse())if(C.getBoundingClientRect().bottom<=o){C.focus();break}}}return{onScrollPassive:f,onKeydown:w}}const We=q({closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"}},"autocomplete");function Ge(e,A){const{t:a}=ae(),k=be(),f=I(()=>`menu-${k}`),D=O(()=>W(A)),w=O(()=>f.value),n=O(()=>a(W(A)?e.closeText:e.openText));return{menuId:f,ariaExpanded:D,ariaControls:w,ariaLabel:n}}const Xe=q({chips:Boolean,closableChips:Boolean,eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuIcon:{type:Re,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,noAutoScroll:Boolean,...We(),...Be({itemChildren:!1})},"Select"),Ye=q({...Xe(),...De(Te({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...Ae({transition:{component:Le}})},"VSelect"),tt=ke()({name:"VSelect",props:Ye(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,A){let{slots:a}=A;const{t:k}=ae(),f=F(),D=F(),w=F(),{items:n,transformIn:p,transformOut:B}=we(e),o=G(e,"modelValue",[],t=>p(t===null?[null]:Ce(t)),t=>{const s=B(t);return e.multiple?s:s[0]??null}),C=I(()=>typeof e.counterValue=="function"?e.counterValue(o.value):typeof e.counterValue=="number"?e.counterValue:o.value.length),_=Pe(e),ne=xe(e),U=I(()=>o.value.map(t=>t.value)),P=le(!1);let g="",R=-1,z;const L=I(()=>e.hideSelected?n.value.filter(t=>!o.value.some(s=>(e.valueComparator||$)(s,t))):n.value),K=I(()=>e.hideNoData&&!L.value.length||_.isReadonly.value||_.isDisabled.value),M=G(e,"menu"),r=I({get:()=>M.value,set:t=>{M.value&&!t&&D.value?.ΨopenChildren.size||t&&K.value||(M.value=t)}}),{menuId:oe,ariaExpanded:ue,ariaControls:ie,ariaLabel:j}=Ge(e,r),se=I(()=>({...e.menuProps,activatorProps:{...e.menuProps?.activatorProps||{},"aria-haspopup":"listbox"}})),T=F(),re=Je(T,f);function ce(t){e.openOnClear&&(r.value=!0)}function de(){K.value||(r.value=!r.value)}function fe(t){Y(t)&&J(t)}function J(t){if(!t.key||_.isReadonly.value)return;["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(t.key)&&t.preventDefault(),["Enter","ArrowDown"," "].includes(t.key)&&(r.value=!0),["Escape","Tab"].includes(t.key)&&(r.value=!1),t.key==="Home"?T.value?.focus("first"):t.key==="End"&&T.value?.focus("last");const s=1e3;if(!Y(t))return;const c=performance.now();c-z>s&&(g="",R=-1),g+=t.key.toLowerCase(),z=c;const x=L.value;function V(){let i=l();return i||g.at(-1)===g.at(-2)&&(g=g.slice(0,-1),i=l(),i)||(R=-1,i=l(),i)?i:(g=t.key.toLowerCase(),l())}function l(){for(let i=R+1;i<x.length;i++){const h=x[i];if(h.title.toLowerCase().startsWith(g))return[h,i]}}const u=V();if(!u)return;const[d,S]=u;R=S,T.value?.focus(S),e.multiple||(o.value=[d])}function E(t){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!t.props.disabled)if(e.multiple){const c=o.value.findIndex(V=>(e.valueComparator||$)(V.value,t.value)),x=s??!~c;if(~c){const V=x?[...o.value,t]:[...o.value];V.splice(c,1),o.value=V}else x&&(o.value=[...o.value,t])}else{const c=s!==!1;o.value=c?[t]:[],Ee(()=>{r.value=!1})}}function ve(t){T.value?.$el.contains(t.relatedTarget)||(r.value=!1)}function me(){e.eager&&w.value?.calculateVisibleItems()}function pe(){P.value&&f.value?.focus()}function he(t){P.value=!0}function ye(t){if(t==null)o.value=[];else if(Q(f.value,":autofill")||Q(f.value,":-webkit-autofill")){const s=n.value.find(c=>c.title===t);s&&E(s)}else f.value&&(f.value.value="")}return N(r,()=>{if(!e.hideSelected&&r.value&&o.value.length){const t=L.value.findIndex(s=>o.value.some(c=>(e.valueComparator||$)(c.value,s.value)));Fe&&!e.noAutoScroll&&window.requestAnimationFrame(()=>{t>=0&&w.value?.scrollToIndex(t)})}}),N(n,(t,s)=>{r.value||P.value&&e.hideNoData&&!s.length&&t.length&&(r.value=!0)}),Se(()=>{const t=!!(e.chips||a.chip),s=!!(!e.hideNoData||L.value.length||a["prepend-item"]||a["append-item"]||a["no-data"]),c=o.value.length>0,x=X.filterProps(e),V=c||!P.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder;return v(X,y({ref:f},x,{modelValue:o.value.map(l=>l.props.title).join(", "),name:void 0,"onUpdate:modelValue":ye,focused:P.value,"onUpdate:focused":l=>P.value=l,validationValue:o.externalValue,counterValue:C.value,dirty:c,class:["v-select",{"v-select--active-menu":r.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":o.value.length,"v-select--selection-slot":!!a.selection},e.class],style:e.style,inputmode:"none",placeholder:V,"onClick:clear":ce,"onMousedown:control":de,onBlur:ve,onKeydown:J,"aria-expanded":ue.value,"aria-controls":ie.value,"aria-label":j.value,title:j.value}),{...a,default:()=>b(H,null,[b("select",{hidden:!0,multiple:e.multiple,name:ne.fieldName.value},[n.value.map(l=>b("option",{key:l.value,value:l.value,selected:U.value.includes(l.value)},null))]),v(_e,y({id:oe.value,ref:D,modelValue:r.value,"onUpdate:modelValue":l=>r.value=l,activator:"parent",contentClass:"v-select__content",disabled:K.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:me,onAfterLeave:pe},se.value),{default:()=>[s&&v(Ke,y({ref:T,selected:U.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:l=>l.preventDefault(),onKeydown:fe,onFocusin:he,tabindex:"-1",selectable:!0,"aria-live":"polite","aria-label":`${e.label}-list`,color:e.itemColor??e.color},re,e.listProps),{default:()=>[a["prepend-item"]?.(),!L.value.length&&!e.hideNoData&&(a["no-data"]?.()??v(ee,{key:"no-data",title:k(e.noDataText)},null)),v(ze,{ref:w,renderless:!0,items:L.value,itemKey:"value"},{default:l=>{let{item:u,index:d,itemRef:S}=l;const i=Me(u.props),h=y(u.props,{ref:S,key:u.value,onClick:()=>E(u,null)});return u.type==="divider"?a.divider?.({props:u.raw,index:d})??v(Oe,y(u.props,{key:`divider-${d}`}),null):u.type==="subheader"?a.subheader?.({props:u.raw,index:d})??v($e,y(u.props,{key:`subheader-${d}`}),null):a.item?.({item:u,index:d,props:h})??v(ee,y(h,{role:"option"}),{prepend:m=>{let{isSelected:ge}=m;return b(H,null,[e.multiple&&!e.hideSelected?v(je,{key:u.value,modelValue:ge,ripple:!1,tabindex:"-1",onClick:Ve=>Ve.preventDefault()},null):void 0,i.prependAvatar&&v(He,{image:i.prependAvatar},null),i.prependIcon&&v(Z,{icon:i.prependIcon},null)])}})}}),a["append-item"]?.()]})]}),o.value.map((l,u)=>{function d(m){m.stopPropagation(),m.preventDefault(),E(l,!1)}const S=y(te.filterProps(l.props),{"onClick:close":d,onKeydown(m){m.key!=="Enter"&&m.key!==" "||(m.preventDefault(),m.stopPropagation(),d(m))},onMousedown(m){m.preventDefault(),m.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0}),i=t?!!a.chip:!!a.selection,h=i?Ne(t?a.chip({item:l,index:u,props:S}):a.selection({item:l,index:u})):void 0;if(!(i&&!h))return b("div",{key:l.value,class:"v-select__selection"},[t?a.chip?v(qe,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:l.title}}},{default:()=>[h]}):v(te,y({key:"chip",closable:e.closableChips,size:"small",text:l.title,disabled:l.props.disabled},S),null):h??b("span",{class:"v-select__selection-text"},[l.title,e.multiple&&u<o.value.length-1&&b("span",{class:"v-select__selection-comma"},[Ue(",")])])])})]),"append-inner":function(){for(var l=arguments.length,u=new Array(l),d=0;d<l;d++)u[d]=arguments[d];return b(H,null,[a["append-inner"]?.(...u),e.menuIcon?v(Z,{class:"v-select__menu-icon",color:f.value?.fieldIconColor,icon:e.menuIcon},null):void 0])}})}),Ie({isFocused:P,menu:r,select:E},f)}});export{tt as V,Je as a,Xe as m,Ge as u};
@@ -0,0 +1 @@
1
+ import{p as B,v as K,B as O,C as N,dr as X,cX as T,g as U,j as _,ay as j,t as a,m as Q,n as E,E as m,q,r as h,S as W,a7 as Y,db as w,K as G,J as Z,dm as p,ae as R,o as D,N as ee,ah as le,bp as ae,dl as te,T as oe,d as ne,i as C,ds as I,ao as ue,c as re,R as ie,dt as se}from"./index-D2rF_80D.js";const z=Symbol.for("vuetify:selection-control-group"),L=B({color:String,disabled:{type:Boolean,default:null},defaultsTarget:String,error:Boolean,id:String,inline:Boolean,falseIcon:T,trueIcon:T,ripple:{type:[Boolean,Object],default:!0},multiple:{type:Boolean,default:null},name:String,readonly:{type:Boolean,default:null},modelValue:null,type:String,valueComparator:{type:Function,default:X},...N(),...O(),...K()},"SelectionControlGroup"),ce=B({...L({defaultsTarget:"VSelectionControl"})},"VSelectionControlGroup");U()({name:"VSelectionControlGroup",props:ce(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:y}=n;const t=_(e,"modelValue"),o=j(),f=a(()=>e.id||`v-selection-control-group-${o}`),i=a(()=>e.name||f.value),l=new Set;return W(z,{modelValue:t,forceUpdate:()=>{l.forEach(u=>u())},onForceUpdate:u=>{l.add(u),Y(()=>{l.delete(u)})}}),Q({[e.defaultsTarget]:{color:a(()=>e.color),disabled:a(()=>e.disabled),density:a(()=>e.density),error:a(()=>e.error),inline:a(()=>e.inline),modelValue:t,multiple:a(()=>!!e.multiple||e.multiple==null&&Array.isArray(t.value)),name:i,falseIcon:a(()=>e.falseIcon),trueIcon:a(()=>e.trueIcon),readonly:a(()=>e.readonly),ripple:a(()=>e.ripple),type:a(()=>e.type),valueComparator:a(()=>e.valueComparator)}}),E(()=>m("div",{class:h(["v-selection-control-group",{"v-selection-control-group--inline":e.inline},e.class]),style:q(e.style),role:e.type==="radio"?"radiogroup":void 0},[y.default?.()])),{}}});const de=B({label:String,baseColor:String,trueValue:null,falseValue:null,value:null,...N(),...L()},"VSelectionControl");function ve(e){const n=oe(z,void 0),{densityClasses:y}=ne(e),t=_(e,"modelValue"),o=C(()=>e.trueValue!==void 0?e.trueValue:e.value!==void 0?e.value:!0),f=C(()=>e.falseValue!==void 0?e.falseValue:!1),i=C(()=>!!e.multiple||e.multiple==null&&Array.isArray(t.value)),l=C({get(){const d=n?n.modelValue.value:t.value;return i.value?I(d).some(r=>e.valueComparator(r,o.value)):e.valueComparator(d,o.value)},set(d){if(e.readonly)return;const r=d?o.value:f.value;let v=r;i.value&&(v=d?[...I(t.value),r]:I(t.value).filter(s=>!e.valueComparator(s,o.value))),n?n.modelValue.value=v:t.value=v}}),{textColorClasses:u,textColorStyles:b}=ue(()=>{if(!(e.error||e.disabled))return l.value?e.color:e.baseColor}),{backgroundColorClasses:V,backgroundColorStyles:g}=re(()=>l.value&&!e.error&&!e.disabled?e.color:e.baseColor),k=C(()=>l.value?e.trueIcon:e.falseIcon);return{group:n,densityClasses:y,trueValue:o,falseValue:f,model:l,textColorClasses:u,textColorStyles:b,backgroundColorClasses:V,backgroundColorStyles:g,icon:k}}const me=U()({name:"VSelectionControl",directives:{vRipple:w},inheritAttrs:!1,props:de(),emits:{"update:modelValue":e=>!0},setup(e,n){let{attrs:y,slots:t}=n;const{group:o,densityClasses:f,icon:i,model:l,textColorClasses:u,textColorStyles:b,backgroundColorClasses:V,backgroundColorStyles:g,trueValue:k}=ve(e),d=j(),r=G(!1),v=G(!1),s=Z(),S=a(()=>e.id||`input-${d}`),x=a(()=>!e.disabled&&!e.readonly);o?.onForceUpdate(()=>{s.value&&(s.value.checked=l.value)});function A(c){x.value&&(r.value=!0,se(c.target,":focus-visible")!==!1&&(v.value=!0))}function F(){r.value=!1,v.value=!1}function M(c){c.stopPropagation()}function $(c){if(!x.value){s.value&&(s.value.checked=l.value);return}e.readonly&&o&&ie(()=>o.forceUpdate()),l.value=c.target.checked}return E(()=>{const c=t.label?t.label({label:e.label,props:{for:S.value}}):e.label,[H,J]=p(y),P=m("input",R({ref:s,checked:l.value,disabled:!!e.disabled,id:S.value,onBlur:F,onFocus:A,onInput:$,"aria-disabled":!!e.disabled,"aria-label":e.label,type:e.type,value:k.value,name:e.name,"aria-checked":e.type==="checkbox"?l.value:void 0},J),null);return m("div",R({class:["v-selection-control",{"v-selection-control--dirty":l.value,"v-selection-control--disabled":e.disabled,"v-selection-control--error":e.error,"v-selection-control--focused":r.value,"v-selection-control--focus-visible":v.value,"v-selection-control--inline":e.inline},f.value,e.class]},H,{style:e.style}),[m("div",{class:h(["v-selection-control__wrapper",u.value]),style:q(b.value)},[t.default?.({backgroundColorClasses:V,backgroundColorStyles:g}),ee(m("div",{class:h(["v-selection-control__input"])},[t.input?.({model:l,textColorClasses:u,textColorStyles:b,backgroundColorClasses:V,backgroundColorStyles:g,inputNode:P,icon:i.value,props:{onFocus:A,onBlur:F,id:S.value}})??m(le,null,[i.value&&D(ae,{key:"icon",icon:i.value},null),P])]),[[w,!e.disabled&&!e.readonly&&e.ripple,null,{center:!0,circle:!0}]])]),c&&D(te,{for:S.value,onClick:M},{default:()=>[c]})])}),{isFocused:r,input:s}}});export{me as V,de as m};
@@ -1 +1 @@
1
- import{p as le,i as s,cP as ce,cQ as ge,H as ne,t as L,K as de,J as ee,cR as Ce,A as we,z as Ve,a6 as se,R as _e,S as Te,g as oe,cN as ve,T as fe,e as xe,ao as Fe,c as re,cS as Re,n as ue,s as $,E as f,N as me,o as H,q as J,r as E,X as Pe,cT as Ne,C as he,f as ze,j as Le,cs as Ee,cv as be,ae as Be,ap as Me,cw as Ke,cU as De,cV as Ie,ah as qe}from"./index-Co2Il0FF.js";const ie=Symbol.for("vuetify:v-slider");function Oe(e,l,r){const u=r==="vertical",i=l.getBoundingClientRect(),h="touches"in e?e.touches[0]:e;return u?h.clientY-(i.top+i.height/2):h.clientX-(i.left+i.width/2)}function Ae(e,l){return"touches"in e&&e.touches.length?e.touches[0][l]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][l]:e[l]}const je=le({disabled:{type:Boolean,default:null},error:Boolean,readonly:{type:Boolean,default:null},max:{type:[Number,String],default:100},min:{type:[Number,String],default:0},step:{type:[Number,String],default:0},thumbColor:String,thumbLabel:{type:[Boolean,String],default:void 0,validator:e=>typeof e=="boolean"||e==="always"},thumbSize:{type:[Number,String],default:20},showTicks:{type:[Boolean,String],default:!1,validator:e=>typeof e=="boolean"||e==="always"},ticks:{type:[Array,Object]},tickSize:{type:[Number,String],default:2},color:String,trackColor:String,trackFillColor:String,trackSize:{type:[Number,String],default:4},direction:{type:String,default:"horizontal",validator:e=>["vertical","horizontal"].includes(e)},reverse:Boolean,noKeyboard:Boolean,...Ve(),...we({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),$e=e=>{const l=s(()=>parseFloat(e.min)),r=s(()=>parseFloat(e.max)),u=s(()=>Number(e.step)>0?parseFloat(e.step):0),i=s(()=>Math.max(ce(u.value),ce(l.value)));function h(S){if(S=parseFloat(S),u.value<=0)return S;const o=se(S,l.value,r.value),c=l.value%u.value;let y=Math.round((o-c)/u.value)*u.value+c;return o>y&&y+u.value>r.value&&(y=r.value),parseFloat(Math.min(y,r.value).toFixed(i.value))}return{min:l,max:r,step:u,decimals:i,roundValue:h}},Ue=e=>{let{props:l,steps:r,onSliderStart:u,onSliderMove:i,onSliderEnd:h,getActiveThumb:S}=e;const o=ge(l),{isRtl:c}=ne(),y=L(()=>l.reverse),F=s(()=>l.direction==="vertical"),w=s(()=>F.value!==y.value),{min:d,max:V,step:_,decimals:K,roundValue:B}=r,D=s(()=>parseInt(l.thumbSize,10)),g=s(()=>parseInt(l.tickSize,10)),C=s(()=>parseInt(l.trackSize,10)),R=s(()=>(V.value-d.value)/_.value),T=s(()=>l.error||o.isDisabled.value?void 0:l.thumbColor??l.color),P=s(()=>l.error||o.isDisabled.value?void 0:l.thumbColor),I=s(()=>l.error||o.isDisabled.value?void 0:l.trackColor??l.color),M=s(()=>l.error||o.isDisabled.value?void 0:l.trackFillColor??l.color),v=de(!1),m=de(0),p=ee(),n=ee();function x(t){const a=p.value?.$el;if(!a)return;const j=l.direction==="vertical",G=j?"top":"left",Z=j?"height":"width",ke=j?"clientY":"clientX",{[G]:pe,[Z]:ye}=a.getBoundingClientRect(),Se=Ae(t,ke);let ae=se((Se-pe-m.value)/ye)||0;return(j?w.value:w.value!==c.value)&&(ae=1-ae),B(d.value+ae*(V.value-d.value))}const N=t=>{const a=x(t);a!=null&&h({value:a}),v.value=!1,m.value=0},Y=t=>{const a=x(t);n.value=S(t),n.value&&(v.value=!0,n.value.contains(t.target)?m.value=Oe(t,n.value,l.direction):(m.value=0,a!=null&&i({value:a})),a!=null&&u({value:a}),_e(()=>n.value?.focus()))},q={passive:!0,capture:!0};function z(t){const a=x(t);a!=null&&i({value:a})}function O(t){t.stopPropagation(),t.preventDefault(),N(t),window.removeEventListener("mousemove",z,q),window.removeEventListener("mouseup",O)}function U(t){N(t),window.removeEventListener("touchmove",z,q),t.target?.removeEventListener("touchend",U)}function A(t){Y(t),window.addEventListener("touchmove",z,q),t.target?.addEventListener("touchend",U,{passive:!1})}function te(t){t.button===0&&(t.preventDefault(),Y(t),window.addEventListener("mousemove",z,q),window.addEventListener("mouseup",O,{passive:!1}))}const X=t=>{const a=(t-d.value)/(V.value-d.value)*100;return se(isNaN(a)?0:a,0,100)},Q=L(()=>l.showTicks),W=s(()=>Q.value?l.ticks?Array.isArray(l.ticks)?l.ticks.map(t=>({value:t,position:X(t),label:t.toString()})):Object.keys(l.ticks).map(t=>({value:parseFloat(t),position:X(parseFloat(t)),label:l.ticks[t]})):R.value!==1/0?Ce(R.value+1).map(t=>{const a=d.value+t*_.value;return{value:a,position:X(a)}}):[]:[]),k=s(()=>W.value.some(t=>{let{label:a}=t;return!!a})),b={activeThumbRef:n,color:L(()=>l.color),decimals:K,disabled:o.isDisabled,direction:L(()=>l.direction),elevation:L(()=>l.elevation),hasLabels:k,isReversed:y,indexFromEnd:w,min:d,max:V,mousePressed:v,noKeyboard:L(()=>l.noKeyboard),numTicks:R,onSliderMousedown:te,onSliderTouchstart:A,parsedTicks:W,parseMouseMove:x,position:X,readonly:o.isReadonly,rounded:L(()=>l.rounded),roundValue:B,showTicks:Q,startOffset:m,step:_,thumbSize:D,thumbColor:T,thumbLabelColor:P,thumbLabel:L(()=>l.thumbLabel),ticks:L(()=>l.ticks),tickSize:g,trackColor:I,trackContainerRef:p,trackFillColor:M,trackSize:C,vertical:F};return Te(ie,b),b},Xe=le({focused:Boolean,max:{type:Number,required:!0},min:{type:Number,required:!0},modelValue:{type:Number,required:!0},position:{type:Number,required:!0},ripple:{type:[Boolean,Object],default:!0},name:String,noKeyboard:Boolean,...he()},"VSliderThumb"),Ye=oe()({name:"VSliderThumb",directives:{vRipple:ve},props:Xe(),emits:{"update:modelValue":e=>!0},setup(e,l){let{slots:r,emit:u}=l;const i=fe(ie),{isRtl:h,rtlClasses:S}=ne();if(!i)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{min:o,max:c,thumbColor:y,thumbLabelColor:F,step:w,disabled:d,thumbSize:V,thumbLabel:_,direction:K,isReversed:B,vertical:D,readonly:g,elevation:C,mousePressed:R,decimals:T,indexFromEnd:P}=i,I=s(()=>d.value?void 0:C.value),{elevationClasses:M}=xe(I),{textColorClasses:v,textColorStyles:m}=Fe(y),{backgroundColorClasses:p,backgroundColorStyles:n}=re(F),{pageup:x,pagedown:N,end:Y,home:q,left:z,right:O,down:U,up:A}=Re,te=[x,N,Y,q,z,O,U,A],X=s(()=>w.value?[1,2,3]:[1,5,10]);function Q(k,b){if(e.noKeyboard||d.value||!te.includes(k.key))return;k.preventDefault();const t=w.value||.1,a=(c.value-o.value)/t;if([z,O,U,A].includes(k.key)){const G=(D.value?[h.value?z:O,B.value?U:A]:P.value!==h.value?[z,A]:[O,A]).includes(k.key)?1:-1,Z=k.shiftKey?2:k.ctrlKey?1:0;G===-1&&b===c.value&&!Z&&!Number.isInteger(a)?b=b-a%1*t:b=b+G*t*X.value[Z]}else if(k.key===q)b=o.value;else if(k.key===Y)b=c.value;else{const j=k.key===N?1:-1;b=b-j*t*(a>100?a/10:10)}return Math.max(e.min,Math.min(e.max,b))}function W(k){const b=Q(k,e.modelValue);b!=null&&u("update:modelValue",b)}return ue(()=>{const k=$(P.value?100-e.position:e.position,"%");return f("div",{class:E(["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&R.value},e.class,S.value]),style:J([{"--v-slider-thumb-position":k,"--v-slider-thumb-size":$(V.value)},e.style]),role:"slider",tabindex:d.value?-1:0,"aria-label":e.name,"aria-valuemin":o.value,"aria-valuemax":c.value,"aria-valuenow":e.modelValue,"aria-readonly":!!g.value,"aria-orientation":K.value,onKeydown:g.value?void 0:W},[f("div",{class:E(["v-slider-thumb__surface",v.value,M.value]),style:J(m.value)},null),me(f("div",{class:E(["v-slider-thumb__ripple",v.value]),style:J(m.value)},null),[[ve,e.ripple,null,{circle:!0,center:!0}]]),H(Ne,{origin:"bottom center"},{default:()=>[me(f("div",{class:"v-slider-thumb__label-container"},[f("div",{class:E(["v-slider-thumb__label",p.value]),style:J(n.value)},[f("div",null,[r["thumb-label"]?.({modelValue:e.modelValue})??e.modelValue.toFixed(w.value?T.value:1)]),f("div",{class:"v-slider-thumb__label-wedge"},null)])]),[[Pe,_.value&&e.focused||_.value==="always"]])]})])}),{}}}),He=le({start:{type:Number,required:!0},stop:{type:Number,required:!0},...he()},"VSliderTrack"),Je=oe()({name:"VSliderTrack",props:He(),emits:{},setup(e,l){let{slots:r}=l;const u=fe(ie);if(!u)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:i,parsedTicks:h,rounded:S,showTicks:o,tickSize:c,trackColor:y,trackFillColor:F,trackSize:w,vertical:d,min:V,max:_,indexFromEnd:K}=u,{roundedClasses:B}=ze(S),{backgroundColorClasses:D,backgroundColorStyles:g}=re(F),{backgroundColorClasses:C,backgroundColorStyles:R}=re(y),T=s(()=>`inset-${d.value?"block":"inline"}-${K.value?"end":"start"}`),P=s(()=>d.value?"height":"width"),I=s(()=>({[T.value]:"0%",[P.value]:"100%"})),M=s(()=>e.stop-e.start),v=s(()=>({[T.value]:$(e.start,"%"),[P.value]:$(M.value,"%")})),m=s(()=>o.value?(d.value?h.value.slice().reverse():h.value).map((n,x)=>{const N=n.value!==V.value&&n.value!==_.value?$(n.position,"%"):void 0;return f("div",{key:n.value,class:E(["v-slider-track__tick",{"v-slider-track__tick--filled":n.position>=e.start&&n.position<=e.stop,"v-slider-track__tick--first":n.value===V.value,"v-slider-track__tick--last":n.value===_.value}]),style:{[T.value]:N}},[(n.label||r["tick-label"])&&f("div",{class:"v-slider-track__tick-label"},[r["tick-label"]?.({tick:n,index:x})??n.label])])}):[]);return ue(()=>f("div",{class:E(["v-slider-track",B.value,e.class]),style:J([{"--v-slider-track-size":$(w.value),"--v-slider-tick-size":$(c.value)},e.style])},[f("div",{class:E(["v-slider-track__background",C.value,{"v-slider-track__background--opacity":!!i.value||!F.value}]),style:{...I.value,...R.value}},null),f("div",{class:E(["v-slider-track__fill",D.value]),style:{...v.value,...g.value}},null),o.value&&f("div",{class:E(["v-slider-track__ticks",{"v-slider-track__ticks--always-show":o.value==="always"}])},[m.value])])),{}}}),Qe=le({...De(),...je(),...Ke(),modelValue:{type:[Number,String],default:0}},"VSlider"),Ge=oe()({name:"VSlider",props:Qe(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,l){let{slots:r,emit:u}=l;const i=ee(),h=ee(),{rtlClasses:S}=ne(),o=$e(e),c=Le(e,"modelValue",void 0,v=>o.roundValue(v??o.min.value)),{min:y,max:F,mousePressed:w,roundValue:d,onSliderMousedown:V,onSliderTouchstart:_,trackContainerRef:K,position:B,hasLabels:D,disabled:g,readonly:C,noKeyboard:R}=Ue({props:e,steps:o,onSliderStart:()=>{!g.value&&!C.value&&u("start",c.value)},onSliderEnd:v=>{let{value:m}=v;const p=d(m);!g.value&&!C.value&&(c.value=p),u("end",p)},onSliderMove:v=>{let{value:m}=v;!g.value&&!C.value&&(c.value=d(m))},getActiveThumb:()=>i.value?.$el}),{isFocused:T,focus:P,blur:I}=Ee(e),M=s(()=>B(c.value));return ue(()=>{const v=be.filterProps(e),m=!!(e.label||r.label||r.prepend);return H(be,Be({ref:h,class:["v-slider",{"v-slider--has-labels":!!r["tick-label"]||D.value,"v-slider--focused":T.value,"v-slider--pressed":w.value,"v-slider--disabled":g.value},S.value,e.class],style:e.style},v,{focused:T.value}),{...r,prepend:m?p=>f(qe,null,[r.label?.(p)??(e.label?H(Ie,{id:p.id.value,class:"v-slider__label",text:e.label},null):void 0),r.prepend?.(p)]):void 0,default:p=>{let{id:n,messagesId:x}=p;return f("div",{class:"v-slider__container",onMousedown:C.value?void 0:V,onTouchstartPassive:C.value?void 0:_},[f("input",{id:n.value,name:e.name||n.value,disabled:g.value,readonly:C.value,tabindex:"-1",value:c.value},null),H(Je,{ref:K,start:0,stop:M.value},{"tick-label":r["tick-label"]}),H(Ye,{ref:i,"aria-describedby":x.value,focused:T.value,noKeyboard:R.value,min:y.value,max:F.value,modelValue:c.value,"onUpdate:modelValue":N=>c.value=N,position:M.value,elevation:e.elevation,onFocus:P,onBlur:I,ripple:e.ripple,name:e.name},{"thumb-label":r["thumb-label"]})])}})}),Me({focus:()=>i.value?.$el.focus()},h)}});export{Ge as V};
1
+ import{p as le,i as s,dc as de,dd as ge,H as ne,t as L,K as ce,J as ee,de as Ce,A as we,z as Ve,a6 as se,R as _e,S as Te,g as oe,db as ve,T as fe,e as xe,ao as Fe,c as re,df as Re,n as ue,s as $,E as f,N as me,o as H,q as J,r as E,X as Pe,dg as ze,C as he,f as Ne,j as Le,dh as Ee,di as be,ae as Be,ap as Me,dj as Ke,dk as De,dl as Ie,ah as qe}from"./index-D2rF_80D.js";const ie=Symbol.for("vuetify:v-slider");function Oe(e,l,r){const u=r==="vertical",i=l.getBoundingClientRect(),h="touches"in e?e.touches[0]:e;return u?h.clientY-(i.top+i.height/2):h.clientX-(i.left+i.width/2)}function je(e,l){return"touches"in e&&e.touches.length?e.touches[0][l]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][l]:e[l]}const Ae=le({disabled:{type:Boolean,default:null},error:Boolean,readonly:{type:Boolean,default:null},max:{type:[Number,String],default:100},min:{type:[Number,String],default:0},step:{type:[Number,String],default:0},thumbColor:String,thumbLabel:{type:[Boolean,String],default:void 0,validator:e=>typeof e=="boolean"||e==="always"},thumbSize:{type:[Number,String],default:20},showTicks:{type:[Boolean,String],default:!1,validator:e=>typeof e=="boolean"||e==="always"},ticks:{type:[Array,Object]},tickSize:{type:[Number,String],default:2},color:String,trackColor:String,trackFillColor:String,trackSize:{type:[Number,String],default:4},direction:{type:String,default:"horizontal",validator:e=>["vertical","horizontal"].includes(e)},reverse:Boolean,noKeyboard:Boolean,...Ve(),...we({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),$e=e=>{const l=s(()=>parseFloat(e.min)),r=s(()=>parseFloat(e.max)),u=s(()=>Number(e.step)>0?parseFloat(e.step):0),i=s(()=>Math.max(de(u.value),de(l.value)));function h(S){if(S=parseFloat(S),u.value<=0)return S;const o=se(S,l.value,r.value),d=l.value%u.value;let y=Math.round((o-d)/u.value)*u.value+d;return o>y&&y+u.value>r.value&&(y=r.value),parseFloat(Math.min(y,r.value).toFixed(i.value))}return{min:l,max:r,step:u,decimals:i,roundValue:h}},Ue=e=>{let{props:l,steps:r,onSliderStart:u,onSliderMove:i,onSliderEnd:h,getActiveThumb:S}=e;const o=ge(l),{isRtl:d}=ne(),y=L(()=>l.reverse),F=s(()=>l.direction==="vertical"),w=s(()=>F.value!==y.value),{min:c,max:V,step:_,decimals:K,roundValue:B}=r,D=s(()=>parseInt(l.thumbSize,10)),g=s(()=>parseInt(l.tickSize,10)),C=s(()=>parseInt(l.trackSize,10)),R=s(()=>(V.value-c.value)/_.value),T=s(()=>l.error||o.isDisabled.value?void 0:l.thumbColor??l.color),P=s(()=>l.error||o.isDisabled.value?void 0:l.thumbColor),I=s(()=>l.error||o.isDisabled.value?void 0:l.trackColor??l.color),M=s(()=>l.error||o.isDisabled.value?void 0:l.trackFillColor??l.color),v=ce(!1),m=ce(0),p=ee(),n=ee();function x(t){const a=p.value?.$el;if(!a)return;const A=l.direction==="vertical",Q=A?"top":"left",Z=A?"height":"width",ke=A?"clientY":"clientX",{[Q]:pe,[Z]:ye}=a.getBoundingClientRect(),Se=je(t,ke);let ae=se((Se-pe-m.value)/ye)||0;return(A?w.value:w.value!==d.value)&&(ae=1-ae),B(c.value+ae*(V.value-c.value))}const z=t=>{const a=x(t);a!=null&&h({value:a}),v.value=!1,m.value=0},Y=t=>{const a=x(t);n.value=S(t),n.value&&(v.value=!0,n.value.contains(t.target)?m.value=Oe(t,n.value,l.direction):(m.value=0,a!=null&&i({value:a})),a!=null&&u({value:a}),_e(()=>n.value?.focus()))},q={passive:!0,capture:!0};function N(t){const a=x(t);a!=null&&i({value:a})}function O(t){t.stopPropagation(),t.preventDefault(),z(t),window.removeEventListener("mousemove",N,q),window.removeEventListener("mouseup",O)}function U(t){z(t),window.removeEventListener("touchmove",N,q),t.target?.removeEventListener("touchend",U)}function j(t){Y(t),window.addEventListener("touchmove",N,q),t.target?.addEventListener("touchend",U,{passive:!1})}function te(t){t.button===0&&(t.preventDefault(),Y(t),window.addEventListener("mousemove",N,q),window.addEventListener("mouseup",O,{passive:!1}))}const X=t=>{const a=(t-c.value)/(V.value-c.value)*100;return se(isNaN(a)?0:a,0,100)},W=L(()=>l.showTicks),G=s(()=>W.value?l.ticks?Array.isArray(l.ticks)?l.ticks.map(t=>({value:t,position:X(t),label:t.toString()})):Object.keys(l.ticks).map(t=>({value:parseFloat(t),position:X(parseFloat(t)),label:l.ticks[t]})):R.value!==1/0?Ce(R.value+1).map(t=>{const a=c.value+t*_.value;return{value:a,position:X(a)}}):[]:[]),k=s(()=>G.value.some(t=>{let{label:a}=t;return!!a})),b={activeThumbRef:n,color:L(()=>l.color),decimals:K,disabled:o.isDisabled,direction:L(()=>l.direction),elevation:L(()=>l.elevation),hasLabels:k,isReversed:y,indexFromEnd:w,min:c,max:V,mousePressed:v,noKeyboard:L(()=>l.noKeyboard),numTicks:R,onSliderMousedown:te,onSliderTouchstart:j,parsedTicks:G,parseMouseMove:x,position:X,readonly:o.isReadonly,rounded:L(()=>l.rounded),roundValue:B,showTicks:W,startOffset:m,step:_,thumbSize:D,thumbColor:T,thumbLabelColor:P,thumbLabel:L(()=>l.thumbLabel),ticks:L(()=>l.ticks),tickSize:g,trackColor:I,trackContainerRef:p,trackFillColor:M,trackSize:C,vertical:F};return Te(ie,b),b},Xe=le({focused:Boolean,max:{type:Number,required:!0},min:{type:Number,required:!0},modelValue:{type:Number,required:!0},position:{type:Number,required:!0},ripple:{type:[Boolean,Object],default:!0},name:String,noKeyboard:Boolean,...he()},"VSliderThumb"),Ye=oe()({name:"VSliderThumb",directives:{vRipple:ve},props:Xe(),emits:{"update:modelValue":e=>!0},setup(e,l){let{slots:r,emit:u}=l;const i=fe(ie),{isRtl:h,rtlClasses:S}=ne();if(!i)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{min:o,max:d,thumbColor:y,thumbLabelColor:F,step:w,disabled:c,thumbSize:V,thumbLabel:_,direction:K,isReversed:B,vertical:D,readonly:g,elevation:C,mousePressed:R,decimals:T,indexFromEnd:P}=i,I=s(()=>c.value?void 0:C.value),{elevationClasses:M}=xe(I),{textColorClasses:v,textColorStyles:m}=Fe(y),{backgroundColorClasses:p,backgroundColorStyles:n}=re(F),{pageup:x,pagedown:z,end:Y,home:q,left:N,right:O,down:U,up:j}=Re,te=[x,z,Y,q,N,O,U,j],X=s(()=>w.value?[1,2,3]:[1,5,10]);function W(k,b){if(e.noKeyboard||c.value||!te.includes(k.key))return;k.preventDefault();const t=w.value||.1,a=(d.value-o.value)/t;if([N,O,U,j].includes(k.key)){const Q=(D.value?[h.value?N:O,B.value?U:j]:P.value!==h.value?[N,j]:[O,j]).includes(k.key)?1:-1,Z=k.shiftKey?2:k.ctrlKey?1:0;Q===-1&&b===d.value&&!Z&&!Number.isInteger(a)?b=b-a%1*t:b=b+Q*t*X.value[Z]}else if(k.key===q)b=o.value;else if(k.key===Y)b=d.value;else{const A=k.key===z?1:-1;b=b-A*t*(a>100?a/10:10)}return Math.max(e.min,Math.min(e.max,b))}function G(k){const b=W(k,e.modelValue);b!=null&&u("update:modelValue",b)}return ue(()=>{const k=$(P.value?100-e.position:e.position,"%");return f("div",{class:E(["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&R.value},e.class,S.value]),style:J([{"--v-slider-thumb-position":k,"--v-slider-thumb-size":$(V.value)},e.style]),role:"slider",tabindex:c.value?-1:0,"aria-label":e.name,"aria-valuemin":o.value,"aria-valuemax":d.value,"aria-valuenow":e.modelValue,"aria-readonly":!!g.value,"aria-orientation":K.value,onKeydown:g.value?void 0:G},[f("div",{class:E(["v-slider-thumb__surface",v.value,M.value]),style:J(m.value)},null),me(f("div",{class:E(["v-slider-thumb__ripple",v.value]),style:J(m.value)},null),[[ve,e.ripple,null,{circle:!0,center:!0}]]),H(ze,{origin:"bottom center"},{default:()=>[me(f("div",{class:"v-slider-thumb__label-container"},[f("div",{class:E(["v-slider-thumb__label",p.value]),style:J(n.value)},[f("div",null,[r["thumb-label"]?.({modelValue:e.modelValue})??e.modelValue.toFixed(w.value?T.value:1)]),f("div",{class:"v-slider-thumb__label-wedge"},null)])]),[[Pe,_.value&&e.focused||_.value==="always"]])]})])}),{}}}),He=le({start:{type:Number,required:!0},stop:{type:Number,required:!0},...he()},"VSliderTrack"),Je=oe()({name:"VSliderTrack",props:He(),emits:{},setup(e,l){let{slots:r}=l;const u=fe(ie);if(!u)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:i,parsedTicks:h,rounded:S,showTicks:o,tickSize:d,trackColor:y,trackFillColor:F,trackSize:w,vertical:c,min:V,max:_,indexFromEnd:K}=u,{roundedClasses:B}=Ne(S),{backgroundColorClasses:D,backgroundColorStyles:g}=re(F),{backgroundColorClasses:C,backgroundColorStyles:R}=re(y),T=s(()=>`inset-${c.value?"block":"inline"}-${K.value?"end":"start"}`),P=s(()=>c.value?"height":"width"),I=s(()=>({[T.value]:"0%",[P.value]:"100%"})),M=s(()=>e.stop-e.start),v=s(()=>({[T.value]:$(e.start,"%"),[P.value]:$(M.value,"%")})),m=s(()=>o.value?(c.value?h.value.slice().reverse():h.value).map((n,x)=>{const z=n.value!==V.value&&n.value!==_.value?$(n.position,"%"):void 0;return f("div",{key:n.value,class:E(["v-slider-track__tick",{"v-slider-track__tick--filled":n.position>=e.start&&n.position<=e.stop,"v-slider-track__tick--first":n.value===V.value,"v-slider-track__tick--last":n.value===_.value}]),style:{[T.value]:z}},[(n.label||r["tick-label"])&&f("div",{class:"v-slider-track__tick-label"},[r["tick-label"]?.({tick:n,index:x})??n.label])])}):[]);return ue(()=>f("div",{class:E(["v-slider-track",B.value,e.class]),style:J([{"--v-slider-track-size":$(w.value),"--v-slider-tick-size":$(d.value)},e.style])},[f("div",{class:E(["v-slider-track__background",C.value,{"v-slider-track__background--opacity":!!i.value||!F.value}]),style:{...I.value,...R.value}},null),f("div",{class:E(["v-slider-track__fill",D.value]),style:{...v.value,...g.value}},null),o.value&&f("div",{class:E(["v-slider-track__ticks",{"v-slider-track__ticks--always-show":o.value==="always"}])},[m.value])])),{}}}),We=le({...De(),...Ae(),...Ke(),modelValue:{type:[Number,String],default:0}},"VSlider"),Qe=oe()({name:"VSlider",props:We(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,l){let{slots:r,emit:u}=l;const i=ee(),h=ee(),{rtlClasses:S}=ne(),o=$e(e),d=Le(e,"modelValue",void 0,v=>o.roundValue(v??o.min.value)),{min:y,max:F,mousePressed:w,roundValue:c,onSliderMousedown:V,onSliderTouchstart:_,trackContainerRef:K,position:B,hasLabels:D,disabled:g,readonly:C,noKeyboard:R}=Ue({props:e,steps:o,onSliderStart:()=>{!g.value&&!C.value&&u("start",d.value)},onSliderEnd:v=>{let{value:m}=v;const p=c(m);!g.value&&!C.value&&(d.value=p),u("end",p)},onSliderMove:v=>{let{value:m}=v;!g.value&&!C.value&&(d.value=c(m))},getActiveThumb:()=>i.value?.$el}),{isFocused:T,focus:P,blur:I}=Ee(e),M=s(()=>B(d.value));return ue(()=>{const v=be.filterProps(e),m=!!(e.label||r.label||r.prepend);return H(be,Be({ref:h,class:["v-slider",{"v-slider--has-labels":!!r["tick-label"]||D.value,"v-slider--focused":T.value,"v-slider--pressed":w.value,"v-slider--disabled":g.value},S.value,e.class],style:e.style},v,{focused:T.value}),{...r,prepend:m?p=>f(qe,null,[r.label?.(p)??(e.label?H(Ie,{id:p.id.value,class:"v-slider__label",text:e.label},null):void 0),r.prepend?.(p)]):void 0,default:p=>{let{id:n,messagesId:x}=p;return f("div",{class:"v-slider__container",onMousedown:C.value?void 0:V,onTouchstartPassive:C.value?void 0:_},[f("input",{id:n.value,name:e.name||n.value,disabled:g.value,readonly:C.value,tabindex:"-1",value:d.value},null),H(Je,{ref:K,start:0,stop:M.value},{"tick-label":r["tick-label"]}),H(Ye,{ref:i,"aria-describedby":x.value,focused:T.value,noKeyboard:R.value,min:y.value,max:F.value,modelValue:d.value,"onUpdate:modelValue":z=>d.value=z,position:M.value,elevation:e.elevation,onFocus:P,onBlur:I,ripple:e.ripple,name:e.name},{"thumb-label":r["thumb-label"]})])}})}),Me({focus:()=>i.value?.$el.focus()},h)}});export{Qe as V};
@@ -0,0 +1 @@
1
+ import{g as O,p as $,j as k,dw as G,dh as K,J as g,dx as Q,t as w,ay as W,n as X,dm as Y,di as y,o as l,ae as C,ap as Z,dj as ee,E as n,q as b,r as S,an as ae,dg as te,bp as le,dy as se,by as oe,ah as ne}from"./index-D2rF_80D.js";import{V as P,m as ie}from"./VSelectionControl-BHjDOTFl.js";const re=$({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...ee(),...ie()},"VSwitch"),ce=O()({name:"VSwitch",inheritAttrs:!1,props:re(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,_){let{attrs:A,slots:a}=_;const i=k(e,"indeterminate"),s=k(e,"modelValue"),{loaderClasses:I}=G(e),{isFocused:x,focus:p,blur:B}=K(e),v=g(),m=g(),h=Q&&window.matchMedia("(forced-colors: active)").matches,F=w(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),R=W(),z=w(()=>e.id||`switch-${R}`);function M(){i.value&&(i.value=!1)}function D(r){r.stopPropagation(),r.preventDefault(),v.value?.input?.click()}return X(()=>{const[r,T]=Y(A),N=y.filterProps(e),U=P.filterProps(e);return l(y,C({ref:m,class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":i.value},I.value,e.class]},r,N,{modelValue:s.value,"onUpdate:modelValue":d=>s.value=d,id:z.value,focused:x.value,style:e.style}),{...a,default:d=>{let{id:j,messagesId:E,isDisabled:L,isReadonly:q,isValid:V}=d;const u={model:s,isValid:V};return l(P,C({ref:v},U,{modelValue:s.value,"onUpdate:modelValue":[o=>s.value=o,M],id:j.value,"aria-describedby":E.value,type:"checkbox","aria-checked":i.value?"mixed":void 0,disabled:L.value,readonly:q.value,onFocus:p,onBlur:B},T),{...a,default:o=>{let{backgroundColorClasses:c,backgroundColorStyles:t}=o;return n("div",{class:S(["v-switch__track",h?void 0:c.value]),style:b(t.value),onClick:D},[a["track-true"]&&n("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](u)]),a["track-false"]&&n("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](u)])])},input:o=>{let{inputNode:c,icon:t,backgroundColorClasses:H,backgroundColorStyles:J}=o;return n(ne,null,[c,n("div",{class:S(["v-switch__thumb",{"v-switch__thumb--filled":t||e.loading},e.inset||h?void 0:H.value]),style:b(e.inset?void 0:J.value)},[a.thumb?l(ae,{defaults:{VIcon:{icon:t,size:"x-small"}}},{default:()=>[a.thumb({...u,icon:t})]}):l(te,null,{default:()=>[e.loading?l(se,{name:"v-switch",active:!0,color:V.value===!1?void 0:F.value},{default:f=>a.loader?a.loader(f):l(oe,{active:f.isActive,color:f.color,indeterminate:!0,size:"16",width:"2"},null)}):t&&l(le,{key:String(t),icon:t,size:"x-small"},null)]})])])}})}})}),Z({},m)}});export{ce as V};