music-assistant-frontend 2.17.34__py3-none-any.whl → 2.17.63__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.

Potentially problematic release.


This version of music-assistant-frontend might be problematic. Click here for more details.

Files changed (218) hide show
  1. music_assistant_frontend/assets/About-B64RAAE6.js +1 -0
  2. music_assistant_frontend/assets/About-lesUP2tB.css +1 -0
  3. music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-DQUirFGx.js +1 -0
  4. music_assistant_frontend/assets/AddPlayerGroup-BgGBSvG5.js +1 -0
  5. music_assistant_frontend/assets/AddProviderDetails-BHxivTcE.js +1 -0
  6. music_assistant_frontend/assets/AddProviderDetails-DQeCtnoy.css +1 -0
  7. music_assistant_frontend/assets/AlbumDetails-kSlct8q_.js +1 -0
  8. music_assistant_frontend/assets/ArtistDetails-CNnccN2P.js +1 -0
  9. music_assistant_frontend/assets/AudiobookDetails-BqlM2CS_.js +1 -0
  10. music_assistant_frontend/assets/AvatarImage.vue_vue_type_script_setup_true_lang-DBokkkla.js +1 -0
  11. music_assistant_frontend/assets/BrowseView-D3jhZGn3.css +1 -0
  12. music_assistant_frontend/assets/BrowseView-DuywWVQm.js +1 -0
  13. music_assistant_frontend/assets/Button-B4d5YBNY.js +1 -0
  14. music_assistant_frontend/assets/Button-J-l6bmDl.css +1 -0
  15. music_assistant_frontend/assets/Container-CLe-v6jJ.css +1 -0
  16. music_assistant_frontend/assets/Container-D1pLFqsU.js +1 -0
  17. music_assistant_frontend/assets/Default-CDpSGmTw.js +21 -0
  18. music_assistant_frontend/assets/Default-CQvuEVee.css +1 -0
  19. music_assistant_frontend/assets/DropdownMenuTrigger.vue_vue_type_script_setup_true_lang-DWuSqU5E.js +1 -0
  20. music_assistant_frontend/assets/EditConfig-BPYsIC-A.js +1 -0
  21. music_assistant_frontend/assets/EditConfig-DNe2y34q.css +1 -0
  22. music_assistant_frontend/assets/EditCoreConfig-BgqNrizT.css +1 -0
  23. music_assistant_frontend/assets/EditCoreConfig-BzGxPfuM.js +1 -0
  24. music_assistant_frontend/assets/EditPlayer-2rJC7VuC.css +1 -0
  25. music_assistant_frontend/assets/EditPlayer-D-W-NEU2.js +1 -0
  26. music_assistant_frontend/assets/EditPlayerDsp-BI39n7FA.css +1 -0
  27. music_assistant_frontend/assets/EditPlayerDsp-DLVoEBGu.js +9 -0
  28. music_assistant_frontend/assets/EditProvider-apfmFtz1.css +1 -0
  29. music_assistant_frontend/assets/EditProvider-pX2tzDDV.js +1 -0
  30. music_assistant_frontend/assets/FacetedFilter-CVMvoryN.css +1 -0
  31. music_assistant_frontend/assets/FacetedFilter-CcVgGpca.js +1 -0
  32. music_assistant_frontend/assets/FrontendConfig-CxraPthf.js +1 -0
  33. music_assistant_frontend/assets/FrontendConfig-a-oWNOqu.css +1 -0
  34. music_assistant_frontend/assets/HomeView-BYNgS4DU.js +1 -0
  35. music_assistant_frontend/assets/HomeView-Du3qC7g7.css +1 -0
  36. music_assistant_frontend/assets/ItemsListing-CF6i_DPA.css +1 -0
  37. music_assistant_frontend/assets/ItemsListing-DqCIuDVa.js +1 -0
  38. music_assistant_frontend/assets/LibraryAlbums-BtgPipsX.js +1 -0
  39. music_assistant_frontend/assets/LibraryArtists-BxJH58zj.js +1 -0
  40. music_assistant_frontend/assets/LibraryAudiobooks-CfxtyrvX.js +1 -0
  41. music_assistant_frontend/assets/LibraryPlaylists-DklE3jS2.js +1 -0
  42. music_assistant_frontend/assets/LibraryPodcasts-CCQmiove.js +1 -0
  43. music_assistant_frontend/assets/LibraryRadios-CnFDe94x.js +1 -0
  44. music_assistant_frontend/assets/LibraryTracks-DbeArd47.js +1 -0
  45. music_assistant_frontend/assets/ListItem-By9ygptX.css +1 -0
  46. music_assistant_frontend/assets/ListItem-DccRVadN.js +1 -0
  47. music_assistant_frontend/assets/MediaItemImages-C9Fy6AXA.js +1 -0
  48. music_assistant_frontend/assets/MediaItemImages-CLzhjwGQ.css +1 -0
  49. music_assistant_frontend/assets/MediaItemThumb-CYhBGQYb.js +1 -0
  50. music_assistant_frontend/assets/MediaItemThumb-Dh_kR1LP.css +1 -0
  51. music_assistant_frontend/assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-D7lqdhVg.js +1 -0
  52. music_assistant_frontend/assets/PanelviewItemCompact-C1lAmhs4.js +1 -0
  53. music_assistant_frontend/assets/PanelviewItemCompact-DPec3m9e.css +1 -0
  54. music_assistant_frontend/assets/PlayerCard-CvuecWVw.js +1 -0
  55. music_assistant_frontend/assets/PlayerCard-Sb0PieXV.css +1 -0
  56. music_assistant_frontend/assets/Players-CsGKvNru.js +1 -0
  57. music_assistant_frontend/assets/Players-DqQtrPDr.css +1 -0
  58. music_assistant_frontend/assets/PlaylistDetails-BRmplZDX.js +1 -0
  59. music_assistant_frontend/assets/PodcastDetails-CO9edw4i.js +1 -0
  60. music_assistant_frontend/assets/PopoverTrigger.vue_vue_type_script_setup_true_lang-ZsAs7pQL.js +1 -0
  61. music_assistant_frontend/assets/ProviderDetails-DFxC0Z2P.css +1 -0
  62. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_style_index_0_lang-DFoDB6o8.js +8 -0
  63. music_assistant_frontend/assets/ProviderIcon-CbwA83VX.css +1 -0
  64. music_assistant_frontend/assets/ProviderIcon.vue_vue_type_style_index_0_lang-3Xmo3tIn.js +1 -0
  65. music_assistant_frontend/assets/Providers-DoQCRcJD.css +1 -0
  66. music_assistant_frontend/assets/Providers-fnV7LLWJ.js +1 -0
  67. music_assistant_frontend/assets/RadioDetails-CSTUc8uy.js +1 -0
  68. music_assistant_frontend/assets/RemoteAccessSettings-BJcgBwnj.js +1 -0
  69. music_assistant_frontend/assets/RemoteAccessSettings-DzZ6b2JZ.css +1 -0
  70. music_assistant_frontend/assets/Search-CP2B4boW.js +1 -0
  71. music_assistant_frontend/assets/ServerLogs-DT9hKSu9.js +4 -0
  72. music_assistant_frontend/assets/ServerLogs-DqUM0n_B.css +1 -0
  73. music_assistant_frontend/assets/Settings-DTSUeTlH.js +1 -0
  74. music_assistant_frontend/assets/Settings-Dy52XfiN.css +1 -0
  75. music_assistant_frontend/assets/{SystemConfig-BKi5ffMS.css → SystemConfig-CI_tk8f0.css} +1 -1
  76. music_assistant_frontend/assets/SystemConfig-CwdPKWrs.js +1 -0
  77. music_assistant_frontend/assets/Toolbar-BH0q_AuX.js +1 -0
  78. music_assistant_frontend/assets/Toolbar-Dz5VG6wZ.css +1 -0
  79. music_assistant_frontend/assets/TrackDetails-D-roSajh.js +1 -0
  80. music_assistant_frontend/assets/UserManagement-Cjprr5Bf.css +1 -0
  81. music_assistant_frontend/assets/UserManagement-D95vHQbd.js +1 -0
  82. music_assistant_frontend/assets/UserProfile-BT070UWs.js +1 -0
  83. music_assistant_frontend/assets/UserProfile-D9w29jno.css +1 -0
  84. music_assistant_frontend/assets/WidgetRow-CzSfjn6J.js +1 -0
  85. music_assistant_frontend/assets/color-BTziYnFN.js +1 -0
  86. music_assistant_frontend/assets/index-BFLe16Zh.js +1103 -0
  87. music_assistant_frontend/assets/index-BMjInzaQ.js +1 -0
  88. music_assistant_frontend/assets/index-CeixlMcg.css +1 -0
  89. music_assistant_frontend/assets/index-_We2Vr5Z.js +1 -0
  90. music_assistant_frontend/assets/index-vt6UORr-.js +1 -0
  91. music_assistant_frontend/assets/libopus-decoder-elWjCkSR.js +1 -0
  92. music_assistant_frontend/assets/lucide-C2DU1LFb.js +1 -0
  93. music_assistant_frontend/assets/marked-C0Rlrcoy.js +59 -0
  94. music_assistant_frontend/assets/marquee_text_sync-CEgtptD4.js +1 -0
  95. music_assistant_frontend/assets/mdi-DTeawFQ8.css +1 -0
  96. music_assistant_frontend/assets/oggOpusDecoder-FGWA1cRr.js +1 -0
  97. music_assistant_frontend/assets/profile-Cv_y861N.js +23 -0
  98. music_assistant_frontend/assets/qrcode-DSFhiIp2.js +10 -0
  99. music_assistant_frontend/assets/reka-ui-GpbaI08z.js +3 -0
  100. music_assistant_frontend/assets/swiper-DDQ4uUkz.css +1 -0
  101. music_assistant_frontend/assets/swiper-Jy9GbtzK.js +1 -0
  102. music_assistant_frontend/assets/userPreferences-DsKUT7Ha.js +1 -0
  103. music_assistant_frontend/assets/utils-CDN07tui.js +1 -0
  104. music_assistant_frontend/assets/vue-i18n-CX-lsKIo.js +3 -0
  105. music_assistant_frontend/assets/vue-router-BgJK_hRC.js +1 -0
  106. music_assistant_frontend/assets/vuetify-CrxirfrA.js +16 -0
  107. music_assistant_frontend/assets/vuetify-bOa_R6j7.css +1 -0
  108. music_assistant_frontend/assets/vueuse-DIaEWNCo.js +1 -0
  109. music_assistant_frontend/index.html +14 -2
  110. music_assistant_frontend/sw.js +2 -2
  111. {music_assistant_frontend-2.17.34.dist-info → music_assistant_frontend-2.17.63.dist-info}/METADATA +1 -1
  112. music_assistant_frontend-2.17.63.dist-info/RECORD +159 -0
  113. music_assistant_frontend/assets/About-BkJaoSR3.js +0 -1
  114. music_assistant_frontend/assets/About-BlM2bNNU.css +0 -1
  115. music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-C1nm8oQh.js +0 -1
  116. music_assistant_frontend/assets/AddPlayerGroup-B3NNUL-h.js +0 -1
  117. music_assistant_frontend/assets/AddProviderDetails-BtrgTFts.js +0 -1
  118. music_assistant_frontend/assets/AlbumDetails-baXoKXD6.js +0 -1
  119. music_assistant_frontend/assets/ArtistDetails-Cv9mXN_k.js +0 -1
  120. music_assistant_frontend/assets/AudiobookDetails-7rFtcITw.js +0 -1
  121. music_assistant_frontend/assets/BrowseView-CYbwlBvT.css +0 -1
  122. music_assistant_frontend/assets/BrowseView-tAHBas4g.js +0 -1
  123. music_assistant_frontend/assets/Button-BcX_QSum.js +0 -1
  124. music_assistant_frontend/assets/Button-D25yJYMO.css +0 -1
  125. music_assistant_frontend/assets/Container-Bc5cvdS8.js +0 -1
  126. music_assistant_frontend/assets/Container-Df7sl-nn.css +0 -1
  127. music_assistant_frontend/assets/CreateTokenDialog.vue_vue_type_script_setup_true_lang-BHmJvDQD.js +0 -1
  128. music_assistant_frontend/assets/Default-BFKmuyAJ.css +0 -1
  129. music_assistant_frontend/assets/Default-DdviBUvO.js +0 -21
  130. music_assistant_frontend/assets/EditConfig-Bwi8QH5_.js +0 -2
  131. music_assistant_frontend/assets/EditConfig-UwCqmE_b.css +0 -1
  132. music_assistant_frontend/assets/EditCoreConfig-DhX-oxAE.css +0 -1
  133. music_assistant_frontend/assets/EditCoreConfig-Dlub9slv.js +0 -1
  134. music_assistant_frontend/assets/EditPlayer-CBFrbjNV.js +0 -1
  135. music_assistant_frontend/assets/EditPlayer-D1wKcKqn.css +0 -1
  136. music_assistant_frontend/assets/EditPlayerDsp-DTXNvLKR.js +0 -9
  137. music_assistant_frontend/assets/EditPlayerDsp-aJcSg6U0.css +0 -1
  138. music_assistant_frontend/assets/EditProvider-CHnmNs-E.js +0 -1
  139. music_assistant_frontend/assets/EditProvider-CM1P0zG2.css +0 -1
  140. music_assistant_frontend/assets/FrontendConfig-B3J0qsPa.js +0 -1
  141. music_assistant_frontend/assets/HomeView-BprizvGE.css +0 -1
  142. music_assistant_frontend/assets/HomeView-CfJ6PURe.js +0 -1
  143. music_assistant_frontend/assets/ItemsListing-4Tzirx3k.js +0 -1
  144. music_assistant_frontend/assets/ItemsListing-DBRgGdb9.css +0 -1
  145. music_assistant_frontend/assets/LibraryAlbums-B-uXhDO3.js +0 -1
  146. music_assistant_frontend/assets/LibraryArtists-Cm1JjbAl.js +0 -1
  147. music_assistant_frontend/assets/LibraryAudiobooks-BhxjD53T.js +0 -1
  148. music_assistant_frontend/assets/LibraryPlaylists-B854CAZn.js +0 -1
  149. music_assistant_frontend/assets/LibraryPodcasts-RhDZe6jX.js +0 -1
  150. music_assistant_frontend/assets/LibraryRadios-DL5ap70-.js +0 -1
  151. music_assistant_frontend/assets/LibraryTracks-9TVfLfIN.js +0 -1
  152. music_assistant_frontend/assets/ListItem-CZjh-Z2L.css +0 -1
  153. music_assistant_frontend/assets/ListItem-Cz0zK7Ay.js +0 -1
  154. music_assistant_frontend/assets/MediaItemImages-Dz3pW0B9.js +0 -1
  155. music_assistant_frontend/assets/MediaItemImages-EU1ndGHN.css +0 -1
  156. music_assistant_frontend/assets/MediaItemThumb-C--YJJ5Y.js +0 -1
  157. music_assistant_frontend/assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js +0 -1
  158. music_assistant_frontend/assets/PanelviewItemCompact-BFofUlbn.js +0 -1
  159. music_assistant_frontend/assets/PanelviewItemCompact-BzbA-hBb.css +0 -1
  160. music_assistant_frontend/assets/PlayerCard-BSr8tpdq.js +0 -1
  161. music_assistant_frontend/assets/PlayerCard-C-JW0iD0.css +0 -1
  162. music_assistant_frontend/assets/Players-BKvWHX7u.js +0 -1
  163. music_assistant_frontend/assets/Players-BpLyas-U.css +0 -1
  164. music_assistant_frontend/assets/PlaylistDetails-DwPf38WL.js +0 -1
  165. music_assistant_frontend/assets/PodcastDetails-BkL3RLSo.js +0 -1
  166. music_assistant_frontend/assets/ProviderDetails-sWAPBlBe.css +0 -1
  167. music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-Boj6o7qU.js +0 -8
  168. music_assistant_frontend/assets/Providers-7gRu2tNl.js +0 -1
  169. music_assistant_frontend/assets/Providers-CZ5m317K.css +0 -1
  170. music_assistant_frontend/assets/RadioDetails-B5bulWqe.js +0 -1
  171. music_assistant_frontend/assets/RemoteAccessSettings-Bf5s7Cwr.css +0 -1
  172. music_assistant_frontend/assets/RemoteAccessSettings-CFIeLSWz.js +0 -1
  173. music_assistant_frontend/assets/Search-BAjKkIIQ.js +0 -1
  174. music_assistant_frontend/assets/ServerLogs-CCtjIDNl.js +0 -4
  175. music_assistant_frontend/assets/ServerLogs-D16I7ozL.css +0 -1
  176. music_assistant_frontend/assets/Settings-BE2vTu_e.css +0 -1
  177. music_assistant_frontend/assets/Settings-C8IEjo0h.js +0 -1
  178. music_assistant_frontend/assets/SystemConfig-DgVHrDLs.js +0 -1
  179. music_assistant_frontend/assets/Toolbar-BhPGsr4E.js +0 -1
  180. music_assistant_frontend/assets/Toolbar-DzRHLZVV.css +0 -1
  181. music_assistant_frontend/assets/TrackDetails-CN0utK-p.js +0 -1
  182. music_assistant_frontend/assets/UserManagement-BXsqKl-G.css +0 -1
  183. music_assistant_frontend/assets/UserManagement-XUiOYKeu.js +0 -1
  184. music_assistant_frontend/assets/UserProfile-2WJSaYoR.css +0 -1
  185. music_assistant_frontend/assets/UserProfile-BJFh70ps.js +0 -1
  186. music_assistant_frontend/assets/VAlert-BDbtqfCV.css +0 -1
  187. music_assistant_frontend/assets/VAlert-C8Oto4eV.js +0 -1
  188. music_assistant_frontend/assets/VCheckbox-CgwahLqh.js +0 -1
  189. music_assistant_frontend/assets/VCheckbox-CvH8ekHL.css +0 -1
  190. music_assistant_frontend/assets/VCheckboxBtn-orONEqTE.js +0 -1
  191. music_assistant_frontend/assets/VDialog-DwTSAOeg.css +0 -1
  192. music_assistant_frontend/assets/VDialog-OmJrmVI_.js +0 -1
  193. music_assistant_frontend/assets/VExpansionPanels-B8KjM0Qi.css +0 -1
  194. music_assistant_frontend/assets/VExpansionPanels-D8F4VK-K.js +0 -1
  195. music_assistant_frontend/assets/VForm-CRBkgkz1.js +0 -1
  196. music_assistant_frontend/assets/VInfiniteScroll-B-XMauN8.css +0 -1
  197. music_assistant_frontend/assets/VInfiniteScroll-C839Qj3G.js +0 -1
  198. music_assistant_frontend/assets/VSelect-DMb2DNZp.css +0 -1
  199. music_assistant_frontend/assets/VSelect-vsgYa-Ce.js +0 -1
  200. music_assistant_frontend/assets/VSelectionControl-C9uJkKHo.js +0 -1
  201. music_assistant_frontend/assets/VSelectionControl-CIeJsqfW.css +0 -1
  202. music_assistant_frontend/assets/VSlider-BxXcuhLj.js +0 -1
  203. music_assistant_frontend/assets/VSlider-DlBvQp-0.css +0 -1
  204. music_assistant_frontend/assets/VSwitch-C4Td5_x0.js +0 -1
  205. music_assistant_frontend/assets/VSwitch-Mm7Rd7At.css +0 -1
  206. music_assistant_frontend/assets/VToolbar-BTrAkkB7.js +0 -1
  207. music_assistant_frontend/assets/VToolbar-D1tRNhN6.css +0 -1
  208. music_assistant_frontend/assets/VVirtualScroll-BNcY_ygg.css +0 -1
  209. music_assistant_frontend/assets/VVirtualScroll-YsHPZNGu.js +0 -1
  210. music_assistant_frontend/assets/WidgetRow-lS8eZGg2.js +0 -1
  211. music_assistant_frontend/assets/index-BYK1uYGl.css +0 -1
  212. music_assistant_frontend/assets/index-GQ3lWXrm.js +0 -1047
  213. music_assistant_frontend/assets/marquee_text_sync-a11Dvzhd.js +0 -1
  214. music_assistant_frontend/assets/userPreferences-CU3N6m4Z.js +0 -1
  215. music_assistant_frontend-2.17.34.dist-info/RECORD +0 -154
  216. {music_assistant_frontend-2.17.34.dist-info → music_assistant_frontend-2.17.63.dist-info}/WHEEL +0 -0
  217. {music_assistant_frontend-2.17.34.dist-info → music_assistant_frontend-2.17.63.dist-info}/licenses/LICENSE +0 -0
  218. {music_assistant_frontend-2.17.34.dist-info → music_assistant_frontend-2.17.63.dist-info}/top_level.txt +0 -0
