rssany 0.3.1 → 0.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.env.example +52 -52
- package/README.md +156 -147
- package/app/plugins/builtin/email.rssany.js +84 -84
- package/app/plugins/builtin/rss.rssany.js +164 -164
- package/app/plugins/builtin/xiaohongshu.rssany.js +59 -2
- package/app/statics/README.md +7 -7
- package/app/webui/build/200.html +36 -36
- package/app/webui/build/_app/immutable/assets/0.BLOTwIuF.css +1 -0
- package/app/webui/build/_app/immutable/assets/10.CmGYYZFR.css +1 -0
- package/app/webui/build/_app/immutable/assets/11.Dkz3VS_N.css +1 -0
- package/app/webui/build/_app/immutable/assets/14.BCCBoMGj.css +1 -0
- package/app/webui/build/_app/immutable/assets/6.Cm_jpHOq.css +1 -0
- package/app/webui/build/_app/immutable/assets/7.CJ3BjogD.css +1 -0
- package/app/webui/build/_app/immutable/assets/9.CATKVZ-n.css +1 -0
- package/app/webui/build/_app/immutable/assets/{SourcesList.D5Lso0bo.css → SourcesList.ke66uOSi.css} +1 -1
- package/app/webui/build/_app/immutable/assets/chevron-down.CV-KWLNP.css +1 -0
- package/app/webui/build/_app/immutable/chunks/{CGCMIfh3.js → 4TuV_psf.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/{DAdOEnFb.js → B0czyjwj.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/{CFwxUBGi.js → B553hBXT.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/B8StT3Do.js +6 -0
- package/app/webui/build/_app/immutable/chunks/BI_ale1m.js +1 -0
- package/app/webui/build/_app/immutable/chunks/BK0ygNWX.js +2 -0
- package/app/webui/build/_app/immutable/chunks/BKm6QCwp.js +1 -0
- package/app/webui/build/_app/immutable/chunks/BT6b4LcZ.js +36 -0
- package/app/webui/build/_app/immutable/chunks/BZY5aksi.js +36 -0
- package/app/webui/build/_app/immutable/chunks/{C8umpVpB.js → BnqaikL8.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/BsQ08Wq_.js +1 -0
- package/app/webui/build/_app/immutable/chunks/C9wTDiHH.js +1 -0
- package/app/webui/build/_app/immutable/chunks/{B-CeeY89.js → CAKuIoAf.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/CEWi_rGa.js +1 -0
- package/app/webui/build/_app/immutable/chunks/{ChUctqXA.js → Cc7aBSsN.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/{BAJAS8BI.js → D8G961Hm.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/{CS53ooo0.js → DIeahUKq.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/DO5OXNYS.js +1 -0
- package/app/webui/build/_app/immutable/chunks/Dg_D3pjF.js +1 -0
- package/app/webui/build/_app/immutable/chunks/{Dyvi1wBH.js → DptdhtA1.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/{ClknbeNl.js → FDS7fbwH.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/{CqYSO3Dx.js → GeNMTUn1.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/{DCEayuDt.js → IhDlsCxD.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/Nd0ktDhd.js +1 -0
- package/app/webui/build/_app/immutable/chunks/{D6kzEN_P.js → SvdgnirT.js} +1 -1
- package/app/webui/build/_app/immutable/chunks/WW6La7Nt.js +2 -0
- package/app/webui/build/_app/immutable/chunks/{DsxvjlCC.js → pd_p3yYy.js} +5 -5
- package/app/webui/build/_app/immutable/chunks/rNwPv4DZ.js +1 -0
- package/app/webui/build/_app/immutable/entry/app.BKLBG-4w.js +2 -0
- package/app/webui/build/_app/immutable/entry/start.D-X6pVtx.js +1 -0
- package/app/webui/build/_app/immutable/nodes/{0.DK_mcVDm.js → 0.CJDC_3s9.js} +3 -3
- package/app/webui/build/_app/immutable/nodes/1.DsKocFSb.js +1 -0
- package/app/webui/build/_app/immutable/nodes/10.BeejAn8z.js +1 -0
- package/app/webui/build/_app/immutable/nodes/11.D--uwkk0.js +3 -0
- package/app/webui/build/_app/immutable/nodes/12.BLyQ6rUu.js +1 -0
- package/app/webui/build/_app/immutable/nodes/13.Cl0WQK13.js +1 -0
- package/app/webui/build/_app/immutable/nodes/14.T9l5Rh19.js +1 -0
- package/app/webui/build/_app/immutable/nodes/15.DHfwIlBx.js +1 -0
- package/app/webui/build/_app/immutable/nodes/{16.zfSe93Ab.js → 16.BKDfR-KV.js} +2 -2
- package/app/webui/build/_app/immutable/nodes/17.DofB8HQB.js +1 -0
- package/app/webui/build/_app/immutable/nodes/2.BOYqXdCa.js +1 -0
- package/app/webui/build/_app/immutable/nodes/3.B9ucbp_W.js +1 -0
- package/app/webui/build/_app/immutable/nodes/5.9zgwFV6I.js +2 -0
- package/app/webui/build/_app/immutable/nodes/6.Bs32Ieii.js +2 -0
- package/app/webui/build/_app/immutable/nodes/7.Cigxrk0v.js +1 -0
- package/app/webui/build/_app/immutable/nodes/8.pG10rCF0.js +1 -0
- package/app/webui/build/_app/immutable/nodes/9.Bzqb3xHY.js +1 -0
- package/app/webui/build/_app/version.json +1 -1
- package/bin/rssany.js +55 -3
- package/dist/index.js +361 -99
- package/dist/index.js.map +1 -1
- package/package.json +107 -103
- package/scripts/dev.mjs +5 -1
- package/scripts/postinstall.mjs +44 -0
- package/scripts/reset.mjs +137 -135
- package/scripts/user-dir.mjs +52 -0
- package/app/webui/build/_app/immutable/assets/0.DsKls1SN.css +0 -1
- package/app/webui/build/_app/immutable/assets/10.Dj8_pmut.css +0 -1
- package/app/webui/build/_app/immutable/assets/13.Qu_tY6H9.css +0 -1
- package/app/webui/build/_app/immutable/assets/5.B-dPiwB7.css +0 -1
- package/app/webui/build/_app/immutable/assets/6.B27N7pdA.css +0 -1
- package/app/webui/build/_app/immutable/assets/8.Cgji2b15.css +0 -1
- package/app/webui/build/_app/immutable/assets/9.BsCIAvn3.css +0 -1
- package/app/webui/build/_app/immutable/chunks/6prdYIKP.js +0 -1
- package/app/webui/build/_app/immutable/chunks/B2cyTHdf.js +0 -2
- package/app/webui/build/_app/immutable/chunks/B6WG2Sd3.js +0 -1
- package/app/webui/build/_app/immutable/chunks/BA4Gucnq.js +0 -1
- package/app/webui/build/_app/immutable/chunks/BkD3yAYe.js +0 -1
- package/app/webui/build/_app/immutable/chunks/C4uF_YIK.js +0 -1
- package/app/webui/build/_app/immutable/chunks/CBY2biv-.js +0 -1
- package/app/webui/build/_app/immutable/chunks/CVW0ymE1.js +0 -1
- package/app/webui/build/_app/immutable/chunks/DJ2e04vK.js +0 -36
- package/app/webui/build/_app/immutable/chunks/DL3Q5sfb.js +0 -1
- package/app/webui/build/_app/immutable/chunks/DVa8Y-mQ.js +0 -1
- package/app/webui/build/_app/immutable/chunks/DkamXS6W.js +0 -36
- package/app/webui/build/_app/immutable/chunks/DoRPmqLn.js +0 -2
- package/app/webui/build/_app/immutable/chunks/_qj9U-za.js +0 -1
- package/app/webui/build/_app/immutable/chunks/vtBo8kBV.js +0 -1
- package/app/webui/build/_app/immutable/entry/app.RFfWi3_i.js +0 -2
- package/app/webui/build/_app/immutable/entry/start.DU_kyeGS.js +0 -1
- package/app/webui/build/_app/immutable/nodes/1.0PRrU2uQ.js +0 -1
- package/app/webui/build/_app/immutable/nodes/10.CsxzlUER.js +0 -1
- package/app/webui/build/_app/immutable/nodes/11.D-PkhIRW.js +0 -1
- package/app/webui/build/_app/immutable/nodes/12.GGf-JLUY.js +0 -1
- package/app/webui/build/_app/immutable/nodes/13.DWWcH27k.js +0 -6
- package/app/webui/build/_app/immutable/nodes/14.COwSLwDN.js +0 -1
- package/app/webui/build/_app/immutable/nodes/15.nDN_AHrs.js +0 -1
- package/app/webui/build/_app/immutable/nodes/2.AJd2163d.js +0 -1
- package/app/webui/build/_app/immutable/nodes/3.CEVEHuaH.js +0 -1
- package/app/webui/build/_app/immutable/nodes/4.BT_N8pCh.js +0 -2
- package/app/webui/build/_app/immutable/nodes/5.BZScQ2CH.js +0 -2
- package/app/webui/build/_app/immutable/nodes/6.CkFk8X--.js +0 -1
- package/app/webui/build/_app/immutable/nodes/7.CuQJk7te.js +0 -1
- package/app/webui/build/_app/immutable/nodes/8.DIavWJnU.js +0 -1
- package/app/webui/build/_app/immutable/nodes/9.Db30M8x0.js +0 -1
- /package/app/webui/build/_app/immutable/assets/{11.qYZMiTb0.css → 12.qYZMiTb0.css} +0 -0
- /package/app/webui/build/_app/immutable/assets/{12.DfJcfUWl.css → 13.DfJcfUWl.css} +0 -0
- /package/app/webui/build/_app/immutable/assets/{14.DfMfOrS3.css → 15.DfMfOrS3.css} +0 -0
- /package/app/webui/build/_app/immutable/assets/{15.nNGjXhCQ.css → 17.nNGjXhCQ.css} +0 -0
- /package/app/webui/build/_app/immutable/assets/{4.Di6rvlY-.css → 5.Di6rvlY-.css} +0 -0
- /package/app/webui/build/_app/immutable/assets/{7.CrNxmd8B.css → 8.CrNxmd8B.css} +0 -0
- /package/app/webui/build/_app/immutable/nodes/{17.BtYZF6FM.js → 18.BtYZF6FM.js} +0 -0
- /package/app/webui/build/_app/immutable/nodes/{18.BIzqhTqv.js → 4.BIzqhTqv.js} +0 -0
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
var Cr=Object.defineProperty;var vs=d=>{throw TypeError(d)};var kr=(d,e,r)=>e in d?Cr(d,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):d[e]=r;var be=(d,e,r)=>kr(d,typeof e!="symbol"?e+"":e,r),Do=(d,e,r)=>e.has(d)||vs("Cannot "+r);var h=(d,e,r)=>(Do(d,e,"read from private field"),r?r.call(d):e.get(d)),$=(d,e,r)=>e.has(d)?vs("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(d):e.set(d,r),T=(d,e,r,p)=>(Do(d,e,"write to private field"),p?p.call(d,r):e.set(d,r),r),C=(d,e,r)=>(Do(d,e,"access private method"),r);import{p as Fs,c as oe,a as y,f as M,t as zt}from"./CS53ooo0.js";import"./BA4Gucnq.js";import{o as zr}from"./Dyvi1wBH.js";import{b7 as Ge,i as t,a5 as n,aA as Se,at as yo,f as N,au as bo,av as f,aj as vo,ax as c,aC as Vt,aD as Pr,aw as v,ay as pe,az as _e,U as x,u as Fe,z as P,aq as Ao}from"./vtBo8kBV.js";import{o as jt,d as xr,a as ie,s as ze,e as $r,r as Tr}from"./B2cyTHdf.js";import{s as Sr,a as ms}from"./B6WG2Sd3.js";import{i as he}from"./BkD3yAYe.js";import{e as Fo,i as ys}from"./CFwxUBGi.js";import{d as Ut,r as Pt,a as xt,e as Or,s as No}from"./DoRPmqLn.js";import{b as $t}from"./C8umpVpB.js";import{i as Mr}from"./DVa8Y-mQ.js";import{g as bs}from"./ClknbeNl.js";import{p as Io}from"./CqYSO3Dx.js";import{s as Tt}from"./CGCMIfh3.js";import{R as Dr,M as Ar,P as Fr,a as Nr,h as _s,S as Ir,b as Hr,r as Lr,s as Er,c as Wr}from"./DJ2e04vK.js";import{a as Ne}from"./CBY2biv-.js";import{D as gs,a as ws,b as Cs,c as ks,d as co}from"./DAdOEnFb.js";import{P as Vr}from"./D6kzEN_P.js";import{w as Yo,j as jr,k as it,C as Ur,a as zs,b as fe,d as Ns,l as Kr,p as mo,E as Br,S as qr,g as Is,q as Jr,r as Xr,c as Yr,f as Hs,n as St,m as ho,s as lt,I as pt,P as po}from"./DsxvjlCC.js";import{s as ht}from"./ChUctqXA.js";import{p as B,s as Ve,r as Ls,l as ft}from"./BAJAS8BI.js";import{P as Qr,a as Gr,g as Ps,F as Zr,b as Rr}from"./6prdYIKP.js";function Ho(d,e){const[r,p]=d;let u=!1;const l=e.length;for(let m=0,_=l-1;m<l;_=m++){const[q,se]=e[m]??[0,0],[Te,Z]=e[_]??[0,0];se>=p!=Z>=p&&r<=(Te-q)*(p-se)/(Z-se)+q&&(u=!u)}return u}function Lo(d,e){return d[0]>=e.left&&d[0]<=e.right&&d[1]>=e.top&&d[1]<=e.bottom}function xs(d,e){const r=d.left+d.width/2,p=d.top+d.height/2,u=e.left+e.width/2,l=e.top+e.height/2,m=u-r,_=l-p;return Math.abs(m)>Math.abs(_)?m>0?"right":"left":_>0?"bottom":"top"}var Re,Ot,Mt,He,ge,ut,ct,et,tt,z,fo,Eo,Wo,Es,Ws,Ie,Vo,Vs,js;class en{constructor(e){$(this,z);$(this,Re);$(this,Ot);$(this,Mt);$(this,He,null);$(this,ge,null);$(this,ut,[]);$(this,ct,null);$(this,et,null);$(this,tt,null);T(this,Re,e),T(this,Ot,e.buffer??1);const r=e.transitIntentTimeout;T(this,Mt,typeof r=="number"&&r>0?r:null),Yo([e.triggerNode,e.contentNode,e.enabled],([p,u,l])=>{if(!p||!u||!l){T(this,ct,null),C(this,z,Ie).call(this);return}h(this,ct)&&h(this,ct)!==p&&C(this,z,Ie).call(this),T(this,ct,p);const m=jr(p),_=A=>{C(this,z,Ws).call(this,[A.clientX,A.clientY],p,u)},q=A=>{var Oe,R;const L=A.relatedTarget;if(it(L)&&u.contains(L))return;const K=((R=(Oe=h(this,Re)).ignoredTargets)==null?void 0:R.call(Oe))??[];it(L)&&K.some(W=>W===L||W.contains(L))||(T(this,ut,it(L)&&K.length>0?K.filter(W=>L.contains(W)):[]),T(this,He,[A.clientX,A.clientY]),T(this,ge,"content"),C(this,z,Eo).call(this))},se=()=>{C(this,z,Ie).call(this)},Te=()=>{C(this,z,Ie).call(this)},Z=A=>{const L=A.relatedTarget;it(L)&&p.contains(L)||(T(this,He,[A.clientX,A.clientY]),T(this,ge,"trigger"),C(this,z,Eo).call(this))};return[jt(m,"pointermove",_),jt(p,"pointerleave",q),jt(p,"pointerenter",se),jt(u,"pointerenter",Te),jt(u,"pointerleave",Z)].reduce((A,L)=>()=>{A(),L()},()=>{})})}}Re=new WeakMap,Ot=new WeakMap,Mt=new WeakMap,He=new WeakMap,ge=new WeakMap,ut=new WeakMap,ct=new WeakMap,et=new WeakMap,tt=new WeakMap,z=new WeakSet,fo=function(){h(this,et)!==null&&(cancelAnimationFrame(h(this,et)),T(this,et,null))},Eo=function(){C(this,z,fo).call(this),T(this,et,requestAnimationFrame(()=>{T(this,et,null),!(!h(this,He)||!h(this,ge))&&(C(this,z,Ie).call(this),h(this,Re).onPointerExit())}))},Wo=function(){h(this,tt)!==null&&(clearTimeout(h(this,tt)),T(this,tt,null))},Es=function(){h(this,Mt)!==null&&(C(this,z,Wo).call(this),T(this,tt,window.setTimeout(()=>{T(this,tt,null),!(!h(this,He)||!h(this,ge))&&(C(this,z,Ie).call(this),h(this,Re).onPointerExit())},h(this,Mt))))},Ws=function(e,r,p){if(!h(this,He)||!h(this,ge))return;C(this,z,fo).call(this),C(this,z,Es).call(this);const u=r.getBoundingClientRect(),l=p.getBoundingClientRect();if(h(this,ge)==="content"&&Lo(e,l)){C(this,z,Ie).call(this);return}if(h(this,ge)==="trigger"&&Lo(e,u)){C(this,z,Ie).call(this);return}if(h(this,ge)==="content"&&h(this,ut).length>0)for(const Te of h(this,ut)){const Z=Te.getBoundingClientRect();if(Lo(e,Z))return;const A=xs(u,Z),L=C(this,z,Vo).call(this,u,Z,A);if(L&&Ho(e,L))return}const m=xs(u,l),_=C(this,z,Vo).call(this,u,l,m);if(_&&Ho(e,_))return;const q=h(this,ge)==="content"?l:u,se=C(this,z,Vs).call(this,h(this,He),q,m,h(this,ge));Ho(e,se)||(C(this,z,Ie).call(this),h(this,Re).onPointerExit())},Ie=function(){T(this,He,null),T(this,ge,null),T(this,ut,[]),C(this,z,fo).call(this),C(this,z,Wo).call(this)},Vo=function(e,r,p){const u=h(this,Ot);switch(p){case"top":return[[Math.min(e.left,r.left)-u,e.top],[Math.min(e.left,r.left)-u,r.bottom],[Math.max(e.right,r.right)+u,r.bottom],[Math.max(e.right,r.right)+u,e.top]];case"bottom":return[[Math.min(e.left,r.left)-u,e.bottom],[Math.min(e.left,r.left)-u,r.top],[Math.max(e.right,r.right)+u,r.top],[Math.max(e.right,r.right)+u,e.bottom]];case"left":return[[e.left,Math.min(e.top,r.top)-u],[r.right,Math.min(e.top,r.top)-u],[r.right,Math.max(e.bottom,r.bottom)+u],[e.left,Math.max(e.bottom,r.bottom)+u]];case"right":return[[e.right,Math.min(e.top,r.top)-u],[r.left,Math.min(e.top,r.top)-u],[r.left,Math.max(e.bottom,r.bottom)+u],[e.right,Math.max(e.bottom,r.bottom)+u]]}},Vs=function(e,r,p,u){const l=h(this,Ot)*4,[m,_]=e;switch(u==="trigger"?C(this,z,js).call(this,p):p){case"top":return[[m-l,_+l],[m+l,_+l],[r.right+l,r.bottom],[r.right+l,r.top],[r.left-l,r.top],[r.left-l,r.bottom]];case"bottom":return[[m-l,_-l],[m+l,_-l],[r.right+l,r.top],[r.right+l,r.bottom],[r.left-l,r.bottom],[r.left-l,r.top]];case"left":return[[m+l,_-l],[m+l,_+l],[r.right,r.bottom+l],[r.left,r.bottom+l],[r.left,r.top-l],[r.right,r.top-l]];case"right":return[[m-l,_-l],[m-l,_+l],[r.left,r.bottom+l],[r.right,r.bottom+l],[r.right,r.top-l],[r.left,r.top-l]]}},js=function(e){switch(e){case"top":return"bottom";case"bottom":return"top";case"left":return"right";case"right":return"left"}};const jo=Yr({component:"popover",parts:["root","trigger","content","close","overlay"]}),Qo=new Ur("Popover.Root");var Kt,Bt,qt,Jt,Xt,Yt,Qt,ot,st,Le,Ze;const Go=class Go{constructor(e){$(this,Le);be(this,"opts");$(this,Kt,Ge(null));be(this,"contentPresence");$(this,Bt,Ge(null));$(this,qt,Ge(null));be(this,"overlayPresence");$(this,Jt,Ge(!1));$(this,Xt,Ge(!1));$(this,Yt,Ge(!1));$(this,Qt,Ge(0));$(this,ot,null);$(this,st,null);this.opts=e,this.contentPresence=new zs({ref:fe(()=>this.contentNode),open:this.opts.open,onComplete:()=>{this.opts.onOpenChangeComplete.current(this.opts.open.current)}}),this.overlayPresence=new zs({ref:fe(()=>this.overlayNode),open:this.opts.open}),Yo(()=>this.opts.open.current,r=>{r||(this.openedViaHover=!1,this.hasInteractedWithContent=!1,C(this,Le,Ze).call(this))})}static create(e){return Qo.set(new Go(e))}get contentNode(){return t(h(this,Kt))}set contentNode(e){n(h(this,Kt),e,!0)}get triggerNode(){return t(h(this,Bt))}set triggerNode(e){n(h(this,Bt),e,!0)}get overlayNode(){return t(h(this,qt))}set overlayNode(e){n(h(this,qt),e,!0)}get openedViaHover(){return t(h(this,Jt))}set openedViaHover(e){n(h(this,Jt),e,!0)}get hasInteractedWithContent(){return t(h(this,Xt))}set hasInteractedWithContent(e){n(h(this,Xt),e,!0)}get hoverCooldown(){return t(h(this,Yt))}set hoverCooldown(e){n(h(this,Yt),e,!0)}get closeDelay(){return t(h(this,Qt))}set closeDelay(e){n(h(this,Qt),e,!0)}setDomContext(e){T(this,st,e)}toggleOpen(){C(this,Le,Ze).call(this),this.opts.open.current=!this.opts.open.current}handleClose(){C(this,Le,Ze).call(this),this.opts.open.current&&(this.opts.open.current=!1)}handleHoverOpen(){C(this,Le,Ze).call(this),!this.opts.open.current&&(this.openedViaHover=!0,this.opts.open.current=!0)}handleHoverClose(){this.opts.open.current&&this.openedViaHover&&!this.hasInteractedWithContent&&(this.opts.open.current=!1)}handleDelayedHoverClose(){this.opts.open.current&&(!this.openedViaHover||this.hasInteractedWithContent||(C(this,Le,Ze).call(this),this.closeDelay<=0?this.opts.open.current=!1:h(this,st)&&T(this,ot,h(this,st).setTimeout(()=>{this.openedViaHover&&!this.hasInteractedWithContent&&(this.opts.open.current=!1),T(this,ot,null)},this.closeDelay))))}cancelDelayedClose(){C(this,Le,Ze).call(this)}markInteraction(){this.hasInteractedWithContent=!0,C(this,Le,Ze).call(this)}};Kt=new WeakMap,Bt=new WeakMap,qt=new WeakMap,Jt=new WeakMap,Xt=new WeakMap,Yt=new WeakMap,Qt=new WeakMap,ot=new WeakMap,st=new WeakMap,Le=new WeakSet,Ze=function(){h(this,ot)!==null&&h(this,st)&&(h(this,st).clearTimeout(h(this,ot)),T(this,ot,null))};let Uo=Go;var rt,Dt,dt,Pe,Bo,qo,Jo,Us,Gt;const Zo=class Zo{constructor(e,r){$(this,Pe);be(this,"opts");be(this,"root");be(this,"attachment");be(this,"domContext");$(this,rt,null);$(this,Dt,null);$(this,dt,Ge(!1));$(this,Gt,Se(()=>({id:this.opts.id.current,"aria-haspopup":"dialog","aria-expanded":Jr(this.root.opts.open.current),"data-state":Is(this.root.opts.open.current),"aria-controls":C(this,Pe,Us).call(this),[jo.trigger]:"",disabled:this.opts.disabled.current,onkeydown:this.onkeydown,onclick:this.onclick,onpointerenter:this.onpointerenter,onpointerleave:this.onpointerleave,...this.attachment})));this.opts=e,this.root=r,this.attachment=Ns(this.opts.ref,p=>this.root.triggerNode=p),this.domContext=new Kr(e.ref),this.root.setDomContext(this.domContext),this.onclick=this.onclick.bind(this),this.onkeydown=this.onkeydown.bind(this),this.onpointerenter=this.onpointerenter.bind(this),this.onpointerleave=this.onpointerleave.bind(this),Yo(()=>this.opts.closeDelay.current,p=>{this.root.closeDelay=p})}static create(e){return new Zo(e,Qo.get())}onpointerenter(e){if(this.opts.disabled.current||!this.opts.openOnHover.current||mo(e)||(n(h(this,dt),!0),C(this,Pe,qo).call(this),this.root.cancelDelayedClose(),this.root.opts.open.current||this.root.hoverCooldown))return;const r=this.opts.openDelay.current;r<=0?this.root.handleHoverOpen():T(this,rt,this.domContext.setTimeout(()=>{this.root.handleHoverOpen(),T(this,rt,null)},r))}onpointerleave(e){this.opts.disabled.current||this.opts.openOnHover.current&&(mo(e)||(n(h(this,dt),!1),C(this,Pe,Bo).call(this),this.root.hoverCooldown=!1))}onclick(e){if(!this.opts.disabled.current&&e.button===0){if(C(this,Pe,Jo).call(this),t(h(this,dt))&&this.root.opts.open.current&&this.root.openedViaHover){this.root.openedViaHover=!1,this.root.hasInteractedWithContent=!0;return}t(h(this,dt))&&this.opts.openOnHover.current&&this.root.opts.open.current&&(this.root.hoverCooldown=!0),this.root.hoverCooldown&&!this.root.opts.open.current&&(this.root.hoverCooldown=!1),this.root.toggleOpen()}}onkeydown(e){this.opts.disabled.current||(e.key===Br||e.key===qr)&&(e.preventDefault(),C(this,Pe,Jo).call(this),this.root.toggleOpen())}get props(){return t(h(this,Gt))}set props(e){n(h(this,Gt),e)}};rt=new WeakMap,Dt=new WeakMap,dt=new WeakMap,Pe=new WeakSet,Bo=function(){h(this,rt)!==null&&(this.domContext.clearTimeout(h(this,rt)),T(this,rt,null))},qo=function(){h(this,Dt)!==null&&(this.domContext.clearTimeout(h(this,Dt)),T(this,Dt,null))},Jo=function(){C(this,Pe,Bo).call(this),C(this,Pe,qo).call(this)},Us=function(){var e,r;if(this.root.opts.open.current&&((e=this.root.contentNode)!=null&&e.id))return(r=this.root.contentNode)==null?void 0:r.id},Gt=new WeakMap;let Ko=Zo;var Zt,Rt;const Ro=class Ro{constructor(e,r){be(this,"opts");be(this,"root");be(this,"attachment");be(this,"onInteractOutside",e=>{if(this.opts.onInteractOutside.current(e),e.defaultPrevented||!it(e.target))return;const r=e.target.closest(jo.selector("trigger"));if(!(r&&r===this.root.triggerNode)){if(this.opts.customAnchor.current){if(it(this.opts.customAnchor.current)){if(this.opts.customAnchor.current.contains(e.target))return}else if(typeof this.opts.customAnchor.current=="string"){const p=document.querySelector(this.opts.customAnchor.current);if(p&&p.contains(e.target))return}}this.root.handleClose()}});be(this,"onEscapeKeydown",e=>{this.opts.onEscapeKeydown.current(e),!e.defaultPrevented&&this.root.handleClose()});$(this,Zt,Se(()=>({open:this.root.opts.open.current})));$(this,Rt,Se(()=>({id:this.opts.id.current,tabindex:-1,"data-state":Is(this.root.opts.open.current),[jo.content]:"",style:{pointerEvents:"auto",contain:"layout style"},onpointerdown:this.onpointerdown,onfocusin:this.onfocusin,onpointerenter:this.onpointerenter,onpointerleave:this.onpointerleave,...this.attachment})));be(this,"popperProps",{onInteractOutside:this.onInteractOutside,onEscapeKeydown:this.onEscapeKeydown});this.opts=e,this.root=r,this.attachment=Ns(this.opts.ref,p=>this.root.contentNode=p),this.onpointerdown=this.onpointerdown.bind(this),this.onfocusin=this.onfocusin.bind(this),this.onpointerenter=this.onpointerenter.bind(this),this.onpointerleave=this.onpointerleave.bind(this),new en({triggerNode:()=>this.root.triggerNode,contentNode:()=>this.root.contentNode,enabled:()=>this.root.opts.open.current&&this.root.openedViaHover&&!this.root.hasInteractedWithContent,onPointerExit:()=>{this.root.handleDelayedHoverClose()}})}static create(e){return new Ro(e,Qo.get())}onpointerdown(e){this.root.markInteraction()}onfocusin(e){const r=e.target;it(r)&&Xr(r)&&this.root.markInteraction()}onpointerenter(e){mo(e)||this.root.cancelDelayedClose()}onpointerleave(e){mo(e)}get shouldRender(){return this.root.contentPresence.shouldRender}get shouldTrapFocus(){return!(this.root.openedViaHover&&!this.root.hasInteractedWithContent)}get snippetProps(){return t(h(this,Zt))}set snippetProps(e){n(h(this,Zt),e)}get props(){return t(h(this,Rt))}set props(e){n(h(this,Rt),e)}};Zt=new WeakMap,Rt=new WeakMap;let Xo=Ro;var tn=M("<div><div><!></div></div>"),on=M("<div><div><!></div></div>");function $s(d,e){const r=Fs();yo(e,!0);let p=B(e,"ref",15,null),u=B(e,"id",19,()=>Hs(r)),l=B(e,"forceMount",3,!1),m=B(e,"onOpenAutoFocus",3,St),_=B(e,"onCloseAutoFocus",3,St),q=B(e,"onEscapeKeydown",3,St),se=B(e,"onInteractOutside",3,St),Te=B(e,"trapFocus",3,!0),Z=B(e,"preventScroll",3,!1),A=B(e,"customAnchor",3,null),L=Ls(e,["$$slots","$$events","$$legacy","child","children","ref","id","forceMount","onOpenAutoFocus","onCloseAutoFocus","onEscapeKeydown","onInteractOutside","trapFocus","preventScroll","customAnchor","style"]);const K=Xo.create({id:fe(()=>u()),ref:fe(()=>p(),J=>p(J)),onInteractOutside:fe(()=>se()),onEscapeKeydown:fe(()=>q()),customAnchor:fe(()=>A())}),Oe=Se(()=>ho(L,K.props)),R=Se(()=>Te()&&K.shouldTrapFocus);function W(J){K.shouldTrapFocus||J.preventDefault(),m()(J)}var je=oe(),we=N(je);{var le=J=>{Qr(J,Ve(()=>t(Oe),()=>K.popperProps,{get ref(){return K.opts.ref},get enabled(){return K.root.opts.open.current},get id(){return u()},get trapFocus(){return t(R)},get preventScroll(){return Z()},loop:!0,forceMount:!0,get customAnchor(){return A()},onOpenAutoFocus:W,get onCloseAutoFocus(){return _()},get shouldRender(){return K.shouldRender},popper:(Ke,E)=>{let Be=()=>E==null?void 0:E().props,Ce=()=>E==null?void 0:E().wrapperProps;const re=Se(()=>ho(Be(),{style:Ps("popover")},{style:e.style}));var Me=oe(),xe=N(Me);{var qe=X=>{var V=oe(),j=N(V);{let I=Se(()=>({props:t(re),wrapperProps:Ce(),...K.snippetProps}));lt(j,()=>e.child,()=>t(I))}y(X,V)},ee=X=>{var V=tn();Ut(V,()=>({...Ce()}));var j=f(V);Ut(j,()=>({...t(re)}));var I=f(j);lt(I,()=>e.children??vo),c(j),c(V),y(X,V)};he(xe,X=>{e.child?X(qe):X(ee,-1)})}y(Ke,Me)},$$slots:{popper:!0}}))},ve=J=>{Gr(J,Ve(()=>t(Oe),()=>K.popperProps,{get ref(){return K.opts.ref},get open(){return K.root.opts.open.current},get id(){return u()},get trapFocus(){return t(R)},get preventScroll(){return Z()},loop:!0,forceMount:!1,get customAnchor(){return A()},onOpenAutoFocus:W,get onCloseAutoFocus(){return _()},get shouldRender(){return K.shouldRender},popper:(Ke,E)=>{let Be=()=>E==null?void 0:E().props,Ce=()=>E==null?void 0:E().wrapperProps;const re=Se(()=>ho(Be(),{style:Ps("popover")},{style:e.style}));var Me=oe(),xe=N(Me);{var qe=X=>{var V=oe(),j=N(V);{let I=Se(()=>({props:t(re),wrapperProps:Ce(),...K.snippetProps}));lt(j,()=>e.child,()=>t(I))}y(X,V)},ee=X=>{var V=on();Ut(V,()=>({...Ce()}));var j=f(V);Ut(j,()=>({...t(re)}));var I=f(j);lt(I,()=>e.children??vo),c(j),c(V),y(X,V)};he(xe,X=>{e.child?X(qe):X(ee,-1)})}y(Ke,Me)},$$slots:{popper:!0}}))};he(we,J=>{l()?J(le):l()||J(ve,1)})}y(d,je),bo()}var sn=M("<button><!></button>");function Ts(d,e){const r=Fs();yo(e,!0);let p=B(e,"id",19,()=>Hs(r)),u=B(e,"ref",15,null),l=B(e,"type",3,"button"),m=B(e,"disabled",3,!1),_=B(e,"openOnHover",3,!1),q=B(e,"openDelay",3,700),se=B(e,"closeDelay",3,300),Te=Ls(e,["$$slots","$$events","$$legacy","children","child","id","ref","type","disabled","openOnHover","openDelay","closeDelay"]);const Z=Ko.create({id:fe(()=>p()),ref:fe(()=>u(),L=>u(L)),disabled:fe(()=>!!m()),openOnHover:fe(()=>_()),openDelay:fe(()=>q()),closeDelay:fe(()=>se())}),A=Se(()=>ho(Te,Z.props,{type:l()}));Zr(d,{get id(){return p()},get ref(){return Z.opts.ref},children:(L,K)=>{var Oe=oe(),R=N(Oe);{var W=we=>{var le=oe(),ve=N(le);lt(ve,()=>e.child,()=>({props:t(A)})),y(we,le)},je=we=>{var le=sn();Ut(le,()=>({...t(A)}));var ve=f(le);lt(ve,()=>e.children??vo),c(le),y(we,le)};he(R,we=>{e.child?we(W):we(je,-1)})}y(L,Oe)},$$slots:{default:!0}}),bo()}function Ss(d,e){yo(e,!0);let r=B(e,"open",15,!1),p=B(e,"onOpenChange",3,St),u=B(e,"onOpenChangeComplete",3,St);Uo.create({open:fe(()=>r(),l=>{r(l),p()(l)}),onOpenChangeComplete:fe(()=>u())}),Rr(d,{children:(l,m)=>{var _=oe(),q=N(_);lt(q,()=>e.children??vo),y(l,_)},$$slots:{default:!0}}),bo()}function rn(d,e){const r=ft(e,["children","$$slots","$$events","$$legacy"]);/**
|
|
2
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the ISC license.
|
|
5
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const p=[["path",{d:"m3 16 4 4 4-4"}],["path",{d:"M7 20V4"}],["path",{d:"m21 8-4-4-4 4"}],["path",{d:"M17 4v16"}]];pt(d,Ve({name:"arrow-down-up"},()=>r,{get iconNode(){return p},children:(u,l)=>{var m=oe(),_=N(m);ht(_,e,"default",{}),y(u,m)},$$slots:{default:!0}}))}function nn(d,e){const r=ft(e,["children","$$slots","$$events","$$legacy"]);/**
|
|
7
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
8
|
-
*
|
|
9
|
-
* This source code is licensed under the ISC license.
|
|
10
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
11
|
-
*/const p=[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2"}]];pt(d,Ve({name:"copy"},()=>r,{get iconNode(){return p},children:(u,l)=>{var m=oe(),_=N(m);ht(_,e,"default",{}),y(u,m)},$$slots:{default:!0}}))}function an(d,e){const r=ft(e,["children","$$slots","$$events","$$legacy"]);/**
|
|
12
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
13
|
-
*
|
|
14
|
-
* This source code is licensed under the ISC license.
|
|
15
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
16
|
-
*/const p=[["circle",{cx:"12",cy:"12",r:"1"}],["circle",{cx:"19",cy:"12",r:"1"}],["circle",{cx:"5",cy:"12",r:"1"}]];pt(d,Ve({name:"ellipsis"},()=>r,{get iconNode(){return p},children:(u,l)=>{var m=oe(),_=N(m);ht(_,e,"default",{}),y(u,m)},$$slots:{default:!0}}))}function ln(d,e){const r=ft(e,["children","$$slots","$$events","$$legacy"]);/**
|
|
17
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
18
|
-
*
|
|
19
|
-
* This source code is licensed under the ISC license.
|
|
20
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
21
|
-
*/const p=[["path",{d:"M15 3h6v6"}],["path",{d:"M10 14 21 3"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}]];pt(d,Ve({name:"external-link"},()=>r,{get iconNode(){return p},children:(u,l)=>{var m=oe(),_=N(m);ht(_,e,"default",{}),y(u,m)},$$slots:{default:!0}}))}function un(d,e){const r=ft(e,["children","$$slots","$$events","$$legacy"]);/**
|
|
22
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
23
|
-
*
|
|
24
|
-
* This source code is licensed under the ISC license.
|
|
25
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
26
|
-
*/const p=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"}],["path",{d:"m15 5 4 4"}]];pt(d,Ve({name:"pencil"},()=>r,{get iconNode(){return p},children:(u,l)=>{var m=oe(),_=N(m);ht(_,e,"default",{}),y(u,m)},$$slots:{default:!0}}))}function Os(d,e){const r=ft(e,["children","$$slots","$$events","$$legacy"]);/**
|
|
27
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
28
|
-
*
|
|
29
|
-
* This source code is licensed under the ISC license.
|
|
30
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
31
|
-
*/const p=[["path",{d:"M3 6h18"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17"}]];pt(d,Ve({name:"trash-2"},()=>r,{get iconNode(){return p},children:(u,l)=>{var m=oe(),_=N(m);ht(_,e,"default",{}),y(u,m)},$$slots:{default:!0}}))}function cn(d,e){const r=ft(e,["children","$$slots","$$events","$$legacy"]);/**
|
|
32
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
33
|
-
*
|
|
34
|
-
* This source code is licensed under the ISC license.
|
|
35
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
36
|
-
*/const p=[["path",{d:"M3 6h18"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2"}]];pt(d,Ve({name:"trash"},()=>r,{get iconNode(){return p},children:(u,l)=>{var m=oe(),_=N(m);ht(_,e,"default",{}),y(u,m)},$$slots:{default:!0}}))}function Ms(d){const e=d.trim();if(!e)return e;if(!/^https?:\/\//i.test(e))return e.toLowerCase();try{const r=new URL(e),p=r.protocol.toLowerCase(),u=r.host.toLowerCase();let l=r.pathname;return l.length>1&&l.endsWith("/")&&(l=l.slice(0,-1)),l=l.toLowerCase(),`${p}//${u}${l}${r.search}${r.hash}`}catch{return e.toLowerCase()}}function Ds(d){const e=d.trim();if(!/^https?:\/\//i.test(e))return null;try{return new URL(e).hostname.replace(/^www\./i,"")||null}catch{return null}}function As(d){return`/api/feed-favicon?domain=${encodeURIComponent(d)}`}var dn=M("<option> </option>"),pn=M('<p class="save-error svelte-1beoyzy"> </p>'),hn=M('<span class="confirm-delete-row svelte-1beoyzy"><span class="confirm-delete-text svelte-1beoyzy">确认删除?</span> <button type="button" class="btn-confirm-yes svelte-1beoyzy">删除</button> <button type="button" class="btn-confirm-no svelte-1beoyzy">取消</button></span>'),fn=M('<button type="button" class="btn-delete svelte-1beoyzy"><!> 删除</button>'),vn=M('<div class="modal-header svelte-1beoyzy"><!> <!></div> <div class="modal-body svelte-1beoyzy"><div class="field svelte-1beoyzy"><span class="field-label svelte-1beoyzy">Ref <span class="required svelte-1beoyzy">*</span></span> <div class="ref-input-wrap svelte-1beoyzy"><input class="field-input svelte-1beoyzy" type="text" placeholder="https://example.com/feed"/></div></div> <div class="field svelte-1beoyzy"><span class="field-label svelte-1beoyzy">来源</span> <div class="parse-hints svelte-1beoyzy" role="status" aria-live="polite"><span title="标准 RSS/Atom/JSON Feed(内置 __rss__,rss-parser)"><!> <span>RSS/Atom</span></span> <span title="内置 IMAP 邮件插件(__email__)"><!> <span>邮箱</span></span> <span title="Site 插件(listUrlPattern)或语鲸协议(lingowhale://)"><!> <span>插件</span></span> <span title="通用网页列表:无 Feed 特征且未命中插件时,走 LLM 解析(generic)"><!> <span>LLM</span></span></div></div> <div class="field svelte-1beoyzy"><span class="field-label svelte-1beoyzy">名称</span> <input class="field-input svelte-1beoyzy" type="text" placeholder="显示名称(留空则显示 ref)"/></div> <div class="field svelte-1beoyzy"><span class="field-label svelte-1beoyzy">描述</span> <input class="field-input svelte-1beoyzy" type="text" placeholder="简短说明"/></div> <div class="field-row svelte-1beoyzy"><div class="field svelte-1beoyzy"><span class="field-label svelte-1beoyzy">权重(0–1)</span> <input class="field-input field-input--weight svelte-1beoyzy" type="number" min="0" max="1" step="0.01" inputmode="decimal" placeholder="0–1"/></div> <div class="field svelte-1beoyzy"><span class="field-label svelte-1beoyzy">刷新间隔</span> <select class="field-input svelte-1beoyzy"></select></div></div> <div class="field svelte-1beoyzy"><span class="field-label svelte-1beoyzy">代理</span> <input class="field-input svelte-1beoyzy" type="text" placeholder="http://127.0.0.1:7890"/></div> <!></div> <div class="modal-footer svelte-1beoyzy"><div class="modal-footer-left svelte-1beoyzy"><!></div> <div class="modal-footer-right svelte-1beoyzy"><!> <button type="button" class="btn-save svelte-1beoyzy"> </button></div></div>',1),mn=M("<!> <!>",1),yn=M('<p class="remove-dialog-target svelte-1beoyzy"> </p>'),bn=M('<div class="modal-header svelte-1beoyzy"><!> <!></div> <div class="modal-body svelte-1beoyzy"><p id="remove-source-desc" class="remove-dialog-text svelte-1beoyzy">确定删除该信源吗?操作会同时删除该信源下已入库的所有条目,且不可恢复。</p> <!></div> <div class="modal-footer remove-dialog-footer svelte-1beoyzy"><!> <button type="button" class="btn-confirm-yes svelte-1beoyzy">移除</button></div>',1),_n=M("<!> <!>",1),gn=M('<span class="sort-menu-dir svelte-1beoyzy" aria-hidden="true"> </span>'),wn=M('<button type="button"><span> </span> <!></button>'),Cn=M("<!> <!>",1),kn=M('<div class="state svelte-1beoyzy">加载中…</div>'),zn=M('<div class="state error svelte-1beoyzy"> </div>'),Pn=M('<div class="state svelte-1beoyzy">暂无信源。<button type="button" class="link-btn svelte-1beoyzy">点击添加</button>第一个信源。</div>'),xn=M('<div class="state svelte-1beoyzy">无匹配结果</div>'),$n=M('<img class="source-title-favicon svelte-1beoyzy" alt="" width="16" height="16" loading="lazy" decoding="async"/>'),Tn=M('<span class="source-title-favicon-slot svelte-1beoyzy" aria-hidden="true"><!></span>'),Sn=M('<button type="button" class="more-menu-item svelte-1beoyzy" title="在本机服务端启动与抓取相同的有头 Chrome(共用浏览器数据目录与代理)"><!> <span>打开链接</span></button>'),On=M('<button type="button" title="强制拉取"><!> <span> </span></button> <button type="button" class="more-menu-item svelte-1beoyzy"><!> <span>编辑</span></button> <button type="button" class="more-menu-item svelte-1beoyzy" title="复制本服务的 RSS 订阅地址(/rss?ref=…)"><!> <span>复制 RSS 地址</span></button> <!> <button type="button" class="more-menu-item more-menu-item-danger svelte-1beoyzy" title="清空该信源下所有已入库条目"><!> <span> </span></button> <button type="button" class="more-menu-item more-menu-item-remove svelte-1beoyzy" title="从订阅列表中移除此信源"><!> <span> </span></button>',1),Mn=M("<!> <!>",1),Dn=M('<div class="card row-grid svelte-1beoyzy" role="button" tabindex="0"><div class="cell-title svelte-1beoyzy"><div class="title-block svelte-1beoyzy"><!> <div class="title-line svelte-1beoyzy"><span class="title-text svelte-1beoyzy"> </span> <span class="title-item-count svelte-1beoyzy"> </span></div></div></div> <div class="cell-actions svelte-1beoyzy"><!></div></div>'),An=M('<div class="list svelte-1beoyzy"></div>'),Fn=M('<!> <!> <!> <div class="feed-wrap svelte-1beoyzy"><div class="feed-col svelte-1beoyzy"><div class="feed-toolbar-block svelte-1beoyzy"><div class="feed-header svelte-1beoyzy"><div class="header-left svelte-1beoyzy"><input class="filter-input svelte-1beoyzy" type="search" placeholder="过滤…"/> <!></div> <div class="header-right svelte-1beoyzy"><button type="button" class="btn-add svelte-1beoyzy" title="添加信源" aria-label="添加信源"><!></button></div></div></div> <div class="feed-body-scroll svelte-1beoyzy"><!></div></div></div>',1);function ra(d,e){yo(e,!1);const r=()=>ms(Lr,"$refToTaskId",u),p=()=>ms(Io,"$page",u),[u,l]=Sr(),m=P(),_=P(),q=P(),se=P();function Te(o){return o==="alpha"||o==="parse"?"asc":"desc"}const Z="1day",A=[{value:"10min",label:"10 分钟"},{value:"30min",label:"30 分钟"},{value:"1h",label:"1 小时"},{value:"6h",label:"6 小时"},{value:"12h",label:"12 小时"},{value:"1day",label:"1 天"},{value:"3day",label:"3 天"},{value:"7day",label:"7 天"}];function L(o){const s=(o==null?void 0:o.trim())??"";return A.some(a=>a.value===s)?s:Z}function K(o){return Math.min(1,Math.max(0,o))}function Oe(o){const s=typeof o=="number"&&!Number.isNaN(o)?o:Number(String(o).trim());return Number.isFinite(s)?s<0||s>1?{ok:!1,message:"权重需在 0–1 之间"}:{ok:!0,value:s}:{ok:!1,message:"权重需为 0–1 之间的数字"}}let R=[],W=P([]),je=P(!0),we=P(""),le=P(""),ve=P("weight"),J=P("desc"),Ue=P(!1),Ke="",E=P(null),Be=P({}),Ce=P(null),re=P(null),Me=P(!1),xe=P(null),qe=P(!1),ee=P(null),X=P(!1),V=P(!1),j=P(!1),I=P(""),$e=P(""),vt=P(""),mt=P(""),At=P(0),Ft=P(Z),yt=P(""),bt=P(null),eo=null;function to(o){const s=(o==null?void 0:o.trim())??"";if(!s)return s;const a=s.toLowerCase();return a.startsWith("http://")||a.startsWith("https://")||a.startsWith("imaps://")||a.startsWith("imap://")||a.startsWith("lingowhale://")?s:"https://"+s}function Ks(o){const s=o.toLowerCase();return s.includes("/feed")||s.includes("/rss")||s.includes("/atom")||s.endsWith(".xml")||s.endsWith(".rss")||s.endsWith(".atom")||s.includes("format=rss")||s.includes("format=atom")||s.includes("output=rss")}function es(o,s){const a=(o==null?void 0:o.trim())??"";if(!a)return null;const i=a.toLowerCase();if(i.startsWith("imaps://")||i.startsWith("imap://"))return"email";if(i.startsWith("lingowhale://"))return"plugin";const w=to(a);return!w.startsWith("http://")&&!w.startsWith("https://")?null:Ks(w)?"rss":s?"plugin":"llm"}function _o(o){return o==="rss"?"RSS/Atom":o==="plugin"?"插件":o==="llm"?"LLM":o==="email"?"邮箱":"—"}function Bs(o){eo&&clearTimeout(eo);const s=o==null?void 0:o.trim();if(!s){n(bt,null);return}n(bt,null);const a=to(s);eo=setTimeout(async()=>{eo=null;try{const i=await Ne("/api/sources/plugin-match",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refs:[a]})});if(i.ok){const w=await i.json();to(t($e).trim())===a&&n(bt,w[a]??null)}}catch{to(t($e).trim())===a&&n(bt,null)}},400)}function qs(o,s,a){const i=a==="desc"?-1:1;return[...o].sort((w,k)=>{let b=0;switch(s){case"weight":b=w.weight-k.weight;break;case"alpha":b=w.displayLabel.localeCompare(k.displayLabel,"zh-CN");break;case"parse":b=_o(w.parseHint).localeCompare(_o(k.parseHint),"zh-CN");break;case"latest":{const H=w.latestAt?new Date(w.latestAt).getTime():NaN,me=k.latestAt?new Date(k.latestAt).getTime():NaN,ue=Number.isFinite(H),g=Number.isFinite(me);if(!ue&&!g)b=0;else if(ue)if(g)b=H-me;else return-1;else return 1;break}case"count":b=w.count-k.count;break;case"week":b=w.weekCount-k.weekCount;break}return b!==0?i*b:w.displayLabel.localeCompare(k.displayLabel,"zh-CN")})}function Js(o){t(ve)===o?n(J,t(J)==="asc"?"desc":"asc"):(n(ve,o),n(J,Te(o)))}let go=P(!1);function ts(o){return o==="alpha"?"标题":o==="weight"?"权重":o==="latest"?"最近拉取":o==="parse"?"解析":o==="week"?"近7天":"数量"}function Xs(o){Js(o),n(go,!1)}const Ys=["alpha","weight","latest","parse","count","week"];async function _t(o){const s=(o==null?void 0:o.silent)===!0;s||n(je,!0),n(we,"");try{const[a,i]=await Promise.all([Ne("/api/sources/raw"),Ne("/api/sources/stats")]),w=await a.text(),k=JSON.parse(w||"{}");R=Array.isArray(k.sources)?k.sources:[];const b=i.ok?await i.json():[],H=new Map;for(const g of b){const S=Ms(g.source_url),F=H.get(S),D=g.latest_at??null,Y=typeof g.count_7d=="number"&&Number.isFinite(g.count_7d)?g.count_7d:0;F?H.set(S,{count:F.count+g.count,weekCount:F.weekCount+Y,latestAt:F.latestAt?D?F.latestAt>=D?F.latestAt:D:F.latestAt:D}):H.set(S,{count:g.count,weekCount:Y,latestAt:D})}const me=R.filter(g=>{var S;return(S=g==null?void 0:g.ref)==null?void 0:S.trim()}).map(g=>g.ref.trim());let ue={};if(me.length>0)try{const g=await Ne("/api/sources/plugin-match",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refs:me})});g.ok&&(ue=await g.json())}catch{}n(W,R.filter(g=>{var S;return(S=g==null?void 0:g.ref)==null?void 0:S.trim()}).map(g=>{var ke,ye;const S=g.ref.trim(),F=H.get(Ms(S))??{count:0,weekCount:0,latestAt:null},D=ue[S]??null,Y=(ke=g.proxy)==null?void 0:ke.trim();return{ref:S,displayLabel:g.label&&g.label.trim()||S,description:(ye=g.description)==null?void 0:ye.trim(),count:(F==null?void 0:F.count)??0,weekCount:(F==null?void 0:F.weekCount)??0,latestAt:(F==null?void 0:F.latestAt)??null,pluginId:D,weight:g.weight??0,...Y?{proxy:Y}:{},parseHint:es(S,D)}}))}catch(a){n(we,a instanceof Error?a.message:String(a)),s||n(W,[])}finally{s||n(je,!1)}}async function wo(o){return(await Ne("/api/sources/raw",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({sources:o})})).ok}function os(){n(V,!1),n($e,""),n(vt,""),n(mt,""),n(At,0),n(Ft,Z),n(yt,""),n(I,""),n(X,!0)}function Qs(o){const s=R.find(a=>a.ref===o.ref);n(V,!0),Ke=o.ref,n($e,o.ref),n(vt,(s==null?void 0:s.label)??""),n(mt,(s==null?void 0:s.description)??""),n(At,K((s==null?void 0:s.weight)??0)),n(Ft,L(s==null?void 0:s.refresh)),n(yt,(s==null?void 0:s.proxy)??""),n(I,""),n(Ue,!1),n(X,!0)}function ss(){n(X,!1),n(Ue,!1)}async function Gs(){const o=t($e).trim();if(!o){n(I,"ref 不能为空");return}const s=Oe(t(At));if(!s.ok){n(I,s.message);return}n(j,!0),n(I,"");try{const a=s.value,i={ref:o,...t(vt).trim()?{label:t(vt).trim()}:{},...t(mt).trim()?{description:t(mt).trim()}:{},refresh:t(Ft),...t(yt).trim()?{proxy:t(yt).trim()}:{},...a!==0?{weight:a}:{}};let w;if(t(V)){if(o!==Ke&&R.some(b=>b.ref===o)){n(I,"该 ref 已存在");return}w=R.map(b=>b.ref===Ke?{...b,...i}:b)}else{if(R.some(b=>b.ref===o)){n(I,"该 ref 已存在");return}w=[...R,i]}if(!await wo(w)){n(I,"保存失败,请重试");return}ss(),await _t({silent:!0})}catch(a){n(I,a instanceof Error?a.message:String(a))}finally{n(j,!1)}}async function rs(o){try{const s=await Ne("/api/items/by-source?source_url="+encodeURIComponent(o),{method:"DELETE"}),a=await s.json();return!s.ok||!a.ok?{ok:!1,message:a.message??"删除信源条目失败"}:{ok:!0,deleted:Number(a.deleted??0)}}catch(s){return{ok:!1,message:s instanceof Error?s.message:"删除信源条目失败"}}}async function Zs(){const o=Ke.trim();if(!o){n(I,"缺少信源 ref");return}n(j,!0),n(I,"");try{const s=await rs(o);if(!s.ok){n(I,s.message);return}const a=R.filter(w=>w.ref!==o);if(!await wo(a)){n(I,"删除信源失败,请重试");return}ss(),await _t({silent:!0})}catch(s){n(I,s instanceof Error?s.message:String(s))}finally{n(j,!1)}}async function Rs(o){for(let s=0;s<120;s++){const a=await Ne(`/api/tasks/${o}`);if(!a.ok)return{ok:!1,error:"轮询失败"};const i=await a.json();if(i.status==="done")return{ok:!0};if(i.status==="error")return{ok:!1,error:i.error??"拉取失败"};await new Promise(w=>setTimeout(w,800))}return{ok:!1,error:"超时"}}async function er(o,s){if(s==null||s.preventDefault(),s==null||s.stopPropagation(),!(o in r()))try{const a=await Ne("/api/tasks",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({type:"source-pull",ref:o})}),i=await a.json();if(!a.ok||!i.taskId)return;Er(o,i.taskId),(await Rs(i.taskId)).ok&&await _t({silent:!0})}catch{}finally{Wr(o)}}function tr(o){const s=o.trim().toLowerCase();return s.startsWith("http://")||s.startsWith("https://")}function or(o){const s=new URL("/rss",typeof window<"u"?window.location.origin:"http://127.0.0.1");return s.searchParams.set("ref",o),s.href}async function sr(o,s){s==null||s.preventDefault(),s==null||s.stopPropagation();try{const a=await Ne("/api/sources/open-browser",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({url:o})}),i=await a.json();a.ok&&i.ok?Tt(i.message??"已在爬虫浏览器中打开","success"):Tt(i.message??"打开失败","error")}catch{Tt("打开失败","error")}finally{n(E,null)}}async function rr(o){const s=or(o);try{await navigator.clipboard.writeText(s)}catch{try{const a=document.createElement("textarea");a.value=s,a.style.position="fixed",a.style.left="-9999px",document.body.appendChild(a),a.select(),document.execCommand("copy"),document.body.removeChild(a)}catch{}}n(E,null)}function nr(o){n(Me,o),o||n(xe,null)}function ar(o){t(re)||(n(xe,o),n(Me,!0),n(E,null))}async function ir(){var s;const o=t(xe);if(!(!o||t(re))){n(Me,!1),n(xe,null),n(re,o);try{const a=await rs(o);if(!a.ok){Tt(a.message,"error");return}const i=R.filter(k=>k.ref!==o);if(!await wo(i)){Tt("移除失败,请重试","error");return}bs(Io).url.pathname==="/"?_s.update(k=>(k==null?void 0:k.ref)===o?null:k):((s=t(ee))==null?void 0:s.ref)===o&&(n(qe,!1),n(ee,null)),await _t({silent:!0})}catch(a){Tt(a instanceof Error?a.message:"移除失败","error")}finally{n(re,null)}}}async function lr(o){if(!t(Ce)&&confirm("确定要清空该信源下的所有条目吗?此操作不可恢复。")){n(Ce,o),n(E,null);try{const s=await Ne("/api/items/by-source?source_url="+encodeURIComponent(o),{method:"DELETE"}),a=await s.json();s.ok&&a.ok?await _t({silent:!0}):s.ok||alert(a.message??"清空失败")}catch(s){alert(s instanceof Error?s.message:"清空失败")}finally{n(Ce,null)}}}function ns(o){var s,a;if(bs(Io).url.pathname==="/"){_s.set({ref:o.ref,displayLabel:o.displayLabel,...(s=o.description)!=null&&s.trim()?{description:o.description.trim()}:{},...(a=o.proxy)!=null&&a.trim()?{proxy:o.proxy.trim()}:{},...o.parseHint!=null?{parseHint:o.parseHint}:{}});return}n(ee,o),n(qe,!0)}function ur(o,s){const a=s.target;a&&(a.closest("a[href], button")||ns(o))}function cr(o,s){s.key!=="Enter"&&s.key!==" "||(s.preventDefault(),ns(o))}zr(_t),Vt(()=>(t(xe),t(W)),()=>{var o;n(m,t(xe)!=null?((o=t(W).find(s=>s.ref===t(xe)))==null?void 0:o.displayLabel)??t(xe):"")}),Vt(()=>t($e),()=>{t($e),Bs(t($e))}),Vt(()=>(t($e),t(bt)),()=>{n(_,es(t($e),t(bt)))}),Vt(()=>t(_),()=>{n(q,t(_)??"llm")}),Vt(()=>(t(le),t(W),t(ve),t(J)),()=>{n(se,qs(t(le).trim()?t(W).filter(o=>{var a;const s=t(le).trim().toLowerCase();return o.displayLabel.toLowerCase().includes(s)||(((a=o.description)==null?void 0:a.toLowerCase().includes(s))??!1)||o.ref.toLowerCase().includes(s)||_o(o.parseHint).toLowerCase().includes(s)}):t(W),t(ve),t(J)))}),Pr(),Mr();var as=Fn(),is=N(as);gs(is,{get open(){return t(X)},onOpenChange:o=>{n(X,o),o||n(Ue,!1)},children:(o,s)=>{po(o,{children:(a,i)=>{var w=mn(),k=N(w);ws(k,{class:"modal-overlay"});var b=v(k,2);Cs(b,{class:"modal","aria-describedby":void 0,children:(H,me)=>{var ue=vn(),g=N(ue),S=f(g);ks(S,{class:"modal-title",children:(O,ne)=>{pe();var ae=zt();_e(()=>ze(ae,t(V)?"编辑信源":"添加信源")),y(O,ae)},$$slots:{default:!0}});var F=v(S,2);co(F,{class:"modal-close","aria-label":"关闭",children:(O,ne)=>{pe();var ae=zt("✕");y(O,ae)},$$slots:{default:!0}}),c(g);var D=v(g,2),Y=f(D),ke=v(f(Y),2),ye=f(ke);Pt(ye),c(ke),c(Y);var te=v(Y,2),ce=v(f(te),2),Q=f(ce);let U;var G=f(Q);Dr(G,{size:14,class:"parse-hint-icon"}),pe(2),c(Q);var de=v(Q,2);let De;var xo=f(de);Ar(xo,{size:14,class:"parse-hint-icon"}),pe(2),c(de);var Je=v(de,2);let $o;var oo=f(Je);Fr(oo,{size:14,class:"parse-hint-icon"}),pe(2),c(Je);var Ae=v(Je,2);let Nt;var so=f(Ae);Nr(so,{size:14,class:"parse-hint-icon"}),pe(2),c(Ae),c(ce),c(te);var gt=v(te,2),ro=v(f(gt),2);Pt(ro),c(gt);var Xe=v(gt,2),no=v(f(Xe),2);Pt(no),c(Xe);var Ye=v(Xe,2),It=f(Ye),Ht=v(f(It),2);Pt(Ht),c(It);var ao=v(It,2),Lt=v(f(ao),2);Fo(Lt,5,()=>A,ys,(O,ne)=>{var ae=dn(),Mo=f(ae,!0);c(ae);var uo={};_e(()=>{ze(Mo,(t(ne),x(()=>t(ne).label))),uo!==(uo=(t(ne),x(()=>t(ne).value)))&&(ae.value=(ae.__value=(t(ne),x(()=>t(ne).value)))??"")}),y(O,ae)}),c(Lt),c(ao),c(Ye);var Ee=v(Ye,2),Et=v(f(Ee),2);Pt(Et),c(Ee);var io=v(Ee,2);{var To=O=>{var ne=pn(),ae=f(ne,!0);c(ne),_e(()=>ze(ae,t(I))),y(O,ne)};he(io,O=>{t(I)&&O(To)})}c(D);var nt=v(D,2),wt=f(nt),lo=f(wt);{var So=O=>{var ne=oe(),ae=N(ne);{var Mo=kt=>{var We=hn(),Wt=v(f(We),2),wr=v(Wt,2);c(We),_e(()=>Wt.disabled=t(j)),ie("click",Wt,Zs),ie("click",wr,()=>n(Ue,!1)),y(kt,We)},uo=kt=>{var We=fn(),Wt=f(We);Os(Wt,{size:13}),pe(),c(We),_e(()=>We.disabled=t(j)),ie("click",We,()=>n(Ue,!0)),y(kt,We)};he(ae,kt=>{t(Ue)?kt(Mo):kt(uo,-1)})}y(O,ne)};he(lo,O=>{t(V)&&O(So)})}c(wt);var Qe=v(wt,2),at=f(Qe);co(at,{class:"btn-cancel",get disabled(){return t(j)},children:(O,ne)=>{pe();var ae=zt("取消");y(O,ae)},$$slots:{default:!0}});var Ct=v(at,2),Oo=f(Ct,!0);c(Ct),c(Qe),c(nt),_e(()=>{U=xt(Q,1,"parse-hint svelte-1beoyzy",null,U,{active:t(q)==="rss"}),De=xt(de,1,"parse-hint svelte-1beoyzy",null,De,{active:t(q)==="email"}),$o=xt(Je,1,"parse-hint svelte-1beoyzy",null,$o,{active:t(q)==="plugin"}),Nt=xt(Ae,1,"parse-hint svelte-1beoyzy",null,Nt,{active:t(q)==="llm"}),Ct.disabled=t(j),ze(Oo,t(j)?"保存中…":"保存")}),$t(ye,()=>t($e),O=>n($e,O)),$t(ro,()=>t(vt),O=>n(vt,O)),$t(no,()=>t(mt),O=>n(mt,O)),$t(Ht,()=>t(At),O=>n(At,O)),Or(Lt,()=>t(Ft),O=>n(Ft,O)),$t(Et,()=>t(yt),O=>n(yt,O)),ie("click",Ct,Gs),y(H,ue)},$$slots:{default:!0}}),y(a,w)},$$slots:{default:!0}})},$$slots:{default:!0}});var ls=v(is,2);gs(ls,{get open(){return t(Me)},onOpenChange:nr,children:(o,s)=>{po(o,{children:(a,i)=>{var w=_n(),k=N(w);ws(k,{class:"modal-overlay"});var b=v(k,2);Cs(b,{class:"modal","aria-describedby":"remove-source-desc",children:(H,me)=>{var ue=bn(),g=N(ue),S=f(g);ks(S,{class:"modal-title",children:(Q,U)=>{pe();var G=zt("移除信源");y(Q,G)},$$slots:{default:!0}});var F=v(S,2);co(F,{class:"modal-close","aria-label":"关闭",children:(Q,U)=>{pe();var G=zt("✕");y(Q,G)},$$slots:{default:!0}}),c(g);var D=v(g,2),Y=v(f(D),2);{var ke=Q=>{var U=yn(),G=f(U,!0);c(U),_e(()=>ze(G,t(m))),y(Q,U)};he(Y,Q=>{t(m)&&Q(ke)})}c(D);var ye=v(D,2),te=f(ye);{let Q=Fe(()=>!!t(re));co(te,{class:"btn-cancel",get disabled(){return t(Q)},children:(U,G)=>{pe();var de=zt("取消");y(U,de)},$$slots:{default:!0}})}var ce=v(te,2);c(ye),_e(()=>ce.disabled=!!t(re)),ie("click",ce,ir),y(H,ue)},$$slots:{default:!0}}),y(a,w)},$$slots:{default:!0}})},$$slots:{default:!0}});var us=v(ls,2);{var dr=o=>{{let s=Fe(()=>(t(ee),x(()=>{var b;return((b=t(ee))==null?void 0:b.ref)??""}))),a=Fe(()=>(t(ee),x(()=>{var b;return((b=t(ee))==null?void 0:b.displayLabel)??""}))),i=Fe(()=>(t(ee),x(()=>{var b,H;return((H=(b=t(ee))==null?void 0:b.description)==null?void 0:H.trim())??""}))),w=Fe(()=>(t(ee),x(()=>{var b,H;return((H=(b=t(ee))==null?void 0:b.proxy)==null?void 0:H.trim())??""}))),k=Fe(()=>(t(ee),x(()=>{var b;return((b=t(ee))==null?void 0:b.parseHint)??null})));Ir(o,{variant:"overlay",get open(){return t(qe)},get sourceRef(){return t(s)},get sourceLabel(){return t(a)},get sourceDescription(){return t(i)},get sourceProxy(){return t(w)},get sourceParseHint(){return t(k)},onOpenChange:b=>{n(qe,b),b||n(ee,null)}})}};he(us,o=>{p(),x(()=>p().url.pathname!=="/")&&o(dr)})}var cs=v(us,2),ds=f(cs),Co=f(ds),ps=f(Co),ko=f(ps),zo=f(ko);Pt(zo);var pr=v(zo,2);{var hr=o=>{Ss(o,{get open(){return t(go)},onOpenChange:s=>{n(go,s)},children:(s,a)=>{var i=Cn(),w=N(i);{let b=Fe(()=>(t(ve),x(()=>ts(t(ve))))),H=Fe(()=>t(J)==="asc"?" 升序":" 降序");Ts(w,{type:"button",class:"btn-sort",get title(){return`排序:${t(b)??""}${t(H)??""},点此选择依据或同项切换方向`},"aria-label":"排序",children:(me,ue)=>{rn(me,{size:16})},$$slots:{default:!0}})}var k=v(w,2);po(k,{children:(b,H)=>{$s(b,{class:"dropdown-panel sort-menu",sideOffset:6,align:"start",children:(me,ue)=>{var g=oe(),S=N(g);Fo(S,1,()=>Ys,ys,(F,D)=>{var Y=wn();let ke;var ye=f(Y),te=f(ye,!0);c(ye);var ce=v(ye,2);{var Q=U=>{var G=gn(),de=f(G,!0);c(G),_e(()=>ze(de,t(J)==="asc"?"↑":"↓")),y(U,G)};he(ce,U=>{t(ve)===t(D)&&U(Q)})}c(Y),_e(U=>{ke=xt(Y,1,"sort-menu-item svelte-1beoyzy",null,ke,{active:t(ve)===t(D)}),ze(te,U)},[()=>(t(D),x(()=>ts(t(D))))]),ie("click",Y,()=>Xs(t(D))),y(F,Y)}),y(me,g)},$$slots:{default:!0}})},$$slots:{default:!0}}),y(s,i)},$$slots:{default:!0}})};he(pr,o=>{p(),t(W),x(()=>p().url.pathname==="/"&&t(W).length>0)&&o(hr)})}c(ko);var hs=v(ko,2),Po=f(hs),fr=f(Po);Vr(fr,{size:16,"aria-hidden":"true"}),c(Po),c(hs),c(ps),c(Co);var fs=v(Co,2),vr=f(fs);{var mr=o=>{var s=kn();y(o,s)},yr=o=>{var s=zn(),a=f(s,!0);c(s),_e(()=>ze(a,t(we))),y(o,s)},br=o=>{var s=Pn(),a=v(f(s));pe(),c(s),ie("click",a,os),y(o,s)},_r=o=>{var s=xn();y(o,s)},gr=o=>{var s=An();Fo(s,5,()=>t(se),a=>a.ref,(a,i)=>{const w=Fe(()=>(Ao(Ds),t(i),x(()=>Ds(t(i).ref))));var k=Dn(),b=f(k),H=f(b),me=f(H);{var ue=te=>{var ce=Tn(),Q=f(ce);{var U=G=>{var de=$n();_e(De=>No(de,"src",De),[()=>(Ao(As),Ao(t(w)),x(()=>As(t(w))))]),$r("error",de,()=>{n(Be,{...t(Be),[t(i).ref]:!0})}),Tr(de),y(G,de)};he(Q,G=>{t(Be),t(i),x(()=>!t(Be)[t(i).ref])&&G(U)})}c(ce),y(te,ce)};he(me,te=>{t(w)&&te(ue)})}var g=v(me,2),S=f(g),F=f(S,!0);c(S);var D=v(S,2),Y=f(D,!0);c(D),c(g),c(H),c(b);var ke=v(b,2),ye=f(ke);{let te=Fe(()=>(t(E),t(i),x(()=>t(E)===t(i).ref)));Ss(ye,{get open(){return t(te)},onOpenChange:ce=>{n(E,ce?t(i).ref:null)},children:(ce,Q)=>{var U=Mn(),G=N(U);Ts(G,{class:"btn-icon",title:"更多",onclick:De=>De.stopPropagation(),children:(De,xo)=>{an(De,{size:13})},$$slots:{default:!0}});var de=v(G,2);po(de,{children:(De,xo)=>{$s(De,{class:"dropdown-panel more-menu",sideOffset:6,align:"center",onclick:Je=>Je.stopPropagation(),children:(Je,$o)=>{var oo=On(),Ae=N(oo);let Nt;var so=f(Ae);Hr(so,{size:14});var gt=v(so,2),ro=f(gt,!0);c(gt),c(Ae);var Xe=v(Ae,2),no=f(Xe);un(no,{size:14}),pe(2),c(Xe);var Ye=v(Xe,2),It=f(Ye);nn(It,{size:14}),pe(2),c(Ye);var Ht=v(Ye,2);{var ao=Qe=>{var at=Sn(),Ct=f(at);ln(Ct,{size:14}),pe(2),c(at),ie("click",at,Oo=>sr(t(i).ref,Oo)),y(Qe,at)},Lt=Se(()=>(t(i),x(()=>tr(t(i).ref))));he(Ht,Qe=>{t(Lt)&&Qe(ao)})}var Ee=v(Ht,2),Et=f(Ee);cn(Et,{size:14});var io=v(Et,2),To=f(io,!0);c(io),c(Ee);var nt=v(Ee,2),wt=f(nt);Os(wt,{size:14});var lo=v(wt,2),So=f(lo,!0);c(lo),c(nt),_e(()=>{Nt=xt(Ae,1,"more-menu-item svelte-1beoyzy",null,Nt,{pulling:t(i).ref in r()}),Ae.disabled=(t(i),r(),x(()=>t(i).ref in r())),ze(ro,(t(i),r(),x(()=>t(i).ref in r()?"拉取中…":"拉取"))),Ee.disabled=(t(Ce),t(i),x(()=>t(Ce)===t(i).ref)),ze(To,(t(Ce),t(i),x(()=>t(Ce)===t(i).ref?"清空中…":"清空该源条目"))),nt.disabled=(t(re),t(i),x(()=>t(re)===t(i).ref)),ze(So,(t(re),t(i),x(()=>t(re)===t(i).ref?"移除中…":"移除信源")))}),ie("click",Ae,Qe=>{er(t(i).ref,Qe),n(E,null)}),ie("click",Xe,()=>{Qs(t(i)),n(E,null)}),ie("click",Ye,()=>rr(t(i).ref)),ie("click",Ee,()=>lr(t(i).ref)),ie("click",nt,()=>ar(t(i).ref)),y(Je,oo)},$$slots:{default:!0}})},$$slots:{default:!0}}),y(ce,U)},$$slots:{default:!0}})}c(ke),c(k),_e(()=>{No(H,"title",(t(i),x(()=>t(i).ref))),ze(F,(t(i),x(()=>t(i).displayLabel))),No(D,"title",`已收录 ${t(i),x(()=>t(i).count)??""} 条 · 近 7 天内有拉取记录的条目 ${t(i),x(()=>t(i).weekCount)??""} 条`),ze(Y,(t(i),x(()=>t(i).count)))}),ie("click",k,te=>ur(t(i),te)),ie("keydown",k,te=>cr(t(i),te)),y(a,k)}),c(s),y(o,s)};he(vr,o=>{t(je)?o(mr):t(we)?o(yr,1):(t(W),x(()=>t(W).length===0)?o(br,2):(t(se),x(()=>t(se).length===0)?o(_r,3):o(gr,-1)))})}c(fs),c(ds),c(cs),$t(zo,()=>t(le),o=>n(le,o)),ie("click",Po,os),y(d,as),bo(),l()}xr(["click","keydown"]);export{ra as S};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{b8 as Y,M as U,p as X,X as G,h as T,v as x,b9 as rr,ba as ir,ah as fr,S as ar,m as P,bb as tr,bc as er,bd as ur,i as sr,be as or,bf as cr,bg as M,e as V,bh as lr,bi as nr,O as vr,bj as dr,bk as br}from"./vtBo8kBV.js";import{i as hr,a as gr,d as _r,c as Ar,n as Sr,b as Tr}from"./B2cyTHdf.js";function Nr(r,f){var i=void 0,a;Y(()=>{i!==(i=f())&&(a&&(U(a),a=null),i&&(a=X(()=>{G(()=>i(r))})))})}function z(r){var f,i,a="";if(typeof r=="string"||typeof r=="number")a+=r;else if(typeof r=="object")if(Array.isArray(r)){var t=r.length;for(f=0;f<t;f++)r[f]&&(i=z(r[f]))&&(a&&(a+=" "),a+=i)}else for(i in r)r[i]&&(a&&(a+=" "),a+=i);return a}function Or(){for(var r,f,i=0,a="",t=arguments.length;i<t;i++)(r=arguments[i])&&(f=z(r))&&(a&&(a+=" "),a+=f);return a}function pr(r){return typeof r=="object"?Or(r):r??""}const B=[...`
|
|
2
|
-
\r\f \v\uFEFF`];function Er(r,f,i){var a=r==null?"":""+r;if(f&&(a=a?a+" "+f:f),i){for(var t of Object.keys(i))if(i[t])a=a?a+" "+t:t;else if(a.length)for(var e=t.length,u=0;(u=a.indexOf(t,u))>=0;){var o=u+e;(u===0||B.includes(a[u-1]))&&(o===a.length||B.includes(a[o]))?a=(u===0?"":a.substring(0,u))+a.substring(o+1):u=o}}return a===""?null:a}function D(r,f=!1){var i=f?" !important;":";",a="";for(var t of Object.keys(r)){var e=r[t];e!=null&&e!==""&&(a+=" "+t+": "+e+i)}return a}function w(r){return r[0]!=="-"||r[1]!=="-"?r.toLowerCase():r}function Ir(r,f){if(f){var i="",a,t;if(Array.isArray(f)?(a=f[0],t=f[1]):a=f,r){r=String(r).replaceAll(/\s*\/\*.*?\*\/\s*/g,"").trim();var e=!1,u=0,o=!1,n=[];a&&n.push(...Object.keys(a).map(w)),t&&n.push(...Object.keys(t).map(w));var v=0,g=-1;const O=r.length;for(var d=0;d<O;d++){var s=r[d];if(o?s==="/"&&r[d-1]==="*"&&(o=!1):e?e===s&&(e=!1):s==="/"&&r[d+1]==="*"?o=!0:s==='"'||s==="'"?e=s:s==="("?u++:s===")"&&u--,!o&&e===!1&&u===0){if(s===":"&&g===-1)g=d;else if(s===";"||d===O-1){if(g!==-1){var N=w(r.substring(v,g).trim());if(!n.includes(N)){s!==";"&&d++;var S=r.substring(v,d).trim();i+=" "+S+";"}}v=d+1,g=-1}}}}return a&&(i+=D(a)),t&&(i+=D(t,!0)),i=i.trim(),i===""?null:i}return r==null?null:String(r)}function Lr(r,f,i,a,t,e){var u=r.__className;if(T||u!==i||u===void 0){var o=Er(i,a,e);(!T||o!==r.getAttribute("class"))&&(o==null?r.removeAttribute("class"):f?r.className=o:r.setAttribute("class",o)),r.__className=i}else if(e&&t!==e)for(var n in e){var v=!!e[n];(t==null||v!==!!t[n])&&r.classList.toggle(n,v)}return e}function j(r,f={},i,a){for(var t in i){var e=i[t];f[t]!==e&&(i[t]==null?r.style.removeProperty(t):r.style.setProperty(t,e,a))}}function kr(r,f,i,a){var t=r.__style;if(T||t!==f){var e=Ir(f,a);(!T||e!==r.getAttribute("style"))&&(e==null?r.removeAttribute("style"):r.style.cssText=e),r.__style=f}else a&&(Array.isArray(a)?(j(r,i==null?void 0:i[0],a[0]),j(r,i==null?void 0:i[1],a[1],"important")):j(r,i,a));return a}function y(r,f,i=!1){if(r.multiple){if(f==null)return;if(!x(f))return rr();for(var a of r.options)a.selected=f.includes(k(a));return}for(a of r.options){var t=k(a);if(ir(t,f)){a.selected=!0;return}}(!i||f!==void 0)&&(r.selectedIndex=-1)}function F(r){var f=new MutationObserver(()=>{y(r,r.__value)});f.observe(r,{childList:!0,subtree:!0,attributes:!0,attributeFilter:["value"]}),fr(()=>{f.disconnect()})}function Rr(r,f,i=f){var a=new WeakSet,t=!0;ar(r,"change",e=>{var u=e?"[selected]":":checked",o;if(r.multiple)o=[].map.call(r.querySelectorAll(u),k);else{var n=r.querySelector(u)??r.querySelector("option:not([disabled])");o=n&&k(n)}i(o),P!==null&&a.add(P)}),G(()=>{var e=f();if(r===document.activeElement){var u=P;if(a.has(u))return}if(y(r,e,t),t&&e===void 0){var o=r.querySelector(":checked");o!==null&&(e=k(o),i(e))}r.__value=e,t=!1}),F(r)}function k(r){return"__value"in r?r.__value:r.value}const I=Symbol("class"),L=Symbol("style"),W=Symbol("is custom element"),Z=Symbol("is html"),yr=M?"link":"LINK",Cr=M?"input":"INPUT",Mr=M?"option":"OPTION",Pr=M?"select":"SELECT";function wr(r){if(T){var f=!1,i=()=>{if(!f){if(f=!0,r.hasAttribute("value")){var a=r.value;C(r,"value",null),r.value=a}if(r.hasAttribute("checked")){var t=r.checked;C(r,"checked",null),r.checked=t}}};r.__on_r=i,vr(i),dr()}}function Hr(r,f){var i=q(r);i.checked!==(i.checked=f??void 0)&&(r.checked=f)}function jr(r,f){f?r.hasAttribute("selected")||r.setAttribute("selected",""):r.removeAttribute("selected")}function C(r,f,i,a){var t=q(r);T&&(t[f]=r.getAttribute(f),f==="src"||f==="srcset"||f==="href"&&r.nodeName===yr)||t[f]!==(t[f]=i)&&(f==="loading"&&(r[br]=i),i==null?r.removeAttribute(f):typeof i!="string"&&J(r).includes(f)?r[f]=i:r.setAttribute(f,i))}function Ur(r,f,i,a,t=!1,e=!1){if(T&&t&&r.nodeName===Cr){var u=r,o=u.type==="checkbox"?"defaultChecked":"defaultValue";o in i||wr(u)}var n=q(r),v=n[W],g=!n[Z];let d=T&&v;d&&V(!1);var s=f||{},N=r.nodeName===Mr;for(var S in f)S in i||(i[S]=null);i.class?i.class=pr(i.class):i[I]&&(i.class=null),i[L]&&(i.style??(i.style=null));var O=J(r);for(const c in i){let l=i[c];if(N&&c==="value"&&l==null){r.value=r.__value="",s[c]=l;continue}if(c==="class"){var E=r.namespaceURI==="http://www.w3.org/1999/xhtml";Lr(r,E,l,a,f==null?void 0:f[I],i[I]),s[c]=l,s[I]=i[I];continue}if(c==="style"){kr(r,l,f==null?void 0:f[L],i[L]),s[c]=l,s[L]=i[L];continue}var _=s[c];if(!(l===_&&!(l===void 0&&r.hasAttribute(c)))){s[c]=l;var R=c[0]+c[1];if(R!=="$$")if(R==="on"){const A={},p="$$"+c;let h=c.slice(2);var H=Tr(h);if(hr(h)&&(h=h.slice(0,-7),A.capture=!0),!H&&_){if(l!=null)continue;r.removeEventListener(h,s[p],A),s[p]=null}if(H)gr(h,r,l),_r([h]);else if(l!=null){let Q=function(m){s[c].call(this,m)};s[p]=Ar(h,r,Q,A)}}else if(c==="style")C(r,c,l);else if(c==="autofocus")lr(r,!!l);else if(!v&&(c==="__value"||c==="value"&&l!=null))r.value=r.__value=l;else if(c==="selected"&&N)jr(r,l);else{var b=c;g||(b=Sr(b));var $=b==="defaultValue"||b==="defaultChecked";if(l==null&&!v&&!$)if(n[c]=null,b==="value"||b==="checked"){let A=r;const p=f===void 0;if(b==="value"){let h=A.defaultValue;A.removeAttribute(b),A.defaultValue=h,A.value=A.__value=p?h:null}else{let h=A.defaultChecked;A.removeAttribute(b),A.defaultChecked=h,A.checked=p?h:!1}}else r.removeAttribute(c);else $||O.includes(b)&&(v||typeof l!="string")?(r[b]=l,b in n&&(n[b]=nr)):typeof l!="function"&&C(r,b,l)}}}return d&&V(!0),s}function $r(r,f,i=[],a=[],t=[],e,u=!1,o=!1){tr(t,i,a,n=>{var v=void 0,g={},d=r.nodeName===Pr,s=!1;if(Y(()=>{var S=f(...n.map(sr)),O=Ur(r,v,S,e,u,o);s&&d&&"value"in S&&y(r,S.value);for(let _ of Object.getOwnPropertySymbols(g))S[_]||U(g[_]);for(let _ of Object.getOwnPropertySymbols(S)){var E=S[_];_.description===or&&(!v||E!==v[_])&&(g[_]&&U(g[_]),g[_]=X(()=>Nr(r,()=>E))),O[_]=E}v=O}),d){var N=r;G(()=>{y(N,v.value,!0),F(N)})}s=!0})}function q(r){return r.__attributes??(r.__attributes={[W]:r.nodeName.includes("-"),[Z]:r.namespaceURI===er})}var K=new Map;function J(r){var f=r.getAttribute("is")||r.nodeName,i=K.get(f);if(i)return i;K.set(f,i=[]);for(var a,t=r,e=Element.prototype;e!==t;){a=cr(t);for(var u in a)a[u].set&&i.push(u);t=ur(t)}return i}const Vr="rssany",Br="https://github.com/joohw/rssany";export{Br as G,Vr as P,Lr as a,Hr as b,kr as c,$r as d,Rr as e,Or as f,wr as r,C as s};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as _,a as s,f as g}from"./CS53ooo0.js";import"./BA4Gucnq.js";import{at as d,aC as b,aD as h,f as v,au as $,a5 as k,i as n,z as y,az as B}from"./vtBo8kBV.js";import{s as z,a as j}from"./B6WG2Sd3.js";import{i as x}from"./BkD3yAYe.js";import{s as C}from"./DoRPmqLn.js";import{i as D}from"./DVa8Y-mQ.js";import{p as H}from"./CqYSO3Dx.js";var P=g('<a class="back-to-parent admin-toolbar-btn admin-toolbar-btn--secondary svelte-1md38m6" data-sveltekit-preload-data="hover" aria-label="返回上一层">返回</a>');function I(i,p){d(p,!1);const r=()=>j(H,"$page",f),[f,l]=z(),e=y();function m(t){const a=t.split("/").filter(Boolean);return a.length===0?null:a.length===1?a[0]==="admin"?null:a[0]==="plugins"||a[0]==="logs"?"/":null:(a.pop(),"/"+a.join("/"))}b(()=>r(),()=>{k(e,m(r().url.pathname))}),h(),D();var o=_(),c=v(o);{var u=t=>{var a=P();B(()=>C(a,"href",n(e))),s(t,a)};x(c,t=>{n(e)&&t(u)})}s(i,o),$(),l()}export{I as B};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
var wt=Object.defineProperty;var Sn=e=>{throw TypeError(e)};var yt=(e,n,t)=>n in e?wt(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;var ae=(e,n,t)=>yt(e,typeof n!="symbol"?n+"":n,t),Ze=(e,n,t)=>n.has(e)||Sn("Cannot "+t);var _=(e,n,t)=>(Ze(e,n,"read from private field"),t?t.call(e):n.get(e)),D=(e,n,t)=>n.has(e)?Sn("Cannot add the same private member more than once"):n instanceof WeakSet?n.add(e):n.set(e,t),K=(e,n,t,r)=>(Ze(e,n,"write to private field"),r?r.call(e,t):n.set(e,t),t),q=(e,n,t)=>(Ze(e,n,"access private method"),t);var Et=Array.isArray,mt=Array.prototype.indexOf,Se=Array.prototype.includes,hr=Array.from,wr=Object.defineProperty,Ie=Object.getOwnPropertyDescriptor,gt=Object.getOwnPropertyDescriptors,bt=Object.prototype,Tt=Array.prototype,Ln=Object.getPrototypeOf,xn=Object.isExtensible;function yr(e){return typeof e=="function"}const At=()=>{};function Er(e){return e()}function St(e){for(var n=0;n<e.length;n++)e[n]()}function jn(){var e,n,t=new Promise((r,s)=>{e=r,n=s});return{promise:t,resolve:e,reject:n}}function mr(e,n){if(Array.isArray(e))return e;if(!(Symbol.iterator in e))return Array.from(e);const t=[];for(const r of e)if(t.push(r),t.length===n)break;return t}const T=2,_e=4,Le=8,cn=1<<24,se=16,G=32,Q=64,xt=128,M=512,m=1024,R=2048,H=4096,V=8192,B=16384,we=32768,Rn=1<<25,qe=65536,Nn=1<<17,Rt=1<<18,Re=1<<19,Yn=1<<20,gr=1<<25,ve=65536,Qe=1<<21,_n=1<<22,W=1<<23,ue=Symbol("$state"),br=Symbol("legacy props"),Tr=Symbol(""),$=new class extends Error{constructor(){super(...arguments);ae(this,"name","StaleReactionError");ae(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};var Fn;const Sr=!!((Fn=globalThis.document)!=null&&Fn.contentType)&&globalThis.document.contentType.includes("xml"),xr=1,$e=3,Hn=8;function Nt(e){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function Ot(){throw new Error("https://svelte.dev/e/async_derived_orphan")}function Rr(e,n,t){throw new Error("https://svelte.dev/e/each_key_duplicate")}function kt(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Ct(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Dt(e){throw new Error("https://svelte.dev/e/effect_orphan")}function It(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function Nr(){throw new Error("https://svelte.dev/e/hydration_failed")}function Or(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function Pt(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function Mt(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Ft(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}function kr(){throw new Error("https://svelte.dev/e/svelte_boundary_reset_onerror")}const Cr=1,Dr=2,Ir=4,Pr=8,Mr=16,Fr=1,Lr=2,jr=4,Yr=8,Hr=16,qr=1,Ur=2,Lt="[",jt="[!",Vr="[?",Yt="]",vn={},A=Symbol(),Ht="http://www.w3.org/1999/xhtml",Br="http://www.w3.org/2000/svg",Gr="@attach";function dn(e){console.warn("https://svelte.dev/e/hydration_mismatch")}function Kr(){console.warn("https://svelte.dev/e/select_multiple_invalid_value")}function $r(){console.warn("https://svelte.dev/e/svelte_boundary_reset_noop")}let de=!1;function zr(e){de=e}let b;function xe(e){if(e===null)throw dn(),vn;return b=e}function Xr(){return xe(fe(b))}function Zr(e){if(de){if(fe(b)!==null)throw dn(),vn;b=e}}function Wr(e=1){if(de){for(var n=e,t=b;n--;)t=fe(t);b=t}}function Jr(e=!0){for(var n=0,t=b;;){if(t.nodeType===Hn){var r=t.data;if(r===Yt){if(n===0)return t;n-=1}else(r===Lt||r===jt||r[0]==="["&&!isNaN(Number(r.slice(1))))&&(n+=1)}var s=fe(t);e&&t.remove(),t=s}}function Qr(e){if(!e||e.nodeType!==Hn)throw dn(),vn;return e.data}function qn(e){return e===this.v}function qt(e,n){return e!=e?n==n:e!==n||e!==null&&typeof e=="object"||typeof e=="function"}function Un(e){return!qt(e,this.v)}let ze=!1;function es(){ze=!0}let y=null;function Ue(e){y=e}function ns(e){return Xe().get(e)}function ts(e,n){return Xe().set(e,n),n}function rs(e){return Xe().has(e)}function ss(){return Xe()}function fs(e,n=!1,t){y={p:y,i:!1,c:null,e:null,s:e,x:null,r:w,l:ze&&!n?{s:null,u:null,$:[]}:null}}function as(e){var n=y,t=n.e;if(t!==null){n.e=null;for(var r of t)st(r)}return n.i=!0,y=n.p,{}}function je(){return!ze||y!==null&&y.l===null}function Xe(e){return y===null&&Nt(),y.c??(y.c=new Map(Ut(y)||void 0))}function Ut(e){let n=e.p;for(;n!==null;){const t=n.c;if(t!==null)return t;n=n.p}return null}let ie=[];function Vn(){var e=ie;ie=[],St(e)}function en(e){if(ie.length===0&&!Pe){var n=ie;queueMicrotask(()=>{n===ie&&Vn()})}ie.push(e)}function Vt(){for(;ie.length>0;)Vn()}function Bt(e){var n=w;if(n===null)return d.f|=W,e;if((n.f&we)===0&&(n.f&_e)===0)throw e;Ve(e,n)}function Ve(e,n){for(;n!==null;){if((n.f&xt)!==0){if((n.f&we)===0)throw e;try{n.b.error(e);return}catch(t){e=t}}n=n.parent}throw e}const Gt=-7169;function E(e,n){e.f=e.f&Gt|n}function pn(e){(e.f&M)!==0||e.deps===null?E(e,m):E(e,H)}function Bn(e){if(e!==null)for(const n of e)(n.f&T)===0||(n.f&ve)===0||(n.f^=ve,Bn(n.deps))}function Kt(e,n,t){(e.f&R)!==0?n.add(e):(e.f&H)!==0&&t.add(e),Bn(e.deps),E(e,m)}const Ce=new Set;let p=null,S=null,nn=null,Pe=!1,We=!1,ye=null,Ye=null;var On=0;let $t=1;var Ee,me,ge,be,Fe,P,Te,Z,U,Ae,x,tn,rn,sn,fn,Gn;const Ke=class Ke{constructor(){D(this,x);ae(this,"id",$t++);ae(this,"current",new Map);ae(this,"previous",new Map);D(this,Ee,new Set);D(this,me,new Set);D(this,ge,0);D(this,be,0);D(this,Fe,null);D(this,P,[]);D(this,Te,new Set);D(this,Z,new Set);D(this,U,new Map);ae(this,"is_fork",!1);D(this,Ae,!1)}skip_effect(n){_(this,U).has(n)||_(this,U).set(n,{d:[],m:[]})}unskip_effect(n){var t=_(this,U).get(n);if(t){_(this,U).delete(n);for(var r of t.d)E(r,R),this.schedule(r);for(r of t.m)E(r,H),this.schedule(r)}}capture(n,t){t!==A&&!this.previous.has(n)&&this.previous.set(n,t),(n.f&W)===0&&(this.current.set(n,n.v),S==null||S.set(n,n.v))}activate(){p=this}deactivate(){p=null,S=null}flush(){try{if(We=!0,p=this,!q(this,x,tn).call(this)){for(const n of _(this,Te))_(this,Z).delete(n),E(n,R),this.schedule(n);for(const n of _(this,Z))E(n,H),this.schedule(n)}q(this,x,rn).call(this)}finally{On=0,nn=null,ye=null,Ye=null,We=!1,p=null,S=null,J.clear()}}discard(){for(const n of _(this,me))n(this);_(this,me).clear()}increment(n){K(this,ge,_(this,ge)+1),n&&K(this,be,_(this,be)+1)}decrement(n,t){K(this,ge,_(this,ge)-1),n&&K(this,be,_(this,be)-1),!(_(this,Ae)||t)&&(K(this,Ae,!0),en(()=>{K(this,Ae,!1),this.flush()}))}oncommit(n){_(this,Ee).add(n)}ondiscard(n){_(this,me).add(n)}settled(){return(_(this,Fe)??K(this,Fe,jn())).promise}static ensure(){if(p===null){const n=p=new Ke;We||(Ce.add(p),Pe||en(()=>{p===n&&n.flush()}))}return p}apply(){}schedule(n){var s;if(nn=n,(s=n.b)!=null&&s.is_pending&&(n.f&(_e|Le|cn))!==0&&(n.f&we)===0){n.b.defer_effect(n);return}for(var t=n;t.parent!==null;){t=t.parent;var r=t.f;if(ye!==null&&t===w&&(d===null||(d.f&T)===0))return;if((r&(Q|G))!==0){if((r&m)===0)return;t.f^=m}}_(this,P).push(t)}};Ee=new WeakMap,me=new WeakMap,ge=new WeakMap,be=new WeakMap,Fe=new WeakMap,P=new WeakMap,Te=new WeakMap,Z=new WeakMap,U=new WeakMap,Ae=new WeakMap,x=new WeakSet,tn=function(){return this.is_fork||_(this,be)>0},rn=function(){var l,a;On++>1e3&&Xt();const n=_(this,P);K(this,P,[]),this.apply();var t=ye=[],r=[],s=Ye=[];for(const i of n)q(this,x,sn).call(this,i,t,r);if(p=null,s.length>0){var f=Ke.ensure();for(const i of s)f.schedule(i)}if(ye=null,Ye=null,q(this,x,tn).call(this)){q(this,x,fn).call(this,r),q(this,x,fn).call(this,t);for(const[i,u]of _(this,U))zn(i,u)}else{_(this,Te).clear(),_(this,Z).clear();for(const i of _(this,Ee))i(this);_(this,Ee).clear(),kn(r),kn(t),_(this,ge)===0&&q(this,x,Gn).call(this),(l=_(this,Fe))==null||l.resolve()}var o=p;if(_(this,P).length>0){const i=o??(o=this);_(i,P).push(..._(this,P).filter(u=>!_(i,P).includes(u)))}o!==null&&(Ce.add(o),q(a=o,x,rn).call(a))},sn=function(n,t,r){n.f^=m;for(var s=n.first;s!==null;){var f=s.f,o=(f&(G|Q))!==0,l=o&&(f&m)!==0,a=l||(f&V)!==0||_(this,U).has(s);if(!a&&s.fn!==null){o?s.f^=m:(f&_e)!==0?t.push(s):Ne(s)&&((f&se)!==0&&_(this,Z).add(s),he(s));var i=s.first;if(i!==null){s=i;continue}}for(;s!==null;){var u=s.next;if(u!==null){s=u;break}s=s.parent}}},fn=function(n){for(var t=0;t<n.length;t+=1)Kt(n[t],_(this,Te),_(this,Z))},Gn=function(){var s;if(Ce.size>1){this.previous.clear();var n=p,t=S,r=!0;for(const f of Ce){if(f===this){r=!1;continue}const o=[];for(const[a,i]of this.current){if(f.current.has(a))if(r&&i!==f.current.get(a))f.current.set(a,i);else continue;o.push(a)}if(o.length===0)continue;const l=[...f.current.keys()].filter(a=>!this.current.has(a));if(l.length>0){f.activate();const a=new Set,i=new Map;for(const u of o)Kn(u,l,a,i);if(_(f,P).length>0){f.apply();for(const u of _(f,P))q(s=f,x,sn).call(s,u,[],[])}f.deactivate()}}p=n,S=t}_(this,U).clear(),Ce.delete(this)};let ee=Ke;function zt(e){var n=Pe;Pe=!0;try{for(var t;;){if(Vt(),p===null)return t;p.flush()}}finally{Pe=n}}function Xt(){try{It()}catch(e){Ve(e,nn)}}let j=null;function kn(e){var n=e.length;if(n!==0){for(var t=0;t<n;){var r=e[t++];if((r.f&(B|V))===0&&Ne(r)&&(j=new Set,he(r),r.deps===null&&r.first===null&&r.nodes===null&&r.teardown===null&&r.ac===null&&it(r),(j==null?void 0:j.size)>0)){J.clear();for(const s of j){if((s.f&(B|V))!==0)continue;const f=[s];let o=s.parent;for(;o!==null;)j.has(o)&&(j.delete(o),f.push(o)),o=o.parent;for(let l=f.length-1;l>=0;l--){const a=f[l];(a.f&(B|V))===0&&he(a)}}j.clear()}}j=null}}function Kn(e,n,t,r){if(!t.has(e)&&(t.add(e),e.reactions!==null))for(const s of e.reactions){const f=s.f;(f&T)!==0?Kn(s,n,t,r):(f&(_n|se))!==0&&(f&R)===0&&$n(s,n,r)&&(E(s,R),hn(s))}}function $n(e,n,t){const r=t.get(e);if(r!==void 0)return r;if(e.deps!==null)for(const s of e.deps){if(Se.call(n,s))return!0;if((s.f&T)!==0&&$n(s,n,t))return t.set(s,!0),!0}return t.set(e,!1),!1}function hn(e){p.schedule(e)}function zn(e,n){if(!((e.f&G)!==0&&(e.f&m)!==0)){(e.f&R)!==0?n.d.push(e):(e.f&H)!==0&&n.m.push(e),E(e,m);for(var t=e.first;t!==null;)zn(t,n),t=t.next}}function Xn(e,n,t,r){const s=je()?yn:Jt;var f=e.filter(c=>!c.settled);if(t.length===0&&f.length===0){r(n.map(s));return}var o=w,l=Zt(),a=f.length===1?f[0].promise:f.length>1?Promise.all(f.map(c=>c.promise)):null;function i(c){l();try{r(c)}catch(g){(o.f&B)===0&&Ve(g,o)}Be()}if(t.length===0){a.then(()=>i(n.map(s)));return}var u=wn();function v(){Promise.all(t.map(c=>Wt(c))).then(c=>i([...n.map(s),...c])).catch(c=>Ve(c,o)).finally(()=>u())}a?a.then(()=>{l(),v(),Be()}):v()}function Zt(){var e=w,n=d,t=y,r=p;return function(f=!0){re(e),te(n),Ue(t),f&&(e.f&B)===0&&(r==null||r.activate(),r==null||r.apply())}}function Be(e=!0){re(null),te(null),Ue(null),e&&(p==null||p.deactivate())}function wn(){var e=w.b,n=p,t=e.is_rendered();return e.update_pending_count(1,n),n.increment(t),(r=!1)=>{e.update_pending_count(-1,n),n.decrement(t,r)}}function yn(e){var n=T|R,t=d!==null&&(d.f&T)!==0?d:null;return w!==null&&(w.f|=Re),{ctx:y,deps:null,effects:null,equals:qn,f:n,fn:e,reactions:null,rv:0,v:A,wv:0,parent:t??w,ac:null}}function Wt(e,n,t){let r=w;r===null&&Ot();var s=void 0,f=mn(A),o=!d,l=new Map;return lr(()=>{var g;var a=w,i=jn();s=i.promise;try{Promise.resolve(e()).then(i.resolve,i.reject).finally(Be)}catch(h){i.reject(h),Be()}var u=p;if(o){if((a.f&we)!==0)var v=wn();if(r.b.is_rendered())(g=l.get(u))==null||g.reject($),l.delete(u);else{for(const h of l.values())h.reject($);l.clear()}l.set(u,i)}const c=(h,L=void 0)=>{if(v){var N=L===$;v(N)}if(!(L===$||(a.f&B)!==0)){if(u.activate(),L)f.f|=W,ln(f,L);else{(f.f&W)!==0&&(f.f^=W),ln(f,h);for(const[Oe,ke]of l){if(l.delete(Oe),Oe===u)break;ke.reject($)}}u.deactivate()}};i.promise.then(c,h=>c(null,h||"unknown"))}),ir(()=>{for(const a of l.values())a.reject($)}),new Promise(a=>{function i(u){function v(){u===s?a(f):i(s)}u.then(v,v)}i(s)})}function is(e){const n=yn(e);return ut(n),n}function Jt(e){const n=yn(e);return n.equals=Un,n}function Qt(e){var n=e.effects;if(n!==null){e.effects=null;for(var t=0;t<n.length;t+=1)ne(n[t])}}function er(e){for(var n=e.parent;n!==null;){if((n.f&T)===0)return(n.f&B)===0?n:null;n=n.parent}return null}function En(e){var n,t=w;re(er(e));try{e.f&=~ve,Qt(e),n=dt(e)}finally{re(t)}return n}function Zn(e){var n=En(e);if(!e.equals(n)&&(e.wv=_t(),(!(p!=null&&p.is_fork)||e.deps===null)&&(e.v=n,e.deps===null))){E(e,m);return}pe||(S!==null?(rt()||p!=null&&p.is_fork)&&S.set(e,n):pn(e))}function nr(e){var n,t;if(e.effects!==null)for(const r of e.effects)(r.teardown||r.ac)&&((n=r.teardown)==null||n.call(r),(t=r.ac)==null||t.abort($),r.teardown=At,r.ac=null,Me(r,0),Tn(r))}function Wn(e){if(e.effects!==null)for(const n of e.effects)n.teardown&&he(n)}let an=new Set;const J=new Map;let Jn=!1;function mn(e,n){var t={f:0,v:e,reactions:null,equals:qn,rv:0,wv:0};return t}function z(e,n){const t=mn(e);return ut(t),t}function ls(e,n=!1,t=!0){var s;const r=mn(e);return n||(r.equals=Un),ze&&t&&y!==null&&y.l!==null&&((s=y.l).s??(s.s=[])).push(r),r}function X(e,n,t=!1){d!==null&&(!Y||(d.f&Nn)!==0)&&je()&&(d.f&(T|se|_n|Nn))!==0&&(F===null||!Se.call(F,e))&&Ft();let r=t?De(n):n;return ln(e,r,Ye)}function ln(e,n,t=null){if(!e.equals(n)){var r=e.v;pe?J.set(e,n):J.set(e,r),e.v=n;var s=ee.ensure();if(s.capture(e,r),(e.f&T)!==0){const f=e;(e.f&R)!==0&&En(f),pn(f)}e.wv=_t(),Qn(e,R,t),je()&&w!==null&&(w.f&m)!==0&&(w.f&(G|Q))===0&&(I===null?_r([e]):I.push(e)),!s.is_fork&&an.size>0&&!Jn&&tr()}return n}function tr(){Jn=!1;for(const e of an)(e.f&m)!==0&&E(e,H),Ne(e)&&he(e);an.clear()}function os(e,n=1){var t=oe(e),r=n===1?t++:t--;return X(e,t),r}function Je(e){X(e,e.v+1)}function Qn(e,n,t){var r=e.reactions;if(r!==null)for(var s=je(),f=r.length,o=0;o<f;o++){var l=r[o],a=l.f;if(!(!s&&l===w)){var i=(a&R)===0;if(i&&E(l,n),(a&T)!==0){var u=l;S==null||S.delete(u),(a&ve)===0&&(a&M&&(l.f|=ve),Qn(u,H,t))}else if(i){var v=l;(a&se)!==0&&j!==null&&j.add(v),t!==null?t.push(v):hn(v)}}}}function De(e){if(typeof e!="object"||e===null||ue in e)return e;const n=Ln(e);if(n!==bt&&n!==Tt)return e;var t=new Map,r=Et(e),s=z(0),f=ce,o=l=>{if(ce===f)return l();var a=d,i=ce;te(null),Mn(f);var u=l();return te(a),Mn(i),u};return r&&t.set("length",z(e.length)),new Proxy(e,{defineProperty(l,a,i){(!("value"in i)||i.configurable===!1||i.enumerable===!1||i.writable===!1)&&Pt();var u=t.get(a);return u===void 0?o(()=>{var v=z(i.value);return t.set(a,v),v}):X(u,i.value,!0),!0},deleteProperty(l,a){var i=t.get(a);if(i===void 0){if(a in l){const u=o(()=>z(A));t.set(a,u),Je(s)}}else X(i,A),Je(s);return!0},get(l,a,i){var g;if(a===ue)return e;var u=t.get(a),v=a in l;if(u===void 0&&(!v||(g=Ie(l,a))!=null&&g.writable)&&(u=o(()=>{var h=De(v?l[a]:A),L=z(h);return L}),t.set(a,u)),u!==void 0){var c=oe(u);return c===A?void 0:c}return Reflect.get(l,a,i)},getOwnPropertyDescriptor(l,a){var i=Reflect.getOwnPropertyDescriptor(l,a);if(i&&"value"in i){var u=t.get(a);u&&(i.value=oe(u))}else if(i===void 0){var v=t.get(a),c=v==null?void 0:v.v;if(v!==void 0&&c!==A)return{enumerable:!0,configurable:!0,value:c,writable:!0}}return i},has(l,a){var c;if(a===ue)return!0;var i=t.get(a),u=i!==void 0&&i.v!==A||Reflect.has(l,a);if(i!==void 0||w!==null&&(!u||(c=Ie(l,a))!=null&&c.writable)){i===void 0&&(i=o(()=>{var g=u?De(l[a]):A,h=z(g);return h}),t.set(a,i));var v=oe(i);if(v===A)return!1}return u},set(l,a,i,u){var An;var v=t.get(a),c=a in l;if(r&&a==="length")for(var g=i;g<v.v;g+=1){var h=t.get(g+"");h!==void 0?X(h,A):g in l&&(h=o(()=>z(A)),t.set(g+"",h))}if(v===void 0)(!c||(An=Ie(l,a))!=null&&An.writable)&&(v=o(()=>z(void 0)),X(v,De(i)),t.set(a,v));else{c=v.v!==A;var L=o(()=>De(i));X(v,L)}var N=Reflect.getOwnPropertyDescriptor(l,a);if(N!=null&&N.set&&N.set.call(u,i),!c){if(r&&typeof a=="string"){var Oe=t.get("length"),ke=Number(a);Number.isInteger(ke)&&ke>=Oe.v&&X(Oe,ke+1)}Je(s)}return!0},ownKeys(l){oe(s);var a=Reflect.ownKeys(l).filter(v=>{var c=t.get(v);return c===void 0||c.v!==A});for(var[i,u]of t)u.v!==A&&!(i in l)&&a.push(i);return a},setPrototypeOf(){Mt()}})}function Cn(e){try{if(e!==null&&typeof e=="object"&&ue in e)return e[ue]}catch{}return e}function us(e,n){return Object.is(Cn(e),Cn(n))}var Dn,rr,sr,et,nt;function cs(){if(Dn===void 0){Dn=window,rr=document,sr=/Firefox/.test(navigator.userAgent);var e=Element.prototype,n=Node.prototype,t=Text.prototype;et=Ie(n,"firstChild").get,nt=Ie(n,"nextSibling").get,xn(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),xn(t)&&(t.__t=void 0)}}function Ge(e=""){return document.createTextNode(e)}function on(e){return et.call(e)}function fe(e){return nt.call(e)}function _s(e,n){if(!de)return on(e);var t=on(b);if(t===null)t=b.appendChild(Ge());else if(n&&t.nodeType!==$e){var r=Ge();return t==null||t.before(r),xe(r),r}return n&&gn(t),xe(t),t}function vs(e,n=!1){if(!de){var t=on(e);return t instanceof Comment&&t.data===""?fe(t):t}if(n){if((b==null?void 0:b.nodeType)!==$e){var r=Ge();return b==null||b.before(r),xe(r),r}gn(b)}return b}function ds(e,n=1,t=!1){let r=de?b:e;for(var s;n--;)s=r,r=fe(r);if(!de)return r;if(t){if((r==null?void 0:r.nodeType)!==$e){var f=Ge();return r===null?s==null||s.after(f):r.before(f),xe(f),f}gn(r)}return xe(r),r}function ps(e){e.textContent=""}function hs(){return!1}function ws(e,n,t){return document.createElementNS(n??Ht,e,void 0)}function gn(e){if(e.nodeValue.length<65536)return;let n=e.nextSibling;for(;n!==null&&n.nodeType===$e;)n.remove(),e.nodeValue+=n.nodeValue,n=e.nextSibling}function ys(e,n){if(n){const t=document.body;e.autofocus=!0,en(()=>{document.activeElement===t&&e.focus()})}}let In=!1;function fr(){In||(In=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var n;if(!e.defaultPrevented)for(const t of e.target.elements)(n=t.__on_r)==null||n.call(t)})},{capture:!0}))}function bn(e){var n=d,t=w;te(null),re(null);try{return e()}finally{te(n),re(t)}}function Es(e,n,t,r=t){e.addEventListener(n,()=>bn(t));const s=e.__on_r;s?e.__on_r=()=>{s(),r(!0)}:e.__on_r=()=>r(!0),fr()}function tt(e){w===null&&(d===null&&Dt(),Ct()),pe&&kt()}function ar(e,n){var t=n.last;t===null?n.last=n.first=e:(t.next=e,e.prev=t,n.last=e)}function C(e,n){var t=w;t!==null&&(t.f&V)!==0&&(e|=V);var r={ctx:y,deps:null,nodes:null,f:e|R|M,first:null,fn:n,last:null,next:null,parent:t,b:t&&t.b,prev:null,teardown:null,wv:0,ac:null},s=r;if((e&_e)!==0)ye!==null?ye.push(r):ee.ensure().schedule(r);else if(n!==null){try{he(r)}catch(o){throw ne(r),o}s.deps===null&&s.teardown===null&&s.nodes===null&&s.first===s.last&&(s.f&Re)===0&&(s=s.first,(e&se)!==0&&(e&qe)!==0&&s!==null&&(s.f|=qe))}if(s!==null&&(s.parent=t,t!==null&&ar(s,t),d!==null&&(d.f&T)!==0&&(e&Q)===0)){var f=d;(f.effects??(f.effects=[])).push(s)}return r}function rt(){return d!==null&&!Y}function ir(e){const n=C(Le,null);return E(n,m),n.teardown=e,n}function ms(e){tt();var n=w.f,t=!d&&(n&G)!==0&&(n&we)===0;if(t){var r=y;(r.e??(r.e=[])).push(e)}else return st(e)}function st(e){return C(_e|Yn,e)}function gs(e){return tt(),C(Le|Yn,e)}function bs(e){ee.ensure();const n=C(Q|Re,e);return()=>{ne(n)}}function Ts(e){ee.ensure();const n=C(Q|Re,e);return(t={})=>new Promise(r=>{t.outro?cr(n,()=>{ne(n),r(void 0)}):(ne(n),r(void 0))})}function As(e){return C(_e,e)}function Ss(e,n){var t=y,r={effect:null,ran:!1,deps:e};t.l.$.push(r),r.effect=ft(()=>{if(e(),!r.ran){r.ran=!0;var s=w;try{re(s.parent),dr(n)}finally{re(s)}}})}function xs(){var e=y;ft(()=>{for(var n of e.l.$){n.deps();var t=n.effect;(t.f&m)!==0&&t.deps!==null&&E(t,H),Ne(t)&&he(t),n.ran=!1}})}function lr(e){return C(_n|Re,e)}function ft(e,n=0){return C(Le|n,e)}function Rs(e,n=[],t=[],r=[]){Xn(r,n,t,s=>{C(Le,()=>e(...s.map(oe)))})}function Ns(e,n=[],t=[],r=[]){if(t.length>0||r.length>0)var s=wn();Xn(r,n,t,f=>{C(_e,()=>e(...f.map(oe))),s&&s()})}function Os(e,n=0){var t=C(se|n,e);return t}function ks(e,n=0){var t=C(cn|n,e);return t}function Cs(e){return C(G|Re,e)}function at(e){var n=e.teardown;if(n!==null){const t=pe,r=d;Pn(!0),te(null);try{n.call(null)}finally{Pn(t),te(r)}}}function Tn(e,n=!1){var t=e.first;for(e.first=e.last=null;t!==null;){const s=t.ac;s!==null&&bn(()=>{s.abort($)});var r=t.next;(t.f&Q)!==0?t.parent=null:ne(t,n),t=r}}function or(e){for(var n=e.first;n!==null;){var t=n.next;(n.f&G)===0&&ne(n),n=t}}function ne(e,n=!0){var t=!1;(n||(e.f&Rt)!==0)&&e.nodes!==null&&e.nodes.end!==null&&(ur(e.nodes.start,e.nodes.end),t=!0),E(e,Rn),Tn(e,n&&!t),Me(e,0);var r=e.nodes&&e.nodes.t;if(r!==null)for(const f of r)f.stop();at(e),e.f^=Rn,e.f|=B;var s=e.parent;s!==null&&s.first!==null&&it(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes=e.ac=null}function ur(e,n){for(;e!==null;){var t=e===n?null:fe(e);e.remove(),e=t}}function it(e){var n=e.parent,t=e.prev,r=e.next;t!==null&&(t.next=r),r!==null&&(r.prev=t),n!==null&&(n.first===e&&(n.first=r),n.last===e&&(n.last=t))}function cr(e,n,t=!0){var r=[];lt(e,r,!0);var s=()=>{t&&ne(e),n&&n()},f=r.length;if(f>0){var o=()=>--f||s();for(var l of r)l.out(o)}else s()}function lt(e,n,t){if((e.f&V)===0){e.f^=V;var r=e.nodes&&e.nodes.t;if(r!==null)for(const l of r)(l.is_global||t)&&n.push(l);for(var s=e.first;s!==null;){var f=s.next,o=(s.f&qe)!==0||(s.f&G)!==0&&(e.f&se)!==0;lt(s,n,o?t:!1),s=f}}}function Ds(e){ot(e,!0)}function ot(e,n){if((e.f&V)!==0){e.f^=V,(e.f&m)===0&&(E(e,R),ee.ensure().schedule(e));for(var t=e.first;t!==null;){var r=t.next,s=(t.f&qe)!==0||(t.f&G)!==0;ot(t,s?n:!1),t=r}var f=e.nodes&&e.nodes.t;if(f!==null)for(const o of f)(o.is_global||n)&&o.in()}}function Is(e,n){if(e.nodes)for(var t=e.nodes.start,r=e.nodes.end;t!==null;){var s=t===r?null:fe(t);n.append(t),t=s}}let He=!1,pe=!1;function Pn(e){pe=e}let d=null,Y=!1;function te(e){d=e}let w=null;function re(e){w=e}let F=null;function ut(e){d!==null&&(F===null?F=[e]:F.push(e))}let O=null,k=0,I=null;function _r(e){I=e}let ct=1,le=0,ce=le;function Mn(e){ce=e}function _t(){return++ct}function Ne(e){var n=e.f;if((n&R)!==0)return!0;if(n&T&&(e.f&=~ve),(n&H)!==0){for(var t=e.deps,r=t.length,s=0;s<r;s++){var f=t[s];if(Ne(f)&&Zn(f),f.wv>e.wv)return!0}(n&M)!==0&&S===null&&E(e,m)}return!1}function vt(e,n,t=!0){var r=e.reactions;if(r!==null&&!(F!==null&&Se.call(F,e)))for(var s=0;s<r.length;s++){var f=r[s];(f.f&T)!==0?vt(f,n,!1):n===f&&(t?E(f,R):(f.f&m)!==0&&E(f,H),hn(f))}}function dt(e){var L;var n=O,t=k,r=I,s=d,f=F,o=y,l=Y,a=ce,i=e.f;O=null,k=0,I=null,d=(i&(G|Q))===0?e:null,F=null,Ue(e.ctx),Y=!1,ce=++le,e.ac!==null&&(bn(()=>{e.ac.abort($)}),e.ac=null);try{e.f|=Qe;var u=e.fn,v=u();e.f|=we;var c=e.deps,g=p==null?void 0:p.is_fork;if(O!==null){var h;if(g||Me(e,k),c!==null&&k>0)for(c.length=k+O.length,h=0;h<O.length;h++)c[k+h]=O[h];else e.deps=c=O;if(rt()&&(e.f&M)!==0)for(h=k;h<c.length;h++)((L=c[h]).reactions??(L.reactions=[])).push(e)}else!g&&c!==null&&k<c.length&&(Me(e,k),c.length=k);if(je()&&I!==null&&!Y&&c!==null&&(e.f&(T|H|R))===0)for(h=0;h<I.length;h++)vt(I[h],e);if(s!==null&&s!==e){if(le++,s.deps!==null)for(let N=0;N<t;N+=1)s.deps[N].rv=le;if(n!==null)for(const N of n)N.rv=le;I!==null&&(r===null?r=I:r.push(...I))}return(e.f&W)!==0&&(e.f^=W),v}catch(N){return Bt(N)}finally{e.f^=Qe,O=n,k=t,I=r,d=s,F=f,Ue(o),Y=l,ce=a}}function vr(e,n){let t=n.reactions;if(t!==null){var r=mt.call(t,e);if(r!==-1){var s=t.length-1;s===0?t=n.reactions=null:(t[r]=t[s],t.pop())}}if(t===null&&(n.f&T)!==0&&(O===null||!Se.call(O,n))){var f=n;(f.f&M)!==0&&(f.f^=M,f.f&=~ve),pn(f),nr(f),Me(f,0)}}function Me(e,n){var t=e.deps;if(t!==null)for(var r=n;r<t.length;r++)vr(e,t[r])}function he(e){var n=e.f;if((n&B)===0){E(e,m);var t=w,r=He;w=e,He=!0;try{(n&(se|cn))!==0?or(e):Tn(e),at(e);var s=dt(e);e.teardown=typeof s=="function"?s:null,e.wv=ct;var f}finally{He=r,w=t}}}async function Ps(){await Promise.resolve(),zt()}function Ms(){return ee.ensure().settled()}function oe(e){var n=e.f,t=(n&T)!==0;if(d!==null&&!Y){var r=w!==null&&(w.f&B)!==0;if(!r&&(F===null||!Se.call(F,e))){var s=d.deps;if((d.f&Qe)!==0)e.rv<le&&(e.rv=le,O===null&&s!==null&&s[k]===e?k++:O===null?O=[e]:O.push(e));else{(d.deps??(d.deps=[])).push(e);var f=e.reactions;f===null?e.reactions=[d]:Se.call(f,d)||f.push(d)}}}if(pe&&J.has(e))return J.get(e);if(t){var o=e;if(pe){var l=o.v;return((o.f&m)===0&&o.reactions!==null||ht(o))&&(l=En(o)),J.set(o,l),l}var a=(o.f&M)===0&&!Y&&d!==null&&(He||(d.f&M)!==0),i=(o.f&we)===0;Ne(o)&&(a&&(o.f|=M),Zn(o)),a&&!i&&(Wn(o),pt(o))}if(S!=null&&S.has(e))return S.get(e);if((e.f&W)!==0)throw e.v;return e.v}function pt(e){if(e.f|=M,e.deps!==null)for(const n of e.deps)(n.reactions??(n.reactions=[])).push(e),(n.f&T)!==0&&(n.f&M)===0&&(Wn(n),pt(n))}function ht(e){if(e.v===A)return!0;if(e.deps===null)return!1;for(const n of e.deps)if(J.has(n)||(n.f&T)!==0&&ht(n))return!0;return!1}function dr(e){var n=Y;try{return Y=!0,e()}finally{Y=n}}function Fs(e){if(!(typeof e!="object"||!e||e instanceof EventTarget)){if(ue in e)un(e);else if(!Array.isArray(e))for(let n in e){const t=e[n];typeof t=="object"&&t&&ue in t&&un(t)}}}function un(e,n=new Set){if(typeof e=="object"&&e!==null&&!(e instanceof EventTarget)&&!n.has(e)){n.add(e),e instanceof Date&&e.getTime();for(let r in e)try{un(e[r],n)}catch{}const t=Ln(e);if(t!==Object.prototype&&t!==Array.prototype&&t!==Map.prototype&&t!==Set.prototype&&t!==Date.prototype){const r=gt(t);for(let s in r){const f=r[s].get;if(f)try{f.call(e)}catch{}}}}}export{rr as $,mn as A,Dr as B,Hn as C,B as D,qe as E,Ds as F,cr as G,Lt as H,V as I,G as J,ps as K,Is as L,ne as M,on as N,en as O,fe as P,Ir as Q,Pr as R,Es as S,Ps as T,dr as U,ft as V,y as W,As as X,w as Y,Rn as Z,ue as _,Xr as a,$r as a$,je as a0,Ie as a1,Or as a2,jr as a3,De as a4,X as a5,pe as a6,os as a7,re as a8,Yr as a9,is as aA,mr as aB,Ss as aC,xs as aD,qt as aE,ws as aF,sr as aG,qr as aH,Ur as aI,$e as aJ,gn as aK,we as aL,rt as aM,Je as aN,xt as aO,Vr as aP,E as aQ,R as aR,H as aS,Kt as aT,te as aU,Ue as aV,ee as aW,Bt as aX,d as aY,Ve as aZ,kr as a_,ze as aa,Lr as ab,Fr as ac,yn as ad,yr as ae,br as af,Hr as ag,ir as ah,wr as ai,At as aj,Rt as ak,Re as al,gs as am,ms as an,St as ao,Er as ap,Fs as aq,Nt as ar,es as as,fs as at,as as au,_s as av,ds as aw,Zr as ax,Wr as ay,Rs as az,Os as b,bn as b0,cs as b1,vn as b2,Nr as b3,Ts as b4,dn as b5,zt as b6,z as b7,ks as b8,Kr as b9,us as ba,Xn as bb,Ht as bc,Ln as bd,Gr as be,gt as bf,Sr as bg,ys as bh,A as bi,fr as bj,Tr as bk,xr as bl,Br as bm,ce as bn,rs as bo,ns as bp,ts as bq,ss as br,bs,Ms as bt,xe as c,Ns as d,zr as e,vs as f,b as g,de as h,oe as i,jt as j,Yt as k,ln as l,p as m,Ge as n,gr as o,Cs as p,Rr as q,Qr as r,Jr as s,hs as t,Jt as u,Et as v,hr as w,Cr as x,Mr as y,ls as z};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.DK_mcVDm.js","../chunks/CS53ooo0.js","../chunks/vtBo8kBV.js","../chunks/BA4Gucnq.js","../chunks/B6WG2Sd3.js","../chunks/ClknbeNl.js","../chunks/B2cyTHdf.js","../chunks/BkD3yAYe.js","../chunks/ChUctqXA.js","../chunks/DoRPmqLn.js","../chunks/DVa8Y-mQ.js","../chunks/CqYSO3Dx.js","../chunks/CVW0ymE1.js","../chunks/BUApaBEI.js","../chunks/Dyvi1wBH.js","../chunks/CGCMIfh3.js","../chunks/DJ2e04vK.js","../chunks/CFwxUBGi.js","../chunks/C4uF_YIK.js","../chunks/BAJAS8BI.js","../chunks/CBY2biv-.js","../chunks/DsxvjlCC.js","../chunks/DCEayuDt.js","../chunks/DAdOEnFb.js","../assets/homeFeedPanelStore.CE6xTfsa.css","../assets/0.DsKls1SN.css","../nodes/1.0PRrU2uQ.js","../nodes/2.AJd2163d.js","../nodes/3.CEVEHuaH.js","../chunks/DL3Q5sfb.js","../chunks/DkamXS6W.js","../chunks/C8umpVpB.js","../chunks/D6kzEN_P.js","../chunks/6prdYIKP.js","../assets/SourcesList.D5Lso0bo.css","../nodes/4.BT_N8pCh.js","../assets/4.Di6rvlY-.css","../nodes/5.BZScQ2CH.js","../chunks/_qj9U-za.js","../assets/BackToParentRoute.DGk-X5ow.css","../assets/5.B-dPiwB7.css","../nodes/6.CkFk8X--.js","../assets/6.B27N7pdA.css","../nodes/7.CuQJk7te.js","../assets/7.CrNxmd8B.css","../nodes/8.DIavWJnU.js","../chunks/Bfc47y5P.js","../assets/8.Cgji2b15.css","../nodes/9.Db30M8x0.js","../assets/9.BsCIAvn3.css","../nodes/10.CsxzlUER.js","../assets/10.Dj8_pmut.css","../nodes/11.D-PkhIRW.js","../assets/11.qYZMiTb0.css","../nodes/12.GGf-JLUY.js","../assets/12.DfJcfUWl.css","../nodes/13.DWWcH27k.js","../assets/13.Qu_tY6H9.css","../nodes/14.COwSLwDN.js","../assets/14.DfMfOrS3.css","../nodes/15.nDN_AHrs.js","../assets/15.nNGjXhCQ.css","../nodes/16.zfSe93Ab.js","../chunks/B-CeeY89.js","../assets/16.Cw9oSkcO.css","../nodes/17.BtYZF6FM.js","../chunks/hp4PFHFv.js","../nodes/18.BIzqhTqv.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
var Z=r=>{throw TypeError(r)};var M=(r,t,e)=>t.has(r)||Z("Cannot "+e);var l=(r,t,e)=>(M(r,t,"read from private field"),e?e.call(r):t.get(r)),F=(r,t,e)=>t.has(r)?Z("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(r):t.set(r,e),H=(r,t,e,i)=>(M(r,t,"write to private field"),i?i.call(r,e):t.set(r,e),e);import{a5 as z,af as it,i as v,b6 as mt,ai as ut,z as ct,at as lt,am as _t,an as dt,T as ft,f as A,aw as vt,au as ht,b7 as J,av as gt,ax as Et,az as Pt,aA as x}from"../chunks/vtBo8kBV.js";import{h as pt,m as Rt,u as yt,s as Ot}from"../chunks/B2cyTHdf.js";import{a as E,c as I,f as $,t as bt}from"../chunks/CS53ooo0.js";import{o as Lt}from"../chunks/Dyvi1wBH.js";import{i as B}from"../chunks/BkD3yAYe.js";import{c as k}from"../chunks/C4uF_YIK.js";import{b as S}from"../chunks/B-CeeY89.js";import{p as q}from"../chunks/BAJAS8BI.js";function At(r){return class extends Tt{constructor(t){super({component:r,...t})}}}var P,_;class Tt{constructor(t){F(this,P);F(this,_);var p;var e=new Map,i=(o,a)=>{var m=ct(a,!1,!1);return e.set(o,m),m};const u=new Proxy({...t.props||{},$$events:{}},{get(o,a){return v(e.get(a)??i(a,Reflect.get(o,a)))},has(o,a){return a===it?!0:(v(e.get(a)??i(a,Reflect.get(o,a))),Reflect.has(o,a))},set(o,a,m){return z(e.get(a)??i(a,m),m),Reflect.set(o,a,m)}});H(this,_,(t.hydrate?pt:Rt)(t.component,{target:t.target,anchor:t.anchor,props:u,context:t.context,intro:t.intro??!1,recover:t.recover,transformError:t.transformError})),(!((p=t==null?void 0:t.props)!=null&&p.$$host)||t.sync===!1)&&mt(),H(this,P,u.$$events);for(const o of Object.keys(l(this,_)))o==="$set"||o==="$destroy"||o==="$on"||ut(this,o,{get(){return l(this,_)[o]},set(a){l(this,_)[o]=a},enumerable:!0});l(this,_).$set=o=>{Object.assign(u,o)},l(this,_).$destroy=()=>{yt(l(this,_))}}$set(t){l(this,_).$set(t)}$on(t,e){l(this,P)[t]=l(this,P)[t]||[];const i=(...u)=>e.call(this,...u);return l(this,P)[t].push(i),()=>{l(this,P)[t]=l(this,P)[t].filter(u=>u!==i)}}$destroy(){l(this,_).$destroy()}}P=new WeakMap,_=new WeakMap;const Dt="modulepreload",It=function(r,t){return new URL(r,t).href},N={},s=function(t,e,i){let u=Promise.resolve();if(e&&e.length>0){let o=function(c){return Promise.all(c.map(h=>Promise.resolve(h).then(R=>({status:"fulfilled",value:R}),R=>({status:"rejected",reason:R}))))};const a=document.getElementsByTagName("link"),m=document.querySelector("meta[property=csp-nonce]"),j=(m==null?void 0:m.nonce)||(m==null?void 0:m.getAttribute("nonce"));u=o(e.map(c=>{if(c=It(c,i),c in N)return;N[c]=!0;const h=c.endsWith(".css"),R=h?'[rel="stylesheet"]':"";if(!!i)for(let y=a.length-1;y>=0;y--){const n=a[y];if(n.href===c&&(!h||n.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${c}"]${R}`))return;const g=document.createElement("link");if(g.rel=h?"stylesheet":Dt,h||(g.as="script"),g.crossOrigin="",g.href=c,j&&g.setAttribute("nonce",j),document.head.appendChild(g),h)return new Promise((y,n)=>{g.addEventListener("load",y),g.addEventListener("error",()=>n(new Error(`Unable to preload CSS for ${c}`)))})}))}function p(o){const a=new Event("vite:preloadError",{cancelable:!0});if(a.payload=o,window.dispatchEvent(a),!a.defaultPrevented)throw o}return u.then(o=>{for(const a of o||[])a.status==="rejected"&&p(a.reason);return t().catch(p)})},Ht={};var Vt=$('<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>'),wt=$("<!> <!>",1);function xt(r,t){lt(t,!0);let e=q(t,"components",23,()=>[]),i=q(t,"data_0",3,null),u=q(t,"data_1",3,null),p=q(t,"data_2",3,null);_t(()=>t.stores.page.set(t.page)),dt(()=>{t.stores,t.page,t.constructors,e(),t.form,i(),u(),p(),t.stores.page.notify()});let o=J(!1),a=J(!1),m=J(null);Lt(()=>{const n=t.stores.page.subscribe(()=>{v(o)&&(z(a,!0),ft().then(()=>{z(m,document.title||"untitled page",!0)}))});return z(o,!0),n});const j=x(()=>t.constructors[2]);var c=wt(),h=A(c);{var R=n=>{const O=x(()=>t.constructors[0]);var b=I(),V=A(b);k(V,()=>v(O),(L,T)=>{S(T(L,{get data(){return i()},get form(){return t.form},get params(){return t.page.params},children:(d,St)=>{var Q=I(),et=A(Q);{var rt=D=>{const U=x(()=>t.constructors[1]);var w=I(),G=A(w);k(G,()=>v(U),(W,Y)=>{S(Y(W,{get data(){return u()},get form(){return t.form},get params(){return t.page.params},children:(f,jt)=>{var X=I(),ot=A(X);k(ot,()=>v(j),(st,nt)=>{S(nt(st,{get data(){return p()},get form(){return t.form},get params(){return t.page.params}}),C=>e()[2]=C,()=>{var C;return(C=e())==null?void 0:C[2]})}),E(f,X)},$$slots:{default:!0}}),f=>e()[1]=f,()=>{var f;return(f=e())==null?void 0:f[1]})}),E(D,w)},at=D=>{const U=x(()=>t.constructors[1]);var w=I(),G=A(w);k(G,()=>v(U),(W,Y)=>{S(Y(W,{get data(){return u()},get form(){return t.form},get params(){return t.page.params}}),f=>e()[1]=f,()=>{var f;return(f=e())==null?void 0:f[1]})}),E(D,w)};B(et,D=>{t.constructors[2]?D(rt):D(at,-1)})}E(d,Q)},$$slots:{default:!0}}),d=>e()[0]=d,()=>{var d;return(d=e())==null?void 0:d[0]})}),E(n,b)},K=n=>{const O=x(()=>t.constructors[0]);var b=I(),V=A(b);k(V,()=>v(O),(L,T)=>{S(T(L,{get data(){return i()},get form(){return t.form},get params(){return t.page.params}}),d=>e()[0]=d,()=>{var d;return(d=e())==null?void 0:d[0]})}),E(n,b)};B(h,n=>{t.constructors[1]?n(R):n(K,-1)})}var g=vt(h,2);{var y=n=>{var O=Vt(),b=gt(O);{var V=L=>{var T=bt();Pt(()=>Ot(T,v(m))),E(L,T)};B(b,L=>{v(a)&&L(V)})}Et(O),E(n,O)};B(g,n=>{v(o)&&n(y)})}E(r,c),ht()}const Jt=At(xt),Kt=[()=>s(()=>import("../nodes/0.DK_mcVDm.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]),import.meta.url),()=>s(()=>import("../nodes/1.0PRrU2uQ.js"),__vite__mapDeps([26,1,2,3,6,10,12,5,13,14]),import.meta.url),()=>s(()=>import("../nodes/2.AJd2163d.js"),__vite__mapDeps([27,1,2,3,8]),import.meta.url),()=>s(()=>import("../nodes/3.CEVEHuaH.js"),__vite__mapDeps([28,1,2,3,29,30,14,6,4,5,7,17,9,31,10,11,12,13,15,16,18,19,20,21,8,22,23,24,32,33,34]),import.meta.url),()=>s(()=>import("../nodes/4.BT_N8pCh.js"),__vite__mapDeps([35,1,2,3,14,6,7,17,29,9,10,20,36]),import.meta.url),()=>s(()=>import("../nodes/5.BZScQ2CH.js"),__vite__mapDeps([37,1,2,3,14,6,7,29,9,31,10,38,4,5,11,12,13,39,20,15,40]),import.meta.url),()=>s(()=>import("../nodes/6.CkFk8X--.js"),__vite__mapDeps([41,1,2,3,14,6,7,29,9,31,10,38,4,5,11,12,13,39,20,15,42]),import.meta.url),()=>s(()=>import("../nodes/7.CuQJk7te.js"),__vite__mapDeps([43,1,2,3,14,4,5,10,12,13,11,44]),import.meta.url),()=>s(()=>import("../nodes/8.DIavWJnU.js"),__vite__mapDeps([45,1,2,3,6,7,29,9,31,46,10,38,4,5,11,12,13,14,39,47]),import.meta.url),()=>s(()=>import("../nodes/9.Db30M8x0.js"),__vite__mapDeps([48,1,2,3,14,6,7,17,29,9,10,38,4,5,11,12,13,39,20,15,49]),import.meta.url),()=>s(()=>import("../nodes/10.CsxzlUER.js"),__vite__mapDeps([50,1,2,3,14,6,7,29,9,31,10,38,4,5,11,12,13,39,20,15,51]),import.meta.url),()=>s(()=>import("../nodes/11.D-PkhIRW.js"),__vite__mapDeps([52,1,2,3,29,30,14,6,4,5,7,17,9,31,10,11,12,13,15,16,18,19,20,21,8,22,23,24,32,33,34,38,39,53]),import.meta.url),()=>s(()=>import("../nodes/12.GGf-JLUY.js"),__vite__mapDeps([54,1,2,3,14,6,7,17,29,9,31,46,10,38,4,5,11,12,13,39,20,15,55]),import.meta.url),()=>s(()=>import("../nodes/13.DWWcH27k.js"),__vite__mapDeps([56,1,2,3,14,6,7,17,29,9,31,10,20,15,5,21,8,19,4,22,33,18,57]),import.meta.url),()=>s(()=>import("../nodes/14.COwSLwDN.js"),__vite__mapDeps([58,1,2,3,14,6,5,7,17,29,9,31,10,20,11,12,13,15,32,8,19,4,21,22,23,59]),import.meta.url),()=>s(()=>import("../nodes/15.nDN_AHrs.js"),__vite__mapDeps([60,1,2,3,14,29,10,12,5,13,61]),import.meta.url),()=>s(()=>import("../nodes/16.zfSe93Ab.js"),__vite__mapDeps([62,1,2,3,4,5,6,7,22,29,10,9,20,11,12,13,14,15,63,19,38,39,64]),import.meta.url),()=>s(()=>import("../nodes/17.BtYZF6FM.js"),__vite__mapDeps([65,66,13]),import.meta.url),()=>s(()=>import("../nodes/18.BIzqhTqv.js"),__vite__mapDeps([67,66,13]),import.meta.url)],Qt=[],Xt={"/":[3],"/admin":[4,[2]],"/admin/deliver":[5,[2]],"/admin/llm":[6,[2]],"/admin/logs":[7,[2]],"/admin/parse":[8,[2]],"/admin/pipeline":[9,[2]],"/admin/proxy":[10,[2]],"/admin/sources":[11,[2]],"/admin/tags":[12,[2]],"/logs":[13],"/plugins":[14],"/plugins/new":[15],"/plugins/[id]":[16],"/tags":[17],"/[sub]":[18]},tt={handleError:(({error:r})=>{console.error(r)}),reroute:(()=>{}),transport:{}},kt=Object.fromEntries(Object.entries(tt.transport).map(([r,t])=>[r,t.decode])),Zt=Object.fromEntries(Object.entries(tt.transport).map(([r,t])=>[r,t.encode])),Mt=!1,Nt=(r,t)=>kt[r](t);export{Nt as decode,kt as decoders,Xt as dictionary,Zt as encoders,Mt as hash,tt as hooks,Ht as matchers,Kt as nodes,Jt as root,Qt as server_loads};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{l as o,a as r}from"../chunks/CVW0ymE1.js";export{o as load_css,r as start};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as h,f as g}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{at as v,f as l,az as d,au as x,av as e,ax as o,aw as _}from"../chunks/vtBo8kBV.js";import{s as p}from"../chunks/B2cyTHdf.js";import{i as $}from"../chunks/DVa8Y-mQ.js";import{s as k,p as m}from"../chunks/CVW0ymE1.js";const b={get error(){return m.error},get status(){return m.status}};k.updated.check;const i=b;var w=g("<h1> </h1> <p> </p>",1);function B(f,n){v(n,!1),$();var t=w(),r=l(t),c=e(r,!0);o(r);var a=_(r,2),u=e(a,!0);o(a),d(()=>{var s;p(c,i.status),p(u,(s=i.error)==null?void 0:s.message)}),h(f,t),x()}export{B as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as v,f as u}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as H}from"../chunks/Dyvi1wBH.js";import{at as $,az as B,au as C,d as J,av as a,a5 as t,i as o,z as d,$ as M,aw as m,ax as r,f as N,ay as U}from"../chunks/vtBo8kBV.js";import{d as X,a as Y,s as A}from"../chunks/B2cyTHdf.js";import{i as D}from"../chunks/BkD3yAYe.js";import{h as F}from"../chunks/DL3Q5sfb.js";import{P as q,r as G}from"../chunks/DoRPmqLn.js";import{b as I}from"../chunks/C8umpVpB.js";import{i as K}from"../chunks/DVa8Y-mQ.js";import{B as L}from"../chunks/_qj9U-za.js";import{b as j}from"../chunks/CBY2biv-.js";import{s as z}from"../chunks/CGCMIfh3.js";var Q=u('<p class="hint svelte-1f24zj">加载中…</p>'),V=u('<input type="text" class="text-input svelte-1f24zj" placeholder="http://127.0.0.1:7890" autocomplete="off"/> <p class="hint svelte-1f24zj">留空表示不在配置中设置全局代理(可继续用环境变量)。支持带账号:<code>http://user:pass@host:port</code></p>',1),W=u('<div class="feed-wrap svelte-1f24zj"><div class="feed-col svelte-1f24zj"><div class="body svelte-1f24zj"><!> <p class="intro svelte-1f24zj">写入 <code class="svelte-1f24zj">.rssany/config.json</code> 的 <code class="svelte-1f24zj">globalProxy</code>。抓取与站点登录时,若未在 <code class="svelte-1f24zj">sources.json</code> 或插件中指定单源代理,则使用此处;未填写时仍可使用环境变量 <code class="svelte-1f24zj">HTTP_PROXY</code> / <code class="svelte-1f24zj">HTTPS_PROXY</code>。</p> <section class="form-section svelte-1f24zj"><h3 class="section-title svelte-1f24zj">全局 HTTP(S) 代理</h3> <!></section> <div class="btn-row svelte-1f24zj"><button type="button" class="btn btn-primary svelte-1f24zj"> </button></div></div></div></div>');function ve(x,P){$(P,!1);let s=d(""),l=d(!0),i=d(!1);async function T(){t(l,!0);try{const e=await j("/api/proxy");t(s,typeof(e==null?void 0:e.globalProxy)=="string"?e.globalProxy:"")}catch{t(s,"")}finally{t(l,!1)}}async function w(){t(i,!0);try{const e=await j("/api/proxy",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({globalProxy:o(s).trim()})});if(!(e!=null&&e.ok))throw new Error("保存失败");t(s,typeof e.globalProxy=="string"?e.globalProxy:""),z("已保存","success")}catch(e){z("保存失败: "+(e instanceof Error?e.message:String(e)),"error")}finally{t(i,!1)}}H(T),K();var f=W();F("1f24zj",e=>{J(()=>{M.title=`代理 - ${q}`})});var y=a(f),b=a(y),h=a(b);L(h,{});var p=m(h,4),k=m(a(p),2);{var O=e=>{var n=Q();v(e,n)},R=e=>{var n=V(),_=N(n);G(_),U(2),I(_,()=>o(s),E=>t(s,E)),v(e,n)};D(k,e=>{o(l)?e(O):e(R,-1)})}r(p);var g=m(p,2),c=a(g),S=a(c,!0);r(c),r(g),r(b),r(y),r(f),B(()=>{c.disabled=o(l)||o(i),A(S,o(i)?"保存中…":"保存")}),Y("click",c,w),v(x,f),C()}X(["click"]);export{ve as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as s,f as m}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{f as i,d as c,av as f,aw as d,$ as n,ax as p}from"../chunks/vtBo8kBV.js";import{h as v}from"../chunks/DL3Q5sfb.js";import{S as l}from"../chunks/DkamXS6W.js";import{B as _}from"../chunks/_qj9U-za.js";import{P as h}from"../chunks/DoRPmqLn.js";var u=m('<div class="admin-sources-back svelte-8cr5m9"><!></div> <!>',1);function R(o){var r=u();v("8cr5m9",$=>{c(()=>{n.title=`Sources — ${h}`})});var a=i(r),e=f(a);_(e,{}),p(a);var t=d(a,2);l(t,{}),s(o,r)}export{R as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as v,f as c}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as xe}from"../chunks/Dyvi1wBH.js";import{v as we,at as ke,f as Ce,az as E,i as s,au as Te,d as Le,av as n,a5 as a,z as w,aw as i,$ as Ee,ax as r,u as $e}from"../chunks/vtBo8kBV.js";import{e as f,s as S}from"../chunks/B2cyTHdf.js";import{i as O}from"../chunks/BkD3yAYe.js";import{e as se,i as ae}from"../chunks/CFwxUBGi.js";import{h as Me}from"../chunks/DL3Q5sfb.js";import{P as Pe,r as Se,c as Oe}from"../chunks/DoRPmqLn.js";import{b as Fe}from"../chunks/C8umpVpB.js";import{s as X}from"../chunks/Bfc47y5P.js";import{i as Je}from"../chunks/DVa8Y-mQ.js";import{B as Ne}from"../chunks/_qj9U-za.js";import{b as Y}from"../chunks/CBY2biv-.js";import{s as F}from"../chunks/CGCMIfh3.js";function je(z,$){var k;var o=(k=z.$$events)==null?void 0:k[$.type],p=we(o)?o.slice():o==null?[]:[o];for(var u of p)u.call(this,$)}var ze=c('<div class="state svelte-1s5glru">加载中…</div>'),Be=c('<p class="empty-hint svelte-1s5glru">暂无标签。添加后,pipeline 会对新入库条目自动打标签。</p>'),De=c('<span class="tag-meta svelte-1s5glru"> </span>'),Ie=c('<div class="tag-badge svelte-1s5glru"><span class="tag-name svelte-1s5glru"> </span> <!> <button type="button" class="tag-remove svelte-1s5glru" title="从系统标签中删除">×</button></div>'),Re=c('<div class="tag-list svelte-1s5glru"></div>'),Ue=c('<div class="tag-badge suggested svelte-1s5glru"><span class="tag-name svelte-1s5glru"> </span> <span class="tag-meta svelte-1s5glru"> </span> <button type="button" class="tag-add svelte-1s5glru" title="添加到系统标签">+</button></div>'),qe=c('<div class="suggested-section svelte-1s5glru"><h3 class="section-title svelte-1s5glru">建议添加(文章中出现但未在系统标签库中)</h3> <div class="tag-list svelte-1s5glru"></div></div>'),Ae=c('<div class="body svelte-1s5glru"><div class="tags-section svelte-1s5glru"><h3 class="section-title svelte-1s5glru"> </h3> <!></div> <!></div>'),Xe=c('<div class="context-menu svelte-1s5glru" role="menu" tabindex="-1"><button type="button" class="context-menu-item svelte-1s5glru">从所有文章中移除该标签</button></div>'),Ye=c('<div class="feed-wrap svelte-1s5glru"><div class="feed-col svelte-1s5glru"><div class="feed-toolbar-block svelte-1s5glru"><!> <div class="admin-feed-header"><div class="admin-feed-header__left"><h2>系统标签</h2> <p class="admin-feed-header__desc">系统标签库,新入库条目会由 LLM 自动匹配打标签。</p></div> <div class="admin-feed-header__actions"><input type="text" class="admin-toolbar-input" placeholder="输入新标签,回车添加"/> <button type="button" class="admin-toolbar-btn admin-toolbar-btn--primary">添加</button></div></div></div> <div class="feed-body-scroll"><!></div></div></div> <!>',1);function lt(z,$){ke($,!1);let o=w([]),p=[],u=w([]),k=w(!0),_=w(!1),M=w(""),b=w(null),J=w(!1);async function re(){a(k,!0);try{const t=await Y("/api/tags");a(o,(t==null?void 0:t.tags)??[]),p=(t==null?void 0:t.stats)??[],a(u,(t==null?void 0:t.suggestedTags)??[])}catch{a(o,[]),p=[],a(u,[])}finally{a(k,!1)}}function oe(t){return p.find(e=>e.name.toLowerCase()===t.toLowerCase())}async function B(t){a(_,!0);try{const e=await Y("/api/tags",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({tags:t})});if(!(e!=null&&e.ok))throw new Error((e==null?void 0:e.message)??"保存失败");a(o,(e==null?void 0:e.tags)??t),p=(e==null?void 0:e.stats)??[],a(u,(e==null?void 0:e.suggestedTags)??[]),F("已保存","success")}catch(e){F("保存失败: "+(e instanceof Error?e.message:String(e)),"error")}finally{a(_,!1)}}function G(){const t=s(M).trim();if(!(!t||s(_))){if(s(o).some(e=>e.toLowerCase()===t.toLowerCase())){F("标签已存在","error");return}a(M,""),B([...s(o),t])}}function ne(t){s(_)||B(s(o).filter(e=>e!==t))}function ie(t){s(_)||s(o).some(e=>e.toLowerCase()===t.toLowerCase())||B([...s(o),t])}function H(t,e){t.preventDefault(),t.stopPropagation(),a(b,{x:t.clientX,y:t.clientY,tag:e})}function D(){a(b,null)}async function le(t){if(!s(J)){a(J,!0),a(b,null);try{const e=await Y("/api/tags/remove-from-items",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({tag:t})});if(!(e!=null&&e.ok))throw new Error((e==null?void 0:e.message)??"操作失败");a(o,(e==null?void 0:e.tags)??s(o)),p=(e==null?void 0:e.stats)??p,a(u,(e==null?void 0:e.suggestedTags)??s(u)),F(`已从 ${(e==null?void 0:e.removedCount)??0} 篇文章中移除该标签`,"success")}catch(e){F("操作失败: "+(e instanceof Error?e.message:String(e)),"error")}finally{a(J,!1)}}}xe(()=>{re();const t=()=>D(),e=()=>D();return document.addEventListener("click",t),document.addEventListener("contextmenu",e),()=>{document.removeEventListener("click",t),document.removeEventListener("contextmenu",e)}}),Je();var K=Ye();Me("1s5glru",t=>{Le(()=>{Ee.title=`标签 - ${Pe}`})});var I=Ce(K),Q=n(I),R=n(Q),V=n(R);Ne(V,{});var W=i(V,2),Z=i(n(W),2),N=n(Z);Se(N);var ee=i(N,2);r(Z),r(W),r(R);var te=i(R,2),ve=n(te);{var ce=t=>{var e=ze();v(t,e)},ue=t=>{var e=Ae(),C=n(e),h=n(C),ge=n(h);r(h);var fe=i(h,2);{var pe=l=>{var d=Be();v(l,d)},_e=l=>{var d=Re();se(d,5,()=>s(o),ae,(j,T)=>{const m=$e(()=>oe(s(T)));var g=Ie(),y=n(g),U=n(y,!0);r(y);var L=i(y,2);{var q=x=>{var A=De(),ye=n(A);r(A),E(()=>S(ye,`${s(m).count??""} 篇 · 热度 ${s(m).hotness??""}`)),v(x,A)};O(L,x=>{s(m)&&x(q)})}var P=i(L,2);r(g),E(()=>{S(U,s(T)),P.disabled=s(_)}),f("click",P,X(()=>ne(s(T)))),f("contextmenu",g,x=>H(x,s(T))),v(j,g)}),r(d),v(l,d)};O(fe,l=>{s(o).length===0?l(pe):l(_e,-1)})}r(C);var be=i(C,2);{var he=l=>{var d=qe(),j=i(n(d),2);se(j,5,()=>s(u),ae,(T,m)=>{var g=Ue(),y=n(g),U=n(y,!0);r(y);var L=i(y,2),q=n(L);r(L);var P=i(L,2);r(g),E(()=>{S(U,s(m).name),S(q,`${s(m).count??""} 篇 · 热度 ${s(m).hotness??""}`),P.disabled=s(_)}),f("click",P,X(()=>ie(s(m).name))),f("contextmenu",g,x=>H(x,s(m).name)),v(T,g)}),r(j),r(d),v(l,d)};O(be,l=>{s(u).length>0&&l(he)})}r(e),E(()=>S(ge,`当前标签 (${s(o).length??""})`)),v(t,e)};O(ve,t=>{s(k)?t(ce):t(ue,-1)})}r(te),r(Q),r(I);var de=i(I,2);{var me=t=>{var e=Xe(),C=n(e);r(e),E(()=>{Oe(e,`left: ${s(b).x??""}px; top: ${s(b).y??""}px`),C.disabled=s(J)}),f("click",C,()=>le(s(b).tag)),f("click",e,X(function(h){je.call(this,$,h)})),f("keydown",e,h=>h.key==="Escape"&&D()),v(t,e)};O(de,t=>{s(b)&&t(me)})}E(t=>ee.disabled=t,[()=>!s(M).trim()||s(_)]),Fe(N,()=>s(M),t=>a(M,t)),f("keydown",N,t=>t.key==="Enter"&&G()),f("click",ee,G),v(z,K),Te()}export{lt as component};
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
var As=Object.defineProperty;var ss=r=>{throw TypeError(r)};var Hs=(r,t,e)=>t in r?As(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e;var y=(r,t,e)=>Hs(r,typeof t!="symbol"?t+"":t,e),Oe=(r,t,e)=>t.has(r)||ss("Cannot "+e);var o=(r,t,e)=>(Oe(r,t,"read from private field"),e?e.call(r):t.get(r)),p=(r,t,e)=>t.has(r)?ss("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(r):t.set(r,e),ct=(r,t,e,i)=>(Oe(r,t,"write to private field"),i?i.call(r,e):t.set(r,e),e),xt=(r,t,e)=>(Oe(r,t,"access private method"),e);import{c as V,a as m,f as K,p as Ne,t as Ds}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as Ls,a as Rs}from"../chunks/Dyvi1wBH.js";import{aA as _,i as s,an as Se,U as q,b7 as j,a4 as Vs,a5 as h,at as ht,f as O,au as dt,am as Ks,av as N,aj as kt,ax as C,aw as B,aC as Fs,aD as Ws,az as mt,d as Us,z as Z,$ as Bs,ay as zs}from"../chunks/vtBo8kBV.js";import{o as qs,e as Pt,s as rt}from"../chunks/B2cyTHdf.js";import{i as Y}from"../chunks/BkD3yAYe.js";import{e as De}from"../chunks/CFwxUBGi.js";import{h as Gs}from"../chunks/DL3Q5sfb.js";import{d as at,P as Js,r as js,a as Ys}from"../chunks/DoRPmqLn.js";import{b as ls}from"../chunks/C8umpVpB.js";import{i as Qs}from"../chunks/DVa8Y-mQ.js";import{a as rs}from"../chunks/CBY2biv-.js";import{s as Ee}from"../chunks/CGCMIfh3.js";import{A as Xs,b as x,n as lt,m as yt,C as hs,w as Mt,G as ds,l as Be,a as Zs,c as $s,d as xe,H as It,J as Ht,E as os,S as Ae,K as is,L as us,M as cs,N as ps,O as fs,e as gs,g as vs,q as tr,o as er,Q as sr,R as ns,f as Pe,s as X,I as rr,P as or}from"../chunks/DsxvjlCC.js";import{p as b,r as de,s as be,l as ir}from"../chunks/BAJAS8BI.js";import{g as nr,P as ar,a as lr,b as hr,F as dr}from"../chunks/6prdYIKP.js";import{c as ur}from"../chunks/C4uF_YIK.js";import{s as cr}from"../chunks/ChUctqXA.js";const pr={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0",transform:"translateX(-100%)"},fr=Xs(pr);var Dt,_e;class gr{constructor(t,e){p(this,Dt,()=>{});p(this,_e,_(()=>o(this,Dt).call(this)));let i;e!==void 0&&(i=e),ct(this,Dt,()=>{try{return i}finally{i=t()}})}get current(){return s(o(this,_e))}}Dt=new WeakMap,_e=new WeakMap;function vr(r){Se(()=>q(()=>r()))}function mr(r,t,e=!0){if(!(r.length===0||t<0||t>=r.length))return r.length===1&&t===0?r[0]:t===r.length-1?e?r[0]:void 0:r[t+1]}function br(r,t,e=!0){if(!(r.length===0||t<0||t>=r.length))return r.length===1&&t===0?r[0]:t===0?e?r[r.length-1]:void 0:r[t-1]}function _r(r,t,e,i=!0){if(r.length===0||t<0||t>=r.length)return;let n=t+e;return i?n=(n%r.length+r.length)%r.length:n=Math.max(0,Math.min(n,r.length-1)),r[n]}function yr(r,t,e,i=!0){if(r.length===0||t<0||t>=r.length)return;let n=t-e;return i?n=(n%r.length+r.length)%r.length:n=Math.max(0,Math.min(n,r.length-1)),r[n]}function ze(r,t,e){const i=t.toLowerCase();if(i.endsWith(" ")){const d=i.slice(0,-1);if(r.filter(D=>D.toLowerCase().startsWith(d)).length<=1)return ze(r,d,e);const v=e==null?void 0:e.toLowerCase();if(v&&v.startsWith(d)&&v.charAt(d.length)===" "&&t.trim()===d)return e;const H=r.filter(D=>D.toLowerCase().startsWith(i));if(H.length>0){const D=e?r.indexOf(e):-1;return as(H,Math.max(D,0)).find(L=>L!==e)||e}}const f=t.length>1&&Array.from(t).every(d=>d===t[0])?t[0]:t,a=f.toLowerCase(),u=e?r.indexOf(e):-1;let g=as(r,Math.max(u,0));f.length===1&&(g=g.filter(d=>d!==e));const c=g.find(d=>d==null?void 0:d.toLowerCase().startsWith(a));return c!==e?c:void 0}function as(r,t){return r.map((e,i)=>r[(t+i)%r.length])}const wr={afterMs:1e4,onChange:lt};function ms(r,t){const{afterMs:e,onChange:i,getWindow:n}={...wr,...t};let f=null,a=j(Vs(r));function u(){return n().setTimeout(()=>{h(a,r,!0),i==null||i(r)},e)}return Se(()=>()=>{f&&n().clearTimeout(f)}),x(()=>s(a),g=>{h(a,g,!0),i==null||i(g),f&&n().clearTimeout(f),f=u()})}var ot,it,ye,we;class Cr{constructor(t){p(this,ot);p(this,it);p(this,ye,_(()=>o(this,ot).onMatch?o(this,ot).onMatch:t=>t.focus()));p(this,we,_(()=>o(this,ot).getCurrentItem?o(this,ot).getCurrentItem:o(this,ot).getActiveElement));ct(this,ot,t),ct(this,it,ms("",{afterMs:1e3,getWindow:t.getWindow})),this.handleTypeaheadSearch=this.handleTypeaheadSearch.bind(this),this.resetTypeahead=this.resetTypeahead.bind(this)}handleTypeaheadSearch(t,e){var g,w;if(!e.length)return;o(this,it).current=o(this,it).current+t;const i=s(o(this,we))(),n=((w=(g=e.find(c=>c===i))==null?void 0:g.textContent)==null?void 0:w.trim())??"",f=e.map(c=>{var d;return((d=c.textContent)==null?void 0:d.trim())??""}),a=ze(f,o(this,it).current,n),u=e.find(c=>{var d;return((d=c.textContent)==null?void 0:d.trim())===a});return u&&s(o(this,ye))(u),u}resetTypeahead(){o(this,it).current=""}get search(){return o(this,it).current}}ot=new WeakMap,it=new WeakMap,ye=new WeakMap,we=new WeakMap;var Nr=K("<input/>"),Sr=K("<input/>");function xr(r,t){ht(t,!0);let e=b(t,"value",15),i=de(t,["$$slots","$$events","$$legacy","value"]);const n=_(()=>yt(i,{"aria-hidden":"true",tabindex:-1,style:fr}));var f=V(),a=O(f);{var u=w=>{var c=Nr();at(c,()=>({...s(n),value:e()}),void 0,void 0,void 0,void 0,!0),m(w,c)},g=w=>{var c=Sr();at(c,()=>({...s(n)}),void 0,void 0,void 0,void 0,!0),ls(c,e),m(w,c)};Y(a,w=>{s(n).type==="checkbox"?w(u):w(g,-1)})}m(r,f),dt()}var nt,bt,pt;class Pr{constructor(t){p(this,nt);p(this,bt,_(()=>o(this,nt).candidateValues()));p(this,pt);ct(this,nt,t),ct(this,pt,ms("",{afterMs:1e3,getWindow:o(this,nt).getWindow})),this.handleTypeaheadSearch=this.handleTypeaheadSearch.bind(this),this.resetTypeahead=this.resetTypeahead.bind(this)}handleTypeaheadSearch(t){if(!o(this,nt).enabled()||!s(o(this,bt)).length)return;o(this,pt).current=o(this,pt).current+t;const e=o(this,nt).getCurrentItem(),i=s(o(this,bt)).find(u=>u===e)??"",n=s(o(this,bt)).map(u=>u??""),f=ze(n,o(this,pt).current,i),a=s(o(this,bt)).find(u=>u===f);return a&&o(this,nt).onMatch(a),a}resetTypeahead(){o(this,pt).current=""}}nt=new WeakMap,bt=new WeakMap,pt=new WeakMap;const Ir=[Ht,us,cs],Tr=[It,ps,fs],kr=[...Ir,...Tr],Mr=$s({component:"select",parts:["trigger","content","item","viewport","scroll-up-button","scroll-down-button","group","group-label","separator","arrow","input","content-wrapper","item-text","value"]}),ue=new hs("Select.Root | Combobox.Root"),bs=new hs("Select.Content | Combobox.Content");var Lt,Rt,Vt,Kt,Ft,Wt,Ut,Bt,zt,qt;class _s{constructor(t){y(this,"opts");p(this,Lt,j(!1));p(this,Rt,j(null));p(this,Vt,j(null));y(this,"contentPresence");p(this,Kt,j(null));p(this,Ft,j(null));p(this,Wt,j(""));p(this,Ut,j(null));p(this,Bt,_(()=>this.highlightedNode?this.highlightedNode.getAttribute("data-value"):null));p(this,zt,_(()=>{if(this.highlightedNode)return this.highlightedNode.id}));p(this,qt,_(()=>this.highlightedNode?this.highlightedNode.getAttribute("data-label"):null));y(this,"isUsingKeyboard",!1);y(this,"isCombobox",!1);y(this,"domContext",new Be(()=>null));y(this,"getBitsAttr",t=>Mr.getAttr(t,this.isCombobox?"combobox":void 0));this.opts=t,this.isCombobox=t.isCombobox,this.contentPresence=new Zs({ref:x(()=>this.contentNode),open:this.opts.open,onComplete:()=>{this.opts.onOpenChangeComplete.current(this.opts.open.current)}}),Ks(()=>{this.opts.open.current||this.setHighlightedNode(null)})}get touchedInput(){return s(o(this,Lt))}set touchedInput(t){h(o(this,Lt),t,!0)}get inputNode(){return s(o(this,Rt))}set inputNode(t){h(o(this,Rt),t,!0)}get contentNode(){return s(o(this,Vt))}set contentNode(t){h(o(this,Vt),t,!0)}get viewportNode(){return s(o(this,Kt))}set viewportNode(t){h(o(this,Kt),t,!0)}get triggerNode(){return s(o(this,Ft))}set triggerNode(t){h(o(this,Ft),t,!0)}get valueId(){return s(o(this,Wt))}set valueId(t){h(o(this,Wt),t,!0)}get highlightedNode(){return s(o(this,Ut))}set highlightedNode(t){h(o(this,Ut),t,!0)}get highlightedValue(){return s(o(this,Bt))}set highlightedValue(t){h(o(this,Bt),t)}get highlightedId(){return s(o(this,zt))}set highlightedId(t){h(o(this,zt),t)}get highlightedLabel(){return s(o(this,qt))}set highlightedLabel(t){h(o(this,qt),t)}setHighlightedNode(t,e=!1){this.highlightedNode=t,t&&(this.isUsingKeyboard||e)&&t.scrollIntoView({block:this.opts.scrollAlignment.current})}getCandidateNodes(){const t=this.contentNode;return t?Array.from(t.querySelectorAll(`[${this.getBitsAttr("item")}]:not([data-disabled])`)):[]}setHighlightedToFirstCandidate(t=!1){this.setHighlightedNode(null);let e=this.getCandidateNodes();if(e.length){if(this.viewportNode){const i=this.viewportNode.getBoundingClientRect();e=e.filter(n=>{if(!this.viewportNode)return!1;const f=n.getBoundingClientRect();return f.right<=i.right&&f.left>=i.left&&f.bottom<=i.bottom&&f.top>=i.top})}this.setHighlightedNode(e[0],t)}}getNodeByValue(t){return this.getCandidateNodes().find(i=>i.dataset.value===t)??null}setOpen(t){this.opts.open.current=t}toggleOpen(){this.opts.open.current=!this.opts.open.current}handleOpen(){this.setOpen(!0)}handleClose(){this.setHighlightedNode(null),this.setOpen(!1)}toggleMenu(){this.toggleOpen()}}Lt=new WeakMap,Rt=new WeakMap,Vt=new WeakMap,Kt=new WeakMap,Ft=new WeakMap,Wt=new WeakMap,Ut=new WeakMap,Bt=new WeakMap,zt=new WeakMap,qt=new WeakMap;var Gt,Jt,jt,Yt;class Or extends _s{constructor(e){super(e);y(this,"opts");y(this,"isMulti",!1);p(this,Gt,_(()=>this.opts.value.current!==""));p(this,Jt,_(()=>{var e;return this.opts.items.current.length?((e=this.opts.items.current.find(i=>i.value===this.opts.value.current))==null?void 0:e.label)??"":""}));p(this,jt,_(()=>this.opts.items.current.length?this.opts.items.current.filter(i=>!i.disabled).map(i=>i.label):[]));p(this,Yt,_(()=>!(this.isMulti||this.opts.items.current.length===0)));this.opts=e,Se(()=>{!this.opts.open.current&&this.highlightedNode&&this.setHighlightedNode(null)}),Mt(()=>this.opts.open.current,()=>{this.opts.open.current&&this.setInitialHighlightedNode()})}get hasValue(){return s(o(this,Gt))}set hasValue(e){h(o(this,Gt),e)}get currentLabel(){return s(o(this,Jt))}set currentLabel(e){h(o(this,Jt),e)}get candidateLabels(){return s(o(this,jt))}set candidateLabels(e){h(o(this,jt),e)}get dataTypeaheadEnabled(){return s(o(this,Yt))}set dataTypeaheadEnabled(e){h(o(this,Yt),e)}includesItem(e){return this.opts.value.current===e}toggleItem(e,i=e){const n=this.includesItem(e)?"":e;this.opts.value.current=n,n!==""&&(this.opts.inputValue.current=i)}setInitialHighlightedNode(){ds(()=>{if(!(this.highlightedNode&&this.domContext.getDocument().contains(this.highlightedNode))){if(this.opts.value.current!==""){const e=this.getNodeByValue(this.opts.value.current);if(e){this.setHighlightedNode(e,!0);return}}this.setHighlightedToFirstCandidate(!0)}})}}Gt=new WeakMap,Jt=new WeakMap,jt=new WeakMap,Yt=new WeakMap;var Qt;class Er extends _s{constructor(e){super(e);y(this,"opts");y(this,"isMulti",!0);p(this,Qt,_(()=>this.opts.value.current.length>0));this.opts=e,Se(()=>{!this.opts.open.current&&this.highlightedNode&&this.setHighlightedNode(null)}),Mt(()=>this.opts.open.current,()=>{this.opts.open.current&&this.setInitialHighlightedNode()})}get hasValue(){return s(o(this,Qt))}set hasValue(e){h(o(this,Qt),e)}includesItem(e){return this.opts.value.current.includes(e)}toggleItem(e,i=e){this.includesItem(e)?this.opts.value.current=this.opts.value.current.filter(n=>n!==e):this.opts.value.current=[...this.opts.value.current,e],this.opts.inputValue.current=i}setInitialHighlightedNode(){ds(()=>{if(this.domContext&&!(this.highlightedNode&&this.domContext.getDocument().contains(this.highlightedNode))){if(this.opts.value.current.length&&this.opts.value.current[0]!==""){const e=this.getNodeByValue(this.opts.value.current[0]);if(e){this.setHighlightedNode(e,!0);return}}this.setHighlightedToFirstCandidate(!0)}})}}Qt=new WeakMap;class Ar{static create(t){const{type:e,...i}=t,n=e==="single"?new Or(i):new Er(i);return ue.set(n)}}var _t,Tt,$,ys,Re,Ve,Xt;const qe=class qe{constructor(t,e){p(this,$);y(this,"opts");y(this,"root");y(this,"attachment");p(this,_t);p(this,Tt);p(this,Xt,_(()=>({id:this.opts.id.current,disabled:this.root.opts.disabled.current?!0:void 0,"aria-haspopup":"listbox","aria-expanded":tr(this.root.opts.open.current),"aria-activedescendant":this.root.highlightedId,"data-state":vs(this.root.opts.open.current),"data-disabled":gs(this.root.opts.disabled.current),"data-placeholder":this.root.hasValue?void 0:"",[this.root.getBitsAttr("trigger")]:"",onpointerdown:this.onpointerdown,onkeydown:this.onkeydown,onclick:this.onclick,onpointerup:this.onpointerup,...this.attachment})));this.opts=t,this.root=e,this.attachment=xe(t.ref,i=>this.root.triggerNode=i),this.root.domContext=new Be(t.ref),ct(this,_t,new Cr({getCurrentItem:()=>this.root.highlightedNode,onMatch:i=>{this.root.setHighlightedNode(i)},getActiveElement:()=>this.root.domContext.getActiveElement(),getWindow:()=>this.root.domContext.getWindow()})),ct(this,Tt,new Pr({getCurrentItem:()=>this.root.isMulti?"":this.root.currentLabel,onMatch:i=>{if(this.root.isMulti||!this.root.opts.items.current)return;const n=this.root.opts.items.current.find(f=>f.label===i);n&&(this.root.opts.value.current=n.value)},enabled:()=>!this.root.isMulti&&this.root.dataTypeaheadEnabled,candidateValues:()=>this.root.isMulti?[]:this.root.candidateLabels,getWindow:()=>this.root.domContext.getWindow()})),this.onkeydown=this.onkeydown.bind(this),this.onpointerdown=this.onpointerdown.bind(this),this.onpointerup=this.onpointerup.bind(this),this.onclick=this.onclick.bind(this)}static create(t){return new qe(t,ue.get())}onkeydown(t){if(this.root.isUsingKeyboard=!0,(t.key===It||t.key===Ht)&&t.preventDefault(),!this.root.opts.open.current){if(t.key===os||t.key===Ae||t.key===Ht||t.key===It)t.preventDefault(),this.root.handleOpen();else if(!this.root.isMulti&&this.root.dataTypeaheadEnabled){o(this,Tt).handleTypeaheadSearch(t.key);return}if(this.root.hasValue)return;const a=this.root.getCandidateNodes();if(!a.length)return;if(t.key===Ht){const u=a[0];this.root.setHighlightedNode(u)}else if(t.key===It){const u=a[a.length-1];this.root.setHighlightedNode(u)}return}if(t.key===is){this.root.handleClose();return}if((t.key===os||t.key===Ae&&o(this,_t).search==="")&&!t.isComposing&&(t.preventDefault(),xt(this,$,Ve).call(this)))return;if(t.key===It&&t.altKey&&this.root.handleClose(),kr.includes(t.key)){t.preventDefault();const a=this.root.getCandidateNodes(),u=this.root.highlightedNode,g=u?a.indexOf(u):-1,w=this.root.opts.loop.current;let c;if(t.key===Ht?c=mr(a,g,w):t.key===It?c=br(a,g,w):t.key===ps?c=_r(a,g,10,w):t.key===us?c=yr(a,g,10,w):t.key===cs?c=a[0]:t.key===fs&&(c=a[a.length-1]),!c)return;this.root.setHighlightedNode(c);return}const e=t.ctrlKey||t.altKey||t.metaKey,i=t.key.length===1,n=t.key===Ae,f=this.root.getCandidateNodes();if(t.key!==is){if(!e&&(i||n)){!o(this,_t).handleTypeaheadSearch(t.key,f)&&n&&(t.preventDefault(),xt(this,$,Ve).call(this));return}this.root.highlightedNode||this.root.setHighlightedToFirstCandidate()}}onclick(t){t.currentTarget.focus()}onpointerdown(t){if(this.root.opts.disabled.current)return;if(t.pointerType==="touch")return t.preventDefault();const e=t.target;e!=null&&e.hasPointerCapture(t.pointerId)&&(e==null||e.releasePointerCapture(t.pointerId)),t.button===0&&t.ctrlKey===!1&&(this.root.opts.open.current===!1?xt(this,$,Re).call(this,t):this.root.handleClose())}onpointerup(t){this.root.opts.disabled.current||(t.preventDefault(),t.pointerType==="touch"&&(this.root.opts.open.current===!1?xt(this,$,Re).call(this,t):this.root.handleClose()))}get props(){return s(o(this,Xt))}set props(t){h(o(this,Xt),t)}};_t=new WeakMap,Tt=new WeakMap,$=new WeakSet,ys=function(){this.root.opts.open.current=!0,o(this,Tt).resetTypeahead(),o(this,_t).resetTypeahead()},Re=function(t){xt(this,$,ys).call(this)},Ve=function(){const t=this.root.highlightedValue===this.root.opts.value.current;return!this.root.opts.allowDeselect.current&&t&&!this.root.isMulti?(this.root.handleClose(),!0):(this.root.highlightedValue!==null&&this.root.toggleItem(this.root.highlightedValue,this.root.highlightedLabel??void 0),!this.root.isMulti&&!t?(this.root.handleClose(),!0):!1)},Xt=new WeakMap;let Le=qe;var Zt,Ce,$t,te;const Ge=class Ge{constructor(t,e){y(this,"opts");y(this,"root");y(this,"attachment");p(this,Zt,j(!1));y(this,"domContext");p(this,Ce,_(()=>nr(this.root.isCombobox?"combobox":"select")));y(this,"onInteractOutside",t=>{if(t.target===this.root.triggerNode||t.target===this.root.inputNode){t.preventDefault();return}this.opts.onInteractOutside.current(t),!t.defaultPrevented&&this.root.handleClose()});y(this,"onEscapeKeydown",t=>{this.opts.onEscapeKeydown.current(t),!t.defaultPrevented&&this.root.handleClose()});y(this,"onOpenAutoFocus",t=>{t.preventDefault()});y(this,"onCloseAutoFocus",t=>{t.preventDefault()});p(this,$t,_(()=>({open:this.root.opts.open.current})));p(this,te,_(()=>({id:this.opts.id.current,role:"listbox","aria-multiselectable":this.root.isMulti?"true":void 0,"data-state":vs(this.root.opts.open.current),[this.root.getBitsAttr("content")]:"",style:{display:"flex",flexDirection:"column",outline:"none",boxSizing:"border-box",pointerEvents:"auto",...s(o(this,Ce))},onpointermove:this.onpointermove,...this.attachment})));y(this,"popperProps",{onInteractOutside:this.onInteractOutside,onEscapeKeydown:this.onEscapeKeydown,onOpenAutoFocus:this.onOpenAutoFocus,onCloseAutoFocus:this.onCloseAutoFocus,trapFocus:!1,loop:!1,onPlaced:()=>{this.root.opts.open.current&&(this.isPositioned=!0)}});this.opts=t,this.root=e,this.attachment=xe(t.ref,i=>this.root.contentNode=i),this.domContext=new Be(this.opts.ref),this.root.domContext===null&&(this.root.domContext=this.domContext),er(()=>{this.root.contentNode=null,this.isPositioned=!1}),Mt(()=>this.root.opts.open.current,()=>{this.root.opts.open.current||(this.isPositioned=!1)}),this.onpointermove=this.onpointermove.bind(this)}static create(t){return bs.set(new Ge(t,ue.get()))}get isPositioned(){return s(o(this,Zt))}set isPositioned(t){h(o(this,Zt),t,!0)}onpointermove(t){this.root.isUsingKeyboard=!1}get shouldRender(){return this.root.contentPresence.shouldRender}get snippetProps(){return s(o(this,$t))}set snippetProps(t){h(o(this,$t),t)}get props(){return s(o(this,te))}set props(t){h(o(this,te),t)}};Zt=new WeakMap,Ce=new WeakMap,$t=new WeakMap,te=new WeakMap;let Ke=Ge;var ee,se,re,oe,ie;const Je=class Je{constructor(t,e){y(this,"opts");y(this,"root");y(this,"attachment");p(this,ee,_(()=>this.root.includesItem(this.opts.value.current)));p(this,se,_(()=>this.root.highlightedValue===this.opts.value.current));y(this,"prevHighlighted",new gr(()=>this.isHighlighted));p(this,re,j(!1));p(this,oe,_(()=>({selected:this.isSelected,highlighted:this.isHighlighted})));p(this,ie,_(()=>({id:this.opts.id.current,role:"option","aria-selected":this.root.includesItem(this.opts.value.current)?"true":void 0,"data-value":this.opts.value.current,"data-disabled":gs(this.opts.disabled.current),"data-highlighted":this.root.highlightedValue===this.opts.value.current&&!this.opts.disabled.current?"":void 0,"data-selected":this.root.includesItem(this.opts.value.current)?"":void 0,"data-label":this.opts.label.current,[this.root.getBitsAttr("item")]:"",onpointermove:this.onpointermove,onpointerdown:this.onpointerdown,onpointerup:this.onpointerup,...this.attachment})));this.opts=t,this.root=e,this.attachment=xe(t.ref),Mt([()=>this.isHighlighted,()=>this.prevHighlighted.current],()=>{this.isHighlighted?this.opts.onHighlight.current():this.prevHighlighted.current&&this.opts.onUnhighlight.current()}),Mt(()=>this.mounted,()=>{this.mounted&&this.root.setInitialHighlightedNode()}),this.onpointerdown=this.onpointerdown.bind(this),this.onpointerup=this.onpointerup.bind(this),this.onpointermove=this.onpointermove.bind(this)}static create(t){return new Je(t,ue.get())}get isSelected(){return s(o(this,ee))}set isSelected(t){h(o(this,ee),t)}get isHighlighted(){return s(o(this,se))}set isHighlighted(t){h(o(this,se),t)}get mounted(){return s(o(this,re))}set mounted(t){h(o(this,re),t,!0)}handleSelect(){if(this.opts.disabled.current)return;const t=this.opts.value.current===this.root.opts.value.current;if(!this.root.opts.allowDeselect.current&&t&&!this.root.isMulti){this.root.handleClose();return}this.root.toggleItem(this.opts.value.current,this.opts.label.current),!this.root.isMulti&&!t&&this.root.handleClose()}get snippetProps(){return s(o(this,oe))}set snippetProps(t){h(o(this,oe),t)}onpointerdown(t){t.preventDefault()}onpointerup(t){if(!(t.defaultPrevented||!this.opts.ref.current)){if(t.pointerType==="touch"&&!sr){qs(this.opts.ref.current,"click",()=>{this.handleSelect(),this.root.setHighlightedNode(this.opts.ref.current)},{once:!0});return}t.preventDefault(),this.handleSelect(),t.pointerType==="touch"&&this.root.setHighlightedNode(this.opts.ref.current)}}onpointermove(t){t.pointerType!=="touch"&&this.root.highlightedNode!==this.opts.ref.current&&this.root.setHighlightedNode(this.opts.ref.current)}get props(){return s(o(this,ie))}set props(t){h(o(this,ie),t)}};ee=new WeakMap,se=new WeakMap,re=new WeakMap,oe=new WeakMap,ie=new WeakMap;let Fe=Je;var ne,ae;const je=class je{constructor(t,e){y(this,"opts");y(this,"root");p(this,ne,_(()=>this.root.opts.name.current!==""));p(this,ae,_(()=>({disabled:ns(this.root.opts.disabled.current),required:ns(this.root.opts.required.current),name:this.root.opts.name.current,value:this.opts.value.current,onfocus:this.onfocus})));this.opts=t,this.root=e,this.onfocus=this.onfocus.bind(this)}static create(t){return new je(t,ue.get())}get shouldRender(){return s(o(this,ne))}set shouldRender(t){h(o(this,ne),t)}onfocus(t){var e,i;t.preventDefault(),this.root.isCombobox?(i=this.root.inputNode)==null||i.focus():(e=this.root.triggerNode)==null||e.focus()}get props(){return s(o(this,ae))}set props(t){h(o(this,ae),t)}};ne=new WeakMap,ae=new WeakMap;let We=je;var le,he;const Ye=class Ye{constructor(t,e){y(this,"opts");y(this,"content");y(this,"root");y(this,"attachment");p(this,le,j(0));p(this,he,_(()=>({id:this.opts.id.current,role:"presentation",[this.root.getBitsAttr("viewport")]:"",style:{position:"relative",flex:1,overflow:"auto"},...this.attachment})));this.opts=t,this.content=e,this.root=e.root,this.attachment=xe(t.ref,i=>{this.root.viewportNode=i})}static create(t){return new Ye(t,bs.get())}get prevScrollTop(){return s(o(this,le))}set prevScrollTop(t){h(o(this,le),t,!0)}get props(){return s(o(this,he))}set props(t){h(o(this,he),t)}};le=new WeakMap,he=new WeakMap;let Ue=Ye;function He(r,t){ht(t,!0);let e=b(t,"value",15);const i=We.create({value:x(()=>e())});var n=V(),f=O(n);{var a=u=>{xr(u,be(()=>i.props,{get autocomplete(){return t.autocomplete},get value(){return e()},set value(g){e(g)}}))};Y(f,u=>{i.shouldRender&&u(a)})}m(r,n),dt()}var Hr=K("<div><div><!></div></div>"),Dr=K("<div><div><!></div></div>");function Lr(r,t){const e=Ne();ht(t,!0);let i=b(t,"id",19,()=>Pe(e)),n=b(t,"ref",15,null),f=b(t,"forceMount",3,!1),a=b(t,"side",3,"bottom"),u=b(t,"onInteractOutside",3,lt),g=b(t,"onEscapeKeydown",3,lt),w=b(t,"preventScroll",3,!1),c=de(t,["$$slots","$$events","$$legacy","id","ref","forceMount","side","onInteractOutside","onEscapeKeydown","children","child","preventScroll","style"]);const d=Ke.create({id:x(()=>i()),ref:x(()=>n(),S=>n(S)),onInteractOutside:x(()=>u()),onEscapeKeydown:x(()=>g())}),I=_(()=>yt(c,d.props));var v=V(),H=O(v);{var D=S=>{ar(S,be(()=>s(I),()=>d.popperProps,{get ref(){return d.opts.ref},get side(){return a()},get enabled(){return d.root.opts.open.current},get id(){return i()},get preventScroll(){return w()},forceMount:!0,get shouldRender(){return d.shouldRender},popper:(R,P)=>{let U=()=>P==null?void 0:P().props,tt=()=>P==null?void 0:P().wrapperProps;const k=_(()=>yt(U(),{style:d.props.style},{style:t.style}));var J=V(),Q=O(J);{var et=M=>{var E=V(),F=O(E);{let G=_(()=>({props:s(k),wrapperProps:tt(),...d.snippetProps}));X(F,()=>t.child,()=>s(G))}m(M,E)},ft=M=>{var E=Hr();at(E,()=>({...tt()}));var F=N(E);at(F,()=>({...s(k)}));var G=N(F);X(G,()=>t.children??kt),C(F),C(E),m(M,E)};Y(Q,M=>{t.child?M(et):M(ft,-1)})}m(R,J)},$$slots:{popper:!0}}))},W=S=>{lr(S,be(()=>s(I),()=>d.popperProps,{get ref(){return d.opts.ref},get side(){return a()},get open(){return d.root.opts.open.current},get id(){return i()},get preventScroll(){return w()},forceMount:!1,get shouldRender(){return d.shouldRender},popper:(R,P)=>{let U=()=>P==null?void 0:P().props,tt=()=>P==null?void 0:P().wrapperProps;const k=_(()=>yt(U(),{style:d.props.style},{style:t.style}));var J=V(),Q=O(J);{var et=M=>{var E=V(),F=O(E);{let G=_(()=>({props:s(k),wrapperProps:tt(),...d.snippetProps}));X(F,()=>t.child,()=>s(G))}m(M,E)},ft=M=>{var E=Dr();at(E,()=>({...tt()}));var F=N(E);at(F,()=>({...s(k)}));var G=N(F);X(G,()=>t.children??kt),C(F),C(E),m(M,E)};Y(Q,M=>{t.child?M(et):M(ft,-1)})}m(R,J)},$$slots:{popper:!0}}))};Y(H,S=>{f()?S(D):f()||S(W,1)})}m(r,v),dt()}function Rr(r,t){ht(t,!0);let e=b(t,"mounted",15,!1),i=b(t,"onMountedChange",3,lt);vr(()=>(e(!0),i()(!0),()=>{e(!1),i()(!1)})),dt()}var Vr=K("<div><!></div>"),Kr=K("<!> <!>",1);function Fr(r,t){const e=Ne();ht(t,!0);let i=b(t,"id",19,()=>Pe(e)),n=b(t,"ref",15,null),f=b(t,"label",19,()=>t.value),a=b(t,"disabled",3,!1),u=b(t,"onHighlight",3,lt),g=b(t,"onUnhighlight",3,lt),w=de(t,["$$slots","$$events","$$legacy","id","ref","value","label","disabled","children","child","onHighlight","onUnhighlight"]);const c=Fe.create({id:x(()=>i()),ref:x(()=>n(),S=>n(S)),value:x(()=>t.value),disabled:x(()=>a()),label:x(()=>f()),onHighlight:x(()=>u()),onUnhighlight:x(()=>g())}),d=_(()=>yt(w,c.props));var I=Kr(),v=O(I);{var H=S=>{var L=V(),R=O(L);{let P=_(()=>({props:s(d),...c.snippetProps}));X(R,()=>t.child,()=>s(P))}m(S,L)},D=S=>{var L=Vr();at(L,()=>({...s(d)}));var R=N(L);X(R,()=>t.children??kt,()=>c.snippetProps),C(L),m(S,L)};Y(v,S=>{t.child?S(H):S(D,-1)})}var W=B(v,2);Rr(W,{get mounted(){return c.mounted},set mounted(S){c.mounted=S}}),m(r,I),dt()}var Wr=K("<div><!></div>");function Ur(r,t){const e=Ne();ht(t,!0);let i=b(t,"id",19,()=>Pe(e)),n=b(t,"ref",15,null),f=de(t,["$$slots","$$events","$$legacy","id","ref","children","child"]);const a=Ue.create({id:x(()=>i()),ref:x(()=>n(),I=>n(I))}),u=_(()=>yt(f,a.props));var g=V(),w=O(g);{var c=I=>{var v=V(),H=O(v);X(H,()=>t.child,()=>({props:s(u)})),m(I,v)},d=I=>{var v=Wr();at(v,()=>({...s(u)}));var H=N(v);X(H,()=>t.children??kt),C(v),m(I,v)};Y(w,I=>{t.child?I(c):I(d,-1)})}m(r,g),dt()}var Br=K("<!> <!>",1);function zr(r,t){ht(t,!0);let e=b(t,"value",15),i=b(t,"onValueChange",3,lt),n=b(t,"name",3,""),f=b(t,"disabled",3,!1),a=b(t,"open",15,!1),u=b(t,"onOpenChange",3,lt),g=b(t,"onOpenChangeComplete",3,lt),w=b(t,"loop",3,!1),c=b(t,"scrollAlignment",3,"nearest"),d=b(t,"required",3,!1),I=b(t,"items",19,()=>[]),v=b(t,"allowDeselect",3,!1);function H(){e()===void 0&&e(t.type==="single"?"":[])}H(),Mt.pre(()=>e(),()=>{H()});let D=j("");const W=Ar.create({type:t.type,value:x(()=>e(),k=>{e(k),i()(k)}),disabled:x(()=>f()),required:x(()=>d()),open:x(()=>a(),k=>{a(k),u()(k)}),loop:x(()=>w()),scrollAlignment:x(()=>c()),name:x(()=>n()),isCombobox:!1,items:x(()=>I()),allowDeselect:x(()=>v()),inputValue:x(()=>s(D),k=>h(D,k,!0)),onOpenChangeComplete:x(()=>g())});var S=Br(),L=O(S);hr(L,{children:(k,J)=>{var Q=V(),et=O(Q);X(et,()=>t.children??kt),m(k,Q)},$$slots:{default:!0}});var R=B(L,2);{var P=k=>{var J=V(),Q=O(J);{var et=M=>{He(M,{get autocomplete(){return t.autocomplete}})},ft=M=>{var E=V(),F=O(E);De(F,16,()=>W.opts.value.current,G=>G,(G,ce)=>{He(G,{get value(){return ce},get autocomplete(){return t.autocomplete}})}),m(M,E)};Y(Q,M=>{W.opts.value.current.length===0?M(et):M(ft,-1)})}m(k,J)},U=_(()=>Array.isArray(W.opts.value.current)),tt=k=>{He(k,{get autocomplete(){return t.autocomplete},get value(){return W.opts.value.current},set value(J){W.opts.value.current=J}})};Y(R,k=>{s(U)?k(P):k(tt,-1)})}m(r,S),dt()}var qr=K("<button><!></button>");function Gr(r,t){const e=Ne();ht(t,!0);let i=b(t,"id",19,()=>Pe(e)),n=b(t,"ref",15,null),f=b(t,"type",3,"button"),a=de(t,["$$slots","$$events","$$legacy","id","ref","child","children","type"]);const u=Le.create({id:x(()=>i()),ref:x(()=>n(),d=>n(d))}),g=_(()=>yt(a,u.props,{type:f()}));var w=V(),c=O(w);ur(c,()=>dr,(d,I)=>{I(d,{get id(){return i()},get ref(){return u.opts.ref},children:(v,H)=>{var D=V(),W=O(D);{var S=R=>{var P=V(),U=O(P);X(U,()=>t.child,()=>({props:s(g)})),m(R,P)},L=R=>{var P=qr();at(P,()=>({...s(g)}));var U=N(P);X(U,()=>t.children??kt),C(P),m(R,P)};Y(W,R=>{t.child?R(S):R(L,-1)})}m(v,D)},$$slots:{default:!0}})}),m(r,w),dt()}function Jr(r,t){const e=ir(t,["children","$$slots","$$events","$$legacy"]);/**
|
|
2
|
-
* @license lucide-svelte v0.460.1 - ISC
|
|
3
|
-
*
|
|
4
|
-
* This source code is licensed under the ISC license.
|
|
5
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
-
*/const i=[["path",{d:"m6 9 6 6 6-6"}]];rr(r,be({name:"chevron-down"},()=>e,{get iconNode(){return i},children:(n,f)=>{var a=V(),u=O(a);cr(u,t,"default",{}),m(n,a)},$$slots:{default:!0}}))}var jr=K("<span> </span> <!>",1),Yr=K("<!> <!>",1),Qr=K('<div class="state err svelte-1lsf4ps"> </div>'),Xr=K('<div class="state svelte-1lsf4ps">加载中…</div>'),Zr=K('<div class="state svelte-1lsf4ps">暂无日志</div>'),$r=K('<tr class="payload-row svelte-1lsf4ps"><td colspan="4" class="svelte-1lsf4ps"><pre class="payload-content svelte-1lsf4ps"> </pre></td></tr>'),to=K('<tr class="log-row svelte-1lsf4ps" role="button" tabindex="0"><td class="td-time svelte-1lsf4ps"> </td><td class="td-level svelte-1lsf4ps"><span> </span></td><td class="td-cat svelte-1lsf4ps"> </td><td class="td-msg svelte-1lsf4ps"> </td></tr> <!>',1),eo=K('<div class="log-has-data svelte-1lsf4ps"><div class="log-table-scroll svelte-1lsf4ps"><div class="table-wrap svelte-1lsf4ps"><table class="svelte-1lsf4ps"><thead class="svelte-1lsf4ps"><tr><th class="th-time svelte-1lsf4ps">时间</th><th class="th-level svelte-1lsf4ps">级别</th><th class="th-cat svelte-1lsf4ps">分类</th><th class="th-msg svelte-1lsf4ps">消息</th></tr></thead><tbody class="svelte-1lsf4ps"></tbody></table></div></div> <div class="log-toolbar svelte-1lsf4ps"><span class="pagination-info svelte-1lsf4ps"> </span> <div class="pagination-btns svelte-1lsf4ps"><button class="btn btn-secondary btn-sm svelte-1lsf4ps">上一页</button> <button class="btn btn-secondary btn-sm svelte-1lsf4ps">下一页</button></div></div></div>'),so=K('<div class="feed-wrap svelte-1lsf4ps"><div class="feed-col svelte-1lsf4ps"><div class="feed-toolbar-block svelte-1lsf4ps"><div class="admin-feed-header"><div class="admin-feed-header__left"><h2>日志</h2> <p class="admin-feed-header__desc">查看运行日志、筛选分类与级别</p></div> <div class="admin-feed-header__actions"><input type="search" class="admin-toolbar-input log-filter-input svelte-1lsf4ps" placeholder="过滤…" autocomplete="off" spellcheck="false" aria-label="分类"/> <!> <button class="admin-toolbar-btn admin-toolbar-btn--danger" type="button" title="清空全部日志">清空</button></div></div></div> <div class="log-body-scroll svelte-1lsf4ps"><!></div></div></div>');function No(r,t){ht(t,!1);const e=Z(),n=[{value:"",label:"全部"},...["error","warn","info","debug"].map(l=>({value:l,label:l}))],f=350;let a=Z([]),u=Z(0),g=Z(!1),w=Z(""),c=Z(""),d=Z(""),I=null,v=Z(0),H=Z(null),D=Z(!1);const W=100;function S(){I&&(clearTimeout(I),I=null)}function L(){S(),I=setTimeout(()=>{I=null,h(v,0),U()},f)}function R(l){h(c,l),h(v,0),U()}Ls(()=>{U()}),Rs(()=>{S()});function P(){const l=new URLSearchParams;l.set("limit",String(W)),l.set("offset",String(s(v))),s(c)&&l.set("level",s(c));const T=s(d).trim();return T&&l.set("category",T),"/api/logs?"+l.toString()}async function U(){h(g,!0),h(w,"");try{const l=await rs(P());if(!l.ok)throw new Error(await l.text().catch(()=>`HTTP ${l.status}`));const T=await l.json();h(a,T.items??[]),h(u,T.total??0)}catch(l){h(w,l instanceof Error?l.message:String(l)),h(a,[]),h(u,0)}finally{h(g,!1)}}async function tt(){if(confirm("确定清空全部日志?此操作不可恢复。")){h(D,!0),S();try{const l=await rs("/api/logs",{method:"DELETE"}),T=await l.text();let z={};try{z=T?JSON.parse(T):{}}catch{z={}}if(!l.ok){Ee(z.error||T||`HTTP ${l.status}`,"error");return}z.ok&&(Ee(z.deleted!=null?`已清空 ${z.deleted} 条`:"已清空日志","success"),h(v,0),h(H,null),await U())}catch(l){Ee(l instanceof Error?l.message:String(l),"error")}finally{h(D,!1)}}}function k(){s(v)<=0||(h(v,Math.max(0,s(v)-W)),U())}function J(){s(v)+s(a).length>=s(u)||(h(v,s(v)+W),U())}function Q(l){h(H,s(H)===l?null:l)}function et(l){try{return new Date(l).toLocaleString("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})}catch{return l}}function ft(l){if(!l)return"";try{return JSON.stringify(JSON.parse(l),null,2)}catch{return l}}Fs(()=>s(c),()=>{var l;h(e,((l=n.find(T=>T.value===s(c)))==null?void 0:l.label)??"全部")}),Ws(),Qs();var M=so();Gs("1lsf4ps",l=>{Us(()=>{Bs.title=`日志 - ${Js}`})});var E=N(M),F=N(E),G=N(F),ce=B(N(G),2),pe=N(ce);js(pe);var Qe=B(pe,2);zr(Qe,{type:"single",get value(){return s(c)},onValueChange:R,get items(){return n},children:(l,T)=>{var z=Yr(),Ot=O(z);Gr(Ot,{class:"log-level-trigger","aria-label":"级别",children:(wt,ge)=>{var ut=jr(),Ct=O(ut),Nt=N(Ct,!0);C(Ct);var St=B(Ct,2);Jr(St,{size:14,"aria-hidden":"true"}),mt(()=>rt(Nt,s(e))),m(wt,ut)},$$slots:{default:!0}});var fe=B(Ot,2);or(fe,{children:(wt,ge)=>{Lr(wt,{class:"log-level-content",sideOffset:4,children:(ut,Ct)=>{Ur(ut,{class:"log-level-viewport",children:(Nt,St)=>{var Et=V(),At=O(Et);De(At,1,()=>n,A=>A.value,(A,st)=>{Fr(A,{class:"log-level-item",get value(){return s(st),q(()=>s(st).value)},get label(){return s(st),q(()=>s(st).label)},children:(gt,ve)=>{zs();var me=Ds();mt(()=>rt(me,(s(st),q(()=>s(st).label)))),m(gt,me)},$$slots:{default:!0}})}),m(Nt,Et)},$$slots:{default:!0}})},$$slots:{default:!0}})},$$slots:{default:!0}}),m(l,z)},$$slots:{default:!0}});var Xe=B(Qe,2);C(ce),C(G),C(F);var Ze=B(F,2),ws=N(Ze);{var Cs=l=>{var T=Qr(),z=N(T,!0);C(T),mt(()=>rt(z,s(w))),m(l,T)},Ns=l=>{var T=Xr();m(l,T)},Ss=l=>{var T=Zr();m(l,T)},xs=l=>{var T=eo(),z=N(T),Ot=N(z),fe=N(Ot),wt=B(N(fe));De(wt,5,()=>s(a),At=>At.id,(At,A)=>{var st=to(),gt=O(st),ve=N(gt),me=N(ve,!0);C(ve);var Ie=B(ve),Te=N(Ie),Ps=N(Te,!0);C(Te),C(Ie);var ke=B(Ie),Is=N(ke,!0);C(ke);var $e=B(ke),Ts=N($e,!0);C($e),C(gt);var ks=B(gt,2);{var Ms=vt=>{var Me=$r(),ts=N(Me),es=N(ts),Os=N(es,!0);C(es),C(ts),C(Me),mt(Es=>rt(Os,Es),[()=>(s(A),q(()=>ft(s(A).payload)))]),m(vt,Me)};Y(ks,vt=>{s(H),s(A),q(()=>s(H)===s(A).id&&s(A).payload)&&vt(Ms)})}mt(vt=>{rt(me,vt),Ys(Te,1,`badge level-${s(A),q(()=>s(A).level)??""}`,"svelte-1lsf4ps"),rt(Ps,(s(A),q(()=>s(A).level))),rt(Is,(s(A),q(()=>s(A).category))),rt(Ts,(s(A),q(()=>s(A).message)))},[()=>(s(A),q(()=>et(s(A).created_at)))]),Pt("click",gt,()=>Q(s(A).id)),Pt("keydown",gt,vt=>vt.key==="Enter"&&Q(s(A).id)),m(At,st)}),C(wt),C(fe),C(Ot),C(z);var ge=B(z,2),ut=N(ge),Ct=N(ut);C(ut);var Nt=B(ut,2),St=N(Nt),Et=B(St,2);C(Nt),C(ge),C(T),mt(()=>{rt(Ct,`共 ${s(u)??""} 条,当前 ${s(a),s(v),q(()=>s(a).length?`${s(v)+1}–${s(v)+s(a).length}`:"—")??""}`),St.disabled=s(v)<=0||s(g),Et.disabled=(s(v),s(a),s(u),s(g),q(()=>s(v)+s(a).length>=s(u)||s(g)))}),Pt("click",St,k),Pt("click",Et,J),m(l,T)};Y(ws,l=>{s(w)?l(Cs):(s(g),s(a),q(()=>s(g)&&s(a).length===0)?l(Ns,1):(s(a),q(()=>s(a).length===0)?l(Ss,2):l(xs,-1)))})}C(Ze),C(E),C(M),mt(()=>Xe.disabled=s(g)||s(D)),ls(pe,()=>s(d),l=>h(d,l)),Pt("input",pe,L),Pt("click",Xe,tt),m(r,M),dt()}export{No as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as u,t as st,f as p}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as Tt}from"../chunks/Dyvi1wBH.js";import{at as Et,aC as ht,aD as Lt,f as rt,i as t,au as Ot,d as Nt,av as l,az as lt,a5 as o,aw as c,z as h,$ as zt,ax as s,U as b,ay as K}from"../chunks/vtBo8kBV.js";import{d as Jt,a as D,e as Mt,s as Q}from"../chunks/B2cyTHdf.js";import{g as Bt}from"../chunks/ClknbeNl.js";import{i as q}from"../chunks/BkD3yAYe.js";import{e as Ft}from"../chunks/CFwxUBGi.js";import{h as Ht}from"../chunks/DL3Q5sfb.js";import{s as O,P as Kt,r as ot}from"../chunks/DoRPmqLn.js";import{b as it}from"../chunks/C8umpVpB.js";import{i as Qt}from"../chunks/DVa8Y-mQ.js";import{a as G}from"../chunks/CBY2biv-.js";import{p as qt}from"../chunks/CqYSO3Dx.js";import{g as nt}from"../chunks/CVW0ymE1.js";import{s as m}from"../chunks/CGCMIfh3.js";import{P as Gt}from"../chunks/D6kzEN_P.js";import{D as Vt,a as Wt,b as Xt,c as Yt,d as bt}from"../chunks/DAdOEnFb.js";import{P as Zt}from"../chunks/DsxvjlCC.js";var te=p('<div class="state svelte-1nj0iur">加载中…</div>'),ee=p('<div class="state error svelte-1nj0iur"> </div>'),ae=p('<div class="state svelte-1nj0iur">暂无已加载插件。可 <button type="button" class="link-btn svelte-1nj0iur">添加插件</button> 从模板创建,或在 <code>app/plugins/builtin/</code>、<code>.rssany/plugins/</code> 放置 *.rssany.js / *.rssany.ts</div>'),se=p('<div class="state svelte-1nj0iur">无匹配结果</div>'),re=p('<span class="kind-badge svelte-1nj0iur">Source</span>'),le=p('<button type="button" class="cell-btn cell-btn--primary svelte-1nj0iur">登录</button>'),oe=p('<span class="cell-dash svelte-1nj0iur" title="未声明站点登录">—</span>'),ie=p('<button type="button" class="cell-btn cell-btn--secondary svelte-1nj0iur">检查登录</button>'),ne=p('<span class="cell-dash svelte-1nj0iur" title="未声明站点登录">—</span>'),de=p('<tr class="plugin-row svelte-1nj0iur" tabindex="0"><td class="td-name svelte-1nj0iur"><div class="name-cell svelte-1nj0iur"><span class="plugin-id-text svelte-1nj0iur"> </span> <!></div></td><td class="td-pattern svelte-1nj0iur"><span class="pattern-text svelte-1nj0iur"> </span></td><td class="td-login svelte-1nj0iur"><!></td><td class="td-check svelte-1nj0iur"><!></td></tr>'),ce=p('<div class="plugin-table-wrap svelte-1nj0iur"><table class="plugin-table svelte-1nj0iur"><thead class="svelte-1nj0iur"><tr><th class="th-name svelte-1nj0iur" scope="col">插件名</th><th class="th-pattern svelte-1nj0iur" scope="col">匹配规则</th><th class="th-login svelte-1nj0iur" scope="col">登录</th><th class="th-check svelte-1nj0iur" scope="col">检查登录</th></tr></thead><tbody class="svelte-1nj0iur"></tbody></table></div>'),ve=p('<div class="modal-header svelte-1nj0iur"><!> <!></div> <form class="modal-body svelte-1nj0iur"><p class="add-hint svelte-1nj0iur">对于不支持RSS的站点,添加插件可以覆盖特定站点的解析规则</p> <div class="field svelte-1nj0iur"><span class="field-label svelte-1nj0iur">站点匹配规则</span> <input class="field-input svelte-1nj0iur" type="text" name="listUrlPattern" placeholder="例如 https://www.example.com/* 或 https://example.com/list/{segment}" autocomplete="off"/></div> <div class="field svelte-1nj0iur"><span class="field-label svelte-1nj0iur">插件 id</span> <input class="field-input svelte-1nj0iur" type="text" name="pluginId" placeholder="例如 my-site" autocomplete="off"/></div> <div class="modal-footer svelte-1nj0iur"><div class="modal-footer-right svelte-1nj0iur"><!> <button type="submit" class="btn-save svelte-1nj0iur"> </button></div></div></form>',1),ue=p("<!> <!>",1),pe=p('<div class="feed-wrap svelte-1nj0iur"><div class="feed-col svelte-1nj0iur"><div class="plugins-toolbar-block svelte-1nj0iur"><div class="admin-feed-header"><div class="admin-feed-header__left"><h2>插件</h2> <p class="admin-feed-header__desc">管理站点解析插件与登录检查</p></div> <div class="admin-feed-header__actions"><input class="admin-toolbar-input" type="search" placeholder="过滤…" autocomplete="off"/> <button type="button" class="btn-add svelte-1nj0iur" title="添加插件" aria-label="添加插件"><!></button></div></div></div> <div class="plugins-body-scroll svelte-1nj0iur"><!></div></div></div> <!>',1);function Re(gt,jt){Et(jt,!1);const U=h(),N=h();let $=h([]),z=h(""),V=h(!0),C=h(!1),j=h(""),y=h(""),S=h(!1),J=h("");function dt(){o(j,""),o(y,""),o(C,!0)}function yt(e){o(C,e),e||(o(j,""),o(y,""))}async function wt(e){e.preventDefault();const a=t(j).trim(),i=t(y).trim();if(!a){m("请填写插件 id","error");return}if(!i){m("请填写支持的站点(URL 或匹配规则)","error");return}o(S,!0);try{const n=await G("/api/plugins",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({id:a,listUrlPattern:i})}),_=await n.text();let r={};try{r=_?JSON.parse(_):{}}catch{r={}}if(!n.ok){m(r.error||_||`HTTP ${n.status}`,"error");return}r.ok&&(m("已创建插件文件","success"),o(C,!1),o(j,""),o(y,""),await ct(),await nt("/plugins/"+encodeURIComponent(a)))}catch(n){m("请求失败: "+(n instanceof Error?n.message:String(n)),"error")}finally{o(S,!1)}}async function ct(){o(V,!0),o(z,"");try{const a=await(await G("/api/plugins")).json();o($,[...a].sort((i,n)=>(n.hasAuth?1:0)-(i.hasAuth?1:0)))}catch(e){o(z,"加载失败: "+(e instanceof Error?e.message:String(e)))}finally{o(V,!1)}}async function Pt(e,a){a.preventDefault(),a.stopPropagation();try{const n=await(await G(`/auth/check?siteId=${encodeURIComponent(e.id)}`)).json();n.ok?m(`${e.id}:${n.authenticated?"✓ 已登录":"✗ 未登录"}`,n.authenticated?"success":"error"):m(n.message||"检查失败","error")}catch(i){m("请求失败: "+(i instanceof Error?i.message:String(i)),"error")}}function vt(e){nt("/plugins/"+encodeURIComponent(e.id))}function kt(e,a){(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),vt(e))}async function $t(e,a){a.preventDefault(),a.stopPropagation();try{const n=await(await G(`/auth/open?siteId=${encodeURIComponent(e.id)}`,{method:"POST"})).json();n.ok?m(n.message||"已打开登录页面","success"):m(n.message||"打开失败","error")}catch(i){m("请求失败: "+(i instanceof Error?i.message:String(i)),"error")}}Tt(()=>{ct(),Bt(qt).url.searchParams.get("openAdd")==="1"&&(o(j,""),o(y,""),o(C,!0),nt("/plugins",{replaceState:!0}))}),ht(()=>t(J),()=>{o(U,t(J).trim().toLowerCase())}),ht(()=>(t(U),t($)),()=>{o(N,t(U)?t($).filter(e=>e.id.toLowerCase().includes(t(U))||e.listUrlPattern.toLowerCase().includes(t(U))):t($))}),Lt(),Qt();var ut=pe();Ht("1nj0iur",e=>{Nt(()=>{zt.title=`插件 - ${Kt}`})});var W=rt(ut),pt=l(W),X=l(pt),ft=l(X),mt=c(l(ft),2),M=l(mt);ot(M),O(M,"spellcheck",!1);var Y=c(M,2),xt=l(Y);Gt(xt,{size:16,"aria-hidden":"true"}),s(Y),s(mt),s(ft),s(X);var _t=c(X,2),Dt=l(_t);{var Ut=e=>{var a=te();u(e,a)},Ct=e=>{var a=ee(),i=l(a,!0);s(a),lt(()=>Q(i,t(z))),u(e,a)},St=e=>{var a=ae(),i=c(l(a));K(5),s(a),D("click",i,dt),u(e,a)},At=e=>{var a=se();u(e,a)},It=e=>{var a=ce(),i=l(a),n=c(l(i));Ft(n,5,()=>t(N),_=>_.id,(_,r)=>{var g=de(),A=l(g),Z=l(A),x=l(Z),I=l(x,!0);s(x);var B=c(x,2);{var tt=d=>{var v=re();u(d,v)};q(B,d=>{t(r),b(()=>t(r).kind==="source")&&d(tt)})}s(Z),s(A);var w=c(A),P=l(w),R=l(P,!0);s(P),s(w);var k=c(w),T=l(k);{var F=d=>{var v=le();D("click",v,at=>$t(t(r),at)),u(d,v)},H=d=>{var v=oe();u(d,v)};q(T,d=>{t(r),b(()=>t(r).hasAuth)?d(F):d(H,-1)})}s(k);var E=c(k),L=l(E);{var et=d=>{var v=ie();D("click",v,at=>Pt(t(r),at)),u(d,v)},f=d=>{var v=ne();u(d,v)};q(L,d=>{t(r),b(()=>t(r).hasAuth)?d(et):d(f,-1)})}s(E),s(g),lt(()=>{O(g,"aria-label",`打开插件 ${t(r),b(()=>t(r).id)??""}`),Q(I,(t(r),b(()=>t(r).id))),O(P,"title",(t(r),b(()=>t(r).listUrlPattern))),Q(R,(t(r),b(()=>t(r).listUrlPattern)))}),D("click",g,()=>vt(t(r))),D("keydown",g,d=>kt(t(r),d)),u(_,g)}),s(n),s(i),s(a),u(e,a)};q(Dt,e=>{t(V)?e(Ut):t(z)?e(Ct,1):(t($),b(()=>t($).length===0)?e(St,2):(t(N),b(()=>t(N).length===0)?e(At,3):e(It,-1)))})}s(_t),s(pt),s(W);var Rt=c(W,2);Vt(Rt,{get open(){return t(C)},onOpenChange:yt,children:(e,a)=>{Zt(e,{children:(i,n)=>{var _=ue(),r=rt(_);Wt(r,{class:"modal-overlay"});var g=c(r,2);Xt(g,{class:"modal","aria-describedby":void 0,children:(A,Z)=>{var x=ve(),I=rt(x),B=l(I);Yt(B,{class:"modal-title",children:(f,d)=>{K();var v=st("添加插件");u(f,v)},$$slots:{default:!0}});var tt=c(B,2);bt(tt,{class:"modal-close","aria-label":"关闭",children:(f,d)=>{K();var v=st("✕");u(f,v)},$$slots:{default:!0}}),s(I);var w=c(I,2),P=c(l(w),2),R=c(l(P),2);ot(R),O(R,"spellcheck",!1),s(P);var k=c(P,2),T=c(l(k),2);ot(T),O(T,"spellcheck",!1),s(k);var F=c(k,2),H=l(F),E=l(H);bt(E,{class:"btn-cancel",get disabled(){return t(S)},type:"button",children:(f,d)=>{K();var v=st("取消");u(f,v)},$$slots:{default:!0}});var L=c(E,2),et=l(L,!0);s(L),s(H),s(F),s(w),lt(()=>{L.disabled=t(S),Q(et,t(S)?"创建中…":"创建并打开编辑")}),Mt("submit",w,wt),it(R,()=>t(y),f=>o(y,f)),it(T,()=>t(j),f=>o(j,f)),u(A,x)},$$slots:{default:!0}}),u(i,_)},$$slots:{default:!0}})},$$slots:{default:!0}}),it(M,()=>t(J),e=>o(J,e)),D("click",Y,dt),u(gt,ut),Ot()}Jt(["click","keydown"]);export{Re as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a,f as p}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as m}from"../chunks/Dyvi1wBH.js";import{at as e,au as s,X as i,$ as f}from"../chunks/vtBo8kBV.js";import{h as n}from"../chunks/DL3Q5sfb.js";import{i as c}from"../chunks/DVa8Y-mQ.js";import{g as d}from"../chunks/CVW0ymE1.js";var h=p('<p class="redirect-msg svelte-1b0rhdm">正在打开添加插件…</p>');function A(o,r){e(r,!1),m(()=>{d("/plugins?openAdd=1",{replaceState:!0})}),c();var t=h();n("1b0rhdm",l=>{i(()=>{f.title="插件"})}),a(o,t),s()}export{A as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as m,a as f}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{f as n}from"../chunks/vtBo8kBV.js";import{s as p}from"../chunks/ChUctqXA.js";function d(t,a){var o=m(),r=n(o);p(r,a,"default",{}),f(t,o)}export{d as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as t,f as r}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{d as m,$ as s}from"../chunks/vtBo8kBV.js";import{h as p}from"../chunks/DL3Q5sfb.js";import{S as n}from"../chunks/DkamXS6W.js";import{P as f}from"../chunks/DoRPmqLn.js";var i=r('<meta name="description" content="Subscribed sources: labels, counts, pull and manage feeds."/>');function S(e){p("1uha8ag",o=>{var a=i();m(()=>{s.title=`Sources — ${f}`}),t(o,a)}),n(e,{})}export{S as component};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as u,f as p}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as V,a as W}from"../chunks/Dyvi1wBH.js";import{at as Z,au as ee,d as te,$ as ae,av as s,aw as v,i as r,ax as t,ay as se,az as b,a5 as z,z as re,u as P,aA as Y,aB as le}from"../chunks/vtBo8kBV.js";import{s as g}from"../chunks/B2cyTHdf.js";import{i as ie}from"../chunks/BkD3yAYe.js";import{e as y,i as D}from"../chunks/CFwxUBGi.js";import{h as ne}from"../chunks/DL3Q5sfb.js";import{P as oe,s as de,a as ce}from"../chunks/DoRPmqLn.js";import{i as ve}from"../chunks/DVa8Y-mQ.js";import{a as fe}from"../chunks/CBY2biv-.js";var ue=p("<span></span>"),pe=p('<div class="scheduler-row svelte-1jef3w8"><div class="scheduler-left svelte-1jef3w8"><span class="scheduler-name svelte-1jef3w8"> </span> <span class="scheduler-meta svelte-1jef3w8"> </span></div> <div class="scheduler-slots svelte-1jef3w8"></div></div>'),me=p('<section class="scheduler-section svelte-1jef3w8"><h3 class="section-title svelte-1jef3w8">调度任务</h3> <div class="scheduler-card svelte-1jef3w8"></div></section>'),he=p('<a class="card svelte-1jef3w8"><div class="card-main svelte-1jef3w8"><span class="card-label svelte-1jef3w8"> </span> <span class="card-desc svelte-1jef3w8"> </span></div> <span class="card-arrow svelte-1jef3w8">›</span></a>'),_e=p('<section class="links-section svelte-1jef3w8"><h3 class="section-title svelte-1jef3w8"> </h3> <div class="links svelte-1jef3w8"></div></section>'),we=p('<div class="feed-wrap svelte-1jef3w8"><div class="feed-col svelte-1jef3w8"><div class="settings-toolbar-block svelte-1jef3w8"><div class="admin-feed-header settings-header svelte-1jef3w8"><div class="admin-feed-header__left"><h2>设置</h2> <p class="admin-feed-header__desc">管理入口与调试工具</p></div></div></div> <div class="settings-body-scroll svelte-1jef3w8"><div class="body svelte-1jef3w8"><!> <!></div></div></div></div>');function Ne(U,q){Z(q,!1);function B(l){if(l===void 0)return"";if(l===0)return"· 正在执行";if(l===-1)return"· 无定时任务";const e=new Date(l),o=Date.now(),i=l-o;if(i<=0)return"· 即将执行";if(i<6e4)return`· 约 ${Math.round(i/1e3)} 秒后`;if(i<36e5)return`· 约 ${Math.round(i/6e4)} 分钟后`;const c=e.toLocaleTimeString("zh-CN",{hour:"2-digit",minute:"2-digit"}),n=new Date(o),m=e.getDate()===n.getDate()&&e.getMonth()===n.getMonth()&&e.getFullYear()===n.getFullYear(),a=new Date(n);a.setDate(a.getDate()+1);const d=e.getDate()===a.getDate()&&e.getMonth()===a.getMonth()&&e.getFullYear()===a.getFullYear();return m?`· 下次 ${c}`:d?`· 下次 明天 ${c}`:`· 下次 ${e.toLocaleDateString("zh-CN",{month:"numeric",day:"numeric"})} ${c}`}const E=[{title:"管理",links:[{href:"/admin/tags",label:"标签",desc:"系统标签库,新入库条目由 LLM 自动匹配打标签"},{href:"/admin/pipeline",label:"Pipeline",desc:"入库前处理(打标签、翻译),支持顺序与开关"}]},{title:"集成",links:[{href:"/admin/llm",label:"LLM",desc:"OpenAI 兼容 API(解析、Pipeline、标签与翻译);可替代 .env 中的 OPENAI_*"},{href:"/admin/proxy",label:"代理",desc:"全局 HTTP(S) 代理;单源在 sources.json 或插件中配置的代理优先"},{href:"/admin/deliver",label:"投递",desc:"配置下游 URL 与可选 Bearer 令牌;非空 URL 时在写库与 Pipeline 后额外 POST 条目"}]},{title:"调试",links:[{href:"/admin/parse",label:"Parse",desc:"从列表页解析条目,返回 JSON"}]}];let j=re({}),M=null;async function L(){try{const e=await(await fe("/api/scheduler/stats")).text();z(j,e.trim()?JSON.parse(e):{})}catch{z(j,{})}}V(()=>{L(),M=setInterval(L,2e3)}),W(()=>{M&&clearInterval(M)});const J=5;ve();var S=we();ne("1jef3w8",l=>{te(()=>{ae.title=`设置 - ${oe}`})});var O=s(S),N=v(s(O),2),k=s(N),A=s(k);{var H=l=>{var e=me(),o=v(s(e),2);y(o,5,()=>Object.entries(r(j)),D,(i,c)=>{var n=Y(()=>le(r(c),2));let m=()=>r(n)[0],a=()=>r(n)[1];const d=P(()=>a().running),$=P(()=>a().completedCount??0),h=P(()=>Math.min(a().concurrency,J));var _=pe(),f=s(_),w=s(f),G=s(w,!0);t(w);var C=v(w,2),K=s(C);t(C),t(f);var T=v(f,2);y(T,5,()=>Array(r(h)),D,(x,ge,Q)=>{var F=ue();let I;b(()=>I=ce(F,1,"slot svelte-1jef3w8",null,I,{filled:Q<r(d)})),u(x,F)}),t(T),t(_),b(x=>{g(G,m()),g(K,`执行中 ${r(d)??""}/${a().concurrency??""} · 排队 ${a().queued??""} · 定时 ${a().scheduledCount??""} · 已完成 ${r($)??""}
|
|
2
|
-
${x??""}`)},[()=>B(a().nextRunTime)]),u(i,_)}),t(o),t(e),u(l,e)},R=Y(()=>Object.keys(r(j)).length>0);ie(A,l=>{r(R)&&l(H)})}var X=v(A,2);y(X,1,()=>E,D,(l,e)=>{var o=_e(),i=s(o),c=s(i,!0);t(i);var n=v(i,2);y(n,5,()=>r(e).links,D,(m,a)=>{var d=he(),$=s(d),h=s($),_=s(h,!0);t(h);var f=v(h,2),w=s(f,!0);t(f),t($),se(2),t(d),b(()=>{de(d,"href",r(a).href),g(_,r(a).label),g(w,r(a).desc)}),u(m,d)}),t(n),t(o),b(()=>g(c,r(e).title)),u(l,o)}),t(k),t(N),t(O),t(S),u(U,S),ee()}export{Ne as component};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{a as p,f as d}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as Y}from"../chunks/Dyvi1wBH.js";import{at as Z,az as ee,au as te,d as se,i as s,z as h,av as o,aw as c,$ as ae,ax as r,ay as P,a5 as a,f as C}from"../chunks/vtBo8kBV.js";import{e as J,s as x}from"../chunks/B2cyTHdf.js";import{i as N}from"../chunks/BkD3yAYe.js";import{h as oe}from"../chunks/DL3Q5sfb.js";import{P as re,r as R}from"../chunks/DoRPmqLn.js";import{b as A}from"../chunks/C8umpVpB.js";import{i as ie}from"../chunks/DVa8Y-mQ.js";import{B as ne}from"../chunks/_qj9U-za.js";import{b as S}from"../chunks/CBY2biv-.js";import{s as m}from"../chunks/CGCMIfh3.js";var ce=d('<p class="hint svelte-bhaf7m">加载中…</p>'),le=d('<input type="url" class="url-input svelte-bhaf7m" placeholder="https://agidaily.cc/api/gateway"/> <p class="hint svelte-bhaf7m">保存后生效;测试仅向 <code>…/test</code> 发一条合并的连通性请求(示例 items + 当前 sources),不写本地库。</p>',1),me=d('<p class="hint svelte-bhaf7m">加载中…</p>'),fe=d('<input type="password" class="url-input svelte-bhaf7m" placeholder="与下游 token.txt 内容一致,留空则不发送 Authorization" autocomplete="off"/> <p class="hint svelte-bhaf7m">非空时出站请求携带 Bearer。清空并保存可从配置中移除 token 字段。</p>',1),ve=d(`<div class="feed-wrap svelte-bhaf7m"><div class="feed-col svelte-bhaf7m"><div class="body svelte-bhaf7m"><!> <p class="intro svelte-bhaf7m">填写<strong>Gateway 基址</strong>(到 <code class="svelte-bhaf7m">/api/gateway</code> 为止,不要带 <code class="svelte-bhaf7m">/items</code>)。非空时:入库与 Pipeline
|
|
2
|
-
完成后会 <code class="svelte-bhaf7m"> </code>(体为 <code class="svelte-bhaf7m">sourceRef</code> + <code class="svelte-bhaf7m">items</code>);<code class="svelte-bhaf7m">sources.json</code> 变更后会 <code class="svelte-bhaf7m">POST …/sources</code>(正文与本地信源文件一致)。下游按固定路径接收即可。</p> <section class="form-section svelte-bhaf7m"><h3 class="section-title svelte-bhaf7m">Gateway 基址</h3> <!></section> <section class="form-section svelte-bhaf7m"><h3 class="section-title svelte-bhaf7m">Gateway 令牌(可选)</h3> <!></section> <section class="form-section svelte-bhaf7m"><div class="btn-row svelte-bhaf7m"><button type="button" class="btn btn-primary svelte-bhaf7m"> </button> <button type="button" class="btn btn-secondary svelte-bhaf7m"> </button></div></section></div></div></div>`);function Se(M,U){Z(U,!1);let i=h(""),n=h(""),l=h(!0),b=h(!1),u=h(!1);async function $(){a(l,!0);try{const e=await S("/api/deliver");a(i,(e==null?void 0:e.gateway)??""),a(n,(e==null?void 0:e.token)??"")}catch{a(i,""),a(n,"")}finally{a(l,!1)}}async function D(){a(b,!0);try{const e=await S("/api/deliver",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({gateway:s(i).trim(),token:s(n).trim()})});if(!(e!=null&&e.ok))throw new Error((e==null?void 0:e.message)??"保存失败");a(i,(e==null?void 0:e.gateway)??s(i)),a(n,(e==null?void 0:e.token)??s(n)),m("已保存","success")}catch(e){m("保存失败: "+(e instanceof Error?e.message:String(e)),"error")}finally{a(b,!1)}}async function F(){const e=s(i).trim();if(!e){m("请先填写 Gateway 基址","error");return}a(u,!0);try{const t=await S("/api/deliver/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({gateway:e,token:s(n).trim()})});t!=null&&t.ok?m("Gateway 测试投递成功(POST …/test)","success"):m("测试失败: "+((t==null?void 0:t.message)??"未知错误"),"error")}catch(t){m("测试失败: "+(t instanceof Error?t.message:String(t)),"error")}finally{a(u,!1)}}Y($),ie();var _=ve();oe("bhaf7m",e=>{se(()=>{ae.title=`投递 - ${re}`})});var O=o(_),G=o(O),E=o(G);ne(E,{});var g=c(E,2),j=c(o(g),7),q=o(j);r(j),P(9),r(g);var w=c(g,2),H=c(o(w),2);{var I=e=>{var t=ce();p(e,t)},K=e=>{var t=le(),v=C(t);R(v),P(2),A(v,()=>s(i),T=>a(i,T)),p(e,t)};N(H,e=>{s(l)?e(I):e(K,-1)})}r(w);var k=c(w,2),L=c(o(k),2);{var Q=e=>{var t=me();p(e,t)},V=e=>{var t=fe(),v=C(t);R(v),P(2),A(v,()=>s(n),T=>a(n,T)),p(e,t)};N(L,e=>{s(l)?e(Q):e(V,-1)})}r(k);var z=c(k,2),B=o(z),f=o(B),W=o(f,!0);r(f);var y=c(f,2),X=o(y,!0);r(y),r(B),r(z),r(G),r(O),r(_),ee(e=>{x(q,`POST ${(s(i)||"…")??""}/items`),f.disabled=s(b)||s(l),x(W,s(b)?"保存中…":"保存"),y.disabled=e,x(X,s(u)?"测试中…":"测试 Gateway")},[()=>s(u)||s(l)||!s(i).trim()]),J("click",f,D),J("click",y,F),p(M,_),te()}export{Se as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as v,f as p,t as ve}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as ce}from"../chunks/Dyvi1wBH.js";import{at as pe,az as R,au as me,d as fe,av as i,aw as n,$ as de,i as o,ax as l,a5 as s,z as c,f as ue,ay as j}from"../chunks/vtBo8kBV.js";import{e as z,s as $}from"../chunks/B2cyTHdf.js";import{i as b}from"../chunks/BkD3yAYe.js";import{h as ge}from"../chunks/DL3Q5sfb.js";import{P as _e,r as U,s as E}from"../chunks/DoRPmqLn.js";import{b as O}from"../chunks/C8umpVpB.js";import{i as ye}from"../chunks/DVa8Y-mQ.js";import{B as he}from"../chunks/_qj9U-za.js";import{b as C}from"../chunks/CBY2biv-.js";import{s as w}from"../chunks/CGCMIfh3.js";var be=p('<p class="hint svelte-1a0dvmg">加载中…</p>'),we=p('<input type="url" class="text-input svelte-1a0dvmg" placeholder="https://api.openai.com/v1" autocomplete="off"/>'),xe=p('<input type="text" class="text-input svelte-1a0dvmg" placeholder="gpt-4o-mini" autocomplete="off"/>'),Ke=p('<p class="hint svelte-1a0dvmg">加载中…</p>'),Pe=p("当前<strong>可用</strong>(文件或环境变量)。",1),Ae=p("未检测到 Key,请填写或设置 <code>OPENAI_API_KEY</code>。",1),Ie=p('<input type="password" class="text-input svelte-1a0dvmg" autocomplete="new-password"/> <p class="hint svelte-1a0dvmg"><!> <!></p>',1),ke=p('<div class="feed-wrap svelte-1a0dvmg"><div class="feed-col svelte-1a0dvmg"><div class="body svelte-1a0dvmg"><!> <p class="intro svelte-1a0dvmg">与 OpenAI 兼容的 Chat Completions API,用于列表解析、正文提取、Pipeline 打标签与翻译等。</p> <section class="form-section svelte-1a0dvmg"><h3 class="section-title svelte-1a0dvmg">API Base URL</h3> <!></section> <section class="form-section svelte-1a0dvmg"><h3 class="section-title svelte-1a0dvmg">模型</h3> <!></section> <section class="form-section svelte-1a0dvmg"><h3 class="section-title svelte-1a0dvmg">API Key</h3> <!></section> <section class="form-section svelte-1a0dvmg"><div class="btn-row svelte-1a0dvmg"><button type="button" class="btn btn-primary svelte-1a0dvmg"> </button> <button type="button" class="btn btn-secondary svelte-1a0dvmg"> </button></div></section></div></div></div>');function je(D,Y){pe(Y,!1);let m=c(""),f=c(""),u=c(""),g=c(!1),_=c(!1),d=c(!0),x=c(!1),K=c(!1);async function q(){s(d,!0);try{const e=await C("/api/llm");s(m,(e==null?void 0:e.baseUrl)??""),s(f,(e==null?void 0:e.model)??""),s(g,!!(e!=null&&e.hasApiKey)),s(_,!!(e!=null&&e.apiKeyInFile)),s(u,"")}catch{s(m,""),s(f,""),s(g,!1),s(_,!1)}finally{s(d,!1)}}async function G(){s(x,!0);try{const e={baseUrl:o(m).trim(),model:o(f).trim()},a=o(u).trim();a&&(e.apiKey=a);const t=await C("/api/llm",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(e)});if(!(t!=null&&t.ok))throw new Error((t==null?void 0:t.message)??"保存失败");s(m,(t==null?void 0:t.baseUrl)??o(m)),s(f,(t==null?void 0:t.model)??o(f)),s(g,!!(t!=null&&t.hasApiKey)),s(_,!!(t!=null&&t.apiKeyInFile)),s(u,""),w("已保存","success")}catch(e){w("保存失败: "+(e instanceof Error?e.message:String(e)),"error")}finally{s(x,!1)}}async function H(){s(K,!0);try{const e=await C("/api/llm/test",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({})});if(e!=null&&e.ok){const a=typeof e.reply=="string"?e.reply.trim():"";w(a?`连接成功:${a.slice(0,120)}${a.length>120?"…":""}`:"连接成功","success")}else w("测试失败: "+((e==null?void 0:e.message)??"未知错误"),"error")}catch(e){w("测试失败: "+(e instanceof Error?e.message:String(e)),"error")}finally{s(K,!1)}}ce(q),ye();var A=ke();ge("1a0dvmg",e=>{fe(()=>{de.title=`LLM - ${_e}`})});var S=i(A),F=i(S),N=i(F);he(N,{});var I=n(N,4),Q=n(i(I),2);{var V=e=>{var a=be();v(e,a)},W=e=>{var a=we();U(a),O(a,()=>o(m),t=>s(m,t)),v(e,a)};b(Q,e=>{o(d)?e(V):e(W,-1)})}l(I);var k=n(I,2),X=n(i(k),2);{var Z=e=>{var a=xe();U(a),E(a,"spellcheck",!1),O(a,()=>o(f),t=>s(f,t)),v(e,a)};b(X,e=>{o(d)||e(Z)})}l(k);var T=n(k,2),ee=n(i(T),2);{var te=e=>{var a=Ke();v(e,a)},se=e=>{var a=Ie(),t=ue(a);U(t),E(t,"spellcheck",!1);var L=n(t,2),M=i(L);{var re=r=>{var h=Pe();j(2),v(r,h)},ie=r=>{var h=Ae();j(2),v(r,h)};b(M,r=>{o(g)?r(re):r(ie,-1)})}var le=n(M,2);{var ne=r=>{var h=ve("已写入配置文件。");v(r,h)};b(le,r=>{o(_)&&r(ne)})}l(L),R(()=>E(t,"placeholder",o(_)?"已保存在配置中,留空表示不修改":"sk-...")),O(t,()=>o(u),r=>s(u,r)),v(e,a)};b(ee,e=>{o(d)?e(te):e(se,-1)})}l(T);var B=n(T,2),J=i(B),y=i(J),ae=i(y,!0);l(y);var P=n(y,2),oe=i(P,!0);l(P),l(J),l(B),l(F),l(S),l(A),R(()=>{y.disabled=o(x)||o(d),$(ae,o(x)?"保存中…":"保存"),P.disabled=o(K)||o(d)||!o(g),$(oe,o(K)?"测试中…":"测试连接")}),z("click",y,G),z("click",P,H),v(D,A),me()}export{je as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as e,f as m}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as i}from"../chunks/Dyvi1wBH.js";import{at as f,au as n}from"../chunks/vtBo8kBV.js";import{s as l,a as u}from"../chunks/B6WG2Sd3.js";import{i as c}from"../chunks/DVa8Y-mQ.js";import{g}from"../chunks/CVW0ymE1.js";import{p as $}from"../chunks/CqYSO3Dx.js";var v=m('<p class="muted svelte-1w6l7vk">正在跳转…</p>');function b(o,t){f(t,!1);const a=()=>u($,"$page",r),[r,s]=l();i(()=>{g("/logs"+a().url.search,{replaceState:!0})}),c();var p=v();e(o,p),n(),s()}export{b as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as w,f as O}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{at as M,az as T,i as s,au as W,d as X,av as t,a5 as o,z as d,$ as Y,ay as I,ax as r,aw as v}from"../chunks/vtBo8kBV.js";import{e as F,s as S}from"../chunks/B2cyTHdf.js";import{i as J}from"../chunks/BkD3yAYe.js";import{h as G}from"../chunks/DL3Q5sfb.js";import{P as K,r as q}from"../chunks/DoRPmqLn.js";import{b as C}from"../chunks/C8umpVpB.js";import{p as Q}from"../chunks/Bfc47y5P.js";import{i as V}from"../chunks/DVa8Y-mQ.js";import{B as Z}from"../chunks/_qj9U-za.js";var ee=O('<div class="result-error svelte-1x680s0" role="alert"> </div>'),se=O('<div class="result-wrap svelte-1x680s0"><p class="result-label svelte-1x680s0">解析结果(与下方接口一致)</p> <pre class="result-json svelte-1x680s0"> </pre></div>'),te=O('<div class="feed-wrap svelte-1x680s0"><div class="feed-col svelte-1x680s0"><div class="feed-header svelte-1x680s0"><!> <h2 class="svelte-1x680s0">Parse</h2> <p class="page-desc svelte-1x680s0">从列表页解析条目结构,返回 JSON,用于调试插件 Parser 规则</p></div> <div class="body svelte-1x680s0"><form><div class="url-row svelte-1x680s0"><input type="url" placeholder="输入列表页地址…" required="" autocomplete="url" class="svelte-1x680s0"/> <button type="submit" class="svelte-1x680s0"> </button></div> <div class="proxy-row svelte-1x680s0"><input type="text" placeholder="代理(可选),如 http://127.0.0.1:7890 — 覆盖信源与 HTTP_PROXY" autocomplete="off" spellcheck="false" class="svelte-1x680s0"/></div></form> <!> <!> <div class="info-box svelte-1x680s0"><p class="svelte-1x680s0">抓取在<strong>服务端</strong>执行,默认<strong>有头</strong> Chrome(与信源同一套 Puppeteer),会弹出可见窗口;本页 <code class="svelte-1x680s0">fetch</code> 仅用于展示 JSON。需要无头时在 URL 加 <code class="svelte-1x680s0">?headless=true</code>。</p> <p class="info-note svelte-1x680s0">返回中的 <code class="svelte-1x680s0">effectiveProxy</code> 为本次抓取实际选用的代理。若需在看得到的窗口里验证出口 IP,请在该 Puppeteer 窗口内打开 <code class="svelte-1x680s0">api.ipify.org</code> 等(勿用本机普通浏览器标签测代理)。</p></div></div></div></div>');function ue(z,B){M(B,!1);let i=d(""),m=d(""),n=d(!1),c=d(""),p=d("");async function D(){if(s(i).trim()){o(n,!0),o(c,""),o(p,"");try{const e=s(i).startsWith("http")?s(i):"https://"+s(i),a=new URLSearchParams,l=s(m).trim();l&&a.set("proxy",l);const u=a.toString(),b=await fetch("/admin/parse/"+encodeURIComponent(e)+(u?"?"+u:""),{credentials:"include"}),P=await b.text();if(!b.ok){o(c,P||`HTTP ${b.status}`);return}try{o(p,JSON.stringify(JSON.parse(P),null,2))}catch{o(p,P)}}catch(e){o(c,e instanceof Error?e.message:String(e))}finally{o(n,!1)}}}V();var x=te();G("1x680s0",e=>{X(()=>{Y.title=`Parse - ${K}`})});var R=t(x),_=t(R),E=t(_);Z(E,{}),I(4),r(_);var $=v(_,2),f=t($),h=t(f),g=t(h);q(g);var y=v(g,2),H=t(y,!0);r(y),r(h);var N=v(h,2),U=t(N);q(U),r(N),r(f);var k=v(f,2);{var L=e=>{var a=ee(),l=t(a,!0);r(a),T(()=>S(l,s(c))),w(e,a)};J(k,e=>{s(c)&&e(L)})}var j=v(k,2);{var A=e=>{var a=se(),l=v(t(a),2),u=t(l,!0);r(l),r(a),T(()=>S(u,s(p))),w(e,a)};J(j,e=>{s(p)&&e(A)})}I(2),r($),r(R),r(x),T(()=>{y.disabled=s(n),S(H,s(n)?"解析中…":"解析")}),C(g,()=>s(i),e=>o(i,e)),C(U,()=>s(m),e=>o(m,e)),F("submit",f,Q(D)),w(z,x),W()}export{ue as component};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as u,f as g}from"../chunks/CS53ooo0.js";import"../chunks/BA4Gucnq.js";import{o as se}from"../chunks/Dyvi1wBH.js";import{at as te,au as re,d as le,av as o,$ as ie,ay as B,ax as i,aw as c,i as a,a5 as r,z as b,az as T,aA as oe}from"../chunks/vtBo8kBV.js";import{s as I,e as f}from"../chunks/B2cyTHdf.js";import{i as O}from"../chunks/BkD3yAYe.js";import{e as ne,i as de}from"../chunks/CFwxUBGi.js";import{h as ve}from"../chunks/DL3Q5sfb.js";import{P as ce,r as fe,a as pe,b as me}from"../chunks/DoRPmqLn.js";import{i as ue}from"../chunks/DVa8Y-mQ.js";import{B as be}from"../chunks/_qj9U-za.js";import{b as $}from"../chunks/CBY2biv-.js";import{s as z}from"../chunks/CGCMIfh3.js";var ge=g('<div class="state svelte-jqd85f">加载中…</div>'),_e=g('<div role="listitem" draggable="true"><span class="drag-handle svelte-jqd85f" title="拖拽排序">⋮⋮</span> <label class="toggle-wrap svelte-jqd85f"><input type="checkbox" class="svelte-jqd85f"/> <span class="toggle-slider svelte-jqd85f"></span></label> <span class="step-label svelte-jqd85f"> </span></div>'),he=g('<button type="button" class="btn-add svelte-jqd85f">+ 添加步骤</button>'),je=g('<div class="body svelte-jqd85f"><section class="pipeline-section svelte-jqd85f"><h3 class="section-title svelte-jqd85f">Pipeline(入库前)</h3> <p class="hint svelte-jqd85f">对每条新入库条目执行,顺序由上到下。</p> <div class="step-list svelte-jqd85f" role="list"></div> <!></section> <div class="save-row svelte-jqd85f"><button type="button" class="btn btn-primary svelte-jqd85f"> </button></div></div>'),qe=g('<div class="feed-wrap svelte-jqd85f"><div class="feed-col svelte-jqd85f"><div class="feed-header svelte-jqd85f"><!> <h2 class="svelte-jqd85f">Pipeline</h2> <p class="page-desc svelte-jqd85f">入库前处理(打标签、翻译),可调整顺序与开关。</p></div> <!></div></div>');function $e(C,F){te(F,!1);const J={qualityFilter:"质量过滤",tagger:"打标签",translator:"翻译"};let t=b([]),_=b([]),q=b(!0),p=b(!1),m=b(null);async function L(){r(q,!0);try{const e=await $("/api/pipeline");r(t,(e==null?void 0:e.steps)??[]),r(_,(e==null?void 0:e.availableIds)??[])}catch{r(t,[]),r(_,[])}finally{r(q,!1)}}async function M(){r(p,!0);try{const e=await $("/api/pipeline",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({steps:a(t)})});if(!(e!=null&&e.ok))throw new Error((e==null?void 0:e.message)??"保存失败");r(t,(e==null?void 0:e.steps)??a(t)),z("已保存","success")}catch(e){z("保存失败: "+(e instanceof Error?e.message:String(e)),"error")}finally{r(p,!1)}}function N(e){r(t,a(t).map((s,l)=>l===e?{...s,enabled:!s.enabled}:s))}function R(e){r(m,e)}function U(e){e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="move")}function G(e){if(a(m)==null)return;const s=[...a(t)],[l]=s.splice(a(m),1);s.splice(e,0,l),r(t,s),r(m,null)}function H(){const e=new Set(a(t).map(l=>l.id)),s=a(_).find(l=>!e.has(l));s&&r(t,[...a(t),{id:s,enabled:!1}])}se(L),ue();var y=qe();ve("jqd85f",e=>{le(()=>{ie.title=`Pipeline - ${ce}`})});var k=o(y),w=o(k),K=o(w);be(K,{}),B(4),i(w);var Q=c(w,2);{var V=e=>{var s=ge();u(e,s)},W=e=>{var s=je(),l=o(s),x=c(o(l),4);ne(x,5,()=>a(t),de,(d,n,j)=>{var v=_e();let D;var P=c(o(v),2),S=o(P);fe(S),B(2),i(P);var A=c(P,2),ae=o(A,!0);i(A),i(v),T(()=>{D=pe(v,1,"step-row svelte-jqd85f",null,D,{dragging:a(m)===j}),me(S,a(n).enabled),I(ae,J[a(n).id]??a(n).id)}),f("change",S,()=>N(j)),f("dragstart",v,()=>R(j)),f("dragover",v,U),f("drop",v,()=>G(j)),u(d,v)}),i(x);var X=c(x,2);{var Y=d=>{var n=he();T(()=>n.disabled=a(p)),f("click",n,H),u(d,n)},Z=oe(()=>a(_).some(d=>!a(t).some(n=>n.id===d)));O(X,d=>{a(Z)&&d(Y)})}i(l);var E=c(l,2),h=o(E),ee=o(h,!0);i(h),i(E),i(s),T(()=>{h.disabled=a(p),I(ee,a(p)?"保存中…":"保存")}),f("click",h,M),u(e,s)};O(Q,e=>{a(q)?e(V):e(W,-1)})}i(k),i(y),u(C,y),re()}export{$e as component};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|