2 lines
4.0 KiB
JavaScript
2 lines
4.0 KiB
JavaScript
import{d as Y,$ as V,aw as Z,bQ as ee,bP as F,o as i,y as w,c as o,r as e,bT as ae,m,n as r,x as k,v,C as f,s as U,p as A,t as te,L as ne,N as E,ax as le,al as se,ai as ie,U as oe,V as re,Q as de,R as ue,X as ce}from"./index-cc731081.js";import{L as pe,R as me,f as ve,S as fe}from"./fullScreenContextMenu-d94d841d.js";/* empty css */import{g as ge,F as we}from"./FileItem-8394fb78.js";import{b as T,c as ke,f as Ie,u as ye}from"./db-66d20dea.js";import{c as xe,u as Ce}from"./hook-7e629e37.js";import"./shortcut-911a6445.js";const be={key:0,class:"search-bar"},he={class:"hint"},_e={key:1,class:"preview-switch"},Se=Y({__name:"SubstrSearch",setup(Me){const c=V(""),I=xe(n=>Ie(c.value,n)),{queue:d,images:s,onContextMenuClickU:y,stackViewEl:R,previewIdx:u,previewing:x,onPreviewVisibleChange:N,previewImgMove:C,canPreview:b,itemSize:h,gridItems:P,showGenInfo:p,imageGenInfo:_,q:L,multiSelectedIdxs:q,onFileItemClick:G,scroller:S,showMenuIdx:g,onFileDragStart:K,onFileDragEnd:O,cellWidth:Q,onScroll:M}=Ce(I),t=V();Z(async()=>{t.value=await T(),t.value.img_count&&t.value.expired&&z()});const z=ee(()=>d.pushAction(async()=>(await ye(),t.value=await T(),t.value)).res),D=async()=>{await I.reset({refetch:!0}),await le(),M(),S.value.scrollToItem(0),s.value.length||se.info(ie("fuzzy-search-noResults"))};return F("returnToIIB",async()=>{const n=await d.pushAction(ke).res;t.value.expired=n.expired}),F("searchIndexExpired",()=>t.value&&(t.value.expired=!0)),(n,a)=>{const H=oe,$=re,W=de,X=ue,j=fe;return i(),w("div",{class:"container",ref_key:"stackViewEl",ref:R},[t.value?(i(),w("div",be,[o(H,{value:c.value,"onUpdate:value":a[0]||(a[0]=l=>c.value=l),placeholder:n.$t("fuzzy-search-placeholder"),disabled:!e(d).isIdle,onKeydown:ae(D,["enter"]),"allow-clear":""},null,8,["value","placeholder","disabled","onKeydown"]),t.value.expired||!t.value.img_count?(i(),m($,{key:0,onClick:e(z),loading:!e(d).isIdle,type:"primary"},{default:r(()=>[k(v(t.value.img_count===0?n.$t("generateIndexHint"):n.$t("UpdateIndex")),1)]),_:1},8,["onClick","loading"])):(i(),m($,{key:1,type:"primary",onClick:D,loading:!e(d).isIdle,disabled:!c.value},{default:r(()=>[k(v(n.$t("search")),1)]),_:1},8,["loading","disabled"]))])):f("",!0),o(j,{size:"large",spinning:!e(d).isIdle},{default:r(()=>[o(X,{visible:e(p),"onUpdate:visible":a[2]||(a[2]=l=>U(p)?p.value=l:null),width:"70vw","mask-closable":"",onOk:a[3]||(a[3]=l=>p.value=!1)},{cancelText:r(()=>[]),default:r(()=>[o(W,{active:"",loading:!e(L).isIdle},{default:r(()=>[A("div",{style:{width:"100%","word-break":"break-all","white-space":"pre-line","max-height":"70vh",overflow:"auto"},onDblclick:a[1]||(a[1]=l=>e(te)(e(_)))},[A("div",he,v(n.$t("doubleClickToCopy")),1),k(" "+v(e(_)),1)],32)]),_:1},8,["loading"])]),_:1},8,["visible"]),e(s)?(i(),m(e(ge),{key:0,ref_key:"scroller",ref:S,class:"file-list",items:e(s),"item-size":e(h).first,"key-field":"fullpath","item-secondary-size":e(h).second,gridItems:e(P),onScroll:e(M)},{default:r(({item:l,index:B})=>[o(we,{idx:B,file:l,"show-menu-idx":e(g),"onUpdate:showMenuIdx":a[4]||(a[4]=J=>U(g)?g.value=J:null),onFileItemClick:e(G),"full-screen-preview-image-url":e(s)[e(u)]?e(ne)(e(s)[e(u)]):"","cell-width":e(Q),selected:e(q).includes(B),onContextMenuClick:e(y),onDragstart:e(K),onDragend:e(O),onPreviewVisibleChange:e(N)},null,8,["idx","file","show-menu-idx","onFileItemClick","full-screen-preview-image-url","cell-width","selected","onContextMenuClick","onDragstart","onDragend","onPreviewVisibleChange"])]),_:1},8,["items","item-size","item-secondary-size","gridItems","onScroll"])):f("",!0),e(x)?(i(),w("div",_e,[o(e(pe),{onClick:a[5]||(a[5]=l=>e(C)("prev")),class:E({disable:!e(b)("prev")})},null,8,["class"]),o(e(me),{onClick:a[6]||(a[6]=l=>e(C)("next")),class:E({disable:!e(b)("next")})},null,8,["class"])])):f("",!0)]),_:1},8,["spinning"]),e(x)&&e(s)&&e(s)[e(u)]?(i(),m(ve,{key:1,file:e(s)[e(u)],idx:e(u),onContextMenuClick:e(y)},null,8,["file","idx","onContextMenuClick"])):f("",!0)],512)}}});const Ae=ce(Se,[["__scopeId","data-v-ea1c4eca"]]);export{Ae as default};
|