PageSourceSearch

https://uta.inui-dondon-sukininaru.net/_nuxt/Bqo3gYup.js

js inui-dondon-sukininaru.net collected 2026-10-06 20:13:25 UTC 6,350 bytes, 1 lines download raw bytes

1import{d as $,w as q,y as w,i as k,j as I,T as E,I as F,g as o,h as r,m as e,n as Q,v as U,l as t,q as R,E as f,F as u,x as b,k as W,t as p,s as C,z as G,A,c as H,D as J}from"./DR38E-4v.js";import{_ as K}from"./DMM1J4sJ.js";import{_ as X}from"./D_tvktrw.js";import{u as Y}from"./jbhkC_Vy.js";import{u as Z}from"./DGrYeNIA.js";import{u as ee}from"./DCUiSh5s.js";import"./k2vSkCpv.js";import"./Bq_ZeY_s.js";import"./BJuQ6Urx.js";import"./CaQdAJz9.js";import"./vCNnmPQp.js";const te={class:"w-full max-w-lg bg-surface-overlay flex flex-col max-h-[70vh]"},se={class:"flex items-center justify-between border-b border-border-default px-4 py-3"},oe={class:"border-b border-border-default px-4 py-2"},le={class:"overflow-y-auto px-4 py-3"},re={class:"flex flex-wrap gap-2"},ae=["onClick"],ne={class:"ml-1.5 text-xs opacity-60"},ie={key:0,class:"py-6 text-center text-sm text-gray-400"},ce=$({__name:"ArtistCloudModal",props:{isOpen:{type:Boolean},selectedArtist:{},artists:{}},emits:["close","select"],setup(m){const d=m,i=A(""),x=H(()=>{const n=i.value.toLowerCase();return n?d.artists.filter(l=>l.name.toLowerCase().includes(n)):d.artists});return q(()=>d.isOpen,n=>{n&&(i.value="")}),(n,l)=>(o(),w(F,{to:"body"},[k(E,{"enter-active-class":"transition-opacity duration-200","enter-from-class":"opacity-0","enter-to-class":"opacity-100","leave-active-class":"transition-opacity duration-150","leave-from-class":"opacity-100","leave-to-class":"opacity-0"},{default:I(()=>[m.isOpen?(o(),r("div",{key:0,class:"fixed inset-0 z-50 flex items-center justify-center p-4 bg-black/80",onClick:l[3]||(l[3]=G(a=>n.$emit("close"),["self"]))},[e("div",te,[e("div",se,[l[4]||(l[4]=e("h2",{class:"text-sm font-medium text-gray-50"},"アーティストを選択",-1)),e("button",{class:"text-gray-400 hover:text-gray-50 transition-colors","aria-label":"閉じる",onClick:l[0]||(l[0]=a=>n.$emit("close"))}," ✕ ")]),e("div",oe,[Q(e("input",{"onUpdate:modelValue":l[1]||(l[1]=a=>R(i)?i.value=a:null),type:"text",autocomplete:"off",autocorrect:"off",autocapitalize:"off",spellcheck:"false",placeholder:"アーティスト名で絞り込む",class:"w-full bg-transparent text-base sm:text-sm text-gray-50 placeholder-gray-500 outline-none"},null,512),[[U,t(i)]])]),e("div",le,[e("div",re,[e("button",{class:f(["border px-3 py-1.5 text-sm transition-colors",m.selectedArtist===""?"border-selected-border bg-selected-bg/10 text-selected-text":"border-border-default text-gray-400 hover:text-gray-50"]),onClick:l[2]||(l[2]=a=>n.$emit("select",""))}," 全アーティスト ",2),(o(!0),r(u,null,b(t(x),a=>(o(),r("button",{key:a.name,class:f(["border px-3 py-1.5 text-sm transition-colors",m.selectedArtist===a.name?"border-selected-border bg-selected-bg/10 text-selected-text":"border-border-default text-gray-400 hover:text-gray-50"]),onClick:g=>n.$emit("select",a.name)},[W(p(a.name),1),e("span",ne,p(a.count),1)],10,ae))),128))]),t(x).length===0?(o(),r("p",ie," アーティストが見つかりませんでした ")):C("",!0)])])])):C("",!0)]),_:1})]))}}),de=Object.assign(ce,{__name:"ArtistCloudModal"}),ue={class:"mb-3 flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between"},pe={class:"mb-2 flex flex-wrap items-center gap-x-2 gap-y-1.5"},me={class:"flex"},xe=["onClick"],be={class:"flex"},fe=["onClick"],ve={class:"mb-4 text-sm text-gray-400"},ye={key:0,class:"space-y-2"},ge={key:0,class:"py-12 text-center text-gray-400"},_e={key:1},he={class:"mt-6"},Be=$({__name:"index",setup(m){J({title:"楽曲一覧",description:"戌亥とこさんが歌った楽曲一覧。タイトルやアーティストで絞り込んで検索できます。",ogDescription:"戌亥とこさんが歌った楽曲一覧。タイトルやアーティストで絞り込んで検索できます。"});const{filteredSongs:d,songs:i,totalItems:x,page:n,perPage:l,songType:a,videoType:g,selectedArtist:_,artistsWithCount:T,selectArtist:M,status:S}=Y({perPage:50}),O=Z(),{scrollToTop:z}=ee();function j(y){n.value=y,z("auto")}const v=A(!1);function B(y){M(y),v.value=!1}const V=[{value:"",label:"すべて"},{value:"original",label:"オリジナル"},{value:"cover",label:"カバー"}],D=[{value:"",label:"すべて"},{value:"music_video",label:"歌動画"},{value:"stream",label:"歌配信"}];return(y,c)=>{const L=de,N=K,P=X;return o(),r("div",null,[e("div",ue,[c[3]||(c[3]=e("h1",{class:"text-xl font-bold text-gray-50"},"楽曲一覧",-1)),t(d).length>
10?(o(),r("button",{key:0,class:"self-start bg-action-primary px-4 py-2 text-sm font-medium text-white transition-colors hover:bg-action-primary-hover",onClick:c[0]||(c[0]=s=>t(O).playAll(t(d)))}," すべて再生 ")):C("",!0)]),e("div",pe,[e("div",me,[(o(),r(u,null,b(V,s=>e("button",{key:s.value,class:f(["relative -ml-px border border-border-default px-3 py-1.5 text-sm transition-colors first:ml-0",t(a)===s.value?"z-10 border-selected-border bg-selected-bg/10 text-selected-text":"text-gray-400 hover:text-gray-50"]),onClick:h=>a.value=s.value},p(s.label),11,xe)),64))]),e("div",be,[(o(),r(u,null,b(D,s=>e("button",{key:s.value,class:f(["relative -ml-px border border-border-default px-3 py-1.5 text-sm transition-colors first:ml-0",t(g)===s.value?"z-10 border-selected-border bg-selected-bg/10 text-selected-text":"text-gray-400 hover:text-gray-50"]),onClick:h=>g.value=s.value},p(s.label),11,fe)),64))]),e("button",{class:f(["border px-3 py-1.5 text-sm transition-colors",t(_)?"border-selected-border bg-selected-bg/10 text-selected-text":"border-border-default text-gray-400 hover:text-gray-50"]),onClick:c[1]||(c[1]=s=>v.value=!0)},p(t(_)||"全アーティスト")+" ▼ ",3)]),k(L,{"is-open":t(v),"selected-artist":t(_),artists:t(T),onClose:c[2]||(c[2]=s=>v.value=!1),onSelect:B},null,8,["is-open","selected-artist","artists"]),e("p",ve,p(t(x))+" 曲見つかりました",1),t(S)==="pending"?(o(),r("div",ye,[(o(),r(u,null,b(10,s=>e("div",{key:s,class:"h-14 animate-pulse bg-surface-raised"})),64))])):(o(),r(u,{key:1},[t(i).length===0?(o(),r("div",ge," 楽曲が見つかりませんでした ")):(o(),r("div",_e,[(o(!0),r(u,null,b(t(i),(s,h)=>(o(),w(N,{key:s.id,song:s,index:h,"show-index":!1},null,8,["song","index"]))),128))]))],64)),e("div",he,[k(P,{"total-items":t(x),"items-per-page":t(l),"current-page":t(n),"onUpdate:page":j},null,8,["total-items","items-per-page","current-page"])])])}}});export{Be as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.