(()=>(t,i)=>{function e(t,i,e){if(i in t){Object.defineProperty(t,i,{value:e,enumerable:true,configurable:true,writable:true})}else{t[i]=e}return t}const{NavbarComponent:a}=i.import("custom-navbar-component");const s=t=>{const i=()=>{switch(t.type){default:case 2:return`https://www.bilibili.com/video/${t.bvid}`;case 12:return`https://www.bilibili.com/audio/au${t.id}`}};return{id:t.id,aid:t.id,bvid:t.bvid,playLink:i(),coverUrl:t.cover.replace("http:","https:"),favoriteTimestamp:t.fav_time*1e3,favoriteTime:new Date(t.fav_time*1e3),title:t.title,description:t.intro,duration:t.duration,durationText:formatDuration(t.duration),playCount:t.cnt_info.play,danmakuCount:t.cnt_info.danmaku,upName:t.upper.name,upFaceUrl:t.upper.face.replace("http:","https:"),upID:t.upper.mid}};class r extends a{constructor(){super();e(this,"vm",void 0);this.boundingWidth=380;this.noPadding=true;this.href=`https://space.bilibili.com/${getUID()}/favlist`;this.html=`收藏`;this.active=document.URL.replace(/\?.*$/,"")===this.href;this.popupHtml=`\n
\n
\n 加载中...\n
\n
\n
\n\n\n
\n\n\n\n
\n\n\n\n\n
\n\n
\n 空空如也哦 = ̄ω ̄=\n
\n\n
\n 加载中...\n
\n
\n
\n
\n`;this.initialPopup=()=>this.init()}get name(){return"favoritesList"}async init(){this.vm=new Vue({el:await SpinQuery.select(`.custom-navbar [data-name="${this.name}"] .favorites-list`),store:store,filters:{formatDate(t){return`${t.getFullYear()}-${(t.getMonth()+1).toString().padStart(2,"0")}-${t.getDate().toString().padStart(2,"0")}`}},components:{DpiImg:()=>i.importAsync("dpi-img.vue"),VDropdown:()=>i.importAsync("v-dropdown.vue")},data:{list:[],cards:[],filteredCards:[],selectedListName:"",cardsLoading:true,cardsPage:1,search:""},watch:{search(t){if(t===""){this.filteredCards=this.cards;return}t=t.toLowerCase();this.filteredCards=this.cards.filter((i=>i.title.toLowerCase().includes(t)||i.upName.toLowerCase().includes(t)));this.searchAllList()},selectedListName(i){t.favoritesListCurrentSelect=i}},computed:{listNames(){return this.list.map((t=>t.name))},selectedListId(){const t=this.list.find((t=>t.name===this.selectedListName));return t?t.id:0},moreLink(){const t=this.selectedListId;if(t===0){return`https://space.bilibili.com/${getUID()}/favlist`}return`https://space.bilibili.com/${getUID()}/favlist?fid=${t}`},playLink(){const t=this.selectedListId;if(t===0){return undefined}return`https://www.bilibili.com/medialist/play/ml${t}`}},methods:{async getCards(){const i=`https://api.bilibili.com/medialist/gateway/base/spaceDetail?media_id=${this.selectedListId}&pn=${this.cardsPage}&ps=20`;const e=await Ajax.getJsonWithCredentials(i);if(e.code!==0){throw new Error(`加载收藏夹内容失败: ${e.message}`)}if(!e.data.medias){return[]}return e.data.medias.filter((i=>{if(t.customNavbarShowDeadVideos){return true}return i.attr!==9&&i.attr!==1})).map(s)},async changeList(){try{this.search="";this.cards=[];this.cardsPage=1;this.cardsLoading=true;this.cards=await this.getCards();this.filteredCards=this.cards;this.setInfiniteScroll()}catch(t){logError(t)}finally{this.cardsLoading=false}},async loadNextPage(){try{this.cardsLoading=true;this.cardsPage++;const t=await this.getCards();this.cards.push(...t);if(t.length>0){this.setInfiniteScroll()}}catch(t){logError(t)}finally{this.cardsLoading=false}},setInfiniteScroll(){const t=this.$el.querySelector(".cards");const i=_.debounce((()=>{if(this.search===""&&t.scrollTop+t.clientHeight>=t.scrollHeight-48){t.removeEventListener("scroll",i);this.loadNextPage()}}),200);t.addEventListener("scroll",i)},searchAllList:_.debounce((async function(){if(this.search===""){return}try{const t=await Ajax.getJsonWithCredentials(`https://api.bilibili.com/x/v3/fav/resource/list?media_id=${this.selectedListId}&pn=1&ps=20&keyword=${this.search}&order=mtime&type=0&tid=0`);const i=await Ajax.getJsonWithCredentials(`https://api.bilibili.com/x/v3/fav/resource/list?media_id=${this.selectedListId}&pn=1&ps=20&keyword=${this.search}&order=mtime&type=1&tid=0`);if(t.code!==0&&i.code!==0){return}const e=_.get(t,"data.medias",[])||[];const a=_.get(i,"data.medias",[])||[];const r=_.uniqBy(this.filteredCards.concat(e.map(s),a.map(s)),(t=>t.id));this.filteredCards=r}catch(t){console.error(t);return}}),200)},async mounted(){try{const i=`https://api.bilibili.com/medialist/gateway/base/created?pn=1&ps=100&up_mid=${getUID()}&is_space=0`;const e=await Ajax.getJsonWithCredentials(i);if(e.code!==0){throw new Error(`获取收藏夹列表失败: ${e.message}`)}this.list=e.data.list.map((t=>({id:t.id,name:t.title,count:t.media_count})));if(this.list.length>0){if(t.favoritesListCurrentSelect&&this.list.some((i=>i.name===t.favoritesListCurrentSelect))){this.selectedListName=t.favoritesListCurrentSelect}else{this.selectedListName=this.list[0].name}this.changeList()}}catch(t){logError(t)}finally{this.$el.classList.remove("loading")}}})}}return{export:{FavoritesList:r}}})();