@@ -0,0 +1 @@
1
+ import{s as ye,ag as Q,r as q,ai as oe,j as X,c as O,w as $,_ as R,G as H,u as Y,k as W,aj as ae,S as ce,i as we,y as G,q as w,o as Z,R as N,m as re,a4 as Se,a6 as fe,U as be,a0 as Oe}from"./lucide-C2DU1LFb.js";function Ee(e,t,n={}){let o,r,i,s=!0;const u=()=>{s=!0,i()};$(e,u,{flush:"sync",...n});const c=typeof t=="function"?t:t.get,l=typeof t=="function"?void 0:t.set,a=oe((v,f)=>(r=v,i=f,{get(){return s&&(o=c(o),s=!1),r(),o},set(d){l?.(d)}}));return a.trigger=u,a}const ee=new WeakMap,Ae=(...e)=>{var t;const n=e[0],o=(t=W())===null||t===void 0?void 0:t.proxy,r=o??ce();if(r==null&&!ae())throw new Error("injectLocal must be called in setup");return r&&ee.has(r)&&n in ee.get(r)?ee.get(r)[n]:we(...e)},de=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ce=e=>typeof e<"u",$e=Object.prototype.toString,Te=e=>$e.call(e)==="[object Object]",_e=()=>{};function ve(...e){if(e.length!==1)return ye(...e);const t=e[0];return typeof t=="function"?Q(oe(()=>({get:t,set:_e}))):q(t)}function Me(e,t){function n(...o){return new Promise((r,i)=>{Promise.resolve(e(()=>t.apply(this,o),{fn:t,thisArg:this,args:o})).then(r).catch(i)})}return n}const me=e=>e();function Ne(e=me,t={}){const{initialState:n="active"}=t,o=ve(n==="active");function r(){o.value=!1}function i(){o.value=!0}const s=(...u)=>{o.value&&e(...u)};return{isActive:Q(o),pause:r,resume:i,eventFilter:s}}function ue(e){return e.endsWith("rem")?Number.parseFloat(e)*16:Number.parseFloat(e)}function te(e){return Array.isArray(e)?e:[e]}function We(e){return W()}function Pe(e){return R(e)?H(new Proxy({},{get(t,n,o){return Y(Reflect.get(e.value,n,o))},set(t,n,o){return R(e.value[n])&&!R(o)?e.value[n].value=o:e.value[n]=o,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}})):H(e)}function xe(e){return Pe(O(e))}function gt(e,...t){const n=t.flat(),o=n[0];return xe(()=>Object.fromEntries(typeof o=="function"?Object.entries(G(e)).filter(([r,i])=>!o(w(i),r)):Object.entries(G(e)).filter(r=>!n.includes(r[0]))))}function Fe(e,t,n={}){const{eventFilter:o=me,...r}=n;return $(e,Me(o,t),r)}function ze(e,t,n={}){const{eventFilter:o,initialState:r="active",...i}=n,{eventFilter:s,pause:u,resume:c,isActive:l}=Ne(o,{initialState:r});return{stop:Fe(e,t,{...i,eventFilter:s}),pause:u,resume:c,isActive:l}}const De=ze;function pe(e,t=!0,n){We()?Z(e,n):t?e():X(e)}function ke(e,t,n){return $(e,t,{...n,immediate:!0})}const D=de?window:void 0,yt=de?window.document:void 0;function ie(e){var t;const n=w(e);return(t=n?.$el)!==null&&t!==void 0?t:n}function ne(...e){const t=(o,r,i,s)=>(o.addEventListener(r,i,s),()=>o.removeEventListener(r,i,s)),n=O(()=>{const o=te(w(e[0])).filter(r=>r!=null);return o.every(r=>typeof r!="string")?o:void 0});return ke(()=>{var o,r;return[(o=(r=n.value)===null||r===void 0?void 0:r.map(i=>ie(i)))!==null&&o!==void 0?o:[D].filter(i=>i!=null),te(w(n.value?e[1]:e[0])),te(Y(n.value?e[2]:e[1])),w(n.value?e[3]:e[2])]},([o,r,i,s],u,c)=>{if(!o?.length||!r?.length||!i?.length)return;const l=Te(s)?{...s}:s,a=o.flatMap(v=>r.flatMap(f=>i.map(d=>t(v,f,d,l))));c(()=>{a.forEach(v=>v())})},{flush:"post"})}function Ve(){const e=N(!1),t=W();return t&&Z(()=>{e.value=!0},t),e}function Le(e){const t=Ve();return O(()=>(t.value,!!e()))}const Re=Symbol("vueuse-ssr-width");function je(){const e=ae()?Ae(Re,null):null;return typeof e=="number"?e:void 0}function Ie(e,t={}){const{window:n=D,ssrWidth:o=je()}=t,r=Le(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function"),i=N(typeof o=="number"),s=N(),u=N(!1),c=l=>{u.value=l.matches};return re(()=>{if(i.value){i.value=!r.value,u.value=w(e).split(",").some(l=>{const a=l.includes("not all"),v=l.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),f=l.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);let d=!!(v||f);return v&&d&&(d=o>=ue(v[1])),f&&d&&(d=o<=ue(f[1])),a?!d:d});return}r.value&&(s.value=n.matchMedia(w(e)),u.value=s.value.matches)}),ne(s,"change",c,{passive:!0}),O(()=>u.value)}function Je(e){return JSON.parse(JSON.stringify(e))}const U=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},K="__vueuse_ssr_handlers__",Ue=Ke();function Ke(){return K in U||(U[K]=U[K]||{}),U[K]}function he(e,t){return Ue[e]||t}function Be(e){return Ie("(prefers-color-scheme: dark)",e)}function He(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const Ge={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},le="vueuse-storage";function Qe(e,t,n,o={}){var r;const{flush:i="pre",deep:s=!0,listenToStorageChanges:u=!0,writeDefaults:c=!0,mergeDefaults:l=!1,shallow:a,window:v=D,eventFilter:f,onError:d=m=>{console.error(m)},initOnMounted:p}=o,S=(a?N:q)(typeof t=="function"?t():t),E=O(()=>w(e));if(!n)try{n=he("getDefaultStorage",()=>D?.localStorage)()}catch(m){d(m)}if(!n)return S;const A=w(t),g=He(A),h=(r=o.serializer)!==null&&r!==void 0?r:Ge[g],{pause:y,resume:C}=De(S,m=>x(m),{flush:i,deep:s,eventFilter:f});$(E,()=>_(),{flush:i});let T=!1;const V=m=>{p&&!T||_(m)},I=m=>{p&&!T||z(m)};v&&u&&(n instanceof Storage?ne(v,"storage",V,{passive:!0}):ne(v,le,I)),p?pe(()=>{T=!0,_()}):_();function L(m,b){if(v){const M={key:E.value,oldValue:m,newValue:b,storageArea:n};v.dispatchEvent(n instanceof Storage?new StorageEvent("storage",M):new CustomEvent(le,{detail:M}))}}function x(m){try{const b=n.getItem(E.value);if(m==null)L(b,null),n.removeItem(E.value);else{const M=h.write(m);b!==M&&(n.setItem(E.value,M),L(b,M))}}catch(b){d(b)}}function F(m){const b=m?m.newValue:n.getItem(E.value);if(b==null)return c&&A!=null&&n.setItem(E.value,h.write(A)),A;if(!m&&l){const M=h.read(b);return typeof l=="function"?l(M,A):g==="object"&&!Array.isArray(M)?{...A,...M}:M}else return typeof b!="string"?b:h.read(b)}function _(m){if(!(m&&m.storageArea!==n)){if(m&&m.key==null){S.value=A;return}if(!(m&&m.key!==E.value)){y();try{const b=h.write(S.value);(m===void 0||m?.newValue!==b)&&(S.value=F(m))}catch(b){d(b)}finally{m?X(C):C()}}}}function z(m){_(m.detail)}return S}const qe="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function wt(e={}){const{selector:t="html",attribute:n="class",initialValue:o="auto",window:r=D,storage:i,storageKey:s="vueuse-color-scheme",listenToStorageChanges:u=!0,storageRef:c,emitAuto:l,disableTransition:a=!0}=e,v={auto:"",light:"light",dark:"dark",...e.modes||{}},f=Be({window:r}),d=O(()=>f.value?"dark":"light"),p=c||(s==null?ve(o):Qe(s,o,i,{window:r,listenToStorageChanges:u})),S=O(()=>p.value==="auto"?d.value:p.value),E=he("updateHTMLAttrs",(y,C,T)=>{const V=typeof y=="string"?r?.document.querySelector(y):ie(y);if(!V)return;const I=new Set,L=new Set;let x=null;if(C==="class"){const _=T.split(/\s/g);Object.values(v).flatMap(z=>(z||"").split(/\s/g)).filter(Boolean).forEach(z=>{_.includes(z)?I.add(z):L.add(z)})}else x={key:C,value:T};if(I.size===0&&L.size===0&&x===null)return;let F;a&&(F=r.document.createElement("style"),F.appendChild(document.createTextNode(qe)),r.document.head.appendChild(F));for(const _ of I)V.classList.add(_);for(const _ of L)V.classList.remove(_);x&&V.setAttribute(x.key,x.value),a&&(r.getComputedStyle(F).opacity,document.head.removeChild(F))});function A(y){var C;E(t,n,(C=v[y])!==null&&C!==void 0?C:y)}function g(y){e.onChanged?e.onChanged(y,A):A(y)}$(S,g,{flush:"post",immediate:!0}),pe(()=>g(S.value));const h=O({get(){return l?p.value:S.value},set(y){p.value=y}});return Object.assign(h,{store:p,system:d,state:S})}function St(e){const t=W(),n=Ee(()=>null,()=>e?ie(e):t.proxy.$el);return Se(n.trigger),Z(n.trigger),n}function bt(e,t,n,o={}){var r,i;const{clone:s=!1,passive:u=!1,eventName:c,deep:l=!1,defaultValue:a,shouldEmit:v}=o,f=W(),d=n||f?.emit||(f==null||(r=f.$emit)===null||r===void 0?void 0:r.bind(f))||(f==null||(i=f.proxy)===null||i===void 0||(i=i.$emit)===null||i===void 0?void 0:i.bind(f?.proxy));let p=c;t||(t="modelValue"),p=p||`update:${t.toString()}`;const S=g=>s?typeof s=="function"?s(g):Je(g):g,E=()=>Ce(e[t])?S(e[t]):a,A=g=>{v?v(g)&&d(p,g):d(p,g)};if(u){const g=q(E());let h=!1;return $(()=>e[t],y=>{h||(h=!0,g.value=S(y),X(()=>h=!1))}),$(g,y=>{!h&&(y!==e[t]||l)&&A(y)},{deep:l}),g}else return O({get(){return E()},set(g){A(g)}})}function Ot(e,t){var n;const o=N();return re(()=>{o.value=e()},{...t,flush:(n=void 0)!=null?n:"sync"}),Q(o)}function P(e){return ce()?(be(e),!0):!1}function Et(){const e=new Set,t=i=>{e.delete(i)};return{on:i=>{e.add(i);const s=()=>t(i);return P(s),{off:s}},off:t,trigger:(...i)=>Promise.all(Array.from(e).map(s=>s(...i))),clear:()=>{e.clear()}}}function At(e){let t=!1,n;const o=fe(!0);return(...r)=>(t||(n=o.run(()=>e(...r)),t=!0),n)}function Ct(e){let t=0,n,o;const r=()=>{t-=1,o&&t<=0&&(o.stop(),n=void 0,o=void 0)};return(...i)=>(t+=1,o||(o=fe(!0),n=o.run(()=>e(...i))),P(r),n)}function Xe(e){if(!R(e))return H(e);const t=new Proxy({},{get(n,o,r){return Y(Reflect.get(e.value,o,r))},set(n,o,r){return R(e.value[o])&&!R(r)?e.value[o].value=r:e.value[o]=r,!0},deleteProperty(n,o){return Reflect.deleteProperty(e.value,o)},has(n,o){return Reflect.has(e.value,o)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}});return H(t)}function Ye(e){return Xe(O(e))}function $t(e,...t){const n=t.flat(),o=n[0];return Ye(()=>Object.fromEntries(typeof o=="function"?Object.entries(G(e)).filter(([r,i])=>!o(w(i),r)):Object.entries(G(e)).filter(r=>!n.includes(r[0]))))}const se=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const Ze=e=>typeof e<"u",et=e=>e!=null,tt=Object.prototype.toString,nt=e=>tt.call(e)==="[object Object]",ot=()=>{},Tt=rt();function rt(){var e,t;return se&&((e=window?.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function it(e){return W()}function B(e){return Array.isArray(e)?e:[e]}function _t(e,t=1e4){return oe((n,o)=>{let r=w(e),i;const s=()=>setTimeout(()=>{r=w(e),o()},w(t));return P(()=>{clearTimeout(i)}),{get(){return n(),r},set(u){r=u,o(),clearTimeout(i),i=s()}}})}function Mt(e,t){it()&&Oe(e,t)}function Nt(e,t,n={}){const{immediate:o=!0,immediateCallback:r=!1}=n,i=N(!1);let s=null;function u(){s&&(clearTimeout(s),s=null)}function c(){i.value=!1,u()}function l(...a){r&&e(),u(),i.value=!0,s=setTimeout(()=>{i.value=!1,s=null,e(...a)},w(t))}return o&&(i.value=!0,se&&l()),P(c),{isPending:Q(i),start:l,stop:c}}function st(e,t,n){return $(e,t,{...n,immediate:!0})}const k=se?window:void 0;function j(e){var t;const n=w(e);return(t=n?.$el)!=null?t:n}function J(...e){const t=[],n=()=>{t.forEach(u=>u()),t.length=0},o=(u,c,l,a)=>(u.addEventListener(c,l,a),()=>u.removeEventListener(c,l,a)),r=O(()=>{const u=B(w(e[0])).filter(c=>c!=null);return u.every(c=>typeof c!="string")?u:void 0}),i=st(()=>{var u,c;return[(c=(u=r.value)==null?void 0:u.map(l=>j(l)))!=null?c:[k].filter(l=>l!=null),B(w(r.value?e[1]:e[0])),B(Y(r.value?e[2]:e[1])),w(r.value?e[3]:e[2])]},([u,c,l,a])=>{if(n(),!u?.length||!c?.length||!l?.length)return;const v=nt(a)?{...a}:a;t.push(...u.flatMap(f=>c.flatMap(d=>l.map(p=>o(f,d,p,v)))))},{flush:"post"}),s=()=>{i(),n()};return P(n),s}function ut(){const e=N(!1),t=W();return t&&Z(()=>{e.value=!0},t),e}function ge(e){const t=ut();return O(()=>(t.value,!!e()))}function lt(e,t,n={}){const{window:o=k,...r}=n;let i;const s=ge(()=>o&&"MutationObserver"in o),u=()=>{i&&(i.disconnect(),i=void 0)},c=O(()=>{const f=w(e),d=B(f).map(j).filter(et);return new Set(d)}),l=$(()=>c.value,f=>{u(),s.value&&f.size&&(i=new MutationObserver(t),f.forEach(d=>i.observe(d,r)))},{immediate:!0,flush:"post"}),a=()=>i?.takeRecords(),v=()=>{l(),u()};return P(v),{isSupported:s,stop:v,takeRecords:a}}function at(e,t,n={}){const{window:o=k,document:r=o?.document,flush:i="sync"}=n;if(!o||!r)return ot;let s;const u=a=>{s?.(),s=a},c=re(()=>{const a=j(e);if(a){const{stop:v}=lt(r,f=>{f.map(p=>[...p.removedNodes]).flat().some(p=>p===a||p.contains(a))&&t(f)},{window:o,childList:!0,subtree:!0});u(v)}},{flush:i}),l=()=>{c(),u()};return P(l),l}function ct(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function Wt(...e){let t,n,o={};e.length===3?(t=e[0],n=e[1],o=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,n=e[0],o=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);const{target:r=k,eventName:i="keydown",passive:s=!1,dedupe:u=!1}=o,c=ct(t);return J(r,i,a=>{a.repeat&&w(u)||c(a)&&n(a)},s)}function ft(e={}){var t;const{window:n=k,deep:o=!0,triggerOnRemoval:r=!1}=e,i=(t=e.document)!=null?t:n?.document,s=()=>{var l;let a=i?.activeElement;if(o)for(;a?.shadowRoot;)a=(l=a?.shadowRoot)==null?void 0:l.activeElement;return a},u=N(),c=()=>{u.value=s()};if(n){const l={capture:!0,passive:!0};J(n,"blur",a=>{a.relatedTarget===null&&c()},l),J(n,"focus",c,l)}return r&&at(u,c,{document:i}),c(),u}function dt(e){return JSON.parse(JSON.stringify(e))}function Pt(e,t,n={}){const{window:o=k,...r}=n;let i;const s=ge(()=>o&&"ResizeObserver"in o),u=()=>{i&&(i.disconnect(),i=void 0)},c=O(()=>{const v=w(e);return Array.isArray(v)?v.map(f=>j(f)):[j(v)]}),l=$(c,v=>{if(u(),s.value&&o){i=new ResizeObserver(t);for(const f of v)f&&i.observe(f,r)}},{immediate:!0,flush:"post"}),a=()=>{u(),l()};return P(a),{isSupported:s,stop:a}}const vt="focusin",mt="focusout",pt=":focus-within";function xt(e,t={}){const{window:n=k}=t,o=O(()=>j(e)),r=N(!1),i=O(()=>r.value),s=ft(t);if(!n||!s.value)return{focused:i};const u={passive:!0};return J(o,vt,()=>r.value=!0,u),J(o,mt,()=>{var c,l,a;return r.value=(a=(l=(c=o.value)==null?void 0:c.matches)==null?void 0:l.call(c,pt))!=null?a:!1},u),{focused:i}}function Ft(e,t,n,o={}){var r,i,s;const{clone:u=!1,passive:c=!1,eventName:l,deep:a=!1,defaultValue:v,shouldEmit:f}=o,d=W(),p=n||d?.emit||((r=d?.$emit)==null?void 0:r.bind(d))||((s=(i=d?.proxy)==null?void 0:i.$emit)==null?void 0:s.bind(d?.proxy));let S=l;t||(t="modelValue"),S=S||`update:${t.toString()}`;const E=h=>u?typeof u=="function"?u(h):dt(h):h,A=()=>Ze(e[t])?E(e[t]):v,g=h=>{f?f(h)&&p(S,h):p(S,h)};if(c){const h=A(),y=q(h);let C=!1;return $(()=>e[t],T=>{C||(C=!0,y.value=E(T),X(()=>C=!1))}),$(y,T=>{!C&&(T!==e[t]||a)&&g(T)},{deep:a}),y}else return O({get(){return A()},set(h){g(h)}})}export{St as A,Tt as a,j as b,Ct as c,P as d,Et as e,k as f,Ft as g,At as h,se as i,ut as j,Ot as k,$t as l,Ye as m,Pt as n,Wt as o,xt as p,Nt as q,_t as r,wt as s,Mt as t,J as u,gt as v,Ie as w,bt as x,ne as y,yt as z};
@@ -13,8 +13,20 @@
13
13
  <link rel="icon" href="favicon.ico" />
14
14
  <title>Music Assistant</title>
15
15
  <meta name="description" content="Music Assistant - Music library manager for Home Assistant">
16
- <script type="module" crossorigin src="./assets/index-GQ3lWXrm.js"></script>
17
- <link rel="stylesheet" crossorigin href="./assets/index-BYK1uYGl.css">
16
+ <script type="module" crossorigin src="./assets/index-BFLe16Zh.js"></script>
17
+ <link rel="modulepreload" crossorigin href="./assets/lucide-C2DU1LFb.js">
18
+ <link rel="modulepreload" crossorigin href="./assets/qrcode-DSFhiIp2.js">
19
+ <link rel="modulepreload" crossorigin href="./assets/marked-C0Rlrcoy.js">
20
+ <link rel="modulepreload" crossorigin href="./assets/color-BTziYnFN.js">
21
+ <link rel="modulepreload" crossorigin href="./assets/vue-router-BgJK_hRC.js">
22
+ <link rel="modulepreload" crossorigin href="./assets/vue-i18n-CX-lsKIo.js">
23
+ <link rel="modulepreload" crossorigin href="./assets/vuetify-CrxirfrA.js">
24
+ <link rel="modulepreload" crossorigin href="./assets/vueuse-DIaEWNCo.js">
25
+ <link rel="modulepreload" crossorigin href="./assets/swiper-Jy9GbtzK.js">
26
+ <link rel="stylesheet" crossorigin href="./assets/vuetify-bOa_R6j7.css">
27
+ <link rel="stylesheet" crossorigin href="./assets/swiper-DDQ4uUkz.css">
28
+ <link rel="stylesheet" crossorigin href="./assets/index-CeixlMcg.css">
29
+ <link rel="stylesheet" crossorigin href="./assets/mdi-DTeawFQ8.css">
18
30
  <link rel="manifest" href="./manifest.webmanifest"><style>@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe-3VVPul60.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe-B1tIhOr4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe-DnPa8eh0.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe-iaUSDqqS.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe-CBNGtO38.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe-Bm5C9Z0M.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe-24ctNiOc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe-Dqr_DJ6L.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:100;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA-CHnqiQTt.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe-3VVPul60.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe-B1tIhOr4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe-DnPa8eh0.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe-iaUSDqqS.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe-CBNGtO38.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe-Bm5C9Z0M.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe-24ctNiOc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe-Dqr_DJ6L.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA-CHnqiQTt.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe-3VVPul60.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe-B1tIhOr4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe-DnPa8eh0.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe-iaUSDqqS.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe-CBNGtO38.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe-Bm5C9Z0M.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe-24ctNiOc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe-Dqr_DJ6L.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA-CHnqiQTt.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe-3VVPul60.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe-B1tIhOr4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe-DnPa8eh0.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe-iaUSDqqS.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe-CBNGtO38.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe-Bm5C9Z0M.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe-24ctNiOc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe-Dqr_DJ6L.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA-CHnqiQTt.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe-3VVPul60.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe-B1tIhOr4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe-DnPa8eh0.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe-iaUSDqqS.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe-CBNGtO38.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe-Bm5C9Z0M.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe-24ctNiOc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe-Dqr_DJ6L.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA-CHnqiQTt.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe-3VVPul60.woff2) format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe-B1tIhOr4.woff2) format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe-DnPa8eh0.woff2) format('woff2');unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe-iaUSDqqS.woff2) format('woff2');unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe-CBNGtO38.woff2) format('woff2');unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe-Bm5C9Z0M.woff2) format('woff2');unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe-24ctNiOc.woff2) format('woff2');unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe-Dqr_DJ6L.woff2) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(./assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA-CHnqiQTt.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}</style></head>
