PageSourceSearch

https://moref.co/assets/SearchPage-C3B7BoMg.js

js moref.co collected 2026-10-02 01:20:38 UTC 230,390 bytes, 2 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Search3DView-CxrlkpNG.js","assets/index-C1BeOnJt.js","assets/index-DpviFpLu.css","assets/spriteAssets-DSFKCUJ2.js","assets/useDebouncedValue-CV_0jd1-.js","assets/useSearch-DSxbsauE.js","assets/useInfiniteQuery-R33vFYv5.js","assets/FilterRailV4-C7yECbcJ.js","assets/FilterRailV4-Cj5GkGx4.css","assets/v2-ext-filters-C3jXklUX.css","assets/match-reasons-CKEMIBeA.js","assets/useMediaQuery-BGBS-x4g.js"])))=>i.map(i=>d[i]);
2import{r,s as ga,e as at,u as nt,a as Sa,j as e,T as Da,V as Zs,b as gr,g as Ea,c as ya,d as qe,E as ka,L as Sr,f as ie,_ as ja,h as Be,i as Dr,k as Va,l as _a,A as Qe,I as rr,m as _s,Q as Er,p as or,n as Ra,o as yr,q as Ca,t as $a,v as Ma,w as kr,x as Cs,y as jr,z as La,B as it,P as Fa,C as Ta,D as Pa,F as Aa,G as lt,H as Vr,J as _r,K as Rr,M as Ia,N as Oa,O as Ba,R as Ua,S as Ha,U as Ga,W as ar,X as nr,Y as Qa,Z as qa,$ as za}from"./index-C1BeOnJt.js";import{u as He}from"./useDebouncedValue-CV_0jd1-.js";import{u as Ka,a as Wa,b as Ja}from"./useSearch-DSxbsauE.js";import{t as Xa,L as ts,d as Ya,a as Te,P as rs,b as ir,T as Za}from"./match-reasons-CKEMIBeA.js";import{i as Cr,a as ct,b as bs,c as en,D as ns,d as is,e as Ns,M as et,f as $r,g as sn,h as tn,j as st,r as Rs,n as Mr,t as Lr,S as rn,k as os,l as lr,p as cr,m as on,o as an,q as nn,s as ln,u as Ws,v as Js,w as tt,C as Oe,x as mt,y as cn,z as mn,A as un,B as Xs,E as dn,F as hn,G as mr,H as Fr,I as pn,J as fn,K as bn,L as Nn,N as xn,O as vn,P as wn}from"./FilterRailV4-C7yECbcJ.js";import{u as Tr}from"./useMediaQuery-BGBS-x4g.js";function Ce(s){return((s==null?void 0:s.length)??0)>0}function Ge(s){return s==null?!1:Object.values(s).some(t=>t!=null&&(!Array.isArray(t)||t.length>0))}function gn(s,t){return!!(t.trim().length>0||s.query.trim().length>0||Ce(s.taxonomy_node_ids)||Ce(s.exclude_taxonomy_node_ids)||Ce(s.taxonomy_prefer_node_ids)||Ce(s.prefer_title_scripts)||Ce(s.exclude_title_scripts)||Ce(s.taxonomy_degrees)||s.sort!==void 0&&s.sort!=="relevance"||s.display_mode!==void 0&&s.display_mode!=="video"||s.include_process===!0||s.content_kind!==void 0&&s.content_kind!=="reference"||s.artist_id!==void 0||s.artist_query!==void 0||s.song_id!==void 0||s.date_from!==void 0||s.date_to!==void 0||s.duration_min_sec!==void 0||s.duration_max_sec!==void 0||s.monochrome===!0||s.orientation!==void 0||Ge(s.color_filter)||Ge(s.motion_filter)||Ge(s.audio_filter)||Ge(s.audio_query)||Ce(s.spectrum_ids)||s.spectrum_ranges!==void 0&&Object.keys(s.spectrum_ranges).length>0||Ce(s.source_group_ids)||s.tag_logic!==void 0||s.status!==void 0&&s.status!==null||s.match_threshold!==void 0||s.collapse_segments!==void 0||s.auto_tag_match!==void 0&&s.auto_tag_match!==!0||Ce(s.llm_matched_node_ids)||Ce(s.suppressed_auto_node_ids)||s.semantic_weight!==void 0||s.audio_clamp3_weight!==void 0||s.audio_langbind_weight!==void 0||s.structured_weight!==void 0||Ce(s.origin_platforms)||Ge(s.stock_filters)||Ge(s.stock_provider_filters)||s.stock_sort!==void 0||Ge(s.signals))}function Sn(){const s=document.querySelector("[data-testid='video-grid']");if(!s)return null;const t=s.getBoundingClientRect();return t.height<=0?null:Math.max(0,Math.min(100,(window.innerHeight-t.top)/t.height*100))}function Dn(s,t){const n=r.useRef(0),o=r.useRef(0);r.useEffect(()=>{n.current=0,o.current=0},[t]),r.useEffect(()=>{if(!s)return;const l=()=>{const a=Sn();if(a===null)return;const N=Date.now();ga(n.current,o.current,a,N)&&(n.current=a,o.current=N,at("scroll_depth",{percent:Number(a.toFixed(1))}))};return l(),window.addEventListener("scroll",l,{passive:!0}),window.addEventListener("resize",l),()=>{window.removeEventListener("scroll",l),window.removeEventListener("resize",l)}},[s,t])}function En(s){try{const t=new URL(s.trim());return t.protocol==="http:"||t.protocol==="https:"}catch{return!1}}function yn(s){const t=s.trim(),n=En(t);return{...nt({queryKey:["searchByUrl",t],queryFn:()=>Sa(t),enabled:n,retry:!1}),isUrlQuery:n}}function kn({onOpenImageSearch:s}){return e.jsxDEV("div",{role:"status","data-testid":"url-search-not-in-corpus",className:"flex items-center justify-between gap-3 flex-wrap mb-3 px-3 py-2.5 rounded-md bg-surface-highlight border border-border-dark text-sm text-text-secondary",children:[e.jsxDEV("span",{children:"이 영상은 아직 코퍼스에 없어요. 프레임을 캡처해 이미지로 찾기를 써 보세요"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/UrlJumpNotice.t
2sx",lineNumber:14,columnNumber:7},this),e.jsxDEV("button",{type:"button",onClick:s,"data-testid":"url-search-open-image",className:"flex items-center gap-1.5 px-3 py-1.5 text-xs font-medium rounded-md bg-surface-highlight border border-border-dark text-text-secondary hover:text-primary hover:border-primary/40 transition-all",children:[e.jsxDEV("span",{className:"material-symbols-outlined text-sm",children:"image_search"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/UrlJumpNotice.tsx",lineNumber:24,columnNumber:9},this),"이미지로 찾기"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/UrlJumpNotice.tsx",lineNumber:18,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/UrlJumpNotice.tsx",lineNumber:9,columnNumber:5},this)}const jn={semantic:"var(--ax-usage)",structured:"var(--ax-element)",audio_clamp3:"var(--ax-medium)",audio_langbind:"var(--ax-technique)"};function Vn({signals:s,offSignals:t=[],tagIntensityFactor:n,className:o=""}){if(s.length===0&&t.length===0)return null;const l=typeof n=="number"&&Number.isFinite(n);return e.jsxDEV("div",{className:`mreasons ${o}`,"data-testid":"match-reasons-panel",children:[e.jsxDEV("div",{className:"mreasons-head",children:"매칭 근거: 신호 기여 비율"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:51,columnNumber:7},this),s.length>0&&e.jsxDEV("div",{className:"mreasons-bars","data-testid":"signal-bars",children:s.map(a=>e.jsxDEV("div",{className:"mreasons-row","data-testid":`signal-${a.key}`,title:`RRF 기여 ${a.value.toFixed(4)}`,children:[e.jsxDEV("span",{className:"code",children:a.code},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:61,columnNumber:15},this),e.jsxDEV("span",{className:"mreasons-label",children:a.label},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:62,columnNumber:15},this),e.jsxDEV("div",{className:"mreasons-track",children:e.jsxDEV("div",{className:"mreasons-fill",style:{width:`${Math.round(a.proportion*100)}%`,background:jn[a.key]??"var(--ax-usage)"}},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:64,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:63,columnNumber:15},this),e.jsxDEV("span",{className:"mreasons-pct",children:[Math.round(a.proportion*100),"%"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:72,columnNumber:15},this)]},a.key,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:55,columnNumber:13},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:53,columnNumber:9},this),l&&e.jsxDEV("div",{className:"mreasons-intensity","data-testid":"tag-intensity-factor",children:[e.jsxDEV("span",{className:"code",children:"TAG"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:81,columnNumber:11},this),e.jsxDEV("span",{children:["정도(intensity) 가중 ×",n.toFixed(2),n>=.999?" · 정도가 순위를 낮추지 않음(강/부재)":" · 낮은 정도로 순위 하향"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:82,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:80,columnNumber:9},this),t.length>0&&e.jsxDEV("div",{className:"mreasons-off","data-testid":"excluded-signals",children:[e.jsxDEV("span",{children:"제외된 신호"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:92,columnNumber:11},this),t.map(a=>e.jsxDEV("span",{className:"oc","data-testid":`excluded-signal-${a.code.toLowerCase()}`,children:[a.code," ",a.name," · 꺼짐"]},a.code,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:94,columnNumber:13},this))]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:91,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/MatchReasonsPanel.tsx",lineNumber:50,columnNumber:5},this)}function ur(s){const t=Math.floor(s/60),n=Math.floor(s%60);return`${t}:${n.toString().padStart(2,"0")}`}function _n({video:s,segment:t,onClick:n,rank:o,page:l,pageSize:a}){const N=t.keyframe_url||s.thumbnail_url||"/placeholder.jpg",D=Math.round((1-t.distance)*100),v=t.tags??[],m=gr(),y=x=>{x.preventDefault(),n==null||n(s.id,{rank:o,page:l,pageSize:a,surface:"segment_grid"})},S=(x,u)=>{x.preventDefault(),x.stopPropagation(),m(`/search?taxonomyNodeIds=${u}`)};return e.jsxDEV("button",{type:"button",className:"group w-full text-left bg-card-dark rounded-xl overflow-hidden shadow-sm hover:shadow-xl border border-border-dark hover:border-primary/50 transition-all duration-300 flex flex-col","data-testid":"segment-card","data-vi
2deo-id":s.id,onClick:y,children:[e.jsxDEV("div",{className:"relative w-full aspect-video bg-surface-dark overflow-hidden",children:[e.jsxDEV("div",{className:"absolute inset-0 bg-cover bg-center transition-transform duration-700 group-hover:scale-105",style:{backgroundImage:`url('${N}')`},role:"img","aria-label":s.title},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:125,columnNumber:9},this),e.jsxDEV("div",{className:"absolute inset-0 bg-black/40 opacity-0 group-hover:opacity-100 transition-opacity duration-300 flex items-center justify-center",children:e.jsxDEV("span",{className:"material-symbols-outlined text-white text-4xl",children:"play_circle"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:132,columnNumber:11},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:131,columnNumber:9},this),e.jsxDEV("span",{className:"absolute top-2 left-2 bg-black/60 backdrop-blur-md text-white text-[10px] font-bold px-2 py-0.5 rounded z-10 flex items-center gap-1",children:[e.jsxDEV("span",{className:"material-symbols-outlined text-[10px]",children:"film"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:137,columnNumber:11},this),ur(t.start_sec)," -"," ",ur(t.end_sec)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:136,columnNumber:9},this),D>0&&e.jsxDEV("span",{className:"absolute top-2 right-2 bg-primary/90 backdrop-blur-md text-white text-[10px] font-bold px-2 py-0.5 rounded z-10",children:[D,"% 구간매칭"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:142,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:124,columnNumber:7},this),e.jsxDEV("div",{className:"p-3",children:[e.jsxDEV("h3",{className:"text-sm font-bold text-white line-clamp-1",children:Ea(s)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:148,columnNumber:9},this),s.channel_name&&e.jsxDEV("p",{className:"text-xs text-text-secondary mt-0.5 truncate",children:s.channel_name},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:152,columnNumber:11},this),v.length>0&&e.jsxDEV("div",{className:"flex flex-wrap items-center gap-1 mt-1.5","data-testid":"segment-card-tags",children:[v.slice(0,3).map(x=>e.jsxDEV(ya,{nodeId:x.node_id,children:e.jsxDEV("span",{className:"ctag",role:"button",tabIndex:0,"data-testid":`segment-card-tag-${x.node_id}`,style:{"--axc":qe(x.view_id).color},onClick:u=>S(u,x.node_id),onKeyDown:u=>{(u.key==="Enter"||u.key===" ")&&S(u,x.node_id)},children:[e.jsxDEV("span",{className:"xa",children:qe(x.view_id).label},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:178,columnNumber:19},this),x.name_ko]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:166,columnNumber:17},this)},x.node_id,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:165,columnNumber:15},this)),v.length>3&&e.jsxDEV("span",{className:"ctag more",children:["+",v.length-3]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:184,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:160,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:147,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:117,columnNumber:5},this)}const Rn={channel_name:"채널",credit_name:"크레딧",song_title:"곡",artist_name:"아티스트",description:"설명"};function Cn({matchedVia:s}){const t=(s??[]).filter(n=>n.surface!=="title");return t.length===0?null:e.jsxDEV("div",{className:"flex flex-wrap items-center gap-1 mt-1","data-testid":"meta-match-badges",children:[t.slice(0,2).map((n,o)=>e.jsxDEV("span",{className:"inline-flex max-w-full items-center gap-1 rounded border border-primary/25 bg-primary/10 px-1.5 py-0.5 text-[10px] text-primary/90",title:n.surface==="description"?void 0:n.value,"data-testid":`meta-match-badge-${n.surface}`,children:[e.jsxDEV("span",{className:"shrink-0 font-semibold",children:Rn[n.surface]??n.surface},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:228,columnNumber:11},this),n.surface!=="description"&&e.jsxDEV("span",{className:"truncate",children:n.value},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:232,columnNumber:13},this)]},`${n.surface}-${o}`,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:222,columnNumber:9},this)),t.length>2&&e.jsxDEV("span",{className:"text-[10px] text-text-muted",children:["+",t.length-2]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:237,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:217,columnNumber:5},this)}function Ys({video:s,offSignalsList:t}){return e.jsxDEV(e.Fragment,{children:[e.jsxDEV(Cn,{matchedVia:s.matched_via},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:260,columnNumber:7},this),e.jsxDEV(Vn,{signals:Xa(s.match_reasons),offSignals:t,tagIntensityFactor:s.tag_intensity_factor,className:"mt-1 mb-2"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:261,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:258,columnNumber:5},this)}function $n({video:s,signatureSpec:t,signatureStyles:n,signatureSegments:o,onArtistClick:l,showTags:a,feedbackMode:N,feedbackScore:D,onFeedbackScoreChange:v,rank:m,page:y,pageSize:S,searchOrigin:x}){const u=s.overall_match_ratio!=null?Math.round(s.overall_match_ratio*100):null;return e.jsxDEV("div",{className:"relative",children:[e.jsxDEV(Zs,{video:s,signatureSpec:t,signatureStyles:n,signatureSegments:o,onArtistClick:l,showTags:a,feedbackMode:N,feedbackScore:D,onFeedbackScoreChange:v,rank:m,page:y,pageSize:S,searchOrigin:x},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:311,columnNumber:7},this),u!=null&&e.jsxDEV("span",{className:"absolute top-2 right-2 z-20 bg-primary/90 backdrop-blur-md text-white text-[10px] font-bold px-2 py-0.5 rounded pointer-events-none",children:[u,"% 전체매칭"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:327,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:310,columnNumber:5},this)}function Mn({displayVideos:s,settings:t,resultPageSize:n,searchGridSignatures:o,searchGridSignatureStyles:l,searchGridSignatureSegments:a,handleVideoClick:N,handleArtistClick:D,feedbackMode:v,feedbackScores:m,setFeedbackScore:y,resultSearchOrigin:S,explain:x,offSignalsList:u,imageSearchActive:R,tagConnectionNodeIds:f}){return e.jsxDEV(Da,{nodeIds:f,children:e.jsxDEV("div",{className:"grid media-grid","data-testid":"video-grid",children:t.displayMode==="hybrid"?(()=>{let j=0;return s.flatMap(p=>{const V=p.matched_segments;if(!!V&&V.length>0&&(p.display_type==="segment"||!t.collapseSegments&&V.length>1)&&V)return V.map((_,$)=>{j+=1;const T=j;return e.jsxDEV(_n,{video:p,segment:_,onClick:N,rank:T,page:Math.floor((T-1)/n)+1,pageSize:n},`seg-${p.id}-${_.segment_index}-${$}`,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:384,columnNumber:23},this)});if(p.display_type==="video"){j+=1;const _=j;return[e.jsxDEV("div",{children:[e.jsxDEV($n,{video:p,signatureSpec:o[p.id],signatureStyles:l,signatureSegments:a[p.id],onArtistClick:D,showTags:t.showCardTags,feedbackMode:v,feedbackScore:m[p.id],onFeedbackScoreChange:$=>y(p.id,$),searchOrigin:S,rank:_,page:Math.floor((_-1)/n)+1,pageSize:n},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:401,columnNumber:23},this),x&&e.jsxDEV(Ys,{video:p,offSignalsList:u},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:421,columnNumber:25},this)]},`video-${p.id}`,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:400,columnNumber:21},this)]}j+=1;const L=j;return[e.jsxDEV("div",{children:[e.jsxDEV(Zs,{video:p,signatureSpec:o[p.id],signatureStyles:l,signatureSegments:a[p.id],onArtistClick:D,showTags:t.showCardTags,feedbackMode:v,feedbackScore:m[p.id],onFeedbackScoreChange:_=>y(p.id,_),searchOrigin:S,rank:L,page:Math.floor((L-1)/n)+1,pageSize:n},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:435,columnNumber:21},this),x&&e.jsxDEV(Ys,{video:p,offSignalsList:u},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:453,columnNumber:23},this)]},`video-${p.id}`,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:434,columnNumber:19},this)]})})():s.map((j,p)=>e.jsxDEV("div",{children:[e.jsxDEV(Zs,{video:j,signatureSpec:o[j.id],signatureStyles:l,signatureSegments:a[j.id],onArtistClick:D,showTags:t.showCardTags,feedbackMode:v,feedbackScore:m[
2j.id],onFeedbackScoreChange:V=>y(j.id,V),searchOrigin:S,rank:p+1,page:Math.floor(p/n)+1,pageSize:n,observationSurface:R?"image_grid":"grid"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:464,columnNumber:17},this),x&&e.jsxDEV(Ys,{video:j,offSignalsList:u},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:486,columnNumber:19},this)]},j.id,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:463,columnNumber:15},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:355,columnNumber:7},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultGrid.tsx",lineNumber:354,columnNumber:5},this)}function dr(s){return s.item_id||s.id}const Pr={loading:"영상 링크로 찾는 중…",found:"코퍼스에서 이 영상을 찾았어요",missing:"이 링크의 영상은 코퍼스에 없어요",error:"링크를 확인하지 못했어요"},Ln=r.lazy(()=>ja(()=>import("./Search3DView-CxrlkpNG.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11])));function Fn({t:s,displaySearchError:t,searchError:n,refetchSearch:o,clearFilters:l,viewMode:a,displayVideos:N,displayTotal:D,imageSearchActive:v,hasNextPage:m,isFetchingNextPage:y,fetchNextPage:S,handleVideoClick:x,axes3d:u,setAxes3d:R,displayLoading:f,urlSearchActive:j,urlJumpState:p,urlJumpMatchId:V,urlJumpedItemRef:C,saveOverlayScrollForKey:L,safeSessionStorage:_,location:$,navigate:T,searchParams:d,setSearchParams:k,zeroResultSuggestions:Q,matchedGlossaryTerms:M,rerunQuerySuggestion:w,setQuery:i,unsupportedFilters:h,tagConnectionNodeIds:O,sentinelRef:F,settings:z,resultPageSize:q,searchGridSignatures:P,searchGridSignatureStyles:W,searchGridSignatureSegments:de,handleArtistClick:B,feedbackMode:X,feedbackScores:Z,setFeedbackScore:te,resultSearchOrigin:le,explain:oe,offSignalsList:ee}){return e.jsxDEV(e.Fragment,{children:[t?e.jsxDEV("div",{className:"empty-state","data-testid":"search-error",children:[e.jsxDEV("div",{className:"empty-icon material-symbols-outlined",children:"cloud_off"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:156,columnNumber:11},this),e.jsxDEV("h2",{children:s("search.failure")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:157,columnNumber:11},this),e.jsxDEV(ka,{error:n,subject:"검색 ê²°ê³¼",size:"inline",showTitle:!1,testId:"search-error-reason"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:161,columnNumber:11},this),e.jsxDEV("div",{className:"empty-actions",children:[e.jsxDEV("button",{type:"button",onClick:()=>void o(),className:"btn primary","data-testid":"search-error-retry",children:s("search.retry")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:169,columnNumber:13},this),e.jsxDEV("button",{type:"button",onClick:l,className:"btn","data-testid":"search-error-clear-filters",children:s("search.reset_filters")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:177,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:168,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:155,columnNumber:9},this):a==="3d"?e.jsxDEV("div",{className:"v41 e3d-frame",children:e.jsxDEV(r.Suspense,{fallback:e.jsxDEV("div",{className:"e3d-stage",style:{display:"grid",placeItems:"center"},"data-testid":"search-3d-chunk-loading",children:e.jsxDEV("span",{className:"tiny muted",children:"3D ë·° 준비 중…"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:201,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:196,columnNumber:15},this),children:e.jsxDEV(Ln,{videos:N,total:D,hasNextPage:v?!1:!!m,isFetchingNextPage:y,onLoadMore:()=>{S()},onOpenDetail:x,axes:u,onAxesChange:R},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:205,columnNumber:13},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:194,columnNumber:11},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:193,columnNumber:9},this):f?e.jsxDEV("div",{className:"grid media-grid",children:Array.from({length:8}).map((se,Se)=>e.jsxDEV("div",{className:"card-skeleton animate-pulse",children:[e.jsxDEV("div",{className:"sk-thumb"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:223,columnNumber:15},this),e.jsxDEV("div",{className:"sk-line"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:224,columnNumber:15},this),e.jsxDEV("div",{className:"sk-line short"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:225,columnNumber:15},this)]},Se,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:222,columnNumber:13},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:220,columnNumber:9},this):j?e.jsxDEV("div",{className:"empty-state","data-testid":"url-search-grid-state",children:[e.jsxDEV("div",{className:"empty-icon material-symbols-outlined",children:"link"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:235,columnNumber:11},this),e.jsxDEV("h2",{children:p==="found"?"이 영상의 상세를 열었어요":Pr[p]},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:236,columnNumber:11},this),e.jsxDEV("p",{className:"empty-sub",children:p==="found"?"상세를 닫아도 이 자리에 남습니다. 아래에서 다시 열 수 있어요.":p==="missing"?"프레임을 캡처해 「이미지」로 찾거나, 키워드로 검색해 보세요.":p==="error"?"링크 조회가 실패했습니다. 잠시 뒤 다시 시도하거나 키워드로 검색해 보세요.":"링크에서 영ìƒ
2ì„ 알아내는 중입니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:241,columnNumber:11},this),e.jsxDEV("div",{className:"empty-actions",children:[V&&e.jsxDEV("button",{type:"button",className:"btn primary","data-testid":"url-search-reopen",onClick:()=>{C.current=null,L($.key,window.scrollY,_()),T(`/video/${V}`,{state:{background:$}})},children:"상세 다시 열기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:252,columnNumber:15},this),e.jsxDEV("button",{type:"button",className:"btn","data-testid":"url-search-clear",onClick:()=>{i("");const se=new URLSearchParams(d);se.delete("q"),k(se,{replace:!0})},children:"링크 지우고 전체 둘러보기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:271,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:250,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:234,columnNumber:9},this):N.length===0?e.jsxDEV("div",{className:"empty-state","data-testid":"no-results",children:[e.jsxDEV("div",{className:"empty-icon material-symbols-outlined",children:"videocam_off"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:288,columnNumber:11},this),e.jsxDEV("h2",{children:"검색 결과가 없습니다"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:291,columnNumber:11},this),e.jsxDEV("p",{className:"empty-sub",children:"필터나 검색어를 조정해 보세요"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:292,columnNumber:11},this),(Q.length>0||M.length>0)&&e.jsxDEV("div",{className:"empty-suggestions","data-testid":"no-results-query-suggestions",children:[e.jsxDEV("p",{className:"tiny muted",children:s("search.zero_suggestions")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:299,columnNumber:15},this),e.jsxDEV("div",{children:[Q.map(se=>e.jsxDEV("button",{type:"button",className:"chip",onClick:()=>w(se),"data-testid":"no-results-query-chip",children:se},se,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:302,columnNumber:19},this)),M.map(se=>e.jsxDEV("button",{type:"button",className:"chip include",onClick:()=>w(se),"data-testid":"no-results-glossary-chip",children:se},`glossary-${se}`,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:313,columnNumber:19},this))]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:300,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:295,columnNumber:13},this),(ee.length>0||h&&h.length>0)&&e.jsxDEV("div",{className:"empty-reason","data-testid":"no-results-reason",children:[ee.length>0&&e.jsxDEV("p",{"data-testid":"no-results-off-signals",children:["꺼진 신호:"," ",ee.map(se=>`[${se.code}] ${se.name}`).join(", ")," ","· 데크에서 다시 켜면 결과가 늘어날 수 있습니다"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:334,columnNumber:17},this),h&&h.length>0&&e.jsxDEV("p",{"data-testid":"no-results-unsupported-filters",children:"일부 필터는 서버가 적용하지 않았습니다. 위 경고 참고"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:343,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:332,columnNumber:13},this),e.jsxDEV("div",{className:"empty-actions",children:[e.jsxDEV("button",{onClick:l,className:"btn primary",children:"필터 초기화"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:350,columnNumber:13},this),e.jsxDEV(Sr,{to:"/glossary",className:"btn","data-testid":"no-results-glossary-link",children:["연출 사전에서 찾아보기"," ",e.jsxDEV(ie,{name:"arrow",className:"v2-inline"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:359,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:353,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:349,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:287,columnNumber:9},this):e.jsxDEV(Mn,{displayVideos:N,settings:z,resultPageSize:q,searchGridSignatures:P,searchGridSignatureStyles:W,searchGridSignatureSegments:de,handleVideoClick:x,handleArtistClick:B,feedbackMode:X,feedbackScores:Z,setFeedbackScore:te,resultSearchOrigin:le,explain:oe,offSignalsList:ee,imageSearchActive:v,tagConnectionNodeIds:O},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:364,columnNumber:9},this),a!=="3d"&&e.jsxDEV("div",{ref:F,"aria-hidden":"true",className:"h-1"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:387,columnNumber:9},this),a!=="3d"&&y&&e.jsxDEV("div",{className:"search-more-spinner",children:e.jsxDEV("i",{"aria-hidden":"true"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:392,columnNumber:11},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:391,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchResultBody.tsx",lineNumber:153,columnNumber:5},this)}function Tn({query:s}){const{t}=Be(),n=s.trim(),{isEnabled:o}=Dr(),l=o("artist_search_result"),a=n.length>=2&&l,{data:N}=nt({queryKey:["artist-shortcuts",n],queryFn:()=>Va({q:n,limit:3}),enabled:a,staleTime:6e4}),D=(N==null?void 0:N.artists)??[];return!a||D.length===0?null:e.jsxDEV("div",{className:"artist-shortcuts","data-testid":"artist-shortcuts",children:[e.jsxDEV("span",{className:"ash-label",children:"아티스트"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:45,columnNumber:7}
2,this),D.map(v=>e.jsxDEV(Sr,{to:`/artists/${v.id}`,className:"ash-card","data-testid":`artist-shortcut-${v.id}`,children:[v.thumbnail_url&&e.jsxDEV("span",{className:"ash-ava",children:e.jsxDEV("img",{src:v.thumbnail_url,alt:"",loading:"lazy"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:58,columnNumber:15},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:57,columnNumber:13},this),e.jsxDEV("span",{className:"ash-meta",children:[e.jsxDEV("span",{className:"ash-name",children:[v.name,v.is_verified&&e.jsxDEV("span",{className:"ash-veri",title:"검증된 아티스트","aria-label":"검증된 아티스트",children:e.jsxDEV("svg",{viewBox:"0 0 16 16",width:"9",height:"9",fill:"none",children:e.jsxDEV("path",{d:"M3.5 8.5l3 3 6-6.5",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:72,columnNumber:21},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:71,columnNumber:19},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:66,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:62,columnNumber:13},this),e.jsxDEV("span",{className:"ash-sub",children:v.video_count>0?`레퍼런스 ${v.video_count}`:t("artists.no_public_refs")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:83,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:61,columnNumber:11},this),e.jsxDEV("span",{className:"ash-go","aria-hidden":"true",children:e.jsxDEV(ie,{name:"arrow"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:91,columnNumber:13},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:90,columnNumber:11},this)]},v.id,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:47,columnNumber:9},this))]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/ArtistShortcuts.tsx",lineNumber:44,columnNumber:5},this)}const Bi=["x","y","z"],Pn=["none","time","valence","arousal","usage"],ps={x:"none",y:"none",z:"time"};function An(s){return s.x===ps.x&&s.y===ps.y&&s.z===ps.z}function In(s){return An(s)?null:`x:${s.x},y:${s.y},z:${s.z}`}function On(s){if(!s)return{...ps};const t={...ps};for(const n of s.split(",")){const[o,l]=n.split(":");(o==="x"||o==="y"||o==="z")&&Pn.includes(l)&&(t[o]=l)}return t}const Bn=[{id:"relevance",label:"관련도",title:"매칭 점수순"},{id:"recent",label:"최신",title:"최근 수집순 (플랫폼 게시일 아님)"},{id:"published",label:"게시일",title:"원본 게시일순 (플랫폼 업로드/트윗 시각)"},{id:"duration",label:"영상 길이",title:"영상 길이순"}];function Un(s){return s==="recent"||s==="duration"||s==="published"?s:"relevance"}const xs={semantic:.25,audioClamp3:.2,audioLangbind:.15,structured:.2},rt={bpmMin:60,bpmMax:200,segmentTypes:[],syncType:void 0},fs={selectedColors:[],hueRange:[0,360],saturationRange:[0,100],brightnessRange:[0,100],colorTemperature:null,coverage:"partial"};function Hn(s,t){const n=s.get("q")||"",o=(()=>{const d=s.get("prefer_title_scripts");return d?d.split(",").filter(Boolean):t.preferTitleScripts??[]})(),l=(()=>{const d=s.get("exclude_title_scripts"),k=d?d.split(",").filter(Boolean):t.excludeTitleScripts??[];return o.includes("ja")?k.filter(Q=>Q!=="ja"):k})(),a=(()=>{const d=s.get("spectrumRanges");if(d)try{return JSON.parse(d)}catch{return{}}return{}})(),N=(()=>{const d=s.get("artistQuery");return d||(s.get("artistId")?"":s.get("artistName")??"")})(),D=(()=>{const d=s.get("artistId");return d?{id:d,name:s.get("artistName")??""}:null})(),v=(()=>{const d=s.get("song");return d?{id:d}:null})(),m=Un(s.get("sort")),y=s.get("view")==="3d"?"3d":"grid",S=On(s.get("axes")),x=(()=>{const d=M=>!!M&&/^\d{4}-\d{2}-\d{2}$/.test(M),k=s.get("dateFrom"),Q=s.get("dateTo");return{dateFrom:d(k)?k:void 0,dateTo:d(Q)?Q:void 0}})(),u=(()=>{const d=s.get("openAxis");return d&&Qe.includes(d)?d:void 0})(),R=(()=>{const d=s.get("weights");if(d)try{return JSON.parse(d)}catch{return xs}return xs})(),f=(()=>{const d=s.get("audioFilter");if(d)try{return JSON.parse(d)}catch{return rt}return rt})(),j=(()=>{const d=s.get("colorFilter");if(d)try{return{...fs,...JSON.parse(d)}}catch{return fs}return fs})(),p=(()=>
2{const d=s.get("taxonomyNodeIds"),k=d?d.split(",").filter(Boolean):[],Q=s.get("taxonomy_prefer_node_ids"),M=Q?Q.split(",").filter(Boolean):[];if(k.length===0&&M.length===0)return{selectedNodeIds:[]};let w={};const i=s.get("taxonomyDegrees");if(i)try{w=JSON.parse(i)}catch{w={}}for(const h of k)w[h]||(w[h]={min:ns,max:is});return{selectedNodeIds:k,preferNodeIds:M,degrees:w}})(),V=(()=>{const d=s.get("excludeTaxonomyNodeIds");return d?d.split(",").filter(Boolean):[]})(),C=(()=>{const d=s.get("suppressed");return d?d.split(",").filter(Boolean):[]})(),L=(()=>{const d=s.get("motionFilter");if(d)try{return JSON.parse(d)}catch{return{}}return{}})(),_=(()=>{const d=s.get("audioMood");return d?{moodText:d}:{}})(),$=s.get("explain")==="true",T=(()=>{const d=new Set((s.get("offSignals")??"").split(",").filter(Boolean));return{sem:!d.has("sem"),tag:!d.has("tag"),aud:!d.has("aud"),col:!d.has("col"),mot:!d.has("mot")}})();return{query:n,preferTitleScripts:o,excludeTitleScripts:l,spectrumRanges:a,artistQuery:N,artistSel:D,songFilter:v,sort:m,viewMode:y,axes3d:S,dateRange:x,initialOpenAxis:u,weights:R,audioFilter:f,colorFilter:j,taxonomyFilter:p,excludedNodeIds:V,suppressedAutoNodeIds:C,motionFilter:L,audioQuery:_,explain:$,signalsOn:T,committedSignalsOn:T}}function ne(s,t,n){const o=typeof n=="function"?n(s[t]):n;return Object.is(s[t],o)?s:{...s,[t]:o}}function Gn(s,t){const[n,o]=r.useState(()=>Hn(s,t)),l=r.useCallback(i=>{o(h=>ne(h,"query",i))},[]),a=r.useCallback(i=>{o(h=>ne(h,"preferTitleScripts",i))},[]),N=r.useCallback(i=>{o(h=>ne(h,"excludeTitleScripts",i))},[]),D=r.useCallback(i=>{o(h=>ne(h,"spectrumRanges",i))},[]),v=r.useCallback(i=>{o(h=>ne(h,"artistQuery",i))},[]),m=r.useCallback(i=>{o(h=>ne(h,"artistSel",i))},[]),y=r.useCallback(i=>{o(h=>ne(h,"songFilter",i))},[]),S=r.useCallback(i=>{o(h=>ne(h,"sort",i))},[]),x=r.useCallback(i=>{o(h=>ne(h,"viewMode",i))},[]),u=r.useCallback(i=>{o(h=>ne(h,"axes3d",i))},[]),R=r.useCallback(i=>{o(h=>ne(h,"dateRange",i))},[]),f=r.useCallback(i=>{o(h=>ne(h,"weights",i))},[]),j=r.useCallback(i=>{o(h=>ne(h,"audioFilter",i))},[]),p=r.useCallback(i=>{o(h=>ne(h,"colorFilter",i))},[]),V=r.useCallback(i=>{o(h=>ne(h,"taxonomyFilter",i))},[]),C=r.useCallback(i=>{o(h=>ne(h,"excludedNodeIds",i))},[]),L=r.useCallback(i=>{o(h=>ne(h,"suppressedAutoNodeIds",i))},[]),_=r.useCallback(i=>{o(h=>ne(h,"motionFilter",i))},[]),$=r.useCallback(i=>{o(h=>ne(h,"audioQuery",i))},[]),T=r.useCallback(i=>{o(h=>ne(h,"explain",i))},[]),d=r.useCallback(i=>{o(h=>ne(h,"signalsOn",i))},[]),k=r.useCallback(i=>{o(h=>ne(h,"committedSignalsOn",i))},[]),Q=r.useRef(null),M=r.useRef(typeof window>"u"?null:new URLSearchParams(window.location.search).get("flagOverride")),w=s.has("showAiUsage")?s.get("showAiUsage")==="1":t.showAiUsage===!0;return{state:n,setQuery:l,setPreferTitleScripts:a,setExcludeTitleScripts:N,setSpectrumRanges:D,setArtistQuery:v,setArtistSel:m,setSongFilter:y,setSort:S,setViewMode:x,setAxes3d:u,setDateRange:R,setWeights:f,setAudioFilter:j,setColorFilter:p,setTaxonomyFilter:V,setExcludedNodeIds:C,setSuppressedAutoNodeIds:L,setMotionFilter:_,setAudioQuery:$,setExplain:T,setSignalsOn:d,setCommittedSignalsOn:k,lastWrittenQRef:Q,devFlagOverrideRef:M,showAiUsage:w}}function Qn(s,t,n){r.useEffect(()=>{const o=s.get("q")??"";t.current!==o&&(t.current=o,n(l=>l===o?l:o))},[s,t,n])}function qn(s){const t=s.get("duration"),n=t==="short"||t==="one_to_three"||t==="over_three"?t:"all",o=s.get("monochrome")==="true",l=s.get("orientation");return{durationPreset:n,monochrome:o,orientation:l==="vertical"||l==="horizontal"?l:void 0}}function zn(s,t){return r.useCallback((o,l)=>{const a=new URLSearchParams(s);l?a.set(o,l):a.delete(o),t(a)},[s,t])}function Kn({state:s,showAiUsage:t,recognizedChipsEnabled:n,durationPreset:o,monochrome:l,orientation:a,setSearchParams:N,maskedByOverlay:D,lastWrittenQRef:v,devFlagOverrideRef:m}){const{query:y,preferTitleScripts:S,excludeTitleScripts:x,spectrumRanges:u,artistQuery:R,artistSel:f,songFilter:j,sort:p,viewMode:V,axes3d:C,dateRange:L,initialOpenAxis:_,weights:$,audioFilter:T,colorFilter:d,taxonomyFilter:k,excludedNodeIds:Q,suppressedAutoNodeIds:M,motionFilter:w,audioQuery:i,explain:h,signalsOn:O}=s;r.useEffect(()=>{if(D)return;const F=new URLSearchParams;
2F.set("showAiUsage",t?"1":"0"),y&&F.set("q",y),v.current=y,Object.keys(u).length>0&&F.set("spectrumRanges",JSON.stringify(u)),Cr($,xs)&&F.set("weights",JSON.stringify($)),ct(T)&&F.set("audioFilter",JSON.stringify(T)),bs(d)&&F.set("colorFilter",JSON.stringify(d)),Object.keys(w).length>0&&F.set("motionFilter",JSON.stringify(w));const z=en(k,Q,S,x);for(const[P,W]of Object.entries(z))F.set(P,W);if(k.selectedNodeIds.length>0){const P=k.degrees??{},W={};for(const de of k.selectedNodeIds){const B=P[de];B&&(B.min!==ns||B.max!==is)&&(W[de]=B)}Object.keys(W).length>0&&F.set("taxonomyDegrees",JSON.stringify(W))}i.moodText&&F.set("audioMood",i.moodText),h&&F.set("explain","true");const q=ts.filter(P=>!O[P]);if(q.length>0&&F.set("offSignals",q.join(",")),p!=="relevance"&&F.set("sort",p),L.dateFrom&&F.set("dateFrom",L.dateFrom),L.dateTo&&F.set("dateTo",L.dateTo),o!=="all"&&F.set("duration",o),l&&F.set("monochrome","true"),a&&F.set("orientation",a),f?(F.set("artistId",f.id),f.name&&F.set("artistName",f.name)):R.trim()&&F.set("artistQuery",R.trim()),j&&F.set("song",j.id),_&&F.set("openAxis",_),V==="3d"){F.set("view","3d");const P=In(C);P&&F.set("axes",P)}n&&M.length>0&&F.set("suppressed",M.join(",")),m.current&&F.set("flagOverride",m.current),!(typeof window<"u"&&_a(F,new URLSearchParams(window.location.search)))&&N(F,{replace:!0})},[y,u,$,T,d,w,k,Q,t,n,M,S,x,i.moodText,h,O,p,L,o,l,a,f,R,j,_,V,C,N,D,v,m])}function Wn({state:s,facets:t,searchPayloadV3:n,firstPage:o,imageSearch:l,imageSearchActive:a,urlJumpSearch:N,urlSearchActive:D,isLoading:v,isFetching:m,isFetchingNextPage:y,isSearchError:S,totalResults:x,includeProcess:u,mediaShortcutModes:R,t:f}){var Ve;const{query:j,spectrumRanges:p,weights:V,audioFilter:C,colorFilter:L,dateRange:_,motionFilter:$,audioQuery:T,artistSel:d,artistQuery:k,songFilter:Q,preferTitleScripts:M,excludeTitleScripts:w,taxonomyFilter:i,excludedNodeIds:h,committedSignalsOn:O}=s,{durationPreset:F,monochrome:z,orientation:q}=t,P=o==null?void 0:o.unsupported_filters,W=!!(P&&P.length>0),de=(P??[]).map(Ne=>({field:Ne,...Ya(Ne)})),B="⚠ 서버가 적용하지 않은 필터",X=(o==null?void 0:o.ml_status)==="loading",Z=(o==null?void 0:o.ml_status)==="unavailable",te=(o==null?void 0:o.ml_status_message)||"임베딩 모델을 불러오는 중입니다. 지금은 단순 텍스트 검색 결과입니다.",le=(o==null?void 0:o.ml_status_message)||(o!=null&&o.text_fallback?"ML 서비스에 연결할 수 없습니다. 지금 결과는 제목/채널명 기준 단순 텍스트 검색입니다.":"ML 서비스에 연결할 수 없습니다."),oe=s.sort!=="relevance"&&(o==null?void 0:o.sort_scope)==="candidates",ee="이 정렬은 관련도로 추려진 상위 후보(top-K) 안에서만 적용됩니다. 코퍼스 전체 최신순·영상 길이순이 아닙니다.",se="후보 창 내 정렬",Se=l.error instanceof rr,I=l.error instanceof rr?l.error.message:l.error?_s(l.error,{subject:"이미지 검색 결과"}):null,A=a?l.isFetching:v,re=m&&!v&&!y,fe=l.isFetching&&!l.isLoading&&!!l.data,ce=a?fe:re,g=!a&&S,Y=a?((Ve=l.data)==null?void 0:Ve.total)??0:x,K=!!d||!!k.trim(),he=(d?d.name||d.id:k.trim())||"",ue=Cr(V,xs),ke=ct(C),ae=bs(L),xe=!!(_.dateFrom||_.dateTo),me=(j?1:0)+Object.keys(p).length+(ue?1:0)+(ke?1:0)+(xe?1:0)+(ae?1:0)+(F!=="all"?1:0)+(z?1:0)+(q?1:0)+(Ns($)?1:0)+(T.audioFile||T.moodText?1:0)+(K?1:0)+(Q?1:0)+(M.length+w.length>0?1:0)+(u?1:0)+(a?1:0),ve=new Set([...i.selectedNodeIds,...i.preferNodeIds??[],...h]).size,b=me+ve===0,G=me-(j?1:0)+ve,J=r.useMemo(()=>ts.filter(Ne=>!O[Ne]).map(Ne=>({code:Te[Ne].code,name:Te[Ne].name})),[O]),be=!!(n.query||n.taxonomyNodeIds||n.excludeTaxonomyNodeIds||n.colorFilter||n.motionFilter||n.audioQuery),we=D?N.data??null:null,ls=we&&we.found?we.match.item_id:null,cs=we?we.found?"found":"missing":N.isError?"error":"loading",Pe=o==null?void 0:o.process_posts_released,Ue=o==null?void 0:o.process_release_terms,$s=r.useMemo(()=>{const Ne=[];if(Pe){const je=(Ue??[]).slice(0,3).join("·");Ne.push({id:"process-posts-released",text:je?`작업 과정 게시물이 포함됐어요. 검색어에 「${je}」가 있어서 (체크박스와 무관)`:"작업 과정 게시물이 포함됐어요. 검색어가 작업 과정을 요청해서 (체크박스와 무관)",testId:"process-posts-released-hint"})}for(const je of et){if(je.slug==="doujin")continue;const Ae=R[je.slug];if(!Ae)continue;const _e=f(je.labelKey);Ne.push(Ae==="prefer"?{id:`media-prefer-${je.slug}`,text:`${_e} 우선 · 다른 매체는 아래로 밀립니다`,testId:`media-prefer-${je.slug}-hint`}:{id:`media-exclude-${je.slug}`,text:`${_e} 제외 · 해당 매체로 판정된 영상을 뺐습니다`,testId:`media-exclude-${je.slug}-hint`})}return M.includes("ja")?Ne.push({id:"prefer-title-ja",text:"일본 PV 우선 · 원제가 일본어인 영상을 먼저 보여줍니다",testId:"japanese-pv-prefer-hint"}):w.includes("ja")&&Ne.push({id:"exclude-title-ja",text:"일본 PV 제외 · 원제가 일본어인 영상을 뺐습니다",testId:"japanese-pv-exclude-hint"}
2),u&&Ne.push({id:"include-process",text:"작업 과정 게시물 포함",testId:"include-process-hint"}),Ne},[R,M,w,u,f,Pe,Ue]);return{showUnsupportedWarning:W,unsupportedFilterDescriptions:de,unsupportedFiltersWarningText:B,showMlLoadingNotice:X,showMlUnavailableNotice:Z,mlLoadingNoticeText:te,mlUnavailableNoticeText:le,showCandidateSortNotice:oe,candidateSortNoticeTitle:ee,candidateSortNoticeText:se,imageMlUnavailable:Se,imageErrorMessage:I,displayLoading:A,displayRefetching:ce,displaySearchError:g,displayTotal:Y,artistFilterOn:K,artistFilterName:he,colorFilterActive:ae,dateFilterOn:xe,activeFilterCount:me,mobileSelectionCount:ve,isDefaultBrowse:b,railFilterCount:G,offSignalsList:J,hasFiredSearchSignal:be,urlJumpMatchId:ls,urlJumpState:cs,URL_JUMP_COUNT_TEXT:Pr,statusHints:$s}}function Jn(){const[s,t]=r.useState(null),[n,o]=r.useState(null),[l,a]=r.useState(!1),N=r.useRef(null),D=r.useCallback(S=>{!S||!S.type.startsWith("image/")||(t(S),o(URL.createObjectURL(S)))},[]),v=r.useCallback(S=>{var x;D((x=S.target.files)==null?void 0:x[0]),S.target.value=""},[D]),m=r.useCallback(()=>{t(null),o(null),a(!1)},[]),y=r.useCallback(S=>{var x;S.preventDefault(),a(!1),D((x=S.dataTransfer.files)==null?void 0:x[0])},[D]);return r.useEffect(()=>{if(n)return()=>URL.revokeObjectURL(n)},[n]),{imageFile:s,imagePreviewUrl:n,isDraggingImage:l,setIsDraggingImage:a,fileInputRef:N,handleImageSelected:D,handleImageInputChange:v,clearImageSearch:m,handleImageDrop:y}}const Xn={rating:null,note:""};function Yn({request:s,key:t,conditions:n}){const o=structuredClone(s);return{key:t,context:o,conditions:[...n]}}function Vs(s,t,n){return{...s,[t]:n}}function Zn(s,t,n){return{context:structuredClone(s.context),conditions:[...s.conditions],rating:t.rating,note:t.note.trim(),idempotencyKey:n}}const ei={query:"context",includeProcess:"context",showAiUsage:"context",taxonomyNodeIds:"context",excludeTaxonomyNodeIds:"context",taxonomyPrefer:"context",preferTitleScripts:"context",excludeTitleScripts:"context",taxonomyDegrees:"context",sort:"context",displayMode:"context",contentKind:"context",artistId:"context",artistQuery:"context",songId:"context",dateFrom:"context",dateTo:"context",durationMinSec:"context",durationMaxSec:"context",monochrome:"context",orientation:"context",colorFilter:"context",motionFilter:"context",audioFilter:"context",audioQuery:"context",spectrumIds:"context",spectrumRanges:"context",sourceGroupIds:"context",tagLogic:"context",status:"context",matchThreshold:"context",collapseSegments:"context",autoTagMatch:"context",llmMatchedNodeIds:"context",suppressedAutoNodeIds:"context",semanticWeight:"context",audioClamp3Weight:"context",audioLangbindWeight:"context",structuredWeight:"context",originPlatforms:"context",stockFilters:"context",stockProviderFilters:"context",stockSort:"context",semanticEmbedding:"excluded",audioClamp3Embedding:"excluded",audioLangbindEmbedding:"excluded",page:"excluded",pageSize:"excluded",explain:"excluded",diversify:"excluded",stockSortSeed:"excluded"},si={taxonomy_node_ids:"포함 태그",exclude_taxonomy_node_ids:"제외 태그",taxonomy_prefer_node_ids:"우선 태그",taxonomy_degrees:"태그 정도",prefer_title_scripts:"선호 제목 문자",exclude_title_scripts:"제외 제목 문자",sort:"정렬",display_mode:"표시 방식",include_process:"작업 과정 포함",show_ai_usage:"AI 활용 영상 표시",content_kind:"콘텐츠 종류",artist_id:"아티스트",artist_query:"아티스트 검색",song_id:"원곡",date_from:"게시일 시작",date_to:"게시일 끝",duration_min_sec:"최소 길이(초)",duration_max_sec:"최대 길이(초)",monochrome:"흑백",orientation:"영상 방향",color_filter:"색상",motion_filter:"움직임",audio_filter:"오디오",audio_query:"오디오 검색",spectrum_ids:"스펙트럼",spectrum_ranges:"스펙트럼 범위",source_group_ids:"출처 그룹",tag_logic:"태그 결합",status:"상태",match_threshold:"매칭 기준",collapse_segments:"장면 묶기",auto_tag_match:"자동 태그 인식",llm_matched_node_ids:"언어 모델 인식 태그",suppressed_auto_node_ids:"무시한 인식 태그",semantic_weight:"텍스트 가중치",audio_clamp3_weight:"오디오 가중치",audio_langbind_weight:"오디오 언어 가중치",structured_weight:"구조 가중치",origin_platforms:"출처 플랫폼",stock_filters:"스톡 속성",stock_provider_filters:"공급원 검색 조건",stock_sort:"스톡 정렬",signals:"검색 신호"},ot={sort:"relevance",display_mode:"video",include_process:!1,show_ai_usage:!1,content_kind:"reference",auto_tag_match:!0,semantic_weight:.25,audio_clamp3_weight:.2,audio_langbind_weight:.15,structured_weight:.2},hr={sem:!0,tag:!0,aud:!0,col:!0,mot:!0,prs:!0,llm:!1},ti=new Set(["taxonomy_node_ids","exclude_taxonomy_node_ids","taxonomy_prefer_node_ids","llm_matched_no
2de_ids","suppressed_auto_node_ids","source_group_ids"]),ri={up:"위",down:"아래",left:"왼쪽",right:"오른쪽","up-right":"오른쪽 위","down-right":"오른쪽 아래","down-left":"왼쪽 아래","up-left":"왼쪽 위"},oi={dominantDirection:ri,colorTemperature:{warm:"따뜻한",neutral:"중간",cool:"차가운"},coverage:{any:"전체",partial:"일부",dominant:"대부분"}},pr={selectedColors:"선택 색상",hueRange:"색조",saturationRange:"채도",brightnessRange:"밝기",colorTemperature:"색온도",coverage:"포함 범위",intensityRange:"움직임 강도",dominantDirection:"움직임 방향",sceneChangeLevel:"장면 전환",bpmMin:"최소 BPM",bpmMax:"최대 BPM",segmentTypes:"오디오 유형",syncType:"싱크 방식",moodText:"분위기",categories:"카테고리",topics:"토픽",videoTools:"영상 도구",compatibleSoftware:"호환 소프트웨어",pluginsRequired:"플러그인 필요",timeOfDay:"시간대",author:"제작자",authorId:"제작자 ID",qualities:"품질",aiDisclosure:"AI 고지",alphaChannel:"알파 채널",looped:"루프",onSale:"할인",listingSubtype:"상품 유형",orientation:"영상 방향",fps:"FPS",aspectRatios:"화면 비율",resolutionMinWidthPx:"최소 가로 해상도",fpsMin:"최소 FPS",durationMinSeconds:"최소 길이(초)",durationMaxSeconds:"최대 길이(초)",pricingModels:"가격 방식",license:"라이선스",licenseFamily:"라이선스 계열",tier:"등급",currency:"통화",priceMinCents:"최소 가격",priceMaxCents:"최대 가격",publishedFrom:"게시일 시작",publishedTo:"게시일 끝",updatedFrom:"수정일 시작",updatedTo:"수정일 끝",ratingMin:"최소 평점",ratingPresence:"평점 유무",salesMin:"최소 판매",salesMax:"최대 판매",providerCategories:"공급원 카테고리",providerTopics:"공급원 토픽",providerVideoTools:"공급원 영상 도구",providerSalesLevels:"공급원 판매 등급"};function ze(s,t){return Object.prototype.hasOwnProperty.call(s,t)}function ss(s){return s!==null&&typeof s=="object"&&!Array.isArray(s)}function ai(s){return ze(Te,s)?Te[s].shortName:ze(rs,s)?rs[s].shortName:s}function ni(s){return Array.isArray(s)?s.join(", "):typeof s=="boolean"?s?"켬":"끔":ss(s)&&typeof s.min=="number"&&typeof s.max=="number"?`${s.min}~${s.max}`:String(s)}function ii(s,t){const n=oi[s];return typeof t=="string"&&n&&ze(n,t)?n[t]:ni(t)}function li(s,t,n){const o=si[s];if(typeof t=="boolean")return`${o}: ${t?"켬":"끔"}`;if(s==="display_mode")return`${o}: ${t==="hybrid"?"영상과 장면":"영상"}`;if(s==="orientation")return`${o}: ${t==="vertical"?"세로":"가로"}`;if(s==="content_kind")return`${o}: ${t==="stock"?"스톡":t==="knowledge"?"지식":"레퍼런스"}`;if(s==="sort"){const l={recent:"최근 수집",duration:"길이",published:"최근 게시",origin:"출처",relevance:"관련도"};return`${o}: ${typeof t=="string"&&ze(l,t)?l[t]:String(t)}`}return ti.has(s)&&Array.isArray(t)?`${o}: ${t.map(l=>typeof l=="string"?n[l]??"이름 확인 필요":"이름 확인 필요").join(", ")}`:s==="artist_id"||s==="song_id"?`${o}: ${n[String(t)]??"이름 확인 필요"}`:s==="taxonomy_degrees"&&Array.isArray(t)?`${o}: ${t.map(l=>ss(l)?`${n[String(l.node_id)]??"이름 확인 필요"} ${String(l.min??0)}~${String(l.max??1)}`:"이름 확인 필요").join(", ")}`:s==="spectrum_ranges"&&ss(t)?`${o}: ${Object.entries(t).map(([l,a])=>ss(a)?`${l} ${String(a.min)}~${String(a.max)}`:l).join(", ")}`:s==="signals"&&ss(t)?`${o}: ${Object.entries(t).map(([l,a])=>`${ai(l)} ${a===!0?"켬":"끔"}`).join(", ")}`:Array.isArray(t)?`${o}: ${t.join(", ")}`:ss(t)?`${o}: ${Object.entries(t).filter(([,l])=>l!=null&&(!Array.isArray(l)||l.length>0)).map(([l,a])=>`${ze(pr,l)?pr[l]:"추가 조건"} ${ii(l,a)}`).join(", ")}`:`${o}: ${String(t)}`}function ci(s,t={}){return Er.flatMap(n=>{if(n==="query")return[];const o=s[n];return o==null||Array.isArray(o)&&o.length===0||o===ot[n]?[]:[li(n,o,t)]})}function mi(s,t={},n){var S,x;const o=Object.keys(s).filter(u=>!(u in ei));if(o.length)return{target:null,unsupported:o};if(s.audioQuery&&Object.keys(s.audioQuery).some(u=>u!=="moodText"))return{target:null,unsupported:["audio_query_file"]};if(s.contentKind==="all")return{target:null,unsupported:["content_kind"]};const l={query:((S=s.query)==null?void 0:S.trim())??"",taxonomy_node_ids:s.taxonomyNodeIds,exclude_taxonomy_node_ids:s.excludeTaxonomyNodeIds,taxonomy_prefer_node_ids:s.taxonomyPrefer,prefer_title_scripts:s.preferTitleScripts,exclude_title_scripts:s.excludeTitleScripts,taxonomy_degrees:(x=s.taxonomyDegrees)==null?void 0:x.map(({nodeId:u,min:R,max:f})=>({node_id:u,min:R,max:f})),sort:s.sort,display_mode:s.displayMode,include_process:s.includeProcess,show_ai_usage:s.showAiUsage,content_kind:s.contentKind,artist_id:s.artistId,artist_query:s.artistQuery,song_id:s.songId,date_from:s.dateFrom,date_to:s.dateTo,duration_min_sec:s.durationMinSec,duration_max_sec:s.durationMaxSec,monochrome:s.monochrome,orientation:s.orientation,color_filter:s.colorFilter,motion_filter:s.motionFilter,audio_filter:s.audioFilter,audio_query:s.audioQuery,spectrum_ids:s.spectrumIds,spectrum_ranges:s.spectrumRanges,source_group_ids:s.sourceGroupIds,tag_logic:s.tagLogic,status:s.status,match_threshold:s.matchThreshold,collapse_segments:s.collapseSegments,auto_tag_match:s.autoTagMatch,llm_matched_no
2de_ids:s.llmMatchedNodeIds,suppressed_auto_node_ids:s.suppressedAutoNodeIds,semantic_weight:s.semanticWeight,audio_clamp3_weight:s.audioClamp3Weight,audio_langbind_weight:s.audioLangbindWeight,structured_weight:s.structuredWeight,origin_platforms:s.originPlatforms,stock_filters:s.stockFilters,stock_provider_filters:s.stockProviderFilters,stock_sort:s.stockSort,signals:n===void 0?void 0:(()=>{const u=Object.fromEntries(Object.entries(n).filter(([R,f])=>ze(hr,R)&&hr[R]!==f));return Object.keys(u).length>0?u:void 0})()},a=new Set(Er),N=Object.entries(l).filter(([u,R])=>!a.has(u)&&R!==void 0&&R!==null&&R!==(ze(ot,u)?ot[u]:void 0)&&(!Array.isArray(R)||R.length>0)).map(([u])=>u);if(N.length)return{target:null,unsupported:N};const{signals:D,...v}=l,m=or(Object.fromEntries(Object.entries(v).filter(([u,R])=>a.has(u)&&R!==void 0&&R!==null)));if(!m.ok)return{target:null,unsupported:[m.error]};const y=or(Object.fromEntries(Object.entries({...v,signals:D}).filter(([u,R])=>a.has(u)&&R!==void 0&&R!==null)));return gn(m.value,m.value.query)?y.ok?{target:Yn({request:y.value,key:y.key,conditions:ci(y.value,t)}),unsupported:[],context:y.value}:{target:null,unsupported:[y.error]}:{target:null,unsupported:[],...y.ok?{context:y.value}:{}}}function ui({responseFeedbackSnapshot:s,isPlaceholderData:t,imageSearchActive:n,searchPayloadV3:o,excludedNodeInfo:l,artistSel:a,llmIntent:N,firstPageAutoMatchedNodes:D,matchedSong:v,signalsOn:m,prsOn:y,llmOn:S,feedbackMode:x,feedbackItemIds:u,deferredQuery:R}){var d;const[f,j]=r.useState({}),p=r.useCallback((k,Q)=>{j(M=>{if(Q!==void 0)return{...M,[k]:Q};const w={...M};return delete w[k],w})},[]),[V,C]=r.useState(null);if(s&&(V==null?void 0:V.snapshot)!==s){const k=o,Q={...Object.fromEntries([...k.taxonomyNodeIds??[],...k.excludeTaxonomyNodeIds??[],...k.taxonomyPrefer??[],...((d=k.taxonomyDegrees)==null?void 0:d.map(i=>i.nodeId))??[]].filter(i=>{var h;return(h=l[i])==null?void 0:h.label}).map(i=>[i,l[i].label])),...k.artistId&&(a==null?void 0:a.id)===k.artistId?{[a.id]:a.name}:{},...v&&k.songId===v.id?{[v.id]:v.title}:{},...Object.fromEntries(((N==null?void 0:N.status)==="ok"?N.nodes:[]).map(i=>[i.nodeId,i.nameKo])),...Object.fromEntries((D??[]).map(i=>[i.nodeId,i.nameKo]))},M=mi(o,Q,{...m,prs:y,llm:S}),w=JSON.stringify([o,M.context??null]);C({snapshot:s,result:M,requestKey:w,searchOrigin:(V==null?void 0:V.requestKey)===w?V.searchOrigin:Ra(yr(),M.context)})}const L=t||s===(V==null?void 0:V.snapshot)?V:null,_=(L==null?void 0:L.result)??null,$=n?null:(L==null?void 0:L.searchOrigin)??null,T=u.join(",");return r.useEffect(()=>{if(!x||u.length===0)return;let k=!1;const Q=window.setTimeout(()=>{(async()=>{try{const M=Ca(R),w=Array.from({length:Math.ceil(u.length/100)},(h,O)=>u.slice(O*100,O*100+100)),i=await Promise.all(w.map(h=>$a(M,h)));if(k)return;j(h=>Ma(h,i.flatMap(O=>O.feedback)))}catch(M){console.error("[feedback] 내 점수 읽기 실패:",_s(M,{subject:"내 피드백 점수"}))}})()},300);return()=>{k=!0,window.clearTimeout(Q)}},[R,u,T,x]),{feedbackScores:f,setFeedbackScore:p,queryFeedbackResult:_,resultSearchOrigin:$,visibleQueryFeedback:(_==null?void 0:_.target)??null,feedbackItemIdsKey:T}}function di({taxonomyFilter:s,excludedNodeIds:t,preferTitleScripts:n,excludeTitleScripts:o,tagSignalOn:l,sort:a,displayMode:N,recognizedChipsEnabled:D,shownRecognizedNodeIds:v,promotedFromRecognizedNodeIds:m,suppressedAutoNodeIds:y}){const S=r.useMemo(()=>$r(s,t,n,o,l),[s,t,n,o,l]),x=r.useMemo(()=>({taxonomy_prefer_node_ids:S.taxonomyPrefer??null,taxonomy_node_ids:S.taxonomyNodeIds??null,exclude_taxonomy_node_ids:S.excludeTaxonomyNodeIds??null,prefer_title_scripts:S.preferTitleScripts??null,exclude_title_scripts:S.excludeTitleScripts??null,sort:a!=="relevance"?a:null,display_mode:N??null,...D?{shown_recognized_node_ids:v,promoted_from_recognized_node_ids:m,suppressed_auto_node_ids:y}:{}}),[S,a,N,D,v,m,y]),u=r.useMemo(()=>JSON.stringify({...x,shown_recognized_node_ids:void 0}),[x]),R=r.useRef(null),f=r.useRef(u);r.useEffect(()=>{f.current=u}),r.useEffect(()=>{if(R.current===null){R.current=u;return}if(R.current===u)return;R.current=u;const j=x,p=u,V=new Date().toISOString();window.setTimeout(()=>{at("filter_change",{...j,request_fired:f.current===p},void 0,V)},300)},[u,x])}const hi=3;function Ar(s){if(!s.enabled)return[];const t=new Set(s.appliedNodeIds??[]),n=new Set([...s.selectedNodeIds??[],...s.preferNodeIds??[],...s.excludedNodeIds??[],...s.suppressedNodeIds??[]]),o=new Set,l=[];for(const a of s.autoMatchedNodes??[])a.isLeaf&&(!a.applied&&!t.has(a.nodeId)||n.has(a.nodeId)||o.has(a.nodeId)||(o.add(a.nodeId),l.push({nodeId:a.nodeId,label:a.nameKo,viewId:a.viewId})));return l}function Ir(s,t=hi){return{visible:s.slice(0,t),overflow:Math.max(0,s.length-t)}}function pi({taxonomyFilter:s,setTaxonomyFilter:t,excludedNodeIds:n,setExcludedNodeIds:o,suppressedAutoNodeIds:l,setSuppressedAutoNodeIds:a,promotedRecognizedNodeIds:N,setPromotedRecognizedNodeIds:D,savedMediaShortcutModes:v,updateSettings:m,mediaShortcutHydratedRef:y,mediaShortcutN
2odes:S,setMediaShortcutNodes:x,mediaShortcutHydrationComplete:u,setMediaShortcutHydrationComplete:R,mediaShortcutModes:f,recognizedChipsEnabled:j,autoMatchedNodes:p,appliedQueryNodeIds:V}){const C=r.useCallback(w=>{if(y.current||Object.keys(w).length===0)return;y.current=!0,x(w);const i=[],h=[];for(const O of et){const F=w[O.slug],z=f[O.slug];!F||!z||(z==="prefer"?i:h).push(...F)}i.length>0&&t(O=>{var z;const F=[...new Set([...O.preferNodeIds??[],...i])];return F.length===(((z=O.preferNodeIds)==null?void 0:z.length)??0)?O:{...O,preferNodeIds:F}}),h.length>0&&o(O=>{const F=[...new Set([...O,...h])];return F.length===O.length?O:F}),R(!0)},[y,f,o,R,x,t]);r.useEffect(()=>{if(!u)return;const w=sn(S,s,n),i=v??{};JSON.stringify(w)!==JSON.stringify(i)&&m({mediaShortcutModes:w})},[n,u,S,v,s,m]);const L=r.useCallback((w,i)=>{const h=f[w],O=h===void 0?"prefer":h==="prefer"?"exclude":void 0,F=Object.values(S).flatMap(P=>P??[]).filter(P=>!i.includes(P)),z=i.reduce((P,W)=>O==="prefer"?tn(P,W,F):O?st(P,W,O):Rs(P,W),{taxonomyFilter:s,excludedNodeIds:n});t(z.taxonomyFilter),o([...z.excludedNodeIds]);const q={...f};if(O==="prefer"){for(const P of et)P.slug!==w&&q[P.slug]==="prefer"&&delete q[P.slug];q[w]=O}else O?q[w]=O:delete q[w];m({mediaShortcutModes:q})},[n,f,S,o,t,s,m]),_=r.useMemo(()=>Ar({enabled:j,autoMatchedNodes:p,appliedNodeIds:V,selectedNodeIds:s.selectedNodeIds,preferNodeIds:s.preferNodeIds,excludedNodeIds:n,suppressedNodeIds:l}),[j,p,V,s.selectedNodeIds,s.preferNodeIds,n,l]),$=r.useMemo(()=>Ir(_),[_]),T=r.useMemo(()=>$.visible.map(w=>w.nodeId),[$]),d=r.useCallback(w=>{const i=st({taxonomyFilter:s,excludedNodeIds:n},w,"include");t(i.taxonomyFilter),o([...i.excludedNodeIds]),D(h=>h.includes(w)?h:[...h,w])},[n,o,D,t,s]),k=r.useCallback(w=>{a(i=>i.includes(w)?i:[...i,w])},[a]),Q=r.useMemo(()=>$.visible.map(w=>({id:w.nodeId,label:w.label,color:qe(w.viewId).color,onPromote:()=>d(w.nodeId),onSuppress:()=>k(w.nodeId)})),[$,d,k]),M=r.useMemo(()=>s.selectedNodeIds.filter(w=>N.includes(w)),[s.selectedNodeIds,N]);return r.useEffect(()=>{D(w=>{const i=w.filter(h=>s.selectedNodeIds.includes(h));return i.length===w.length?w:i})},[s.selectedNodeIds,D]),{handleMediaShortcutNodesResolved:C,handleMediaShortcutCycle:L,shownRecognizedNodeIds:T,promoteRecognizedNode:d,suppressRecognizedNode:k,recognizedChipViews:Q,promotedFromRecognizedNodeIds:M,recognizedOverflow:$.overflow}}function as({id:s,label:t,domainMin:n,domainMax:o,value:l,onChange:a,formatValue:N,accent:D="var(--primary)"}){const v=o-n||1,m=r.useMemo(()=>N??(M=>`${Math.round(M)}`),[N]),y=r.useCallback(M=>Math.max(0,Math.min(100,Math.round((M-n)/v*100))),[n,v]),S=r.useCallback(M=>Math.round((n+M/100*v)*100)/100,[n,v]),x=y(l.min),u=y(l.max),R=r.useRef(null),f=r.useRef(null),j=r.useRef(null),[p,V]=r.useState(null),C=r.useCallback(M=>{const w=R.current;if(!w)return 0;const i=w.getBoundingClientRect();return Math.max(0,Math.min(100,Math.round((M-i.left)/i.width*100)))},[]),L=r.useCallback((M,w,i)=>{const h=f.current;h&&(h.style.left=`clamp(24px, ${w}%, calc(100% - 24px))`,h.textContent=`${M==="min"?"MIN":"MAX"} ${m(i)}`)},[m]),_=r.useCallback((M,w)=>{if(M==="min"){const i=Math.min(w,u),h=S(i);L("min",i,h),a({min:h,max:l.max})}else{const i=Math.max(w,x),h=S(i);L("max",i,h),a({min:l.min,max:h})}},[x,u,l,a,L,S]),$=r.useCallback((M,w)=>{var i;w.preventDefault(),w.stopPropagation(),j.current=M,V(M),(i=R.current)==null||i.setPointerCapture(w.pointerId)},[]),T=r.useCallback(M=>{j.current&&_(j.current,C(M.clientX))},[_,C]),d=r.useCallback(()=>{j.current=null,V(null)},[]),k=r.useCallback(M=>{var h;if(M.target.closest(".int-handle"))return;const w=C(M.clientX),i=Math.abs(w-x)<=Math.abs(w-u)?"min":"max";j.current=i,V(i),(h=R.current)==null||h.setPointerCapture(M.pointerId),_(i,w)},[C,x,u,_]),Q=r.useCallback((M,w)=>{const i=["ArrowRight","ArrowUp"].includes(w.key)?2:["ArrowLeft","ArrowDown"].includes(w.key)?-2:0;if(i)if(w.preventDefault(),M==="min"){const h=Math.max(0,Math.min(x+i,u));a({min:S(h),max:l.max})}else{const h=Math.min(100,Math.max(u+i,x));a({min:l.min,max:S(h)})}},[x,u,l,a,S]);return e.jsxDEV("div",{className:"intensity","data-testid":`${s}-slider`,children:[e.jsxDEV("div",{className:"int-meta",children:[e.jsxDEV("span",{className:"ilabel",children:t},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:167,columnNumber:9},this),e.jsxDEV("span",{className:"irange",children:[e.jsxDEV("span",{className:"lo",children:m(l.min)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:169,columnNumber:11},this),"~",m(l.max)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:168,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:166,columnNumber:7},this),e.jsxDEV("div",{ref:R,className:`int-track wide${p?" dragging":""}`,style:{"--axc":D},role:"group","aria-label":`${t} 범위`,onPointerDown:k,onPointerMove:T,onPointerUp:d,children:[e.jsxDEV("div",{className:"int-rail",children:e.jsxDEV("span",{className:"ticks",children:[e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:184,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:185,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:186,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:187,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:188,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:183,columnNumber:11},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:182,columnNumber:9},this),e.jsxDEV("div",{className:"int-fill",style:{left:`${x}%`,width:`${u-x}%`}},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:191,columnNumber:9},this),e.jsxDEV("button",{type:"button",className:`int-handle hmin${p==="min"?" grab":""}`,"data-testid":`${s}-min`,role:"slider","aria-label":`${t} 최소`,"aria-valuemin":n,"aria-valuemax":o,"aria-valuenow":l.min,style:{left:`${x}%`},onPointerDown:M=>$("min",M),onKeyDown:M=>Q("min",M)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:195,columnNumber:9},this),e.jsxDEV("button",{type:"button",className:`int-handle hmax${p==="max"?" grab":""}`,"data-testid":`${s}-max`,role:"slider","aria-label":`${t} 최대`,"aria-valuemin":n,"aria-valuemax":o,"aria-valuenow":l.max,style:{left:`${u}%`},onPointerDown:M=>$("max",M),onKeyDown:M=>Q("max",M)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:208,columnNumber:9},this),e.jsxDEV("span",{ref:f,className:`int-bubble${p?" show":""}`},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:221,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:172,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/RangeSlider.tsx",lineNumber:165,columnNumber:5},this)}const Ze=360;function Or({id:s,value:t,onChange:n}){const o=r.useRef(null),l=r.useRef(null),a=r.useRef(null),[N,D]=r.useState(null),v=r.useCallback(L=>L/Ze*100,[]),m=v(t.min),y=v(t.max),S=r.useCallback(L=>{const _=o.current;if(!_)return 0;const $=_.getBoundingClientRect(),T=Math.max(0,Math.min(1,(L-$.left)/$.width));return Math.round(T*Ze)},[]),x=r.useCallback((L,_)=>{const $=l.current;if(!$)return;const T=_/Ze*100;$.style.left=`clamp(24px, ${T}%, calc(100% - 24px))`,$.textContent=`${L==="min"?"MIN":"MAX"} ${_}°`},[]),u=r.useCallback((L,_)=>{x(L,_),n(L==="min"?{min:_,max:t.max}:{min:t.min,max:_})},[n,x,t.min,t.max]),R=r.useCallback((L,_)=>{var $;_.preventDefault(),_.stopPropagation(),a.current=L,D(L),($=o.current)==null||$.setPointerCapture(_.pointerId)},[]),f=r.useCallback(L=>{a.current&&u(a.current,S(L.clientX))},[u,S]),j=r.useCallback(()=>{a.current=null,D(null)},[]),p=r.useCallback(L=>{var T;if(L.target.closest(".int-handle"))return;
2const _=S(L.clientX),$=Math.abs(_-t.min)<=Math.abs(_-t.max)?"min":"max";a.current=$,D($),(T=o.current)==null||T.setPointerCapture(L.pointerId),u($,_)},[S,t.min,t.max,u]),V=r.useCallback((L,_)=>{const $=["ArrowRight","ArrowUp"].includes(_.key)?5:["ArrowLeft","ArrowDown"].includes(_.key)?-5:0;if(!$)return;_.preventDefault();const T=L==="min"?t.min:t.max,d=Math.max(0,Math.min(Ze,T+$));u(L,d)},[t.min,t.max,u]),C=t.min>t.max;return e.jsxDEV("div",{className:"intensity","data-testid":`${s}-slider`,children:[e.jsxDEV("div",{className:"int-meta",children:[e.jsxDEV("span",{className:"ilabel",children:"색상 (hue)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:130,columnNumber:9},this),e.jsxDEV("span",{className:"irange",children:[e.jsxDEV("span",{className:"lo",children:[Math.round(t.min),"°"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:132,columnNumber:11},this),"~",Math.round(t.max),"°",C?" (감쌈)":""]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:131,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:129,columnNumber:7},this),e.jsxDEV("div",{ref:o,className:`int-track wide${N?" dragging":""}`,role:"group","aria-label":"색상 범위",onPointerDown:p,onPointerMove:f,onPointerUp:j,children:[e.jsxDEV("div",{className:"int-rail",children:e.jsxDEV("span",{className:"ticks",children:[e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:147,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:148,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:149,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:150,columnNumber:13},this),e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:151,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:146,columnNumber:11},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:145,columnNumber:9},this),C?e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"int-fill",style:{left:"0%",width:`${y}%`}},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:156,columnNumber:13},this),e.jsxDEV("div",{className:"int-fill",style:{left:`${m}%`,width:`${100-m}%`}},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:160,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:155,columnNumber:11},this):e.jsxDEV("div",{className:"int-fill",style:{left:`${m}%`,width:`${y-m}%`}},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:166,columnNumber:11},this),e.jsxDEV("button",{type:"button",className:`int-handle hmin${N==="min"?" grab":""}`,"data-testid":`${s}-min`,role:"slider","aria-label":"색상 최소","aria-valuemin":0,"aria-valuemax":Ze,"aria-valuenow":t.min,style:{left:`${m}%`},onPointerDown:L=>R("min",L),onKeyDown:L=>V("min",L)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:171,columnNumber:9},this),e.jsxDEV("button",{type:"button",className:`int-handle hmax${N==="max"?" grab":""}`,"data-testid":`${s}-max`,role:"slider","aria-label":"색상 최대","aria-valuemin":0,"aria-valuemax":Ze,"aria-valuenow":t.max,style:{left:`${y}%`},onPointerDown:L=>R("max",L),onKeyDown:L=>V("max",L)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:184,columnNumber:9},this),e.jsxDEV("span",{ref:l,className:`int-bubble${N?" show":""}`},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:197,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:136,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/HueRangeSlider.tsx",lineNumber:128,columnNumber:5},this)}const Br="moref_signal_deck_hide_planned";function fi(){try{return localStorage.getItem(Br)!=="false"}catch{return!0}}function es(){return e.jsxDEV("svg",{className:"chev",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round",strokeLinejoin:"round",children:e.jsxDEV("path",{d:"m6 9 6 6 6-6"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:84,columnNumber:7},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:75,columnNumber:5},this)}function fr(s){const t=qe(s.viewId);return e.jsxDEV("span",{className:"prs-chip","data-testid":"prs-chip",style:{borderColor:t.color,color:t.color},title:`${t.label} · "${s.matchedText}" 에서 인식`,children:[e.jsxDEV("span",{className:"prs-chip-name",children:s.nameKo},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:104,columnNumber:7},this),e.jsxDEV("span",{className:"prs-chip-src mono",children:["←",s.matchedText]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:105,columnNumber:7},this)]},`${s.nodeId}:${s.matchedText}`,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:94,columnNumber:5},this)}function bi(s){const t=qe(s.viewId);return e.jsxDEV("span",{className:"prs-chip","data-testid":"llm-chip",style:{borderColor:t.color,color:t.color},title:`${t.label}${s.newBeyondDeterministic?" · LLM 이 추가 발굴(결정론 매칭 밖)":" · 결정론 매칭과 일치"}`,children:[e.jsxDEV("span",{className:"prs-chip-name",children:s.nameKo},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:122,columnNumber:7},this),s.newBeyondDeterministic&&e.jsxDEV("span",{className:"prs-chip-src mono",children:"✦갭"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:124,columnNumber:9},this)]},s.nodeId,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:115,columnNumber:5},this)}const br={warm:"웜",neutral:"뉴트럴",cool:"쿨"},Ni={any:"포인트",partial:"부분",dominant:"지배적"};function xi({signalsOn:s,onToggleSignal:t,textOnlyActive:n,onToggleTextOnly:o,explain:l,onExplainChange:a,taxonomyFilter:N,weights:D,audioQuery:v,colorFilter:m,onColorFilterChange:y,motionFilter:S,onMotionFilterChange:x,autoMatchedNodes:u,promotedRecognizedNodeIds:R,prsOn:f=!0,onTogglePrs:j,llmOn:p=!1,onToggleLlm:V,llmIntent:C,llmInterpretLoading:L=!1,llmApplied:_,llmDeferReason:$,durationPreset:T,onDurationPresetChange:d,monochrome:k,onMonochromeChange:Q,orientation:M,onOrientationChange:w,orientationCoverage:i,alwaysExpanded:h=!1,hideMetaFacets:O=!1,hideExplainToggle:F=!1}){const z=j!==void 0,q=new Set(R??[]),P=(u??[]).filter(b=>b.applied),W=P.filter(b=>!q.has(b.nodeId)),de=P.length-W.length,B=(u??[]).filter(b=>!b.applied),X=V!==void 0,Z=ir.filter(b=>!(b==="prs"&&z)&&!(b==="llm"&&X)).length,te=(C==null?void 0:C.status)==="ok"?C.nodes:[],le=(C==null?void 0:C.status)==="unavailable"||(C==null?void 0:C.status)==="disabled",oe=p?L?"해석 중…":le?"미가용":te.length>0?`${te.length}
2개 해석`:C!=null&&C.moodText?"무드 해석":"인식 없음":"꺼짐",[ee,se]=r.useState(null),[Se,I]=r.useState(!1),[A,re]=r.useState(fi),{nodeInfoMap:fe}=kr(N.selectedNodeIds),{t:ce}=Be(),g=r.useCallback(b=>{se(G=>G===b?null:b)},[]),Y=r.useCallback(()=>{re(b=>{const G=!b;try{localStorage.setItem(Br,String(G))}catch{}return G})},[]),K=r.useCallback(b=>{switch(b){case"tag":return N.selectedNodeIds.length===0;case"aud":return!v.moodText&&!v.audioFile;case"col":return!bs(m);case"mot":return!Ns(S);default:return!1}},[N.selectedNodeIds,v,m,S]),he=r.useCallback(b=>{if(!s[b])return"꺼짐";switch(b){case"sem":return`가중치 ${Math.round(D.semantic*100)}%`;case"tag":return N.selectedNodeIds.length>0?`${N.selectedNodeIds.length}개 태그`:"태그 없음";case"aud":return v.moodText?`“${v.moodText}”`:v.audioFile?v.audioFile.name:"무드 없음";case"col":{if(!bs(m))return"설정 없음";const G=m.colorTemperature?br[m.colorTemperature]:"전체",be=m.hueRange[0]>0||m.hueRange[1]<360?` · 색상 ${m.hueRange[0]}~${m.hueRange[1]}°`:"",we=Ni[m.coverage]??"부분";return`${G} · 채도 ${m.saturationRange[0]}~${m.saturationRange[1]} · 밝기 ${m.brightnessRange[0]}~${m.brightnessRange[1]}${be} · 비중 ${we}`}case"mot":{if(!Ns(S))return"설정 없음";const G=S.intensityRange;return`강도 ${G.min}~${G.max}`}default:return""}},[s,D.semantic,N.selectedNodeIds,v,m,S]),ue=()=>{const b=N.selectedNodeIds;return b.length===0?e.jsxDEV("div",{className:"dt-body",children:"선택된 태그 없음"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:389,columnNumber:14},this):e.jsxDEV("div",{className:"dt-body",children:[b.map(G=>{var Ue;const J=fe[G],be=(Ue=N.degrees)==null?void 0:Ue[G],we=J?Cs[J.axisId].label:"기타",ls=(J==null?void 0:J.label)??G.slice(0,8),cs=Math.round(((be==null?void 0:be.min)??ns)*100),Pe=Math.round(((be==null?void 0:be.max)??is)*100);return e.jsxDEV("span",{className:"mono",style:{marginRight:10},children:["[",we,"] ",ls," ",cs,"~",Pe,"%"]},G,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:401,columnNumber:13},this)}),e.jsxDEV("br",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:406,columnNumber:9},this),e.jsxDEV("span",{className:"mono",children:"태그 해제·정도 조정은 선택 태그 도크에서 · 이 신호를 끄면 태그 선택은 유지되되 검색 점수에 반영되지 않음 · 정도(intensity)가 높은 영상일수록 같은 태그 안에서 순위가 올라감(B-6)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:407,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:392,columnNumber:7},this)},ke=()=>e.jsxDEV("div",{className:"colctl",children:[e.jsxDEV("span",{className:"cl",children:"색온도"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:418,columnNumber:7},this),e.jsxDEV("div",{className:"tempseg","data-testid":"col-temp-seg",children:["warm","neutral","cool"].map(b=>e.jsxDEV("button",{type:"button","data-t":b,className:m.colorTemperature===b?"on":"","data-testid":`col-temp-${b}`,"aria-pressed":m.colorTemperature===b,onClick:()=>y({...m,colorTemperature:m.colorTemperature===b?null:b}),children:[e.jsxDEV("span",{className:"tw"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:435,columnNumber:13},this),br[b]]},b,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:421,columnNumber:11},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:419,columnNumber:7},this),e.jsxDEV("span",{className:"cl",children:"채도"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:440,columnNumber:7},this),e.jsxDEV("div",{className:"colrange sat",children:e.jsxDEV(as,{id:"col-saturation",label:"채도",domainMin:0,domainMax:100,value:{min:m.saturationRange[0],max:m.saturationRange[1]},onChange:b=>y({...m,saturationRange:[Math.round(b.min),Math.round(b.max)]}),accent:"#13c8ec"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:442,columnNumber:9},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:441,columnNumber:7},this),e.jsxDEV("span",{className:"cl",children:"밝기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:460,columnNumber:7},this),e.jsxDEV("div",{className:"colrange bri",children:e.jsxDEV(as,{id:"col-brightness",label:"밝기",domainMin:0,domainMax:100,value:{min:m.brightnessRange[0],max:m.brightnessRange[1]},onChange:b=>y({...m,brightnessRange:[Math.round(b.min),Math.round(b.max)]}),accent:"#e8f6f8"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:462,columnNumber:9},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:461,columnNumber:7},this),e.jsxDEV("span",{className:"cl",children:"색상"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:480,columnNumber:7},this),e.jsxDEV("div",{className:"colrange hue","data-testid":"col-hue-range",children:e.jsxDEV(Or,{id:"col-hue",value:{min:m.hueRange[0],max:m.hueRange[1]},onChange:b=>y({...m,hueRange:Mr(b.min,b.max)})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:482,columnNumber:9},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:481,columnNumber:7},this),e.jsxDEV("span",{className:"cl",children:"색 비중"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:498,columnNumber:7},this),e.jsxDEV("div",{className:"covseg","data-testid":"col-coverage-seg",children:[["any","포인트"],["partial","부분"],["dominant","지배적"]].map(([b,G])=>e.jsxDEV("button",{type:"button","data-c":b,className:m.coverage===b?"on":"","data-testid":`col-coverage-${b}`,"aria-pressed":m.coverage===b,onClick:()=>y({...m,coverage:b}),children:G},b,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:507,columnNumber:11},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:499,columnNumber:7},this),e.jsxDEV("div",{className:"colnote",children:["색상(hue)은 세그먼트 지배 색상 각도(0~360°)로 매칭됩니다. 최소>최대로 놓으면 ",e.jsxDEV("b",{children:"빨강 감싸기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:522,columnNumber:13},this),"(예 340°→20°)로 검색합니다. 채도·밝기·색온도와 함께 백엔드에 실제 반영됩니다(C-3b). 팔레트 프리셋·LAB 정밀 매칭은 후속입니다.",e.jsxDEV("br",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:525,columnNumber:9},this),e.jsxDEV("b",{children:"색 비중(커버리지)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:526,columnNumber:9},this),"은 조건에 맞는 색 세그먼트가 영상에서 차지하는 시간 비중으로 결과를 거릅니다(C-3c)."," ",m.coverage==="any"?e.jsxDEV(e.Fragment,{children:[e.jsxDEV("b",{children:"포인트"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:530,columnNumber:13},this),"는 그 색이 ",e.jsxDEV("b",{children:"잠깐 스치는 장면"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:530,columnNumber:30},this),"만 있어도 영상을 포함합니다."]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:529,columnNumber:11},this):m.coverage==="dominant"?e.jsxDEV(e.Fragment,{children:[e.jsxDEV("b",{children:"지배적"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:535,columnNumber:13},this),"은 그 색 세그먼트가 영상의 ",e.jsxDEV("b",{children:"60% 이상"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:535,columnNumber:39},this),"을 차지할 때만 매칭합니다."]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:534,columnNumber:11},this):e.jsxDEV(e.Fragment,{children:[e.jsxDEV("b",{children:"부분"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:540,columnNumber:13},this),"(기본)은 그 색 세그먼트가 영상의 ",e.jsxDEV("b",{children:"25% 이상"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:540,columnNumber:42},this),"을 차지할 때만 매칭합니다."]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:539,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:520,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:417,columnNumber:5},this),ae=()=>{const b=S.intensityRange??{min:0,max:10};return e.jsxDEV("div",{className:"dt-body",children:[Te.mot.desc,e.jsxDEV("div",{style:{marginTop:10,maxWidth:320},children:e.jsxDEV(as,{id:"mot-intensity",label:"모션 강도",domainMin:0,domainMax:10,value:b,onChange:G=>x({...S,intensityRange:{min:Math.round(G.min*10)/10,max:Math.round(G.max*10)/10}}),formatValue:G=>G.toFixed(1),accent:"var(--ax-technique)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:554,columnNumber:11},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:553,columnNumber:9},this),e.jsxDEV("span",{className:"mono",style:{display:"block",marginTop:8},children:"정도값은 세그먼트 모션 강도 스코어(0~10, 광류(Flow) 기반) 범위입니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:573,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:551,columnNumber:7},this)},xe=()=>{if(!ee)return null;if(ee==="prs"&&z){const G=rs.prs;return e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"dt-title",children:["[",G.code,"] ",G.name]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:586,columnNumber:11},this),e.jsxDEV("div",{className:"dt-body",children:["검색어에서 5축 태그를 자동 인식해 태그 신호로 가산합니다(소프트 부스트로 결과를 좁히지 않음). 끄면 인식·적용을 건너뜁니다.",f?W.length>0?e.jsxDEV("div",{style:{marginTop:10},children:[e.jsxDEV("span",{className:"mono",children:"적용된 자동 태그(가산 부스트):"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:603,columnNumber:17},this),e.jsxDEV("div",{className:"prs-chips","data-testid":"prs-applied-chips",children:W.map(J=>fr(J))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:604,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:602,columnNumber:15},this):P.length===0?e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",children:"이번 검색어에서 인식된 태그가 없습니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:610,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:609,columnNumber:15},this):null:e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",style:{textDecoration:"line-through"},children:"꺼짐. 자동 태그를 인식·적용하지 않습니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:594,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:593,columnNumber:15},this),f&&de>0&&e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono","data-testid":"prs-promoted-note",children:[de,"개는 상단 선택 칩으로 승격됨(중복 표시 안 함)."]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:618,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:617,columnNumber:15},this),f&&B.length>0&&e.jsxDEV("div",{style:{marginTop:10},children:[e.jsxDEV("span",{className:"mono",children:"인식만 함(다른 필터/벡터 상태로 적용 보류):"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:626,columnNumber:17},this),e.jsxDEV("div",{className:"prs-chips","data-testid":"prs-detected-chips",children:B.map(J=>fr(J))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:629,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:625,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:589,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:585,columnNumber:9},this)}if(ee==="llm"&&X){const G=rs.llm;return e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"dt-title",children:["[",G.code,"] ",G.name]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:642,columnNumber:11},this),e.jsxDEV("div",{className:"dt-body",children:["자연어 질의를 LLM 이 5축 태그·무드로 풀어 가산 부스트로 태웁니다(결과를 좁히지 않음). 결정론 태그 인식(PRS)이 못 잡는 띄어쓰기 변형·동의어·자연어 의도를 메웁니다. 끄면 호출하지 않습니다.",p?L?e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",children:"해석 중… (NVIDIA API → Ollama 폴백)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:660,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:659,columnNumber:15},this):le?e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",children:[(C==null?void 0:C.note)??"LLM 해석을 사용할 수 없습니다."," 검색은 결정론 결과(PRS)로 무손실 진행됩니다."]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:666,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:665,columnNumber:15},this):e.jsxDEV(e.Fragment,{children:[te.length>0?e.jsxDEV("div",{style:{marginTop:10},children:[e.jsxDEV("span",{className:"mono",children:_===!1?"해석된 태그(인식만 하고 적용 보류):":"해석된 태그(가산 부스트):"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:675,columnNumber:21},this),e.jsxDEV("div",{className:"prs-chips","data-testid":"llm-nodes-chips",children:te.filter(J=>!q.has(J.nodeId)).map(J=>bi(J))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:680,columnNumber:21},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:674,columnNumber:19},this):e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",children:"이번 질의에서 해석된 태그가 없습니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:688,columnNumber:21},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.t
2sx",lineNumber:687,columnNumber:19},this),(C==null?void 0:C.moodText)&&e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",children:["무드로 해석: “",C.moodText,"”"," ",s.aud?e.jsxDEV(e.Fragment,{children:[e.jsxDEV(ie,{name:"arrow",className:"v2-inline"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:699,columnNumber:27},this)," 오디오 신호(AUD)로 전달"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:698,columnNumber:25},this):"(AUD가 꺼져 있어 미전달)"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:695,columnNumber:21},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:694,columnNumber:19},this),C&&C.excludedNodes.length>0&&e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",children:["제외 의도 감지:"," ",C.excludedNodes.map(J=>J.nameKo).join(", ")," ","(현재 검색 미반영)"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:710,columnNumber:21},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:709,columnNumber:19},this),_===!1&&$&&e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",children:["보류 사유:"," ",$==="ml_fallback_no_vector"?"ML 임베딩 부재(텍스트 폴백). 벡터 경로 복구 시 적용":"다른 구조화 필터와 충돌 위험이 있어 인식만 하고 보류"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:719,columnNumber:21},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:718,columnNumber:19},this),(C==null?void 0:C.provider)&&e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",style:{opacity:.7},children:["해석: ",C.provider.toUpperCase(),C.model?` · ${C.model}`:"",C.cached?" · 캐시":"",typeof C.latencyMs=="number"&&!C.cached?` · ${C.latencyMs}ms`:""]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:729,columnNumber:21},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:728,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:672,columnNumber:15},this):e.jsxDEV("div",{style:{marginTop:8},children:e.jsxDEV("span",{className:"mono",style:{textDecoration:"line-through"},children:"꺼짐. LLM 해석을 호출하지 않습니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:651,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:650,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:645,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:641,columnNumber:9},this)}if(ee==="prs"||ee==="llm"){const G=rs[ee];return e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"dt-title",children:["[",G.code,"] ",G.name]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:750,columnNumber:11},this),e.jsxDEV("div",{className:"dt-body",children:[G.desc,e.jsxDEV("br",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:755,columnNumber:13},this),e.jsxDEV("span",{className:"mono",children:"아직 연결 전(예정). 켜짐/꺼짐과 무관하게 지금 검색에는 개입하지 않습니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:756,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:753,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:749,columnNumber:9},this)}const b=Te[ee];return e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"dt-title",children:["[",b.code,"] ",b.name]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:767,columnNumber:9},this),ee==="col"&&ke(),ee==="tag"&&ue(),ee==="mot"&&ae(),ee==="aud"&&e.jsxDEV("div",{className:"dt-body",children:[b.desc,e.jsxDEV("br",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:776,columnNumber:13},this),e.jsxDEV("span",{className:"mono",children:["현재 무드:"," ",v.moodText?`“${v.moodText}”`:"설정 없음"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:777,columnNumber:13},this),e.jsxDEV("br",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:781,columnNumber:13},this),e.jsxDEV("span",{className:"mono",children:"헤더 검색어와 별개 채널입니다. 끄면 오디오 신호 없이 시각·태그만으로 순위를 매깁니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:782,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:774,columnNumber:11},this),ee==="sem"&&e.jsxDEV("div",{className:"dt-body",children:[b.desc,e.jsxDEV("br",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:791,columnNumber:13},this),e.jsxDEV("span",{className:"mono",children:["현재 가중치 ",Math.round(D.semantic*100),"%. 검색어가 없으면 이 신호는 자동으로 비활성(가중치는 다른 활성 신호로 재분배)."]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:792,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:789,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:766,columnNumber:7},this)},me=ts.filter(b=>s[b]&&!K(b)),ve=ts.filter(b=>!s[b]||K(b)).map(b=>Te[b].code);return!Se&&!h?e.jsxDEV("section",{className:"sigdeck sigdeck-collapsed","data-testid":"signal-deck",children:e.jsxDEV("div",{className:"sigdeck-summary","aria-live":"polite",children:[e.jsxDEV("span",{className:"sigdeck-summary-leds","aria-hidden":"true",children:ts.map(b=>e.jsxDEV("i",{className:s[b]&&!K(b)?"on":void 0},b,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:815,columnNumber:15},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:813,columnNumber:11},this),e.jsxDEV("span",{className:"sigdeck-summary-divider","aria-hidden":"true"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:823,columnNumber:11},this),e.jsxDEV("div",{className:"sigdeck-summary-content",children:[e.jsxDEV("span",{className:"sigdeck-summary-label",children:ce("signaldeck.summary_label")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:825,columnNumber:13},this),e.jsxDEV("div",{className:"sigdeck-summary-chips",children:me.map(b=>e.jsxDEV("span",{className:"sigdeck-summary-chip",children:[e.jsxDEV("i",{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:831,columnNumber:19},this),Te[b].code," · ",he(b)]},b,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:830,columnNumber:17},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:828,columnNumber:13},this),ve.length>0&&e.jsxDEV("span",{className:"sigdeck-summary-off",children:[ve.join(" · ")," ",ce("signaldeck.off")]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:837,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:824,columnNumber:11},this),e.jsxDEV("button",{type:"button",className:"sigdeck-expand",onClick:()=>I(!0),"aria-expanded":!1,"data-testid":"signal-deck-expand",children:[ce("signaldeck.expand"),e.jsxDEV(es,{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:850,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:842,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:812,columnNumber:9},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:811,columnNumber:7},this):e.jsxDEV("section",{className:"sigdeck","data-testid":"signal-deck",children:[e.jsxDEV("div",{className:"dk-head",children:[!h&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("span",{className:"t",children:ce("signaldeck.title")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:865,columnNumber:13},this),e.jsxDEV("span",{className:"sub",children:"이 검색에 개입하는 모든 신호. 클릭=상세 · 스위치=켜고 끄기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:866,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:864,columnNumber:11},this),!O&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("span",{className:"sub",children:"길이"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:873,columnNumber:13},this),[["all","전체"],["short","숏폼 ≤60s"],["one_to_three","1~3분"],["over_three","3분+"]].map(([b,G])=>e.jsxDEV("button",{type:"button",className:`dk-textonly${T===b?" on":""}`,"aria-pressed":T===b,onClick:()=>d(b),"data-testid":`duration-preset-${b}`,children:G},b,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:882,columnNumber:15},this)),e.jsxDEV("button",{type:"button",className:`dk-textonly${k?" on":""}`,"aria-pressed":k,onClick:()=>Q(!k),"data-testid":"monochrome-toggle",children:"흑백"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:893,columnNumber:13},this),e.jsxDEV("span",{className:"sub",children:"방향"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:902,columnNumber:13},this),[[void 0,"전체"],["vertical","세로형"],["horizontal","가로형"]].map(([b,G])=>e.jsxDEV("button",{type:"button",className:`dk-textonly${M===b?" on":""}`,"aria-pressed":M===b,onClick:()=>w(b),"data-testid":`orientation-${b??"all"}`,children:G},b??"all",!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:910,columnNumber:15},this)),M==="vertical"&&i&&e.jsxDEV("span",{className:"sigdeck-summary-chip","data-testid":"orientation-coverage",children:["해상도 데이터 기준 · 결측 ",i.unknownIncluded,"건 포함 · 커버리지 ",i.coveragePct,"%"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:922,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:872,columnNumber:11},this),Z>0&&e.jsxDEV("button",{type:"button",className:"dk-hideplanned",onClick:Y,"aria-pressed":A,"data-testid":"signal-deck-hide-planned-toggle",children:A?"예정 모듈 표시":"예정 모듈 숨기기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:933,columnNumber:11},this),e.jsxDEV("button",{type:"button",className:`dk-textonly${n?" on":""}`,onClick:o,"aria-pressed":n,title:ce("signaldeck.text_only_hint"),"data-testid":"text-only-toggle",children:[e.jsxDEV("span",{className:`sw${n?" on":""}`},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:955,columnNumber:11},this)," ",ce("signaldeck.text_only")]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:947,columnNumber:9},this),!F&&e.jsxDEV("button",{type:"button",className:`dk-explain${l?" on":""}`,onClick:()=>a(!l),"aria-pressed":l,"data-testid":"explain-toggle",children:[e.jsxDEV("span",{className:`sw${l?" on":""}`},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:966,columnNumber:13},this)," 설명 모드: 왜 이 결과가 나왔나"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:959,columnNumber:11},this),!h&&e.jsxDEV("button",{type:"button",className:"dk-collapse",onClick:()=>I(!1),"aria-expanded":!0,"data-testid":"signal-deck-collapse",children:[ce("signaldeck.collapse"),e.jsxDEV(es,{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:979,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:971,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:859,columnNumber:7},this),e.jsxDEV("div",{className:"dk-strip","data-testid":"signal-strip",children:[ts.map(b=>{const G=Te[b],J=s[b],be=J&&K(b),we=ee===b;return e.jsxDEV("div",{className:`sigmod${J?" on":" off"}${be?" idle":""}${we?" open":""}`,"data-testid":`signal-module-${b}`,children:[e.jsxDEV("button",{type:"button",className:"sigmod-toggle","data-testid":`signal-toggle-${b}`,"aria-pressed":J,"aria-label":`${G.name} 신호 ${J?"끄기":"켜기"}`,onClick:()=>t(b),children:[e.jsxDEV("span",{className:"led"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1004,columnNumber:17},this),e.jsxDEV("span",{className:"code",children:G.code},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1005,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:996,columnNumber:15},this),e.jsxDEV("button",{type:"button",className:"sigmod-expand","data-testid":`signal-expand-${b}`,"aria-expanded":we,onClick:()=>g(b),children:[e.jsxDEV("span",{className:"nm",children:G.name},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1014,columnNumber:17},this),e.jsxDEV("span",{className:"st",children:he(b)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1015,columnNumber:17},this),e.jsxDEV(es,{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1016,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1007,columnNumber:15},this)]},b,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:991,columnNumber:13},this)}),ir.map(b=>{const G=rs[b],J=ee===b;if(b==="prs"&&z){const be=f?P.length>0?`${P.length}개 자동 인식`:B.length>0?`${B.length}개 인식(미적용)`:"인식 없음":"꺼짐";return e.jsxDEV("div",{className:`sigmod${f?" on":" off"}${J?" open":""}`,"data-testid":"signal-module-prs",children:[e.jsxDEV("button",{type:"button",className:"sigmod-toggle","data-testid":"signal-toggle-prs","aria-pressed":f,"aria-label":`${G.name} 신호 ${f?"끄기":"켜기"}`,onClick:j,children:[e.jsxDEV("span",{className:"led"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1056,columnNumber:19},this),e.jsxDEV("span",{className:"code",children:G.code},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1057,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1048,columnNumber:17},this),e.jsxDEV("button",{type:"button",className:"sigmod-expand","data-testid":"signal-expand-prs","aria-expanded":J,onClick:()=>g(b),children:[e.jsxDEV("span",{className:"nm",children:
2G.name},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1066,columnNumber:19},this),e.jsxDEV("span",{className:"st",children:be},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1067,columnNumber:19},this),e.jsxDEV(es,{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1068,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1059,columnNumber:17},this)]},b,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1043,columnNumber:15},this)}return b==="llm"&&X?e.jsxDEV("div",{className:`sigmod${p?" on":" off"}${le?" unavailable":""}${J?" open":""}`,"data-testid":"signal-module-llm",children:[e.jsxDEV("button",{type:"button",className:"sigmod-toggle","data-testid":"signal-toggle-llm","aria-pressed":p,"aria-label":`${G.name} 신호 ${p?"끄기":"켜기"}`,onClick:V,children:[e.jsxDEV("span",{className:"led"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1095,columnNumber:19},this),e.jsxDEV("span",{className:"code",children:G.code},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1096,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1087,columnNumber:17},this),e.jsxDEV("button",{type:"button",className:"sigmod-expand","data-testid":"signal-expand-llm","aria-expanded":J,onClick:()=>g(b),children:[e.jsxDEV("span",{className:"nm",children:G.name},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1105,columnNumber:19},this),e.jsxDEV("span",{className:"st",children:oe},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1106,columnNumber:19},this),e.jsxDEV(es,{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1107,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1098,columnNumber:17},this)]},b,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1077,columnNumber:15},this):A?null:e.jsxDEV("div",{className:`sigmod planned${J?" open":""}`,"data-testid":`signal-module-${b}`,children:[e.jsxDEV("span",{className:"sigmod-toggle","aria-hidden":"true",children:[e.jsxDEV("span",{className:"led"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1121,columnNumber:17},this),e.jsxDEV("span",{className:"code",children:G.code},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1122,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1120,columnNumber:15},this),e.jsxDEV("button",{type:"button",className:"sigmod-expand","data-testid":`signal-expand-${b}`,"aria-expanded":J,onClick:()=>g(b),children:[e.jsxDEV("span",{className:"nm",children:G.name},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1131,columnNumber:17},this),e.jsxDEV("span",{className:"st",children:"예정"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1132,columnNumber:17},this),e.jsxDEV(es,{},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1133,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1124,columnNumber:15},this)]},b,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1115,columnNumber:13},this)})]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:984,columnNumber:7},this),e.jsxDEV("div",{className:`dk-detail${ee?" open":""}`,"data-testid":"signal-detail",children:xe()},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:1140,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/SignalDeck.tsx",lineNumber:858,columnNumber:5},this)}const vi=!1;function wi({query:s,onQueryChange:t,onPickImage:n,imageSearchActive:o,imagePreviewUrl:l,imageFileName:a,onClearImage:N,onClearAll:D,clearDisabled:v,imageErrorMessage:m,imageMlUnavailable:y}){const{t:S}=Be(),x=r.useRef(null),[u,R]=r.useState(!1);return r.useEffect(()=>{const f=j=>{var V;if(j.key!=="/"||j.defaultPrevented)return;const p=j.target;if(p instanceof HTMLElement){const C=p.tagName;if(C==="INPUT"||C==="TEXTAREA"||C==="SELECT"||p.isContentEditable||p.closest('[role="dialog"], dialog')!==null)return}j.preventDefault(),(V=x.current)==null||V.focus()};return document.addEventListener("keydown",f),()=>document.removeEventListener("keydown",f)},[]),r.useCallback(()=>{var f;
2R(!0),(f=x.current)==null||f.focus()},[]),e.jsxDEV(e.Fragment,{children:[e.jsxDEV("form",{className:"h5-search search-form",id:"search-form","data-testid":"search-hero",onSubmit:f=>{var j;f.preventDefault(),(j=x.current)==null||j.blur()},children:[e.jsxDEV("svg",{className:"h5-mag icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[e.jsxDEV("circle",{cx:"10.5",cy:"10.5",r:"6.5"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:109,columnNumber:11},this),e.jsxDEV("path",{d:"m16 16 5 5"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:110,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:99,columnNumber:9},this),e.jsxDEV("input",{ref:x,type:"text",value:s,onChange:f=>t(f.target.value),placeholder:S("search.placeholder"),"aria-label":S("search.aria_label"),autoComplete:"off","data-testid":"search-hero-input"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:112,columnNumber:9},this),!v&&e.jsxDEV("button",{type:"button",className:"h5-clear search-clear-all",onClick:D,"data-testid":"status-clear-all",children:"모두 해제"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:123,columnNumber:11},this),e.jsxDEV("button",{type:"button",className:`h5-alt btn search-image${o?" on":""}`,onClick:n,"data-testid":"image-search-upload",title:"이미지를 업로드하거나 결과 영역에 드래그&드롭해 유사 영상을 찾습니다",children:[e.jsxDEV("svg",{className:"icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[e.jsxDEV("rect",{x:"3",y:"4",width:"18",height:"16",rx:"2"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:149,columnNumber:13},this),e.jsxDEV("circle",{cx:"8",cy:"9",r:"1"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:150,columnNumber:13},this),e.jsxDEV("path",{d:"m3 17 6-5 4 4 3-3 5 4"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:151,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:139,columnNumber:11},this),e.jsxDEV("span",{className:"image-label",children:"이미지"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:153,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:132,columnNumber:9},this),vi,e.jsxDEV("button",{type:"submit",className:"h5-go btn primary","data-testid":"search-hero-submit","aria-label":"검색",children:["검색",e.jsxDEV("svg",{className:"icon",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.6",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:e.jsxDEV("path",{d:"M4 12h15m-6-6 6 6-6 6"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:194,columnNumber:13},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:184,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:177,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:90,columnNumber:7},this),(o||u)&&e.jsxDEV("p",{className:"h5-help search-help","data-testid":"search-hero-help",children:[u&&e.jsxDEV("span",{"data-testid":"search-link-hint",children:"영상 링크(YouTube · Vimeo · X)를 붙여넣으면 코퍼스 안의 같은 영상으로 이동합니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:210,columnNumber:13},this),o&&e.jsxDEV("span",{className:"h5-help-img image-active","data-testid":"image-search-active",children:[l&&e.jsxDEV("img",{src:l,alt:"검색 이미지 미리보기","data-testid":"image-search-preview"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:222,columnNumber:17},this),"이미지로 검색 중",a?`: ${a}`:"",e.jsxDEV("button",{type:"button",onClick:N,"data-testid":"image-search-clear","aria-label":"이미지 검색 해제",className:"h5-alt h5-alt-clear btn small",children:"해제"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:229,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:217,columnNumber:13},this),o&&m&&e.jsxDEV("span",{className:"h5-help-warn status-notice error","data-testid":"image-search-error",children:y?m:`이미지 검색 실패: ${m}`},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:242,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:206,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchHero.tsx",lineNumber:87,columnNumber:5},this)}async function gi(s,t){var D;const{context:n,rating:o,note:l,idempotencyKey:a}=s,N=await jr("/feedback",{method:"POST",body:JSON.stringify({surface:"query",client_id:a,...t?{}:{visitor_session:La()},query_text:n.query,query_context:n,payload:{...o!==null?{impression:o}:{},...l?{note:l}:{}}})});if(((D=N.feedback)==null?void 0:D.surface)!=="query"||!N.feedback.id)throw new Error("검색 전체 피드백 저장 확인에 실패했습니다.")}async function Si(s){const t=new URLSearchParams({surface:"query",query_key:s});return(await jr(`/feedback/mine?${t.toString()}`)).feedback}function Di({feedbackMode:s,target:t,signedIn:n,accountId:o}){const[l,a]=r.useState(null),[N,D]=r.useState({}),[v,m]=r.useState({}),[y,S]=r.useState({}),x=r.useRef(!1),u=r.useRef(0),R=r.useRef(new Set),f=r.useRef(N);f.current=N;const j=r.useRef({}),p=n?o??"signed-in":"anonymous",V=r.useRef(p);V.current!==p&&(V.current=p,u.current+=1,x.current=!1,R.current.clear(),j.current={},f.current={},D({}),m({}),S({}),a(null));const C=r.useRef(null),L=r.useRef(null),_=r.useId(),$=l,T=($==null?void 0:$.key)??"",d=N[T]??Xn,k=v[T]??"idle";r.useEffect(()=>{if(!l||!n||R.current.has(l.key))return;const i=l,h=++u.current,O=j.current[i.key];f.current[i.key]===void 0&&m(F=>({...F,[i.key]:"loading"})),Si(i.key).then(F=>{var q;if(h!==u.current||x.current)return;R.current.add(i.key);const z=F.find(P=>P.query_key===i.key);if(!z){f.current[i.key]===void 0&&m(P=>({...P,[i.key]:"idle"}));return}if(O){JSON.stringify([i.key,z.impression,((q=z.note)==null?void 0:q.trim())??""])===O.payload&&(delete j.current[i.key],m(W=>({...W,[i.key]:"saved"})),S(W=>({...W,[i.key]:""})));return}if(f.current[i.key]===void 0){const P={rating:z.impression,note:z.note??""};f.current=Vs(f.current,i.key,P),D(W=>W[i.key]===void 0?Vs(W,i.key,P):W),m(W=>({...W,[i.key]:"saved"}))}}).catch(F=>{h!==u.current||x.current||f.current[i.key]===void 0&&(m(z=>({...z,[i.key]:"failed"})),S(z=>({...z,[i.key]:_s(F,{subject:"내 검색 평가 조회"})})))})},[l,n]);function Q(i){x.current||(f.current=Vs(f.current,T,i),D(h=>Vs(h,T,i)),m(h=>({...h,[T]:"idle"})),S(h=>({...h,[T]:""})),delete j.current[T])}function M(){x.current||(u.current+=1,$&&k==="loading"&&m(i=>({...i,[$.key]:"idle"})),a(null),requestAnimationFrame(()=>{var i;return(i=C.current)==null?void 0:i.focus()}))}async function w(i){if(i.preventDefault(),!$||x.current||!d.rating&&!d.note.trim())return;const h=JSON.stringify([$.key,d.rating,d.note.trim()]),O=V.current,F=j.current[T],z=(F==null?void 0:F.payload)===h?F.submission:Zn($,d,yr());j.current[T]={payload:h,submission:z},x.current=!0,u.current+=1,m(q=>({...q,[T]:"pending"})),S(q=>({...q,[T]:""}));try{if(await gi(z,n),O!==V.current)return;m(q=>({...q,[T]:"saved"})),delete j.current[T]}catch(q){if(O!==V.current)return;m(P=>({...P,[T]:"failed"})),S(P=>({...P,[T]:_s(q,{subject:"검색 전체 피드백"})}))}finally{O===V.current&&(x.current=!1)}}return!$&&(!s||!t)?null:e.jsxDEV("aside",{className:"query-feedback-dock","aria-label":"검색 전체 평가","data-testid":"query-feedback-dock",children:$?e.jsxDEV("section",{className:"query-feedback-panel",id:_,"aria-labelledby":`${_}-title`,"data-testid":"query-feedback-panel",onKeyDown:i=>{i.key==="Escape"&&(i.stopPropagation(),M())},children:[e.jsxDEV("header",{className:"query-feedback-head",children:[e.jsxDEV("h2",{ref:L,id:`${_}
2-title`,tabIndex:-1,children:"검색 전체 평가"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:206,columnNumber:13},this),e.jsxDEV("button",{type:"button",className:"query-feedback-close",onClick:M,disabled:k==="pending","aria-label":"검색 전체 평가 닫기","data-testid":"query-feedback-close",children:e.jsxDEV(ie,{name:"close"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:217,columnNumber:15},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:209,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:205,columnNumber:11},this),e.jsxDEV("p",{className:"query-feedback-hint",children:"카드의 관련도 0~4와 별개로, 이번 검색 전체를 1~5로 평가해 주세요."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:220,columnNumber:11},this),e.jsxDEV("div",{className:"query-feedback-context","data-testid":"query-feedback-context",children:[e.jsxDEV("strong",{children:"평가할 검색"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:227,columnNumber:13},this),e.jsxDEV("p",{children:$.context.query.trim()?`검색어: ${$.context.query}`:"검색어 없음 (조건 검색)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:228,columnNumber:13},this),e.jsxDEV("p",{children:["적용 조건:"," ",$.conditions.length>0?$.conditions.join(" · "):"없음"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:233,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:223,columnNumber:11},this),e.jsxDEV("form",{onSubmit:i=>void w(i),children:[e.jsxDEV("fieldset",{className:"query-feedback-ratings",disabled:k==="pending",children:[e.jsxDEV("legend",{children:"전체 만족도 (선택)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:245,columnNumber:15},this),e.jsxDEV("div",{className:"query-feedback-rating-row",children:[1,2,3,4,5].map(i=>e.jsxDEV("button",{type:"button",className:"query-feedback-rating","aria-pressed":d.rating===i,"aria-label":`검색 전체 만족도 ${i}점${d.rating===i?", 선택 해제":""}`,"data-testid":`query-feedback-rating-${i}`,onClick:()=>Q({...d,rating:d.rating===i?null:i}),children:i},i,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:248,columnNumber:19},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:246,columnNumber:15},this),e.jsxDEV("p",{className:"query-feedback-hint",children:"선택한 점수를 다시 누르면 점수 없이 의견만 보낼 수 있어요."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:266,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:241,columnNumber:13},this),e.jsxDEV("label",{className:"query-feedback-note-label",htmlFor:`${_}-note`,children:"상세 의견 (선택)"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:270,columnNumber:13},this),e.jsxDEV("textarea",{id:`${_}-note`,value:d.note,onChange:i=>Q({...d,note:i.target.value}),disabled:k==="pending",maxLength:2e3,placeholder:"이번 검색의 결과나 조건에 대해 알려 주세요","data-testid":"query-feedback-note"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:276,columnNumber:13},this),e.jsxDEV("div",{className:"query-feedback-actions",children:[e.jsxDEV("button",{type:"submit",className:"btn query-feedback-submit",disabled:k==="pending"||!d.rating&&!d.note.trim()||k==="saved","data-testid":"query-feedback-submit",children:k==="pending"?"전송 중":k==="failed"?"다시 보내기":"피드백 보내기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:288,columnNumber:15},this),e.jsxDEV("span",{role:"status","aria-live":"polite","data-testid":"query-feedback-status",children:k==="saved"?"서버에 저장됐습니다.":k==="pending"?"서버 응답
2을 기다리는 중입니다.":k==="loading"?"내 이전 평가를 확인하는 중입니다.":k==="failed"?y[T]:""},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:304,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:287,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:240,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:193,columnNumber:9},this):e.jsxDEV("button",{ref:C,type:"button",className:"btn query-feedback-open","aria-expanded":!1,"aria-controls":_,"data-testid":"query-feedback-open",onClick:()=>{t&&(a(t),requestAnimationFrame(()=>{var i;return(i=L.current)==null?void 0:i.focus()}))},children:"검색 전체 평가"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:323,columnNumber:9},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/QueryFeedbackPanel.tsx",lineNumber:187,columnNumber:5},this)}function Ur({id:s,label:t,kind:n,color:o,mode:l,isBroad:a=!1,range:N,graded:D=!0,testId:v,modeTestId:m,minTestId:y,maxTestId:S,removeTestId:x,keyboardStep:u=1,canCycleMode:R=!0,onModeCycle:f,onRangeChange:j,onRemove:p}){const{t:V}=Be(),C=r.useRef(null),L=r.useRef(null),_=r.useRef(!1),[$,T]=r.useState(!1),{min:d,max:k}=Lr(N),Q=l==="include"||l==="prefer",M=Q&&D,w=l==="off"?"미선택":V(rn[l]),i=M?d===0&&k===100?"정도 무관":`${d}~${k}%`:"",h=[w,n,a?"묶음":"",t,i].filter(Boolean).join(" · "),O=B=>j(ln(B.min,B.max)),F=B=>{if(!M||B.button!==0||!(B.target instanceof Element))return;const X=C.current;if(!X)return;const Z=B.target.closest(".fc-edge"),te=B.target.closest(".degree-short"),le=cr(X,B.clientX),oe=Z?Z.classList.contains("fc-edge-min")?"min":"max":B.target.closest(".fc-fill")?"span":on(le,d,k);L.current={kind:oe,width:k-d,grab:le-d,startX:B.clientX,moved:!!Z},_.current=!1,B.preventDefault(),Z instanceof HTMLElement&&Z.focus({preventScroll:!0}),te instanceof HTMLElement?te.setPointerCapture(B.pointerId):X.setPointerCapture(B.pointerId),T(!0),!Z&&!te&&oe!=="span"&&O(oe==="min"?Ws(le,k):Js(le,d))},z=B=>{const X=L.current,Z=C.current;if(!X||!Z||!X.moved&&Math.abs(B.clientX-X.startX)<3)return;X.moved=!0,_.current=!0;const te=cr(Z,B.clientX);switch(X.kind){case"min":O(Ws(te,k));break;case"max":O(Js(te,d));break;case"span":O(an(te-X.grab,X.width));break}},q=()=>{L.current=null,T(!1)},P=()=>{q(),_.current=!1,j({min:ns,max:is})},W=(B,X)=>{if(X.key.toLowerCase()==="r"&&!X.ctrlKey&&!X.metaKey&&!X.altKey){X.preventDefault(),P();return}const Z=nn(X.key,X.shiftKey,u);if(!Z)return;X.preventDefault();const te="absolute"in Z?Z.absolute:(B==="min"?d:k)+Z.step;O(B==="min"?Ws(te,k):Js(te,d))},de=()=>{R&&f()};return e.jsxDEV("span",{className:`fchip selection-chip ${l} m-${l} fc-applied${a?" is-broad":""}${$?" is-drag":""}${D?"":" is-discrete"}`,style:o?{"--axc":o}:void 0,"data-testid":v??`applied-chip-${s}`,"data-mode":l,"data-min":N.min,"data-max":N.max,"data-excluded":l==="exclude"?"true":void 0,"data-fill-start":Q&&(!D||d===0),"data-fill-end":Q&&(!D||k===100),role:"group","aria-label":h,title:h,children:[e.jsxDEV("button",{type:"button",className:"fc-cap",disabled:!R,"data-testid":m??`selchip-mode-${s}`,"aria-label":`${t} 조건 모드: ${w}, 누르면 다음 모드`,"data-excluded":l==="exclude"?"true":void 0,"aria-pressed":Q,onClick:de,children:[e.jsxDEV(os,{mode:l},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:212,columnNumber:9},this),e.jsxDEV("span",{children:w},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:213,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:202,columnNumber:7},this),e.jsxDEV("span",{ref:C,className:"fc-track",onPointerDown:F,onPointerMove:z,onPointerUp:q,onPointerCancel:q,onLostPointerCapture:q,onDoubleClick:M?B=>{B.stopPropagation(),P()}:void 0,title:M?"양끝을 끌어 정도 조절 · 더블클릭 또는 R 키로 초기화":void 0,children:[Q&&e.jsxDEV("span",{className:"fc-fill",style:D?{left:`${d}%`,width:`${k-d}%`}:{left:"0%",width:"100%"}},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:238,columnNumber:11},this),e.jsxDEV("span",{className:"fc-body",children:[e.jsxDEV("span",{className:"fc-label",title:t,children:t},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:248,columnNumber:11},this),i&&e.jsxDEV("button",{type:"button",className:"degree-short","aria-label":`${t} 정도 ${i} · 눌러 초기화`,title:"눌러 정도 초기화",onClick:B=>{B.stopPropagation(),(B.detail===0||!_.current)&&P(),_.current=!1},children:i},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:252,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:247,columnNumber:9},this),M&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("button",{type:"button",className:"fc-edge fc-edge-min",style:{left:`${d}%`},"data-testid":y??`selchip-min-${s}`,role:"slider","aria-label":`${t} 최소 정도`,"aria-valuemin":0,"aria-valuemax":k-lr,"aria-valuenow":d,onClick:B=>B.stopPropagation(),"aria-valuetext":`${d}%`,onKeyDown:B=>W("min",B)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:269,columnNumber:13},this),e.jsxDEV("button",{type:"button",className:"fc-edge fc-edge-max",style:{left:`${k}%`},"data-testid":S??`selchip-max-${s}`,role:"slider","aria-label":`${t} 최대 정도`,"aria-valuemin":d+lr,"aria-valuemax":100,"aria-valuenow":k,onClick:B=>B.stopPropagation(),"aria-valuetext":`${k}%`,onKeyDown:B=>W("max",B)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:283,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:268,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:215,columnNumber:7},this),p&&e.jsxDEV("span",{className:`fc-endcap${Q&&k===100?" lit":""}`,children:e.jsxDEV("button",{type:"button",className:"fc-x","aria-label":`${t} 조건 해제`,"data-testid":x??`applied-chip-remove-${s}`,onClick:p,children:e.jsxDEV(ie,{name:"close"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:309,columnNumber:13},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:302,columnNumber:11},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:301,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SelFillChip.tsx",lineNumber:188,columnNumber:5},this)}const Nr={grid:"그리드","3d":"3D 임베딩"};function Ei({chips:s,detailOpen:t,onToggleDetail:n,viewLabel:o,viewMenuItems:l}){const[a,N]=r.useState(!1),[D,v]=r.useState(null),m=r.useRef(null),[y,S]=r.useState(0);if(r.useEffect(()=>{const f=document.getElementById("site-header");if(!f)return;const j=()=>v(document.getElementById("header-filter-summary"));j();const p=new MutationObserver(j);return p.observe(f,{childList:!0,subtree:!0}),()=>p.disconnect()},[]),r.useEffect(()=>{if(!a)return;const f=j=>{j.key==="Escape"&&N(!1)};return document.addEventListener("keydown",f),()=>document.removeEventListener("keydown",f)}
2,[a]),r.useEffect(()=>{const f=document.getElementById("site-header");if(f)return f.classList.toggle("v2-tags-expanded",a&&D!==null),()=>f.classList.remove("v2-tags-expanded")},[a,D]),r.useLayoutEffect(()=>{const f=m.current;if(!f||a)return;const j=()=>{const C=Array.from(f.children);if(C.length===0){S(0);return}const L=C[0].offsetTop,_=C.filter($=>$.offsetTop===L).length;S(Math.max(0,C.length-_))},p=requestAnimationFrame(j),V=new ResizeObserver(j);return V.observe(f),()=>{cancelAnimationFrame(p),V.disconnect()}},[a,s,D]),!D)return null;const x={prefer:0,exclude:1,include:2},u=f=>{var j;return((j=f.degree)==null?void 0:j.mode)??(f.excluded?"exclude":"include")},R=[...s].sort((f,j)=>x[u(f)]-x[u(j)]);return Aa.createPortal(e.jsxDEV(e.Fragment,{children:[e.jsxDEV("span",{className:"header-chip-row",ref:m,children:R.map(f=>{const j=u(f),p=f.degree&&f.degree.graded!==!1,V=f.degree?Lr(f.degree.range):null;return e.jsxDEV("span",{className:`selection-chip header-selection-chip ${j}`,"data-testid":`header-chip-${f.id}`,children:[e.jsxDEV("span",{className:"header-chip-symbol","aria-hidden":"true",children:e.jsxDEV(os,{mode:j},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:287,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:286,columnNumber:15},this),e.jsxDEV("span",{children:f.label},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:289,columnNumber:15},this),p&&V&&j!=="exclude"&&e.jsxDEV("span",{className:"degree-short",children:[V.min,"~",V.max,"%"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:291,columnNumber:17},this)]},f.id,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:281,columnNumber:13},this)})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:275,columnNumber:7},this),e.jsxDEV("span",{className:"header-filter-actions",children:[!a&&y>0&&e.jsxDEV("button",{type:"button",className:"header-tag-more","data-testid":"header-tag-more","aria-label":`가려진 선택 태그 ${y}개 모두 보기`,onClick:()=>N(!0),children:["+",y]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:305,columnNumber:11},this),e.jsxDEV("button",{type:"button",className:"header-tags-expand","aria-expanded":a,"data-testid":"header-tags-expand",onClick:()=>{if(R.length===0){n();return}N(f=>!f)},children:[e.jsxDEV("span",{children:R.length===0?"태그 고르기":a?"접기":"펼치기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:329,columnNumber:11},this),R.length>0&&e.jsxDEV(mt,{direction:a?"up":"down"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:337,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:315,columnNumber:9},this),e.jsxDEV(tt,{label:"보기",value:o,testId:"header-view-menu",ariaLabel:"결과 보기 방식",className:"header-view-menu",hideValue:!0,children:l},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:342,columnNumber:9},this),e.jsxDEV("button",{type:"button",className:"header-detail-button","aria-expanded":t,"aria-haspopup":"dialog","data-testid":"header-filter-detail-open",onClick:n,children:[e.jsxDEV("span",{children:"자세히"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:360,columnNumber:11},this),e.jsxDEV(ie,{name:"filter",className:"h5-icon-filter"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:364,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:352,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:299,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:272,columnNumber:5},this),D)}const xr="moref:hint:degree-drag",vr="moref:hint:query-feedback";function yi({countNode:s,busy:t=!1,hints:n,chips:o,recognizedChips:l=[],recognizedOverflow:a=0,legacyChipBars:N,mobileFilterTrigger:D,mobileSelectionControl:v,sortOptions:m,sort:y,onSortChange:S,sortScopeNote:x,viewMode:u,onViewModeChange:R,showCardTags:f,onShowCardTagsChange:j,displayMode:p,onDisplayModeChange:V,matchThreshold:C,onMatchThresholdChange:L,collapseSegments:_,onCollapseSegmentsChange:$,creditMode:T,onCreditModeChange:d,explain:k,onExplainChange:Q,detailOpen:M,onToggleDetail:w,feedbackMode:i,feedbackToggle:h,onOpenMoodPad:O}){var se,Se;
2const{t:F}=Be(),{settings:z,updateSettings:q}=it(),P=z.showPlatform,[W,de]=r.useState(()=>{if(typeof window>"u")return!1;try{return localStorage.getItem(xr)!=="1"}catch{return!1}}),[B,X]=r.useState(()=>{if(typeof window>"u")return!1;try{return localStorage.getItem(vr)!=="1"}catch{return!1}}),Z=()=>{try{localStorage.setItem(xr,"1")}catch{}de(!1)},te=()=>{try{localStorage.setItem(vr,"1")}catch{}X(!1)},le=((se=m.find(I=>I.id===y))==null?void 0:se.label)??((Se=m[0])==null?void 0:Se.label)??"",oe=le==="관련도"?"관련도순":le,ee=I=>e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"h5-pop-sec",role:"presentation",children:"결과 배치"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:472,columnNumber:7},this),e.jsxDEV("button",{type:"button",role:"menuitemradio","aria-checked":u==="grid","aria-selected":u==="grid",className:`h5-pop-item${u==="grid"?" on":""}`,"data-testid":"view-mode-grid",onClick:()=>{R("grid"),I()},children:["그리드",u==="grid"&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:488,columnNumber:33},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:475,columnNumber:7},this),e.jsxDEV("button",{type:"button",role:"menuitemradio","aria-checked":u==="3d","aria-selected":u==="3d",className:`h5-pop-item${u==="3d"?" on":""}`,"data-testid":"view-mode-3d",onClick:()=>{R("3d"),I()},children:["3D 임베딩 ",e.jsxDEV("em",{children:"2.0"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:502,columnNumber:16},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:490,columnNumber:7},this),u==="grid"&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"h5-pop-sec",role:"presentation",children:"카드 표시"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:507,columnNumber:11},this),e.jsxDEV("button",{type:"button",role:"menuitemcheckbox","aria-checked":f,className:`h5-pop-item${f?" on":""}`,"aria-pressed":f,"data-testid":"card-tags-toggle",onClick:()=>j(!f),children:[f?"태그 숨김":"태그 표시",f&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:520,columnNumber:30},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:510,columnNumber:11},this),e.jsxDEV("button",{type:"button",role:"menuitemcheckbox","aria-checked":P,className:`h5-pop-item${P?" on":""}`,"aria-pressed":P,"data-testid":"card-platform-toggle",onClick:()=>q({showPlatform:!P}),children:[P?"플랫폼 숨김":"플랫폼 표시",P&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:538,columnNumber:30},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:526,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:506,columnNumber:9},this),e.jsxDEV("div",{className:"h5-pop-sec",role:"presentation",children:"결과 단위"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:543,columnNumber:7},this),e.jsxDEV("button",{type:"button",role:"menuitemradio","aria-checked":p==="video",className:`h5-pop-item${p==="video"?" on":""}`,"data-testid":"display-mode-video",onClick:()=>V("video"),children:["영상 단위",p==="video"&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:555,columnNumber:37},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:546,c
2olumnNumber:7},this),e.jsxDEV("button",{type:"button",role:"menuitemradio","aria-checked":p==="hybrid",className:`h5-pop-item${p==="hybrid"?" on":""}`,"data-testid":"display-mode-hybrid",onClick:()=>V("hybrid"),children:["혼합 모드",p==="hybrid"&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:566,columnNumber:38},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:557,columnNumber:7},this),p==="hybrid"&&e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:"h5-pop-row",role:"none",children:[e.jsxDEV("span",{children:"전체매칭 기준"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:572,columnNumber:13},this),e.jsxDEV("input",{type:"range",min:0,max:100,step:5,value:Math.round(C*100),onChange:A=>L(Number(A.target.value)/100),"data-testid":"match-threshold-slider","aria-label":"전체매칭 기준"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:573,columnNumber:13},this),e.jsxDEV("span",{className:"h5-pop-num",children:[Math.round(C*100),"%"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:585,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:571,columnNumber:11},this),e.jsxDEV("label",{className:"h5-pop-row",role:"none",children:[e.jsxDEV("input",{type:"checkbox",checked:!_,onChange:A=>$(!A.target.checked),"data-testid":"collapse-segments-checkbox"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:590,columnNumber:13},this),"같은 영상 세그먼트 펼치기"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:589,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:570,columnNumber:9},this),e.jsxDEV("div",{className:"h5-pop-sec",role:"presentation",children:"대표 크레딧 기준"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:601,columnNumber:7},this),e.jsxDEV("div",{className:"h5-pop-row",role:"none",children:e.jsxDEV("select",{value:T,onChange:A=>{const re=A.target.value;Pa(re)&&d(re)},"aria-label":"대표 크레딧 기준",title:"카드·상세에 표시할 대표 아티스트 기준(영상 작업자/원곡·보컬/전체 첫 순위)","data-testid":"credit-mode-select-search",children:Fa.map(A=>e.jsxDEV("option",{value:A,children:["대표: ",Ta[A]]},A,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:616,columnNumber:13},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:605,columnNumber:9},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:604,columnNumber:7},this),e.jsxDEV("div",{className:"h5-pop-sec",role:"presentation",children:"설명"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:632,columnNumber:7},this),e.jsxDEV("button",{type:"button",role:"menuitemcheckbox","aria-checked":k,className:`h5-pop-item${k?" on":""}`,"aria-pressed":k,"data-testid":"explain-toggle",onClick:()=>Q(!k),children:["설명 모드: 왜 이 결과가 나왔나",k&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:645,columnNumber:21},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:635,columnNumber:7},this),e.jsxDEV("div",{className:"h5-pop-sec",role:"presentation",children:"「자세히」 열림 방식"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:652,columnNumber:7},this),[["modal","모달"],["inline","인라인"]].map(([A,re])=>e.jsxDEV("button",{type:"button",role:"menuitemradio","aria-checked":z.detailOpenMode===A,className:`h5-pop-item${z.detailOpenMode===A?" on":""}`,"data-testid":`detail-open-mode-${A}`,onClick:()=>q({detailOpenMode:A}),children:[re,z.detailOpenMode===A&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:672,columnNumber:13},this)]},A,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:661,columnNumber:9},this))]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:471,columnNumber:5},this);return e.jsxDEV("div",{className:"h5-status search-status-v2","data-testid":"search-status-line",children:[e.jsxDEV(Ei,{chips:o,detailOpen:M,onToggleDetail:w,viewLabel:Nr[u],viewMenuItems:ee},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:688,columnNumber:7},this),i&&B&&e.jsxDEV("span",{className:"draghint query-feedback-hint","data-testid":"query-feedback-hint",children:["카드의 0~4는 검색과 얼마나 맞는지 평가해요. 누르면 바로 서버에 저장되고, 「정정」으로 다른 이유를 알려 줄 수 있어요.",e.jsxDEV("button",{type:"button",className:"draghint-close","aria-label":"쿼리 피드백 안내 닫기",onClick:te,children:e.jsxDEV(ie,{name:"close",className:"h5-icon-close"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:711,columnNumber:13},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:705,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:699,columnNumber:9},this),e.jsxDEV("div",{className:"selected-strip",children:[n.map(I=>e.jsxDEV("span",{className:"h5-hint","data-testid":I.testId,children:I.text},I.id,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:731,columnNumber:11},this)),e.jsxDEV("div",{className:"h5-chips","data-testid":"applied-chips",children:[o.map(I=>I.degree?e.jsxDEV(Ur,{id:I.id,label:I.label,kind:I.kind,color:I.color,mode:I.degree.mode,isBroad:I.degree.isBroad,range:I.degree.range,graded:I.degree.graded??!0,onModeCycle:I.degree.onModeCycle,onRangeChange:I.degree.onRangeChange,onRemove:I.onRemove},I.id,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:739,columnNumber:15},this):e.jsxDEV("span",{className:`h5-chip${I.excluded?" h5-chip-exc":""}`,style:I.color?{"--axc":I.color}:void 0,"data-testid":`applied-chip-${I.id}`,children:[e.jsxDEV("i",{"aria-hidden":"true"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:762,columnNumber:17},this),I.kind&&e.jsxDEV("span",{className:"h5-chip-kind",children:I.kind},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:763,columnNumber:31},this),I.excluded&&e.jsxDEV(os,{mode:"exclude",className:"h5-chip-mode-icon"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:765,columnNumber:19},this),e.jsxDEV("span",{className:"h5-chip-label",title:I.label,children:I.label},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:767,columnNumber:17},this),e.jsxDEV("button",{type:"button","aria-label":`${I.label} ì¡°ê±´ 해제`,"data-testid":`applied-chip-remove-${I.id}`,onClick:I.onRemove,children:e.jsxDEV(ie,{name:"close",className:"h5-icon-close"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:776,columnNumber:19},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:770,columnNumber:17},this)]},I.id,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:754,columnNumber:15},this)),l.length>0&&o.length>0&&e.jsxDEV("span",{className:"h5-chip-div","aria-hidden":"true"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:785,columnNumber:13},this),l.map(I=>e.jsxDEV("span",{className:"h5-chip h5-chip-auto",style:I.color?{"--axc":I.color}:void 0,"data-testid":`recognized-chip-${I.id}`,title:F("search.recognized_tooltip"),children:[e.jsxDEV("span",{className:"h5-chip-auto-badge",children:F("search.recognized_badge")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:797,columnNumber:15},this),e.jsxDEV("button",{type:"button",className:"h5-chip-auto-label","aria-label":`${I.label}: ${F("search.recognized_promote")}`,"data-testid":`recognized-chip-promote-${I.id}`,onClick:I.onPromote,children:I.label},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:800,columnNumber:15},this),e.jsxDEV("button",{type:"button","aria-label":`${I.label}: ${F("search.recognized_suppress")}`,"data-testid":`recognized-chip-suppress-${I.id}`,onClick:I.onSuppress,children:e.jsxDEV(ie,{name:"close",className:"h5-icon-close"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:815,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:809,columnNumber:15},this)]},I.id,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:788,columnNumber:13},this)),l.length>0&&a>0&&e.jsxDEV("span",{className:"h5-chip-auto-more","data-testid":"recognized-chip-overflow",title:`${F("search.recognized_more")}: ${a}`,children:["+",a]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:820,columnNumber:13},this),N]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:736,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:729,columnNumber:7},this),W&&o.length>0&&e.jsxDEV("p",{className:"degree-hint","data-testid":"degree-drag-hint",children:["태그 칩 양끝을 끌면 정도 범위를 조절할 수 있어요",e.jsxDEV("button",{type:"button",className:"draghint-close","aria-label":"정도 범위 조절 안내 닫기",onClick:Z,children:e.jsxDEV(ie,{name:"close",className:"h5-icon-close"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:848,columnNumber:13},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:842,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:840,columnNumber:9},this),v&&e.jsxDEV("div",{className:"mobile-selection-control",children:v},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:854,columnNumber:9},this),e.jsxDEV("div",{className:"results-toolbar",children:[e.jsxDEV("h2",{className:"h5-count",children:[s,t&&e.jsxDEV("span",{className:"h5-busy","data-testid":"search-busy",role:"status","aria-label":"검색 ê²°ê
2³¼ë¥¼ 새로 불러오는 중",children:e.jsxDEV("i",{"aria-hidden":"true"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:868,columnNumber:15},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:862,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:859,columnNumber:9},this),e.jsxDEV("div",{className:"h5-right toolbar-actions",children:[D&&e.jsxDEV("div",{className:"toolbar-mobile-filter-entry",children:D},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:875,columnNumber:13},this),x,O&&e.jsxDEV("button",{type:"button",className:"h5-mood btn",onClick:O,"data-testid":"toolbar-open-mood-pad",children:[e.jsxDEV("span",{children:"분위기로 찾기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:891,columnNumber:15},this),e.jsxDEV(ie,{name:"arrow",className:"h5-icon-arrow-up-right"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:892,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:885,columnNumber:13},this),e.jsxDEV(tt,{label:"",value:oe,testId:"sort-menu",ariaLabel:"ê²°ê³¼ 정렬 기준",children:I=>e.jsxDEV("div",{role:"none","data-testid":"sortwrap",children:m.map(A=>e.jsxDEV("button",{type:"button",role:"menuitemradio","aria-checked":y===A.id,className:`h5-pop-item${y===A.id?" on":""}`,"data-sort":A.id,title:A.title,"aria-pressed":y===A.id,"data-testid":`sort-${A.id}`,onClick:()=>{S(A.id),I()},children:[A.label,y===A.id&&e.jsxDEV(Oe,{className:"h5-pop-tick"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:925,columnNumber:39},this)]},A.id,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:909,columnNumber:19},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:907,columnNumber:15},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:896,columnNumber:11},this),e.jsxDEV(tt,{label:"보기",value:Nr[u],testId:"view-menu",ariaLabel:"ê²°ê³¼ 보기 방식",hideValue:!0,children:ee},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:932,columnNumber:11},this),h,e.jsxDEV("button",{type:"button",className:`h5-deep btn desktop-more${M?" on":""}`,onClick:w,"aria-expanded":M,"aria-haspopup":"dialog","data-testid":"filter-detail-open",children:[e.jsxDEV("span",{children:"자세히"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:951,columnNumber:13},this),e.jsxDEV(ie,{name:"filter",className:"h5-icon-filter"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:959,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:943,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:873,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:858,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/SearchStatusLine.tsx",lineNumber:683,columnNumber:5},this)}function wr({axisId:s,node:t,ctl:n,kind:o="leaf",tools:l}){const a=lt(t),N=cn(t.id,n.taxonomyFilter,n.excludedNodeIds),D=o==="group",v=e.jsxDEV(mn,{id:t.id,label:a,mode:N,axisId:s,testId:`sheet-inline-${t.id}`,buttonTestId:D?`sheet-group-select-${t.id}`:`sheet-chip-${t.id}`,onCycle:()=>D?n.onCycleGroup(t.id):n.onCycle(t.id),suffix:!D&&typeof t.published_item_count=="number"?e.jsxDEV("small",{title:"코퍼스 전체에서 이 태그가 붙은 발행 영상 수",children:t.published_item_count},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerNodeRow.tsx",lineNumber:37,columnNumber:11},this):void 0},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerNodeRow.tsx",lineNumber:25,columnNumber:5},this);return e.jsxDEV("div",{className:`picker-leaf-row${D?" picker-parent-row":""}${N==="off"?"":` ${N}`}`,"data-picker-leaf-row":D?void 0:t.id,children:e.jsxDEV("div",{className:"picker-leaf-line",children:[v,l]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerNodeRow.tsx",lineNumber:50,columnNumber:7},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerNodeRow.tsx",lineNumber:46,columnNumber:5},this)}function ki({groupId:s,ungrouped:t,closed:n,children:o}){const l=dn();return e.jsxDEV("div",{ref:l,className:`picker-group-leaves${t?" picker-ungrouped":""}`,id:`sheet-group-leaves-${s}`,hidden:n,children:o},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:45,columnNumber:5},this)}function ji({axisId:s,nodes:t,isLoading:n,active:o,hidden:l,ctl:a}){const{locale:N}=Be(),D=Cs[s],v=r.useMemo(()=>un(t),[t]),m=a.query.trim().toLocaleLowerCase("ko"),y=p=>!m||lt(p).toLocaleLowerCase("ko").includes(m),S=v.flatMap(p=>p.leaves.filter(y)),x=new Set(a.expandedAxes.has(s)||m?S.map(p=>p.id):S.slice(0,Xs).map(p=>p.id)),u=v.map(p=>({...p,leaves:p.leaves.filter(V=>x.has(V.id))})).filter(p=>p.leaves.length>0),R=new Set(v.flatMap(p=>p.leaves.map(V=>V.id))),f=new Set([...R,...v.flatMap(p=>p.node?[p.node.id]:[])]),j=new Set([...a.taxonomyFilter.selectedNodeIds,...a.taxonomyFilter.preferNodeIds??[],...a.excludedNodeIds].filter(p=>f.has(p))).size;return e.jsxDEV("section",{className:`h5-fx-col v2-axis ss-axis picker-axis${o?" picker-axis-active":""}`,style:{"--axc":D.color,"--picker-axis":D.color,"--picker-pale":`var(${D.colorToken}-fill)`,"--ss-axis":D.color},"data-v2-axis":s,"data-testid":`sheet-axis-${s}`,hidden:l,children:[e.jsxDEV("header",{className:"h5-fx-head",children:[e.jsxDEV("h3",{className:"ss-axis-name",children:[e.jsxDEV("i",{className:"dot","aria-hidden":"true"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:141,columnNumber:11},this),Vr(s,N)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:140,columnNumber:9},this),e.jsxDEV("small",{children:[j,"/",R.size]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:144,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:139,columnNumber:7},this),n?e.jsxDEV("p",{className:"h5-fx-hint ss-axis-state picker-state","data-state":"loading",role:"status",children:"불러오는 중…"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:150,columnNumber:9},this):R.size===0?e.jsxDEV("p",{className:"h5-fx-hint ss-axis-state picker-state","data-state":"empty",role:"status",children:"발행된 항목이 아직 없어요."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:158,columnNumber:9},this):e.jsxDEV(e.Fragment,{children:[u.map(p=>{const V=`${s}:${p.id}`,C=!m&&a.closedGroups.has(V),L=e.jsxDEV("span",{className:"picker-group-tools",children:[e.jsxDEV("small",{children:[p.leaves.length,"개"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:172,columnNumber:17},this),e.jsxDEV("button",{type:"button",className:"picker-group-toggle","aria-expanded":!C,"aria-label":`${p.label} ${C?"펼치기":"접기"}`,"aria-controls":`sheet-group-leaves-${V}`,"data-testid":`sheet-group-${p.id}`,onClick:()=>a.onToggleGroup(V),children:e.jsxDEV(mt,{className:`picker-group-disclosure${C?" closed":""}`},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:182,columnNumber:19},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:173,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:171,columnNumber:15},this);
2return e.jsxDEV("section",{className:"picker-group","data-picker-group-section":V,children:[p.node?e.jsxDEV(wr,{axisId:s,node:p.node,ctl:a,kind:"group",tools:L},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:195,columnNumber:19},this):e.jsxDEV("div",{className:"picker-group-heading",children:[e.jsxDEV("span",{children:p.label},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:204,columnNumber:21},this),L]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:203,columnNumber:19},this),e.jsxDEV(ki,{groupId:V,ungrouped:!p.node,closed:C,children:p.leaves.map(_=>e.jsxDEV(wr,{axisId:s,node:_,ctl:a},_.id,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:214,columnNumber:21},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:208,columnNumber:17},this)]},V,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:189,columnNumber:15},this)}),S.length===0&&e.jsxDEV("p",{className:"picker-no-tags",role:"status",children:"일치하는 태그가 없어요."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:226,columnNumber:13},this),S.length>Xs&&!m&&e.jsxDEV("button",{type:"button",className:"h5-fx-more ss-link picker-more","aria-expanded":a.expandedAxes.has(s),onClick:()=>a.onToggleAxisMore(s),"data-testid":`sheet-more-${s}`,children:a.expandedAxes.has(s)?"접기":`${S.length-Xs}개 더 보기`},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:231,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:166,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/picker/PickerAxisColumn.tsx",lineNumber:127,columnNumber:5},this)}const Vi="(max-width: 640px)",_i=[{id:"all",label:"전체"},{id:"short",label:"숏폼 ≤60초"},{id:"one_to_three",label:"1~3분"},{id:"over_three",label:"3분+"}],Ri=[{id:"warm",label:"따뜻한"},{id:"neutral",label:"중간"},{id:"cool",label:"차가운"}];function Ci({nodesById:s,axisOfNode:t,taxonomyFilter:n,excludedNodeIds:o,onCycle:l,onDegreeChange:a,onRemove:N,onClearAll:D}){const v=r.useMemo(()=>{const m=[],y=(S,x)=>{var u;for(const R of S){const f=s.get(R);f&&m.push({id:R,mode:x,label:lt(f),axisId:t.get(R),degree:x==="exclude"||(u=n.degrees)==null?void 0:u[R]})}};return y(n.preferNodeIds??[],"prefer"),y(n.selectedNodeIds,"include"),y(o,"exclude"),m},[s,t,n,o]);return e.jsxDEV("div",{className:"ss-selection picker-selection",id:"ss-selection","data-testid":"sheet-selection",children:[e.jsxDEV("div",{className:"picker-selection-heading",children:[e.jsxDEV("b",{children:["선택한 조건 ",e.jsxDEV("span",{children:v.length},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:190,columnNumber:18},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:189,columnNumber:9},this),e.jsxDEV("button",{type:"button",disabled:v.length===0,title:"선택한 태그를 모두 해제합니다(검색어·게시일 등 다른 조건은 그대로)","data-testid":"sheet-clear-all",onClick:D,children:"모두 해제"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:194,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:188,columnNumber:7},this),e.jsxDEV("div",{className:"picker-selected-list",children:v.length===0?e.jsxDEV("span",{className:"picker-selection-empty",children:"선택한 태그가 없습니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:206,columnNumber:11},this):v.map(m=>{const y=m.axisId?Cs[m.axisId]:null;return e.jsxDEV(Ur,{id:m.id,label:m.label,mode:m.mode,color:y==null?void 0:y.color,range:m.degree??{min:ns,max:is},graded:!Fr(m.axisId??null),testId:`sheet-selected-${m.id}`,modeTestId:`sheet-selected-cycle-${m.id}`,minTestId:`sheet-selected-min-${m.id}
2`,maxTestId:`sheet-selected-max-${m.id}`,removeTestId:`sheet-selected-remove-${m.id}`,onModeCycle:()=>l(m.id),onRangeChange:S=>a(m.id,S),onRemove:()=>N(m.id)},m.id,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:213,columnNumber:15},this)})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:204,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:183,columnNumber:5},this)}function $i({onClose:s,taxonomyFilter:t,onTaxonomyChange:n,excludedNodeIds:o,onExcludedChange:l,dateRange:a,onDateRangeChange:N,durationPreset:D,onDurationPresetChange:v,monochrome:m,onMonochromeChange:y,orientation:S,onOrientationChange:x,colorFilter:u,onColorFilterChange:R,motionFilter:f,onMotionFilterChange:j,signalDeck:p,total:V,totalAtOpen:C,loading:L,onUndo:_,undoAvailable:$}){const{locale:T}=Be(),{settings:d,updateSettings:k}=it(),Q=Tr(Vi),M=r.useRef(null),w=r.useRef(null),i=r.useRef(null),h=d.detailOpenMode,O=h==="modal"||Q,[F,z]=r.useState(""),[q,P]=r.useState(Qe[0]),[W,de]=r.useState(()=>new Set),[B,X]=r.useState(()=>new Set);r.useEffect(()=>{const g=Y=>{Y.key==="Escape"&&s()};return document.addEventListener("keydown",g),()=>document.removeEventListener("keydown",g)},[s]),r.useEffect(()=>{const g=document.activeElement instanceof HTMLElement?document.activeElement:null;return()=>g==null?void 0:g.focus({preventScroll:!0})},[]),r.useEffect(()=>{var K;if(!O)return;const g=document.body.style.overflow;document.body.style.overflow="hidden",(K=w.current)==null||K.focus({preventScroll:!0});const Y=he=>{if(he.key!=="Tab")return;const ue=w.current;if(!ue)return;const ke=[...ue.querySelectorAll('button, input, select, textarea, summary, a[href], [tabindex="0"]')].filter(me=>!me.hasAttribute("disabled")&&me.getClientRects().length>0),ae=ke[0],xe=ke[ke.length-1];!ae||!xe||(he.shiftKey&&(document.activeElement===ae||document.activeElement===ue)?(he.preventDefault(),xe.focus()):!he.shiftKey&&document.activeElement===xe&&(he.preventDefault(),ae.focus()))};return document.addEventListener("keydown",Y,!0),()=>{document.body.style.overflow=g,document.removeEventListener("keydown",Y,!0)}},[O]),r.useEffect(()=>{const g=M.current;if(!g||O)return;const Y=()=>{const K=g.getBoundingClientRect().top;g.style.setProperty("--ss-top",`${Math.round(K)}px`),g.style.setProperty("--ss-height",`${Math.max(360,Math.round(window.innerHeight-K-24))}px`)};return Y(),window.addEventListener("resize",Y),window.addEventListener("scroll",Y,{passive:!0}),()=>{window.removeEventListener("resize",Y),window.removeEventListener("scroll",Y)}},[O]);const Z=_r({queries:Qe.map(g=>({queryKey:["taxonomy","nodes",g,T],queryFn:()=>Rr(g,T),staleTime:1e3*60*5}))}),{nodesById:te,axisOfNode:le}=r.useMemo(()=>{const g=new Map,Y=new Map;return Qe.forEach((K,he)=>{var ue;for(const ke of((ue=Z[he])==null?void 0:ue.data)??[])g.set(ke.id,ke),Y.set(ke.id,K)}),{nodesById:g,axisOfNode:Y}},[Z]),oe={taxonomyFilter:t,excludedNodeIds:o},ee=g=>{n(g.taxonomyFilter),l([...g.excludedNodeIds])},se=g=>ee(mr(oe,g,"leaf")),Se=g=>ee(Rs(oe,g)),I=()=>{n({...t,selectedNodeIds:[],preferNodeIds:[],degrees:{}}),l([])},A=(g,Y)=>n({...t,degrees:{...t.degrees??{},[g]:Y}}),re={taxonomyFilter:t,excludedNodeIds:o,closedGroups:W,expandedAxes:B,query:F,onCycle:se,onCycleGroup:g=>ee(mr(oe,g,"group")),onDegreeChange:A,onToggleGroup:g=>de(Y=>{const K=new Set(Y);return K.delete(g)||K.add(g),K}),onToggleAxisMore:g=>X(Y=>{const K=new Set(Y);return K.delete(g)||K.add(g),K})},fe=C===null?null:V-C,ce=f.intensityRange??{min:0,max:10};return e.jsxDEV("section",{ref:M,id:"filter-sheet",className:`sheet v2-sheet ss-sheet picker${O?" ss-modal":""} open`,"data-variant":O?"modal":"sheet","data-picker-mode":h,children:[e.jsxDEV("button",{type:"button",className:"h5-sheet-shadow v2-sheet-shade","aria-label":"자세히 닫기",tabIndex:-1,onClick:s,"data-testid":"filter-detail-shadow"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:460,columnNumber:7},this),e.jsxDEV("div",{ref:w,className:"h5-sheet v2-sheet-panel ss-panel",role:"dialog","aria-label":"조건을 자세히 고르기","aria-labelledby":"ss-title","aria-modal":O,tabIndex:-1,"data-testid":"filter-detail-sheet",children:[e.jsxDEV("header",{className:"h5-sheet-head ss-head",children:[e.jsxDEV("div",{children:[e.jsxDEV("h2",{className:"h5-sheet-title",id:"ss-title",children:"조건을 자세히 고르기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:480,columnNumber:13},this),e.jsxDEV("p",{className:"h5-sheet-sub",children:"태그를 펼쳐 찾고, 원하는 정도까지 고르세요."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:483,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:479,columnNumber:11},this),e.jsxDEV("div",{className:"picker-mode-switch ss-segments",role:"group","aria-label":"「자세히」 열림 방식",title:"휴대폰에서는 어느 쪽을 골라도 전면으로 열립니다.",children:[e.jsxDEV("span",{children:"열림 방식"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:495,columnNumber:13},this),e.jsxDEV("button",{type:"button","aria-pressed":h==="modal","data-testid":"picker-mode-modal",onClick:()=>k({detailOpenMode:"modal"}),children:"모달"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:496,columnNumber:13},this),e.jsxDEV("button",{type:"button","aria-pressed":h==="inline","data-testid":"picker-mode-inline",onClick:()=>k({detailOpenMode:"inline"}),children:"인라인"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:504,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:489,columnNumber:11},this),e.jsxDEV("button",{type:"button",className:"h5-sheet-x",onClick:s,"aria-label":"자세히 닫기","data-testid":"filter-detail-close",children:e.jsxDEV(ie,{name:"close"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:520,columnNumber:13},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:513,columnNumber:11},this),e.jsxDEV(Ci,{nodesById:te,axisOfNode:le,taxonomyFilter:t,excludedNodeIds:o,onCycle:se,onDegree
2Change:A,onRemove:Se,onClearAll:I},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:522,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:478,columnNumber:9},this),e.jsxDEV("div",{ref:i,className:"h5-sheet-scroll v2-sheet-scroll ss-scroll",children:[e.jsxDEV("div",{className:"h5-sheet-cols v2-sheet-main picker-workspace",children:[e.jsxDEV("section",{className:"picker-tree-pane",children:[e.jsxDEV("div",{className:"picker-tree-toolbar",children:e.jsxDEV("label",{className:"picker-tree-search",children:[e.jsxDEV(ie,{name:"search"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:542,columnNumber:19},this),e.jsxDEV("input",{id:"picker-tree-query",type:"search",value:F,"aria-label":"트리 안에서 태그 검색",placeholder:"태그 이름으로 찾기",autoComplete:"off","data-testid":"sheet-tree-search",onChange:g=>z(g.target.value)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:543,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:541,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:540,columnNumber:15},this),e.jsxDEV("div",{className:"picker-axis-tabs",role:"tablist","aria-label":"태그 축",children:Qe.map(g=>e.jsxDEV("button",{type:"button",role:"tab","aria-selected":g===q,"data-testid":`sheet-axis-tab-${g}`,style:{"--picker-axis":Cs[g].color},onClick:()=>P(g),children:Vr(g,T)},g,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:562,columnNumber:19},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:556,columnNumber:15},this),e.jsxDEV("div",{className:"v2-sheet-axes",id:"ss-axes",children:Qe.map((g,Y)=>{var K,he;return e.jsxDEV(ji,{axisId:g,nodes:((K=Z[Y])==null?void 0:K.data)??[],isLoading:((he=Z[Y])==null?void 0:he.isLoading)??!1,active:g===q,hidden:Q&&g!==q,ctl:re},g,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:579,columnNumber:19},this)})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:577,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:539,columnNumber:13},this),e.jsxDEV("details",{className:"h5-fx-col v2-sheet-signals",id:"ss-signals","data-testid":"sheet-signal-column",style:{"--axc":"var(--primary)"},open:d.signalDeckExpanded,onToggle:g=>{const Y=g.currentTarget.open;Y!==d.signalDeckExpanded&&k({signalDeckExpanded:Y})},children:[e.jsxDEV("summary",{"aria-expanded":d.signalDeckExpanded,children:[e.jsxDEV("h3",{children:"검색 신호"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:604,columnNumber:17},this),e.jsxDEV("span",{className:"ss-signal-disclosure",children:[d.signalDeckExpanded?"접기":"펼치기",e.jsxDEV(mt,{direction:d.signalDeckExpanded?"up":"down"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:607,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:605,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:603,columnNumber:15},this),e.jsxDEV("p",{className:"h5-fx-hint",children:"무엇을 근거로 비슷하다고 볼지 정해요. 검색 신호를 켜고 끄는 곳은 여기 한 곳입니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:616,columnNumber:15},this),e.jsxDEV("div",{id:"sheet-signal-host",children:p},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:621,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:591,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:538,columnNumber:11},this),e.jsxDEV("header",{className:"picker-detail-heading",children:[e.jsxDEV("h3",{children:"세부 조건"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:626,columnNumber:13},this),e.jsxDEV("p",{children:"게시일·길이로 좁히고, 색과 움직임을 조절하세요."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:627,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:625,columnNumber:11},this),e.jsxDEV("div",{className:"h5-sheet-rows v2-sheet-control
2s ss-controls picker-details",children:[e.jsxDEV("section",{className:"ss-control",id:"ss-date","data-testid":"sheet-row-date",children:[e.jsxDEV("h3",{children:"게시일"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:636,columnNumber:15},this),e.jsxDEV(hn,{value:a,onChange:N},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:637,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:631,columnNumber:13},this),e.jsxDEV("section",{className:"ss-control","data-testid":"sheet-row-duration",children:[e.jsxDEV("h3",{children:"길이 · 화면"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:641,columnNumber:15},this),e.jsxDEV("div",{className:"h5-fx-chips ss-segments",children:_i.map(g=>e.jsxDEV("button",{type:"button",className:`h5-fx-chip${D===g.id?" on":""}`,"aria-pressed":D===g.id,"data-testid":`duration-preset-${g.id}`,onClick:()=>v(g.id),children:g.label},g.id,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:644,columnNumber:19},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:642,columnNumber:15},this),e.jsxDEV("div",{className:"h5-fx-chips ss-segments",children:[e.jsxDEV("button",{type:"button",className:`h5-fx-chip${m?" on":""}`,"aria-pressed":m,"data-testid":"monochrome-toggle",onClick:()=>y(!m),children:"흑백"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:657,columnNumber:17},this),[[void 0,"방향 전체"],["vertical","세로형"],["horizontal","가로형"]].map(([g,Y])=>e.jsxDEV("button",{type:"button",className:`h5-fx-chip${S===g?" on":""}`,"aria-pressed":S===g,"data-testid":`orientation-${g??"all"}`,onClick:()=>x(g),children:Y},g??"all",!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:673,columnNumber:19},this))]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:656,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:640,columnNumber:13},this),e.jsxDEV("section",{className:"ss-control","data-testid":"sheet-row-color",children:[e.jsxDEV("h3",{children:"색"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:688,columnNumber:15},this),e.jsxDEV("div",{className:"h5-fx-chips ss-segments",children:Ri.map(g=>e.jsxDEV("button",{type:"button",className:`h5-fx-chip${u.colorTemperature===g.id?" on":""}`,"aria-pressed":u.colorTemperature===g.id,"data-testid":`sheet-color-temp-${g.id}`,onClick:()=>R({...u,colorTemperature:u.colorTemperature===g.id?null:g.id}),children:g.label},g.id,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:691,columnNumber:19},this))},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:689,columnNumber:15},this),e.jsxDEV("div",{className:"colrange hue","data-testid":"sheet-col-hue-range",children:e.jsxDEV(Or,{id:"sheet-col-hue",value:{min:u.hueRange[0],max:u.hueRange[1]},onChange:g=>R({...u,hueRange:Mr(g.min,g.max)})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:715,columnNumber:17},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:714,columnNumber:15},this),e.jsxDEV("div",{className:"colrange-pair",children:[e.jsxDEV("div",{className:"colrange sat",children:e.jsxDEV(as,{id:"sheet-col-saturation",label:"채도",domainMin:0,domainMax:100,value:{min:u.saturationRange[0],max:u.saturationRange[1]},onChange:g=>R({...u,saturationRange:[Math.round(g.min),Math.round(g.max)]})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:731,columnNumber:19},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:730,columnNumber:17},this),e.jsxDEV("div",{className:"colrange bri",children:e.jsxDEV(as,{id:"sheet-col-brightness",label:"밝기",domainMin:0,domainMax:100,value:{min:u.brightnessRange[0],max:u.brightnessRange[1]},onChange:g=>R({...u,brightnessRange:[Math.round(g.min),Math.round(g.max)]})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:749,columnNumber:19},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:748,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:729,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:687,columnNumber:13},this),e.jsxDEV("section",{className:"ss-control","data-testid":"sheet-row-motion",children:[e.jsxDEV("h3",{children:"모션 세기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:770,columnNumber:15},this),e.jsxDEV(as,{id:"sheet-mot-intensity",label:"모션 강도",domainMin:0,domainMax:10,value:ce,onChange:g=>j({...f,intensityRange:g})},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:771,columnNumber:15},this),e.jsxDEV("p",{className:"h5-fx-hint",children:"0에 가까울수록 잔잔하고 10에 가까울수록 격렬해요. 0~10 전체는 조건을 걸지 않은 것과 같습니다."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:781,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:769,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:630,columnNumber:11},this),e.jsxDEV("div",{className:"ss-count-note ss-count-note-foot",children:[e.jsxDEV("span",{className:"picker-cycle-note",children:["태그 클릭",e.jsxDEV("b",{children:[e.jsxDEV(os,{mode:"include"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:798,columnNumber:17},this)," 포함"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:797,columnNumber:15},this),e.jsxDEV(ie,{name:"arrow",className:"v2-inline"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:800,columnNumber:15},this),e.jsxDEV("b",{children:[e.jsxDEV(os,{mode:"exclude"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:802,columnNumber:17}
2,this)," 제외"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:801,columnNumber:15},this),e.jsxDEV(ie,{name:"arrow",className:"v2-inline"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:804,columnNumber:15},this),e.jsxDEV("b",{children:[e.jsxDEV(os,{mode:"prefer"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:806,columnNumber:17},this)," 우선"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:805,columnNumber:15},this),e.jsxDEV(ie,{name:"arrow",className:"v2-inline"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:808,columnNumber:15},this),e.jsxDEV("b",{children:"해제"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:809,columnNumber:15},this),e.jsxDEV("em",{children:"변경 즉시 반영"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:810,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:795,columnNumber:13},this),e.jsxDEV("span",{children:["옆 숫자는 ",e.jsxDEV("b",{children:"코퍼스 전체에서 그 태그가 붙은 발행 영상 수"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:813,columnNumber:21},this),"예요(조건별 결과 수 패싯 경로가 아직 없어 실제 값만 보여 줍니다)."]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:812,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:794,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:534,columnNumber:9},this),e.jsxDEV("footer",{className:"h5-sheet-foot ss-footer",children:[e.jsxDEV("span",{className:"h5-sf-n ss-result","aria-live":"polite","data-testid":"sheet-count",children:L?"세는 중…":e.jsxDEV(e.Fragment,{children:[e.jsxDEV("span",{children:["이 조건이면 ",e.jsxDEV("b",{children:V},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:830,columnNumber:26},this),"개"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:829,columnNumber:17},this),fe!==null&&fe!==0&&e.jsxDEV("small",{children:[" ","· 열기 전보다 ",Math.abs(fe),"개"," ",fe<0?"적어요":"많아요"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:833,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:828,columnNumber:15},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:820,columnNumber:11},this),e.jsxDEV("div",{className:"ss-actions",children:[e.jsxDEV("button",{type:"button",className:"h5-sf-undo btn",onClick:_,disabled:!$,"data-testid":"sheet-undo",children:"되돌리기"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:843,columnNumber:13},this),e.jsxDEV("button",{type:"button",className:"h5-sf-go btn primary",onClick:s,"data-testid":"sheet-apply",children:["이 조건으로 보기",e.jsxDEV(ie,{name:"arrow",className:"v2-inline"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:859,columnNumber:15},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:852,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:842,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:819,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:468,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/components/search/FilterExpandSheet.tsx",lineNumber:453,columnNumber:5},this)}function Mi(s){const t=_r({queries:Qe.map(a=>({queryKey:["taxonomy","nodes",a,s],queryFn:()=>Rr(a,s),staleTime:18e5}))}),n=t.every(a=>a.data!==void 0),o=t.some(a=>a.isError);return{counts:r.useMemo(()=>
2{if(!n)return null;let a=0,N=0;for(const D of t){const v=D.data??[],m=new Set(v.map(y=>y.parent_id).filter(y=>y!==null));for(const y of v)m.has(y.id)?a+=1:N+=1}return{groups:a,leaves:N}},[n,...t.map(a=>a.data)]),hasError:o}}function Li(){var Ot,Bt,Ut,Ht,Gt,Qt,qt,zt,Kt,Wt,Jt,Xt,Yt,Zt,er,sr;const{user:s}=Ia(),[t,n]=Oa(),o=gr(),l=Ba(),{settings:a,updateSettings:N}=it(),{state:D,setQuery:v,setPreferTitleScripts:m,setExcludeTitleScripts:y,setSpectrumRanges:S,setArtistQuery:x,setArtistSel:u,setSongFilter:R,setSort:f,setViewMode:j,setAxes3d:p,setDateRange:V,setWeights:C,setAudioFilter:L,setColorFilter:_,setTaxonomyFilter:$,setExcludedNodeIds:T,setSuppressedAutoNodeIds:d,setMotionFilter:k,setAudioQuery:Q,setExplain:M,setSignalsOn:w,setCommittedSignalsOn:i,lastWrittenQRef:h,devFlagOverrideRef:O,showAiUsage:F}=Gn(t,a),{query:z,preferTitleScripts:q,excludeTitleScripts:P,spectrumRanges:W,artistQuery:de,artistSel:B,songFilter:X,sort:Z,viewMode:te,axes3d:le,dateRange:oe,initialOpenAxis:ee,weights:se,audioFilter:Se,colorFilter:I,taxonomyFilter:A,excludedNodeIds:re,suppressedAutoNodeIds:fe,motionFilter:ce,audioQuery:g,explain:Y,signalsOn:K,committedSignalsOn:he}=D,[ue,ke]=r.useState(!1),ae=He(z,300),xe=yn(ae),me=xe.isUrlQuery,ve=r.useMemo(()=>ae.trim().split(/\s+/).filter(Boolean),[ae]),b=nt({queryKey:["glossary","search-zero-result-suggestions"],queryFn:()=>za.getGlossary(),staleTime:1e3*60*30,enabled:ve.length>0}),G=r.useCallback(()=>{const c=!F;N({showAiUsage:c});const E=new URLSearchParams(t);E.set("showAiUsage",c?"1":"0"),n(E)},[F,N,t,n]),{t:J,locale:be}=Be(),we=Mi(be),{creditMode:ls,setCreditMode:cs}=Ua(),{isEnabled:Pe,isLoading:Ue,explicitValue:$s}=Dr(),Ve=$s("search_auto_recognized_chips")===!0,Ne=!Ue&&Pe("search_drilldown_tree"),je=r.useMemo(()=>a.mediaShortcutModes??(Pe("search_default_universe_doujin")?{doujin:"prefer"}:{}),[a.mediaShortcutModes,Pe]),Ae=a.includeProcess,_e=Tr(wn),[ut,Ms]=r.useState(!1),[Hr,Gr]=r.useState(0),[vs,dt]=r.useState(!1),[De,Qr]=r.useState(null);Qn(t,h,v);const ht=He(de.trim(),300),qr=r.useCallback(()=>R(null),[R]),zr=r.useRef(!1),[Kr,Wr]=r.useState({}),[Jr,Xr]=r.useState(!1),[Yr,Zr]=r.useState([]),eo=r.useCallback(c=>{const E=c.includes("ja")?P.filter(H=>H!=="ja"):P;m(c),y(E),N({preferTitleScripts:c,excludeTitleScripts:E})},[P,N,m,y]),pt=r.useCallback(c=>{const E=c.includes("ja")?q.filter(H=>H!=="ja"):q;m(E),y(c),N({preferTitleScripts:E,excludeTitleScripts:c})},[q,N,m,y]),ft=He(A.degrees,300),Ls=He(A,300),bt=He(re,300),Fs=He(I,300),Ts=He(ce,300),{durationPreset:Ee,monochrome:Ie,orientation:Re}=qn(t),$e=zn(t,n),so=r.useCallback(c=>{w(E=>({...E,[c]:!E[c]}))},[w]),[Ke,Ps]=r.useState(!0),to=r.useCallback(()=>Ps(c=>!c),[]),[Le,As]=r.useState(!1),ro=r.useCallback(()=>As(c=>!c),[]),Nt=Ka(ae,Le&&!me),ye=Nt.data,xt=r.useMemo(()=>{if(!(!Le||(ye==null?void 0:ye.status)!=="ok"||ye.nodes.length===0))return ye.nodes.map(c=>c.nodeId)},[Le,ye]),[We,vt]=r.useState(null),oo=We!==null,ao=r.useCallback(()=>{We?(w(We.signalsOn),Ps(We.prsOn),As(We.llmOn),vt(null)):(vt({signalsOn:K,prsOn:Ke,llmOn:Le}),w(Za),Ps(!1),As(!1))},[We,K,Ke,Le,w]),no=r.useMemo(()=>[...A.selectedNodeIds,...A.preferNodeIds??[],...re],[A.selectedNodeIds,A.preferNodeIds,re]),{nodeInfoMap:ms}=kr(no),Je=r.useMemo(()=>({...$r(Ls,bt,q,P,K.tag),showAiUsage:F,includeProcess:Ae,query:K.sem&&ae||void 0,spectrumIds:Object.keys(W).length>0?Object.keys(W):void 0,spectrumRanges:Object.keys(W).length>0?W:void 0,taxonomyDegrees:K.tag?pn(fn(Ls.selectedNodeIds,c=>{var E;return(E=ms[c])==null?void 0:E.axisId}),ft):void 0,semanticWeight:se.semantic,audioClamp3Weight:se.audioClamp3,audioLangbindWeight:se.audioLangbind,structuredWeight:se.structured,audioFilter:ct(Se)?Se:void 0,colorFilter:K.col&&bs(Fs)?Fs:void 0,motionFilter:K.mot&&Ns(Ts)?Ts:void 0,audioQuery:K.aud&&(g.audioFile||g.moodText)?g:K.aud&&Le&&(ye==null?void 0:ye.status)==="ok"&&ye.moodText?{moodText:ye.moodText}:void 0,sort:Z!=="relevance"?Z:void 0,dateFrom:oe.dateFrom,dateTo:oe.dateTo,durationMinSec:Ee==="short"?0:Ee==="one_to_three"?60:Ee==="over_three"?180:void 0,durationMaxSec:Ee==="short"?60:Ee==="one_to_three"?180:void 0,monochrome:Ie||void 0,orientation:Re,artistId:B==null?void 0:B.id,artistQuery:B?void 0:ht||void 0,songId:X==null?void 0:X.id,pageSize:20,displayMode:a.displayMode,matchThreshold:a.displayMode==="hybrid"?a.matchThreshold:void 0,collapseSegments:a.displayMode==="hybrid"?a.collapseSegments:void 0,explain:Y||Re==="vertical"||void 0,autoTagMatch:Ke?void 0:!1,llmMatchedNodeIds:xt,suppressedAutoNodeIds:Ve&&fe.length>0?fe:void 0}),[K,Ke,Le,ye,xt,Ve,fe,ae,W,bt,ft,ms,se,Se,Fs,Ts,g,Z,oe,Ee,Ie,Re,B,ht,X,a.displayMode,a.matchThreshold,a.collapseSegments,Ls,q,P,Ae,F,Y]),io=r.useMemo(()=>{var c;return{taxonomyPrefer:(c=A.preferNodeIds)!=null&&c.length?A.preferNodeIds:void 0,excludeTaxonomyNodeIds:re.length>0?re:void 0,showAiUsage:F,preferTitleScripts:q.length>0?q:void 0,excludeTitleScripts:P.length>0?P:void 0}},[A.preferNodeIds,re,F,q,P]),{imageFile:Fe,imagePreviewUrl:lo,isDraggingImage:co,setIsDraggingImage:wt,fileInputRef:Is,handleImageInputChange:mo,clearImageSearch:ws,handleImageDrop:uo}=Jn(),Os=Wa(Fe,io,Ae),pe=!!Fe,ho=r.useMemo(()=>
2{if(Ve)return c=>{var E,H;return Ir(Ar({enabled:!0,autoMatchedNodes:c.auto_matched_nodes,appliedNodeIds:(H=(E=c.ranking_interventions)==null?void 0:E.query_node_preference)==null?void 0:H.applied_node_ids,selectedNodeIds:A.selectedNodeIds,preferNodeIds:A.preferNodeIds,excludedNodeIds:re,suppressedNodeIds:fe})).visible.map(Me=>Me.nodeId)}},[Ve,A.selectedNodeIds,A.preferNodeIds,re,fe]),{data:U,fetchNextPage:Bs,hasNextPage:Us,isFetchingNextPage:gs,isFetching:po,isLoading:fo,isError:Hs,error:bo,refetch:No,isPlaceholderData:Gs,dataUpdatedAt:xo}=Ja(Je,!me,ho),vo=U&&!Gs&&!me&&!Hs?`${JSON.stringify(Je)}:${xo}`:null;!Gs&&he!==K&&i(K);const Ss=(U==null?void 0:U.pages.flatMap(c=>"results"in c?c.results.map(E=>({...E,id:dr(E)})):[]))||[];Dn(te==="grid"&&Ss.length>0,`${Je.query??""}:${((Ot=Ss[0])==null?void 0:Ot.id)??""}:${Ss.length}`);const gt=new Set,Qs=Ss.filter(c=>gt.has(c.id)?!1:(gt.add(c.id),!0)),Ds=((Bt=U==null?void 0:U.pages[0])==null?void 0:Bt.total)??Qs.length,wo=Je.pageSize??20,St=(Ut=U==null?void 0:U.pages[0])==null?void 0:Ut.ml_status,go=(Ht=U==null?void 0:U.pages[0])==null?void 0:Ht.unsupported_filters,Dt=(Gt=U==null?void 0:U.pages[0])==null?void 0:Gt.auto_matched_nodes,So=(Qt=U==null?void 0:U.pages[0])==null?void 0:Qt.llm_matched_applied,Do=(qt=U==null?void 0:U.pages[0])==null?void 0:qt.llm_defer_reason,Eo=(Wt=(Kt=(zt=U==null?void 0:U.pages[0])==null?void 0:zt.ranking_interventions)==null?void 0:Kt.query_node_preference)==null?void 0:Wt.applied_node_ids,Es=r.useRef(null);r.useEffect(()=>{if(Es.current===null){Es.current=ae;return}Es.current!==ae&&(Es.current=ae,d(c=>c.length===0?c:[]))},[ae,d]);const{handleMediaShortcutNodesResolved:yo,handleMediaShortcutCycle:ko,shownRecognizedNodeIds:jo,recognizedChipViews:Vo,promotedFromRecognizedNodeIds:Et,recognizedOverflow:_o}=pi({taxonomyFilter:A,setTaxonomyFilter:$,excludedNodeIds:re,setExcludedNodeIds:T,suppressedAutoNodeIds:fe,setSuppressedAutoNodeIds:d,promotedRecognizedNodeIds:Yr,setPromotedRecognizedNodeIds:Zr,savedMediaShortcutModes:a.mediaShortcutModes,updateSettings:N,mediaShortcutHydratedRef:zr,mediaShortcutNodes:Kr,setMediaShortcutNodes:Wr,mediaShortcutHydrationComplete:Jr,setMediaShortcutHydrationComplete:Xr,mediaShortcutModes:je,recognizedChipsEnabled:Ve,autoMatchedNodes:Dt,appliedQueryNodeIds:Eo});di({taxonomyFilter:A,excludedNodeIds:re,preferTitleScripts:q,excludeTitleScripts:P,tagSignalOn:K.tag,sort:Z,displayMode:a.displayMode??null,recognizedChipsEnabled:Ve,shownRecognizedNodeIds:jo,promotedFromRecognizedNodeIds:Et,suppressedAutoNodeIds:fe});const ys=(Jt=U==null?void 0:U.pages[0])==null?void 0:Jt.matched_song,[Ro,Co]=r.useState(U==null?void 0:U.pages[0]),[yt,kt]=r.useState(null),Xe=U==null?void 0:U.pages[0];Xe!==Ro&&(Co(Xe),kt((Xe==null?void 0:Xe.ml_status)==="loading"?Xe.ml_retry_after_s??15:null)),r.useEffect(()=>{if(St!=="loading")return;const c=setInterval(()=>{kt(E=>E===null?null:Math.max(0,E-1))},1e3);return()=>clearInterval(c)},[St]);const ks=r.useMemo(()=>{var c;return((c=Os.data)==null?void 0:c.results)??[]},[(Xt=Os.data)==null?void 0:Xt.results]),us=r.useMemo(()=>me?[]:pe?ks:Qs,[me,pe,ks,Qs]),$o=r.useMemo(()=>[...new Set(us.map(c=>c.id))],[us]),{feedbackScores:Mo,setFeedbackScore:Lo,queryFeedbackResult:qs,resultSearchOrigin:zs,visibleQueryFeedback:Fo}=ui({responseFeedbackSnapshot:vo,isPlaceholderData:Gs,imageSearchActive:pe,searchPayloadV3:Je,excludedNodeInfo:ms,artistSel:B,llmIntent:ye,firstPageAutoMatchedNodes:(Yt=U==null?void 0:U.pages[0])==null?void 0:Yt.auto_matched_nodes,matchedSong:(Zt=U==null?void 0:U.pages[0])==null?void 0:Zt.matched_song,signalsOn:K,prsOn:Ke,llmOn:Le,feedbackMode:ue,feedbackItemIds:$o,deferredQuery:ae}),js=r.useRef(null);r.useEffect(()=>{var E;const c=(E=xe.data)!=null&&E.found?xe.data.match.item_id:null;if(!c){js.current=null;return}js.current!==c&&(js.current=c,o(`/video/${c}`,{state:{background:l}}))},[xe.data,o,l.pathname,l.search]);const To=r.useMemo(()=>(pe?[ks.map(E=>E.id)]:((U==null?void 0:U.pages)??[]).map(E=>"results"in E?E.results.map(H=>dr(H)):[])).map(E=>[...new Set(E)].sort()),[U==null?void 0:U.pages,ks,pe]),{specs:Po,segments:Ao,styles:Io}=Ha(To,te==="grid"),Oo=r.useMemo(()=>us.flatMap(c=>[...c.tags.map(E=>E.node_id).filter(E=>!!E),...(c.matched_segments??[]).flatMap(E=>(E.tags??[]).map(H=>H.node_id))]),[us]),{showUnsupportedWarning:Bo,unsupportedFilterDescriptions:Uo,unsupportedFiltersWarningText:Ho,showMlLoadingNotice:Go,showMlUnavailableNotice:Qo,mlLoadingNoticeText:qo,mlUnavailableNoticeText:zo,showCandidateSortNotice:Ko,candidateSortNoticeTitle:Wo,candidateSortNoticeText:Jo,imageMlUnavailable:Xo,imageErrorMessage:Yo,displayLoading:Ye,displayRefetching:jt,displaySearchError:Zo,displayTotal:ds,artistFilterOn:ea,artistFilterName:sa,colorFilterActive:Vt,dateFilterOn:_t,activeFilterCount:Rt,mobileSelectionCount:hs,isDefaultBrowse:ta,railFilterCount:ra,offSignalsList:o
2a,urlJumpMatchId:aa,urlJumpState:Ct,URL_JUMP_COUNT_TEXT:na,statusHints:ia}=Wn({state:D,facets:{durationPreset:Ee,monochrome:Ie,orientation:Re},searchPayloadV3:Je,firstPage:U==null?void 0:U.pages[0],imageSearch:Os,imageSearchActive:pe,urlJumpSearch:xe,urlSearchActive:me,isLoading:fo,isFetching:po,isFetchingNextPage:gs,isSearchError:Hs,totalResults:Ds,includeProcess:Ae,mediaShortcutModes:je,t:J}),la=r.useMemo(()=>{if(ve.length<2)return[];const c=new Set;for(let E=1;E<ve.length;E+=1)for(let H=0;H+E<=ve.length;H+=1)c.add(ve.slice(H,H+E).join(" "));return[...c]},[ve]),ca=r.useMemo(()=>{var E;const c=new Set(ve.map(H=>H.toLowerCase()));return c.size===0?[]:(((E=b.data)==null?void 0:E.terms)??[]).filter(H=>[H.term_ko,H.term_en,...H.synonyms].some(ge=>c.has(ge.trim().toLowerCase()))).map(H=>H.term_ko)},[b.data,ve]),$t=r.useCallback(c=>{c.id?(u({id:c.id,name:c.name}),x("")):(u(null),x(c.name))},[u,x]),ma=r.useCallback(c=>{T(E=>E.includes(c)?E.filter(H=>H!==c):E),$(E=>bn(E,c))},[T,$]),ua=r.useCallback(()=>{u(null),x("")},[u,x]),da=Ga(l.pathname,typeof window>"u"?void 0:window.location.pathname);Kn({state:D,showAiUsage:F,recognizedChipsEnabled:Ve,durationPreset:Ee,monochrome:Ie,orientation:Re,setSearchParams:n,maskedByOverlay:da,lastWrittenQRef:h,devFlagOverrideRef:O});const ha=r.useCallback((c,E)=>{at("result_click",{rank:(E==null?void 0:E.rank)??null,surface:(E==null?void 0:E.surface)??"embedding_3d",page:(E==null?void 0:E.page)??null,page_size:(E==null?void 0:E.pageSize)??null},c),ar(l.key,window.scrollY,nr()),o(`/video/${c}`,{state:{background:l,...Qa(zs,E==null?void 0:E.rank)}})},[o,l,zs]);qa({onArtistClick:$t,onTagFilter:ma});const Mt=r.useRef(null);r.useEffect(()=>{if(te==="3d")return;const c=Mt.current;if(!c)return;const E=new IntersectionObserver(H=>{const Me=H[0];Me!=null&&Me.isIntersecting&&!pe&&Us&&!gs&&Bs()},{rootMargin:"500px 0px 500px 0px"});return E.observe(c),()=>E.disconnect()},[Us,gs,Bs,pe,te]);const Ks=()=>{v(""),S({}),C(xs),L(rt),_(fs),$({selectedNodeIds:[],degrees:{}}),T([]),m([]),y([]),N({mediaShortcutModes:{},preferTitleScripts:[],excludeTitleScripts:[],includeProcess:!1}),ws(),k({}),Q({}),V({}),u(null),x(""),R(null);const c=new URLSearchParams(t);c.delete("duration"),c.delete("monochrome"),c.delete("orientation"),n(c)},pa=r.useCallback(c=>{const E=new URLSearchParams(t);E.set("q",c),n(E)},[t,n]),fa=e.jsxDEV("span",{"data-testid":"result-count",children:na[Ct]},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1337,columnNumber:5},this),ba=me?fa:Ye?e.jsxDEV("span",{"data-testid":"result-count",children:pe?"이미지 검색 중…":ae?J("search.loading_query").replace("{query}",ae):J("search.loading")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1342,columnNumber:5},this):e.jsxDEV("span",{"data-testid":"result-count",children:pe?e.jsxDEV(e.Fragment,{children:["이미지와 비슷한 영상 ",e.jsxDEV("b",{children:ds},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1353,columnNumber:23},this),"개 찾았어요"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1352,columnNumber:9},this):ta?e.jsxDEV(e.Fragment,{children:["전체 ",e.jsxDEV("b",{children:Ds},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1357,columnNumber:14},this),"개 영상을 둘러보는 중"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1356,columnNumber:9},this):e.jsxDEV(e.Fragment,{children:[e.jsxDEV("b",{children:Ds},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1361,columnNumber:11},this)," 개의 영상"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1360,columnNumber:9},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1350,columnNumber:5},this),Lt=r.useCallback(c=>{$(E=>Rs({taxonomyFilter:E,excludedNodeIds:[]},c).taxonomyFilter),T(E=>[...Rs({taxonomyFilter:{selectedNodeIds:[]},excludedNodeIds:E},c).excludedNodeIds])},[$,T]),Ft=r.useCallback((c,E)=>{const H=st({taxonomyFilter:A,excludedNodeIds:re},c,vn(E,!0));$(H.taxonomyFilter),T([...H.excludedNodeIds])},[A,re,$,T]),Tt=r.useCallback((c,E)=>{$(H=>({...H,degrees:{...H.degrees??{},[c]:E}}))},[$]),Na=r.useMemo(()=>{const c=[],E=(H,Me)=>{var tr;const ge=ms[H];c.push({id:H,color:ge?qe(ge.axisId).color:void 0,kind:ge?qe(ge.axisId).label:void 0,label:(ge==null?void 0:ge.label)??H.slice(0,8),excluded:Me==="exclude",onRemove:()=>Lt(H),degree:{mode:Me,isBroad:(ge==null?void 0:ge.isGroup)??!1,graded:!Fr(ge==null?void 0:ge.axisId),range:((tr=A.degrees)==null?void 0:tr[H])??{min:ns,max:is},onModeCycle:()=>Ft(H,Me),onRangeChange:wa=>Tt(H,wa)}})};for(const H of A.selectedNodeIds)E(H,"include");for(const H of A.preferNodeIds??[])E(H,"prefer");for(const H of re)E(H,"exclude");if(_t&&c.push({id:"date",kind:"게시일",label:`${oe.dateFrom??"처음"} ~ ${oe.dateTo??"지금"}`,onRemove:()=>V({})}),Ee!=="all"){const H=Ee==="short"?"숏폼 ≤60초":Ee==="one_to_three"?"1~3분":"3분+";c.push({id:"duration",kind:"길이",label:H,onRemove:()=>$e("duration",void 0)})}return Ie&&c.push({id:"monochrome",kind:"화면",label:"흑백",onRemove:()=>$e("monochrome",void 0)}),Re&&c.push({id:"orientation",kind:"화면",label:Re==="vertical"?"세로형":"가로형",onRemove:()=>$e("orientation",void 0)}),Vt&&c.push({id:"color",kind:"색",label:"색 조건",onRemove:()=>_(fs)}),Ns(ce)&&c.push({id:"motion",kind:"모션",label:"모션 세기",onRemove:()=>k({})}),g.moodText&&c.push({id:"mood",kind:"무드",label:g.moodText,onRemove:()=>Q({})}),pe&&c.push({id:"image",kind:"이미지",label:(Fe==null?void 0:Fe.name)??"업로드 이미지",onRemove:ws}),c},[A.selectedNodeIds,A.preferNodeIds,A.degrees,re,ms,Lt,Ft,Tt,_t,oe,Ee,Ie,Re,Vt,ce,g.moodText,pe,Fe,ws,$e,V,_,k,Q]),Pt=r.useCallback(()=>{Qr({taxonomyFilter:A,excludedNodeIds:re,dateRange:oe,colorFilter:I,motionFilter:ce,duration:t.get("duration"),monochrome:t.get("monochrome"),orientation:t.get("orientation"),total:Ye?null:ds}),dt(!0)},[A,re,oe,I,ce,t,Ye,ds]),At=r.useCallback(()=>dt(!1),[]),xa=r.useCallback(()=>
2{if(!De)return;$(De.taxonomyFilter),T(De.excludedNodeIds),V(De.dateRange),_(De.colorFilter),k(De.motionFilter);const c=new URLSearchParams(t);for(const[E,H]of[["duration",De.duration],["monochrome",De.monochrome],["orientation",De.orientation]])H?c.set(E,H):c.delete(E);n(c)},[De,t,n,$,T,V,_,k]),It=e.jsxDEV("button",{type:"button",className:`h5-feedback btn${ue?" on":""}`,onClick:()=>ke(c=>!c),"aria-pressed":ue,"data-testid":"search-feedback-toggle",children:J("feedback.toggle")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1614,columnNumber:5},this),va=e.jsxDEV(xi,{alwaysExpanded:!0,hideMetaFacets:!0,hideExplainToggle:!0,signalsOn:K,onToggleSignal:so,textOnlyActive:oo,onToggleTextOnly:ao,explain:Y,onExplainChange:M,taxonomyFilter:A,weights:se,audioQuery:g,colorFilter:I,onColorFilterChange:_,motionFilter:ce,onMotionFilterChange:k,autoMatchedNodes:Dt,promotedRecognizedNodeIds:Ve?Et:void 0,prsOn:Ke,onTogglePrs:to,llmOn:Le,onToggleLlm:ro,llmIntent:ye,llmInterpretLoading:Nt.isFetching,llmApplied:So,llmDeferReason:Do,durationPreset:Ee,onDurationPresetChange:c=>$e("duration",c==="all"?void 0:c),monochrome:Ie,onMonochromeChange:c=>$e("monochrome",c?"true":void 0),orientation:Re,onOrientationChange:c=>$e("orientation",c),orientationCoverage:Re==="vertical"&&((er=U==null?void 0:U.pages[0])!=null&&er.meta_facets)?{unknownIncluded:U.pages[0].meta_facets.orientation.unknownIncluded,coveragePct:U.pages[0].meta_facets.orientation.coveragePct}:void 0},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1629,columnNumber:5},this);return e.jsxDEV("div",{className:`v2-search-page min-h-screen${!_e&&a.filterRailCollapsed?" rail-collapsed":""}${vs?" ss-open-sheet":""}`,"data-testid":"search-page",children:[e.jsxDEV(Di,{feedbackMode:ue,target:!pe&&!me&&!Hs?Fo:null,signedIn:!!s,accountId:s==null?void 0:s.id},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1699,columnNumber:7},this),we.hasError&&!we.counts&&e.jsxDEV("p",{className:"status-notice error taxonomy-count-error",role:"status","data-testid":"header-stat-error",children:J("hstat.error")},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1713,columnNumber:9},this),e.jsxDEV("div",{className:`shell search-layout${!_e&&a.filterRailCollapsed?" filter-rail-collapsed":""}`,children:[e.jsxDEV(Nn,{taxonomyFilter:A,onTaxonomyChange:$,activeFilterCount:Rt,collapsedFilterCount:ra,onClearAll:Ks,initialOpenAxis:ee,isNarrow:_e,mobileOpen:ut,onMobileClose:()=>Ms(!1),drilldownEnabled:Ne,excludedNodeIds:re,onExcludedChange:T,collapsed:a.filterRailCollapsed,onCollapsedChange:c=>N({filterRailCollapsed:c}),onMediaShortcutCycle:ko,onMediaShortcutNodesResolved:yo,preferTitleScripts:q,onPreferTitleScriptsChange:eo,excludeTitleScripts:P,onExcludeTitleScriptsChange:pt,includeProcess:Ae,onIncludeProcessChange:c=>N({includeProcess:c}),onOpenDetail:Pt,moodPadOpenSignal:Hr,railFootNote:"게시일 · 길이 · 색 · 모션 세기는 「자세히」 안에 모아 두었어요."},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1726,columnNumber:9},this),e.jsxDEV("main",{className:`main search-content${jt?" search-results-refetching":""}`,"data-testid":"search-results",onDragOver:c=>{c.dataTransfer.types.includes("Files")&&(c.preventDefault(),wt(!0))},onDragLeave:c=>{c.currentTarget===c.target&&wt(!1)},onDrop:uo,children:[ue&&!pe&&!me&&qs&&qs.unsupported.length>0&&e.jsxDEV("div",{className:"status-notice warn",role:"status","data-testid":"query-feedback-unsupported",children:["검색 전체 평가는 현재 조건을 모두 저장할 수 없어 사용할 수 없습니다: ",qs.unsupported.join(", ")]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1782,columnNumber:15},this),co&&e.jsxDEV("div",{className:"drop-zone","data-testid":"image-search-dropzone",children:"이미지를 여기에 놓아 유사 영상 검색"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1794,columnNumber:13},this),e.jsxDEV("div",{className:"search-top-note",children:[e.jsxDEV("h1",{className:"search-title",children:"레퍼런스 탐색"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1811,columnNumber:13},this),_e&&It]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1810,columnNumber:11},this),e.jsxDEV(wi,{query:z,onQueryChange:v,onPickImage:()=>{var c;return(c=Is.current)==null?void 0:c.click()},imageSearchActive:pe,imagePreviewUrl:lo,imageFileName:Fe==null?void 0:Fe.name,onClearImage:ws,onClearAll:Ks,clearDisabled:Rt+hs===0,imageErrorMessage:Yo,imageMlUnavailable:Xo},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1815,columnNumber:11},this),e.jsxDEV("input",{ref:Is,type:"file",accept:"image/png,image/jpeg,image/webp,image/gif",hidden:!0,"data-testid":"image-search-input",onChange:mo},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1830,columnNumber:11},this),e.jsxDEV(yi,{mobileFilterTrigger:_e&&e.jsxDEV("button",{type:"button",className:"btn mobile-filter mobile-filter-trigger",onClick:()=>Ms(!0),"aria-label":J("search.mobile_filters_aria"),"aria-haspopup":"dialog","aria-expanded":ut,"data-testid":"mobile-filter-trigger",children:[e.jsxDEV(ie,{name:"funnel"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1859,columnNumber:19},this),J("search.mobile_filters"),hs>0&&e.jsxDEV("span",{className:"mobile-filter-count",children:hs},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1862,columnNumber:21},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1846,columnNumber:17},this),mobileSelectionControl:_e&&hs>
20&&e.jsxDEV("details",{className:"mobile-dock search-mobile-selection",children:[e.jsxDEV("summary",{children:[e.jsxDEV("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:e.jsxDEV("path",{d:"m5 3 6 5-6 5Z",fill:"currentColor"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1875,columnNumber:23},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1874,columnNumber:21},this),"선택 태그 ",hs,"개 · 정도 조절",e.jsxDEV("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:e.jsxDEV("path",{d:"m4 6 4 4 4-4",fill:"none",stroke:"currentColor",strokeWidth:"1.6"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1879,columnNumber:23},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1878,columnNumber:21},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1873,columnNumber:19},this),e.jsxDEV(xn,{value:A,onChange:$,excludedNodeIds:re,onExcludedChange:T,excludeTitleScripts:P,onExcludeTitleScriptsChange:pt},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1887,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1872,columnNumber:17},this),countNode:ba,busy:jt,hints:ia,chips:Na,recognizedChips:Vo,recognizedOverflow:_o,legacyChipBars:e.jsxDEV(e.Fragment,{children:[e.jsxDEV("div",{className:`artist-filterbar${ea?" on":""}`,"data-testid":"artist-filterbar",children:[e.jsxDEV("span",{className:"aflabel",children:"아티스트 필터"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1913,columnNumber:19},this),e.jsxDEV("span",{className:"afchip",children:[e.jsxDEV("span",{className:"afg",children:"◎"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1915,columnNumber:21},this),e.jsxDEV("span",{className:"afname",children:sa},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1916,columnNumber:21},this),e.jsxDEV("button",{className:"afx",type:"button","aria-label":"아티스트 필터 해제","data-testid":"artist-filter-clear",onClick:ua,children:e.jsxDEV("svg",{viewBox:"0 0 24 24",width:11,height:11,fill:"none",children:e.jsxDEV("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1930,columnNumber:25},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1924,columnNumber:23},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1917,columnNumber:21},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1914,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1909,columnNumber:17},this),e.jsxDEV("div",{className:`song-filterbar${X?" on":""}`,"data-testid":"song-filterbar",children:[e.jsxDEV("span",{className:"aflabel",children:"원곡 필터"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1949,columnNumber:19},this),e.jsxDEV("span",{className:"afchip",children:[e.jsxDEV("span",{className:"afg",children:"♪"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1951,columnNumber:21},this),e.jsxDEV("span",{className:"afname","data-testid":"song-filter-name",children:Ye?"불러오는 중…":ys?`${ys.title}${ys.artist_name?` · ${ys.artist_name}`:""} (${Ds}개 영상)`:"곡 정보를 찾을 수 없습니다"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1952,columnNumber:21},this),e.jsxDEV("button",{className:"afx",type:"button","aria-label":"원곡 필터 해제","data-testid":"song-filter-clear",onClick:qr,children:e.jsxDEV("svg",{viewBox:"0 0 24 24",width:11,height:11,fill:"none",children:e.jsxDEV("path",{d:"M6 6l12 12M18 6L6 18",stroke:"currentColor",strokeWidth:"2.4",strokeLinecap:"round"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1972,columnNumber:25},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1966,columnNumber:23},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1959,columnNumber:21},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1950,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1945,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1907,columnNumber:15},this),sortOptions:Bn,sort:Z,onSortChange:c=>f(c),sortScopeNote:e.jsxDEV(e.Fragment,{children:[e.jsxDEV("button",{type:"button",className:"btn",role:"switch","aria-checked":F,"aria-label":"AI 활용 영상 표시","data-testid":"ai-usage-visibility-toggle",onClick:G,children:["AI 활용: ",F?"표시":"숨김"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1993,columnNumber:17},this),Ko&&e.jsxDEV("span",{className:"sortscope-note","data-testid":"sort-scope-note",title:Wo,children:[e.jsxDEV("span",{className:"ic",children:e.jsxDEV(ie,{name:"info",className:"v2-inline"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2011,columnNumber:23},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2010,columnNumber:21},this)," ",Jo]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2005,columnNumber:19},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1992,columnNumber:15},this),viewMode:te,onViewModeChange:j,showCardTags:a.showCardTags,onShowCardTagsChange:c=>N({showCardTags:c}
2),displayMode:a.displayMode,onDisplayModeChange:c=>N({displayMode:c}),matchThreshold:a.matchThreshold,onMatchThresholdChange:c=>N({matchThreshold:c}),collapseSegments:a.collapseSegments,onCollapseSegmentsChange:c=>N({collapseSegments:c}),creditMode:ls,onCreditModeChange:cs,explain:Y,onExplainChange:M,feedbackMode:ue,feedbackToggle:_e?null:It,onOpenMoodPad:()=>{_e&&Ms(!0),Gr(c=>c+1)},detailOpen:vs,onToggleDetail:()=>vs?At():Pt()},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1842,columnNumber:11},this),e.jsxDEV("div",{className:"ss-anchor",children:vs&&e.jsxDEV($i,{onClose:At,taxonomyFilter:A,onTaxonomyChange:$,excludedNodeIds:re,onExcludedChange:T,dateRange:oe,onDateRangeChange:V,durationPreset:Ee,onDurationPresetChange:c=>$e("duration",c==="all"?void 0:c),monochrome:Ie,onMonochromeChange:c=>$e("monochrome",c?"true":void 0),orientation:Re,onOrientationChange:c=>$e("orientation",c),colorFilter:I,onColorFilterChange:_,motionFilter:ce,onMotionFilterChange:k,signalDeck:va,total:ds,totalAtOpen:(De==null?void 0:De.total)??null,loading:Ye,onUndo:xa,undoAvailable:De!==null},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2065,columnNumber:15},this)},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2063,columnNumber:11},this),((sr=xe.data)==null?void 0:sr.found)===!1&&e.jsxDEV(kn,{onOpenImageSearch:()=>{var E;const c=new URLSearchParams(t);c.delete("q"),n(c,{replace:!0}),(E=Is.current)==null||E.click()}},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2103,columnNumber:13},this),!pe&&e.jsxDEV(Tn,{query:ae},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2116,columnNumber:34},this),Bo&&e.jsxDEV("div",{className:"status-notice warn unsupported-warn","data-testid":"unsupported-filters-warning",children:[e.jsxDEV("span",{className:"uw-label",children:Ho},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2125,columnNumber:15},this),Uo.map(({field:c,code:E,label:H})=>e.jsxDEV("span",{className:"uw-item","data-testid":`unsupported-filter-${c}`,children:[e.jsxDEV("span",{className:"code",children:["[",E,"]"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2132,columnNumber:19},this)," ",H]},c,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2127,columnNumber:17},this))]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2121,columnNumber:13},this),e.jsxDEV("div",{style:{display:"contents"},children:[Go&&e.jsxDEV("div",{className:"status-notice","data-testid":"ml-status-banner","data-ml-status":"loading",children:[e.jsxDEV("span",{className:"material-symbols-outlined animate-spin",children:"progress_activity"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2149,columnNumber:17},this),e.jsxDEV("span",{children:[qo,yt!==null&&e.jsxDEV("span",{"data-testid":"ml-status-retry-countdown",children:[" ","(",yt,"초 후 자동 재시도)"]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2155,columnNumber:21},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2152,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2144,columnNumber:15},this),Qo&&e.jsxDEV("div",{className:"status-notice warn","data-testid":"ml-status-banner","data-ml-status":"unavailable",children:[e.jsxDEV("span",{className:"material-symbols-outlined",children:"cloud_off"},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2169,columnNumber:17},this),e.jsxDEV("span",{children:zo},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2170,columnNumber:17},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2164,columnNumber:15},this),e.jsxDEV(Fn,{t:J,displaySearchError:Zo,searchError:bo,refetchSearch:No,clearFilters:Ks,viewMode:te,displayVideos:us,displayTotal:ds,imageSearchActive:pe,hasNextPage:Us,isFetchingNextPage:gs,fetchNextPage:Bs,handleVideoClick:ha,axes3d:le,setAxes3d:p,displayLoading:Ye,urlSearchActive:me,urlJumpState:Ct,urlJumpMatchId:aa,urlJumpedItemRef:js,saveOverlayScrollForKey:ar,safeSessionStorage:nr,location:l,navigate:o,searchParams:t,setSearchParams:n,zeroResultSuggestions:la,matchedGlossaryTerms:ca,rerunQuerySuggestion:pa,setQuery:v,unsupportedFilters:go,tagConnectionNodeIds:Oo,sentinelRef:Mt,settings:a,resultPageSize:wo,searchGridSignatures:Po,searchGridSignatureStyles:Io,searchGridSignatureSegments:Ao,handleArtistClick:$t,feedbackMode:ue,feedbackScores:Mo,setFeedbackScore:Lo,resultSearchOrigin:zs,explain:Y,offSignalsList:o
2a},void 0,!1,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2174,columnNumber:13},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:2138,columnNumber:11},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1761,columnNumber:9},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1721,columnNumber:7},this)]},void 0,!0,{fileName:"/home/u32ws/32dev/moref/apps/web/src/pages/SearchPage.tsx",lineNumber:1693,columnNumber:5},this)}const Ui=Object.freeze(Object.defineProperty({__proto__:null,default:Li},Symbol.toStringTag,{value:"Module"}));export{Bi as A,ps as D,Ui as S};

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.