mirror of
https://github.com/the1812/Bilibili-Evolved.git
synced 2025-11-04 21:22:45 +08:00
1 line
3.6 KiB
JavaScript
1 line
3.6 KiB
JavaScript
(()=>{return(e,i)=>{const a=`<div class=home-video><div class=loading v-if=loading><i class="mdi mdi-18px mdi-loading mdi-spin"></i>加载中...</div><div class=cards v-else-if=cards.length><a class=home-video-card v-for="card in cards":key=card.id target=_blank :href="'https://www.bilibili.com/av' + card.aid"><div class=cover-container><dpi-img class=cover :src=card.coverUrl :size="{height: 160, width: 280}"></dpi-img><div class=duration>{{card.durationText}}</div><div class=topics><a class=topic v-for="topic of card.topics":key=topic.id target=_blank :href="'https://t.bilibili.com/topic/name/' + card.name + '/feed'">{{topic.name}}</a></div><div class=watchlater></div></div><h1 class=title>{{card.title}}</h1><pre class=description>{{card.description}}</pre><dpi-img class=face :src=card.upFaceUrl :size=24></dpi-img><div class=up>{{card.upName}}</div><div class=stats><icon type=extended icon=play></icon>{{card.playCount}}<icon type=extended icon=danmaku></icon>{{card.danmakuCount}}</div></a></div><div class=empty v-else>空空如也哦 = ̄ω ̄=</div></div>`;i.applyStyleFromText(`.home-video .cards{display:flex;flex-wrap:wrap;align-items:center}.home-video .cards .home-video-card{display:grid;grid-template-columns:280px 1fr;grid-template-rows:1fr 1fr 1fr;grid-template-areas:"cover title" "cover description" "cover up";height:var(--card-height);width:var(--card-width);color:#000;border-radius:16px;box-shadow:0 2px 6px 0 #0002;margin-right:var(--card-margin);margin-bottom:var(--card-margin)}body.dark .home-video .cards .home-video-card{background-color:#282828;color:#fff}.home-video .cards .home-video-card>*{justify-self:self-start;align-self:center}.home-video .cards .home-video-card .cover-container{grid-area:cover;position:relative}.home-video .cards .home-video-card .cover-container .cover{border-radius:16px 0 0 16px;object-fit:cover}.home-video .cards .home-video-card .cover-container>:not(.cover){position:absolute}.home-video .cards .home-video-card .title{grid-area:title;font-size:16pt;font-weight:700;color:inherit;padding:0 12px;white-space:nowrap;overflow:hidden;justify-self:stretch;text-overflow:ellipsis}.home-video .cards .home-video-card .description{grid-area:description;color:inherit;overflow:auto;align-self:stretch;justify-self:stretch;margin:0 12px;white-space:pre-wrap;line-height:1.5;scrollbar-width:none!important}.home-video .cards .home-video-card .description::-webkit-scrollbar{width:0!important}.home-video .cards .home-video-card .face,.home-video .cards .home-video-card .stats,.home-video .cards .home-video-card .up{grid-area:up}.home-video .cards .home-video-card .face{margin-left:12px;border-radius:50%}.home-video .cards .home-video-card .up{margin-left:48px}.home-video .cards .home-video-card .stats{justify-self:self-end;margin-right:12px}`,"home-video-style");return{export:Object.assign({template:a},{components:{"dpi-img":()=>i.importAsync("dpi-img.vue"),Icon:()=>i.importAsync("icon.vue")},data(){return{cards:[],loading:true}},async mounted(){try{const e=await Ajax.getJsonWithCredentials(`https://api.vc.bilibili.com/dynamic_svr/v1/dynamic_svr/dynamic_new?uid=${getUID()}&type_list=8`);if(e.code!==0){Toast.error(e.message,"视频动态",3e3);return}this.cards=e.data.cards.map(e=>{const i=JSON.parse(e.card);const a=_.get(i,"display.topic_info.topic_details",[]).map(e=>{return{id:e.topic_id,name:e.topic_name}});return{id:e.desc.dynamic_id_str,aid:i.aid,title:i.title,upName:e.desc.user_profile.info.uname,upFaceUrl:e.desc.user_profile.info.face,coverUrl:i.pic,description:i.desc,topics:a,duration:i.duration,durationText:formatDuration(i.duration,0),playCount:i.stat.view,danmakuCount:i.stat.danmaku}})}finally{this.loading=false}}})}}})(); |