music-assistant-frontend 2.17.11__py3-none-any.whl → 2.17.20__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.
- music_assistant_frontend/CNAME +1 -0
- music_assistant_frontend/assets/About-Ba3VLBU-.css +1 -0
- music_assistant_frontend/assets/About-eW-4urJV.js +1 -0
- music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-DQP6MVZU.js +1 -0
- music_assistant_frontend/assets/AddPlayerGroup-DrpKvGgv.js +1 -0
- music_assistant_frontend/assets/AddProviderDetails-CWS1vCiZ.js +1 -0
- music_assistant_frontend/assets/AlbumDetails-wRWGtQUA.js +1 -0
- music_assistant_frontend/assets/ArtistDetails-CR47rAMr.js +1 -0
- music_assistant_frontend/assets/AudiobookDetails-CE9gIq3Q.js +1 -0
- music_assistant_frontend/assets/BrowseView-Cx_P4-_Y.js +1 -0
- music_assistant_frontend/assets/Button-faGxxowY.js +1 -0
- music_assistant_frontend/assets/Container-D5KFPVjs.js +1 -0
- music_assistant_frontend/assets/CreateTokenDialog.vue_vue_type_script_setup_true_lang-Cad6HStr.js +1 -0
- music_assistant_frontend/assets/Default-GVlZdAUf.css +1 -0
- music_assistant_frontend/assets/Default-KyHEk5ZR.js +21 -0
- music_assistant_frontend/assets/EditConfig-B0XoDh_u.js +1 -0
- music_assistant_frontend/assets/{EditConfig-SyvCtrr0.css → EditConfig-TBO3lEGx.css} +1 -1
- music_assistant_frontend/assets/EditCoreConfig-DFyuSEd9.js +1 -0
- music_assistant_frontend/assets/EditPlayer-Cgs9ko95.js +1 -0
- music_assistant_frontend/assets/EditPlayerDsp-D98k0PKW.js +9 -0
- music_assistant_frontend/assets/EditProvider-CgzI4UVG.js +1 -0
- music_assistant_frontend/assets/FrontendConfig-B-B9Z2Vn.js +1 -0
- music_assistant_frontend/assets/HomeView-DFXlCmKt.js +1 -0
- music_assistant_frontend/assets/ItemsListing-BP5XXmLQ.js +1 -0
- music_assistant_frontend/assets/ItemsListing-DL5ZjBes.css +1 -0
- music_assistant_frontend/assets/LibraryAlbums-BGHrSh_z.js +1 -0
- music_assistant_frontend/assets/LibraryArtists-rX5Sb_ET.js +1 -0
- music_assistant_frontend/assets/LibraryAudiobooks-BL7Qa-rV.js +1 -0
- music_assistant_frontend/assets/LibraryPlaylists-mtIVGJsc.js +1 -0
- music_assistant_frontend/assets/LibraryPodcasts-DFW7qn7z.js +1 -0
- music_assistant_frontend/assets/LibraryRadios-3VXOISsH.js +1 -0
- music_assistant_frontend/assets/LibraryTracks-D1kcnNYD.js +1 -0
- music_assistant_frontend/assets/ListItem-DXTT8_G5.js +1 -0
- music_assistant_frontend/assets/MediaItemImages-RwaXDWAp.js +1 -0
- music_assistant_frontend/assets/MediaItemThumb-DYAHQAuC.js +1 -0
- music_assistant_frontend/assets/PanelviewItemCompact-BKBJxxoM.js +1 -0
- music_assistant_frontend/assets/PlayerCard-DdgZ3XZ5.js +1 -0
- music_assistant_frontend/assets/Players-BelAvYKh.js +1 -0
- music_assistant_frontend/assets/PlaylistDetails-Bf5e08Ep.js +1 -0
- music_assistant_frontend/assets/PodcastDetails-B8Mjw_8n.js +1 -0
- music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-CPN1bhCQ.js +8 -0
- music_assistant_frontend/assets/Providers-BYVx_A_K.js +1 -0
- music_assistant_frontend/assets/RadioDetails-pOddxrkl.js +1 -0
- music_assistant_frontend/assets/Search-B6SlCk_7.js +1 -0
- music_assistant_frontend/assets/ServerLogs-BzVXmR6_.js +4 -0
- music_assistant_frontend/assets/ServerLogs-D16I7ozL.css +1 -0
- music_assistant_frontend/assets/{Settings-DgZgWYgS.css → Settings-CDWcSKlt.css} +1 -1
- music_assistant_frontend/assets/Settings-Cqw-X9OU.js +1 -0
- music_assistant_frontend/assets/SystemConfig-BKi5ffMS.css +1 -0
- music_assistant_frontend/assets/SystemConfig-BOdTwx9R.js +1 -0
- music_assistant_frontend/assets/Toolbar-B32L_M7G.js +1 -0
- music_assistant_frontend/assets/{Toolbar-DJx0b-Ea.css → Toolbar-CVFN8H4Z.css} +1 -1
- music_assistant_frontend/assets/TrackDetails-CkCm62Ec.js +1 -0
- music_assistant_frontend/assets/UserManagement-c_dhgxwj.js +1 -0
- music_assistant_frontend/assets/{UserProfile-N41UXZkv.css → UserProfile-2WJSaYoR.css} +1 -1
- music_assistant_frontend/assets/UserProfile-CpcF98Ve.js +1 -0
- music_assistant_frontend/assets/VAlert-CFvRz3gu.js +1 -0
- music_assistant_frontend/assets/VCheckboxBtn-B5wUW3kZ.js +1 -0
- music_assistant_frontend/assets/{VDialog-BPGCUfED.js → VDialog-5KHkpnhE.js} +1 -1
- music_assistant_frontend/assets/VExpansionPanels-DboS79vY.js +1 -0
- music_assistant_frontend/assets/VForm-DDKxMAmn.js +1 -0
- music_assistant_frontend/assets/VInfiniteScroll-Bbntx9NP.css +1 -0
- music_assistant_frontend/assets/VInfiniteScroll-DataCA15.js +1 -0
- music_assistant_frontend/assets/VSelect-VNw4nPSb.js +1 -0
- music_assistant_frontend/assets/VSelectionControl-CCjz0Lnv.js +1 -0
- music_assistant_frontend/assets/VSlider-Dcfg9Wg5.js +1 -0
- music_assistant_frontend/assets/VSwitch-DQEiK9D_.js +1 -0
- music_assistant_frontend/assets/VToolbar-w3YLtQh8.js +1 -0
- music_assistant_frontend/assets/VVirtualScroll-Cg5AQGzG.js +1 -0
- music_assistant_frontend/assets/WidgetRow-CZHmyp7T.js +1 -0
- music_assistant_frontend/assets/{index-9wFVyQJF.js → index-Dj6UKNsX.js} +38 -38
- music_assistant_frontend/assets/index-iTwi4kPx.css +1 -0
- music_assistant_frontend/assets/marquee_text_sync-R3hHMfp7.js +1 -0
- music_assistant_frontend/assets/open-home-foundation-logo-C7bc6Uqr.svg +22 -0
- music_assistant_frontend/assets/userPreferences-CpcwN_LW.js +1 -0
- music_assistant_frontend/index.html +2 -2
- music_assistant_frontend/sw.js +2 -1
- {music_assistant_frontend-2.17.11.dist-info → music_assistant_frontend-2.17.20.dist-info}/METADATA +1 -1
- music_assistant_frontend-2.17.20.dist-info/RECORD +145 -0
- music_assistant_frontend/assets/AddManualLink.vue_vue_type_script_setup_true_lang-BilDCpf6.js +0 -1
- music_assistant_frontend/assets/AddPlayerGroup-BYV8Y1LE.js +0 -1
- music_assistant_frontend/assets/AddProviderDetails-kB7INZIB.js +0 -1
- music_assistant_frontend/assets/AlbumDetails-DU6l-aqD.js +0 -1
- music_assistant_frontend/assets/ArtistDetails-C5fwf1Ul.js +0 -1
- music_assistant_frontend/assets/AudiobookDetails-BdfpQjus.js +0 -1
- music_assistant_frontend/assets/BrowseView-BssNiRRa.js +0 -1
- music_assistant_frontend/assets/Button-C-VEz_LI.js +0 -1
- music_assistant_frontend/assets/Container-BJrCSObY.js +0 -1
- music_assistant_frontend/assets/CoreConfigs-BsI6FsWH.css +0 -1
- music_assistant_frontend/assets/CoreConfigs-rOpcKZFT.js +0 -1
- music_assistant_frontend/assets/Default-3G11SZal.css +0 -1
- music_assistant_frontend/assets/Default-CUXRm2rg.js +0 -21
- music_assistant_frontend/assets/EditConfig-DXjpmNn9.js +0 -1
- music_assistant_frontend/assets/EditCoreConfig-C-eN53T5.js +0 -1
- music_assistant_frontend/assets/EditPlayer-DIvL3z3D.js +0 -1
- music_assistant_frontend/assets/EditPlayerDsp-B1Xon7v2.js +0 -9
- music_assistant_frontend/assets/EditProvider-D9MCfQ0w.js +0 -1
- music_assistant_frontend/assets/FrontendConfig-GHYdXDxu.js +0 -1
- music_assistant_frontend/assets/HomeView-DJF0saSj.js +0 -1
- music_assistant_frontend/assets/ItemsListing-C49HRbSG.js +0 -1
- music_assistant_frontend/assets/ItemsListing-CBCWLHeg.css +0 -1
- music_assistant_frontend/assets/LibraryAlbums-D9tiVoO5.js +0 -1
- music_assistant_frontend/assets/LibraryArtists-6kAIUMT4.js +0 -1
- music_assistant_frontend/assets/LibraryAudiobooks-Bs8mF684.js +0 -1
- music_assistant_frontend/assets/LibraryPlaylists-DkpseMkD.js +0 -1
- music_assistant_frontend/assets/LibraryPodcasts-DwH40GTd.js +0 -1
- music_assistant_frontend/assets/LibraryRadios-fbUMI3_x.js +0 -1
- music_assistant_frontend/assets/LibraryTracks-CglybHEv.js +0 -1
- music_assistant_frontend/assets/ListItem-UwdbG-Br.js +0 -1
- music_assistant_frontend/assets/MediaItemImages-C4aHMmVs.js +0 -1
- music_assistant_frontend/assets/MediaItemThumb-CIzEvLC1.js +0 -1
- music_assistant_frontend/assets/NowPlayingBadge.vue_vue_type_style_index_0_lang-BsGozMKb.js +0 -1
- music_assistant_frontend/assets/PanelviewItemCompact-Bh2HNG1g.js +0 -1
- music_assistant_frontend/assets/PlayerCard-CNtRdfSH.js +0 -1
- music_assistant_frontend/assets/Players-C0QWtmPX.js +0 -1
- music_assistant_frontend/assets/PlaylistDetails-CnlMQiYr.js +0 -1
- music_assistant_frontend/assets/PodcastDetails-DoAzZcpm.js +0 -1
- music_assistant_frontend/assets/ProviderDetails.vue_vue_type_script_setup_true_lang-BrpUE5JN.js +0 -8
- music_assistant_frontend/assets/Providers-DbouHjV4.js +0 -1
- music_assistant_frontend/assets/RadioDetails-BNB_Zz7v.js +0 -1
- music_assistant_frontend/assets/Search-X_hTXwtA.js +0 -1
- music_assistant_frontend/assets/Settings-v85kXJFD.js +0 -1
- music_assistant_frontend/assets/Toolbar-DKtKPcsg.js +0 -1
- music_assistant_frontend/assets/TrackDetails-kIDB3KQY.js +0 -1
- music_assistant_frontend/assets/UserManagement-D2TMWca2.js +0 -1
- music_assistant_frontend/assets/UserProfile-DQbgJeA-.js +0 -1
- music_assistant_frontend/assets/VAlert-D47QZ7qK.js +0 -1
- music_assistant_frontend/assets/VCheckboxBtn-DtwUx7x8.js +0 -1
- music_assistant_frontend/assets/VContainer-Bmll2nQh.js +0 -1
- music_assistant_frontend/assets/VExpansionPanels-A0OVIs-m.js +0 -1
- music_assistant_frontend/assets/VForm-RrHOXWl_.js +0 -1
- music_assistant_frontend/assets/VInput-Bym6CXFb.js +0 -1
- music_assistant_frontend/assets/VInput-CcxkaOXT.css +0 -1
- music_assistant_frontend/assets/VRow-plcqQvnb.js +0 -1
- music_assistant_frontend/assets/VSelect-FK85NUXM.js +0 -1
- music_assistant_frontend/assets/VSlider-DxpYJWk3.js +0 -1
- music_assistant_frontend/assets/VSnackbar-B7zT2MUe.js +0 -1
- music_assistant_frontend/assets/VSnackbar-BIpAVEnw.css +0 -1
- music_assistant_frontend/assets/VSwitch-DhfvNVio.js +0 -1
- music_assistant_frontend/assets/VTextField-DJZc05eK.js +0 -1
- music_assistant_frontend/assets/VTextField-PT7-TPYc.css +0 -1
- music_assistant_frontend/assets/VToolbar-BKGXqxdt.js +0 -1
- music_assistant_frontend/assets/VVirtualScroll-H5Wikvf-.js +0 -1
- music_assistant_frontend/assets/WidgetRow-DaVwmU5p.js +0 -1
- music_assistant_frontend/assets/_plugin-vue_export-helper-DlAUqK2U.js +0 -1
- music_assistant_frontend/assets/index-BMleNiiT.css +0 -1
- music_assistant_frontend/assets/layout-BdbtgIRG.js +0 -1
- music_assistant_frontend/assets/marquee_text_sync-D3Qu1KPM.js +0 -1
- music_assistant_frontend/workbox-e3490c72.js +0 -1
- music_assistant_frontend-2.17.11.dist-info/RECORD +0 -146
- /music_assistant_frontend/assets/{VCheckboxBtn-CIeJsqfW.css → VSelectionControl-CIeJsqfW.css} +0 -0
- /music_assistant_frontend/assets/{NowPlayingBadge-Cm6AcKY5.css → userPreferences-Cm6AcKY5.css} +0 -0
- {music_assistant_frontend-2.17.11.dist-info → music_assistant_frontend-2.17.20.dist-info}/WHEEL +0 -0
- {music_assistant_frontend-2.17.11.dist-info → music_assistant_frontend-2.17.20.dist-info}/licenses/LICENSE +0 -0
- {music_assistant_frontend-2.17.11.dist-info → music_assistant_frontend-2.17.20.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import{C as E}from"./Container-D5KFPVjs.js";import{aw as I,J as r,i as b,L as B,a3 as S,b4 as N,aG as R,ay as f,aE as n,o as a,be as z,E as v,bU as j,M as V,bf as y,aL as i,aS as D,c1 as F,ax as _,az as x,b6 as J,aJ as M,aQ as O,aN as C,R as A,_ as G}from"./index-Dj6UKNsX.js";import{V as H}from"./VSwitch-DQEiK9D_.js";import{V as P}from"./VAlert-CFvRz3gu.js";import"./index-kQIztB-E.js";import"./VSelectionControl-CCjz0Lnv.js";const Q={class:"d-flex flex-column flex-sm-row align-start align-sm-center ga-2 w-100"},q={class:"d-flex flex-wrap ga-2"},K={key:0,class:"pa-8 text-center"},W={class:"mt-4"},X={key:1,class:"pa-8 text-center"},Y={class:"text-error"},Z={key:2,class:"pa-4 text-center"},ee={class:"log-content"},h=150,te=I({__name:"ServerLogs",setup(ae){const c=r(""),m=r(!0),w=r(!1),d=r(""),p=r(!0),u=r(null);let o=null;const k=b(()=>{const e=c.value.split(`
|
|
2
|
+
`);return e.length>h?e.slice(-h).join(`
|
|
3
|
+
`):c.value}),L=b(()=>c.value.split(`
|
|
4
|
+
`).length>h),T=()=>{u.value&&A(()=>{u.value&&(u.value.scrollTop=u.value.scrollHeight)})},g=async(e=!1)=>{try{e?w.value=!0:m.value=!0,d.value="";const t=await fetch(`${C.baseUrl}/music-assistant.log`);if(!t.ok)throw new Error(`Failed to fetch logs: ${t.statusText}`);const s=await t.text(),l=c.value;c.value=s,(!e||s!==l)&&setTimeout(()=>T(),100)}catch(t){d.value=t.message||"Failed to load server logs",console.error("Error loading logs:",t)}finally{m.value=!1,w.value=!1}},U=()=>{g(!0)},$=async()=>{try{const t=await(await fetch(`${C.baseUrl}/music-assistant.log`)).blob(),s=window.URL.createObjectURL(t),l=document.createElement("a");l.href=s,l.download="music-assistant.log",document.body.appendChild(l),l.click(),document.body.removeChild(l),window.URL.revokeObjectURL(s)}catch(e){console.error("Error downloading log:",e)}};return B(p,e=>{e?o=setInterval(()=>{g(!0)},5e3):o&&(clearInterval(o),o=null)}),S(async()=>{await g(!1),p.value&&(o=setInterval(()=>{g(!0)},5e3))}),N(()=>{o&&clearInterval(o)}),(e,t)=>(f(),R(E,null,{default:n(()=>[a(O,{class:"mb-4",elevation:"0",variant:"flat"},{default:n(()=>[a(z,{class:"text-subtitle-1 font-weight-bold py-3"},{default:n(()=>[v("div",Q,[a(H,{modelValue:p.value,"onUpdate:modelValue":t[0]||(t[0]=s=>p.value=s),color:"primary",density:"compact","hide-details":"",label:e.$t("settings.auto_refresh_log")},null,8,["modelValue","label"]),a(j,{class:"d-none d-sm-block"}),v("div",q,[a(V,{color:"primary",variant:"text",loading:w.value,"prepend-icon":"mdi-refresh",size:"small",onClick:U},{default:n(()=>[y(i(e.$t("settings.reload")),1)]),_:1},8,["loading"]),a(V,{color:"primary",variant:"elevated","prepend-icon":"mdi-download",size:"small",onClick:$},{default:n(()=>[y(i(e.$t("settings.download_log")),1)]),_:1})])])]),_:1}),a(D),a(F,{class:"pa-0"},{default:n(()=>[m.value?(f(),_("div",K,[a(J,{indeterminate:"",color:"primary"}),v("div",W,i(e.$t("loading")),1)])):d.value?(f(),_("div",X,[a(M,{icon:"mdi-alert-circle",color:"error",size:"48",class:"mb-4"}),v("div",Y,i(d.value),1)])):L.value?(f(),_("div",Z,[a(P,{type:"info",variant:"tonal"},{default:n(()=>[y(i(e.$t("settings.log_truncated",[h])),1)]),_:1})])):x("",!0),!m.value&&!d.value?(f(),_("div",{key:3,ref_key:"logContainer",ref:u,class:"log-container"},[v("pre",ee,i(k.value),1)],512)):x("",!0)]),_:1})]),_:1})]),_:1}))}}),ce=G(te,[["__scopeId","data-v-30a4366c"]]);export{ce as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.log-container[data-v-30a4366c]{max-height:600px;overflow:auto;background-color:rgba(var(--v-theme-surface-variant),.3)}.log-content[data-v-30a4366c]{margin:0;padding:16px;font-family:Courier New,Courier,monospace;font-size:.875rem;line-height:1.5;white-space:pre-wrap;word-break:break-all;color:rgba(var(--v-theme-on-surface),.87)}@media (prefers-color-scheme: dark){.log-container[data-v-30a4366c]{background-color:#0000004d}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-breadcrumbs{display:flex;align-items:center;line-height:1.6;padding:16px 12px}.v-breadcrumbs--rounded{border-radius:4px}.v-breadcrumbs--density-default{padding-top:16px;padding-bottom:16px}.v-breadcrumbs--density-comfortable{padding-top:12px;padding-bottom:12px}.v-breadcrumbs--density-compact{padding-top:8px;padding-bottom:8px}.v-breadcrumbs__prepend{align-items:center;display:inline-flex}.v-breadcrumbs-item{align-items:center;color:inherit;display:inline-flex;padding:0 4px;text-decoration:none;vertical-align:middle}.v-breadcrumbs-item--disabled{opacity:var(--v-disabled-opacity);pointer-events:none}.v-breadcrumbs-item--link{color:inherit;text-decoration:none}.v-breadcrumbs-item--link:hover{text-decoration:underline}.v-breadcrumbs-item .v-icon{font-size:1rem;margin-inline:-4px 2px}.v-breadcrumbs-divider{display:inline-block;padding:0 8px;vertical-align:middle}.settings-overview[data-v-
|
|
1
|
+
.v-breadcrumbs{display:flex;align-items:center;line-height:1.6;padding:16px 12px}.v-breadcrumbs--rounded{border-radius:4px}.v-breadcrumbs--density-default{padding-top:16px;padding-bottom:16px}.v-breadcrumbs--density-comfortable{padding-top:12px;padding-bottom:12px}.v-breadcrumbs--density-compact{padding-top:8px;padding-bottom:8px}.v-breadcrumbs__prepend{align-items:center;display:inline-flex}.v-breadcrumbs-item{align-items:center;color:inherit;display:inline-flex;padding:0 4px;text-decoration:none;vertical-align:middle}.v-breadcrumbs-item--disabled{opacity:var(--v-disabled-opacity);pointer-events:none}.v-breadcrumbs-item--link{color:inherit;text-decoration:none}.v-breadcrumbs-item--link:hover{text-decoration:underline}.v-breadcrumbs-item .v-icon{font-size:1rem;margin-inline:-4px 2px}.v-breadcrumbs-divider{display:inline-block;padding:0 8px;vertical-align:middle}.settings-overview[data-v-357c80c4]{padding:24px;max-width:800px;margin:0 auto}.settings-main-card[data-v-357c80c4]{overflow:hidden}.settings-list[data-v-357c80c4]{padding:0}.settings-list-item[data-v-357c80c4]{cursor:pointer;padding:20px 24px;min-height:80px;border-bottom:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.settings-list-item[data-v-357c80c4]:last-child{border-bottom:none}.settings-list-item[data-v-357c80c4]:hover{background-color:rgba(var(--v-theme-on-surface),.05)}.settings-list-item[data-v-357c80c4] .v-list-item__prepend{margin-right:16px}.v-avatar[data-v-357c80c4]{box-shadow:0 2px 8px #00000026}@media (max-width: 600px){.settings-list-item[data-v-357c80c4]{padding:12px 16px;min-height:64px}.settings-list-item[data-v-357c80c4] .v-list-item__prepend{margin-right:12px}.settings-list-item[data-v-357c80c4] .v-avatar{width:40px!important;height:40px!important}.settings-list-item[data-v-357c80c4] .v-list-item-title{font-size:1rem!important;line-height:1.3}.settings-list-item[data-v-357c80c4] .v-list-item-subtitle{font-size:.813rem!important;line-height:1.3}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as A}from"./Container-D5KFPVjs.js";import{T as z}from"./Toolbar-B32L_M7G.js";import{g as B,p as S,n as w,E as k,q as I,r as D,C as P,cv as $,i as p,al as E,o as r,ad as O,x as T,cw as F,c as Q,d as q,f as G,m as H,t as _,z as J,B as K,cx as U,aJ as V,ak as W,ag as x,aw as X,bL as j,bw as Y,aC as Z,aN as m,ax as L,ay as v,aG as h,aI as ee,aE as o,M as te,aB as C,cy as se,aS as ae,aD as ie,aF as ne,aQ as re,aX as oe,aW as le,aH as de,aK as ue,bf as M,aL as R,bQ as ce,bC as me,_ as pe}from"./index-Dj6UKNsX.js";import{M as ve}from"./index-kQIztB-E.js";import"./VToolbar-w3YLtQh8.js";const ge=S({divider:[Number,String],...P()},"VBreadcrumbsDivider"),fe=B()({name:"VBreadcrumbsDivider",props:ge(),setup(e,l){let{slots:t}=l;return w(()=>k("li",{"aria-hidden":"true",class:D(["v-breadcrumbs-divider",e.class]),style:I(e.style)},[t?.default?.()??e.divider])),{}}}),be=S({active:Boolean,activeClass:String,activeColor:String,color:String,disabled:Boolean,title:String,...P(),...F(),...T({tag:"li"})},"VBreadcrumbsItem"),ye=B()({name:"VBreadcrumbsItem",props:be(),setup(e,l){let{slots:t,attrs:g}=l;const c=$(e,g),u=p(()=>e.active||c.isActive?.value),{textColorClasses:f,textColorStyles:b}=E(()=>u.value?e.activeColor:e.color);return w(()=>r(e.tag,{class:D(["v-breadcrumbs-item",{"v-breadcrumbs-item--active":u.value,"v-breadcrumbs-item--disabled":e.disabled,[`${e.activeClass}`]:u.value&&e.activeClass},f.value,e.class]),style:I([b.value,e.style]),"aria-current":u.value?"page":void 0},{default:()=>[c.isLink.value?k("a",O({class:"v-breadcrumbs-item--link",onClick:c.navigate},c.linkProps),[t.default?.()??e.title]):t.default?.()??e.title]})),{}}}),_e=S({activeClass:String,activeColor:String,bgColor:String,color:String,disabled:Boolean,divider:{type:String,default:"/"},icon:U,items:{type:Array,default:()=>[]},...P(),...K(),...J(),...T({tag:"ul"})},"VBreadcrumbs"),Ce=B()({name:"VBreadcrumbs",props:_e(),setup(e,l){let{slots:t}=l;const{backgroundColorClasses:g,backgroundColorStyles:c}=Q(()=>e.bgColor),{densityClasses:u}=q(e),{roundedClasses:f}=G(e);H({VBreadcrumbsDivider:{divider:_(()=>e.divider)},VBreadcrumbsItem:{activeClass:_(()=>e.activeClass),activeColor:_(()=>e.activeColor),color:_(()=>e.color),disabled:_(()=>e.disabled)}});const b=p(()=>e.items.map(d=>typeof d=="string"?{item:{title:d},raw:d}:{item:d,raw:d}));return w(()=>{const d=!!(t.prepend||e.icon);return r(e.tag,{class:D(["v-breadcrumbs",g.value,u.value,f.value,e.class]),style:I([c.value,e.style])},{default:()=>[d&&k("li",{key:"prepend",class:"v-breadcrumbs__prepend"},[t.prepend?r(W,{key:"prepend-defaults",disabled:!e.icon,defaults:{VIcon:{icon:e.icon,start:!0}}},t.prepend):r(V,{key:"prepend-icon",start:!0,icon:e.icon},null)]),b.value.map((n,i,a)=>{let{item:s,raw:y}=n;return k(x,null,[t.item?.({item:s,index:i})??r(ye,O({key:i,disabled:i>=a.length-1},typeof s=="string"?{title:s}:s),{default:t.title?()=>t.title?.({item:s,index:i}):void 0}),i<a.length-1&&r(fe,null,{default:t.divider?()=>t.divider?.({item:y,index:i}):void 0})])}),t.default?.()]})}),{}}}),he=X({__name:"Settings",setup(e){const l=Z(),{t}=j(),g=[{name:"profile",label:"auth.profile",description:"settings.profile_description",icon:"mdi-account-cog",color:"indigo",route:{name:"profile"},adminOnly:!1},{name:"providers",label:"settings.providers",description:"settings.providers_description",icon:"mdi-monitor-dashboard",color:"blue",route:{name:"providersettings"},adminOnly:!0},{name:"players",label:"settings.players",description:"settings.players_description",icon:"mdi-speaker-multiple",color:"green",route:{name:"playersettings"},adminOnly:!0},{name:"system",label:"settings.system",description:"settings.system_description",icon:"mdi-server",color:"purple",route:{name:"systemsettings"},adminOnly:!0},{name:"frontend",label:"settings.frontend",description:"settings.frontend_description",icon:"mdi-palette",color:"orange",route:{name:"frontendsettings"},adminOnly:!1},{name:"users",label:"auth.user_management",description:"settings.users_description",icon:"mdi-account-multiple",color:"teal",route:{name:"usersettings"},adminOnly:!0},{name:"about",label:"settings.about",description:"settings.about_description",icon:"mdi-information-outline",color:"grey-darken-1",route:{name:"aboutsettings"},adminOnly:!1}],c=p(()=>{const n=Y.isAdmin();return g.filter(i=>!i.adminOnly||n)}),u=p(()=>l.currentRoute.value.name==="settings"),f=p(()=>{const n=l.currentRoute.value.name?.toString()||"";return n==="profile"?"profile":n.includes("player")?"players":n.includes("system")||n.includes("core")||n.includes("serverlog")?"system":n.includes("frontend")?"frontend":n.includes("user")?"users":n.includes("about")?"about":"providers"}),b=p(()=>{const n=l.currentRoute.value,i=n.name?.toString()||"",a=[{title:t("settings.settings"),disabled:!1,href:"#",to:{name:"settings"}}];if(!u.value){const s=f.value;s==="profile"?a.push({title:t("auth.profile"),disabled:i==="profile",to:{name:"profile"}}):s==="players"?a.push({title:t("settings.players"),disabled:i==="playersettings",to:{name:"playersettings"}}):s==="system"?a.push({title:t("settings.system"),disabled:i==="systemsettings",to:{name:"systemsettings"}}):s==="frontend"?a.push({title:t("settings.frontend"),disabled:i==="frontendsettings",to:{name:"frontendsettings"}}):s==="users"?a.push({title:t("settings.users"),disabled:i==="usersettings",to:{name:"usersettings"}}):s==="providers"?a.push({title:t("settings.providers"),disabled:i==="providersettings",to:{name:"providersettings"}}):s==="about"&&a.push({title:t("settings.about"),disabled:i==="aboutsettings",to:{name:"aboutsettings"}})}return ve(i).with("addproviderdetails",()=>{a.push({title:t("settings.setup_provider",[n.params.domain||""]),disabled:!0})}).with("editprovider",()=>{a.push({title:t("settings.edit_provider",[n.params.instanceId||""]),disabled:!0})}).with("addgroup",()=>{a.push({title:t("settings.add_group_player"),disabled:!0})}).with("editplayer",()=>{a.push({title:t("settings.player_settings"),disabled:!0})}).with("editcore",()=>{const s=n.params.domain,y=t(`settings.core_module.${s}.name`),N=y!==`settings.core_module.${s}.name`?y:m.providerManifests[s]?.name||s;a.push({title:N,disabled:!0})}).with("serverlogs",()=>{a.push({title:t("settings.server_logging"),disabled:!0})}).otherwise(()=>{}),a}),d=p(()=>{const n=l.currentRoute.value,i=n.name?.toString()||"";if(i==="editcore"){const a=n.params.domain;if(a&&m.providerManifests[a])return m.providerManifests[a].documentation||null}else if(i==="editprovider"){const a=n.params.instanceId;if(a){const s=m.getProvider(a);if(s&&m.providerManifests[s.domain])return m.providerManifests[s.domain].documentation||null}}else if(i==="addproviderdetails"){const a=n.params.domain;if(a&&m.providerManifests[a])return m.providerManifests[a].documentation||null}return null});return(n,i)=>{const a=le("router-view");return v(),L("div",null,[r(z,{icon:"mdi-cog-outline","show-loading":!0},ee({title:o(()=>[r(Ce,{items:b.value,class:"pa-0"},null,8,["items"])]),_:2},[d.value?{name:"append",fn:o(()=>[r(te,{icon:"mdi-help-circle",variant:"text",title:C(t)("settings.view_documentation"),onClick:i[0]||(i[0]=s=>C(se)(d.value))},null,8,["title"])]),key:"0"}:void 0]),1024),r(ae),u.value?(v(),h(A,{key:0,variant:"comfortable",class:"settings-overview"},{default:o(()=>[r(re,{class:"settings-main-card"},{default:o(()=>[r(ie,{class:"settings-list"},{default:o(()=>[(v(!0),L(x,null,ne(c.value,s=>(v(),h(de,{key:s.name,ripple:!0,class:"settings-list-item",onClick:y=>C(l).push(s.route)},{prepend:o(()=>[r(me,{color:s.color,size:"48"},{default:o(()=>[r(V,{icon:s.icon,size:"24",color:"white"},null,8,["icon"])]),_:2},1032,["color"])]),append:o(()=>[r(V,{icon:"mdi-chevron-right"})]),default:o(()=>[r(ue,{class:"text-h6"},{default:o(()=>[M(R(C(t)(s.label)),1)]),_:2},1024),r(ce,null,{default:o(()=>[M(R(C(t)(s.description)),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128))]),_:1})]),_:1})]),_:1})):(v(),h(a,{key:1,app:""},{default:o(({Component:s})=>[(v(),h(oe(s)))]),_:1}))])}}}),Ie=pe(he,[["__scopeId","data-v-357c80c4"]]);export{Ie as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.settings-overview[data-v-fe538fe8]{padding:24px;max-width:800px;margin:0 auto}.settings-main-card[data-v-fe538fe8]{overflow:hidden}.settings-list[data-v-fe538fe8]{padding:0}.settings-list-item[data-v-fe538fe8]{cursor:pointer;padding:20px 24px;min-height:80px;border-bottom:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.settings-list-item[data-v-fe538fe8]:last-child{border-bottom:none}.settings-list-item[data-v-fe538fe8]:hover{background-color:rgba(var(--v-theme-on-surface),.05)}.settings-list-item[data-v-fe538fe8] .v-list-item__prepend{margin-right:16px}.v-avatar[data-v-fe538fe8]{box-shadow:0 2px 8px #00000026}@media (max-width: 600px){.settings-list-item[data-v-fe538fe8]{padding:12px 16px;min-height:64px}.settings-list-item[data-v-fe538fe8] .v-list-item__prepend{margin-right:12px}.settings-list-item[data-v-fe538fe8] .v-avatar{width:40px!important;height:40px!important}.settings-list-item[data-v-fe538fe8] .v-list-item-title{font-size:1rem!important;line-height:1.3}.settings-list-item[data-v-fe538fe8] .v-list-item-subtitle{font-size:.813rem!important;line-height:1.3}}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as w}from"./Container-D5KFPVjs.js";import{aw as z,bL as M,J as S,i as B,aN as o,a3 as N,aG as u,ay as r,aE as e,o as a,aD as T,ax as f,aF as _,ag as C,aQ as D,aC as E,aH as v,aK as h,bf as l,aL as c,bQ as k,az as F,aJ as d,bC as x,aT as J,aB as y,_ as Q}from"./index-Dj6UKNsX.js";import"./index-kQIztB-E.js";const A=z({__name:"SystemConfig",setup(G){const m=E(),{t:i}=M(),p=S([]),V=[{domain:"logging",name:"settings.system_logging",description:"settings.system_logging_description",icon:"mdi-text-box-search",route:"/settings/serverlogs"}],I=B(()=>[...p.value].sort((t,n)=>o.providerManifests[t.domain].name.localeCompare(o.providerManifests[n.domain].name))),b=t=>{const n=i(`settings.core_module.${t.domain}.name`);return n!==`settings.core_module.${t.domain}.name`?n:o.providerManifests[t.domain].name},$=t=>{const n=i(`settings.core_module.${t.domain}.description`);return n!==`settings.core_module.${t.domain}.description`?n:o.providerManifests[t.domain].description},g=function(t){t.route?m.push(t.route):m.push(`/settings/editcore/${t.domain}`)};return N(async()=>{p.value=await o.getCoreConfigs()}),(t,n)=>(r(),u(w,{variant:"comfortable",class:"settings-overview"},{default:e(()=>[a(D,{class:"settings-main-card"},{default:e(()=>[a(T,{class:"settings-list"},{default:e(()=>[(r(!0),f(C,null,_(I.value,s=>(r(),u(v,{key:s.domain,ripple:!0,class:"settings-list-item",onClick:L=>g(s)},{prepend:e(()=>[a(x,{color:"blue",size:"48"},{default:e(()=>[a(J,{domain:s.domain,size:24,color:"white"},null,8,["domain"])]),_:2},1024)]),append:e(()=>[s.last_error?(r(),u(d,{key:0,color:"red",icon:"mdi-alert-circle",class:"mr-2",title:s.last_error},null,8,["title"])):F("",!0),a(d,{icon:"mdi-chevron-right"})]),default:e(()=>[a(h,{class:"text-h6"},{default:e(()=>[l(c(b(s)),1)]),_:2},1024),a(k,null,{default:e(()=>[l(c($(s)),1)]),_:2},1024)]),_:2},1032,["onClick"]))),128)),(r(),f(C,null,_(V,s=>a(v,{key:s.domain,ripple:!0,class:"settings-list-item",onClick:L=>g(s)},{prepend:e(()=>[a(x,{color:"purple",size:"48"},{default:e(()=>[a(d,{icon:s.icon,size:"24",color:"white"},null,8,["icon"])]),_:2},1024)]),append:e(()=>[a(d,{icon:"mdi-chevron-right"})]),default:e(()=>[a(h,{class:"text-h6"},{default:e(()=>[l(c(y(i)(s.name)),1)]),_:2},1024),a(k,null,{default:e(()=>[l(c(y(i)(s.description)),1)]),_:2},1024)]),_:2},1032,["onClick"])),64))]),_:1})]),_:1})]),_:1}))}}),j=Q(A,[["__scopeId","data-v-fe538fe8"]]);export{j as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as R,p as X,c as E,f as Y,I as Z,al as G,u as H,cz as J,bX as W,n as j,cA as q,o as l,ad as y,bZ as K,cB as Q,v as U,x as p,z as I,cb as _,C as ee,cx as te,E as h,Y as ae,N as le,X as oe,aJ as f,aw as ne,aG as r,ay as n,aI as w,aE as a,aB as d,b3 as B,M as k,aZ as P,az as v,ax as u,aN as m,b6 as T,ag as V,aF as $,b2 as L,aD as x,aH as z,av as ie,aA as se,aL as re,_ as de}from"./index-Dj6UKNsX.js";import{V as ce}from"./VToolbar-w3YLtQh8.js";const ue=X({bordered:Boolean,color:String,content:[Number,String],dot:Boolean,floating:Boolean,icon:te,inline:Boolean,label:{type:String,default:"$vuetify.badge"},max:[Number,String],modelValue:{type:Boolean,default:!0},offsetX:[Number,String],offsetY:[Number,String],textColor:String,...ee(),..._({location:"top end"}),...I(),...p(),...U(),...Q({transition:"scale-rotate-transition"}),...K()},"VBadge"),A=R()({name:"VBadge",inheritAttrs:!1,props:ue(),setup(e,b){const{backgroundColorClasses:C,backgroundColorStyles:i}=E(()=>e.color),{roundedClasses:s}=Y(e),{t}=Z(),{textColorClasses:o,textColorStyles:g}=G(()=>e.textColor),{themeClasses:N}=H(),{locationStyles:M}=J(e,!0,c=>(e.floating?e.dot?2:4:e.dot?8:12)+(["top","bottom"].includes(c)?Number(e.offsetY??0):["left","right"].includes(c)?Number(e.offsetX??0):0)),{dimensionStyles:D}=W(e);return j(()=>{const c=Number(e.content),S=!e.max||isNaN(c)?e.content:c<=Number(e.max)?c:`${e.max}+`,[F,O]=q(b.attrs,["aria-atomic","aria-label","aria-live","role","title"]);return l(e.tag,y({class:["v-badge",{"v-badge--bordered":e.bordered,"v-badge--dot":e.dot,"v-badge--floating":e.floating,"v-badge--inline":e.inline},e.class]},O,{style:e.style}),{default:()=>[h("div",{class:"v-badge__wrapper"},[b.slots.default?.(),l(ae,{transition:e.transition},{default:()=>[le(h("span",y({class:["v-badge__badge",N.value,C.value,s.value,o.value],style:[i.value,g.value,D.value,e.inline?{}:M.value],"aria-atomic":"true","aria-label":t(e.label,c),"aria-live":"polite",role:"status"},F),[e.dot?void 0:b.slots.badge?b.slots.badge?.():e.icon?l(f,{icon:e.icon},null):S]),[[oe,e.modelValue]])]})])]})}),{}}}),fe={key:0,class:"mobile-brand"},be={key:1},ve=ne({__name:"Toolbar",props:{color:{default:"transparent"},icon:{default:void 0},title:{default:void 0},menuItems:{default:void 0},enforceOverflowMenu:{type:Boolean,default:!1},showLoading:{type:Boolean,default:void 0},home:{type:Boolean},iconAction:{type:Function,default:void 0}},emits:["iconClicked","titleClicked"],setup(e,{emit:b}){const C=b;return(i,s)=>(n(),r(ce,{color:e.color,class:"header"},w({title:a(()=>[P(i.$slots,"title",{},()=>[d(ie).mobileLayout&&e.home?(n(),u("div",fe,[...s[2]||(s[2]=[h("img",{src:se,alt:"Music Assistant",class:"mobile-brand-logo"},null,-1),h("span",{class:"mobile-brand-text"},"Music Assistant",-1)])])):e.title?(n(),u("button",{key:1,onClick:s[1]||(s[1]=t=>C("titleClicked"))},re(e.title),1)):v("",!0)],!0)]),_:2},[(!d(B)({breakpoint:"tablet"})||e.iconAction)&&e.icon?{name:"prepend",fn:a(()=>[l(k,{icon:e.icon,size:"large",disabled:e.iconAction==null,style:{opacity:"0.8"},onClick:s[0]||(s[0]=t=>e.iconAction())},null,8,["icon","disabled"])]),key:"0"}:void 0,i.$slots.append?{name:"append",fn:a(()=>[P(i.$slots,"append",{},void 0,!0)]),key:"1"}:e.menuItems?.length?{name:"append",fn:a(()=>[e.showLoading&&(d(m).fetchesInProgress.value.length>0||d(m).syncTasks.value.length>0)?(n(),r(T,{key:0,color:"primary",indeterminate:"",title:i.$t("tooltip.loading")},null,8,["title"])):v("",!0),(n(!0),u(V,null,$(e.menuItems.filter(t=>!t.hide),t=>(n(),u("div",{key:t.label},[t.subItems?.length?(n(),r(L,{key:0,location:"bottom end",scrim:"",density:"compact",slim:"",tile:"","close-on-content-click":t.closeOnContentClick!==!1},{activator:a(({props:o})=>[l(k,y({variant:"text",style:{width:"40px"}},{ref_for:!0},o,{title:i.$t(t.label,t.labelArgs||[]),disabled:t.disabled==!0}),{default:a(()=>[l(A,{"model-value":t.active==!0,color:"error",dot:""},{default:a(()=>[l(f,{icon:t.icon,color:i.$vuetify.theme.current.dark?"#fff":"#000",size:"22px"},null,8,["icon","color"])]),_:2},1032,["model-value"])]),_:2},1040,["title","disabled"])]),default:a(()=>[l(x,null,{default:a(()=>[(n(!0),u(V,null,$(t.subItems.filter(o=>o.hide!=!0),(o,g)=>(n(),r(z,{key:g,title:i.$t(o.label,o.labelArgs||[]),disabled:o.disabled==!0,onClick:N=>o.action?o.action():""},w({append:a(()=>[o.selected?(n(),r(f,{key:0,icon:"mdi-check"})):v("",!0)]),_:2},[o.icon?{name:"prepend",fn:a(()=>[l(f,{icon:o.icon},null,8,["icon"])]),key:"0"}:void 0]),1032,["title","disabled","onClick"]))),128))]),_:2},1024)]),_:2},1032,["close-on-content-click"])):!e.enforceOverflowMenu&&(d(B)("bp5")||t.overflowAllowed==!1)?(n(),r(k,{key:1,variant:"text",style:{width:"40px"},title:i.$t(t.label,t.labelArgs||[]),disabled:t.disabled==!0,onClick:t.action},{default:a(()=>[l(A,{"model-value":t.active==!0,color:"error",dot:""},{default:a(()=>[l(f,{icon:t.icon,color:i.$vuetify.theme.current.dark?"#fff":"#000",size:"22px"},null,8,["icon","color"])]),_:2},1032,["model-value"])]),_:2},1032,["title","disabled","onClick"])):v("",!0)]))),128)),(!d(B)("bp5")||e.enforceOverflowMenu)&&e.menuItems.filter(t=>t.hide!=!0&&!t.subItems?.length&&t.overflowAllowed!==!1).length?(n(),u("div",be,[l(L,{location:"bottom end",scrim:""},{activator:a(({props:t})=>[l(k,y({variant:"plain",style:{width:"15px","margin-left":"-10px"}},t),{default:a(()=>[l(f,{icon:"mdi-dots-vertical",color:i.$vuetify.theme.current.dark?"#fff":"#000",size:"22",style:{"margin-right":"-5px",width:"15px"}},null,8,["color"])]),_:1},16)]),default:a(()=>[l(x,{density:"compact",slim:"",tile:""},{default:a(()=>[(n(!0),u(V,null,$(e.menuItems.filter(t=>t.hide!=!0&&!t.subItems?.length&&t.overflowAllowed!==!1),(t,o)=>(n(),r(z,{key:o,title:i.$t(t.label,t.labelArgs||[]),disabled:t.disabled==!0,onClick:g=>t.action?t.action():""},w({_:2},[t.icon?{name:"prepend",fn:a(()=>[l(A,{"model-value":t.active==!0,color:"error",dot:""},{default:a(()=>[l(f,{icon:t.icon,color:i.$vuetify.theme.current.dark?"#fff":"#000",size:"22px"},null,8,["icon","color"])]),_:2},1032,["model-value"])]),key:"0"}:void 0]),1032,["title","disabled","onClick"]))),128))]),_:1})]),_:1})])):v("",!0)]),key:"2"}:e.showLoading?{name:"append",fn:a(()=>[d(m).fetchesInProgress.value.length>0||d(m).syncTasks.value.length>0?(n(),r(T,{key:0,color:"primary",indeterminate:""})):v("",!0)]),key:"3"}:void 0]),1032,["color"]))}}),me=de(ve,[["__scopeId","data-v-04d4f91f"]]);export{me as T,A as V};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.v-badge{display:inline-block;line-height:1}.v-badge__badge{align-items:center;display:inline-flex;border-radius:10px;font-family:Roboto,sans-serif;font-size:.75rem;font-weight:500;height:1.25rem;justify-content:center;min-width:20px;padding:4px 6px;pointer-events:auto;position:absolute;text-align:center;text-indent:0;transition:.225s cubic-bezier(.4,0,.2,1);white-space:nowrap}.v-badge__badge{background:rgb(var(--v-theme-surface-variant));color:rgba(var(--v-theme-on-surface-variant),var(--v-high-emphasis-opacity))}.v-badge__badge:has(.v-icon){padding:4px 6px}.v-badge--bordered .v-badge__badge:after{border-radius:inherit;border-style:solid;border-width:2px;color:rgb(var(--v-theme-background));content:"";inset:0;position:absolute;transform:scale(1.05)}.v-badge--dot .v-badge__badge{border-radius:4.5px;height:9px;min-width:0;padding:0;width:9px}.v-badge--dot .v-badge__badge:after{border-width:1.5px}.v-badge--inline .v-badge__badge{position:relative;vertical-align:middle}.v-badge__badge .v-icon{color:inherit;font-size:.75rem;margin:0 -2px}.v-badge__badge img,.v-badge__badge .v-img{height:100%;width:100%}.v-badge__wrapper{display:flex;position:relative}.v-badge--inline .v-badge__wrapper{align-items:center;display:inline-flex;justify-content:center;margin:0 4px}@media (forced-colors: active){.v-badge__badge{forced-color-adjust:preserve-parent-color}.v-badge__badge.v-badge__badge{background:highlight!important;color:highlighttext!important}}.header.v-toolbar[data-v-
|
|
1
|
+
.v-badge{display:inline-block;line-height:1}.v-badge__badge{align-items:center;display:inline-flex;border-radius:10px;font-family:Roboto,sans-serif;font-size:.75rem;font-weight:500;height:1.25rem;justify-content:center;min-width:20px;padding:4px 6px;pointer-events:auto;position:absolute;text-align:center;text-indent:0;transition:.225s cubic-bezier(.4,0,.2,1);white-space:nowrap}.v-badge__badge{background:rgb(var(--v-theme-surface-variant));color:rgba(var(--v-theme-on-surface-variant),var(--v-high-emphasis-opacity))}.v-badge__badge:has(.v-icon){padding:4px 6px}.v-badge--bordered .v-badge__badge:after{border-radius:inherit;border-style:solid;border-width:2px;color:rgb(var(--v-theme-background));content:"";inset:0;position:absolute;transform:scale(1.05)}.v-badge--dot .v-badge__badge{border-radius:4.5px;height:9px;min-width:0;padding:0;width:9px}.v-badge--dot .v-badge__badge:after{border-width:1.5px}.v-badge--inline .v-badge__badge{position:relative;vertical-align:middle}.v-badge__badge .v-icon{color:inherit;font-size:.75rem;margin:0 -2px}.v-badge__badge img,.v-badge__badge .v-img{height:100%;width:100%}.v-badge__wrapper{display:flex;position:relative}.v-badge--inline .v-badge__wrapper{align-items:center;display:inline-flex;justify-content:center;margin:0 4px}@media (forced-colors: active){.v-badge__badge{forced-color-adjust:preserve-parent-color}.v-badge__badge.v-badge__badge{background:highlight!important;color:highlighttext!important}}.header.v-toolbar[data-v-04d4f91f]{height:55px;font-family:JetBrains Mono Medium}.header.v-toolbar[data-v-04d4f91f] .v-toolbar__content>.v-toolbar__append{margin-right:0}.header.v-toolbar>.v-toolbar__content>.v-toolbar-title[data-v-04d4f91f]{margin-inline-start:10px}.header.v-toolbar>.v-toolbar__content>.v-toolbar__prepend[data-v-04d4f91f]{margin-inline-start:6px}.header.v-toolbar>.v-toolbar__content>.v-toolbar__append[data-v-04d4f91f]{margin-inline-end:21px}.header.v-toolbar-default>.v-toolbar__content>.v-toolbar-title[data-v-04d4f91f]{margin-inline-start:0px}.header.v-toolbar-default>.v-toolbar__content>.v-toolbar__prepend[data-v-04d4f91f]{margin-inline-start:10px}.header.v-toolbar-default>.v-toolbar__content>.v-toolbar__append[data-v-04d4f91f]{margin-inline-end:10px}.mobile-brand[data-v-04d4f91f]{display:flex;align-items:center;gap:1rem}.mobile-brand-logo[data-v-04d4f91f]{height:30px;width:30px}.mobile-brand-text[data-v-04d4f91f]{font-weight:600;letter-spacing:.5px;margin-top:4px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{I as u}from"./ItemsListing-BP5XXmLQ.js";import{I as c,_ as f}from"./ProviderDetails.vue_vue_type_script_setup_true_lang-CPN1bhCQ.js";import{aw as y,J as k,L as w,ax as b,ay as o,o as h,aG as s,az as n,E as m,aB as I,aN as l}from"./index-Dj6UKNsX.js";import"./Container-D5KFPVjs.js";import"./index-kQIztB-E.js";import"./Toolbar-B32L_M7G.js";import"./VToolbar-w3YLtQh8.js";import"./Button-faGxxowY.js";import"./ListItem-DXTT8_G5.js";import"./userPreferences-CpcwN_LW.js";import"./VCheckboxBtn-B5wUW3kZ.js";import"./VSelectionControl-CCjz0Lnv.js";import"./MediaItemThumb-DYAHQAuC.js";import"./PanelviewItemCompact-BKBJxxoM.js";import"./VInfiniteScroll-DataCA15.js";import"./VVirtualScroll-Cg5AQGzG.js";import"./VAlert-CFvRz3gu.js";import"./marquee_text_sync-R3hHMfp7.js";import"./VDialog-5KHkpnhE.js";const j=y({__name:"TrackDetails",props:{itemId:{},provider:{},album:{}},setup(r){const a=r,e=k(),p=async function(){e.value=await l.getTrack(a.itemId,a.provider,a.album)};w(()=>a.itemId,t=>{t&&p()},{immediate:!0});const d=async function(t){return await l.getTrackVersions(e.value.item_id,e.value.provider)},v=async function(t){return await l.getTrackAlbums(a.itemId,a.provider,t.libraryOnly)};return(t,i)=>(o(),b("section",null,[h(c,{item:e.value,"active-provider":r.provider},null,8,["item","active-provider"]),e.value?(o(),s(u,{key:0,itemtype:"trackalbums","parent-item":e.value,"show-provider":!0,"show-favorites-only-filter":!1,"show-library-only-filter":e.value.provider=="library"&&I(l).hasStreamingProviders.value,"show-track-number":!1,"show-refresh-button":!1,"load-items":v,"sort-keys":["name","sort_name","year","year_desc"],title:t.$t("appears_on"),path:r.provider+r.itemId,"allow-collapse":!0},null,8,["parent-item","show-library-only-filter","title","path"])):n("",!0),i[0]||(i[0]=m("br",null,null,-1)),e.value?(o(),s(u,{key:1,itemtype:"trackversions","parent-item":e.value,"show-provider":!0,"show-favorites-only-filter":!1,"show-track-number":!1,"load-items":d,"show-refresh-button":!1,"sort-keys":["name","sort_name","duration"],title:t.$t("other_versions"),"hide-on-empty":!0,path:r.provider+r.itemId,"allow-collapse":!0},null,8,["parent-item","title","path"])):n("",!0),i[1]||(i[1]=m("br",null,null,-1)),e.value?(o(),s(f,{key:2,"item-details":e.value},null,8,["item-details"])):n("",!0),i[2]||(i[2]=m("br",null,null,-1))]))}});export{j as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as pe}from"./Container-D5KFPVjs.js";import{L as ae}from"./ListItem-DXTT8_G5.js";import{aw as I,bL as R,J as U,i as S,aN as L,cl as re,L as le,aG as T,ay as i,aE as t,o as l,aQ as E,be as j,bf as g,aL as s,c1 as J,bF as O,az as C,ax as $,bI as W,bT as Q,bU as X,M as z,aU as w,cF as ue,E as V,_ as Z,av as ee,aS as ve,bC as H,aJ as K,ag as te,aF as se,bb as oe,a3 as ce,aj as fe,aM as _e}from"./index-Dj6UKNsX.js";import{V as A}from"./VSelect-VNw4nPSb.js";import{V as Y}from"./VDialog-5KHkpnhE.js";import{_ as he}from"./CreateTokenDialog.vue_vue_type_script_setup_true_lang-Cad6HStr.js";import"./index-kQIztB-E.js";import"./Button-faGxxowY.js";import"./VVirtualScroll-Cg5AQGzG.js";import"./VCheckboxBtn-B5wUW3kZ.js";import"./VSelectionControl-CCjz0Lnv.js";const ye={key:1,class:"text-grey text-caption align-self-center"},be={key:1,class:"text-grey text-caption align-self-center"},ke=I({__name:"CreateUserDialog",props:{modelValue:{type:Boolean}},emits:["update:modelValue","created"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=U({username:"",displayName:"",password:"",confirmPassword:"",role:"user",playerFilter:[],providerFilter:[]}),m=[{title:u("auth.admin_role"),value:"admin"},{title:u("auth.user_role"),value:"user"}],h=S(()=>Object.values(L.players).map(e=>({title:e.name,value:e.player_id})).sort((e,o)=>e.title.localeCompare(o.title))),d=S(()=>Object.values(L.providers).filter(e=>e.type===re.MUSIC).map(e=>({title:e.name,value:e.instance_id})).sort((e,o)=>e.title.localeCompare(o.title))),k=e=>{a.value.playerFilter=a.value.playerFilter.filter(o=>o!==e)},y=e=>{a.value.providerFilter=a.value.providerFilter.filter(o=>o!==e)},D={required:e=>!!e||u("auth.field_required"),usernameLength:e=>e.length>=3||u("auth.username_min_length"),passwordLength:e=>e.length>=8||u("auth.password_min_length"),passwordMatch:e=>e===a.value.password||u("auth.passwords_must_match")},B=S(()=>a.value.username.length>=3&&a.value.password.length>=8&&a.value.password===a.value.confirmPassword&&a.value.role),M=()=>{a.value={username:"",displayName:"",password:"",confirmPassword:"",role:ue.USER,playerFilter:[],providerFilter:[]}},P=()=>{M(),p("update:modelValue",!1)},q=async()=>{b.value=!0;try{await L.createUser(a.value.username,a.value.password,a.value.role,a.value.displayName||void 0,a.value.playerFilter.length>0?a.value.playerFilter:void 0,a.value.providerFilter.length>0?a.value.providerFilter:void 0)?(w.success(u("auth.user_created")),M(),p("created"),p("update:modelValue",!1)):w.error(u("auth.user_create_failed"))}catch{w.error(u("auth.user_create_failed"))}finally{b.value=!1}};return le(()=>n.modelValue,e=>{e||M()}),(e,o)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"500","onUpdate:modelValue":o[7]||(o[7]=r=>p("update:modelValue",r))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(e.$t("auth.create_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[l(O,{modelValue:a.value.username,"onUpdate:modelValue":o[0]||(o[0]=r=>a.value.username=r),label:e.$t("auth.username"),variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.usernameLength],autofocus:""},null,8,["modelValue","label","rules"]),l(O,{modelValue:a.value.displayName,"onUpdate:modelValue":o[1]||(o[1]=r=>a.value.displayName=r),label:e.$t("auth.display_name"),variant:"outlined",density:"comfortable",class:"mb-2",hint:e.$t("optional"),"persistent-hint":""},null,8,["modelValue","label","hint"]),l(O,{modelValue:a.value.password,"onUpdate:modelValue":o[2]||(o[2]=r=>a.value.password=r),label:e.$t("auth.password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.passwordLength]},null,8,["modelValue","label","rules"]),l(O,{modelValue:a.value.confirmPassword,"onUpdate:modelValue":o[3]||(o[3]=r=>a.value.confirmPassword=r),label:e.$t("auth.confirm_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.passwordMatch]},null,8,["modelValue","label","rules"]),l(A,{modelValue:a.value.role,"onUpdate:modelValue":o[4]||(o[4]=r=>a.value.role=r),label:e.$t("auth.role"),items:m,variant:"outlined",density:"comfortable",class:"mb-2"},null,8,["modelValue","label"]),l(A,{modelValue:a.value.playerFilter,"onUpdate:modelValue":o[5]||(o[5]=r=>a.value.playerFilter=r),label:e.$t("auth.player_filter"),items:h.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.player_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>k(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",ye," (+"+s(a.value.playerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"]),l(A,{modelValue:a.value.providerFilter,"onUpdate:modelValue":o[6]||(o[6]=r=>a.value.providerFilter=r),label:e.$t("auth.provider_filter"),items:d.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.provider_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>y(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",be," (+"+s(a.value.providerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"])]),_:1}),l(Q,{class:"pa-6 pt-4"},{default:t(()=>[l(X),l(z,{variant:"text",onClick:P},{default:t(()=>[g(s(e.$t("cancel")),1)]),_:1}),l(z,{color:"primary",variant:"flat",loading:b.value,disabled:!B.value,onClick:q},{default:t(()=>[g(s(e.$t("create")),1)]),_:1},8,["loading","disabled"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),Ve={class:"text-body-1 mb-4"},ge={key:0,class:"user-name-box"},$e=I({__name:"DeleteUserDialog",props:{modelValue:{type:Boolean},user:{}},emits:["update:modelValue","deleted"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=async()=>{if(n.user){b.value=!0;try{await L.deleteUser(n.user.user_id)?(w.success(u("auth.user_deleted")),p("deleted"),p("update:modelValue",!1)):w.error(u("auth.user_delete_failed"))}catch{w.error(u("auth.user_delete_failed"))}finally{b.value=!1}}};return(m,h)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"480","onUpdate:modelValue":h[1]||(h[1]=d=>p("update:modelValue",d))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pl-6 pb-0"},{default:t(()=>[g(s(m.$t("auth.delete_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[V("p",Ve,s(m.$t("auth.confirm_delete_user")),1),c.user?(i(),$("div",ge,s(c.user.display_name||c.user.username),1)):C("",!0)]),_:1}),l(Q,{class:"pa-6 pt-4"},{default:t(()=>[l(X),l(z,{variant:"text",onClick:h[0]||(h[0]=d=>p("update:modelValue",!1))},{default:t(()=>[g(s(m.$t("cancel")),1)]),_:1}),l(z,{color:"error",variant:"flat",loading:b.value,onClick:a},{default:t(()=>[g(s(m.$t("auth.delete_user")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),we=Z($e,[["__scopeId","data-v-8cbf5f8f"]]),Ue={class:"text-body-1 mb-4"},Ce={key:0,class:"user-name-box"},Fe=I({__name:"DisableUserDialog",props:{modelValue:{type:Boolean},user:{}},emits:["update:modelValue","disabled"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=async()=>{if(n.user){b.value=!0;try{await L.disableUser(n.user.user_id)?(w.success(u("auth.user_disabled")),p("disabled"),p("update:modelValue",!1)):w.error(u("auth.user_disable_failed"))}catch{w.error(u("auth.user_disable_failed"))}finally{b.value=!1}}};return(m,h)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"480","onUpdate:modelValue":h[1]||(h[1]=d=>p("update:modelValue",d))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pl-6 pb-0"},{default:t(()=>[g(s(m.$t("auth.disable_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[V("p",Ue,s(m.$t("auth.confirm_disable_user")),1),c.user?(i(),$("div",Ce,s(c.user.display_name||c.user.username),1)):C("",!0)]),_:1}),l(Q,{class:"pa-6 pt-4"},{default:t(()=>[l(X),l(z,{variant:"text",onClick:h[0]||(h[0]=d=>p("update:modelValue",!1))},{default:t(()=>[g(s(m.$t("cancel")),1)]),_:1}),l(z,{color:"error",variant:"flat",loading:b.value,onClick:a},{default:t(()=>[g(s(m.$t("auth.disable_user")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),De=Z(Fe,[["__scopeId","data-v-9638370d"]]),Te={key:1,class:"text-grey text-caption align-self-center"},Ne={key:1,class:"text-grey text-caption align-self-center"},ze=I({__name:"EditUserDialog",props:{modelValue:{type:Boolean},user:{}},emits:["update:modelValue","updated"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=U({username:"",displayName:"",avatarUrl:"",role:"user",password:"",confirmPassword:"",playerFilter:[],providerFilter:[]}),m=[{title:u("auth.admin_role"),value:"admin"},{title:u("auth.user_role"),value:"user"}],h=S(()=>Object.values(L.players).map(e=>({title:e.name,value:e.player_id})).sort((e,o)=>e.title.localeCompare(o.title))),d=S(()=>Object.values(L.providers).filter(e=>e.type===re.MUSIC).map(e=>({title:e.name,value:e.instance_id})).sort((e,o)=>e.title.localeCompare(o.title))),k=e=>{a.value.playerFilter=a.value.playerFilter.filter(o=>o!==e)},y=e=>{a.value.providerFilter=a.value.providerFilter.filter(o=>o!==e)},D={required:e=>!!e||u("auth.field_required"),usernameLength:e=>e.length>=3||u("auth.username_min_length"),passwordLength:e=>e.length>=8||u("auth.password_min_length"),passwordMatch:e=>e===a.value.password||u("auth.passwords_must_match")},B=S(()=>!n.user||!ee.currentUser?!1:n.user.user_id===ee.currentUser.user_id),M=()=>{n.user?a.value={username:n.user.username,displayName:n.user.display_name||"",avatarUrl:n.user.avatar_url||"",role:n.user.role,password:"",confirmPassword:"",playerFilter:n.user.player_filter||[],providerFilter:n.user.provider_filter||[]}:a.value={username:"",displayName:"",avatarUrl:"",role:ue.USER,password:"",confirmPassword:"",playerFilter:[],providerFilter:[]}},P=()=>{M(),p("update:modelValue",!1)},q=async()=>{if(n.user){if(a.value.password&&a.value.password!==a.value.confirmPassword){w.error(u("auth.passwords_must_match"));return}b.value=!0;try{const e={};a.value.username!==n.user.username&&(e.username=a.value.username),a.value.displayName!==(n.user.display_name||"")&&(e.displayName=a.value.displayName),a.value.avatarUrl!==(n.user.avatar_url||"")&&(e.avatarUrl=a.value.avatarUrl),a.value.role!==n.user.role&&!B.value&&(e.role=a.value.role),a.value.password&&(e.password=a.value.password);const o=n.user.player_filter||[];JSON.stringify([...a.value.playerFilter].sort())!==JSON.stringify([...o].sort())&&(e.player_filter=a.value.playerFilter);const r=n.user.provider_filter||[];JSON.stringify([...a.value.providerFilter].sort())!==JSON.stringify([...r].sort())&&(e.provider_filter=a.value.providerFilter),await L.updateUser(n.user.user_id,e),w.success(u("auth.user_updated")),M(),p("updated"),p("update:modelValue",!1)}catch{w.error(u("auth.user_update_failed"))}finally{b.value=!1}}};return le(()=>n.user,M,{immediate:!0}),le(()=>n.modelValue,e=>{e&&M()}),(e,o)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"500","onUpdate:modelValue":o[8]||(o[8]=r=>p("update:modelValue",r))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(e.$t("auth.edit_user")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[l(O,{modelValue:a.value.username,"onUpdate:modelValue":o[0]||(o[0]=r=>a.value.username=r),label:e.$t("auth.username"),variant:"outlined",density:"comfortable",class:"mb-2",rules:[D.required,D.usernameLength]},null,8,["modelValue","label","rules"]),l(O,{modelValue:a.value.displayName,"onUpdate:modelValue":o[1]||(o[1]=r=>a.value.displayName=r),label:e.$t("auth.display_name"),variant:"outlined",density:"comfortable",class:"mb-6",hint:e.$t("optional"),"persistent-hint":""},null,8,["modelValue","label","hint"]),l(O,{modelValue:a.value.avatarUrl,"onUpdate:modelValue":o[2]||(o[2]=r=>a.value.avatarUrl=r),label:e.$t("auth.avatar_url"),variant:"outlined",density:"comfortable",class:"mb-6",hint:e.$t("auth.avatar_url_hint"),"persistent-hint":""},null,8,["modelValue","label","hint"]),l(A,{modelValue:a.value.role,"onUpdate:modelValue":o[3]||(o[3]=r=>a.value.role=r),label:e.$t("auth.role"),items:m,variant:"outlined",density:"comfortable",disabled:B.value,class:"mb-2"},null,8,["modelValue","label","disabled"]),l(O,{modelValue:a.value.password,"onUpdate:modelValue":o[4]||(o[4]=r=>a.value.password=r),label:e.$t("auth.new_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",hint:e.$t("auth.password_optional_hint"),"persistent-hint":"",rules:a.value.password?[D.passwordLength]:[]},null,8,["modelValue","label","hint","rules"]),a.value.password?(i(),T(O,{key:0,modelValue:a.value.confirmPassword,"onUpdate:modelValue":o[5]||(o[5]=r=>a.value.confirmPassword=r),label:e.$t("auth.confirm_password"),type:"password",variant:"outlined",density:"comfortable",rules:[D.passwordMatch]},null,8,["modelValue","label","rules"])):C("",!0),l(A,{modelValue:a.value.playerFilter,"onUpdate:modelValue":o[6]||(o[6]=r=>a.value.playerFilter=r),label:e.$t("auth.player_filter"),items:h.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.player_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>k(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",Te," (+"+s(a.value.playerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"]),l(A,{modelValue:a.value.providerFilter,"onUpdate:modelValue":o[7]||(o[7]=r=>a.value.providerFilter=r),label:e.$t("auth.provider_filter"),items:d.value,variant:"outlined",density:"comfortable",multiple:"",chips:"","closable-chips":"",class:"mb-2",hint:e.$t("auth.provider_filter_hint"),"persistent-hint":""},{selection:t(({item:r,index:N})=>[N<2?(i(),T(W,{key:0,size:"small",closable:"","onClick:close":G=>y(r.value)},{default:t(()=>[g(s(r.title),1)]),_:2},1032,["onClick:close"])):C("",!0),N===2?(i(),$("span",Ne," (+"+s(a.value.providerFilter.length-2)+" "+s(e.$t("actions"))+") ",1)):C("",!0)]),_:1},8,["modelValue","label","items","hint"])]),_:1}),l(Q,{class:"pa-6 pt-4"},{default:t(()=>[l(X),l(z,{variant:"text",onClick:P},{default:t(()=>[g(s(e.$t("cancel")),1)]),_:1}),l(z,{color:"primary",variant:"flat",loading:b.value,onClick:q},{default:t(()=>[g(s(e.$t("save")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),Le={class:"pa-4"},Me={class:"mb-2"},Pe={class:"section-subtitle mb-6"},Oe={key:0,class:"empty-state"},Se={class:"text-medium-emphasis"},Ie={key:1,class:"tokens-list"},Re={class:"line-clamp-1"},Be={class:"token-meta"},qe={key:0,class:"token-divider"},Ae={key:1},Ee={class:"pa-4"},je={class:"section-header-with-action"},Je={class:"w-100"},Qe={class:"d-flex justify-space-between align-center gap-2"},Xe={class:"mb-2"},Ye={class:"section-subtitle"},Ge={key:0,class:"empty-state"},He={class:"text-medium-emphasis"},Ke={key:1,class:"tokens-list"},We={class:"line-clamp-1"},Ze={class:"token-meta"},xe={key:0,class:"token-divider"},ea={key:1},aa=I({__name:"ManageTokensDialog",props:{modelValue:{type:Boolean},user:{},tokens:{}},emits:["update:modelValue","revoke","token-created"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=S(()=>n.tokens.filter(d=>!d.is_long_lived)),m=S(()=>n.tokens.filter(d=>d.is_long_lived)),h=d=>new Date(d).toLocaleString();return(d,k)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"900",scrollable:"","onUpdate:modelValue":k[4]||(k[4]=y=>p("update:modelValue",y))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(d.$t("auth.tokens"))+" - "+s(c.user?.display_name||c.user?.username),1)]),_:1}),l(ve),l(J,{class:"pa-0"},{default:t(()=>[V("div",Le,[V("h3",Me,s(d.$t("auth.active_sessions")),1),V("p",Pe,s(d.$t("auth.active_sessions_description")),1),a.value.length===0?(i(),$("div",Oe,[l(H,{color:"blue-grey-darken-2",size:"64",class:"mb-3"},{default:t(()=>[l(K,{icon:"mdi-devices",size:"32"})]),_:1}),V("p",Se,s(d.$t("auth.no_active_sessions")),1)])):(i(),$("div",Ie,[(i(!0),$(te,null,se(a.value,y=>(i(),T(ae,{key:y.token_id},{prepend:t(()=>[l(H,{color:"blue-grey-darken-2",size:"40"},{default:t(()=>[l(K,{icon:"mdi-devices",size:"20"})]),_:1})]),title:t(()=>[V("div",Re,s(y.name),1)]),subtitle:t(()=>[V("div",Be,[V("span",null,s(d.$t("created"))+": "+s(h(y.created_at)),1),y.last_used_at?(i(),$("span",qe,"•")):C("",!0),y.last_used_at?(i(),$("span",Ae,s(d.$t("last_used"))+": "+s(h(y.last_used_at)),1)):C("",!0)])]),append:t(()=>[l(z,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:oe(D=>p("revoke",y),["stop"])},null,8,["onClick"])]),_:2},1024))),128))]))]),V("div",Ee,[V("div",je,[V("div",Je,[V("div",Qe,[V("h3",Xe,s(d.$t("auth.long_lived_tokens")),1),l(z,{color:"primary",variant:"flat","prepend-icon":"mdi-plus",size:"small",onClick:k[0]||(k[0]=y=>b.value=!0)},{default:t(()=>[g(s(d.$t("auth.create_token")),1)]),_:1})]),V("p",Ye,s(d.$t("auth.long_lived_tokens_description")),1)])]),m.value.length===0?(i(),$("div",Ge,[l(H,{color:"deep-purple-darken-2",size:"64",class:"mb-3"},{default:t(()=>[l(K,{icon:"mdi-key-variant",size:"32"})]),_:1}),V("p",He,s(d.$t("auth.no_long_lived_tokens")),1)])):(i(),$("div",Ke,[(i(!0),$(te,null,se(m.value,y=>(i(),T(ae,{key:y.token_id},{prepend:t(()=>[l(H,{color:"deep-purple-darken-2",size:"40"},{default:t(()=>[l(K,{icon:"mdi-key-variant",size:"20"})]),_:1})]),title:t(()=>[V("div",We,s(y.name),1)]),subtitle:t(()=>[V("div",Ze,[V("span",null,s(d.$t("created"))+": "+s(h(y.created_at)),1),y.last_used_at?(i(),$("span",xe,"•")):C("",!0),y.last_used_at?(i(),$("span",ea,s(d.$t("last_used"))+": "+s(h(y.last_used_at)),1)):C("",!0)])]),append:t(()=>[l(z,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:oe(D=>p("revoke",y),["stop"])},null,8,["onClick"])]),_:2},1024))),128))]))])]),_:1}),l(Q,{class:"pa-6"},{default:t(()=>[l(X),l(z,{variant:"tonal",onClick:k[1]||(k[1]=y=>p("update:modelValue",!1))},{default:t(()=>[g(s(d.$t("close")),1)]),_:1})]),_:1})]),_:1}),l(he,{modelValue:b.value,"onUpdate:modelValue":k[2]||(k[2]=y=>b.value=y),"user-id":c.user?.user_id,onCreated:k[3]||(k[3]=y=>p("token-created"))},null,8,["modelValue","user-id"])]),_:1},8,["model-value"]))}}),la=Z(aa,[["__scopeId","data-v-19f1861f"]]),ta={class:"text-body-1 mb-4"},sa={key:0,class:"token-name-box"},oa=I({__name:"RevokeTokenDialog",props:{modelValue:{type:Boolean},token:{}},emits:["update:modelValue","revoked"],setup(c,{emit:F}){const{t:u}=R(),n=c,p=F,b=U(!1),a=async()=>{if(!n.token)return;b.value=!0;const m=!n.token.is_long_lived;try{await L.revokeToken(n.token.token_id)?(w.success(u(m?"auth.session_revoked":"auth.token_revoked")),p("revoked"),p("update:modelValue",!1)):w.error(u(m?"auth.session_revoke_failed":"auth.token_revoke_failed"))}catch{w.error(u(m?"auth.session_revoke_failed":"auth.token_revoke_failed"))}finally{b.value=!1}};return(m,h)=>(i(),T(Y,{"model-value":c.modelValue,"max-width":"480","onUpdate:modelValue":h[1]||(h[1]=d=>p("update:modelValue",d))},{default:t(()=>[l(E,null,{default:t(()=>[l(j,{class:"text-h6 pa-6 pb-4"},{default:t(()=>[g(s(c.token?.is_long_lived?m.$t("auth.revoke_token"):m.$t("auth.revoke_session")),1)]),_:1}),l(J,{class:"px-6 pb-2"},{default:t(()=>[V("p",ta,s(c.token?.is_long_lived?m.$t("auth.revoke_token_confirm"):m.$t("auth.revoke_session_confirm")),1),c.token?(i(),$("div",sa,s(c.token.name),1)):C("",!0)]),_:1}),l(Q,{class:"pa-6 pt-4"},{default:t(()=>[l(X),l(z,{variant:"text",onClick:h[0]||(h[0]=d=>p("update:modelValue",!1))},{default:t(()=>[g(s(m.$t("cancel")),1)]),_:1}),l(z,{color:"error",variant:"flat",loading:b.value,onClick:a},{default:t(()=>[g(s(m.$t("auth.revoke")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["model-value"]))}}),ra=Z(oa,[["__scopeId","data-v-026d0253"]]),ua={class:"users-header w-100"},na={class:"user-avatar-wrapper"},ia={class:"line-clamp-1"},da={class:"line-clamp-1"},ma={key:0,class:"text-center pa-8 text-medium-emphasis"},pa=I({__name:"UserManagement",setup(c){const{t:F}=R(),u=U([]),n=U(""),p=U(!1),b=U(!1),a=U(!1),m=U(!1),h=U(!1),d=U(!1),k=U(null),y=U([]),D=U(null),B=S(()=>{if(!n.value)return u.value;const f=n.value.toLowerCase();return u.value.filter(v=>{const _=(v.display_name||v.username).toLowerCase(),x=v.username.toLowerCase();return _.includes(f)||x.includes(f)})}),M=f=>!f||!ee.currentUser?!1:f.user_id===ee.currentUser.user_id,P=async()=>{try{u.value=await L.getAllUsers()}catch{w.error(F("auth.users_load_failed"))}},q=f=>{k.value=f,b.value=!0},e=f=>{k.value=f,a.value=!0},o=f=>{k.value=f,m.value=!0},r=async f=>{k.value=f,await N(f.user_id),h.value=!0},N=async f=>{try{y.value=await L.getUserTokens(f)}catch{w.error(F("auth.tokens_load_failed"))}},G=async()=>{k.value&&await N(k.value.user_id)},ne=f=>{D.value=f,d.value=!0},ie=async()=>{k.value&&await N(k.value.user_id),D.value=null},de=async f=>{try{await L.enableUser(f.user_id)?(await P(),w.success(F("auth.user_enabled"))):w.error(F("auth.user_enable_failed"))}catch{w.error(F("auth.user_enable_failed"))}},me=(f,v)=>{const _=[{label:"auth.edit_user",labelArgs:[],action:()=>{q(v)},icon:"mdi-pencil"},{label:"auth.manage_tokens",labelArgs:[],action:()=>{r(v)},icon:"mdi-key-variant"},{label:v.enabled?"auth.disable_user":"auth.enable_user",labelArgs:[],action:()=>{v.enabled?e(v):de(v)},icon:v.enabled?"mdi-account-off":"mdi-account-check",hide:M(v)},{label:"auth.delete_user",labelArgs:[],action:()=>{o(v)},icon:"mdi-delete",color:"error",hide:M(v)}];_e.emit("contextmenu",{items:_,posX:f.clientX,posY:f.clientY})};return ce(()=>{P()}),(f,v)=>(i(),$("div",null,[V("div",ua,[l(O,{modelValue:n.value,"onUpdate:modelValue":v[0]||(v[0]=_=>n.value=_),placeholder:f.$t("search"),"prepend-inner-icon":"mdi-magnify",variant:"outlined",density:"compact","hide-details":"",clearable:"",style:{"max-width":"400px"}},null,8,["modelValue","placeholder"]),l(z,{color:"primary",variant:"flat",height:"40",class:"add-user-btn","prepend-icon":"mdi-plus",onClick:v[1]||(v[1]=_=>p.value=!0)},{default:t(()=>[g(s(f.$t("auth.create_user")),1)]),_:1})]),l(pe,null,{default:t(()=>[(i(!0),$(te,null,se(B.value,_=>(i(),T(ae,{key:_.user_id,"show-menu-btn":"",link:"",onMenu:x=>me(x,_),onClick:x=>q(_)},{prepend:t(()=>[V("div",na,[l(H,{size:"40",color:_.avatar_url?void 0:"grey-darken-2"},{default:t(()=>[_.avatar_url?(i(),T(fe,{key:0,src:_.avatar_url},null,8,["src"])):(i(),T(K,{key:1,icon:"mdi-account",size:"20",color:"grey-lighten-1"}))]),_:2},1032,["color"])])]),title:t(()=>[V("div",ia,s(_.display_name||_.username),1)]),subtitle:t(()=>[V("div",da,s(_.username)+" • "+s(f.$t(`auth.${_.role}_role`)),1)]),append:t(()=>[_.enabled?C("",!0):(i(),T(W,{key:0,size:"small",color:"error"},{default:t(()=>[g(s(f.$t("auth.disabled")),1)]),_:1}))]),_:2},1032,["onMenu","onClick"]))),128)),u.value.length===0?(i(),$("div",ma,s(f.$t("no_content")),1)):C("",!0)]),_:1}),l(ke,{modelValue:p.value,"onUpdate:modelValue":v[2]||(v[2]=_=>p.value=_),onCreated:P},null,8,["modelValue"]),l(ze,{modelValue:b.value,"onUpdate:modelValue":v[3]||(v[3]=_=>b.value=_),user:k.value,onUpdated:P},null,8,["modelValue","user"]),l(De,{modelValue:a.value,"onUpdate:modelValue":v[4]||(v[4]=_=>a.value=_),user:k.value,onDisabled:P},null,8,["modelValue","user"]),l(we,{modelValue:m.value,"onUpdate:modelValue":v[5]||(v[5]=_=>m.value=_),user:k.value,onDeleted:P},null,8,["modelValue","user"]),l(la,{modelValue:h.value,"onUpdate:modelValue":v[6]||(v[6]=_=>h.value=_),user:k.value,tokens:y.value,onRevoke:ne,onTokenCreated:G},null,8,["modelValue","user","tokens"]),l(ra,{modelValue:d.value,"onUpdate:modelValue":v[7]||(v[7]=_=>d.value=_),token:D.value,onRevoked:ie},null,8,["modelValue","token"])]))}}),wa=Z(pa,[["__scopeId","data-v-4952d4ff"]]);export{wa as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
.long-lived-tokens[data-v-
|
|
1
|
+
.long-lived-tokens[data-v-511373f4]{margin-bottom:24px}.section-header-with-action[data-v-511373f4]{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;flex-wrap:wrap}.section-header[data-v-511373f4]{flex:1}.section-header h3[data-v-511373f4]{margin-bottom:4px;font-weight:500}.section-subtitle[data-v-511373f4]{color:#ffffff80;font-size:.813rem;margin:0;line-height:1.4}.empty-state[data-v-511373f4]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;border:2px dashed rgba(var(--v-border-color),var(--v-border-opacity));border-radius:8px;text-align:center}.tokens-list[data-v-511373f4]{border:1px solid rgba(var(--v-border-color),var(--v-border-opacity));border-radius:8px;overflow:hidden;padding:10px}.token-meta[data-v-511373f4]{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.875rem}.token-divider[data-v-511373f4]{color:rgb(var(--v-theme-on-surface-variant))}.tokens-list[data-v-511373f4] .v-avatar{display:flex;align-items:center;justify-content:center;border:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.tokens-list[data-v-511373f4] .v-avatar .v-icon{margin:0!important}.token-display[data-v-511373f4]{background:#0003;padding:12px;border-radius:4px;word-break:break-all;font-family:JetBrains Mono Medium,monospace;font-size:.875rem}.token-display code[data-v-511373f4]{color:inherit}@media (max-width: 600px){.section-header-with-action[data-v-511373f4]{flex-direction:column;align-items:stretch}.section-header-with-action .v-btn[data-v-511373f4]{width:100%}}.password-settings[data-v-36fba185]{margin-bottom:24px}.section-header[data-v-36fba185]{margin-bottom:16px}.section-header h3[data-v-36fba185]{margin-bottom:4px;font-weight:500}.section-subtitle[data-v-36fba185]{color:#ffffff80;font-size:.813rem;margin:0;line-height:1.4}.profile-settings[data-v-e98d7828]{margin-bottom:24px}.section-header[data-v-e98d7828]{margin-bottom:16px}.section-header h3[data-v-e98d7828]{margin-bottom:4px;font-weight:500}.section-subtitle[data-v-e98d7828]{color:#ffffff80;font-size:.813rem;margin:0;line-height:1.4}.avatar-section[data-v-e98d7828]{display:flex;gap:24px;margin-bottom:20px;flex-wrap:wrap}.avatar-container[data-v-e98d7828]{display:flex;flex-direction:column;align-items:center;min-width:160px}.avatar-wrapper[data-v-e98d7828]{position:relative;display:inline-block}.profile-avatar[data-v-e98d7828]{border:3px solid rgba(var(--v-border-color),.2);transition:all .3s ease}.avatar-wrapper:hover .profile-avatar[data-v-e98d7828]{border-color:rgba(var(--v-theme-primary),.5)}.avatar-edit-btn[data-v-e98d7828]{position:absolute;bottom:0;right:0;box-shadow:0 2px 8px #0000004d}.avatar-text[data-v-e98d7828]{text-align:center}.profile-avatar[data-v-e98d7828]{display:flex;align-items:center;justify-content:center;border:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.profile-avatar .v-icon[data-v-e98d7828]{margin:0!important}.profile-fields[data-v-e98d7828]{flex:1;min-width:280px}.actions[data-v-e98d7828]{display:flex;gap:12px;align-items:center}@media (max-width: 600px){.avatar-section[data-v-e98d7828]{flex-direction:column;align-items:center}.profile-fields[data-v-e98d7828]{width:100%}}.session-tokens[data-v-984369e1]{margin-bottom:24px}.section-header[data-v-984369e1]{margin-bottom:12px}.section-header h3[data-v-984369e1]{margin-bottom:4px;font-weight:500}.section-subtitle[data-v-984369e1]{color:#ffffff80;font-size:.813rem;margin:0;line-height:1.4}.empty-state[data-v-984369e1]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;border:2px dashed rgba(var(--v-border-color),var(--v-border-opacity));border-radius:8px}.tokens-list[data-v-984369e1]{border:1px solid rgba(var(--v-border-color),var(--v-border-opacity));border-radius:8px;overflow:hidden;padding:10px}.token-meta[data-v-984369e1]{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.875rem}.token-divider[data-v-984369e1]{color:rgb(var(--v-theme-on-surface-variant))}.tokens-list[data-v-984369e1] .v-avatar{display:flex;align-items:center;justify-content:center;border:1px solid rgba(var(--v-border-color),var(--v-border-opacity))}.tokens-list[data-v-984369e1] .v-avatar .v-icon{margin:0!important}.user-profile[data-v-4961f1fb]{height:100%;display:flex;flex-direction:column}.profile-container[data-v-4961f1fb]{padding:24px 20px;max-width:900px;margin:0 auto;width:100%}.profile-content[data-v-4961f1fb]{background:rgba(var(--v-theme-surface),.4);border-radius:8px;padding:24px;border:1px solid rgba(var(--v-border-color),.12)}@media (max-width: 600px){.profile-container[data-v-4961f1fb]{padding:12px}.profile-content[data-v-4961f1fb]{padding:16px;border-radius:8px}}.token-name-box[data-v-4961f1fb]{background:rgba(var(--v-theme-error),.08);border-left:3px solid rgb(var(--v-theme-error));padding:12px 16px;border-radius:4px;font-weight:500;font-size:.938rem}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{C as Z}from"./Container-D5KFPVjs.js";import{aw as P,bL as N,J as h,ax as k,ay as d,E as o,o as e,aL as s,M as $,aE as a,bf as y,bC as T,aJ as z,ag as M,aF as J,aG as C,bb as B,az as S,_ as F,i as D,aB as x,av as R,bF as L,aN as A,aU as U,R as ee,L as ae,aj as E,aQ as j,be as G,c1 as Q,bT as H,bU as K,a3 as se,aS as q}from"./index-Dj6UKNsX.js";import{L as O}from"./ListItem-DXTT8_G5.js";import{_ as te}from"./CreateTokenDialog.vue_vue_type_script_setup_true_lang-Cad6HStr.js";import{V as le}from"./VAlert-CFvRz3gu.js";import{V as oe}from"./VForm-DDKxMAmn.js";import{V as W}from"./VDialog-5KHkpnhE.js";import"./index-kQIztB-E.js";import"./Button-faGxxowY.js";const ne={class:"long-lived-tokens"},re={class:"section-header-with-action"},ie={class:"section-header"},ue={class:"section-subtitle"},de={key:0,class:"empty-state"},ce={class:"text-medium-emphasis"},ve={class:"text-caption text-medium-emphasis mt-1"},_e={key:1,class:"tokens-list"},me={class:"line-clamp-1"},pe={class:"token-meta"},fe={key:0,class:"token-divider"},he={key:1},ke=P({__name:"LongLivedTokensList",props:{tokens:{}},emits:["revoke","created"],setup(V,{emit:c}){const{t:n}=N(),u=c,l=h(!1),_=v=>new Date(v).toLocaleString(),m=()=>{u("created")};return(v,p)=>(d(),k("div",ne,[o("div",re,[o("div",ie,[o("h3",null,s(v.$t("auth.long_lived_tokens")),1),o("p",ue,s(v.$t("auth.api_tokens_description")),1)]),e($,{color:"primary",variant:"flat","prepend-icon":"mdi-plus",onClick:p[0]||(p[0]=t=>l.value=!0)},{default:a(()=>[y(s(v.$t("auth.create_token")),1)]),_:1})]),V.tokens.length===0?(d(),k("div",de,[e(T,{color:"deep-purple-darken-2",size:"64",class:"mb-3"},{default:a(()=>[e(z,{icon:"mdi-key-variant",size:"32"})]),_:1}),o("p",ce,s(v.$t("auth.no_tokens")),1),o("p",ve,s(v.$t("auth.create_token_hint")),1)])):(d(),k("div",_e,[(d(!0),k(M,null,J(V.tokens,t=>(d(),C(O,{key:t.token_id},{prepend:a(()=>[e(T,{color:"deep-purple-darken-2",size:"40"},{default:a(()=>[e(z,{icon:"mdi-key-variant",size:"20"})]),_:1})]),title:a(()=>[o("div",me,s(t.name),1)]),subtitle:a(()=>[o("div",pe,[o("span",null,s(v.$t("created"))+": "+s(_(t.created_at)),1),t.last_used_at?(d(),k("span",fe,"•")):S("",!0),t.last_used_at?(d(),k("span",he,s(v.$t("last_used"))+": "+s(_(t.last_used_at)),1)):S("",!0)])]),append:a(()=>[e($,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:B(w=>u("revoke",t),["stop"])},null,8,["onClick"])]),_:2},1024))),128))])),e(te,{modelValue:l.value,"onUpdate:modelValue":p[1]||(p[1]=t=>l.value=t),onCreated:m},null,8,["modelValue"])]))}}),ge=F(ke,[["__scopeId","data-v-511373f4"]]),$e={class:"password-settings"},ye={class:"section-header"},be={class:"section-subtitle"},we=P({__name:"PasswordSettings",setup(V){const{t:c}=N(),n=h(""),u=h(""),l=h(!1),_=h(null),m={required:t=>!!t||c("auth.field_required"),passwordLength:t=>t.length>=8||c("auth.password_min_length"),passwordMatch:t=>t===n.value||c("auth.passwords_must_match")},v=D(()=>n.value.length>=8&&n.value===u.value),p=async()=>{l.value=!0;try{await A.changePassword(n.value)?(U.success(c("auth.password_changed")),n.value="",u.value="",await ee(),_.value?.resetValidation()):U.error(c("auth.password_change_failed"))}catch(t){U.error(t.message||c("auth.password_change_failed"))}finally{l.value=!1}};return(t,w)=>(d(),k("div",$e,[o("div",ye,[o("h3",null,s(t.$t("auth.change_password")),1),o("p",be,s(t.$t("auth.update_your_password")),1)]),x(R).isIngressSession?(d(),C(le,{key:0,type:"info",variant:"tonal",density:"compact",class:"mb-4"},{default:a(()=>[y(s(t.$t("auth.ingress_password_note")),1)]),_:1})):S("",!0),e(oe,{ref_key:"passwordForm",ref:_,onSubmit:B(p,["prevent"])},{default:a(()=>[e(L,{modelValue:n.value,"onUpdate:modelValue":w[0]||(w[0]=i=>n.value=i),label:t.$t("auth.new_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-2",rules:[m.required,m.passwordLength]},null,8,["modelValue","label","rules"]),e(L,{modelValue:u.value,"onUpdate:modelValue":w[1]||(w[1]=i=>u.value=i),label:t.$t("auth.confirm_password"),type:"password",variant:"outlined",density:"comfortable",class:"mb-4",rules:[m.required,m.passwordMatch]},null,8,["modelValue","label","rules"]),e($,{type:"submit",color:"primary",variant:"flat",loading:l.value,disabled:!v.value},{default:a(()=>[y(s(t.$t("auth.change_password")),1)]),_:1},8,["loading","disabled"])]),_:1},512)]))}}),Ve=F(we,[["__scopeId","data-v-36fba185"]]),Ce={class:"profile-settings"},Ue={class:"section-header"},Le={class:"section-subtitle"},Te={class:"avatar-section"},ze={class:"avatar-container"},Se={class:"avatar-wrapper"},De={class:"avatar-text mt-2"},Pe={class:"profile-fields"},Fe={class:"actions"},Ie={class:"d-flex flex-column align-center mb-4"},Ae=P({__name:"ProfileSettings",setup(V){const{t:c}=N(),n=D(()=>R.currentUser),u=h(""),l=h(""),_=h(""),m=h(!1),v=h(!1),p=h(""),t=h(!1),w={required:r=>!!r||c("auth.field_required"),usernameLength:r=>r.length>=3||c("auth.username_min_length")},i=D(()=>n.value?u.value!==n.value.username||l.value!==(n.value.display_name||"")||_.value!==(n.value.avatar_url||""):!1),g=()=>{n.value&&(u.value=n.value.username,l.value=n.value.display_name||"",_.value=n.value.avatar_url||"",p.value=n.value.avatar_url||"")},I=async()=>{if(!(!n.value||!i.value)){m.value=!0;try{const r={};u.value!==n.value.username&&(r.username=u.value),l.value!==(n.value.display_name||"")&&(r.displayName=l.value),_.value!==(n.value.avatar_url||"")&&(r.avatarUrl=_.value);const f=await A.updateUser(n.value.user_id,r);f&&(R.currentUser=f,g(),U.success(c("auth.profile_updated")))}catch(r){U.error(r.message||c("error_generic"))}finally{m.value=!1}}},X=()=>{v.value=!1,p.value=_.value,t.value=!1},Y=()=>{_.value=p.value,v.value=!1,t.value=!1};return ae(n,g,{immediate:!0}),(r,f)=>(d(),k("div",Ce,[o("div",Ue,[o("h3",null,s(r.$t("auth.account_settings")),1),o("p",Le,s(r.$t("auth.manage_your_profile_info")),1)]),o("div",Te,[o("div",ze,[o("div",Se,[e(T,{size:"120",class:"profile-avatar",color:_.value?void 0:"grey-darken-2"},{default:a(()=>[_.value?(d(),C(E,{key:0,src:_.value,onError:f[0]||(f[0]=b=>t.value=!0)},null,8,["src"])):(d(),C(z,{key:1,icon:"mdi-account",size:"64",color:"grey-lighten-1"}))]),_:1},8,["color"]),e($,{icon:"mdi-camera",size:"small",variant:"elevated",class:"avatar-edit-btn",color:"surface",onClick:f[1]||(f[1]=b=>v.value=!0)})]),o("div",De,[e($,{variant:"text",size:"small",class:"text-capitalize",onClick:f[2]||(f[2]=b=>v.value=!0)},{default:a(()=>[y(s(r.$t("auth.change_avatar")),1)]),_:1})])]),o("div",Pe,[e(L,{modelValue:u.value,"onUpdate:modelValue":f[3]||(f[3]=b=>u.value=b),label:r.$t("auth.username"),variant:"outlined",density:"comfortable",rules:[w.required,w.usernameLength],class:"mb-2"},null,8,["modelValue","label","rules"]),e(L,{modelValue:l.value,"onUpdate:modelValue":f[4]||(f[4]=b=>l.value=b),label:r.$t("auth.display_name"),variant:"outlined",density:"comfortable",hint:r.$t("optional"),"persistent-hint":"",class:"mb-2"},null,8,["modelValue","label","hint"]),e(L,{"model-value":r.$t(`auth.${n.value?.role}_role`),label:r.$t("auth.role"),variant:"outlined",density:"comfortable",readonly:"",disabled:""},null,8,["model-value","label"])])]),o("div",Fe,[i.value?(d(),C($,{key:0,variant:"text",color:"grey",onClick:g},{default:a(()=>[y(s(r.$t("cancel")),1)]),_:1})):S("",!0),e($,{color:"primary",variant:"flat",loading:m.value,disabled:!i.value,onClick:I},{default:a(()=>[y(s(r.$t("save")),1)]),_:1},8,["loading","disabled"])]),e(W,{modelValue:v.value,"onUpdate:modelValue":f[7]||(f[7]=b=>v.value=b),"max-width":"500"},{default:a(()=>[e(j,null,{default:a(()=>[e(G,{class:"text-h5"},{default:a(()=>[y(s(r.$t("auth.change_avatar")),1)]),_:1}),e(Q,null,{default:a(()=>[o("div",Ie,[e(T,{size:"140",color:p.value?void 0:"grey-darken-2"},{default:a(()=>[p.value?(d(),C(E,{key:0,src:p.value,onError:f[5]||(f[5]=b=>t.value=!0)},null,8,["src"])):(d(),C(z,{key:1,icon:"mdi-account",size:"72",color:"grey-lighten-1"}))]),_:1},8,["color"])]),e(L,{modelValue:p.value,"onUpdate:modelValue":f[6]||(f[6]=b=>p.value=b),label:r.$t("auth.avatar_url"),variant:"outlined",hint:r.$t("auth.avatar_url_hint"),"persistent-hint":"",clearable:""},null,8,["modelValue","label","hint"])]),_:1}),e(H,null,{default:a(()=>[e(K),e($,{variant:"text",onClick:X},{default:a(()=>[y(s(r.$t("cancel")),1)]),_:1}),e($,{color:"primary",variant:"flat",onClick:Y},{default:a(()=>[y(s(r.$t("save")),1)]),_:1})]),_:1})]),_:1})]),_:1},8,["modelValue"])]))}}),Ne=F(Ae,[["__scopeId","data-v-e98d7828"]]),qe={class:"session-tokens"},Re={class:"section-header"},Be={class:"section-subtitle"},Ee={key:0,class:"empty-state"},Me={class:"text-medium-emphasis"},Je={key:1,class:"tokens-list"},je={class:"line-clamp-1"},Ge={class:"token-meta"},Qe={key:0,class:"token-divider"},He={key:1},Ke=P({__name:"SessionTokensList",props:{tokens:{}},emits:["revoke"],setup(V,{emit:c}){const n=c,u=l=>new Date(l).toLocaleString();return(l,_)=>(d(),k("div",qe,[o("div",Re,[o("h3",null,s(l.$t("auth.active_sessions")),1),o("p",Be,s(l.$t("auth.manage_active_sessions")),1)]),V.tokens.length===0?(d(),k("div",Ee,[e(T,{color:"blue-grey-darken-2",size:"64",class:"mb-3"},{default:a(()=>[e(z,{icon:"mdi-devices-off",size:"32"})]),_:1}),o("p",Me,s(l.$t("no_content")),1)])):(d(),k("div",Je,[(d(!0),k(M,null,J(V.tokens,m=>(d(),C(O,{key:m.token_id},{prepend:a(()=>[e(T,{color:"blue-grey-darken-2",size:"40"},{default:a(()=>[e(z,{icon:"mdi-devices",size:"20"})]),_:1})]),title:a(()=>[o("div",je,s(m.name),1)]),subtitle:a(()=>[o("div",Ge,[o("span",null,s(l.$t("created"))+": "+s(u(m.created_at)),1),m.last_used_at?(d(),k("span",Qe,"•")):S("",!0),m.last_used_at?(d(),k("span",He,s(l.$t("last_used"))+": "+s(u(m.last_used_at)),1)):S("",!0)])]),append:a(()=>[e($,{icon:"mdi-delete",variant:"text",color:"error",size:"small",onClick:B(v=>n("revoke",m),["stop"])},null,8,["onClick"])]),_:2},1024))),128))]))]))}}),Oe=F(Ke,[["__scopeId","data-v-984369e1"]]),We={class:"user-profile"},Xe={class:"profile-content"},Ye={class:"text-body-1 mb-4"},Ze={class:"token-name-box"},xe=P({__name:"UserProfile",setup(V){const{t:c}=N(),n=h([]),u=h(!1),l=h(null),_=h(!1),m=D(()=>n.value.filter(i=>!i.is_long_lived)),v=D(()=>n.value.filter(i=>i.is_long_lived)),p=async()=>{try{n.value=await A.getUserTokens()}catch(i){console.error("Failed to load tokens:",i)}},t=i=>{l.value=i,u.value=!0},w=async()=>{if(l.value){_.value=!0;try{if(await A.revokeToken(l.value.token_id)){await p();const g=!l.value.is_long_lived;U.success(c(g?"auth.session_revoked":"auth.token_revoked"))}else{const g=!l.value.is_long_lived;U.error(c(g?"auth.session_revoke_failed":"auth.token_revoke_failed"))}}catch(i){console.error("Failed to revoke token:",i);const g=!l.value?.is_long_lived;U.error(c(g?"auth.session_revoke_failed":"auth.token_revoke_failed"))}finally{u.value=!1,l.value=null,_.value=!1}}};return se(()=>{p()}),(i,g)=>(d(),k("div",We,[e(Z,{variant:"comfortable",class:"profile-container"},{default:a(()=>[o("div",Xe,[e(Ne),e(q,{class:"my-6"}),e(Ve),e(q,{class:"my-6"}),e(Oe,{tokens:m.value,onRevoke:t},null,8,["tokens"]),e(q,{class:"my-6"}),e(ge,{tokens:v.value,onRevoke:t,onCreated:p},null,8,["tokens"])])]),_:1}),e(W,{modelValue:u.value,"onUpdate:modelValue":g[1]||(g[1]=I=>u.value=I),"max-width":"480"},{default:a(()=>[e(j,null,{default:a(()=>[e(G,{class:"text-h6 pl-6 pb-0 mt-3"},{default:a(()=>[y(s(l.value?.is_long_lived?i.$t("auth.revoke_token"):i.$t("auth.revoke_session")),1)]),_:1}),e(Q,{class:"px-6 pb-2"},{default:a(()=>[o("p",Ye,s(l.value?.is_long_lived?i.$t("auth.revoke_token_confirm"):i.$t("auth.revoke_session_confirm")),1),o("div",Ze,s(l.value?.name),1)]),_:1}),e(H,{class:"pa-6 pt-4"},{default:a(()=>[e(K),e($,{variant:"text",onClick:g[0]||(g[0]=I=>u.value=!1)},{default:a(()=>[y(s(i.$t("cancel")),1)]),_:1}),e($,{color:"error",variant:"flat",loading:_.value,onClick:w},{default:a(()=>[y(s(i.$t("auth.revoke")),1)]),_:1},8,["loading"])]),_:1})]),_:1})]),_:1},8,["modelValue"])]))}}),ua=F(xe,[["__scopeId","data-v-4961f1fb"]]);export{ua as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{cY as $,p as S,i as M,g as w,j as E,t as d,G as F,c7 as N,d as R,bX as j,e as O,cz as q,c6 as G,f as J,al as X,I as Y,o as l,q as v,r as m,c9 as Z,v as p,x as H,z as K,ca as Q,cb as U,A as W,bZ as ee,B as ae,C as te,cx as le,cf as se,E as s,aJ as ne,ad as y,ak as f,M as oe}from"./index-Dj6UKNsX.js";const ie=$("v-alert-title"),ce=S({iconSize:[Number,String],iconSizes:{type:Array,default:()=>[["x-small",10],["small",16],["default",24],["large",28],["x-large",32]]}},"iconSize");function re(e,n){return{iconSize:M(()=>{const a=new Map(e.iconSizes),t=e.iconSize??n()??"default";return a.has(t)?a.get(t):t})}}const ue=["success","info","warning","error"],de=S({border:{type:[Boolean,String],validator:e=>typeof e=="boolean"||["top","end","bottom","start"].includes(e)},borderColor:String,closable:Boolean,closeIcon:{type:le,default:"$close"},closeLabel:{type:String,default:"$vuetify.close"},icon:{type:[Boolean,String,Function,Object],default:null},modelValue:{type:Boolean,default:!0},prominent:Boolean,title:String,text:String,type:{type:String,validator:e=>ue.includes(e)},...te(),...ae(),...ee(),...W(),...ce(),...U(),...Q(),...K(),...H(),...p(),...Z({variant:"flat"})},"VAlert"),me=w()({name:"VAlert",props:de(),emits:{"click:close":e=>!0,"update:modelValue":e=>!0},setup(e,n){let{emit:c,slots:a}=n;const t=E(e,"modelValue"),o=d(()=>{if(e.icon!==!1)return e.type?e.icon??`$${e.type}`:e.icon}),{iconSize:b}=re(e,()=>e.prominent?44:void 0),{themeClasses:k}=F(e),{colorClasses:z,colorStyles:P,variantClasses:C}=N(()=>({color:e.color??e.type,variant:e.variant})),{densityClasses:V}=R(e),{dimensionStyles:g}=j(e),{elevationClasses:x}=O(e),{locationStyles:_}=q(e),{positionClasses:B}=G(e),{roundedClasses:I}=J(e),{textColorClasses:A,textColorStyles:h}=X(()=>e.borderColor),{t:T}=Y(),r=d(()=>({"aria-label":T(e.closeLabel),onClick(i){t.value=!1,c("click:close",i)}}));return()=>{const i=!!(a.prepend||o.value),D=!!(a.title||e.title),L=!!(a.close||e.closable),u={density:e.density,icon:o.value,size:e.iconSize||e.prominent?b.value:void 0};return t.value&&l(e.tag,{class:m(["v-alert",e.border&&{"v-alert--border":!!e.border,[`v-alert--border-${e.border===!0?"start":e.border}`]:!0},{"v-alert--prominent":e.prominent},k.value,z.value,V.value,x.value,B.value,I.value,C.value,e.class]),style:v([P.value,g.value,_.value,e.style]),role:"alert"},{default:()=>[se(!1,"v-alert"),e.border&&s("div",{key:"border",class:m(["v-alert__border",A.value]),style:v(h.value)},null),i&&s("div",{key:"prepend",class:"v-alert__prepend"},[a.prepend?l(f,{key:"prepend-defaults",disabled:!o.value,defaults:{VIcon:{...u}}},a.prepend):l(ne,y({key:"prepend-icon"},u),null)]),s("div",{class:"v-alert__content"},[D&&l(ie,{key:"title"},{default:()=>[a.title?.()??e.title]}),a.text?.()??e.text,a.default?.()]),a.append&&s("div",{key:"append",class:"v-alert__append"},[a.append()]),L&&s("div",{key:"close",class:"v-alert__close"},[a.close?l(f,{key:"close-defaults",defaults:{VBtn:{icon:e.closeIcon,size:"x-small",variant:"text"}}},{default:()=>[a.close?.({props:r.value})]}):l(oe,y({key:"close-btn",icon:e.closeIcon,size:"x-small",variant:"text"},r.value),null)])]})}}});export{me as V,ie as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{V as a,m as f}from"./VSelectionControl-CCjz0Lnv.js";import{g as V,p as v,j as c,t as l,n as x,an as I,o as k,ad as h,cx as b}from"./index-Dj6UKNsX.js";const C=v({indeterminate:Boolean,indeterminateIcon:{type:b,default:"$checkboxIndeterminate"},...f({falseIcon:"$checkboxOff",trueIcon:"$checkboxOn"})},"VCheckboxBtn"),B=V()({name:"VCheckboxBtn",props:C(),emits:{"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,r){let{slots:s}=r;const t=c(e,"indeterminate"),n=c(e,"modelValue");function u(o){t.value&&(t.value=!1)}const i=l(()=>t.value?e.indeterminateIcon:e.falseIcon),m=l(()=>t.value?e.indeterminateIcon:e.trueIcon);return x(()=>{const o=I(a.filterProps(e),["modelValue"]);return k(a,h(o,{modelValue:n.value,"onUpdate:modelValue":[d=>n.value=d,u],class:["v-checkbox-btn",e.class],style:e.style,type:"checkbox",falseIcon:i.value,trueIcon:m.value,"aria-checked":t.value?"mixed":void 0}),s)}),{}}});export{B as V,C as m};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as
|
|
1
|
+
import{g as L,p as x,j as D,aa as k,J as A,a4 as B,O as F,L as m,n as R,bv as g,ad as f,o as E,am as S,cc as T,cJ as I,R as h,cK as y,ak as K}from"./index-Dj6UKNsX.js";const O=x({fullscreen:Boolean,retainFocus:{type:Boolean,default:!0},scrollable:Boolean,...T({origin:"center center",scrollStrategy:"block",transition:{component:I},zIndex:2400})},"VDialog"),C=L()({name:"VDialog",props:O(),emits:{"update:modelValue":e=>!0,afterEnter:()=>!0,afterLeave:()=>!0},setup(e,V){let{emit:d,slots:v}=V;const r=D(e,"modelValue"),{scopeId:b}=k(),n=A();async function u(t){const a=t.relatedTarget,o=t.target;await h(),r.value&&a!==o&&n.value?.contentEl&&n.value?.globalTop&&![document,n.value.contentEl].includes(o)&&!n.value.contentEl.contains(o)&&y(n.value.contentEl)[0]?.focus()}function i(t){if(t.key!=="Tab"||!n.value?.contentEl)return;const a=y(n.value.contentEl);if(!a.length)return;const o=a[0],l=a[a.length-1],c=document.activeElement;t.shiftKey&&c===o?(t.preventDefault(),l.focus()):!t.shiftKey&&c===l&&(t.preventDefault(),o.focus())}B(()=>{document.removeEventListener("focusin",u),document.removeEventListener("keydown",i)}),F&&m(()=>r.value&&e.retainFocus,t=>{t?(document.addEventListener("focusin",u,{once:!0}),document.addEventListener("keydown",i)):(document.removeEventListener("focusin",u),document.removeEventListener("keydown",i))},{immediate:!0});function P(){d("afterEnter"),(e.scrim||e.retainFocus)&&n.value?.contentEl&&!n.value.contentEl.contains(document.activeElement)&&n.value.contentEl.focus({preventScroll:!0})}function w(){d("afterLeave")}return m(r,async t=>{t||(await h(),n.value.activatorEl?.focus({preventScroll:!0}))}),R(()=>{const t=g.filterProps(e),a=f({"aria-haspopup":"dialog"},e.activatorProps),o=f({tabindex:-1},e.contentProps);return E(g,f({ref:n,class:["v-dialog",{"v-dialog--fullscreen":e.fullscreen,"v-dialog--scrollable":e.scrollable},e.class],style:e.style},t,{modelValue:r.value,"onUpdate:modelValue":l=>r.value=l,"aria-modal":"true",activatorProps:a,contentProps:o,height:e.fullscreen?void 0:e.height,width:e.fullscreen?void 0:e.width,maxHeight:e.fullscreen?void 0:e.maxHeight,maxWidth:e.fullscreen?void 0:e.maxWidth,role:"dialog",onAfterEnter:P,onAfterLeave:w},b),{activator:v.activator,default:function(){for(var l=arguments.length,c=new Array(l),s=0;s<l;s++)c[s]=arguments[s];return E(K,{root:"VDialog"},{default:()=>[v.default?.(...c)]})}})}),S({},n)}});export{C as V};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as m,p as P,T as h,W as N,n as b,o as i,cH as j,Z as X,C as E,N as w,X as Z,E as u,q as y,r as v,cI as S,c as A,bX as q,i as f,t as l,ak as B,bZ as F,cx as k,aJ as H,U as J,e as O,f as U,x as _,z as W,$ as K,A as M,S as Q,l as Y,G as ee,m as ae,v as ne,at as le,w as te}from"./index-Dj6UKNsX.js";const x=Symbol.for("vuetify:v-expansion-panel"),D=P({...E(),...X()},"VExpansionPanelText"),C=m()({name:"VExpansionPanelText",props:D(),setup(e,c){let{slots:n}=c;const a=h(x);if(!a)throw new Error("[Vuetify] v-expansion-panel-text needs to be placed inside v-expansion-panel");const{hasContent:s,onAfterLeave:d}=N(e,a.isSelected);return b(()=>i(j,{onAfterLeave:d},{default:()=>[w(u("div",{class:v(["v-expansion-panel-text",e.class]),style:y(e.style)},[n.default&&s.value&&u("div",{class:"v-expansion-panel-text__wrapper"},[n.default?.()])]),[[Z,a.isSelected.value]])]})),{}}}),R=P({color:String,expandIcon:{type:k,default:"$expand"},collapseIcon:{type:k,default:"$collapse"},hideActions:Boolean,focusable:Boolean,static:Boolean,ripple:{type:[Boolean,Object],default:!1},readonly:Boolean,...E(),...F()},"VExpansionPanelTitle"),T=m()({name:"VExpansionPanelTitle",directives:{vRipple:S},props:R(),setup(e,c){let{slots:n}=c;const a=h(x);if(!a)throw new Error("[Vuetify] v-expansion-panel-title needs to be placed inside v-expansion-panel");const{backgroundColorClasses:s,backgroundColorStyles:d}=A(()=>e.color),{dimensionStyles:r}=q(e),p=f(()=>({collapseIcon:e.collapseIcon,disabled:a.disabled.value,expanded:a.isSelected.value,expandIcon:e.expandIcon,readonly:e.readonly})),V=l(()=>a.isSelected.value?e.collapseIcon:e.expandIcon);return b(()=>w(u("button",{class:v(["v-expansion-panel-title",{"v-expansion-panel-title--active":a.isSelected.value,"v-expansion-panel-title--focusable":e.focusable,"v-expansion-panel-title--static":e.static},s.value,e.class]),style:y([d.value,r.value,e.style]),type:"button",tabindex:a.disabled.value?-1:void 0,disabled:a.disabled.value,"aria-expanded":a.isSelected.value,onClick:e.readonly?void 0:a.toggle},[u("span",{class:"v-expansion-panel-title__overlay"},null),n.default?.(p.value),!e.hideActions&&i(B,{defaults:{VIcon:{icon:V.value}}},{default:()=>[u("span",{class:"v-expansion-panel-title__icon"},[n.actions?.(p.value)??i(H,null,null)])]})]),[[S,e.ripple]])),{}}}),z=P({title:String,text:String,bgColor:String,...M(),...K(),...W(),..._(),...R(),...D()},"VExpansionPanel"),ce=m()({name:"VExpansionPanel",props:z(),emits:{"group:selected":e=>!0},setup(e,c){let{slots:n}=c;const a=J(e,x),{backgroundColorClasses:s,backgroundColorStyles:d}=A(()=>e.bgColor),{elevationClasses:r}=O(e),{roundedClasses:p}=U(e),V=l(()=>a?.disabled.value||e.disabled),I=f(()=>a.group.items.value.reduce((o,t,g)=>(a.group.selected.value.includes(t.id)&&o.push(g),o),[])),G=f(()=>{const o=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&I.value.some(t=>t-o===1)}),L=f(()=>{const o=a.group.items.value.findIndex(t=>t.id===a.id);return!a.isSelected.value&&I.value.some(t=>t-o===-1)});return Q(x,a),b(()=>{const o=!!(n.text||e.text),t=!!(n.title||e.title),g=T.filterProps(e),$=C.filterProps(e);return i(e.tag,{class:v(["v-expansion-panel",{"v-expansion-panel--active":a.isSelected.value,"v-expansion-panel--before-active":G.value,"v-expansion-panel--after-active":L.value,"v-expansion-panel--disabled":V.value},p.value,s.value,e.class]),style:y([d.value,e.style])},{default:()=>[u("div",{class:v(["v-expansion-panel__shadow",...r.value])},null),i(B,{defaults:{VExpansionPanelTitle:{...g},VExpansionPanelText:{...$}}},{default:()=>[t&&i(T,{key:"title"},{default:()=>[n.title?n.title():e.title]}),o&&i(C,{key:"text"},{default:()=>[n.text?n.text():e.text]}),n.default?.()]})]})}),{groupItem:a}}}),se=["default","accordion","inset","popout"],oe=P({flat:Boolean,...te(),...le(z(),["bgColor","collapseIcon","color","eager","elevation","expandIcon","focusable","hideActions","readonly","ripple","rounded","tile","static"]),...ne(),...E(),..._(),variant:{type:String,default:"default",validator:e=>se.includes(e)}},"VExpansionPanels"),de=m()({name:"VExpansionPanels",props:oe(),emits:{"update:modelValue":e=>!0},setup(e,c){let{slots:n}=c;const{next:a,prev:s}=Y(e,x),{themeClasses:d}=ee(e),r=l(()=>e.variant&&`v-expansion-panels--variant-${e.variant}`);return ae({VExpansionPanel:{bgColor:l(()=>e.bgColor),collapseIcon:l(()=>e.collapseIcon),color:l(()=>e.color),eager:l(()=>e.eager),elevation:l(()=>e.elevation),expandIcon:l(()=>e.expandIcon),focusable:l(()=>e.focusable),hideActions:l(()=>e.hideActions),readonly:l(()=>e.readonly),ripple:l(()=>e.ripple),rounded:l(()=>e.rounded),static:l(()=>e.static)}}),b(()=>i(e.tag,{class:v(["v-expansion-panels",{"v-expansion-panels--flat":e.flat,"v-expansion-panels--tile":e.tile},d.value,r.value,e.class]),style:y(e.style)},{default:()=>[n.default?.({prev:s,next:a})]})),{next:a,prev:s}}});export{de as V,ce as a,T as b,C as c};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as d,p,cZ as v,J as b,n as y,E as F,q as V,r as h,am as R,c_ as C,C as P}from"./index-Dj6UKNsX.js";const k=p({...P(),...C()},"VForm"),g=d()({name:"VForm",props:k(),emits:{"update:modelValue":a=>!0,submit:a=>!0},setup(a,n){let{slots:m,emit:l}=n;const s=v(a),o=b();function i(r){r.preventDefault(),s.reset()}function c(r){const t=r,e=s.validate();t.then=e.then.bind(e),t.catch=e.catch.bind(e),t.finally=e.finally.bind(e),l("submit",t),t.defaultPrevented||e.then(f=>{let{valid:u}=f;u&&o.value?.submit()}),t.preventDefault()}return y(()=>F("form",{ref:o,class:h(["v-form",a.class]),style:V(a.style),novalidate:!0,onReset:i,onSubmit:c},[m.default?.(s)])),R(s,o)}});export{g as V};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.v-infinite-scroll--horizontal{display:flex;flex-direction:row;overflow-x:auto}.v-infinite-scroll--horizontal .v-infinite-scroll-intersect{height:100%;width:var(--v-infinite-margin-size, 1px)}.v-infinite-scroll--vertical{display:flex;flex-direction:column;overflow-y:auto}.v-infinite-scroll--vertical .v-infinite-scroll-intersect{height:1px;width:100%}.v-infinite-scroll-intersect{pointer-events:none;margin-top:var(--v-infinite-margin);margin-bottom:calc(var(--v-infinite-margin) * -1)}.v-infinite-scroll-intersect:nth-child(2){--v-infinite-margin: var(--v-infinite-margin-size, 1px)}.v-infinite-scroll-intersect:nth-last-child(2){--v-infinite-margin: calc(var(--v-infinite-margin-size, 1px) * -1)}.v-infinite-scroll__side{align-items:center;display:flex;justify-content:center;padding:8px}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as L,p as N,J as R,K as w,i as _,s as E,a3 as $,I as B,bX as D,n as q,o as c,q as H,r as W,x as J,bZ as K,R as v,cn as O,co as U,L as X,E as g,bf as Z,b6 as x,M as j}from"./index-Dj6UKNsX.js";const G=N({color:String,direction:{type:String,default:"vertical",validator:e=>["vertical","horizontal"].includes(e)},side:{type:String,default:"end",validator:e=>["start","end","both"].includes(e)},mode:{type:String,default:"intersect",validator:e=>["intersect","manual"].includes(e)},margin:[Number,String],loadMoreText:{type:String,default:"$vuetify.infiniteScroll.loadMore"},emptyText:{type:String,default:"$vuetify.infiniteScroll.empty"},...K(),...J()},"VInfiniteScroll"),A=O({name:"VInfiniteScrollIntersect",props:{side:{type:String,required:!0},rootMargin:String},emits:{intersect:(e,d)=>!0},setup(e,d){let{emit:o}=d;const{intersectionRef:S,isIntersecting:i}=U();return X(i,async a=>{o("intersect",e.side,a)}),q(()=>g("div",{class:"v-infinite-scroll-intersect",style:{"--v-infinite-margin-size":e.rootMargin},ref:S},[Z(" ")])),{}}}),Y=L()({name:"VInfiniteScroll",props:G(),emits:{load:e=>!0},setup(e,d){let{slots:o,emit:S}=d;const i=R(),a=w("ok"),f=w("ok"),b=_(()=>E(e.margin)),y=w(!1);function m(t){if(!i.value)return;const n=e.direction==="vertical"?"scrollTop":"scrollLeft";i.value[n]=t}function k(){if(!i.value)return 0;const t=e.direction==="vertical"?"scrollTop":"scrollLeft";return i.value[t]}function u(){if(!i.value)return 0;const t=e.direction==="vertical"?"scrollHeight":"scrollWidth";return i.value[t]}function z(){if(!i.value)return 0;const t=e.direction==="vertical"?"clientHeight":"clientWidth";return i.value[t]}$(()=>{i.value&&(e.side==="start"?m(u()):e.side==="both"&&m(u()/2-z()/2))});function I(t,n){t==="start"?a.value=n:t==="end"?f.value=n:t==="both"&&(a.value=n,f.value=n)}function C(t){return t==="start"?a.value:f.value}let h=0;function V(t,n){y.value=n,y.value&&s(t)}function s(t){if(e.mode!=="manual"&&!y.value)return;const n=C(t);if(!i.value||["empty","loading"].includes(n))return;h=u(),I(t,"loading");function l(r){I(t,r),v(()=>{r==="empty"||r==="error"||(r==="ok"&&t==="start"&&m(u()-h+k()),e.mode!=="manual"&&v(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{s(t)})})})}))})}S("load",{side:t,done:l})}const{t:T}=B();function M(t,n){if(e.side!==t&&e.side!=="both")return;const l=()=>s(t),r={side:t,props:{onClick:l,color:e.color}};return n==="error"?o.error?.(r):n==="empty"?o.empty?.(r)??g("div",null,[T(e.emptyText)]):e.mode==="manual"?n==="loading"?o.loading?.(r)??c(x,{indeterminate:!0,color:e.color},null):o["load-more"]?.(r)??c(j,{variant:"outlined",color:e.color,onClick:l},{default:()=>[T(e.loadMoreText)]}):o.loading?.(r)??c(x,{indeterminate:!0,color:e.color},null)}const{dimensionStyles:F}=D(e);q(()=>{const t=e.tag,n=e.side==="start"||e.side==="both",l=e.side==="end"||e.side==="both",r=e.mode==="intersect";return c(t,{ref:i,class:W(["v-infinite-scroll",`v-infinite-scroll--${e.direction}`,{"v-infinite-scroll--start":n,"v-infinite-scroll--end":l}]),style:H(F.value)},{default:()=>[g("div",{class:"v-infinite-scroll__side"},[M("start",a.value)]),n&&r&&c(A,{key:"start",side:"start",onIntersect:V,rootMargin:b.value},null),o.default?.(),l&&r&&c(A,{key:"end",side:"end",onIntersect:V,rootMargin:b.value},null),g("div",{class:"v-infinite-scroll__side"},[M("end",f.value)])]})});function P(t){const n=t??e.side;I(n,"ok"),v(()=>{m(u()-h+k()),e.mode!=="manual"&&v(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{window.requestAnimationFrame(()=>{n==="both"?(s("start"),s("end")):s(n)})})})})})}return{reset:P}}});export{Y as V};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{K as ee,L as N,I as te,cq as ge,i as S,t as $,dc as J,p as q,g as Ve,J as F,c$ as be,j as W,cW as ke,cM as we,cV as H,n as Ce,bF as X,o as v,ad as V,am as Pe,cB as xe,an as Se,cJ as Ie,d2 as De,d4 as Y,cX as G,dd as Ae,cx as Le,R as Te,O as Be,E as T,aJ as Q,ag as K,b2 as Re,aD as Ee,aH as Z,de as Fe,aS as _e,d6 as Me,bC as Oe,d7 as $e,bI as He,ak as Ke,bf as Ne}from"./index-Dj6UKNsX.js";import{V as qe}from"./VVirtualScroll-Cg5AQGzG.js";import{V as Ue}from"./VCheckboxBtn-B5wUW3kZ.js";function ze(e,I){const l=ee(!1);let b;function f(o){cancelAnimationFrame(b),l.value=!0,b=requestAnimationFrame(()=>{b=requestAnimationFrame(()=>{l.value=!1})})}async function D(){await new Promise(o=>requestAnimationFrame(o)),await new Promise(o=>requestAnimationFrame(o)),await new Promise(o=>requestAnimationFrame(o)),await new Promise(o=>{if(l.value){const p=N(l,()=>{p(),o()})}else o()})}async function k(o){if(o.key==="Tab"&&I.value?.focus(),!["PageDown","PageUp","Home","End"].includes(o.key))return;const p=e.value?.$el;if(!p)return;(o.key==="Home"||o.key==="End")&&p.scrollTo({top:o.key==="Home"?0:p.scrollHeight,behavior:"smooth"}),await D();const B=p.querySelectorAll(":scope > :not(.v-virtual-scroll__spacer)");if(o.key==="PageDown"||o.key==="Home"){const n=p.getBoundingClientRect().top;for(const w of B)if(w.getBoundingClientRect().top>=n){w.focus();break}}else{const n=p.getBoundingClientRect().bottom;for(const w of[...B].reverse())if(w.getBoundingClientRect().bottom<=n){w.focus();break}}}return{onScrollPassive:f,onKeydown:k}}const je=q({closeText:{type:String,default:"$vuetify.close"},openText:{type:String,default:"$vuetify.open"}},"autocomplete");function Je(e,I){const{t:l}=te(),b=ge(),f=S(()=>`menu-${b}`),D=$(()=>J(I)),k=$(()=>f.value),o=$(()=>l(J(I)?e.closeText:e.openText));return{menuId:f,ariaExpanded:D,ariaControls:k,ariaLabel:o}}const We=q({chips:Boolean,closableChips:Boolean,eager:Boolean,hideNoData:Boolean,hideSelected:Boolean,listProps:{type:Object},menu:Boolean,menuIcon:{type:Le,default:"$dropdown"},menuProps:{type:Object},multiple:Boolean,noDataText:{type:String,default:"$vuetify.noDataText"},openOnClear:Boolean,itemColor:String,noAutoScroll:Boolean,...je(),...Ae({itemChildren:!1})},"Select"),Xe=q({...We(),...Se(De({modelValue:null,role:"combobox"}),["validationValue","dirty","appendInnerIcon"]),...xe({transition:{component:Ie}})},"VSelect"),Ze=Ve()({name:"VSelect",props:Xe(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:menu":e=>!0},setup(e,I){let{slots:l}=I;const{t:b}=te(),f=F(),D=F(),k=F(),{items:o,transformIn:p,transformOut:B}=be(e),n=W(e,"modelValue",[],t=>p(t===null?[null]:ke(t)),t=>{const s=B(t);return e.multiple?s:s[0]??null}),w=S(()=>typeof e.counterValue=="function"?e.counterValue(n.value):typeof e.counterValue=="number"?e.counterValue:n.value.length),_=we(e),ae=S(()=>n.value.map(t=>t.value)),C=ee(!1);let y="",R=-1,U;const A=S(()=>e.hideSelected?o.value.filter(t=>!n.value.some(s=>(e.valueComparator||H)(s,t))):o.value),M=S(()=>e.hideNoData&&!A.value.length||_.isReadonly.value||_.isDisabled.value),O=W(e,"menu"),r=S({get:()=>O.value,set:t=>{O.value&&!t&&D.value?.ΨopenChildren.size||t&&M.value||(O.value=t)}}),{menuId:le,ariaExpanded:ne,ariaControls:oe,ariaLabel:z}=Je(e,r),ue=S(()=>({...e.menuProps,activatorProps:{...e.menuProps?.activatorProps||{},"aria-haspopup":"listbox"}})),L=F(),ie=ze(L,f);function se(t){e.openOnClear&&(r.value=!0)}function re(){M.value||(r.value=!r.value)}function ce(t){Y(t)&&j(t)}function j(t){if(!t.key||_.isReadonly.value)return;["Enter"," ","ArrowDown","ArrowUp","Home","End"].includes(t.key)&&t.preventDefault(),["Enter","ArrowDown"," "].includes(t.key)&&(r.value=!0),["Escape","Tab"].includes(t.key)&&(r.value=!1),t.key==="Home"?L.value?.focus("first"):t.key==="End"&&L.value?.focus("last");const s=1e3;if(!Y(t))return;const c=performance.now();c-U>s&&(y="",R=-1),y+=t.key.toLowerCase(),U=c;const P=A.value;function g(){let i=a();return i||y.at(-1)===y.at(-2)&&(y=y.slice(0,-1),i=a(),i)||(R=-1,i=a(),i)?i:(y=t.key.toLowerCase(),a())}function a(){for(let i=R+1;i<P.length;i++){const h=P[i];if(h.title.toLowerCase().startsWith(y))return[h,i]}}const u=g();if(!u)return;const[d,x]=u;R=x,L.value?.focus(x),e.multiple||(n.value=[d])}function E(t){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;if(!t.props.disabled)if(e.multiple){const c=n.value.findIndex(g=>(e.valueComparator||H)(g.value,t.value)),P=s??!~c;if(~c){const g=P?[...n.value,t]:[...n.value];g.splice(c,1),n.value=g}else P&&(n.value=[...n.value,t])}else{const c=s!==!1;n.value=c?[t]:[],Te(()=>{r.value=!1})}}function de(t){L.value?.$el.contains(t.relatedTarget)||(r.value=!1)}function fe(){e.eager&&k.value?.calculateVisibleItems()}function ve(){C.value&&f.value?.focus()}function me(t){C.value=!0}function pe(t){if(t==null)n.value=[];else if(G(f.value,":autofill")||G(f.value,":-webkit-autofill")){const s=o.value.find(c=>c.title===t);s&&E(s)}else f.value&&(f.value.value="")}return N(r,()=>{if(!e.hideSelected&&r.value&&n.value.length){const t=A.value.findIndex(s=>n.value.some(c=>(e.valueComparator||H)(c.value,s.value)));Be&&!e.noAutoScroll&&window.requestAnimationFrame(()=>{t>=0&&k.value?.scrollToIndex(t)})}}),N(o,(t,s)=>{r.value||C.value&&e.hideNoData&&!s.length&&t.length&&(r.value=!0)}),Ce(()=>{const t=!!(e.chips||l.chip),s=!!(!e.hideNoData||A.value.length||l["prepend-item"]||l["append-item"]||l["no-data"]),c=n.value.length>0,P=X.filterProps(e),g=c||!C.value&&e.label&&!e.persistentPlaceholder?void 0:e.placeholder;return v(X,V({ref:f},P,{modelValue:n.value.map(a=>a.props.value).join(", "),"onUpdate:modelValue":pe,focused:C.value,"onUpdate:focused":a=>C.value=a,validationValue:n.externalValue,counterValue:w.value,dirty:c,class:["v-select",{"v-select--active-menu":r.value,"v-select--chips":!!e.chips,[`v-select--${e.multiple?"multiple":"single"}`]:!0,"v-select--selected":n.value.length,"v-select--selection-slot":!!l.selection},e.class],style:e.style,inputmode:"none",placeholder:g,"onClick:clear":se,"onMousedown:control":re,onBlur:de,onKeydown:j,"aria-expanded":ne.value,"aria-controls":oe.value,"aria-label":z.value,title:z.value}),{...l,default:()=>T(K,null,[v(Re,V({id:le.value,ref:D,modelValue:r.value,"onUpdate:modelValue":a=>r.value=a,activator:"parent",contentClass:"v-select__content",disabled:M.value,eager:e.eager,maxHeight:310,openOnClick:!1,closeOnContentClick:!1,transition:e.transition,onAfterEnter:fe,onAfterLeave:ve},ue.value),{default:()=>[s&&v(Ee,V({ref:L,selected:ae.value,selectStrategy:e.multiple?"independent":"single-independent",onMousedown:a=>a.preventDefault(),onKeydown:ce,onFocusin:me,tabindex:"-1",selectable:!0,"aria-live":"polite","aria-label":`${e.label}-list`,color:e.itemColor??e.color},ie,e.listProps),{default:()=>[l["prepend-item"]?.(),!A.value.length&&!e.hideNoData&&(l["no-data"]?.()??v(Z,{key:"no-data",title:b(e.noDataText)},null)),v(qe,{ref:k,renderless:!0,items:A.value,itemKey:"value"},{default:a=>{let{item:u,index:d,itemRef:x}=a;const i=Fe(u.props),h=V(u.props,{ref:x,key:u.value,onClick:()=>E(u,null)});return u.type==="divider"?l.divider?.({props:u.raw,index:d})??v(_e,V(u.props,{key:`divider-${d}`}),null):u.type==="subheader"?l.subheader?.({props:u.raw,index:d})??v(Me,V(u.props,{key:`subheader-${d}`}),null):l.item?.({item:u,index:d,props:h})??v(Z,V(h,{role:"option"}),{prepend:m=>{let{isSelected:he}=m;return T(K,null,[e.multiple&&!e.hideSelected?v(Ue,{key:u.value,modelValue:he,ripple:!1,tabindex:"-1",onClick:ye=>ye.preventDefault()},null):void 0,i.prependAvatar&&v(Oe,{image:i.prependAvatar},null),i.prependIcon&&v(Q,{icon:i.prependIcon},null)])}})}}),l["append-item"]?.()]})]}),n.value.map((a,u)=>{function d(m){m.stopPropagation(),m.preventDefault(),E(a,!1)}const x={"onClick:close":d,onKeydown(m){m.key!=="Enter"&&m.key!==" "||(m.preventDefault(),m.stopPropagation(),d(m))},onMousedown(m){m.preventDefault(),m.stopPropagation()},modelValue:!0,"onUpdate:modelValue":void 0},i=t?!!l.chip:!!l.selection,h=i?$e(t?l.chip({item:a,index:u,props:x}):l.selection({item:a,index:u})):void 0;if(!(i&&!h))return T("div",{key:a.value,class:"v-select__selection"},[t?l.chip?v(Ke,{key:"chip-defaults",defaults:{VChip:{closable:e.closableChips,size:"small",text:a.title}}},{default:()=>[h]}):v(He,V({key:"chip",closable:e.closableChips,size:"small",text:a.title,disabled:a.props.disabled},x),null):h??T("span",{class:"v-select__selection-text"},[a.title,e.multiple&&u<n.value.length-1&&T("span",{class:"v-select__selection-comma"},[Ne(",")])])])})]),"append-inner":function(){for(var a=arguments.length,u=new Array(a),d=0;d<a;d++)u[d]=arguments[d];return T(K,null,[l["append-inner"]?.(...u),e.menuIcon?v(Q,{class:"v-select__menu-icon",color:f.value?.fieldIconColor,icon:e.menuIcon},null):void 0])}})}),Pe({isFocused:C,menu:r,select:E},f)}});export{Ze as V,ze as a,We as m,Je as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as B,v as K,B as O,C as N,cV as W,cx as R,g as U,j as _,cq as j,t as a,m as X,n as q,E as m,q as E,r as h,S as Q,a7 as Y,cI as T,K as w,J as Z,cr as p,ad as G,o as D,N as ee,ag as le,aJ as ae,cR as te,T as oe,d as ne,i as C,cW as I,al as ue,c as re,R as ie,cX as se}from"./index-Dj6UKNsX.js";const z=Symbol.for("vuetify:selection-control-group"),J=B({color:String,disabled:{type:Boolean,default:null},defaultsTarget:String,error:Boolean,id:String,inline:Boolean,falseIcon:R,trueIcon:R,ripple:{type:[Boolean,Object],default:!0},multiple:{type:Boolean,default:null},name:String,readonly:{type:Boolean,default:null},modelValue:null,type:String,valueComparator:{type:Function,default:W},...N(),...O(),...K()},"SelectionControlGroup"),ce=B({...J({defaultsTarget:"VSelectionControl"})},"VSelectionControlGroup");U()({name:"VSelectionControlGroup",props:ce(),emits:{"update:modelValue":e=>!0},setup(e,n){let{slots:y}=n;const t=_(e,"modelValue"),o=j(),f=a(()=>e.id||`v-selection-control-group-${o}`),i=a(()=>e.name||f.value),l=new Set;return Q(z,{modelValue:t,forceUpdate:()=>{l.forEach(u=>u())},onForceUpdate:u=>{l.add(u),Y(()=>{l.delete(u)})}}),X({[e.defaultsTarget]:{color:a(()=>e.color),disabled:a(()=>e.disabled),density:a(()=>e.density),error:a(()=>e.error),inline:a(()=>e.inline),modelValue:t,multiple:a(()=>!!e.multiple||e.multiple==null&&Array.isArray(t.value)),name:i,falseIcon:a(()=>e.falseIcon),trueIcon:a(()=>e.trueIcon),readonly:a(()=>e.readonly),ripple:a(()=>e.ripple),type:a(()=>e.type),valueComparator:a(()=>e.valueComparator)}}),q(()=>m("div",{class:h(["v-selection-control-group",{"v-selection-control-group--inline":e.inline},e.class]),style:E(e.style),role:e.type==="radio"?"radiogroup":void 0},[y.default?.()])),{}}});const de=B({label:String,baseColor:String,trueValue:null,falseValue:null,value:null,...N(),...J()},"VSelectionControl");function ve(e){const n=oe(z,void 0),{densityClasses:y}=ne(e),t=_(e,"modelValue"),o=C(()=>e.trueValue!==void 0?e.trueValue:e.value!==void 0?e.value:!0),f=C(()=>e.falseValue!==void 0?e.falseValue:!1),i=C(()=>!!e.multiple||e.multiple==null&&Array.isArray(t.value)),l=C({get(){const d=n?n.modelValue.value:t.value;return i.value?I(d).some(r=>e.valueComparator(r,o.value)):e.valueComparator(d,o.value)},set(d){if(e.readonly)return;const r=d?o.value:f.value;let v=r;i.value&&(v=d?[...I(t.value),r]:I(t.value).filter(s=>!e.valueComparator(s,o.value))),n?n.modelValue.value=v:t.value=v}}),{textColorClasses:u,textColorStyles:b}=ue(()=>{if(!(e.error||e.disabled))return l.value?e.color:e.baseColor}),{backgroundColorClasses:V,backgroundColorStyles:g}=re(()=>l.value&&!e.error&&!e.disabled?e.color:e.baseColor),k=C(()=>l.value?e.trueIcon:e.falseIcon);return{group:n,densityClasses:y,trueValue:o,falseValue:f,model:l,textColorClasses:u,textColorStyles:b,backgroundColorClasses:V,backgroundColorStyles:g,icon:k}}const me=U()({name:"VSelectionControl",directives:{vRipple:T},inheritAttrs:!1,props:de(),emits:{"update:modelValue":e=>!0},setup(e,n){let{attrs:y,slots:t}=n;const{group:o,densityClasses:f,icon:i,model:l,textColorClasses:u,textColorStyles:b,backgroundColorClasses:V,backgroundColorStyles:g,trueValue:k}=ve(e),d=j(),r=w(!1),v=w(!1),s=Z(),S=a(()=>e.id||`input-${d}`),x=a(()=>!e.disabled&&!e.readonly);o?.onForceUpdate(()=>{s.value&&(s.value.checked=l.value)});function A(c){x.value&&(r.value=!0,se(c.target,":focus-visible")!==!1&&(v.value=!0))}function F(){r.value=!1,v.value=!1}function L(c){c.stopPropagation()}function M(c){if(!x.value){s.value&&(s.value.checked=l.value);return}e.readonly&&o&&ie(()=>o.forceUpdate()),l.value=c.target.checked}return q(()=>{const c=t.label?t.label({label:e.label,props:{for:S.value}}):e.label,[$,H]=p(y),P=m("input",G({ref:s,checked:l.value,disabled:!!e.disabled,id:S.value,onBlur:F,onFocus:A,onInput:M,"aria-disabled":!!e.disabled,"aria-label":e.label,type:e.type,value:k.value,name:e.name,"aria-checked":e.type==="checkbox"?l.value:void 0},H),null);return m("div",G({class:["v-selection-control",{"v-selection-control--dirty":l.value,"v-selection-control--disabled":e.disabled,"v-selection-control--error":e.error,"v-selection-control--focused":r.value,"v-selection-control--focus-visible":v.value,"v-selection-control--inline":e.inline},f.value,e.class]},$,{style:e.style}),[m("div",{class:h(["v-selection-control__wrapper",u.value]),style:E(b.value)},[t.default?.({backgroundColorClasses:V,backgroundColorStyles:g}),ee(m("div",{class:h(["v-selection-control__input"])},[t.input?.({model:l,textColorClasses:u,textColorStyles:b,backgroundColorClasses:V,backgroundColorStyles:g,inputNode:P,icon:i.value,props:{onFocus:A,onBlur:F,id:S.value}})??m(le,null,[i.value&&D(ae,{key:"icon",icon:i.value},null),P])]),[[T,!e.disabled&&!e.readonly&&e.ripple,null,{center:!0,circle:!0}]])]),c&&D(te,{for:S.value,onClick:L},{default:()=>[c]})])}),{isFocused:r,input:s}}});export{me as V,de as m};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{p as le,i as s,cL as ce,cM as ge,H as ne,t as L,K as de,J as ee,cN as Ce,A as we,z as Ve,a6 as se,R as _e,S as Te,g as oe,cI as ve,T as fe,e as xe,al as Fe,c as re,cO as Re,n as ue,s as $,E as f,N as me,o as H,q as J,r as E,X as Pe,cP as Ne,C as he,f as ze,j as Le,cp as Ee,cs as be,ad as Me,am as Be,ct as Ke,cQ as De,cR as Ie,ag as Oe}from"./index-Dj6UKNsX.js";const ie=Symbol.for("vuetify:v-slider");function qe(e,l,r){const u=r==="vertical",i=l.getBoundingClientRect(),h="touches"in e?e.touches[0]:e;return u?h.clientY-(i.top+i.height/2):h.clientX-(i.left+i.width/2)}function Ae(e,l){return"touches"in e&&e.touches.length?e.touches[0][l]:"changedTouches"in e&&e.changedTouches.length?e.changedTouches[0][l]:e[l]}const je=le({disabled:{type:Boolean,default:null},error:Boolean,readonly:{type:Boolean,default:null},max:{type:[Number,String],default:100},min:{type:[Number,String],default:0},step:{type:[Number,String],default:0},thumbColor:String,thumbLabel:{type:[Boolean,String],default:void 0,validator:e=>typeof e=="boolean"||e==="always"},thumbSize:{type:[Number,String],default:20},showTicks:{type:[Boolean,String],default:!1,validator:e=>typeof e=="boolean"||e==="always"},ticks:{type:[Array,Object]},tickSize:{type:[Number,String],default:2},color:String,trackColor:String,trackFillColor:String,trackSize:{type:[Number,String],default:4},direction:{type:String,default:"horizontal",validator:e=>["vertical","horizontal"].includes(e)},reverse:Boolean,noKeyboard:Boolean,...Ve(),...we({elevation:2}),ripple:{type:Boolean,default:!0}},"Slider"),$e=e=>{const l=s(()=>parseFloat(e.min)),r=s(()=>parseFloat(e.max)),u=s(()=>Number(e.step)>0?parseFloat(e.step):0),i=s(()=>Math.max(ce(u.value),ce(l.value)));function h(S){if(S=parseFloat(S),u.value<=0)return S;const o=se(S,l.value,r.value),c=l.value%u.value;let y=Math.round((o-c)/u.value)*u.value+c;return o>y&&y+u.value>r.value&&(y=r.value),parseFloat(Math.min(y,r.value).toFixed(i.value))}return{min:l,max:r,step:u,decimals:i,roundValue:h}},Ue=e=>{let{props:l,steps:r,onSliderStart:u,onSliderMove:i,onSliderEnd:h,getActiveThumb:S}=e;const o=ge(l),{isRtl:c}=ne(),y=L(()=>l.reverse),F=s(()=>l.direction==="vertical"),w=s(()=>F.value!==y.value),{min:d,max:V,step:_,decimals:K,roundValue:M}=r,D=s(()=>parseInt(l.thumbSize,10)),g=s(()=>parseInt(l.tickSize,10)),C=s(()=>parseInt(l.trackSize,10)),R=s(()=>(V.value-d.value)/_.value),T=s(()=>l.error||o.isDisabled.value?void 0:l.thumbColor??l.color),P=s(()=>l.error||o.isDisabled.value?void 0:l.thumbColor),I=s(()=>l.error||o.isDisabled.value?void 0:l.trackColor??l.color),B=s(()=>l.error||o.isDisabled.value?void 0:l.trackFillColor??l.color),v=de(!1),m=de(0),p=ee(),n=ee();function x(t){const a=p.value?.$el;if(!a)return;const j=l.direction==="vertical",G=j?"top":"left",Z=j?"height":"width",ke=j?"clientY":"clientX",{[G]:pe,[Z]:ye}=a.getBoundingClientRect(),Se=Ae(t,ke);let ae=se((Se-pe-m.value)/ye)||0;return(j?w.value:w.value!==c.value)&&(ae=1-ae),M(d.value+ae*(V.value-d.value))}const N=t=>{const a=x(t);a!=null&&h({value:a}),v.value=!1,m.value=0},Y=t=>{const a=x(t);n.value=S(t),n.value&&(v.value=!0,n.value.contains(t.target)?m.value=qe(t,n.value,l.direction):(m.value=0,a!=null&&i({value:a})),a!=null&&u({value:a}),_e(()=>n.value?.focus()))},O={passive:!0,capture:!0};function z(t){const a=x(t);a!=null&&i({value:a})}function q(t){t.stopPropagation(),t.preventDefault(),N(t),window.removeEventListener("mousemove",z,O),window.removeEventListener("mouseup",q)}function U(t){N(t),window.removeEventListener("touchmove",z,O),t.target?.removeEventListener("touchend",U)}function A(t){Y(t),window.addEventListener("touchmove",z,O),t.target?.addEventListener("touchend",U,{passive:!1})}function te(t){t.button===0&&(t.preventDefault(),Y(t),window.addEventListener("mousemove",z,O),window.addEventListener("mouseup",q,{passive:!1}))}const X=t=>{const a=(t-d.value)/(V.value-d.value)*100;return se(isNaN(a)?0:a,0,100)},Q=L(()=>l.showTicks),W=s(()=>Q.value?l.ticks?Array.isArray(l.ticks)?l.ticks.map(t=>({value:t,position:X(t),label:t.toString()})):Object.keys(l.ticks).map(t=>({value:parseFloat(t),position:X(parseFloat(t)),label:l.ticks[t]})):R.value!==1/0?Ce(R.value+1).map(t=>{const a=d.value+t*_.value;return{value:a,position:X(a)}}):[]:[]),k=s(()=>W.value.some(t=>{let{label:a}=t;return!!a})),b={activeThumbRef:n,color:L(()=>l.color),decimals:K,disabled:o.isDisabled,direction:L(()=>l.direction),elevation:L(()=>l.elevation),hasLabels:k,isReversed:y,indexFromEnd:w,min:d,max:V,mousePressed:v,noKeyboard:L(()=>l.noKeyboard),numTicks:R,onSliderMousedown:te,onSliderTouchstart:A,parsedTicks:W,parseMouseMove:x,position:X,readonly:o.isReadonly,rounded:L(()=>l.rounded),roundValue:M,showTicks:Q,startOffset:m,step:_,thumbSize:D,thumbColor:T,thumbLabelColor:P,thumbLabel:L(()=>l.thumbLabel),ticks:L(()=>l.ticks),tickSize:g,trackColor:I,trackContainerRef:p,trackFillColor:B,trackSize:C,vertical:F};return Te(ie,b),b},Xe=le({focused:Boolean,max:{type:Number,required:!0},min:{type:Number,required:!0},modelValue:{type:Number,required:!0},position:{type:Number,required:!0},ripple:{type:[Boolean,Object],default:!0},name:String,noKeyboard:Boolean,...he()},"VSliderThumb"),Ye=oe()({name:"VSliderThumb",directives:{vRipple:ve},props:Xe(),emits:{"update:modelValue":e=>!0},setup(e,l){let{slots:r,emit:u}=l;const i=fe(ie),{isRtl:h,rtlClasses:S}=ne();if(!i)throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");const{min:o,max:c,thumbColor:y,thumbLabelColor:F,step:w,disabled:d,thumbSize:V,thumbLabel:_,direction:K,isReversed:M,vertical:D,readonly:g,elevation:C,mousePressed:R,decimals:T,indexFromEnd:P}=i,I=s(()=>d.value?void 0:C.value),{elevationClasses:B}=xe(I),{textColorClasses:v,textColorStyles:m}=Fe(y),{backgroundColorClasses:p,backgroundColorStyles:n}=re(F),{pageup:x,pagedown:N,end:Y,home:O,left:z,right:q,down:U,up:A}=Re,te=[x,N,Y,O,z,q,U,A],X=s(()=>w.value?[1,2,3]:[1,5,10]);function Q(k,b){if(e.noKeyboard||d.value||!te.includes(k.key))return;k.preventDefault();const t=w.value||.1,a=(c.value-o.value)/t;if([z,q,U,A].includes(k.key)){const G=(D.value?[h.value?z:q,M.value?U:A]:P.value!==h.value?[z,A]:[q,A]).includes(k.key)?1:-1,Z=k.shiftKey?2:k.ctrlKey?1:0;G===-1&&b===c.value&&!Z&&!Number.isInteger(a)?b=b-a%1*t:b=b+G*t*X.value[Z]}else if(k.key===O)b=o.value;else if(k.key===Y)b=c.value;else{const j=k.key===N?1:-1;b=b-j*t*(a>100?a/10:10)}return Math.max(e.min,Math.min(e.max,b))}function W(k){const b=Q(k,e.modelValue);b!=null&&u("update:modelValue",b)}return ue(()=>{const k=$(P.value?100-e.position:e.position,"%");return f("div",{class:E(["v-slider-thumb",{"v-slider-thumb--focused":e.focused,"v-slider-thumb--pressed":e.focused&&R.value},e.class,S.value]),style:J([{"--v-slider-thumb-position":k,"--v-slider-thumb-size":$(V.value)},e.style]),role:"slider",tabindex:d.value?-1:0,"aria-label":e.name,"aria-valuemin":o.value,"aria-valuemax":c.value,"aria-valuenow":e.modelValue,"aria-readonly":!!g.value,"aria-orientation":K.value,onKeydown:g.value?void 0:W},[f("div",{class:E(["v-slider-thumb__surface",v.value,B.value]),style:J(m.value)},null),me(f("div",{class:E(["v-slider-thumb__ripple",v.value]),style:J(m.value)},null),[[ve,e.ripple,null,{circle:!0,center:!0}]]),H(Ne,{origin:"bottom center"},{default:()=>[me(f("div",{class:"v-slider-thumb__label-container"},[f("div",{class:E(["v-slider-thumb__label",p.value]),style:J(n.value)},[f("div",null,[r["thumb-label"]?.({modelValue:e.modelValue})??e.modelValue.toFixed(w.value?T.value:1)]),f("div",{class:"v-slider-thumb__label-wedge"},null)])]),[[Pe,_.value&&e.focused||_.value==="always"]])]})])}),{}}}),He=le({start:{type:Number,required:!0},stop:{type:Number,required:!0},...he()},"VSliderTrack"),Je=oe()({name:"VSliderTrack",props:He(),emits:{},setup(e,l){let{slots:r}=l;const u=fe(ie);if(!u)throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");const{color:i,parsedTicks:h,rounded:S,showTicks:o,tickSize:c,trackColor:y,trackFillColor:F,trackSize:w,vertical:d,min:V,max:_,indexFromEnd:K}=u,{roundedClasses:M}=ze(S),{backgroundColorClasses:D,backgroundColorStyles:g}=re(F),{backgroundColorClasses:C,backgroundColorStyles:R}=re(y),T=s(()=>`inset-${d.value?"block":"inline"}-${K.value?"end":"start"}`),P=s(()=>d.value?"height":"width"),I=s(()=>({[T.value]:"0%",[P.value]:"100%"})),B=s(()=>e.stop-e.start),v=s(()=>({[T.value]:$(e.start,"%"),[P.value]:$(B.value,"%")})),m=s(()=>o.value?(d.value?h.value.slice().reverse():h.value).map((n,x)=>{const N=n.value!==V.value&&n.value!==_.value?$(n.position,"%"):void 0;return f("div",{key:n.value,class:E(["v-slider-track__tick",{"v-slider-track__tick--filled":n.position>=e.start&&n.position<=e.stop,"v-slider-track__tick--first":n.value===V.value,"v-slider-track__tick--last":n.value===_.value}]),style:{[T.value]:N}},[(n.label||r["tick-label"])&&f("div",{class:"v-slider-track__tick-label"},[r["tick-label"]?.({tick:n,index:x})??n.label])])}):[]);return ue(()=>f("div",{class:E(["v-slider-track",M.value,e.class]),style:J([{"--v-slider-track-size":$(w.value),"--v-slider-tick-size":$(c.value)},e.style])},[f("div",{class:E(["v-slider-track__background",C.value,{"v-slider-track__background--opacity":!!i.value||!F.value}]),style:{...I.value,...R.value}},null),f("div",{class:E(["v-slider-track__fill",D.value]),style:{...v.value,...g.value}},null),o.value&&f("div",{class:E(["v-slider-track__ticks",{"v-slider-track__ticks--always-show":o.value==="always"}])},[m.value])])),{}}}),Qe=le({...De(),...je(),...Ke(),modelValue:{type:[Number,String],default:0}},"VSlider"),Ge=oe()({name:"VSlider",props:Qe(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,start:e=>!0,end:e=>!0},setup(e,l){let{slots:r,emit:u}=l;const i=ee(),h=ee(),{rtlClasses:S}=ne(),o=$e(e),c=Le(e,"modelValue",void 0,v=>o.roundValue(v??o.min.value)),{min:y,max:F,mousePressed:w,roundValue:d,onSliderMousedown:V,onSliderTouchstart:_,trackContainerRef:K,position:M,hasLabels:D,disabled:g,readonly:C,noKeyboard:R}=Ue({props:e,steps:o,onSliderStart:()=>{!g.value&&!C.value&&u("start",c.value)},onSliderEnd:v=>{let{value:m}=v;const p=d(m);!g.value&&!C.value&&(c.value=p),u("end",p)},onSliderMove:v=>{let{value:m}=v;!g.value&&!C.value&&(c.value=d(m))},getActiveThumb:()=>i.value?.$el}),{isFocused:T,focus:P,blur:I}=Ee(e),B=s(()=>M(c.value));return ue(()=>{const v=be.filterProps(e),m=!!(e.label||r.label||r.prepend);return H(be,Me({ref:h,class:["v-slider",{"v-slider--has-labels":!!r["tick-label"]||D.value,"v-slider--focused":T.value,"v-slider--pressed":w.value,"v-slider--disabled":g.value},S.value,e.class],style:e.style},v,{focused:T.value}),{...r,prepend:m?p=>f(Oe,null,[r.label?.(p)??(e.label?H(Ie,{id:p.id.value,class:"v-slider__label",text:e.label},null):void 0),r.prepend?.(p)]):void 0,default:p=>{let{id:n,messagesId:x}=p;return f("div",{class:"v-slider__container",onMousedown:C.value?void 0:V,onTouchstartPassive:C.value?void 0:_},[f("input",{id:n.value,name:e.name||n.value,disabled:g.value,readonly:C.value,tabindex:"-1",value:c.value},null),H(Je,{ref:K,start:0,stop:B.value},{"tick-label":r["tick-label"]}),H(Ye,{ref:i,"aria-describedby":x.value,focused:T.value,noKeyboard:R.value,min:y.value,max:F.value,modelValue:c.value,"onUpdate:modelValue":N=>c.value=N,position:B.value,elevation:e.elevation,onFocus:P,onBlur:I,ripple:e.ripple,name:e.name},{"thumb-label":r["thumb-label"]})])}})}),Be({focus:()=>i.value?.$el.focus()},h)}});export{Ge as V};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as O,p as $,j as V,d9 as G,cp as K,J as g,da as Q,t as w,cq as W,n as X,cr as Y,cs as C,o as l,ad as y,am as Z,ct as ee,E as n,q as b,r as S,ak as ae,cP as te,aJ as le,db as se,b6 as oe,ag as ne}from"./index-Dj6UKNsX.js";import{V as P,m as ie}from"./VSelectionControl-CCjz0Lnv.js";const re=$({indeterminate:Boolean,inset:Boolean,flat:Boolean,loading:{type:[Boolean,String],default:!1},...ee(),...ie()},"VSwitch"),de=O()({name:"VSwitch",inheritAttrs:!1,props:re(),emits:{"update:focused":e=>!0,"update:modelValue":e=>!0,"update:indeterminate":e=>!0},setup(e,_){let{attrs:A,slots:a}=_;const i=V(e,"indeterminate"),s=V(e,"modelValue"),{loaderClasses:I}=G(e),{isFocused:x,focus:B,blur:F}=K(e),v=g(),m=g(),h=Q&&window.matchMedia("(forced-colors: active)").matches,R=w(()=>typeof e.loading=="string"&&e.loading!==""?e.loading:e.color),p=W(),z=w(()=>e.id||`switch-${p}`);function M(){i.value&&(i.value=!1)}function D(r){r.stopPropagation(),r.preventDefault(),v.value?.input?.click()}return X(()=>{const[r,T]=Y(A),N=C.filterProps(e),U=P.filterProps(e);return l(C,y({ref:m,class:["v-switch",{"v-switch--flat":e.flat},{"v-switch--inset":e.inset},{"v-switch--indeterminate":i.value},I.value,e.class]},r,N,{modelValue:s.value,"onUpdate:modelValue":c=>s.value=c,id:z.value,focused:x.value,style:e.style}),{...a,default:c=>{let{id:q,messagesId:E,isDisabled:J,isReadonly:L,isValid:k}=c;const u={model:s,isValid:k};return l(P,y({ref:v},U,{modelValue:s.value,"onUpdate:modelValue":[o=>s.value=o,M],id:q.value,"aria-describedby":E.value,type:"checkbox","aria-checked":i.value?"mixed":void 0,disabled:J.value,readonly:L.value,onFocus:B,onBlur:F},T),{...a,default:o=>{let{backgroundColorClasses:d,backgroundColorStyles:t}=o;return n("div",{class:S(["v-switch__track",h?void 0:d.value]),style:b(t.value),onClick:D},[a["track-true"]&&n("div",{key:"prepend",class:"v-switch__track-true"},[a["track-true"](u)]),a["track-false"]&&n("div",{key:"append",class:"v-switch__track-false"},[a["track-false"](u)])])},input:o=>{let{inputNode:d,icon:t,backgroundColorClasses:j,backgroundColorStyles:H}=o;return n(ne,null,[d,n("div",{class:S(["v-switch__thumb",{"v-switch__thumb--filled":t||e.loading},e.inset||h?void 0:j.value]),style:b(e.inset?void 0:H.value)},[a.thumb?l(ae,{defaults:{VIcon:{icon:t,size:"x-small"}}},{default:()=>[a.thumb({...u,icon:t})]}):l(te,null,{default:()=>[e.loading?l(se,{name:"v-switch",active:!0,color:k.value===!1?void 0:R.value},{default:f=>a.loader?a.loader(f):l(oe,{active:f.isActive,color:f.color,indeterminate:!0,size:"16",width:"2"},null)}):t&&l(le,{key:String(t),icon:t,size:"x-small"},null)]})])])}})}})}),Z({},m)}});export{de as V};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g,p as v,n as b,o as a,q as f,r as h,x,C as y,E as l,c as N,b as H,e as E,f as I,G as R,H as D,K as z,i as m,m as w,v as j,z as q,A,D as F,aj as G,ak as u,s,cH as K}from"./index-Dj6UKNsX.js";const U=v({text:String,...y(),...x()},"VToolbarTitle"),$=g()({name:"VToolbarTitle",props:U(),setup(e,o){let{slots:t}=o;return b(()=>{const n=!!(t.default||t.text||e.text);return a(e.tag,{class:h(["v-toolbar-title",e.class]),style:f(e.style)},{default:()=>[n&&l("div",{class:"v-toolbar-title__placeholder"},[t.text?t.text():e.text,t.default?.()])]})}),{}}}),J=[null,"prominent","default","comfortable","compact"],L=v({absolute:Boolean,collapse:Boolean,color:String,density:{type:String,default:"default",validator:e=>J.includes(e)},extended:{type:Boolean,default:null},extensionHeight:{type:[Number,String],default:48},flat:Boolean,floating:Boolean,height:{type:[Number,String],default:64},image:String,title:String,...F(),...y(),...A(),...q(),...x({tag:"header"}),...j()},"VToolbar"),O=g()({name:"VToolbar",props:L(),setup(e,o){let{slots:t}=o;const{backgroundColorClasses:n,backgroundColorStyles:T}=N(()=>e.color),{borderClasses:V}=H(e),{elevationClasses:k}=E(e),{roundedClasses:C}=I(e),{themeClasses:_}=R(e),{rtlClasses:B}=D(),i=z(e.extended===null?!!t.extension?.():e.extended),d=m(()=>parseInt(Number(e.height)+(e.density==="prominent"?Number(e.height):0)-(e.density==="comfortable"?8:0)-(e.density==="compact"?16:0),10)),r=m(()=>i.value?parseInt(Number(e.extensionHeight)+(e.density==="prominent"?Number(e.extensionHeight):0)-(e.density==="comfortable"?4:0)-(e.density==="compact"?8:0),10):0);return w({VBtn:{variant:"text"}}),b(()=>{const P=!!(e.title||t.title),S=!!(t.image||e.image),c=t.extension?.();return i.value=e.extended===null?!!c:e.extended,a(e.tag,{class:h(["v-toolbar",{"v-toolbar--absolute":e.absolute,"v-toolbar--collapse":e.collapse,"v-toolbar--flat":e.flat,"v-toolbar--floating":e.floating,[`v-toolbar--density-${e.density}`]:!0},n.value,V.value,k.value,C.value,_.value,B.value,e.class]),style:f([T.value,e.style])},{default:()=>[S&&l("div",{key:"image",class:"v-toolbar__image"},[t.image?a(u,{key:"image-defaults",disabled:!e.image,defaults:{VImg:{cover:!0,src:e.image}}},t.image):a(G,{key:"image-img",cover:!0,src:e.image},null)]),a(u,{defaults:{VTabs:{height:s(d.value)}}},{default:()=>[l("div",{class:"v-toolbar__content",style:{height:s(d.value)}},[t.prepend&&l("div",{class:"v-toolbar__prepend"},[t.prepend?.()]),P&&a($,{key:"title",text:e.title},{text:t.title}),t.default?.(),t.append&&l("div",{class:"v-toolbar__append"},[t.append?.()])])]}),a(u,{defaults:{VTabs:{height:s(r.value)}}},{default:()=>[a(K,null,{default:()=>[i.value&&l("div",{class:"v-toolbar__extension",style:{height:s(r.value)}},[c])]})]})]})}),{contentHeight:d,extensionHeight:r}}});export{O as V,$ as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{g as X,p as H,a0 as J,L as A,n as Q,E as T,ag as Z,ad as oe,C as j,a8 as re,K as V,a2 as K,J as W,i as E,a7 as G,cS as ue,cT as ce,a6 as D,R as ie,O as ve,cU as fe,bX as de,t as me,a1 as he,o as ge,s as _,q as pe,r as ye,bZ as Se,a3 as we,Q as Te}from"./index-Dj6UKNsX.js";const Ve=H({renderless:Boolean,...j()},"VVirtualScrollItem"),Ie=X()({name:"VVirtualScrollItem",inheritAttrs:!1,props:Ve(),emits:{"update:height":l=>!0},setup(l,a){let{attrs:v,emit:s,slots:n}=a;const{resizeRef:o,contentRect:c}=J(void 0,"border");A(()=>c.value?.height,g=>{g!=null&&s("update:height",g)}),Q(()=>l.renderless?T(Z,null,[n.default?.({itemRef:o})]):T("div",oe({ref:o,class:["v-virtual-scroll__item",l.class],style:l.style},v),[n.default?.()]))}}),Re=-1,be=1,C=100,Oe=H({itemHeight:{type:[Number,String],default:null},itemKey:{type:[String,Array,Function],default:null},height:[Number,String]},"virtual");function Pe(l,a){const v=re(),s=V(0);K(()=>{s.value=parseFloat(l.itemHeight||0)});const n=V(0),o=V(Math.ceil((parseInt(l.height)||v.height.value)/(s.value||16))||1),c=V(0),g=V(0),u=W(),m=W();let I=0;const{resizeRef:F,contentRect:O}=J();K(()=>{F.value=u.value});const y=E(()=>u.value===document.documentElement?v.height.value:O.value?.height||parseInt(l.height)||0),M=E(()=>!!(u.value&&m.value&&y.value&&s.value));let h=Array.from({length:a.value.length}),i=Array.from({length:a.value.length});const f=V(0);let P=-1;function Y(e){return h[e]||s.value}const k=ue(()=>{const e=performance.now();i[0]=0;const t=a.value.length;for(let r=1;r<=t;r++)i[r]=(i[r-1]||0)+Y(r-1);f.value=Math.max(f.value,performance.now()-e)},f),$=A(M,e=>{e&&($(),I=m.value.offsetTop,k.immediate(),S(),~P&&ie(()=>{ve&&window.requestAnimationFrame(()=>{L(P),P=-1})}))});G(()=>{k.clear()});function ee(e,t){const r=h[e],d=s.value;s.value=d?Math.min(s.value,t):t,(r!==t||d!==s.value)&&(h[e]=t,k())}function p(e){e=D(e,0,a.value.length);const t=Math.floor(e),r=e%1,d=t+1,b=i[t]||0,w=i[d]||b;return b+(w-b)*r}function N(e){return ke(i,e)}let x=0,R=0,z=0;A(y,(e,t)=>{t&&(S(),e<t&&requestAnimationFrame(()=>{R=0,S()}))});let B=-1;function te(){if(!u.value||!m.value)return;const e=u.value.scrollTop,t=performance.now();t-z>500?(R=Math.sign(e-x),I=m.value.offsetTop):R=e-x,x=e,z=t,window.clearTimeout(B),B=window.setTimeout(U,500),S()}function U(){!u.value||!m.value||(R=0,z=0,window.clearTimeout(B),S())}let q=-1;function S(){cancelAnimationFrame(q),q=requestAnimationFrame(le)}function le(){if(!u.value||!y.value||!s.value)return;const e=x-I,t=Math.sign(R),r=Math.max(0,e-C),d=D(N(r),0,a.value.length),b=e+y.value+C,w=D(N(b)+1,d+1,a.value.length);if((t!==Re||d<n.value)&&(t!==be||w>o.value)){const ne=p(n.value)-p(d),se=p(w)-p(o.value);Math.max(ne,se)>C?(n.value=d,o.value=w):(d<=0&&(n.value=d),w>=a.value.length&&(o.value=w))}c.value=p(n.value),g.value=p(a.value.length)-p(o.value)}function L(e){const t=p(e);!u.value||e&&!t?P=e:u.value.scrollTop=t}const ae=E(()=>a.value.slice(n.value,o.value).map((e,t)=>{const r=t+n.value;return{raw:e,index:r,key:ce(e,l.itemKey,r)}}));return A(a,()=>{h=Array.from({length:a.value.length}),i=Array.from({length:a.value.length}),k.immediate(),S()},{deep:1}),{calculateVisibleItems:S,containerRef:u,markerRef:m,computedItems:ae,paddingTop:c,paddingBottom:g,scrollToIndex:L,handleScroll:te,handleScrollend:U,handleItemResize:ee}}function ke(l,a){let v=l.length-1,s=0,n=0,o=null,c=-1;if(l[v]<a)return v;for(;s<=v;)if(n=s+v>>1,o=l[n],o>a)v=n-1;else if(o<a)c=n,s=n+1;else return o===a?n:s;return c}const xe=H({items:{type:Array,default:()=>[]},renderless:Boolean,...Oe(),...j(),...Se()},"VVirtualScroll"),Fe=X()({name:"VVirtualScroll",props:xe(),setup(l,a){let{slots:v}=a;const s=fe("VVirtualScroll"),{dimensionStyles:n}=de(l),{calculateVisibleItems:o,containerRef:c,markerRef:g,handleScroll:u,handleScrollend:m,handleItemResize:I,scrollToIndex:F,paddingTop:O,paddingBottom:y,computedItems:M}=Pe(l,me(()=>l.items));return he(()=>l.renderless,()=>{function h(){const f=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1)?"addEventListener":"removeEventListener";c.value===document.documentElement?(document[f]("scroll",u,{passive:!0}),document[f]("scrollend",m)):(c.value?.[f]("scroll",u,{passive:!0}),c.value?.[f]("scrollend",m))}we(()=>{c.value=Te(s.vnode.el,!0),h(!0)}),G(h)}),Q(()=>{const h=M.value.map(i=>ge(Ie,{key:i.key,renderless:l.renderless,"onUpdate:height":f=>I(i.index,f)},{default:f=>v.default?.({item:i.raw,index:i.index,...f})}));return l.renderless?T(Z,null,[T("div",{ref:g,class:"v-virtual-scroll__spacer",style:{paddingTop:_(O.value)}},null),h,T("div",{class:"v-virtual-scroll__spacer",style:{paddingBottom:_(y.value)}},null)]):T("div",{ref:c,class:ye(["v-virtual-scroll",l.class]),onScrollPassive:u,onScrollend:m,style:pe([n.value,l.style])},[T("div",{ref:g,class:"v-virtual-scroll__container",style:{paddingTop:_(O.value),paddingBottom:_(y.value)}},[h])])}),{calculateVisibleItems:o,scrollToIndex:F}}});export{Fe as V};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{aw as b,a3 as y,aG as s,ay as t,aW as p,aB as a,bJ as k,aE as n,aZ as C,ax as m,r as h,o as r,E as v,az as c,M as g,aT as V,aL as R,b3 as B,bI as x,ag as $,aF as M,bf as A,bK as I,aO as u,_ as T}from"./index-Dj6UKNsX.js";import{P as E}from"./PanelviewItemCompact-BKBJxxoM.js";import{V as O}from"./VToolbar-w3YLtQh8.js";import{V as P}from"./VAlert-CFvRz3gu.js";const z=b({__name:"Carousel",setup(e){return y(()=>{document.documentElement.style.setProperty("--swiper-navigation-color","primary")}),(d,l)=>{const w=p("swiper");return t(),s(w,{"slides-per-view":a(k)(d.$vuetify.display.width)+.5,"free-mode":!0,navigation:!1,mousewheel:{forceToAxis:!0,releaseOnEdges:!0}},{default:n(()=>[C(d.$slots,"default")]),_:3},8,["slides-per-view"])}}}),N={class:"mr-3"},W={key:0},L={class:"carousel-wrapper"},D=b({__name:"WidgetRow",props:{widgetRow:{},editMode:{type:Boolean},showProviderOnCover:{type:Boolean}},emits:["update:settings"],setup(e,{emit:d}){const l=d;return(w,o)=>{const f=p("swiper-slide");return t(),m("div",{class:h(`widget-row ${e.widgetRow.settings&&!e.widgetRow.settings.enabled?"disabled":""}`)},[r(O,{class:"header",color:"transparent"},{title:n(()=>[v("span",N,R(e.widgetRow.title),1),e.widgetRow.subtitle&&a(B)("bp6")?(t(),s(x,{key:0,inline:"",outlined:"",text:e.widgetRow.subtitle,density:"compact",size:"small"},null,8,["text"])):c("",!0)]),append:n(()=>[e.editMode&&e.widgetRow.settings?(t(),m("div",W,[e.widgetRow.settings.position!==0?(t(),s(g,{key:0,icon:"mdi-chevron-up",class:"enabled",onClick:o[0]||(o[0]=i=>l("update:settings",{...e.widgetRow.settings,position:e.widgetRow.settings.position-1}))})):c("",!0),r(g,{icon:"mdi-chevron-down",onClick:o[1]||(o[1]=i=>l("update:settings",{...e.widgetRow.settings,position:e.widgetRow.settings.position+1}))}),r(g,{icon:e.widgetRow.settings.enabled?"mdi-checkbox-marked":"mdi-checkbox-blank-outline",onClick:o[2]||(o[2]=i=>l("update:settings",{...e.widgetRow.settings,enabled:!e.widgetRow.settings.enabled}))},null,8,["icon"])])):e.widgetRow.provider?(t(),s(V,{key:1,domain:e.widgetRow.provider,size:24},null,8,["domain"])):c("",!0)]),_:1}),v("div",L,[e.widgetRow.items.length>0?(t(),s(z,{key:0},{default:n(()=>[(t(!0),m($,null,M(e.widgetRow.items,i=>(t(),s(f,{key:i.uri},{default:n(()=>[r(E,{item:i,"show-provider-on-cover":e.showProviderOnCover,"permanent-overlay":![a(u).ALBUM,a(u).TRACK,a(u).RADIO].includes(i.media_type),"is-available":a(I)(i),disabled:e.editMode},null,8,["item","show-provider-on-cover","permanent-overlay","is-available","disabled"])]),_:2},1024))),128))]),_:1})):(t(),s(P,{key:1},{default:n(()=>[A(R(w.$t("no_content")),1)]),_:1}))])],2)}}}),J=T(D,[["__scopeId","data-v-a88771f6"]]);export{J as W};
|