import{I as f}from"./ItemsListing-ffc2935e.js";import{d as v,a9 as b,r as l,o as h,b as a,P as I,ab as r,a as w,c as E,e as T,M as m,ap as n}from"./index-8e7daee8.js";import"./ItemContextMenu.vue_vue_type_style_index_0_scoped_d4387993_lang-755a1a8b.js";import"./eventbus-d39a7847.js";import"./VListItem-09460541.js";import"./VLabel-46f0710d.js";import"./VList-ca6176f0.js";import"./VCard-990eebd4.js";import"./VCardText-a5e6d4d4.js";import"./VMenu-64e96597.js";import"./_plugin-vue_export-helper-c27b6911.js";import"./ListItem-b626b3fa.js";import"./Button-caab2d1b.js";import"./PanelviewItemCompact-2d9663c1.js";import"./VCheckboxBtn-1b20bfe7.js";import"./VSpacer-28a82c5a.js";/* empty css              */import"./VAlert-fd6ed822.js";import"./Container-0d470ed8.js";import"./Toolbar-e48261c7.js";import"./VToolbar-645a3ba3.js";import"./VTextField-12379bad.js";import"./VVirtualScroll-01e39aac.js";import"./VInfiniteScroll-40f31e12.js";import"./layout-a17f5af6.js";const Q=v({name:"Playlists",__name:"LibraryPlaylists",setup(A){const{t:u}=b(),c=l([]),o=l(!1),p=l([]),d=["name","name_desc","sort_name","sort_name_desc","timestamp_added","timestamp_added_desc","timestamp_modified","timestamp_modified_desc","last_played","last_played_desc","play_count","play_count_desc"],_=async function(t){if(t.refresh&&!o.value){for(a.startSync([m.PLAYLIST]),await n(250);a.syncTasks.value.length>0&&a.syncTasks.value.filter(e=>e.media_types.includes(m.PLAYLIST)).length!=0;)await n(500);await n(500)}return o.value=!1,await a.getLibraryPlaylists(t.favoritesOnly||void 0,t.search,t.limit,t.offset,t.sortBy)};h(()=>{const t=[];for(const s of Object.values(a.providers).filter(i=>i.available&&i.supported_features.includes(I.PLAYLIST_CREATE)))t.push({label:"create_playlist_on",labelArgs:[s.name],action:()=>{y(s.instance_id)},icon:"mdi-playlist-plus"});t.length&&p.value.push({label:"create_playlist_on",icon:"mdi-playlist-plus",subItems:t});const e=a.subscribe_multi([r.MEDIA_ITEM_ADDED,r.MEDIA_ITEM_UPDATED,r.MEDIA_ITEM_DELETED],s=>{var i;(i=s.object_id)!=null&&i.startsWith("library://playlist")&&(o.value=!0)});w(e)});const y=async function(t){const e=prompt(u("new_playlist_name"));e&&await a.createPlaylist(e,t).then(()=>location.reload()).catch(s=>alert(s))};return(t,e)=>(E(),T(f,{itemtype:"playlists",items:c.value,"show-duration":!1,"show-provider":!0,"show-favorites-only-filter":!0,"load-paged-data":_,"show-library":!0,"sort-keys":d,"update-available":o.value,title:t.$t("playlists"),"allow-key-hooks":!0,"show-search-button":!0,"extra-menu-items":p.value,icon:"mdi-playlist-play","restore-state":!0},null,8,["items","update-available","title","extra-menu-items"]))}});export{Q as default};