19
31
  <body>
20
32
  <noscript>
@@ -1,2 +1,2 @@
1
- try{self["workbox:core:7.3.0"]&&_()}catch{}const T=(a,...e)=>{let t=a;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},N=T;class f extends Error{constructor(e,t){const s=N(e,t);super(s),this.name=e,this.details=t}}const d={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},b=a=>[d.prefix,a,d.suffix].filter(e=>e&&e.length>0).join("-"),E=a=>{for(const e of Object.keys(d))a(e)},L={updateDetails:a=>{E(e=>{typeof a[e]=="string"&&(d[e]=a[e])})},getGoogleAnalyticsName:a=>a||b(d.googleAnalytics),getPrecacheName:a=>a||b(d.precache),getPrefix:()=>d.prefix,getRuntimeName:a=>a||b(d.runtime),getSuffix:()=>d.suffix};function k(a,e){const t=e();return a.waitUntil(t),t}try{self["workbox:precaching:7.3.0"]&&_()}catch{}const M="__WB_REVISION__";function I(a){if(!a)throw new f("add-to-cache-list-unexpected-type",{entry:a});if(typeof a=="string"){const n=new URL(a,location.href);return{cacheKey:n.href,url:n.href}}const{revision:e,url:t}=a;if(!t)throw new f("add-to-cache-list-unexpected-type",{entry:a});if(!e){const n=new URL(t,location.href);return{cacheKey:n.href,url:n.href}}const s=new URL(t,location.href),r=new URL(t,location.href);return s.searchParams.set(M,e),{cacheKey:s.href,url:r.href}}class q{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:s})=>{if(e.type==="install"&&t&&t.originalRequest&&t.originalRequest instanceof Request){const r=t.originalRequest.url;s?this.notUpdatedURLs.push(r):this.updatedURLs.push(r)}return s}}}class O{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:t,params:s})=>{const r=s?.cacheKey||this._precacheController.getCacheKeyForURL(t.url);return r?new Request(r,{headers:t.headers}):t},this._precacheController=e}}let y;function W(){if(y===void 0){const a=new Response("");if("body"in a)try{new Response(a.body),y=!0}catch{y=!1}y=!1}return y}async function A(a,e){let t=null;if(a.url&&(t=new URL(a.url).origin),t!==self.location.origin)throw new f("cross-origin-copy-response",{origin:t});const s=a.clone(),n={headers:new Headers(s.headers),status:s.status,statusText:s.statusText},c=W()?s.body:await s.blob();return new Response(c,n)}const S=a=>new URL(String(a),location.href).href.replace(new RegExp(`^${location.origin}`),"");function K(a,e){const t=new URL(a);for(const s of e)t.searchParams.delete(s);return t.href}async function H(a,e,t,s){const r=K(e.url,t);if(e.url===r)return a.match(e,s);const n=Object.assign(Object.assign({},s),{ignoreSearch:!0}),c=await a.keys(e,n);for(const i of c){const o=K(i.url,t);if(r===o)return a.match(i,s)}}class D{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}const j=new Set;async function F(){for(const a of j)await a()}function B(a){return new Promise(e=>setTimeout(e,a))}try{self["workbox:strategies:7.3.0"]&&_()}catch{}function R(a){return typeof a=="string"?new Request(a):a}class ${constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new D,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const s of this._plugins)this._pluginStateMap.set(s,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let s=R(e);if(s.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const c=await t.preloadResponse;if(c)return c}const r=this.hasCallback("fetchDidFail")?s.clone():null;try{for(const c of this.iterateCallbacks("requestWillFetch"))s=await c({request:s.clone(),event:t})}catch(c){if(c instanceof Error)throw new f("plugin-error-request-will-fetch",{thrownErrorMessage:c.message})}const n=s.clone();try{let c;c=await fetch(s,s.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const i of this.iterateCallbacks("fetchDidSucceed"))c=await i({event:t,request:n,response:c});return c}catch(c){throw r&&await this.runCallbacks("fetchDidFail",{error:c,event:t,originalRequest:r.clone(),request:n.clone()}),c}}async fetchAndCachePut(e){const t=await this.fetch(e),s=t.clone();return this.waitUntil(this.cachePut(e,s)),t}async cacheMatch(e){const t=R(e);let s;const{cacheName:r,matchOptions:n}=this._strategy,c=await this.getCacheKey(t,"read"),i=Object.assign(Object.assign({},n),{cacheName:r});s=await caches.match(c,i);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))s=await o({cacheName:r,matchOptions:n,cachedResponse:s,request:c,event:this.event})||void 0;return s}async cachePut(e,t){const s=R(e);await B(0);const r=await this.getCacheKey(s,"write");if(!t)throw new f("cache-put-with-no-response",{url:S(r.url)});const n=await this._ensureResponseSafeToCache(t);if(!n)return!1;const{cacheName:c,matchOptions:i}=this._strategy,o=await self.caches.open(c),u=this.hasCallback("cacheDidUpdate"),l=u?await H(o,r.clone(),["__WB_REVISION__"],i):null;try{await o.put(r,u?n.clone():n)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await F(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:c,oldResponse:l,newResponse:n.clone(),request:r,event:this.event});return!0}async getCacheKey(e,t){const s=`${e.url} | ${t}`;if(!this._cacheKeys[s]){let r=e;for(const n of this.iterateCallbacks("cacheKeyWillBeUsed"))r=R(await n({mode:t,request:r,event:this.event,params:this.params}));this._cacheKeys[s]=r}return this._cacheKeys[s]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const s of this.iterateCallbacks(e))await s(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const s=this._pluginStateMap.get(t);yield n=>{const c=Object.assign(Object.assign({},n),{state:s});return t[e](c)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){for(;this._extendLifetimePromises.length;){const e=this._extendLifetimePromises.splice(0),s=(await Promise.allSettled(e)).find(r=>r.status==="rejected");if(s)throw s.reason}}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,s=!1;for(const r of this.iterateCallbacks("cacheWillUpdate"))if(t=await r({request:this.request,response:t,event:this.event})||void 0,s=!0,!t)break;return s||t&&t.status!==200&&(t=void 0),t}}class V{constructor(e={}){this.cacheName=L.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,s=typeof e.request=="string"?new Request(e.request):e.request,r="params"in e?e.params:void 0,n=new $(this,{event:t,request:s,params:r}),c=this._getResponse(n,s,t),i=this._awaitComplete(c,n,s,t);return[c,i]}async _getResponse(e,t,s){await e.runCallbacks("handlerWillStart",{event:s,request:t});let r;try{if(r=await this._handle(t,e),!r||r.type==="error")throw new f("no-response",{url:t.url})}catch(n){if(n instanceof Error){for(const c of e.iterateCallbacks("handlerDidError"))if(r=await c({error:n,event:s,request:t}),r)break}if(!r)throw n}for(const n of e.iterateCallbacks("handlerWillRespond"))r=await n({event:s,request:t,response:r});return r}async _awaitComplete(e,t,s,r){let n,c;try{n=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:r,request:s,response:n}),await t.doneWaiting()}catch(i){i instanceof Error&&(c=i)}if(await t.runCallbacks("handlerDidComplete",{event:r,request:s,response:n,error:c}),t.destroy(),c)throw c}}class p extends V{constructor(e={}){e.cacheName=L.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=e.fallbackToNetwork!==!1,this.plugins.push(p.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const s=await t.cacheMatch(e);return s||(t.event&&t.event.type==="install"?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let s;const r=t.params||{};if(this._fallbackToNetwork){const n=r.integrity,c=e.integrity,i=!c||c===n;s=await t.fetch(new Request(e,{integrity:e.mode!=="no-cors"?c||n:void 0})),n&&i&&e.mode!=="no-cors"&&(this._useDefaultCacheabilityPluginIfNeeded(),await t.cachePut(e,s.clone()))}else throw new f("missing-precache-entry",{cacheName:this.cacheName,url:e.url});return s}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const s=await t.fetch(e);if(!await t.cachePut(e,s.clone()))throw new f("bad-precaching-response",{url:e.url,status:s.status});return s}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[s,r]of this.plugins.entries())r!==p.copyRedirectedCacheableResponsesPlugin&&(r===p.defaultPrecacheCacheabilityPlugin&&(e=s),r.cacheWillUpdate&&t++);t===0?this.plugins.push(p.defaultPrecacheCacheabilityPlugin):t>1&&e!==null&&this.plugins.splice(e,1)}}p.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:a}){return!a||a.status>=400?null:a}};p.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:a}){return a.redirected?await A(a):a}};class G{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:s=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new p({cacheName:L.getPrecacheName(e),plugins:[...t,new O({precacheController:this})],fallbackToNetwork:s}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const s of e){typeof s=="string"?t.push(s):s&&s.revision===void 0&&t.push(s.url);const{cacheKey:r,url:n}=I(s),c=typeof s!="string"&&s.revision?"reload":"default";if(this._urlsToCacheKeys.has(n)&&this._urlsToCacheKeys.get(n)!==r)throw new f("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(n),secondEntry:r});if(typeof s!="string"&&s.integrity){if(this._cacheKeysToIntegrities.has(r)&&this._cacheKeysToIntegrities.get(r)!==s.integrity)throw new f("add-to-cache-list-conflicting-integrities",{url:n});this._cacheKeysToIntegrities.set(r,s.integrity)}if(this._urlsToCacheKeys.set(n,r),this._urlsToCacheModes.set(n,c),t.length>0){const i=`Workbox is precaching URLs without revision info: ${t.join(", ")}
2
- This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(i)}}}install(e){return k(e,async()=>{const t=new q;this.strategy.plugins.push(t);for(const[n,c]of this._urlsToCacheKeys){const i=this._cacheKeysToIntegrities.get(c),o=this._urlsToCacheModes.get(n),u=new Request(n,{integrity:i,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:c},request:u,event:e}))}const{updatedURLs:s,notUpdatedURLs:r}=t;return{updatedURLs:s,notUpdatedURLs:r}})}activate(e){return k(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),s=await t.keys(),r=new Set(this._urlsToCacheKeys.values()),n=[];for(const c of s)r.has(c.url)||(await t.delete(c),n.push(c.url));return{deletedURLs:n}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new f("non-precached-url",{url:e});return s=>(s.request=new Request(e),s.params=Object.assign({cacheKey:t},s.params),this.strategy.handle(s))}}let U;const v=()=>(U||(U=new G),U);try{self["workbox:routing:7.3.0"]&&_()}catch{}const x="GET",C=a=>a&&typeof a=="object"?a:{handle:a};class m{constructor(e,t,s=x){this.handler=C(t),this.match=e,this.method=s}setCatchHandler(e){this.catchHandler=C(e)}}class Q extends m{constructor(e,t,s){const r=({url:n})=>{const c=e.exec(n.href);if(c&&!(n.origin!==location.origin&&c.index!==0))return c.slice(1)};super(r,t,s)}}class z{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",(e=>{const{request:t}=e,s=this.handleRequest({request:t,event:e});s&&e.respondWith(s)}))}addCacheListener(){self.addEventListener("message",(e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,s=Promise.all(t.urlsToCache.map(r=>{typeof r=="string"&&(r=[r]);const n=new Request(...r);return this.handleRequest({request:n,event:e})}));e.waitUntil(s),e.ports&&e.ports[0]&&s.then(()=>e.ports[0].postMessage(!0))}}))}handleRequest({request:e,event:t}){const s=new URL(e.url,location.href);if(!s.protocol.startsWith("http"))return;const r=s.origin===location.origin,{params:n,route:c}=this.findMatchingRoute({event:t,request:e,sameOrigin:r,url:s});let i=c&&c.handler;const o=e.method;if(!i&&this._defaultHandlerMap.has(o)&&(i=this._defaultHandlerMap.get(o)),!i)return;let u;try{u=i.handle({url:s,request:e,event:t,params:n})}catch(h){u=Promise.reject(h)}const l=c&&c.catchHandler;return u instanceof Promise&&(this._catchHandler||l)&&(u=u.catch(async h=>{if(l)try{return await l.handle({url:s,request:e,event:t,params:n})}catch(P){P instanceof Error&&(h=P)}if(this._catchHandler)return this._catchHandler.handle({url:s,request:e,event:t});throw h})),u}findMatchingRoute({url:e,sameOrigin:t,request:s,event:r}){const n=this._routes.get(s.method)||[];for(const c of n){let i;const o=c.match({url:e,sameOrigin:t,request:s,event:r});if(o)return i=o,(Array.isArray(i)&&i.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(i=void 0),{route:c,params:i}}return{}}setDefaultHandler(e,t=x){this._defaultHandlerMap.set(t,C(e))}setCatchHandler(e){this._catchHandler=C(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new f("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new f("unregister-route-route-not-registered")}}let w;const J=()=>(w||(w=new z,w.addFetchListener(),w.addCacheListener()),w);function X(a,e,t){let s;if(typeof a=="string"){const n=new URL(a,location.href),c=({url:i})=>i.href===n.href;s=new m(c,e,t)}else if(a instanceof RegExp)s=new Q(a,e,t);else if(typeof a=="function")s=new m(a,e,t);else if(a instanceof m)s=a;else throw new f("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return J().registerRoute(s),s}function Y(a,e=[]){for(const t of[...a.searchParams.keys()])e.some(s=>s.test(t))&&a.searchParams.delete(t);return a}function*Z(a,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:s=!0,urlManipulation:r}={}){const n=new URL(a,location.href);n.hash="",yield n.href;const c=Y(n,e);if(yield c.href,t&&c.pathname.endsWith("/")){const i=new URL(c.href);i.pathname+=t,yield i.href}if(s){const i=new URL(c.href);i.pathname+=".html",yield i.href}if(r){const i=r({url:n});for(const o of i)yield o.href}}class ee extends m{constructor(e,t){const s=({request:r})=>{const n=e.getURLsToCacheKeys();for(const c of Z(r.url,t)){const i=n.get(c);if(i){const o=e.getIntegrityForCacheKey(i);return{cacheKey:i,integrity:o}}}};super(s,e.strategy)}}function te(a){const e=v(),t=new ee(e,a);X(t)}function se(a){v().precache(a)}function ae(a,e){se(a),te(e)}ae([{"revision":"1c67d26c605962b3d930c4cad20e2099","url":"index.html"},{"revision":null,"url":"assets/workbox-window.prod.es5-BIl4cyR9.js"},{"revision":null,"url":"assets/userPreferences-CU3N6m4Z.js"},{"revision":null,"url":"assets/marquee_text_sync-a11Dvzhd.js"},{"revision":null,"url":"assets/marquee_text_sync-CWCHA3k2.css"},{"revision":null,"url":"assets/index.browser-OxPLOBIU.js"},{"revision":null,"url":"assets/index-kQIztB-E.js"},{"revision":null,"url":"assets/index-GQ3lWXrm.js"},{"revision":null,"url":"assets/index-BYK1uYGl.css"},{"revision":null,"url":"assets/constants-CXMxJR4j.js"},{"revision":null,"url":"assets/WidgetRow-lS8eZGg2.js"},{"revision":null,"url":"assets/WidgetRow-CzKBwQIP.css"},{"revision":null,"url":"assets/VVirtualScroll-YsHPZNGu.js"},{"revision":null,"url":"assets/VVirtualScroll-BNcY_ygg.css"},{"revision":null,"url":"assets/VToolbar-D1tRNhN6.css"},{"revision":null,"url":"assets/VToolbar-BTrAkkB7.js"},{"revision":null,"url":"assets/VSwitch-Mm7Rd7At.css"},{"revision":null,"url":"assets/VSwitch-C4Td5_x0.js"},{"revision":null,"url":"assets/VSlider-DlBvQp-0.css"},{"revision":null,"url":"assets/VSlider-BxXcuhLj.js"},{"revision":null,"url":"assets/VSelectionControl-CIeJsqfW.css"},{"revision":null,"url":"assets/VSelectionControl-C9uJkKHo.js"},{"revision":null,"url":"assets/VSelect-vsgYa-Ce.js"},{"revision":null,"url":"assets/VSelect-DMb2DNZp.css"},{"revision":null,"url":"assets/VInfiniteScroll-C839Qj3G.js"},{"revision":null,"url":"assets/VInfiniteScroll-B-XMauN8.css"},{"revision":null,"url":"assets/VForm-CRBkgkz1.js"},{"revision":null,"url":"assets/VExpansionPanels-D8F4VK-K.js"},{"revision":null,"url":"assets/VExpansionPanels-B8KjM0Qi.css"},{"revision":null,"url":"assets/VDialog-OmJrmVI_.js"},{"revision":null,"url":"assets/VDialog-DwTSAOeg.css"},{"revision":null,"url":"assets/VCheckboxBtn-orONEqTE.js"},{"revision":null,"url":"assets/VCheckbox-CvH8ekHL.css"},{"revision":null,"url":"assets/VCheckbox-CgwahLqh.js"},{"revision":null,"url":"assets/VAlert-C8Oto4eV.js"},{"revision":null,"url":"assets/VAlert-BDbtqfCV.css"},{"revision":null,"url":"assets/UserProfile-BJFh70ps.js"},{"revision":null,"url":"assets/UserProfile-2WJSaYoR.css"},{"revision":null,"url":"assets/UserManagement-XUiOYKeu.js"},{"revision":null,"url":"assets/UserManagement-BXsqKl-G.css"},{"revision":null,"url":"assets/TrackDetails-CN0utK-p.js"},{"revision":null,"url":"assets/Toolbar-DzRHLZVV.css"},{"revision":null,"url":"assets/Toolbar-BhPGsr4E.js"},{"revision":null,"url":"assets/SystemConfig-DgVHrDLs.js"},{"revision":null,"url":"assets/SystemConfig-BKi5ffMS.css"},{"revision":null,"url":"assets/Settings-C8IEjo0h.js"},{"revision":null,"url":"assets/Settings-BE2vTu_e.css"},{"revision":null,"url":"assets/ServerLogs-D16I7ozL.css"},{"revision":null,"url":"assets/ServerLogs-CCtjIDNl.js"},{"revision":null,"url":"assets/Search-BAjKkIIQ.js"},{"revision":null,"url":"assets/RemoteAccessSettings-CFIeLSWz.js"},{"revision":null,"url":"assets/RemoteAccessSettings-Bf5s7Cwr.css"},{"revision":null,"url":"assets/RadioDetails-B5bulWqe.js"},{"revision":null,"url":"assets/Providers-CZ5m317K.css"},{"revision":null,"url":"assets/Providers-7gRu2tNl.js"},{"revision":null,"url":"assets/ProviderDetails.vue_vue_type_script_setup_true_lang-Boj6o7qU.js"},{"revision":null,"url":"assets/ProviderDetails-sWAPBlBe.css"},{"revision":null,"url":"assets/PodcastDetails-BkL3RLSo.js"},{"revision":null,"url":"assets/PlaylistDetails-DwPf38WL.js"},{"revision":null,"url":"assets/Players-BpLyas-U.css"},{"revision":null,"url":"assets/Players-BKvWHX7u.js"},{"revision":null,"url":"assets/PlayerCard-C-JW0iD0.css"},{"revision":null,"url":"assets/PlayerCard-BSr8tpdq.js"},{"revision":null,"url":"assets/PanelviewItemCompact-BzbA-hBb.css"},{"revision":null,"url":"assets/PanelviewItemCompact-BFofUlbn.js"},{"revision":null,"url":"assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js"},{"revision":null,"url":"assets/NowPlayingBadge-DlzVWxxU.css"},{"revision":null,"url":"assets/MediaItemThumb-C--YJJ5Y.js"},{"revision":null,"url":"assets/MediaItemImages-EU1ndGHN.css"},{"revision":null,"url":"assets/MediaItemImages-Dz3pW0B9.js"},{"revision":null,"url":"assets/ListItem-Cz0zK7Ay.js"},{"revision":null,"url":"assets/ListItem-CZjh-Z2L.css"},{"revision":null,"url":"assets/LibraryTracks-9TVfLfIN.js"},{"revision":null,"url":"assets/LibraryRadios-DL5ap70-.js"},{"revision":null,"url":"assets/LibraryPodcasts-RhDZe6jX.js"},{"revision":null,"url":"assets/LibraryPlaylists-B854CAZn.js"},{"revision":null,"url":"assets/LibraryAudiobooks-BhxjD53T.js"},{"revision":null,"url":"assets/LibraryArtists-Cm1JjbAl.js"},{"revision":null,"url":"assets/LibraryAlbums-B-uXhDO3.js"},{"revision":null,"url":"assets/ItemsListing-DBRgGdb9.css"},{"revision":null,"url":"assets/ItemsListing-4Tzirx3k.js"},{"revision":null,"url":"assets/HomeView-CfJ6PURe.js"},{"revision":null,"url":"assets/HomeView-BprizvGE.css"},{"revision":null,"url":"assets/FrontendConfig-B3J0qsPa.js"},{"revision":null,"url":"assets/EditProvider-CM1P0zG2.css"},{"revision":null,"url":"assets/EditProvider-CHnmNs-E.js"},{"revision":null,"url":"assets/EditPlayerDsp-aJcSg6U0.css"},{"revision":null,"url":"assets/EditPlayerDsp-DTXNvLKR.js"},{"revision":null,"url":"assets/EditPlayer-D1wKcKqn.css"},{"revision":null,"url":"assets/EditPlayer-CBFrbjNV.js"},{"revision":null,"url":"assets/EditCoreConfig-Dlub9slv.js"},{"revision":null,"url":"assets/EditCoreConfig-DhX-oxAE.css"},{"revision":null,"url":"assets/EditConfig-UwCqmE_b.css"},{"revision":null,"url":"assets/EditConfig-Bwi8QH5_.js"},{"revision":null,"url":"assets/Default-DdviBUvO.js"},{"revision":null,"url":"assets/Default-BFKmuyAJ.css"},{"revision":null,"url":"assets/CreateTokenDialog.vue_vue_type_script_setup_true_lang-BHmJvDQD.js"},{"revision":null,"url":"assets/Container-Df7sl-nn.css"},{"revision":null,"url":"assets/Container-Bc5cvdS8.js"},{"revision":null,"url":"assets/Button-D25yJYMO.css"},{"revision":null,"url":"assets/Button-BcX_QSum.js"},{"revision":null,"url":"assets/BrowseView-tAHBas4g.js"},{"revision":null,"url":"assets/BrowseView-CYbwlBvT.css"},{"revision":null,"url":"assets/AudiobookDetails-7rFtcITw.js"},{"revision":null,"url":"assets/ArtistDetails-Cv9mXN_k.js"},{"revision":null,"url":"assets/AlbumDetails-baXoKXD6.js"},{"revision":null,"url":"assets/AddProviderDetails-BtrgTFts.js"},{"revision":null,"url":"assets/AddPlayerGroup-B3NNUL-h.js"},{"revision":null,"url":"assets/AddManualLink.vue_vue_type_script_setup_true_lang-C1nm8oQh.js"},{"revision":null,"url":"assets/About-BlM2bNNU.css"},{"revision":null,"url":"assets/About-BkJaoSR3.js"},{"revision":"9dcff4d5e3fe756d5b20591dd92c0b5a","url":"apple-touch-icon.png"},{"revision":"ffe9ee24ed29912b6010c575378a6d79","url":"favicon.ico"},{"revision":"e112791d52bbf4e114786dc7f6abcf8a","url":"pwa-192x192.png"},{"revision":"0bf5daea613cc918d32731e59e6e5a9f","url":"pwa-512x512.png"},{"revision":"5e0bd1c281a62a380d7a948085bfe2d1","url":"robots.txt"},{"revision":"838096e4feffab91eb11fbca2168ed4d","url":"manifest.webmanifest"}]);const g=new Map;self.addEventListener("message",a=>{const{type:e,data:t}=a.data;if(e==="http-proxy-response"){const{id:s,status:r,headers:n,body:c}=t,i=g.get(s);if(i){g.delete(s);try{const o=ne(c),u=new Response(o,{status:r,headers:new Headers(n)});i.resolve(u)}catch(o){i.reject(o)}}}else e==="set-remote-mode"&&(self.isRemoteMode=t.isRemote)});self.addEventListener("fetch",a=>{const e=new URL(a.request.url),s=["/imageproxy","/preview"].some(r=>e.pathname.startsWith(r));if(self.isRemoteMode&&s){a.respondWith(re(a.request));return}if(s){a.respondWith(fetch(a.request));return}});async function re(a){const e=new URL(a.url),t=a.url,s=await caches.open("ma-http-proxy-v1"),r=await s.match(t);if(r)return r;const n=ce(),c=new Promise((l,h)=>{g.set(n,{resolve:l,reject:h}),setTimeout(()=>{g.has(n)&&(g.delete(n),h(new Error("HTTP proxy request timeout")))},3e4)}),i={},o=["accept","accept-encoding"];for(const l of o){const h=a.headers.get(l);h&&(i[l]=h)}const u=await self.clients.matchAll();if(u.length>0)u[0].postMessage({type:"http-proxy-request",data:{id:n,method:a.method,path:e.pathname+e.search,headers:i}});else return g.delete(n),new Response("Service worker error: No client found",{status:503});try{const l=await c;if(l.status===304&&r)return r;if(l.status>=200&&l.status<300){const h=l.clone();s.put(t,h)}return l}catch(l){return console.error("[ServiceWorker] HTTP proxy error:",l),r||new Response(l.message,{status:500})}}function ne(a){const e=new Uint8Array(a.length/2);for(let t=0;t<a.length;t+=2)e[t/2]=parseInt(a.substring(t,t+2),16);return e}function ce(){return`req_${Date.now()}_${Math.random().toString(36).substring(2,11)}`}self.isRemoteMode=!1;self.addEventListener("activate",a=>{a.waitUntil(self.clients.claim())});
1
+ try{self["workbox:core:7.3.0"]&&_()}catch{}const T=(a,...e)=>{let t=a;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t},E=T;class f extends Error{constructor(e,t){const s=E(e,t);super(s),this.name=e,this.details=t}}const d={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},b=a=>[d.prefix,a,d.suffix].filter(e=>e&&e.length>0).join("-"),N=a=>{for(const e of Object.keys(d))a(e)},L={updateDetails:a=>{N(e=>{typeof a[e]=="string"&&(d[e]=a[e])})},getGoogleAnalyticsName:a=>a||b(d.googleAnalytics),getPrecacheName:a=>a||b(d.precache),getPrefix:()=>d.prefix,getRuntimeName:a=>a||b(d.runtime),getSuffix:()=>d.suffix};function P(a,e){const t=e();return a.waitUntil(t),t}try{self["workbox:precaching:7.3.0"]&&_()}catch{}const M="__WB_REVISION__";function I(a){if(!a)throw new f("add-to-cache-list-unexpected-type",{entry:a});if(typeof a=="string"){const n=new URL(a,location.href);return{cacheKey:n.href,url:n.href}}const{revision:e,url:t}=a;if(!t)throw new f("add-to-cache-list-unexpected-type",{entry:a});if(!e){const n=new URL(t,location.href);return{cacheKey:n.href,url:n.href}}const s=new URL(t,location.href),r=new URL(t,location.href);return s.searchParams.set(M,e),{cacheKey:s.href,url:r.href}}class W{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:s})=>{if(e.type==="install"&&t&&t.originalRequest&&t.originalRequest instanceof Request){const r=t.originalRequest.url;s?this.notUpdatedURLs.push(r):this.updatedURLs.push(r)}return s}}}class q{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:t,params:s})=>{const r=s?.cacheKey||this._precacheController.getCacheKeyForURL(t.url);return r?new Request(r,{headers:t.headers}):t},this._precacheController=e}}let y;function O(){if(y===void 0){const a=new Response("");if("body"in a)try{new Response(a.body),y=!0}catch{y=!1}y=!1}return y}async function S(a,e){let t=null;if(a.url&&(t=new URL(a.url).origin),t!==self.location.origin)throw new f("cross-origin-copy-response",{origin:t});const s=a.clone(),n={headers:new Headers(s.headers),status:s.status,statusText:s.statusText},c=O()?s.body:await s.blob();return new Response(c,n)}const A=a=>new URL(String(a),location.href).href.replace(new RegExp(`^${location.origin}`),"");function v(a,e){const t=new URL(a);for(const s of e)t.searchParams.delete(s);return t.href}async function H(a,e,t,s){const r=v(e.url,t);if(e.url===r)return a.match(e,s);const n=Object.assign(Object.assign({},s),{ignoreSearch:!0}),c=await a.keys(e,n);for(const i of c){const o=v(i.url,t);if(r===o)return a.match(i,s)}}class D{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}const j=new Set;async function F(){for(const a of j)await a()}function B(a){return new Promise(e=>setTimeout(e,a))}try{self["workbox:strategies:7.3.0"]&&_()}catch{}function R(a){return typeof a=="string"?new Request(a):a}class ${constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new D,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const s of this._plugins)this._pluginStateMap.set(s,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let s=R(e);if(s.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const c=await t.preloadResponse;if(c)return c}const r=this.hasCallback("fetchDidFail")?s.clone():null;try{for(const c of this.iterateCallbacks("requestWillFetch"))s=await c({request:s.clone(),event:t})}catch(c){if(c instanceof Error)throw new f("plugin-error-request-will-fetch",{thrownErrorMessage:c.message})}const n=s.clone();try{let c;c=await fetch(s,s.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const i of this.iterateCallbacks("fetchDidSucceed"))c=await i({event:t,request:n,response:c});return c}catch(c){throw r&&await this.runCallbacks("fetchDidFail",{error:c,event:t,originalRequest:r.clone(),request:n.clone()}),c}}async fetchAndCachePut(e){const t=await this.fetch(e),s=t.clone();return this.waitUntil(this.cachePut(e,s)),t}async cacheMatch(e){const t=R(e);let s;const{cacheName:r,matchOptions:n}=this._strategy,c=await this.getCacheKey(t,"read"),i=Object.assign(Object.assign({},n),{cacheName:r});s=await caches.match(c,i);for(const o of this.iterateCallbacks("cachedResponseWillBeUsed"))s=await o({cacheName:r,matchOptions:n,cachedResponse:s,request:c,event:this.event})||void 0;return s}async cachePut(e,t){const s=R(e);await B(0);const r=await this.getCacheKey(s,"write");if(!t)throw new f("cache-put-with-no-response",{url:A(r.url)});const n=await this._ensureResponseSafeToCache(t);if(!n)return!1;const{cacheName:c,matchOptions:i}=this._strategy,o=await self.caches.open(c),u=this.hasCallback("cacheDidUpdate"),l=u?await H(o,r.clone(),["__WB_REVISION__"],i):null;try{await o.put(r,u?n.clone():n)}catch(h){if(h instanceof Error)throw h.name==="QuotaExceededError"&&await F(),h}for(const h of this.iterateCallbacks("cacheDidUpdate"))await h({cacheName:c,oldResponse:l,newResponse:n.clone(),request:r,event:this.event});return!0}async getCacheKey(e,t){const s=`${e.url} | ${t}`;if(!this._cacheKeys[s]){let r=e;for(const n of this.iterateCallbacks("cacheKeyWillBeUsed"))r=R(await n({mode:t,request:r,event:this.event,params:this.params}));this._cacheKeys[s]=r}return this._cacheKeys[s]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const s of this.iterateCallbacks(e))await s(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const s=this._pluginStateMap.get(t);yield n=>{const c=Object.assign(Object.assign({},n),{state:s});return t[e](c)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){for(;this._extendLifetimePromises.length;){const e=this._extendLifetimePromises.splice(0),s=(await Promise.allSettled(e)).find(r=>r.status==="rejected");if(s)throw s.reason}}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,s=!1;for(const r of this.iterateCallbacks("cacheWillUpdate"))if(t=await r({request:this.request,response:t,event:this.event})||void 0,s=!0,!t)break;return s||t&&t.status!==200&&(t=void 0),t}}class V{constructor(e={}){this.cacheName=L.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,s=typeof e.request=="string"?new Request(e.request):e.request,r="params"in e?e.params:void 0,n=new $(this,{event:t,request:s,params:r}),c=this._getResponse(n,s,t),i=this._awaitComplete(c,n,s,t);return[c,i]}async _getResponse(e,t,s){await e.runCallbacks("handlerWillStart",{event:s,request:t});let r;try{if(r=await this._handle(t,e),!r||r.type==="error")throw new f("no-response",{url:t.url})}catch(n){if(n instanceof Error){for(const c of e.iterateCallbacks("handlerDidError"))if(r=await c({error:n,event:s,request:t}),r)break}if(!r)throw n}for(const n of e.iterateCallbacks("handlerWillRespond"))r=await n({event:s,request:t,response:r});return r}async _awaitComplete(e,t,s,r){let n,c;try{n=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:r,request:s,response:n}),await t.doneWaiting()}catch(i){i instanceof Error&&(c=i)}if(await t.runCallbacks("handlerDidComplete",{event:r,request:s,response:n,error:c}),t.destroy(),c)throw c}}class p extends V{constructor(e={}){e.cacheName=L.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=e.fallbackToNetwork!==!1,this.plugins.push(p.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const s=await t.cacheMatch(e);return s||(t.event&&t.event.type==="install"?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let s;const r=t.params||{};if(this._fallbackToNetwork){const n=r.integrity,c=e.integrity,i=!c||c===n;s=await t.fetch(new Request(e,{integrity:e.mode!=="no-cors"?c||n:void 0})),n&&i&&e.mode!=="no-cors"&&(this._useDefaultCacheabilityPluginIfNeeded(),await t.cachePut(e,s.clone()))}else throw new f("missing-precache-entry",{cacheName:this.cacheName,url:e.url});return s}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const s=await t.fetch(e);if(!await t.cachePut(e,s.clone()))throw new f("bad-precaching-response",{url:e.url,status:s.status});return s}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[s,r]of this.plugins.entries())r!==p.copyRedirectedCacheableResponsesPlugin&&(r===p.defaultPrecacheCacheabilityPlugin&&(e=s),r.cacheWillUpdate&&t++);t===0?this.plugins.push(p.defaultPrecacheCacheabilityPlugin):t>1&&e!==null&&this.plugins.splice(e,1)}}p.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:a}){return!a||a.status>=400?null:a}};p.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:a}){return a.redirected?await S(a):a}};class G{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:s=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new p({cacheName:L.getPrecacheName(e),plugins:[...t,new q({precacheController:this})],fallbackToNetwork:s}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const s of e){typeof s=="string"?t.push(s):s&&s.revision===void 0&&t.push(s.url);const{cacheKey:r,url:n}=I(s),c=typeof s!="string"&&s.revision?"reload":"default";if(this._urlsToCacheKeys.has(n)&&this._urlsToCacheKeys.get(n)!==r)throw new f("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(n),secondEntry:r});if(typeof s!="string"&&s.integrity){if(this._cacheKeysToIntegrities.has(r)&&this._cacheKeysToIntegrities.get(r)!==s.integrity)throw new f("add-to-cache-list-conflicting-integrities",{url:n});this._cacheKeysToIntegrities.set(r,s.integrity)}if(this._urlsToCacheKeys.set(n,r),this._urlsToCacheModes.set(n,c),t.length>0){const i=`Workbox is precaching URLs without revision info: ${t.join(", ")}
2
+ This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(i)}}}install(e){return P(e,async()=>{const t=new W;this.strategy.plugins.push(t);for(const[n,c]of this._urlsToCacheKeys){const i=this._cacheKeysToIntegrities.get(c),o=this._urlsToCacheModes.get(n),u=new Request(n,{integrity:i,cache:o,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:c},request:u,event:e}))}const{updatedURLs:s,notUpdatedURLs:r}=t;return{updatedURLs:s,notUpdatedURLs:r}})}activate(e){return P(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),s=await t.keys(),r=new Set(this._urlsToCacheKeys.values()),n=[];for(const c of s)r.has(c.url)||(await t.delete(c),n.push(c.url));return{deletedURLs:n}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,s=this.getCacheKeyForURL(t);if(s)return(await self.caches.open(this.strategy.cacheName)).match(s)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new f("non-precached-url",{url:e});return s=>(s.request=new Request(e),s.params=Object.assign({cacheKey:t},s.params),this.strategy.handle(s))}}let U;const K=()=>(U||(U=new G),U);try{self["workbox:routing:7.3.0"]&&_()}catch{}const x="GET",C=a=>a&&typeof a=="object"?a:{handle:a};class m{constructor(e,t,s=x){this.handler=C(t),this.match=e,this.method=s}setCatchHandler(e){this.catchHandler=C(e)}}class Q extends m{constructor(e,t,s){const r=({url:n})=>{const c=e.exec(n.href);if(c&&!(n.origin!==location.origin&&c.index!==0))return c.slice(1)};super(r,t,s)}}class z{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",(e=>{const{request:t}=e,s=this.handleRequest({request:t,event:e});s&&e.respondWith(s)}))}addCacheListener(){self.addEventListener("message",(e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,s=Promise.all(t.urlsToCache.map(r=>{typeof r=="string"&&(r=[r]);const n=new Request(...r);return this.handleRequest({request:n,event:e})}));e.waitUntil(s),e.ports&&e.ports[0]&&s.then(()=>e.ports[0].postMessage(!0))}}))}handleRequest({request:e,event:t}){const s=new URL(e.url,location.href);if(!s.protocol.startsWith("http"))return;const r=s.origin===location.origin,{params:n,route:c}=this.findMatchingRoute({event:t,request:e,sameOrigin:r,url:s});let i=c&&c.handler;const o=e.method;if(!i&&this._defaultHandlerMap.has(o)&&(i=this._defaultHandlerMap.get(o)),!i)return;let u;try{u=i.handle({url:s,request:e,event:t,params:n})}catch(h){u=Promise.reject(h)}const l=c&&c.catchHandler;return u instanceof Promise&&(this._catchHandler||l)&&(u=u.catch(async h=>{if(l)try{return await l.handle({url:s,request:e,event:t,params:n})}catch(k){k instanceof Error&&(h=k)}if(this._catchHandler)return this._catchHandler.handle({url:s,request:e,event:t});throw h})),u}findMatchingRoute({url:e,sameOrigin:t,request:s,event:r}){const n=this._routes.get(s.method)||[];for(const c of n){let i;const o=c.match({url:e,sameOrigin:t,request:s,event:r});if(o)return i=o,(Array.isArray(i)&&i.length===0||o.constructor===Object&&Object.keys(o).length===0||typeof o=="boolean")&&(i=void 0),{route:c,params:i}}return{}}setDefaultHandler(e,t=x){this._defaultHandlerMap.set(t,C(e))}setCatchHandler(e){this._catchHandler=C(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new f("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new f("unregister-route-route-not-registered")}}let w;const J=()=>(w||(w=new z,w.addFetchListener(),w.addCacheListener()),w);function X(a,e,t){let s;if(typeof a=="string"){const n=new URL(a,location.href),c=({url:i})=>i.href===n.href;s=new m(c,e,t)}else if(a instanceof RegExp)s=new Q(a,e,t);else if(typeof a=="function")s=new m(a,e,t);else if(a instanceof m)s=a;else throw new f("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return J().registerRoute(s),s}function Y(a,e=[]){for(const t of[...a.searchParams.keys()])e.some(s=>s.test(t))&&a.searchParams.delete(t);return a}function*Z(a,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:s=!0,urlManipulation:r}={}){const n=new URL(a,location.href);n.hash="",yield n.href;const c=Y(n,e);if(yield c.href,t&&c.pathname.endsWith("/")){const i=new URL(c.href);i.pathname+=t,yield i.href}if(s){const i=new URL(c.href);i.pathname+=".html",yield i.href}if(r){const i=r({url:n});for(const o of i)yield o.href}}class ee extends m{constructor(e,t){const s=({request:r})=>{const n=e.getURLsToCacheKeys();for(const c of Z(r.url,t)){const i=n.get(c);if(i){const o=e.getIntegrityForCacheKey(i);return{cacheKey:i,integrity:o}}}};super(s,e.strategy)}}function te(a){const e=K(),t=new ee(e,a);X(t)}function se(a){K().precache(a)}function ae(a,e){se(a),te(e)}ae([{"revision":"9b7dfbe8d954cc422e10396df237f0b3","url":"index.html"},{"revision":null,"url":"assets/workbox-window.prod.es5-BIl4cyR9.js"},{"revision":null,"url":"assets/vueuse-DIaEWNCo.js"},{"revision":null,"url":"assets/vuetify-bOa_R6j7.css"},{"revision":null,"url":"assets/vuetify-CrxirfrA.js"},{"revision":null,"url":"assets/vue-router-BgJK_hRC.js"},{"revision":null,"url":"assets/vue-i18n-CX-lsKIo.js"},{"revision":null,"url":"assets/utils-CDN07tui.js"},{"revision":null,"url":"assets/userPreferences-DsKUT7Ha.js"},{"revision":null,"url":"assets/swiper-Jy9GbtzK.js"},{"revision":null,"url":"assets/swiper-DDQ4uUkz.css"},{"revision":null,"url":"assets/reka-ui-GpbaI08z.js"},{"revision":null,"url":"assets/qrcode-DSFhiIp2.js"},{"revision":null,"url":"assets/profile-Cv_y861N.js"},{"revision":null,"url":"assets/oggOpusDecoder-FGWA1cRr.js"},{"revision":null,"url":"assets/mdi-DTeawFQ8.css"},{"revision":null,"url":"assets/marquee_text_sync-CWCHA3k2.css"},{"revision":null,"url":"assets/marquee_text_sync-CEgtptD4.js"},{"revision":null,"url":"assets/marked-C0Rlrcoy.js"},{"revision":null,"url":"assets/lucide-C2DU1LFb.js"},{"revision":null,"url":"assets/libopus-decoder-elWjCkSR.js"},{"revision":null,"url":"assets/index.browser-OxPLOBIU.js"},{"revision":null,"url":"assets/index-vt6UORr-.js"},{"revision":null,"url":"assets/index-kQIztB-E.js"},{"revision":null,"url":"assets/index-_We2Vr5Z.js"},{"revision":null,"url":"assets/index-CeixlMcg.css"},{"revision":null,"url":"assets/index-BMjInzaQ.js"},{"revision":null,"url":"assets/index-BFLe16Zh.js"},{"revision":null,"url":"assets/constants-CXMxJR4j.js"},{"revision":null,"url":"assets/color-BTziYnFN.js"},{"revision":null,"url":"assets/WidgetRow-CzSfjn6J.js"},{"revision":null,"url":"assets/WidgetRow-CzKBwQIP.css"},{"revision":null,"url":"assets/UserProfile-D9w29jno.css"},{"revision":null,"url":"assets/UserProfile-BT070UWs.js"},{"revision":null,"url":"assets/UserManagement-D95vHQbd.js"},{"revision":null,"url":"assets/UserManagement-Cjprr5Bf.css"},{"revision":null,"url":"assets/TrackDetails-D-roSajh.js"},{"revision":null,"url":"assets/Toolbar-Dz5VG6wZ.css"},{"revision":null,"url":"assets/Toolbar-BH0q_AuX.js"},{"revision":null,"url":"assets/SystemConfig-CwdPKWrs.js"},{"revision":null,"url":"assets/SystemConfig-CI_tk8f0.css"},{"revision":null,"url":"assets/Settings-Dy52XfiN.css"},{"revision":null,"url":"assets/Settings-DTSUeTlH.js"},{"revision":null,"url":"assets/ServerLogs-DqUM0n_B.css"},{"revision":null,"url":"assets/ServerLogs-DT9hKSu9.js"},{"revision":null,"url":"assets/Search-CP2B4boW.js"},{"revision":null,"url":"assets/RemoteAccessSettings-DzZ6b2JZ.css"},{"revision":null,"url":"assets/RemoteAccessSettings-BJcgBwnj.js"},{"revision":null,"url":"assets/RadioDetails-CSTUc8uy.js"},{"revision":null,"url":"assets/Providers-fnV7LLWJ.js"},{"revision":null,"url":"assets/Providers-DoQCRcJD.css"},{"revision":null,"url":"assets/ProviderIcon.vue_vue_type_style_index_0_lang-3Xmo3tIn.js"},{"revision":null,"url":"assets/ProviderIcon-CbwA83VX.css"},{"revision":null,"url":"assets/ProviderDetails.vue_vue_type_style_index_0_lang-DFoDB6o8.js"},{"revision":null,"url":"assets/ProviderDetails-DFxC0Z2P.css"},{"revision":null,"url":"assets/PopoverTrigger.vue_vue_type_script_setup_true_lang-ZsAs7pQL.js"},{"revision":null,"url":"assets/PodcastDetails-CO9edw4i.js"},{"revision":null,"url":"assets/PlaylistDetails-BRmplZDX.js"},{"revision":null,"url":"assets/Players-DqQtrPDr.css"},{"revision":null,"url":"assets/Players-CsGKvNru.js"},{"revision":null,"url":"assets/PlayerCard-Sb0PieXV.css"},{"revision":null,"url":"assets/PlayerCard-CvuecWVw.js"},{"revision":null,"url":"assets/PanelviewItemCompact-DPec3m9e.css"},{"revision":null,"url":"assets/PanelviewItemCompact-C1lAmhs4.js"},{"revision":null,"url":"assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-D7lqdhVg.js"},{"revision":null,"url":"assets/NowPlayingBadge-DlzVWxxU.css"},{"revision":null,"url":"assets/MediaItemThumb-Dh_kR1LP.css"},{"revision":null,"url":"assets/MediaItemThumb-CYhBGQYb.js"},{"revision":null,"url":"assets/MediaItemImages-CLzhjwGQ.css"},{"revision":null,"url":"assets/MediaItemImages-C9Fy6AXA.js"},{"revision":null,"url":"assets/ListItem-DccRVadN.js"},{"revision":null,"url":"assets/ListItem-By9ygptX.css"},{"revision":null,"url":"assets/LibraryTracks-DbeArd47.js"},{"revision":null,"url":"assets/LibraryRadios-CnFDe94x.js"},{"revision":null,"url":"assets/LibraryPodcasts-CCQmiove.js"},{"revision":null,"url":"assets/LibraryPlaylists-DklE3jS2.js"},{"revision":null,"url":"assets/LibraryAudiobooks-CfxtyrvX.js"},{"revision":null,"url":"assets/LibraryArtists-BxJH58zj.js"},{"revision":null,"url":"assets/LibraryAlbums-BtgPipsX.js"},{"revision":null,"url":"assets/ItemsListing-DqCIuDVa.js"},{"revision":null,"url":"assets/ItemsListing-CF6i_DPA.css"},{"revision":null,"url":"assets/HomeView-Du3qC7g7.css"},{"revision":null,"url":"assets/HomeView-BYNgS4DU.js"},{"revision":null,"url":"assets/FrontendConfig-a-oWNOqu.css"},{"revision":null,"url":"assets/FrontendConfig-CxraPthf.js"},{"revision":null,"url":"assets/FacetedFilter-CcVgGpca.js"},{"revision":null,"url":"assets/FacetedFilter-CVMvoryN.css"},{"revision":null,"url":"assets/EditProvider-pX2tzDDV.js"},{"revision":null,"url":"assets/EditProvider-apfmFtz1.css"},{"revision":null,"url":"assets/EditPlayerDsp-DLVoEBGu.js"},{"revision":null,"url":"assets/EditPlayerDsp-BI39n7FA.css"},{"revision":null,"url":"assets/EditPlayer-D-W-NEU2.js"},{"revision":null,"url":"assets/EditPlayer-2rJC7VuC.css"},{"revision":null,"url":"assets/EditCoreConfig-BzGxPfuM.js"},{"revision":null,"url":"assets/EditCoreConfig-BgqNrizT.css"},{"revision":null,"url":"assets/EditConfig-DNe2y34q.css"},{"revision":null,"url":"assets/EditConfig-BPYsIC-A.js"},{"revision":null,"url":"assets/DropdownMenuTrigger.vue_vue_type_script_setup_true_lang-DWuSqU5E.js"},{"revision":null,"url":"assets/Default-CQvuEVee.css"},{"revision":null,"url":"assets/Default-CDpSGmTw.js"},{"revision":null,"url":"assets/Container-D1pLFqsU.js"},{"revision":null,"url":"assets/Container-CLe-v6jJ.css"},{"revision":null,"url":"assets/Button-J-l6bmDl.css"},{"revision":null,"url":"assets/Button-B4d5YBNY.js"},{"revision":null,"url":"assets/BrowseView-DuywWVQm.js"},{"revision":null,"url":"assets/BrowseView-D3jhZGn3.css"},{"revision":null,"url":"assets/AvatarImage.vue_vue_type_script_setup_true_lang-DBokkkla.js"},{"revision":null,"url":"assets/AudiobookDetails-BqlM2CS_.js"},{"revision":null,"url":"assets/ArtistDetails-CNnccN2P.js"},{"revision":null,"url":"assets/AlbumDetails-kSlct8q_.js"},{"revision":null,"url":"assets/AddProviderDetails-DQeCtnoy.css"},{"revision":null,"url":"assets/AddProviderDetails-BHxivTcE.js"},{"revision":null,"url":"assets/AddPlayerGroup-BgGBSvG5.js"},{"revision":null,"url":"assets/AddManualLink.vue_vue_type_script_setup_true_lang-DQUirFGx.js"},{"revision":null,"url":"assets/About-lesUP2tB.css"},{"revision":null,"url":"assets/About-B64RAAE6.js"},{"revision":"9dcff4d5e3fe756d5b20591dd92c0b5a","url":"apple-touch-icon.png"},{"revision":"ffe9ee24ed29912b6010c575378a6d79","url":"favicon.ico"},{"revision":"e112791d52bbf4e114786dc7f6abcf8a","url":"pwa-192x192.png"},{"revision":"0bf5daea613cc918d32731e59e6e5a9f","url":"pwa-512x512.png"},{"revision":"5e0bd1c281a62a380d7a948085bfe2d1","url":"robots.txt"},{"revision":"838096e4feffab91eb11fbca2168ed4d","url":"manifest.webmanifest"}]);const g=new Map;self.addEventListener("message",a=>{const{type:e,data:t}=a.data;if(e==="http-proxy-response"){const{id:s,status:r,headers:n,body:c}=t,i=g.get(s);if(i){g.delete(s);try{const o=ne(c),u=new Response(o,{status:r,headers:new Headers(n)});i.resolve(u)}catch(o){i.reject(o)}}}else e==="set-remote-mode"&&(self.isRemoteMode=t.isRemote,console.log("[ServiceWorker] Remote mode set to:",t.isRemote),a.source&&a.source.postMessage({type:"remote-mode-ack",data:{isRemote:t.isRemote}}))});self.addEventListener("fetch",a=>{const e=new URL(a.request.url),s=["/imageproxy","/preview"].some(r=>e.pathname.startsWith(r));if(self.isRemoteMode&&s){a.respondWith(re(a.request));return}if(s){a.respondWith(fetch(a.request));return}});async function re(a){const e=new URL(a.url),t=a.url,s=await caches.open("ma-http-proxy-v1"),r=await s.match(t);if(r)return r;const n=ce(),c=new Promise((l,h)=>{g.set(n,{resolve:l,reject:h}),setTimeout(()=>{g.has(n)&&(g.delete(n),h(new Error("HTTP proxy request timeout")))},3e4)}),i={},o=["accept","accept-encoding"];for(const l of o){const h=a.headers.get(l);h&&(i[l]=h)}const u=await self.clients.matchAll();if(u.length>0)u[0].postMessage({type:"http-proxy-request",data:{id:n,method:a.method,path:e.pathname+e.search,headers:i}});else return g.delete(n),new Response("Service worker error: No client found",{status:503});try{const l=await c;if(l.status===304&&r)return r;if(l.status>=200&&l.status<300){const h=l.clone();s.put(t,h)}return l}catch(l){return console.error("[ServiceWorker] HTTP proxy error:",l),r||new Response(l.message,{status:500})}}function ne(a){const e=new Uint8Array(a.length/2);for(let t=0;t<a.length;t+=2)e[t/2]=parseInt(a.substring(t,t+2),16);return e}function ce(){return`req_${Date.now()}_${Math.random().toString(36).substring(2,11)}`}self.isRemoteMode=!1;self.addEventListener("install",a=>{console.log("[ServiceWorker] Installing..."),a.waitUntil(self.skipWaiting())});self.addEventListener("activate",a=>{console.log("[ServiceWorker] Activating..."),a.waitUntil(self.clients.claim())});
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: music-assistant-frontend
3
- Version: 2.17.34
3
+ Version: 2.17.63
4
4
  Summary: The Music Assistant frontend
5
5
  Author-email: The Music Assistant Authors <m.vanderveldt@outlook.com>
6
6
  License: Apache-2.0
@@ -0,0 +1,159 @@
1
+ music_assistant_frontend/CNAME,sha256=Nb8Kp3Fi4tYqqukm-GUfjeO0CU6hBGaawwsOQiMHOLc,23
2
+ music_assistant_frontend/__init__.py,sha256=f5XgAG1zbZ8LHTVT9GwVrIblZh_XMiXC6bJYcw3vgoA,156
3
+ music_assistant_frontend/apple-touch-icon.png,sha256=Z15VsFsEd-EDBuEpKuxV9cr0iz29o_q5zKQwaLw9ENs,9628
4
+ music_assistant_frontend/favicon.ico,sha256=3emHJUOpla9GWcwAxPdjbCQSdXMTKFVBiUfrVofJshE,16958
5
+ music_assistant_frontend/index.html,sha256=OhI-LUvUgHZi01gDSpl-fy_nOgtEo02LZAXilwKqaxE,30524
6
+ music_assistant_frontend/manifest.webmanifest,sha256=y4tDS71mQ1k1D0WKxckRWJffFReAyTrGdtmv3XBF2JU,557
7
+ music_assistant_frontend/pwa-192x192.png,sha256=sFoeE2TtJHWBK0qnPCrlqIuhSNhL6WxjlcRMjVKq5yo,7095
8
+ music_assistant_frontend/pwa-512x512.png,sha256=1IDxJr1SpPfhoo23x9do8xSBEaH_qfDp43NK79QjXqE,22189
9
+ music_assistant_frontend/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ music_assistant_frontend/robots.txt,sha256=Fs617j4NwTqprfMaPrvkWh2WW4wrn3Lq-E5ZEeFA7ZU,23
11
+ music_assistant_frontend/sw.js,sha256=ImbRvJFiA9F4ioVMvA8BDTsOWg2lwkakqlrIhqz5gF4,25230
12
+ music_assistant_frontend/assets/About-B64RAAE6.js,sha256=UVLCrhcR5T2wv2mDguiTY5t-2RWCxsgtfUppFKq6TN8,8050
13
+ music_assistant_frontend/assets/About-lesUP2tB.css,sha256=0vtRk4BDIfwIwT6wLBgFJ9wiuT6Tn0o20Ec7mkHw-i0,1176
14
+ music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-DQUirFGx.js,sha256=v7bzBDoyPxv8syKN6ObSUD_J8n7ltnnYY-rD1bpCODo,2535
15
+ music_assistant_frontend/assets/AddPlayerGroup-BgGBSvG5.js,sha256=76tEmtGykKRcDLZBfM11KuNTNz0-c332XSujCvAbqvM,2960
16
+ music_assistant_frontend/assets/AddProviderDetails-BHxivTcE.js,sha256=t1Lk-RkDT7t0g3rpCRsq7lSE52HMHRV5bwTLKmrUZao,3918
17
+ music_assistant_frontend/assets/AddProviderDetails-DQeCtnoy.css,sha256=BTpjj7TAbqj0_sgoOe6h0hhIlZNVj1S6l-pvVT5TnBQ,913
18
+ music_assistant_frontend/assets/AlbumDetails-kSlct8q_.js,sha256=HCgqvHoJKbK4VPjWmYQsLjT4usI4LiG1-HS_TU8oF7o,3309
19
+ music_assistant_frontend/assets/ArtistDetails-CNnccN2P.js,sha256=CzBjYjBUTco5NNXliffzdXW8UGNpuZhzLMssHId57MA,3596
20
+ music_assistant_frontend/assets/AudiobookDetails-BqlM2CS_.js,sha256=75TMvCJETvr7Zkz5r62Hl2Mx4EKKJYOLDtNvyZckp8I,2592
21
+ music_assistant_frontend/assets/AvatarImage.vue_vue_type_script_setup_true_lang-DBokkkla.js,sha256=M2gYmlVee4ivwjI_d3swu1NgvzwExZV00AAhmHqcAkI,1118
22
+ music_assistant_frontend/assets/BrowseView-D3jhZGn3.css,sha256=Nv6ohDgqOzdg8rlGzegTkH4m0fS9D9ESqYRHO5qmltI,1351
23
+ music_assistant_frontend/assets/BrowseView-DuywWVQm.js,sha256=bkJ0LTSiU10UsuTE2pK6GfE8ePMZQ3aE2MPMcX1Q0cU,2737
24
+ music_assistant_frontend/assets/Button-B4d5YBNY.js,sha256=dGvAmWf_xCzDV1tzDL5aXEQfPfXpzacpMS2iAXx-ScI,2300
25
+ music_assistant_frontend/assets/Button-J-l6bmDl.css,sha256=239u3HR_elqI7-XkpR1L0aHv4evPGczWhmpSwRfHFt0,632
26
+ music_assistant_frontend/assets/Container-CLe-v6jJ.css,sha256=CaZ4njjGsq7EK4IdClr3npBwbHfOtydScwjnWIyYe4w,512
27
+ music_assistant_frontend/assets/Container-D1pLFqsU.js,sha256=bxJ0ByUKcGZgyauYtLELZUkgUgi6Gxufau-rJ-TU9xc,1363
28
+ music_assistant_frontend/assets/Default-CDpSGmTw.js,sha256=bMnuARi1CrpzF-D_ye09UCEd3NbCyuVpFkKVH0lnrTQ,80765
29
+ music_assistant_frontend/assets/Default-CQvuEVee.css,sha256=-TsOv3jEriKTWA5AfNiG5IfklfyEuePhUw0xpQU6Zsw,11889
30
+ music_assistant_frontend/assets/DropdownMenuTrigger.vue_vue_type_script_setup_true_lang-DWuSqU5E.js,sha256=U9KM8UT5MgozMHOdzz8M0jqo2nSUyeGgX4PJeOPJn0Q,3679
31
+ music_assistant_frontend/assets/EditConfig-BPYsIC-A.js,sha256=iMAMuc-c1sr76Cdu4gi4ddcDk_iZiTpSVWpkZxpazTw,16377
32
+ music_assistant_frontend/assets/EditConfig-DNe2y34q.css,sha256=Ce8m7NP9QT0OHTX2sPllz79pLLS02uR1ApC-bGCmrIo,2790
33
+ music_assistant_frontend/assets/EditCoreConfig-BgqNrizT.css,sha256=fyDiqofE-6FBdWAln8EzSSguAfH5FUUQEJvlLHMJEJ4,882
34
+ music_assistant_frontend/assets/EditCoreConfig-BzGxPfuM.js,sha256=Vk1PzrB4mxZ8DirtIY-7BpZ5X3b-Nzwtr8uC5qApnyY,2790
35
+ music_assistant_frontend/assets/EditPlayer-2rJC7VuC.css,sha256=mncrZD59dTvflzt3SYe3OKI7u-7j-L55tafzG3EL1yk,1401
36
+ music_assistant_frontend/assets/EditPlayer-D-W-NEU2.js,sha256=5QFYglrO0d8gSqDCms1kl_kLdMTZwdYCHI2MapgBRhI,6373
37
+ music_assistant_frontend/assets/EditPlayerDsp-BI39n7FA.css,sha256=Tk2S-bpavKmrs-GtpLMiv2axIqKxG0n-addfBmHkQuE,655
38
+ music_assistant_frontend/assets/EditPlayerDsp-DLVoEBGu.js,sha256=zwzVM2dZQ6NZs6tiyRnj0zzp-RAoR2nwdq88XKoQB6w,27083
39
+ music_assistant_frontend/assets/EditProvider-apfmFtz1.css,sha256=gmMhqsgU3tbhD7cA8usAduPTQrJLjx0w8PeAcwzVdi4,1211
40
+ music_assistant_frontend/assets/EditProvider-pX2tzDDV.js,sha256=QXRmrOv9KnCMs32Q0T0pc1qMMdBxiTGCJbFwSqJ0yA0,5996
41
+ music_assistant_frontend/assets/FacetedFilter-CVMvoryN.css,sha256=LPbelQSv6EhuSi2opYmZCFTuaRyzKNlwjGrTcjhP35E,811
42
+ music_assistant_frontend/assets/FacetedFilter-CcVgGpca.js,sha256=FZfwp6jA-pY9QRwBsKRSODEdZRGfFpbNHgOMy-bQzlE,4672
43
+ music_assistant_frontend/assets/FrontendConfig-CxraPthf.js,sha256=2GaKk6FRRLAxJo27FmASPWrrhKEi-WXJtdVax-d2Ul4,4634
44
+ music_assistant_frontend/assets/FrontendConfig-a-oWNOqu.css,sha256=4mR_iAyEAK2ZRA03wczyCWFUis6OqTlL9WjRiVUW0kA,770
45
+ music_assistant_frontend/assets/HomeView-BYNgS4DU.js,sha256=A5RFlz9kh4H6FWXfDCIqiqldMiKTd73eOr0TQmB8IXE,6873
46
+ music_assistant_frontend/assets/HomeView-Du3qC7g7.css,sha256=7wddkK4LyLj4N9tK5S4jVvJ7BOVaZAT3XyGLWg8Ssgk,1468
47
+ music_assistant_frontend/assets/ItemsListing-CF6i_DPA.css,sha256=hduz8sdd-v5FPjOYnXrjIsuK79xSdkZ7fruXVHj0W34,2645
48
+ music_assistant_frontend/assets/ItemsListing-DqCIuDVa.js,sha256=L7gq-aKIlWdtHHHeZUJrIIgpGY2p-W3PFETCuVhDbXM,31961
49
+ music_assistant_frontend/assets/JetBrainsMono-Medium-3S3k2nMz.woff2,sha256=CGxI376p3a_xMg9-CTmbjikk6IzmdFNyElXbO9u1o1M,93824
50
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe-iaUSDqqS.woff2,sha256=cqnIhnD7uFbLmy14E1MlQ0ki7gvfIDK4T9GiEE7kX2I,17628
51
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe-DnPa8eh0.woff2,sha256=2UzKt0AF6mMsVoDTPTRYZjTe1ZUDWZD6LP7y8eHMy1U,4340
52
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe-3VVPul60.woff2,sha256=OBFArT_m9IYDzEiYgD0sr7PlPAO3iXQchXGxkENs6EY,35532
53
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe-Dqr_DJ6L.woff2,sha256=iEkz-1eJtHjS2mikywvVzBONmV8f6pqVe6Kcs8APG_c,26428
54
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe-24ctNiOc.woff2,sha256=IfjJA5OdioFM2iNaCtvKyiBOa0GLJeSsKqCDrfAT4gE,13040
55
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe-B1tIhOr4.woff2,sha256=wGyj_LxffDfrt8hqaVAgCZEezYGDgRuuAvmx-7BUHds,22796
56
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA-CHnqiQTt.woff2,sha256=ILU1-oDIGJ47h9GAMDg4mWAgOohtUCvC7xhXr_wvONI,40128
57
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe-CBNGtO38.woff2,sha256=CsK9KVW843tLV4Zvsg2bKp1A7-Rur8cnapmVs23Es0o,40688
58
+ music_assistant_frontend/assets/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe-Bm5C9Z0M.woff2,sha256=6SF4VJbtLZjCJXyIpvg4r6asvuBcuEZwSFAb_iowFGE,20408
59
+ music_assistant_frontend/assets/LibraryAlbums-BtgPipsX.js,sha256=Z-9WVAdHrZHiURDMo41VhvD_eS9_4WaLVKN0pB90QGw,2172
60
+ music_assistant_frontend/assets/LibraryArtists-BxJH58zj.js,sha256=65aLYnXbbx2N-haSsTwXqtVIRa7j_HI_fIJi5t8t5Ko,2146
61
+ music_assistant_frontend/assets/LibraryAudiobooks-CfxtyrvX.js,sha256=8w6Nnp8nX9M9x0BVybIryOy30AWGh02pPU75wbSpDS0,2160
62
+ music_assistant_frontend/assets/LibraryPlaylists-DklE3jS2.js,sha256=tg9HHg8J82z_HTFvQGPCSNH0jpxLGbWdYhRPkaOt3w8,2789
63
+ music_assistant_frontend/assets/LibraryPodcasts-CCQmiove.js,sha256=AaLQVIkgeT8Pu5gyG94psF9ixwCRuKESdPf-hx4WY_4,2140
64
+ music_assistant_frontend/assets/LibraryRadios-CnFDe94x.js,sha256=BVYIUGP6uF0_qZGDZx37vUTjeSGGgltBWpM6RUGa2-0,2432
65
+ music_assistant_frontend/assets/LibraryTracks-DbeArd47.js,sha256=sikOOLaswwJdMqOUjAKhE-yPf8_OmH0IGrewme-p3u4,2506
66
+ music_assistant_frontend/assets/ListItem-By9ygptX.css,sha256=R_JJ3yermEiDc3ze6P_drIEvctS38fpZXl7QDdkFDfM,649
67
+ music_assistant_frontend/assets/ListItem-DccRVadN.js,sha256=BE_SYx-CbWzBFNq82Jf0-b7bJKSkQFDaEqfKkqngCzE,2199
68
+ music_assistant_frontend/assets/MaterialIcons-Regular-BjXOXp5c.eot,sha256=5p1oejmhpRsj3rcHLP9jpvMcCsc29KsRJxEW82CW27o,143452
69
+ music_assistant_frontend/assets/MaterialIcons-Regular-DEUTIz1o.ttf,sha256=KcEfpTLrtY2371nIYOTrk1vCkhqGVBctjoieUfhcYAQ,347588
70
+ music_assistant_frontend/assets/MaterialIcons-Regular-DOtZ65Va.woff2,sha256=V0PtPZFhahD8orwroPbwcHMAwFvcZbxtnU-yzXUlP_4,125116
71
+ music_assistant_frontend/assets/MaterialIcons-Regular-FsbMSDLx.woff,sha256=Eew4KjjcyrlF5NA5xYRL1X385gKnrevNGYeeQKG-gSY,160576
72
+ music_assistant_frontend/assets/MediaItemImages-C9Fy6AXA.js,sha256=yT8_LYk7Lq_mboAeGwDWiCto7l4sO38l6zc-u7dE9d0,2819
73
+ music_assistant_frontend/assets/MediaItemImages-CLzhjwGQ.css,sha256=inJ5iaI0K19N8JPpgBbIdHvzrhbNIrWdS9okyWLtxJA,770
74
+ music_assistant_frontend/assets/MediaItemThumb-CYhBGQYb.js,sha256=4AjHJO6C8vtHTLoDRO6sudSIY0XlUBrogv0Xc4wW6M4,48839
75
+ music_assistant_frontend/assets/MediaItemThumb-Dh_kR1LP.css,sha256=84vVat6kkNQ-pMKRJbWHf1XP1yC0utIiNTvdskM95-E,4389
76
+ music_assistant_frontend/assets/NowPlayingBadge-DlzVWxxU.css,sha256=didGnDHkkj33XBqK_IzVjDvsDyjc0ebf-hflOEJYPUI,681
77
+ music_assistant_frontend/assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-D7lqdhVg.js,sha256=YvfX-Xz7ctCnY_S-WSu2aAukYwmmCJI0sxqBjvPNXMQ,675
78
+ music_assistant_frontend/assets/PanelviewItemCompact-C1lAmhs4.js,sha256=mfFkwih1QPirianudQ7yo2LO8CYS0e_ZS57MoLKasMs,3854
79
+ music_assistant_frontend/assets/PanelviewItemCompact-DPec3m9e.css,sha256=lztkFexYy2VxmwGfdtY5RxT8J_EdTE_avetVS91o5e0,833
80
+ music_assistant_frontend/assets/PlayerCard-CvuecWVw.js,sha256=N5hhrMHexOphl9CsWXQT1ijU7f3aGyqdchvwsT8cHOY,21475
81
+ music_assistant_frontend/assets/PlayerCard-Sb0PieXV.css,sha256=uZrbINiO6TIR5XaOKYb4xLHvQ3lc08oxn3Q-_XWINTM,4052
82
+ music_assistant_frontend/assets/Players-CsGKvNru.js,sha256=dEMgTNKwz5-SOGWT5LZpDeBGah_trCpI4ADuQLhzxts,13181
83
+ music_assistant_frontend/assets/Players-DqQtrPDr.css,sha256=46F3eqLHmnjVW8gEJLa5BcGL9SQ8x3S4lc12WtVJN2I,5305
84
+ music_assistant_frontend/assets/PlaylistDetails-BRmplZDX.js,sha256=ZnPafzDpO0rRmDJuBI0cPz5L4LyLo_GdfjGwX2YJWJE,2164
85
+ music_assistant_frontend/assets/PodcastDetails-CO9edw4i.js,sha256=2ZBhgmOiMcNaJcegh1zeX0Smf9w2Nc1ylepiIL9ZROw,2132
86
+ music_assistant_frontend/assets/PopoverTrigger.vue_vue_type_script_setup_true_lang-ZsAs7pQL.js,sha256=wyBTSrFgZ6ro2iyHqn3BoTw_EKjZY7H0Txced5kMt_k,2180
87
+ music_assistant_frontend/assets/ProviderDetails-DFxC0Z2P.css,sha256=_a6TNRoGLnHMpldm3m2Jt2p9cyO0cmtKKzVoMAPCyDE,391
88
+ music_assistant_frontend/assets/ProviderDetails.vue_vue_type_style_index_0_lang-DFoDB6o8.js,sha256=8jlG5tSkgLXaJ0xv7S8QLZL4JqR5JTVAFoIfjkwYgkA,14003
89
+ music_assistant_frontend/assets/ProviderIcon-CbwA83VX.css,sha256=BS5XmyapUTmhFTirvduiEf5508now8nPMEVwy3FDTGI,55
90
+ music_assistant_frontend/assets/ProviderIcon.vue_vue_type_style_index_0_lang-3Xmo3tIn.js,sha256=8wT0MmVgJcA9iR7lNlNy9RsQv8QAb132viTOO0PNvt4,2324
91
+ music_assistant_frontend/assets/Providers-DoQCRcJD.css,sha256=QfKDX5zFmpbrj3sIItc9gfdlzhAsjLQZ6Sa18M6-1us,7378
92
+ music_assistant_frontend/assets/Providers-fnV7LLWJ.js,sha256=LheaUwfzjaBjk_ohXwOMy3HJhSjLNWvF29dP87uAOD0,20339
93
+ music_assistant_frontend/assets/RadioDetails-CSTUc8uy.js,sha256=2FCuJJkHqCfAkhYgUDkW39yJQs_dwJ1rxUoEtG-R-NI,2171
94
+ music_assistant_frontend/assets/RemoteAccessSettings-BJcgBwnj.js,sha256=XoTnUMKLtgSgnUnJJNWPjTh_zjfbwIvkc6Ocnj0XEJs,16360
95
+ music_assistant_frontend/assets/RemoteAccessSettings-DzZ6b2JZ.css,sha256=aPZiqm3u6vLRv2QYtxDgHdD8cwlj9kTsBrPSN2lOrzU,6653
96
+ music_assistant_frontend/assets/Search-CP2B4boW.js,sha256=CzL9kjMqgrCTCQYMWXOG3kq06NaMn3afwITMEUJMdeI,4929
97
+ music_assistant_frontend/assets/ServerLogs-DT9hKSu9.js,sha256=Kh4VbUa4acq0aRRcx6v7WytK0lmSsEdtReP3x-Sv0Ds,3414
98
+ music_assistant_frontend/assets/ServerLogs-DqUM0n_B.css,sha256=-ZtYIlqviO3ka1b7daN-Mnjtq3ZYRPOmTegypk-dPW4,427
99
+ music_assistant_frontend/assets/Settings-DTSUeTlH.js,sha256=FM30Ml8361cZGslFHtgU7_JRIah6bqWN3nvAxc2qlYk,7494
100
+ music_assistant_frontend/assets/Settings-Dy52XfiN.css,sha256=nbyZRpMP3xMee5qjVU9sHvkVkUh3egmTO9XFen7-SVg,1098
101
+ music_assistant_frontend/assets/SystemConfig-CI_tk8f0.css,sha256=7SRrtXTUM_TOyFqphwc5c3JxatxzE_pe9zLqjmL84WA,1098
102
+ music_assistant_frontend/assets/SystemConfig-CwdPKWrs.js,sha256=wj8ar6hmj3EKP5i3fWas0nUwQKS89fMrzh_3q-S9yys,2791
103
+ music_assistant_frontend/assets/Toolbar-BH0q_AuX.js,sha256=jOPTsGIP5rGaJW5E-jnWojo0CB3qs0da2Q4pxhm6rrU,4409
104
+ music_assistant_frontend/assets/Toolbar-Dz5VG6wZ.css,sha256=S9dOxlGVWHXTDX0AtmNpCXQZtdEVKHxIwCxRc1mcWiA,863
105
+ music_assistant_frontend/assets/TrackDetails-D-roSajh.js,sha256=llSm-DmvzzjsHSae1EM59tf9-K-voTnEDg5tZTHFmAs,2918
106
+ music_assistant_frontend/assets/UserManagement-Cjprr5Bf.css,sha256=P_ps_wyyRN3XtMBh1F3OgGZhQC-aIySbHFrDYd6ompA,225
107
+ music_assistant_frontend/assets/UserManagement-D95vHQbd.js,sha256=B4cP4RnDg1BkhZz2GY-z6t-in_TXAS8w6ZMMSQnCHsk,45184
108
+ music_assistant_frontend/assets/UserProfile-BT070UWs.js,sha256=v1KaYiHNoxd86H5UqzTDjVv6Ibv9zB4IS2pNHnW4WXo,21304
109
+ music_assistant_frontend/assets/UserProfile-D9w29jno.css,sha256=2lKyi0QvKAfWMkr6wGWyrtwWRkYiGSThfNsWl6q0aqk,585
110
+ music_assistant_frontend/assets/WidgetRow-CzKBwQIP.css,sha256=lyPAMs73TVc8R4BV1mokxUCXy3fbdGYxtg900U1aFso,746
111
+ music_assistant_frontend/assets/WidgetRow-CzSfjn6J.js,sha256=0zTAnCHeVUgyXHFYCn1K2bg2B-Cp4g0d-FQgL-6m-wE,2744
112
+ music_assistant_frontend/assets/almost_silent-BMvfGi7_.mp3,sha256=zlpyB67yZab5YtFl10bgzaQN5M3fQthBh3ufeI5Cvkk,496896
113
+ music_assistant_frontend/assets/color-BTziYnFN.js,sha256=nkYOxAaOLhkPWh3oWhgte_EIpedLouhFOcaQfKIlC4Y,34158
114
+ music_assistant_frontend/assets/constants-CXMxJR4j.js,sha256=wdFJN_eO5H66v8i-8gdcmLErtETVs_vnNhAXEJFm5B0,157
115
+ music_assistant_frontend/assets/cover_dark-DW8aYTk2.png,sha256=dUAs0EeAqYs_6vBCZ0ozzx304HNO3rNU9_Fwa2kRRtw,11926
116
+ music_assistant_frontend/assets/cover_light-Dxw-EaOr.png,sha256=uDKunsTNFXOKAmsTa6qVL6za3t2B0iEx3EtxvJV5Nzk,11831
117
+ music_assistant_frontend/assets/fallback-DFk8zSGg.png,sha256=0P8oAOi7n-sBYG7EIu22m6b7UmFoNoi0pi3neF1SxPo,10609
118
+ music_assistant_frontend/assets/hires-DgAYKrO8.png,sha256=Q4xwRtgLKtqFnL0zetHWCGDqX8CPFxzaXAX7C7diCU0,16057
119
+ music_assistant_frontend/assets/icon-U5wS6iOz.svg,sha256=Q2A7xPBg88m_RqImohKbMqNZV6_tRgs_7k8IREXUQAM,11197
120
+ music_assistant_frontend/assets/index-BFLe16Zh.js,sha256=Z4k4AenVl_rXqEb7IUgf8ABb0Lvolb1MU_AafZDhS2E,1654877
121
+ music_assistant_frontend/assets/index-BMjInzaQ.js,sha256=ktRZW9wKDy-YTkFMwsB81KKLMY2VlZ_s1D8t3_5C3og,1456
122
+ music_assistant_frontend/assets/index-CeixlMcg.css,sha256=7NSX1Hcx3XGpRq77t81g5Q_anMk_ZkiVAveuDOpWR3A,673883
123
+ music_assistant_frontend/assets/index-_We2Vr5Z.js,sha256=-pOHte__AvGnJxmZxoXnSz2GDCxVDo4Bpxgs5YDr0bY,2566
124
+ music_assistant_frontend/assets/index-kQIztB-E.js,sha256=_2ttfd8KliaTKWnsxsv_gXw505hXaiurIrGBypK4WeU,4979
125
+ music_assistant_frontend/assets/index-vt6UORr-.js,sha256=-5hKcQvlENWkhBi_6mC_wyfH9hfKsNzNblKuLl6moQ8,7253
126
+ music_assistant_frontend/assets/index.browser-OxPLOBIU.js,sha256=7Yk2rv9f9OtHxh8jSidiX3ANprqgSrYd36bysHaCvgE,196
127
+ music_assistant_frontend/assets/info_gradient-C5d1dalX.jpg,sha256=pK79HYRLHfB_2eV7Tx1gEpbAd22HhVqnXNlX5l_Q3H4,28226
128
+ music_assistant_frontend/assets/libopus-decoder-elWjCkSR.js,sha256=37UCAJVsFCvsXzI32m3LfW3o4XjGXG9gs2svfT7PH6M,251192
129
+ music_assistant_frontend/assets/lucide-C2DU1LFb.js,sha256=Lbr8rdizqFfWTr9kUQWZNoBSqY3icvkXCPyBupQ-1EM,93174
130
+ music_assistant_frontend/assets/m4a-BFCodQZL.png,sha256=RTMbBczAp_wltH1X-K67zy4sfhHXhEFbX57LCikUSIQ,9150
131
+ music_assistant_frontend/assets/marked-C0Rlrcoy.js,sha256=bxaL4AGxw5veRXHJy5VgVMWvQMBNy4rBw5Mo_pjGd6k,39836
132
+ music_assistant_frontend/assets/marquee_text_sync-CEgtptD4.js,sha256=UGwLyYBTeC1L_C0reQklumn3UN44_tLVh1G4BcuAM74,3391
133
+ music_assistant_frontend/assets/marquee_text_sync-CWCHA3k2.css,sha256=gwe4BnUUGwPY3Wu6usHILl8FFkF3LYJzrA9952JO2FQ,212
134
+ music_assistant_frontend/assets/material-icons-outlined-DZhiGvEA.woff2,sha256=NdyopxRaF8jRMG8lo8oJFXjhU5bwsi1h645zJirHVXc,155276
135
+ music_assistant_frontend/assets/materialdesignicons-webfont-B7mPwVP_.ttf,sha256=YeirpaTpgf4iz3yOi82-oAR251xiw38Bv37jM2HWhCg,1307660
136
+ music_assistant_frontend/assets/materialdesignicons-webfont-CSr8KVlo.eot,sha256=CxgxBNL8XyYZbnc8d72vLgVQn9QlnS0V7O3Kebh-hPk,1307880
137
+ music_assistant_frontend/assets/materialdesignicons-webfont-Dp5v-WZN.woff2,sha256=Zi_vqPL4qVwYWI0hd0eJwQfGTnccvmWmmvRikcQxGvw,403216
138
+ music_assistant_frontend/assets/materialdesignicons-webfont-PXm3-2wK.woff,sha256=pZKKDVwvYk5G-Y2bFcL2AEU3f3xZTdeKF1kTLqO0Y-s,587984
139
+ music_assistant_frontend/assets/mdi-DTeawFQ8.css,sha256=igO-HbV1KzjivPh745T1m0TL_JBC7lH8SpZU5vjMOKE,109781
140
+ music_assistant_frontend/assets/oggOpusDecoder-FGWA1cRr.js,sha256=fs99uCNIANY5kbpd0bj1zqrZlknm0kvm9IdkqZTlL1A,7567
141
+ music_assistant_frontend/assets/open-home-foundation-logo-C7bc6Uqr.svg,sha256=K5fxNXy6ok2DDSidGjtznJfiQNzJiZomuI25atFh8Wo,8745
142
+ music_assistant_frontend/assets/profile-Cv_y861N.js,sha256=czxByK3ulXqk7NOwdimwKcTc2D1myJsBTaHl_uVnAB4,302492
143
+ music_assistant_frontend/assets/qrcode-DSFhiIp2.js,sha256=UvSRYATeQJh4wX_c7TIZgIfs4OY9jsM0KcTL2rHKKNE,96307
144
+ music_assistant_frontend/assets/reka-ui-GpbaI08z.js,sha256=C5PdZul6DQ4ybP8SReMe-CHuaHRZ-xOc8uqkCQWGdL0,179936
145
+ music_assistant_frontend/assets/swiper-DDQ4uUkz.css,sha256=06ZthAA6zWNw7eGT9zV6PMnAqYwtMXhHAMcKYKRzEhI,16674
146
+ music_assistant_frontend/assets/swiper-Jy9GbtzK.js,sha256=Ix2-wrqTrzPSv7KAvtegGtdl8MVANzUdFr1rW2sKu6Y,108709
147
+ music_assistant_frontend/assets/userPreferences-DsKUT7Ha.js,sha256=k-Sig8fabHYf73NV09ijsq4NjNEyqzxX2hhrBq1FmbU,1011
148
+ music_assistant_frontend/assets/utils-CDN07tui.js,sha256=PoHMjdT6R3SaQAOEcN1V2twlfCUhn5Z8och0jMxeakY,25514
149
+ music_assistant_frontend/assets/vue-i18n-CX-lsKIo.js,sha256=Ubw76tdCzmDkB6d2lAnp9orMP83mIsTE54MYQgi6lSc,47718
150
+ music_assistant_frontend/assets/vue-router-BgJK_hRC.js,sha256=Opsy6PZdCfExyAPAnlkUWpKA_FSrsLfogHYKKBYbu4g,25869
151
+ music_assistant_frontend/assets/vuetify-CrxirfrA.js,sha256=v7Z1_-DVRLIBYGr7Fz4KRiNs_JMyNmbs1oEVmGJ7fBE,312942
152
+ music_assistant_frontend/assets/vuetify-bOa_R6j7.css,sha256=CBvvCgfRgYWyjhDIJ4-XWyR4Pn_VupS0wmNlSkojrSw,278796
153
+ music_assistant_frontend/assets/vueuse-DIaEWNCo.js,sha256=nQbAgOy_U0-BCnBoYe0lL_Ibz3rAGZAAoLGSY3O8HRg,15305
154
+ music_assistant_frontend/assets/workbox-window.prod.es5-BIl4cyR9.js,sha256=73XcU4p01jAJTXRTvOmA9OfHgJZwDUBInY6tGREx2Lo,5761
155
+ music_assistant_frontend-2.17.63.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
156
+ music_assistant_frontend-2.17.63.dist-info/METADATA,sha256=dtGLNMFa5IOY8Fe6OKsGijXRkeLi8ZkH-2EJcHjGzfE,3007
157
+ music_assistant_frontend-2.17.63.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
158
+ music_assistant_frontend-2.17.63.dist-info/top_level.txt,sha256=XjtvyM66vdcfJakG0XqhazCKdoWP3eHELRvTLokYRcM,25
159
+ music_assistant_frontend-2.17.63.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- import{C as w}from"./Container-Bc5cvdS8.js";import{ay as L,i as h,aP as u,a3 as I,ax as c,aI as m,aA as _,aG as s,o as e,bg as v,bh as l,aL as i,aN as a,aU as n,c3 as b,aF as k,aB as y,aJ as o,aM as r,E as f,aD as d,bK as V,aS as g,bE as p,_ as A}from"./index-GQ3lWXrm.js";import"./index-kQIztB-E.js";const S=""+new URL("open-home-foundation-logo-C7bc6Uqr.svg",import.meta.url).href,U={class:"info-value"},T={class:"info-value"},N={class:"foundation-text text-subtitle-1 mb-4"},B={class:"foundation-logo"},D=["src"],E={class:"info-value"},P={class:"info-value"},R={class:"info-value"},q={class:"info-value"},F={class:"info-value"},H=L({__name:"About",setup(M){const z=h(()=>"https://github.com/music-assistant/server/releases"),$=h(()=>{const t=u.serverInfo.value?.server_version||"";return t.includes("beta")||t.startsWith("0.")?"https://beta.music-assistant.io":"https://music-assistant.io"}),C=h(()=>`${u.serverInfo.value?.base_url||""}/api-docs`);return I(async()=>{c.libraryArtistsCount=await u.getLibraryArtistsCount(),c.libraryAlbumsCount=await u.getLibraryAlbumsCount(),c.libraryTracksCount=await u.getLibraryTracksCount(),c.libraryPlaylistsCount=await u.getLibraryPlaylistsCount(),c.libraryRadiosCount=await u.getLibraryRadiosCount()}),(t,G)=>(_(),m(w,null,{default:s(()=>[e(g,{class:"mb-4",elevation:"0",variant:"flat"},{default:s(()=>[e(v,{class:"text-subtitle-1 font-weight-bold py-3"},{default:s(()=>[e(i,{icon:"mdi-information-outline",class:"mr-2"}),l(" "+a(t.$t("settings.version_info")),1)]),_:1}),e(n),e(b,{class:"pa-0"},{default:s(()=>[e(k,{class:"py-0","bg-color":"transparent"},{default:s(()=>[e(o,{class:"info-list-item"},{append:s(()=>[f("span",U,a(d(u).serverInfo.value?.server_version),1)]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.server_version")),1)]),_:1})]),_:1}),d(u).serverInfo.value?.homeassistant_addon?y("",!0):(_(),m(n,{key:0})),d(u).serverInfo.value?.homeassistant_addon?y("",!0):(_(),m(o,{key:1,class:"info-list-item"},{append:s(()=>[f("span",T,a(d(u).serverInfo.value?.base_url),1)]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.server_base_url")),1)]),_:1})]),_:1})),e(n),e(o,{class:"info-list-item"},{append:s(()=>[e(V,{color:d(u).serverInfo.value?.homeassistant_addon?"success":"default",size:"small",variant:"flat"},{default:s(()=>[e(i,{icon:d(u).serverInfo.value?.homeassistant_addon?"mdi-check":"mdi-close",start:""},null,8,["icon"]),l(" "+a(d(u).serverInfo.value?.homeassistant_addon?t.$t("yes"):t.$t("no")),1)]),_:1},8,["color"])]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.server_as_addon")),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(g,{href:"https://www.openhomefoundation.org/",target:"_blank",class:"foundation-card mb-4",elevation:"0",variant:"flat"},{default:s(()=>[e(b,{class:"text-center py-6"},{default:s(()=>[f("div",N,a(t.$t("settings.proud_part_of")),1),f("div",B,[f("img",{src:d(S),alt:"Open Home Foundation",class:"foundation-img"},null,8,D)])]),_:1})]),_:1}),e(g,{class:"mb-4",elevation:"0",variant:"flat"},{default:s(()=>[e(v,{class:"text-subtitle-1 font-weight-bold py-3"},{default:s(()=>[e(i,{icon:"mdi-music-box-multiple",class:"mr-2"}),l(" "+a(t.$t("settings.library_stats")),1)]),_:1}),e(n),e(b,{class:"pa-0"},{default:s(()=>[e(k,{class:"py-0","bg-color":"transparent"},{default:s(()=>[e(o,{class:"info-list-item"},{append:s(()=>[f("span",E,a((d(c).libraryArtistsCount||0).toLocaleString()),1)]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.artists_in_library")),1)]),_:1})]),_:1}),e(n),e(o,{class:"info-list-item"},{append:s(()=>[f("span",P,a((d(c).libraryAlbumsCount||0).toLocaleString()),1)]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.albums_in_library")),1)]),_:1})]),_:1}),e(n),e(o,{class:"info-list-item"},{append:s(()=>[f("span",R,a((d(c).libraryTracksCount||0).toLocaleString()),1)]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.tracks_in_library")),1)]),_:1})]),_:1}),e(n),e(o,{class:"info-list-item"},{append:s(()=>[f("span",q,a((d(c).libraryPlaylistsCount||0).toLocaleString()),1)]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.playlists_in_library")),1)]),_:1})]),_:1}),e(n),e(o,{class:"info-list-item"},{append:s(()=>[f("span",F,a((d(c).libraryRadiosCount||0).toLocaleString()),1)]),default:s(()=>[e(r,{class:"info-label"},{default:s(()=>[l(a(t.$t("settings.radio_in_library")),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}),e(g,{class:"mb-4",elevation:"0",variant:"flat"},{default:s(()=>[e(v,{class:"text-subtitle-1 font-weight-bold py-3"},{default:s(()=>[e(i,{icon:"mdi-link-variant",class:"mr-2"}),l(" "+a(t.$t("settings.links")),1)]),_:1}),e(n),e(b,{class:"pa-0"},{default:s(()=>[e(k,{class:"py-0","bg-color":"transparent"},{default:s(()=>[e(o,{href:z.value,target:"_blank",link:"",class:"link-item"},{prepend:s(()=>[e(p,{color:"blue-grey-lighten-4",size:"36"},{default:s(()=>[e(i,{icon:"mdi-text-box-outline",color:"blue-grey-darken-2",size:"small"})]),_:1})]),append:s(()=>[e(i,{icon:"mdi-open-in-new",size:"small"})]),default:s(()=>[e(r,null,{default:s(()=>[l(a(t.$t("settings.changelog")),1)]),_:1})]),_:1},8,["href"]),e(n),e(o,{href:$.value,target:"_blank",link:"",class:"link-item"},{prepend:s(()=>[e(p,{color:"indigo-lighten-4",size:"36"},{default:s(()=>[e(i,{icon:"mdi-bookshelf",color:"indigo-darken-2",size:"small"})]),_:1})]),append:s(()=>[e(i,{icon:"mdi-open-in-new",size:"small"})]),default:s(()=>[e(r,null,{default:s(()=>[l(a(t.$t("settings.documentation")),1)]),_:1})]),_:1},8,["href"]),e(n),C.value?(_(),m(o,{key:0,href:C.value,target:"_blank",link:"",class:"link-item"},{prepend:s(()=>[e(p,{color:"teal-lighten-4",size:"36"},{default:s(()=>[e(i,{icon:"mdi-api",color:"teal-darken-2",size:"small"})]),_:1})]),append:s(()=>[e(i,{icon:"mdi-open-in-new",size:"small"})]),default:s(()=>[e(r,null,{default:s(()=>[l(a(t.$t("settings.api_docs")),1)]),_:1})]),_:1},8,["href"])):y("",!0),e(n),e(o,{href:"https://github.com/orgs/music-assistant/discussions/categories/feature-requests-and-ideas",target:"_blank",link:"",class:"link-item"},{prepend:s(()=>[e(p,{color:"amber-lighten-4",size:"36"},{default:s(()=>[e(i,{icon:"mdi-lightbulb-outline",color:"amber-darken-3",size:"small"})]),_:1})]),append:s(()=>[e(i,{icon:"mdi-open-in-new",size:"small"})]),default:s(()=>[e(r,null,{default:s(()=>[l(a(t.$t("settings.feature_requests")),1)]),_:1})]),_:1}),e(n),e(o,{href:"https://github.com/music-assistant/support",target:"_blank",link:"",class:"link-item"},{prepend:s(()=>[e(p,{color:"red-lighten-4",size:"36"},{default:s(()=>[e(i,{icon:"mdi-bug",color:"red-darken-2",size:"small"})]),_:1})]),append:s(()=>[e(i,{icon:"mdi-open-in-new",size:"small"})]),default:s(()=>[e(r,null,{default:s(()=>[l(a(t.$t("settings.bug_reports")),1)]),_:1})]),_:1}),e(n),e(o,{href:"https://github.com/orgs/music-assistant/discussions",target:"_blank",link:"",class:"link-item"},{prepend:s(()=>[e(p,{color:"purple-lighten-4",size:"36"},{default:s(()=>[e(i,{icon:"mdi-forum",color:"purple-darken-2",size:"small"})]),_:1})]),append:s(()=>[e(i,{icon:"mdi-open-in-new",size:"small"})]),default:s(()=>[e(r,null,{default:s(()=>[l(a(t.$t("settings.discussion_forums")),1)]),_:1})]),_:1}),e(n),e(o,{href:"https://github.com/music-assistant/server/blob/dev/LICENSE",target:"_blank",link:"",class:"link-item"},{prepend:s(()=>[e(p,{color:"green-lighten-4",size:"36"},{default:s(()=>[e(i,{icon:"mdi-license",color:"green-darken-2",size:"small"})]),_:1})]),append:s(()=>[e(i,{icon:"mdi-open-in-new",size:"small"})]),default:s(()=>[e(r,null,{default:s(()=>[l(a(t.$t("settings.license")),1)]),_:1})]),_:1})]),_:1})]),_:1})]),_:1})]),_:1}))}}),W=A(H,[["__scopeId","data-v-763864d2"]]);export{W as default};
@@ -1 +0,0 @@
1
- .font-monospace[data-v-763864d2]{font-family:monospace;font-size:.9em}.info-list-item[data-v-763864d2]{min-height:48px}.info-label[data-v-763864d2]{font-size:.875rem;font-weight:500;color:rgba(var(--v-theme-on-surface),.7)}.info-value[data-v-763864d2]{font-size:.875rem;color:rgba(var(--v-theme-on-surface),.9);text-align:right;word-break:break-all}@media (max-width: 600px){.info-list-item[data-v-763864d2] .v-list-item__content{display:block!important}.info-list-item[data-v-763864d2] .v-list-item__append{margin-top:4px;margin-left:0!important;align-self:flex-start!important}.info-value[data-v-763864d2]{text-align:left}}.foundation-card[data-v-763864d2]{cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1)}.foundation-card[data-v-763864d2]:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0003!important}.foundation-logo[data-v-763864d2]{display:flex;justify-content:center;align-items:center;padding:0 24px}.foundation-img[data-v-763864d2]{max-width:400px;width:100%;height:auto;opacity:.9;transition:opacity .2s ease}.foundation-card:hover .foundation-img[data-v-763864d2]{opacity:1}@media (prefers-color-scheme: dark){[data-v-763864d2] .v-avatar{opacity:.9}}
@@ -1 +0,0 @@
1
- import{ay as M,bT as U,bU as $,J as r,L as V,aI as C,aA as D,aG as v,o as t,aS as A,E as y,aU as I,bH as m,bV as h,bW as N,M as g,bh as c,aN as T,aQ as L,aP as f,bu as S,ax as w}from"./index-GQ3lWXrm.js";import{T as H}from"./Toolbar-BhPGsr4E.js";import{V as P}from"./VDialog-OmJrmVI_.js";const R={style:{padding:"15px"}},F=M({__name:"AddManualLink",props:U({type:{}},{modelValue:{type:Boolean},modelModifiers:{}}),emits:["update:modelValue"],setup(p){const d=$(p,"modelValue"),k=p,o=r(""),n=r(""),s=r(""),i=r(!1),l=r();V(()=>d.value,e=>{e!=null&&(w.dialogActive=e),e==!1&&(o.value="",n.value="",s.value="",l.value=void 0)},{immediate:!0}),V(()=>l.value,e=>{if(e){n.value||(n.value=e.name);for(const a of e.metadata.images||[])if(a.type=="thumb"){s.value=a.path;break}}});const b=()=>{!o.value||!["http","rtsp"].some(e=>o.value.startsWith(e))||(i.value=!0,k.type==L.RADIO?f.getRadio(o.value,"builtin").then(e=>{l.value=e}).catch(e=>{console.error(e),l.value=void 0}).finally(()=>{i.value=!1}):f.getTrack(o.value,"builtin").then(e=>{l.value=e}).catch(e=>{console.error(e),l.value=void 0}).finally(()=>{i.value=!1}))},B=function(){b(),l.value&&(l.value.name=n.value||l.value.name,delete l.value.sort_name,s.value&&(l.value.metadata.images=[{type:S.THUMB,path:s.value,provider:"builtin",remotely_accessible:!0}]),f.addItemToLibrary(l.value,!0).then(()=>{d.value=!1}))};return(e,a)=>(D(),C(P,{modelValue:d.value,"onUpdate:modelValue":a[4]||(a[4]=u=>d.value=u),transition:"dialog-bottom-transition"},{default:v(()=>[t(A,null,{default:v(()=>[t(H,{icon:"mdi-playlist-plus",title:e.$t("add_url_item")},null,8,["title"]),t(I),a[5]||(a[5]=y("br",null,null,-1)),y("div",R,[t(m,{modelValue:o.value,"onUpdate:modelValue":a[0]||(a[0]=u=>o.value=u),variant:"outlined",label:e.$t("enter_url"),disabled:i.value,onBlur:b},null,8,["modelValue","label","disabled"]),t(m,{modelValue:n.value,"onUpdate:modelValue":a[1]||(a[1]=u=>n.value=u),variant:"outlined",label:e.$t("enter_name"),disabled:i.value},null,8,["modelValue","label","disabled"]),t(m,{modelValue:s.value,"onUpdate:modelValue":a[2]||(a[2]=u=>s.value=u),variant:"outlined",label:e.$t("image_url"),disabled:i.value},null,8,["modelValue","label","disabled"]),t(h,null,{default:v(()=>[t(N),t(g,{variant:"outlined",onClick:a[3]||(a[3]=u=>d.value=!1)},{default:v(()=>[c(T(e.$t("cancel")),1)]),_:1}),t(g,{variant:"flat",color:"primary",disabled:i.value,onClick:B},{default:v(()=>[c(T(e.$t("save")),1)]),_:1},8,["disabled"])]),_:1})])]),_:1})]),_:1},8,["modelValue"]))}});export{F as _};
@@ -1 +0,0 @@
1
- import{ay as H,J as u,i as T,aP as g,br as U,az as M,aA as d,o as t,aG as r,E as s,aI as V,bg as N,bh as m,aN as p,aD as f,c0 as C,bi as k,aU as S,aB as D,bH as G,M as c,aE as L,c3 as E}from"./index-GQ3lWXrm.js";import{V as _}from"./VForm-CRBkgkz1.js";import{V as A}from"./VSelect-vsgYa-Ce.js";import{V as F}from"./VSwitch-C4Td5_x0.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";const O={style:{"margin-left":"-5px","margin-right":"-5px"}},Q=H({__name:"AddPlayerGroup",props:{provider:{}},setup(P){const $=L(),v=u(""),n=u([]),o=u(!0),b=u(!1),y=P,i=T(()=>g.getProvider(y.provider)),w=T(()=>Object.values(g.players).filter(l=>l.available&&l.type!=U.GROUP&&(l.provider==i.value?.domain||y.provider==="universal_group"))),B=async function(){g.createPlayerGroup(y.provider,v.value,n.value,o.value),$.push({name:"playersettings"})};return(l,e)=>(d(),M("section",null,[t(E,null,{default:r(()=>[s("div",O,[t(N,null,{default:r(()=>[m(p(l.$t("settings.add_group_player")),1)]),_:1}),i.value?.domain==="universal_group"?(d(),V(k,{key:0,style:{"white-space":"break-spaces"},innerHTML:f(C)(l.$t("settings.add_group_player_desc_universal"))},null,8,["innerHTML"])):(d(),V(k,{key:1,style:{"white-space":"break-spaces"},innerHTML:f(C)(l.$t("settings.add_group_player_desc",[i.value?.name]))},null,8,["innerHTML"])),e[6]||(e[6]=s("br",null,null,-1)),t(S),e[7]||(e[7]=s("br",null,null,-1)),e[8]||(e[8]=s("br",null,null,-1)),t(_,{ref:"form",modelValue:b.value,"onUpdate:modelValue":e[3]||(e[3]=a=>b.value=a),style:{"margin-right":"10px"}},{default:r(()=>[t(G,{modelValue:v.value,"onUpdate:modelValue":e[0]||(e[0]=a=>v.value=a),label:l.$t("settings.player_name"),variant:"outlined",clearable:"",required:"",rules:[a=>a.length>0||l.$t("settings.invalid_input")]},null,8,["modelValue","label","rules"]),t(A,{modelValue:n.value,"onUpdate:modelValue":e[1]||(e[1]=a=>n.value=a),clearable:"",multiple:"",items:w.value,"item-title":"display_name","item-value":"player_id",label:l.$t("settings.group_members")},null,8,["modelValue","items","label"]),t(F,{modelValue:o.value,"onUpdate:modelValue":e[2]||(e[2]=a=>o.value=a),color:"primary",label:l.$t("settings.dynamic_members.label")},null,8,["modelValue","label"]),i.value?.domain!=="universal_group"?(d(),V(k,{key:0,style:{"white-space":"break-spaces","padding-left":"0","margin-top":"-25px","margin-bottom":"35px"}},{default:r(()=>[m(p(l.$t("settings.dynamic_members.description")),1)]),_:1})):D("",!0),e[5]||(e[5]=s("br",null,null,-1)),t(c,{block:"",color:"primary",disabled:!b.value||n.value.length==0&&!o.value,onClick:B},{default:r(()=>[m(p(l.$t("settings.save")),1)]),_:1},8,["disabled"])]),_:1},8,["modelValue"]),e[9]||(e[9]=s("br",null,null,-1)),t(c,{block:"",onClick:e[4]||(e[4]=a=>f($).back())},{default:r(()=>[m(p(l.$t("close")),1)]),_:1})])]),_:1})]))}});export{Q as default};
@@ -1 +0,0 @@
1
- import{n as x}from"./index.browser-OxPLOBIU.js";import{ay as B,J as b,a3 as N,aP as o,bb as S,a4 as H,L,az as V,aA as d,o as a,aG as i,aB as k,E as f,aD as r,aI as y,bg as w,bh as v,aN as P,bi as h,c0 as C,aU as I,c3 as D,bV as U,M as $,aS as j,b8 as z,bx as O,aE as G,bN as J}from"./index-GQ3lWXrm.js";import{E as R}from"./EditConfig-Bwi8QH5_.js";import"./VAlert-C8Oto4eV.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./VSlider-BxXcuhLj.js";import"./VSelect-vsgYa-Ce.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VForm-CRBkgkz1.js";import"./VExpansionPanels-D8F4VK-K.js";import"./VDialog-OmJrmVI_.js";const q={key:0,style:{"margin-left":"-5px","margin-right":"-5px"}},F={id:"auth",href:"",target:"_blank"},se=B({__name:"AddProviderDetails",props:{domain:{}},setup(l){const M=G(),m=b([]),g=x(11),u=b(!1),c=b(!1),p=l;N(()=>{const n=o.subscribe(S.AUTH_SESSION,e=>{if(e.object_id!==g)return;const t=e.data;c.value=!0,window.setTimeout(()=>{const s=document.getElementById("auth");s.setAttribute("href",t),s.click()},100)});H(n)}),L(()=>p.domain,async n=>{n&&(m.value=await o.getProviderConfigEntries(p.domain,void 0,void 0,{session_id:g}))},{immediate:!0});const A=async function(n){u.value=!0,o.saveProviderConfig(p.domain,n).then(()=>{M.push({name:"providersettings"})}).catch(e=>{alert(e)}).finally(()=>{u.value=!1,c.value=!1})},T=async function(n,e){u.value=!0;for(const t of m.value)t.value!==void 0&&e[t.key]==null&&(e[t.key]=t.value);e.session_id=g,o.getProviderConfigEntries(p.domain,void 0,n,e).then(t=>{m.value=t}).catch(t=>{alert(t)}).finally(()=>{u.value=!1,c.value=!1})},E=function(n){const e=[],{t}=J();for(const s of n)s.includes("@")?e.push(`[${s.replace("@","")}](https://github.com/${s.replace("@","")})`):e.push(s);return`**${t("settings.codeowners")}**: `+e.join(" / ")};return(n,e)=>(d(),V("section",null,[a(D,null,{default:i(()=>[r(o).providerManifests[l.domain]?(d(),V("div",q,[a(w,null,{default:i(()=>[v(P(n.$t("settings.setup_provider",[r(o).providerManifests[l.domain].name])),1)]),_:1}),a(h,{innerHTML:r(C)(r(o).providerManifests[l.domain].description)},null,8,["innerHTML"]),e[1]||(e[1]=f("br",null,null,-1)),r(o).providerManifests[l.domain].codeowners.length?(d(),y(h,{key:0,innerHTML:r(C)(E(r(o).providerManifests[l.domain].codeowners))},null,8,["innerHTML"])):k("",!0)])):k("",!0),e[2]||(e[2]=f("br",null,null,-1)),a(I),e[3]||(e[3]=f("br",null,null,-1)),e[4]||(e[4]=f("br",null,null,-1)),a(R,{"config-entries":m.value,disabled:!1,onSubmit:A,onAction:T},null,8,["config-entries"])]),_:1}),a(O,{modelValue:u.value,"onUpdate:modelValue":e[0]||(e[0]=t=>u.value=t),scrim:"true",persistent:"",style:{display:"flex","align-items":"center","justify-content":"center"}},{default:i(()=>[c.value?(d(),y(j,{key:0,style:{"background-color":"white"}},{default:i(()=>[a(w,null,{default:i(()=>[...e[5]||(e[5]=[v("Authenticating...",-1)])]),_:1}),a(h,null,{default:i(()=>[...e[6]||(e[6]=[v("A new tab/popup should be opened where you can authenticate",-1)])]),_:1}),a(U,null,{default:i(()=>[f("a",F,[a($,null,{default:i(()=>[...e[7]||(e[7]=[v("Click here if the popup did not open",-1)])]),_:1})])]),_:1})]),_:1})):(d(),y(z,{key:1,indeterminate:"",size:"64",color:"primary"}))]),_:1},8,["modelValue"])]))}});export{se as default};
@@ -1 +0,0 @@
1
- import{I,_ as w}from"./ProviderDetails.vue_vue_type_script_setup_true_lang-Boj6o7qU.js";import{I as v}from"./ItemsListing-4Tzirx3k.js";import{M as g}from"./MediaItemImages-Dz3pW0B9.js";import{ay as A,J as f,L as _,a3 as D,aP as l,bb as V,a4 as h,az as B,aA as s,o as E,aI as u,aB as n,E as m,aD as M}from"./index-GQ3lWXrm.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./marquee_text_sync-a11Dvzhd.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VDialog-OmJrmVI_.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./ListItem-Cz0zK7Ay.js";import"./Button-BcX_QSum.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const Y=A({__name:"AlbumDetails",props:{itemId:{},provider:{}},setup(d){const r=d,e=f(),o=f(!1),b=async function(){o.value=!0,e.value=await l.getAlbum(r.itemId,r.provider),o.value=!1};_(()=>r.itemId,a=>{a&&b()},{immediate:!0}),D(()=>{const a=l.subscribe(V.MEDIA_ITEM_UPDATED,t=>{const i=t.data;if(e.value?.uri==i.uri)o.value=!0,e.value=i,o.value=!1;else if("provider_mappings"in i){for(const p of i.provider_mappings)if(p.item_id==r.itemId&&[p.provider_instance,p.provider_domain].includes(r.provider)){o.value=!0,e.value=i,o.value=!1;break}}});h(a)});const y=async function(a){return await l.getAlbumTracks(r.itemId,r.provider,a.libraryOnly)},c=async function(a){return await l.getAlbumVersions(e.value.item_id,e.value.provider)},k=async function(){e.value&&(e.value=await l.sendCommand("music/albums/update",{item_id:e.value.item_id,update:e.value,overwrite:!0}))};return(a,t)=>(s(),B("section",null,[E(I,{item:e.value,"active-provider":d.provider},null,8,["item","active-provider"]),e.value?(s(),u(v,{key:0,itemtype:"albumtracks","parent-item":e.value,"show-provider":!0,"show-track-number":!0,"show-favorites-only-filter":!0,"show-library-only-filter":e.value.provider=="library"&&M(l).hasStreamingProviders.value,"show-refresh-button":!1,"allow-key-hooks":!0,"load-items":y,"sort-keys":["track_number","name","sort_name","duration","duration_desc"],title:a.$t("tracks")},null,8,["parent-item","show-library-only-filter","title"])):n("",!0),t[1]||(t[1]=m("br",null,null,-1)),e.value?(s(),u(v,{key:1,itemtype:"albumversions","parent-item":e.value,"show-provider":!0,"show-favorites-only-filter":!1,"show-refresh-button":!1,"load-items":c,"sort-keys":["provider","name","year"],title:a.$t("other_versions"),"hide-on-empty":!0},null,8,["parent-item","title"])):n("",!0),t[2]||(t[2]=m("br",null,null,-1)),e.value?.provider=="library"&&e.value?.metadata?.images?(s(),u(g,{key:2,modelValue:e.value.metadata.images,"onUpdate:modelValue":[t[0]||(t[0]=i=>e.value.metadata.images=i),k]},null,8,["modelValue"])):n("",!0),t[3]||(t[3]=m("br",null,null,-1)),e.value?(s(),u(w,{key:3,"item-details":e.value},null,8,["item-details"])):n("",!0),t[4]||(t[4]=m("br",null,null,-1))]))}});export{Y as default};
@@ -1 +0,0 @@
1
- import{I as _,_ as k}from"./ProviderDetails.vue_vue_type_script_setup_true_lang-Boj6o7qU.js";import{I as p}from"./ItemsListing-4Tzirx3k.js";import{M as g}from"./MediaItemImages-Dz3pW0B9.js";import{ay as A,J as v,L as h,a3 as D,aP as o,bb as B,a4 as E,az as M,aA as s,o as V,aI as n,aB as u,E as m,aD as f}from"./index-GQ3lWXrm.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./marquee_text_sync-a11Dvzhd.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VDialog-OmJrmVI_.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./ListItem-Cz0zK7Ay.js";import"./Button-BcX_QSum.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const Y=A({__name:"ArtistDetails",props:{itemId:{},provider:{}},setup(y){const r=y,e=v(),i=v(!1),b=async function(){i.value=!0,e.value=await o.getArtist(r.itemId,r.provider),i.value=!1};h(()=>r.itemId,a=>{a&&b()},{immediate:!0}),D(()=>{const a=o.subscribe(B.MEDIA_ITEM_UPDATED,t=>{const l=t.data;if(e.value?.uri==l.uri)i.value=!0,e.value=l,i.value=!1;else if("provider_mappings"in l){for(const d of l.provider_mappings)if(d.item_id==r.itemId&&[d.provider_instance,d.provider_domain].includes(r.provider)){i.value=!0,e.value=l,i.value=!1;break}}});E(a)});const c=async function(a){return await o.getArtistAlbums(r.itemId,r.provider,a.libraryOnly)},w=async function(a){return await o.getArtistTracks(r.itemId,r.provider,a.libraryOnly)},I=async function(){e.value&&(e.value=await o.sendCommand("music/artists/update",{item_id:e.value.item_id,update:e.value,overwrite:!0}))};return(a,t)=>(s(),M("section",null,[V(_,{item:e.value},null,8,["item"]),e.value&&!i.value?(s(),n(p,{key:0,itemtype:"artistalbums","parent-item":e.value,"show-provider":!0,"show-favorites-only-filter":!0,"show-library-only-filter":e.value.provider=="library"&&f(o).hasStreamingProviders.value,"show-album-type-filter":!0,"show-refresh-button":!1,"load-items":c,"sort-keys":["name","sort_name","year","name_desc","sort_name_desc","year_desc"],title:a.$t("albums"),"allow-collapse":!0},null,8,["parent-item","show-library-only-filter","title"])):u("",!0),t[1]||(t[1]=m("br",null,null,-1)),e.value&&!i.value?(s(),n(p,{key:1,itemtype:"artisttracks","parent-item":e.value,"show-provider":!0,"show-favorites-only-filter":!0,"show-library-only-filter":e.value.provider=="library"&&f(o).hasStreamingProviders.value,"show-refresh-button":!1,"show-track-number":!1,"load-items":w,"sort-keys":["name","sort_name","album","duration","name_desc","sort_name_desc","duration_desc","original"],title:a.$t("tracks"),"allow-collapse":!0},null,8,["parent-item","show-library-only-filter","title"])):u("",!0),t[2]||(t[2]=m("br",null,null,-1)),e.value?.provider=="library"&&e.value?.metadata?.images?(s(),n(g,{key:2,modelValue:e.value.metadata.images,"onUpdate:modelValue":[t[0]||(t[0]=l=>e.value.metadata.images=l),I]},null,8,["modelValue"])):u("",!0),t[3]||(t[3]=m("br",null,null,-1)),e.value?(s(),n(k,{key:3,"item-details":e.value},null,8,["item-details"])):u("",!0),t[4]||(t[4]=m("br",null,null,-1))]))}});export{Y as default};
@@ -1 +0,0 @@
1
- import{I as C,_ as x}from"./ProviderDetails.vue_vue_type_script_setup_true_lang-Boj6o7qU.js";import{C as A}from"./Container-Bc5cvdS8.js";import{T as V}from"./Toolbar-BhPGsr4E.js";import{ay as h,J as f,i as g,az as m,aA as t,o as u,aI as d,aB as c,aU as w,aG as l,ah as y,aH as E,aF as T,aJ as B,aD as D,bM as k,aN as v,b7 as M,E as I,bK as N,bh as L,aP as _,L as $,a3 as U,bb as F,a4 as H}from"./index-GQ3lWXrm.js";import"./marquee_text_sync-a11Dvzhd.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VDialog-OmJrmVI_.js";import"./ListItem-Cz0zK7Ay.js";import"./Button-BcX_QSum.js";import"./index-kQIztB-E.js";import"./VToolbar-BTrAkkB7.js";const J={style:{"margin-bottom":"10px"}},P={style:{width:"50px"}},S={key:0,class:"text-caption"},z=h({__name:"Chapters",props:{itemDetails:{}},setup(r){const a=r,o=f(!0),e=function(){o.value=!o.value},p=g(()=>[{label:"tooltip.collapse_expand",icon:o.value?"mdi-chevron-up":"mdi-chevron-down",action:e,overflowAllowed:!1}]),s=function(n){!a.itemDetails||!k(a.itemDetails)||_.playMedia(a.itemDetails.uri,void 0,void 0,n.position.toString())};return(n,b)=>(t(),m("section",J,[u(V,{title:n.$t("chapters"),"menu-items":p.value,onTitleClicked:e},null,8,["title","menu-items"]),u(w),o.value?(t(),d(A,{key:0},{default:l(()=>[u(T,null,{default:l(()=>[(t(!0),m(y,null,E(r.itemDetails?.metadata?.chapters,i=>(t(),d(B,{key:i.position,disabled:!D(k)(r.itemDetails),onClick:G=>s(i)},{prepend:l(()=>[I("div",P,[u(N,null,{default:l(()=>[L(v(i.position),1)]),_:2},1024)])]),title:l(()=>[I("div",null,v(i.name),1)]),append:l(()=>[i.end?(t(),m("span",S,v(D(M)(i.end-i.start)),1)):c("",!0)]),_:2},1032,["disabled","onClick"]))),128))]),_:1})]),_:1})):c("",!0)]))}}),te=h({__name:"AudiobookDetails",props:{itemId:{},provider:{}},setup(r){const a=r,o=f(!1),e=f(),p=async function(){e.value=await _.getAudiobook(a.itemId,a.provider)};return $(()=>a.itemId,s=>{s&&p()},{immediate:!0}),U(()=>{const s=_.subscribe(F.MEDIA_ITEM_UPDATED,n=>{const b=n.data;e.value?.uri==b.uri&&(o.value=!0)});H(s)}),(s,n)=>(t(),m(y,null,[u(C,{item:e.value},null,8,["item"]),e.value&&e.value.metadata?.chapters?(t(),d(z,{key:0,"item-details":e.value},null,8,["item-details"])):c("",!0),e.value?(t(),d(x,{key:1,"item-details":e.value},null,8,["item-details"])):c("",!0)],64))}});export{te as default};
@@ -1 +0,0 @@
1
- .breadcrumb-container[data-v-15caa508]{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-width:0;max-width:100%}.breadcrumb-segment[data-v-15caa508]{display:flex;align-items:center;gap:4px;min-width:0}.breadcrumb-link[data-v-15caa508]{background:none;border:none;color:inherit;cursor:pointer;text-decoration:underline;font-family:inherit;font-size:inherit;padding:0;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.breadcrumb-link[data-v-15caa508]:hover{opacity:.7}.breadcrumb-text[data-v-15caa508]{color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.breadcrumb-separator[data-v-15caa508]{opacity:.5;margin:0 2px;flex-shrink:0}.breadcrumb-container:has(.breadcrumb-segment:nth-child(4)) .breadcrumb-link[data-v-15caa508],.breadcrumb-container:has(.breadcrumb-segment:nth-child(4)) .breadcrumb-text[data-v-15caa508]{font-size:.9em}.breadcrumb-container:has(.breadcrumb-segment:nth-child(5)) .breadcrumb-link[data-v-15caa508],.breadcrumb-container:has(.breadcrumb-segment:nth-child(5)) .breadcrumb-text[data-v-15caa508]{font-size:.85em;max-width:150px}.breadcrumb-container:has(.breadcrumb-segment:nth-child(6)) .breadcrumb-link[data-v-15caa508],.breadcrumb-container:has(.breadcrumb-segment:nth-child(6)) .breadcrumb-text[data-v-15caa508]{font-size:.8em;max-width:120px}
@@ -1 +0,0 @@
1
- import{I as x}from"./ItemsListing-4Tzirx3k.js";import{ay as B,bN as I,J as N,i as d,aP as b,az as l,aA as r,o as P,aG as V,E as C,ah as E,aH as S,aI as L,aB as F,aN as f,aL as j,bm as k,aQ as z,_ as D}from"./index-GQ3lWXrm.js";import"./Container-Bc5cvdS8.js";import"./index-kQIztB-E.js";import"./Toolbar-BhPGsr4E.js";import"./VToolbar-BTrAkkB7.js";import"./Button-BcX_QSum.js";import"./ListItem-Cz0zK7Ay.js";import"./NowPlayingBadge.vue_vue_type_style_index_0_lang-BZUcSWaz.js";import"./MediaItemThumb-C--YJJ5Y.js";import"./VCheckbox-CgwahLqh.js";import"./VCheckboxBtn-orONEqTE.js";import"./VSelectionControl-C9uJkKHo.js";import"./PanelviewItemCompact-BFofUlbn.js";import"./userPreferences-CU3N6m4Z.js";import"./VInfiniteScroll-C839Qj3G.js";import"./VVirtualScroll-YsHPZNGu.js";import"./VAlert-C8Oto4eV.js";const O={class:"breadcrumb-container"},T=["onClick"],q={key:1,class:"breadcrumb-text"},A=B({__name:"BrowseView",props:{path:{}},setup(i){const s=i,{t:w}=I(),m=N(!1),g=d(()=>""),h=d(()=>{const e=[];if(e.push({text:w("browse"),path:null,clickable:s.path&&s.path!=="root"||!1}),s.path&&s.path!=="root")if(s.path.includes("://")){const[a,t]=s.path.split("://"),o=a+"://",n=b.getProviderName(a);if(e.push({text:n,path:o,clickable:t&&t.length>0||!1}),t&&t.length>0){const c=t.split("/").filter(p=>p.length>0);c.forEach((p,u)=>{const _=o+c.slice(0,u+1).join("/");e.push({text:p,path:_,clickable:u<c.length-1})})}}else{const a=s.path.split("/").filter(t=>t.length>0);a.forEach((t,o)=>{const n=a.slice(0,o+1).join("/");e.push({text:t,path:n,clickable:o<a.length-1})})}return e}),v=async function(e){const a=await b.browse(s.path);return m.value=a.every(t=>t.media_type===z.FOLDER),a},y=e=>{e===null?k.push({name:"browse"}):k.push({name:"browse",query:{path:e}})};return(e,a)=>(r(),l("section",null,[P(x,{itemtype:"browse","show-provider":!1,"show-library":!1,"show-favorites-only-filter":!1,"show-track-number":!1,"show-select-button":!!(i.path&&i.path!="root"&&!m.value),"load-items":v,"sort-keys":["original","name","name_desc"],path:i.path,"allow-key-hooks":!0,icon:"mdi-folder-outline",title:g.value},{title:V(()=>[C("div",O,[(r(!0),l(E,null,S(h.value,(t,o)=>(r(),l("span",{key:o,class:"breadcrumb-segment"},[t.clickable?(r(),l("button",{key:0,class:"breadcrumb-link",onClick:n=>y(t.path)},f(t.text),9,T)):(r(),l("span",q,f(t.text),1)),o<h.value.length-1?(r(),L(j,{key:2,icon:"mdi-chevron-right",size:"small",class:"breadcrumb-separator"})):F("",!0)]))),128))])]),_:1},8,["show-select-button","path","title"])]))}}),rt=D(A,[["__scopeId","data-v-15caa508"]]);export{rt as default};
@@ -1 +0,0 @@
1
- import{M as y}from"./index-kQIztB-E.js";import{i as r,ay as f,a_ as B,aI as c,aA as u,M as b,ae as d,aD as p,aK as m,aG as v,aB as h,aL as w,aH as g,a$ as x,_ as k}from"./index-GQ3lWXrm.js";const $=(...e)=>e.filter(Boolean).join(" "),C=e=>{const l=r(()=>{const{variant:i,nav:a,...n}=e,t={...n,"aria-label":e.title||e["aria-label"]};return y(i).with("responsive",()=>({...t,icon:!0,variant:"text",ripple:e.ripple!==!1,class:e.class?`btn-responsive ${e.class}`:"btn-responsive",style:{height:"var(--responsive-button-size, min(calc(100vw - 40px), calc(100vh - 340px)))",width:"var(--responsive-button-size, min(calc(100vw - 40px), calc(100vh - 340px)))",...typeof e.style=="object"?e.style:{}}})).with("icon",()=>({...t,icon:!0,variant:"plain",ripple:e.ripple!==!1,class:e.class?`btn-icon ${e.class}`:"btn-icon"})).with("list",()=>({...t,variant:"plain",density:"comfortable",ripple:e.ripple!==!1,class:e.class?`btn-list ${e.class}`:"btn-list"})).with("plain",()=>({...t,variant:"plain",ripple:e.ripple!==!1})).with("default",()=>({...t,variant:"text",ripple:e.ripple!==!1})).otherwise(()=>({...t,variant:"text",ripple:e.ripple!==!1}))}),o=r(()=>$("button",e.variant&&`button--${e.variant}`,e.nav&&"button--nav"));return{buttonProps:l,buttonClasses:o}},P={variant:"default",ripple:!0},M=f({__name:"Button",props:B({variant:{},nav:{type:Boolean},icon:{type:[String,Boolean]},ripple:{type:Boolean},height:{},width:{},size:{},title:{},disabled:{type:Boolean},color:{},to:{},block:{type:Boolean},density:{},flat:{type:Boolean},loading:{type:Boolean},outlined:{type:Boolean},rounded:{type:[Boolean,String,Number]},tag:{},text:{type:Boolean},type:{},value:{},active:{type:Boolean},append:{type:Boolean},exact:{type:Boolean},replace:{type:Boolean},slim:{type:Boolean},stacked:{type:Boolean},class:{},style:{},"aria-label":{}},P),emits:["click"],setup(e){const l=e,{buttonProps:o,buttonClasses:i}=C(l);return(a,n)=>(u(),c(b,d(p(o),{class:p(i),onClick:n[0]||(n[0]=t=>a.$emit("click",t))}),m({default:v(()=>[e.icon&&typeof e.icon=="string"?(u(),c(w,{key:0,icon:e.icon},null,8,["icon"])):h("",!0)]),_:2},[g(a.$slots,(t,s)=>({name:s,fn:v(()=>[x(a.$slots,s,{},void 0,!0)])}))]),1040,["class"]))}}),I=k(M,[["__scopeId","data-v-f097a0e8"]]);export{I as M,$ as m};
@@ -1 +0,0 @@
1
- .button[data-v-f097a0e8]:focus-visible{outline:2px solid var(--v-theme-primary);outline-offset:2px}@media (prefers-contrast: high){.button[data-v-f097a0e8]{border:1px solid currentColor}}@media (prefers-reduced-motion: reduce){.button[data-v-f097a0e8]{transition:none}}.button--responsive[data-v-f097a0e8]{min-height:48px;min-width:48px}.button--icon[data-v-f097a0e8]{min-height:40px;min-width:40px}.button--icon[data-v-f097a0e8] .v-ripple__container{border-radius:50%!important;transform:scale(.7)!important}.button--icon[data-v-f097a0e8] .v-ripple__animation{border-radius:50%!important}.button--nav[data-v-f097a0e8]{border-radius:0}