Bump web v3.24.101017

This commit is contained in:
Xwite authored and github-actions[bot] committed 2024-10-10 09:04:13 +00:00
1 parent 5b9e42b3cc
commit 76691b8c0d
4 files changed
+9 -9

No files matched your search

@@ -1 +1 @@
import{a0 as Ne,m as l,v as D,Q as xe,a6 as De,o as m,d as k,g as t,t as O,F as te,M as ie,u as a,a7 as T,a8 as Qe,H as he,p as Q,e as N,w as z,a9 as He,x as de,aa as We,f as J,J as ge,a5 as Ve,j as F,ab as Je,q as Te,ac as Pe,ad as Fe,ae as qe,V as Ge,L as Ue,a4 as Ze,af as Ye,ag as je,c as Xe}from"./vendor-JTttPx12.js";import{i as _e,u as $e}from"./loading-DbywvlSa.js";import{_ as le,A as Z,u as re}from"./index-2f7oRvfk.js";const et=(A,n,d,p)=>(A/=p/2,A<1?d/2*A*A+n:(A--,-d/2*(A*(A-2)-1)+n)),tt=()=>{let A,n,d,p,s,I,y,b,B,V,M,C,E;function c(){let v=A.scrollTop||A.scrollY||A.pageYOffset;return v=typeof v>"u"?0:v,v}function f(v){const S=v.getBoundingClientRect().top,oe=A.getBoundingClientRect?A.getBoundingClientRect().top:0;return S-oe+d}function r(v){A.scrollTo?A.scrollTo(0,v):A.scrollTop=v}function g(v){V||(V=v),M=v-V,C=I(M,d,b,B),r(C),M<B?requestAnimationFrame(g):R()}function R(){r(d+b),n&&y&&(n.setAttribute("tabindex","-1"),n.focus()),typeof E=="function"&&E(),V=!1}function L(v,S={}){switch(B=S.duration||1e3,s=S.offset||0,E=S.callback,I=S.easing||et,y=S.a11y||!1,typeof S.container){case"object":A=S.container;break;case"string":A=document.querySelector(S.container);break;default:A=window}switch(d=c(),typeof v){case"number":n=void 0,y=!1,p=d+v;break;case"object":n=v,p=f(n);break;case"string":n=document.querySelector(v),p=f(n);break}switch(b=p-d+s,typeof S.duration){case"number":B=S.duration;break;case"function":B=S.duration(b);break}requestAnimationFrame(g)}return L},$=tt(),ot=["data-chapterpos"],nt=["src"],st=["innerHTML"],at={__name:"ChapterContent",props:{chapterIndex:{type:Number,required:!0},contents:{type:Array,required:!0},title:{type:String,required:!0},spacing:{type:Object,required:!0},fontFamily:{type:String,required:!0},fontSize:{type:String,required:!0}},emits:["readedLengthChange"],setup(A,{expose:n,emit:d}){Ne(c=>({f67eb5da:p.spacing.letter,"5690efbe":p.spacing.line,"9487f53e":p.spacing.paragraph}));const p=A,s=c=>{const f=/<img[^>]*src="([^"]*(?:"[^>]+\})?)"[^>]*>/,r=c.match(f)[1];return _e(r)?Z.getProxyImageUrl(r,re().config.readWidth):r},I=c=>{c.target.src=Z.getProxyImageUrl(c.target.src,re().config.readWidth)},y=c=>{const f=/<img[^>]*src="[^"]*(?:"[^>]+\})?"[^>]*>/g;return c.replaceAll(f," ").length},b=l(()=>{let c=-1;return Array.from(p.contents,f=>(c+=y(f)+1,c))}),B=D(),V=D();n({scrollToReadedLength:c=>{if(c===0)return;let f=b.value.findIndex(r=>r>=c);f!==-1&&Qe(()=>{$(V.value[f],{duration:0})})}});let C=null;const E=d;return xe(()=>{C=new IntersectionObserver(c=>{for(let{target:f,isIntersecting:r}of c)r&&E("readedLengthChange",p.chapterIndex,parseInt(f.dataset.chapterpos))},{rootMargin:`0px 0px -${window.innerHeight-24}px 0px`}),C.observe(B.value),V.value.forEach(c=>{C.observe(c)})}),De(()=>{C==null||C.disconnect(),C=null}),(c,f)=>(m(),k(te,null,[t("div",{class:"title","data-chapterpos":"0",ref_key:"titleRef",ref:B},O(A.title),513),(m(!0),k(te,null,ie(A.contents,(r,g)=>(m(),k("div",{key:g,ref_for:!0,ref_key:"paragraphRef",ref:V,"data-chapterpos":a(b)[g]},[/^\s*<img[^>]*src[^>]+>$/.test(String(r))?(m(),k("img",{key:0,class:"full",src:s(r),onErrorOnce:I,loading:"lazy"},null,40,nt)):(m(),k("p",{key:1,style:T({fontFamily:A.fontFamily,fontSize:A.fontSize}),innerHTML:r},null,12,st))],8,ot))),128))],64))}},it=le(at,[["__scopeId","data-v-d37de557"]]),rt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyAgMAAABjUWAiAAAADFBMVEXr5djn4dTp49bt59rT6LKxAAACnElEQVQozw3NUUwScRzA8d8R6MF8YMIx8uk47hDSJbj14IPzOGc7jPLvwTGg5uAYDbe2tt56cLtznvEnS6yDqCcEaWi91DvrbLJZz7b1aFtz1aO+2OZWvn+/+4CHeB6BMYaqBLfjPNRY6RFT2JJYby+uAk4WUTrtlmJ4hgPYb2q1XGDQjaK8pgJHvqNaAX+KyuIkDXpgQinb46nOulnn4b5laUHTxLfseeArAoNOeJlOIjdoal0n1FA7tKFv5roK+YaHOqP3P0XyKHPHY+MhTRe5uCZnKhtJKw2eSrSoBDPLtpZuNcFNJcFyiCMxOaaHIfXz1e8HQbWLySrBQ4x0x1qlhnHlnz2HQEC6TNb0gTHXa7IKhcaHqkE015hk9whA0YeWiLIXf7Fa2CZo3DjqjB4tTuF8jIcbfcEx5z/w4sXpQhXW+ju0cqh7icTFmRMaG+v6CIvTjcSpHcH8JEsF3EPh3fRthYdVLLgI2fWXm85/pGFE4l046s70L+yKCcirGFR+jbpy3kMmiCGHrSezVONsn1RBixncyk2PcVWk7DlgxHo8iZwDyq5uAUD854dZhdIFYzKoQig2haUKi1lVufz2RZUZPZ41n/hrOQB6h0Hhg8I367FNoEHgeM/KY7szSeQwD8q2WE3HM35ZLl0K1MJiOtHIkBclRQUwZnyOWcNsRQQgVLj1PSqkjF9DsoOSaSg3iinKzvfmgsNFFfpP/2T3GLGvL4fHEfwIX1sVvXcPqLztehWGcfn9nI2U9nTfCgJPe/jFPLZwgVEzimBgAm0VIyK2tt1cE/AzQdLK+SxLSQ4aDCZnnId94OG2S1XwvnTbNk/ZnhyRCQT+sZM6z9g6LXL1BOBe+zJySiFkHAINCtnQokbCJ/apCv0foqPiZVfhpywAAAAASUVORK5CYII=",lt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyAgMAAABjUWAiAAAACVBMVEX28ef48+n69esoK7jYAAAB4UlEQVQozw2OsW4bQQxEhwLXkDrysGdEqRRgVShfQQq8wOr2jD0jSpXCLvwXbtKfADlFqgSwC/9ljqweZgYzQFnb/QGepYhA9jzmTc1WaSEtQpbFgjWATI00ZZtIckXx8q2Oe5yEByBy+RHOTcM+VVTadULsvxvRC/q8WTwgcWGD+Mnaqa0oy2gw2pKFzK+PzEsus5hP9AHojKslVynLlioVTBEN8cjDNnZoR1uMGTiZAAN47HxMtEkGUE9b8HWzkqNX5Lpk0yVziAJOs46rK1pG/xNuXLjz95fSDoJE5IqG23MAYPtWoeWPvfVtIV/Ng9oH3W0gGMPIOqd4MK4QZ55dV61gOb8Zxp7I9qayaGxp6Q91cmC0ZRdBwEQVHWzSAanlZwVWc9yljeTCeaHjBVvlPSLeyeBUT2rPdJegQI103jVS3uYkyIx1il6mslMDedZuOkwzolsagvPuQAfp7cYg7k9V1NOxfq64PNSvMdwONV4VYEmqlbpZy5OAakRKkjPnL4CBv5/OZRgoWHBmNbxB0LgB1I4vXLine truncated
import{a0 as Ne,m as l,v as D,Q as xe,a6 as De,o as m,d as k,g as t,t as O,F as te,M as ie,u as a,a7 as T,a8 as Qe,H as he,p as Q,e as N,w as z,a9 as He,x as de,aa as We,f as J,J as ge,a5 as Ve,j as F,ab as Je,q as Te,ac as Pe,ad as Fe,ae as qe,V as Ge,L as Ue,a4 as Ze,af as Ye,ag as je,c as Xe}from"./vendor-JTttPx12.js";import{i as _e,u as $e}from"./loading-DbywvlSa.js";import{_ as le,A as Z,u as re}from"./index-BPmSTa9M.js";const et=(A,n,d,p)=>(A/=p/2,A<1?d/2*A*A+n:(A--,-d/2*(A*(A-2)-1)+n)),tt=()=>{let A,n,d,p,s,I,y,b,B,V,M,C,E;function c(){let v=A.scrollTop||A.scrollY||A.pageYOffset;return v=typeof v>"u"?0:v,v}function f(v){const S=v.getBoundingClientRect().top,oe=A.getBoundingClientRect?A.getBoundingClientRect().top:0;return S-oe+d}function r(v){A.scrollTo?A.scrollTo(0,v):A.scrollTop=v}function g(v){V||(V=v),M=v-V,C=I(M,d,b,B),r(C),M<B?requestAnimationFrame(g):R()}function R(){r(d+b),n&&y&&(n.setAttribute("tabindex","-1"),n.focus()),typeof E=="function"&&E(),V=!1}function L(v,S={}){switch(B=S.duration||1e3,s=S.offset||0,E=S.callback,I=S.easing||et,y=S.a11y||!1,typeof S.container){case"object":A=S.container;break;case"string":A=document.querySelector(S.container);break;default:A=window}switch(d=c(),typeof v){case"number":n=void 0,y=!1,p=d+v;break;case"object":n=v,p=f(n);break;case"string":n=document.querySelector(v),p=f(n);break}switch(b=p-d+s,typeof S.duration){case"number":B=S.duration;break;case"function":B=S.duration(b);break}requestAnimationFrame(g)}return L},$=tt(),ot=["data-chapterpos"],nt=["src"],st=["innerHTML"],at={__name:"ChapterContent",props:{chapterIndex:{type:Number,required:!0},contents:{type:Array,required:!0},title:{type:String,required:!0},spacing:{type:Object,required:!0},fontFamily:{type:String,required:!0},fontSize:{type:String,required:!0}},emits:["readedLengthChange"],setup(A,{expose:n,emit:d}){Ne(c=>({f67eb5da:p.spacing.letter,"5690efbe":p.spacing.line,"9487f53e":p.spacing.paragraph}));const p=A,s=c=>{const f=/<img[^>]*src="([^"]*(?:"[^>]+\})?)"[^>]*>/,r=c.match(f)[1];return _e(r)?Z.getProxyImageUrl(r,re().config.readWidth):r},I=c=>{c.target.src=Z.getProxyImageUrl(c.target.src,re().config.readWidth)},y=c=>{const f=/<img[^>]*src="[^"]*(?:"[^>]+\})?"[^>]*>/g;return c.replaceAll(f," ").length},b=l(()=>{let c=-1;return Array.from(p.contents,f=>(c+=y(f)+1,c))}),B=D(),V=D();n({scrollToReadedLength:c=>{if(c===0)return;let f=b.value.findIndex(r=>r>=c);f!==-1&&Qe(()=>{$(V.value[f],{duration:0})})}});let C=null;const E=d;return xe(()=>{C=new IntersectionObserver(c=>{for(let{target:f,isIntersecting:r}of c)r&&E("readedLengthChange",p.chapterIndex,parseInt(f.dataset.chapterpos))},{rootMargin:`0px 0px -${window.innerHeight-24}px 0px`}),C.observe(B.value),V.value.forEach(c=>{C.observe(c)})}),De(()=>{C==null||C.disconnect(),C=null}),(c,f)=>(m(),k(te,null,[t("div",{class:"title","data-chapterpos":"0",ref_key:"titleRef",ref:B},O(A.title),513),(m(!0),k(te,null,ie(A.contents,(r,g)=>(m(),k("div",{key:g,ref_for:!0,ref_key:"paragraphRef",ref:V,"data-chapterpos":a(b)[g]},[/^\s*<img[^>]*src[^>]+>$/.test(String(r))?(m(),k("img",{key:0,class:"full",src:s(r),onErrorOnce:I,loading:"lazy"},null,40,nt)):(m(),k("p",{key:1,style:T({fontFamily:A.fontFamily,fontSize:A.fontSize}),innerHTML:r},null,12,st))],8,ot))),128))],64))}},it=le(at,[["__scopeId","data-v-d37de557"]]),rt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyAgMAAABjUWAiAAAADFBMVEXr5djn4dTp49bt59rT6LKxAAACnElEQVQozw3NUUwScRzA8d8R6MF8YMIx8uk47hDSJbj14IPzOGc7jPLvwTGg5uAYDbe2tt56cLtznvEnS6yDqCcEaWi91DvrbLJZz7b1aFtz1aO+2OZWvn+/+4CHeB6BMYaqBLfjPNRY6RFT2JJYby+uAk4WUTrtlmJ4hgPYb2q1XGDQjaK8pgJHvqNaAX+KyuIkDXpgQinb46nOulnn4b5laUHTxLfseeArAoNOeJlOIjdoal0n1FA7tKFv5roK+YaHOqP3P0XyKHPHY+MhTRe5uCZnKhtJKw2eSrSoBDPLtpZuNcFNJcFyiCMxOaaHIfXz1e8HQbWLySrBQ4x0x1qlhnHlnz2HQEC6TNb0gTHXa7IKhcaHqkE015hk9whA0YeWiLIXf7Fa2CZo3DjqjB4tTuF8jIcbfcEx5z/w4sXpQhXW+ju0cqh7icTFmRMaG+v6CIvTjcSpHcH8JEsF3EPh3fRthYdVLLgI2fWXm85/pGFE4l046s70L+yKCcirGFR+jbpy3kMmiCGHrSezVONsn1RBixncyk2PcVWk7DlgxHo8iZwDyq5uAUD854dZhdIFYzKoQig2haUKi1lVufz2RZUZPZ41n/hrOQB6h0Hhg8I367FNoEHgeM/KY7szSeQwD8q2WE3HM35ZLl0K1MJiOtHIkBclRQUwZnyOWcNsRQQgVLj1PSqkjF9DsoOSaSg3iinKzvfmgsNFFfpP/2T3GLGvL4fHEfwIX1sVvXcPqLztehWGcfn9nI2U9nTfCgJPe/jFPLZwgVEzimBgAm0VIyK2tt1cE/AzQdLK+SxLSQ4aDCZnnId94OG2S1XwvnTbNk/ZnhyRCQT+sZM6z9g6LXL1BOBe+zJySiFkHAINCtnQokbCJ/apCv0foqPiZVfhpywAAAAASUVORK5CYII=",lt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyAgMAAABjUWAiAAAACVBMVEX28ef48+n69esoK7jYAAAB4UlEQVQozw2OsW4bQQxEhwLXkDrysGdEqRRgVShfQQq8wOr2jD0jSpXCLvwXbtKfADlFqgSwC/9ljqweZgYzQFnb/QGepYhA9jzmTc1WaSEtQpbFgjWATI00ZZtIckXx8q2Oe5yEByBy+RHOTcM+VVTadULsvxvRC/q8WTwgcWGD+Mnaqa0oy2gw2pKFzK+PzEsus5hP9AHojKslVynLlioVTBEN8cjDNnZoR1uMGTiZAAN47HxMtEkGUE9b8HWzkqNX5Lpk0yVziAJOs46rK1pG/xNuXLjz95fSDoJE5IqG23MAYPtWoeWPvfVtIV/Ng9oH3W0gGMPIOqd4MK4QZ55dV61gOb8Zxp7I9qayaGxp6Q91cmC0ZRdBwEQVHWzSAanlZwVWc9yljeTCeaHjBVvlPSLeyeBUT2rPdJegQI103jVS3uYkyIx1il6mslMDedZuOkwzolsagvPuQAfp7cYg7k9V1NOxfq64PNSvMdwONV4VYEmqlbpZy5OAakRKkjPnL4CBv5/OZRgoWHBmNbxB0LgB1I4vXLine truncated
@@ -1 +1 @@
import{a0 as $,m as y,o as l,d as p,g as t,F as U,M as W,t as m,c as q,w as M,f as V,J as L,u as J,a1 as H,a2 as G,e as E,I as X,p as N,v as T,a3 as j,L as ee,a4 as te,Q as se,j as k,y as oe,D as ae,a5 as ne}from"./vendor-JTttPx12.js";import{d as re,i as ie,u as ce}from"./loading-DbywvlSa.js";import{_ as x,A as v,u as le,l as D,v as de,s as ue}from"./index-2f7oRvfk.js";const he={class:"books-wrapper"},ge={class:"wrapper"},pe=["onClick"],me={class:"cover-img"},fe=["src"],ve={class:"info"},we={class:"name"},Be={class:"sub"},Ce={class:"author"},ke={key:0,class:"tags"},ye={key:1,class:"update-info"},Se={class:"size"},Ae={class:"date"},Ie={key:0,class:"intro"},Re={key:1,class:"dur-chapter"},_e={class:"last-chapter"},Le={__name:"BookItems",props:["books","isSearch"],emits:["bookClick"],setup(e,{emit:r}){$(a=>({"6068553a":J(C)}));const c=e,f=r,B=a=>f("bookClick",a),w=a=>ie(a)?v.getProxyCoverUrl(a):a,S=a=>{a.target.src=v.getProxyCoverUrl(a.target.src)},C=y(()=>c.isSearch?"space-between":"flex-start");return(a,d)=>{const u=H;return l(),p("div",he,[t("div",ge,[(l(!0),p(U,null,W(e.books,n=>{var A;return l(),p("div",{class:"book",key:n.bookUrl,onClick:I=>B(n)},[t("div",me,[(l(),p("img",{class:"cover",src:w(n.coverUrl),key:n.coverUrl,onErrorOnce:S,alt:"",loading:"lazy"},null,40,fe))]),t("div",ve,[t("div",we,m(n.name),1),t("div",Be,[t("div",Ce,m(n.author),1),e.isSearch?(l(),p("div",ke,[(l(!0),p(U,null,W((A=n.kind)==null?void 0:A.split(",").slice(0,2),I=>(l(),q(u,{key:I},{default:M(()=>[V(m(I),1)]),_:2},1024))),128))])):L("",!0),e.isSearch?L("",!0):(l(),p("div",ye,[d[0]||(d[0]=t("div",{class:"dot"},"•",-1)),t("div",Se,"共"+m(n.totalChapterNum)+"章",1),d[1]||(d[1]=t("div",{class:"dot"},"•",-1)),t("div",Ae,m(J(re)(n.lastCheckTime)),1)]))]),e.isSearch?(l(),p("div",Ie,m(n.intro),1)):L("",!0),e.isSearch?L("",!0):(l(),p("div",Re," 已读:"+m(n.durChapterTitle),1)),t("div",_e,"最新:"+m(n.latestChapterTitle),1)])],8,pe)}),128))])])}}},Ee=x(Le,[["__scopeId","data-v-136fc284"]]),Te="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAECUlEQVRYR7WXTYhcRRDHq3pY9yKrYBQ8KBsjgvHgwRhiQBTjYZm4Xe8NusawhwS/o9GLoKhgBGPAgJd1NdGIXwtZTbRf9Rqzl6gHTVyDeIkIgnEOghAM6oKHzTJd0sO8Zaa338zb7NjwmJn++Ndv+lVVVyOsoM3Ozl69sLBAiHiDc26NUuoKv9w5d14p9aeI/DI4OMgjIyN/lJXFMhOttQ8BgBaR0TLzEXEGAKzW+lCv+V0BmLmGiLtF5M5eQrFxRPxaRCaI6LOi9YUAzPwGADxxMYYjayaJ6MkoZKyTmU8AwF19Mp7LfElEW0LNZTvAzIcBYFufjedy00T0QLt2B4AxZo9S6qX/yXhT1jn3cpqme3IbSwDM/DgAvNlu3Dm3Uyl1HAA2IOJ2EdleEu5Io9H4EBHPVCqVLSISRsMuInrLazUBpqamhoaGhr4TkRsDgLVpmtbzPmPMLQBwOwD4vvzxw8P5IyJztVrtVL4my7L1iPhTx7Yj/jw/P79pfHx8vgmQZdkLiPhK+O8GBgauqVarv5f819FpxpjLlVJ/hYMi8mKSJHubAMz8KwBcF1EYI6IjqwRIlFImonGWiNZhlmVVRDxWYGTVAMx8HwB8EtMXka1orT0gIo9GJrxNRLH+FW8IMx8EgEeW5QDEgx5gTkQ2Bk7yr9b60hVb6rKAmc8BwJWBne+x4P3XiWhtPwGstV9FzpSzHuBvALgsMHaaiDp2ZbUwWZZNIuKuQOcfD7AAAJeEcaq1Xr9ao+3rmdknnscCzQse4LdWEukYazQaa2q12vl+QTDztwCwOdCr+zA8iYi3RQwREdl+ADDz9QDwIwB0OLaInPJRcEhEHoyEyAmt9d39ALDW2lg1hYjv+lfgC4WJgkTxcJIkPcuqbpC+qgKATwvm7PYAGwDgdBeRZ4notYvZCWPMDqXUe13W3to8C6y10yJyv//u6zj/2R6ziPiRiBwt6xPMrBExFZEdRcYR8WOt9bb8MNoKAJ+3Jvtwed05d4dSKtz+c4h4VGsdrRWttZMici8AXFVix+4homNLBUmWZQcQMc/9x4mommXZ84i4t11MKbV5dHR06bxvH5uZmbnZOfdN6O0RmMNE1CxulgCstdeKyBcAcFPrVTyltZ4wxiSVSuXplkhda72zh9P1rClFZFOSJHMdAP5Hq3rxR6eH+IGIvIOuqFlr94nIc10WdRzxy6riAMJnr2nn3JlcME3TppMWNWvtfhF5pmB8WX0RvZgEEEtaYUUbM2KtfUdE/FUubNHipvBmZIxZp5TaDwBprlQGIHLqzSHiPq01x4B7Xk6Z2d8TfDwPlwFozfd1f90598Hi4uKrY2NjFwrzQVkP81nNi/byAWOMv8gOp2n6fhnt/wDqJrRWLmhIrwAAAABJRU5ErkJggg==",Ne=G({beforeRouteEnter:(e,r,c)=>{v.getReadConfig().then(f=>f.data).then(({isSuccess:f,data:B})=>{f?c(w=>{w.saveReadConfig(B)}):c()}).catch(()=>c())},setup:()=>{const e=le(),r=y(()=>e.isNight),c=T({name:"尚无阅读记录",author:"",url:"",chapterIndex:0,chapterPos:0,isSeachBook:!1}),f=T(null),{showLoading:B,closeLoading:w,loadingWrapper:S,isLoading:C}=ce(f,"正在获取书籍信息"),a=j([]),d=y(()=>e.shelf),u=T(""),n=T(!1);ee(()=>{if(!(n.value&&u.value!="")){if(n.value=!1,a.value=[],u.value==""){a.value=d.value;return}a.value=d.value.filter(s=>s.name.includes(u.value)||s.author.includes(u.value))}});const A=()=>{u.value!=""&&(a.value=[],e.clearSearchBooks(),B(),n.value=!0,v.search(u.value,s=>{C&&w();try{e.setSearchBooks(JSON.parse(s)),a.value=e.searchBooks}catch(o){throw k.error("后端数据错误"),o}},()=>{w(),a.value.length==0&&k.info("搜索结果为空")}))},I=y(()=>e.connectStatus),O=y(()=>e.connectType),Z=y(()=>e.newConnect),F=()=>{ne.prompt("请输入 后端地址 ( 如:http://127.0.0.1:9527 或者通过内网穿透的地址)","提示",{confirmButtonText:"确定",cancelButtonText:"取消",inputPlaceholder:D,inputValidator:s=>{var o;try{de(s)}catch(i){return((o=i==null?void 0:i.cause)==null?void 0:o.message)??i.message}return!0},beforeClose:(s,o,i)=>{if(s==="confirm"){e.setNewConnect(!0),o.confirmButtonLoading=!0,o.confirmButtonText="校验中……";const h=new URL(o.inputValue);v.testLeagdoHttpUrlConnection(h).then(function(g){z(g),o.confirmButtonLoading=!1,e.setConnectType("Line truncated
import{a0 as $,m as y,o as l,d as p,g as t,F as U,M as W,t as m,c as q,w as M,f as V,J as L,u as J,a1 as H,a2 as G,e as E,I as X,p as N,v as T,a3 as j,L as ee,a4 as te,Q as se,j as k,y as oe,D as ae,a5 as ne}from"./vendor-JTttPx12.js";import{d as re,i as ie,u as ce}from"./loading-DbywvlSa.js";import{_ as x,A as v,u as le,l as D,v as de,s as ue}from"./index-BPmSTa9M.js";const he={class:"books-wrapper"},ge={class:"wrapper"},pe=["onClick"],me={class:"cover-img"},fe=["src"],ve={class:"info"},we={class:"name"},Be={class:"sub"},Ce={class:"author"},ke={key:0,class:"tags"},ye={key:1,class:"update-info"},Se={class:"size"},Ae={class:"date"},Ie={key:0,class:"intro"},Re={key:1,class:"dur-chapter"},_e={class:"last-chapter"},Le={__name:"BookItems",props:["books","isSearch"],emits:["bookClick"],setup(e,{emit:r}){$(a=>({"6068553a":J(C)}));const c=e,f=r,B=a=>f("bookClick",a),w=a=>ie(a)?v.getProxyCoverUrl(a):a,S=a=>{a.target.src=v.getProxyCoverUrl(a.target.src)},C=y(()=>c.isSearch?"space-between":"flex-start");return(a,d)=>{const u=H;return l(),p("div",he,[t("div",ge,[(l(!0),p(U,null,W(e.books,n=>{var A;return l(),p("div",{class:"book",key:n.bookUrl,onClick:I=>B(n)},[t("div",me,[(l(),p("img",{class:"cover",src:w(n.coverUrl),key:n.coverUrl,onErrorOnce:S,alt:"",loading:"lazy"},null,40,fe))]),t("div",ve,[t("div",we,m(n.name),1),t("div",Be,[t("div",Ce,m(n.author),1),e.isSearch?(l(),p("div",ke,[(l(!0),p(U,null,W((A=n.kind)==null?void 0:A.split(",").slice(0,2),I=>(l(),q(u,{key:I},{default:M(()=>[V(m(I),1)]),_:2},1024))),128))])):L("",!0),e.isSearch?L("",!0):(l(),p("div",ye,[d[0]||(d[0]=t("div",{class:"dot"},"•",-1)),t("div",Se,"共"+m(n.totalChapterNum)+"章",1),d[1]||(d[1]=t("div",{class:"dot"},"•",-1)),t("div",Ae,m(J(re)(n.lastCheckTime)),1)]))]),e.isSearch?(l(),p("div",Ie,m(n.intro),1)):L("",!0),e.isSearch?L("",!0):(l(),p("div",Re," 已读:"+m(n.durChapterTitle),1)),t("div",_e,"最新:"+m(n.latestChapterTitle),1)])],8,pe)}),128))])])}}},Ee=x(Le,[["__scopeId","data-v-136fc284"]]),Te="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAECUlEQVRYR7WXTYhcRRDHq3pY9yKrYBQ8KBsjgvHgwRhiQBTjYZm4Xe8NusawhwS/o9GLoKhgBGPAgJd1NdGIXwtZTbRf9Rqzl6gHTVyDeIkIgnEOghAM6oKHzTJd0sO8Zaa338zb7NjwmJn++Ndv+lVVVyOsoM3Ozl69sLBAiHiDc26NUuoKv9w5d14p9aeI/DI4OMgjIyN/lJXFMhOttQ8BgBaR0TLzEXEGAKzW+lCv+V0BmLmGiLtF5M5eQrFxRPxaRCaI6LOi9YUAzPwGADxxMYYjayaJ6MkoZKyTmU8AwF19Mp7LfElEW0LNZTvAzIcBYFufjedy00T0QLt2B4AxZo9S6qX/yXhT1jn3cpqme3IbSwDM/DgAvNlu3Dm3Uyl1HAA2IOJ2EdleEu5Io9H4EBHPVCqVLSISRsMuInrLazUBpqamhoaGhr4TkRsDgLVpmtbzPmPMLQBwOwD4vvzxw8P5IyJztVrtVL4my7L1iPhTx7Yj/jw/P79pfHx8vgmQZdkLiPhK+O8GBgauqVarv5f819FpxpjLlVJ/hYMi8mKSJHubAMz8KwBcF1EYI6IjqwRIlFImonGWiNZhlmVVRDxWYGTVAMx8HwB8EtMXka1orT0gIo9GJrxNRLH+FW8IMx8EgEeW5QDEgx5gTkQ2Bk7yr9b60hVb6rKAmc8BwJWBne+x4P3XiWhtPwGstV9FzpSzHuBvALgsMHaaiDp2ZbUwWZZNIuKuQOcfD7AAAJeEcaq1Xr9ao+3rmdknnscCzQse4LdWEukYazQaa2q12vl+QTDztwCwOdCr+zA8iYi3RQwREdl+ADDz9QDwIwB0OLaInPJRcEhEHoyEyAmt9d39ALDW2lg1hYjv+lfgC4WJgkTxcJIkPcuqbpC+qgKATwvm7PYAGwDgdBeRZ4notYvZCWPMDqXUe13W3to8C6y10yJyv//u6zj/2R6ziPiRiBwt6xPMrBExFZEdRcYR8WOt9bb8MNoKAJ+3Jvtwed05d4dSKtz+c4h4VGsdrRWttZMici8AXFVix+4homNLBUmWZQcQMc/9x4mommXZ84i4t11MKbV5dHR06bxvH5uZmbnZOfdN6O0RmMNE1CxulgCstdeKyBcAcFPrVTyltZ4wxiSVSuXplkhda72zh9P1rClFZFOSJHMdAP5Hq3rxR6eH+IGIvIOuqFlr94nIc10WdRzxy6riAMJnr2nn3JlcME3TppMWNWvtfhF5pmB8WX0RvZgEEEtaYUUbM2KtfUdE/FUubNHipvBmZIxZp5TaDwBprlQGIHLqzSHiPq01x4B7Xk6Z2d8TfDwPlwFozfd1f90598Hi4uKrY2NjFwrzQVkP81nNi/byAWOMv8gOp2n6fhnt/wDqJrRWLmhIrwAAAABJRU5ErkJggg==",Ne=G({beforeRouteEnter:(e,r,c)=>{v.getReadConfig().then(f=>f.data).then(({isSuccess:f,data:B})=>{f?c(w=>{w.saveReadConfig(B)}):c()}).catch(()=>c())},setup:()=>{const e=le(),r=y(()=>e.isNight),c=T({name:"尚无阅读记录",author:"",url:"",chapterIndex:0,chapterPos:0,isSeachBook:!1}),f=T(null),{showLoading:B,closeLoading:w,loadingWrapper:S,isLoading:C}=ce(f,"正在获取书籍信息"),a=j([]),d=y(()=>e.shelf),u=T(""),n=T(!1);ee(()=>{if(!(n.value&&u.value!="")){if(n.value=!1,a.value=[],u.value==""){a.value=d.value;return}a.value=d.value.filter(s=>s.name.includes(u.value)||s.author.includes(u.value))}});const A=()=>{u.value!=""&&(a.value=[],e.clearSearchBooks(),B(),n.value=!0,v.search(u.value,s=>{C&&w();try{e.setSearchBooks(JSON.parse(s)),a.value=e.searchBooks}catch(o){throw k.error("后端数据错误"),o}},()=>{w(),a.value.length==0&&k.info("搜索结果为空")}))},I=y(()=>e.connectStatus),O=y(()=>e.connectType),Z=y(()=>e.newConnect),F=()=>{ne.prompt("请输入 后端地址 ( 如:http://127.0.0.1:9527 或者通过内网穿透的地址)","提示",{confirmButtonText:"确定",cancelButtonText:"取消",inputPlaceholder:D,inputValidator:s=>{var o;try{de(s)}catch(i){return((o=i==null?void 0:i.cause)==null?void 0:o.message)??i.message}return!0},beforeClose:(s,o,i)=>{if(s==="confirm"){e.setNewConnect(!0),o.confirmButtonLoading=!0,o.confirmButtonText="校验中……";const h=new URL(o.inputValue);v.testLeagdoHttpUrlConnection(h).then(function(g){z(g),o.confirmButtonLoading=!1,e.setConnectType("Line truncated
@@ -1,10 +1,10 @@
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./BookShelf-CnjAvi1K.js","./vendor-JTttPx12.js","./vendor-Bui7wm94.css","./loading-DbywvlSa.js","./loading-DyaW7RXx.css","./BookShelf-BewVO7Ij.css","./BookChapter-DmbReSQh.js","./BookChapter-BgNMFAcT.css"])))=>i.map(i=>d[i]);
import{r as Be,o as g,c as w,a as ne,b as re,d as x,e as m,w as p,f as y,u as s,l as T,g as h,F as O,E as Ee,h as me,i as xe,j as B,k as Se,m as D,t as X,n as he,p as fe,q as se,s as Ie,v as P,x as K,y as ye,z as Le,A as Ne,B as ce,V as Re,C as Ve,D as Y,G as Te,H as le,I as Oe,J as N,K as Pe,L as Je,M as j,N as be,O as _e,P as F,Q as De,R as $e,S as Ae,T as je,U as He,W as Ke,X as Me,Y as We,Z as Fe,_ as qe,$ as ze}from"./vendor-JTttPx12.js";(function(){const o=document.createElement("link").relList;if(o&&o.supports&&o.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))r(n);new MutationObserver(n=>{for(const l of n)if(l.type==="childList")for(const c of l.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&r(c)}).observe(document,{childList:!0,subtree:!0});function t(n){const l={};return n.integrity&&(l.integrity=n.integrity),n.referrerPolicy&&(l.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?l.credentials="include":n.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function r(n){if(n.ep)return;n.ep=!0;const l=t(n);fetch(n.href,l)}})();const J=(e,o)=>{const t=e.__vccOpts||e;for(const[r,n]of o)t[r]=n;return t},Ge={};function Qe(e,o){const t=Be("router-view");return g(),w(t)}const Xe=J(Ge,[["render",Qe]]),Ye="modulepreload",Ze=function(e,o){return new URL(e,o).href},ue={},de=function(o,t,r){let n=Promise.resolve();if(t&&t.length>0){const c=document.getElementsByTagName("link"),u=document.querySelector("meta[property=csp-nonce]"),k=(u==null?void 0:u.nonce)||(u==null?void 0:u.getAttribute("nonce"));n=Promise.allSettled(t.map(b=>{if(b=Ze(b,r),b in ue)return;ue[b]=!0;const C=b.endsWith(".css"),I=C?'[rel="stylesheet"]':"";if(!!r)for(let _=c.length-1;_>=0;_--){const v=c[_];if(v.href===b&&(!C||v.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${b}"]${I}`))return;const i=document.createElement("link");if(i.rel=C?"stylesheet":Ye,C||(i.as="script"),i.crossOrigin="",i.href=b,k&&i.setAttribute("nonce",k),document.head.appendChild(i),C)return new Promise((_,v)=>{i.addEventListener("load",_),i.addEventListener("error",()=>v(new Error(`Unable to preload CSS for ${b}`)))})}))}function l(c){const u=new Event("vite:preloadError",{cancelable:!0});if(u.payload=c,window.dispatchEvent(u),!u.defaultPrevented)throw c}return n.then(c=>{for(const u of c||[])u.status==="rejected"&&l(u.reason);return o().catch(l)})},ke=[{path:"/",name:"shelf",component:()=>de(()=>import("./BookShelf-CnjAvi1K.js"),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url)},{path:"/chapter",name:"chapter",component:()=>de(()=>import("./BookChapter-DmbReSQh.js"),__vite__mapDeps([6,1,2,3,4,7]),import.meta.url)}];ne({history:re(),routes:ke});const et={style:{"margin-top":"20px"}},tt={__name:"SourceHelp",setup(e){return(o,t)=>{const r=Ee,n=me;return g(),x(O,null,[m(r,{icon:s(T),href:"/help/#appHelp",target:"_blank"},{default:p(()=>t[0]||(t[0]=[y("APP帮助文档")])),_:1},8,["icon"]),t[19]||(t[19]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#ruleHelp",target:"_blank"},{default:p(()=>t[1]||(t[1]=[y("书源制作教程")])),_:1},8,["icon"]),t[20]||(t[20]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#jsHelp",target:"_blank"},{default:p(()=>t[2]||(t[2]=[y("js变量和函数")])),_:1},8,["icon"]),t[21]||(t[21]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#xpathHelp",target:"_blank"},{default:p(()=>t[3]||(t[3]=[y("xpath语法教程")])),_:1},8,["icon"]),t[22]||(t[22]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#regexHelp",target:"_blank"},{default:p(()=>t[4]||(t[4]=[y("正则表达式教程")])),_:1},8,["icon"]),t[23]||(t[23]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#txtTocRuleHelp",target:"_blank"},{default:p(()=>t[5]||(t[5]=[y("txt目录正则说明")])),_:1},8,["icon"]),t[24]||(t[24]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#debugHelp",target:"_blank"},{default:p(()=>t[6]||(t[6]=[y("书源调试说明")])),_:1},8,["icon"]),t[25]||(t[25]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#httpTTSHelp",target:"_blank"},{default:p(()=>t[7]||(t[7]=[y("在线朗读规则")])),_:1},8,["icon"]),t[26]||(t[26]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#webDavBookHelp",target:"_blank"},{default:p(()=>t[8]||(t[8]=[y(" WebDav书籍简明使用教程")])),_:1},8,["icon"]),t[27]||(t[27]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#webDavHelp",target:"_blank"},{default:p(()=>t[9]||(t[9]=[y(" WebDav备份教程")])),_:1},8,["icon"]),t[28]||(t[28]=h("br",null,null,-1)),m(r,{icon:s(T),href:"https://regexr-cn.com/",target:"_blank"},{default:p(()=>t[10]||(t[10]=[y("正则表达式在线验证工具")])),_:1},8,["icon"]),t[29]||(t[29]=h("br",null,null,-1)),h("div",et,[h("span",null,[m(n,null,{default:p(()=>t[11]||(t[11]=[h("code",null,"^$()[]{}.?+*|",-1),y(" 这些是Java正则特殊符号,匹配需转义")])),_:1})]),t[15]||(t[15]=h("br",null,null,-1)),h("span",null,[m(n,null,{default:p(()=>t[12]||(t[12]=[h("code",null,"(?sLine truncated
`},l=async()=>{t.value="";try{await H.saveSource(o.currentSource)}catch(u){throw o.debugFinish(),u}H.debug(o.currentSourceUrl,r.value||o.searchKey,n,o.debugFinish)},c=D(()=>/bookSource/i.test(window.location.href));return(u,k)=>{const b=Y;return g(),x(O,null,[s(c)?(g(),w(b,{key:0,id:"debug-key",modelValue:s(r),"onUpdate:modelValue":k[0]||(k[0]=C=>K(r)?r.value=C:null),placeholder:"搜索书名、作者","prefix-icon":s(ye),style:{"padding-bottom":"4px"},onKeydown:Oe(l,["enter"])},null,8,["modelValue","prefix-icon"])):N("",!0),m(b,{id:"debug-text",modelValue:s(t),"onUpdate:modelValue":k[1]||(k[1]=C=>K(t)?t.value=C:null),type:"textarea",readonly:"",rows:29,placeholder:"这里用于输出调试信息"},null,8,["modelValue"])],64)}}},Pt=J(Ot,[["__scopeId","data-v-e289b5e4"]]),Jt=Se("book",{state:()=>({connectStatus:"正在连接后端服务器……",connectType:"primary",newConnect:!0,searchBooks:[],shelf:[],catalog:[],readingBook:{index:0,chapterPos:0},popCataVisible:!1,contentLoading:!0,showContent:!1,config:{theme:0,font:0,fontSize:18,readWidth:800,infiniteLoading:!1,customFontName:"",jumpDuration:1e3,spacing:{paragraph:1,line:.8,letter:0}},miniInterface:!1,readSettingsVisible:!1}),getters:{bookProgress:e=>{var c;if(e.catalog.length==0)return;const{index:o,chapterPos:t,bookName:r,bookAuthor:n}=e.readingBook;let l=(c=e.catalog[o])==null?void 0:c.title;if(l)return{name:r,author:n,durChapterIndex:o,durChapterPos:t,durChapterTime:new Date().getTime(),durChapterTitle:l}},theme:e=>e.config.theme,isNight:e=>e.config.theme==6},actions:{setConnectStatus(e){this.connectStatus=e},setConnectType(e){this.connectType=e},setNewConnect(e){this.newConnect=e},addBooks(e){this.shelf=e},clearBooks(){this.shelf=[]},setCatalog(e){this.catalog=e},setPopCataVisible(e){this.popCataVisible=e},setContentLoading(e){this.contentLoading=e},setReadingBook(e){this.readingBook=e},setConfig(e){this.config=Object.assign({},this.config,e)},setReadSettingsVisible(e){this.readSettingsVisible=e},setShowContent(e){this.showContent=e},setMiniInterface(e){this.miniInterface=e},async setSearchBooks(e){e.forEach(o=>{this.shelf.find(r=>r.bookUrl==o.bookUrl)===void 0&&this.searchBooks.push(o)})},clearSearchBooks(){this.searchBooks=[]},async saveBookProgress(){return this.bookProgress?H.saveBookProgress(this.bookProgress):Promise.resolve()}}}),Dt=Pe(),$t={__name:"SourceJson",setup(e){const o=M(),t=P(""),r=async n=>{try{o.changeEditTabSource(JSON.parse(n))}catch{B({message:"粘贴的源格式错误",type:"error"})}};return Je(async()=>{let n=o.editTabSource;Object.keys(n).length>0?t.value=JSON.stringify(n,null,4):t.value=""}),(n,l)=>{const c=Y;return g(),w(c,{id:"source-json",modelValue:s(t),"onUpdate:modelValue":l[0]||(l[0]=u=>K(t)?t.value=u:null),type:"textarea",placeholder:"这里输出序列化的JSON数据,可直接导入'阅读'APP",rows:30,onChange:r,style:{"margin-bottom":"4px"}},null,8,["modelValue"])}}},At=J($t,[["__scopeId","data-v-4e022d46"]]),jt={__name:"SourceTabTools",setup(e){const o=M(),t=D({get:()=>o.currentTab,set:n=>o.currentTab=n}),r=P([["editTab","编辑源"],["editDebug","调试源"],["editList","源列表"],["editHelp","帮助信息"]]);return(n,l)=>{const c=At,u=Pt,k=Tt,b=ot,C=be,I=_e;return g(),w(I,{modelValue:s(t),"onUpdate:modelValue":l[0]||(l[0]=d=>K(t)?t.value=d:null)},{default:p(()=>[(g(!0),x(O,null,j(s(r),(d,i)=>(g(),w(C,{key:d[0],name:d[0],label:d[1]},{default:p(()=>[i==0?(g(),w(c,{key:0})):N("",!0),i==1?(g(),w(u,{key:1})):N("",!0),i==2?(g(),w(k,{key:2})):N("",!0),i==3?(g(),w(b,{key:3})):N("",!0)]),_:2},1032,["name","label"]))),128))]),_:1},8,["modelValue"])}}},Ht=J(jt,[["__scopeId","data-v-8249c810"]]),Kt={class:"menu flex-column-center"},Mt={class:"hotkeys-header flex-space-between"},Wt=["id"],Ft={key:0},qt={class:"hotkeys-settings flex-column-center"},zt={class:"title"},Gt={class:"hotkeys-item__content"},Qt={key:0},Xt={key:0},Yt={__name:"ToolBar",setup(e){const o=M(),t=()=>{const f=B({message:"加载中……",showClose:!0,duration:0});H.getSources().then(({data:a})=>{a.isSuccess?(o.changeTabName("editList"),o.saveSources(a.data),B({message:`成功拉取${a.data.length}条源`,type:"success"})):B({message:a.errorMsg??"后端错误",type:"error"})}).finally(()=>f.close())},r=()=>{let f=o.sources;if(o.changeTabName("editList"),f.length===0)return B({message:"空空如也",type:"info"});B({message:"正在推送中",type:"info"}),H.saveSources(f).then(({data:a})=>{if(a.isSuccess){let S=a.data;if(Array.isArray(S)){let $="";f.length>S.length&&($=`
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./BookShelf-8j8SHAZO.js","./vendor-JTttPx12.js","./vendor-Bui7wm94.css","./loading-DbywvlSa.js","./loading-DyaW7RXx.css","./BookShelf-BewVO7Ij.css","./BookChapter-DNDNYhLt.js","./BookChapter-BgNMFAcT.css"])))=>i.map(i=>d[i]);
import{r as Be,o as g,c as w,a as ne,b as re,d as x,e as m,w as p,f as y,u as s,l as T,g as h,F as O,E as Ee,h as me,i as xe,j as B,k as Se,m as D,t as X,n as he,p as fe,q as se,s as Ie,v as P,x as K,y as ye,z as Le,A as Ne,B as ce,V as Re,C as Ve,D as Y,G as Te,H as le,I as Oe,J as N,K as Pe,L as Je,M as j,N as be,O as _e,P as F,Q as De,R as $e,S as Ae,T as je,U as He,W as Ke,X as Me,Y as We,Z as Fe,_ as qe,$ as ze}from"./vendor-JTttPx12.js";(function(){const o=document.createElement("link").relList;if(o&&o.supports&&o.supports("modulepreload"))return;for(const n of document.querySelectorAll('link[rel="modulepreload"]'))r(n);new MutationObserver(n=>{for(const l of n)if(l.type==="childList")for(const c of l.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&r(c)}).observe(document,{childList:!0,subtree:!0});function t(n){const l={};return n.integrity&&(l.integrity=n.integrity),n.referrerPolicy&&(l.referrerPolicy=n.referrerPolicy),n.crossOrigin==="use-credentials"?l.credentials="include":n.crossOrigin==="anonymous"?l.credentials="omit":l.credentials="same-origin",l}function r(n){if(n.ep)return;n.ep=!0;const l=t(n);fetch(n.href,l)}})();const J=(e,o)=>{const t=e.__vccOpts||e;for(const[r,n]of o)t[r]=n;return t},Ge={};function Qe(e,o){const t=Be("router-view");return g(),w(t)}const Xe=J(Ge,[["render",Qe]]),Ye="modulepreload",Ze=function(e,o){return new URL(e,o).href},ue={},de=function(o,t,r){let n=Promise.resolve();if(t&&t.length>0){const c=document.getElementsByTagName("link"),u=document.querySelector("meta[property=csp-nonce]"),k=(u==null?void 0:u.nonce)||(u==null?void 0:u.getAttribute("nonce"));n=Promise.allSettled(t.map(b=>{if(b=Ze(b,r),b in ue)return;ue[b]=!0;const C=b.endsWith(".css"),I=C?'[rel="stylesheet"]':"";if(!!r)for(let _=c.length-1;_>=0;_--){const v=c[_];if(v.href===b&&(!C||v.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${b}"]${I}`))return;const i=document.createElement("link");if(i.rel=C?"stylesheet":Ye,C||(i.as="script"),i.crossOrigin="",i.href=b,k&&i.setAttribute("nonce",k),document.head.appendChild(i),C)return new Promise((_,v)=>{i.addEventListener("load",_),i.addEventListener("error",()=>v(new Error(`Unable to preload CSS for ${b}`)))})}))}function l(c){const u=new Event("vite:preloadError",{cancelable:!0});if(u.payload=c,window.dispatchEvent(u),!u.defaultPrevented)throw c}return n.then(c=>{for(const u of c||[])u.status==="rejected"&&l(u.reason);return o().catch(l)})},ke=[{path:"/",name:"shelf",component:()=>de(()=>import("./BookShelf-8j8SHAZO.js"),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url)},{path:"/chapter",name:"chapter",component:()=>de(()=>import("./BookChapter-DNDNYhLt.js"),__vite__mapDeps([6,1,2,3,4,7]),import.meta.url)}];ne({history:re(),routes:ke});const et={style:{"margin-top":"20px"}},tt={__name:"SourceHelp",setup(e){return(o,t)=>{const r=Ee,n=me;return g(),x(O,null,[m(r,{icon:s(T),href:"/help/#appHelp",target:"_blank"},{default:p(()=>t[0]||(t[0]=[y("APP帮助文档")])),_:1},8,["icon"]),t[19]||(t[19]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#ruleHelp",target:"_blank"},{default:p(()=>t[1]||(t[1]=[y("书源制作教程")])),_:1},8,["icon"]),t[20]||(t[20]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#jsHelp",target:"_blank"},{default:p(()=>t[2]||(t[2]=[y("js变量和函数")])),_:1},8,["icon"]),t[21]||(t[21]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#xpathHelp",target:"_blank"},{default:p(()=>t[3]||(t[3]=[y("xpath语法教程")])),_:1},8,["icon"]),t[22]||(t[22]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#regexHelp",target:"_blank"},{default:p(()=>t[4]||(t[4]=[y("正则表达式教程")])),_:1},8,["icon"]),t[23]||(t[23]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#txtTocRuleHelp",target:"_blank"},{default:p(()=>t[5]||(t[5]=[y("txt目录正则说明")])),_:1},8,["icon"]),t[24]||(t[24]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#debugHelp",target:"_blank"},{default:p(()=>t[6]||(t[6]=[y("书源调试说明")])),_:1},8,["icon"]),t[25]||(t[25]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#httpTTSHelp",target:"_blank"},{default:p(()=>t[7]||(t[7]=[y("在线朗读规则")])),_:1},8,["icon"]),t[26]||(t[26]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#webDavBookHelp",target:"_blank"},{default:p(()=>t[8]||(t[8]=[y(" WebDav书籍简明使用教程")])),_:1},8,["icon"]),t[27]||(t[27]=h("br",null,null,-1)),m(r,{icon:s(T),href:"/help/#webDavHelp",target:"_blank"},{default:p(()=>t[9]||(t[9]=[y(" WebDav备份教程")])),_:1},8,["icon"]),t[28]||(t[28]=h("br",null,null,-1)),m(r,{icon:s(T),href:"https://regexr-cn.com/",target:"_blank"},{default:p(()=>t[10]||(t[10]=[y("正则表达式在线验证工具")])),_:1},8,["icon"]),t[29]||(t[29]=h("br",null,null,-1)),h("div",et,[h("span",null,[m(n,null,{default:p(()=>t[11]||(t[11]=[h("code",null,"^$()[]{}.?+*|",-1),y(" 这些是Java正则特殊符号,匹配需转义")])),_:1})]),t[15]||(t[15]=h("br",null,null,-1)),h("span",null,[m(n,null,{default:p(()=>t[12]||(t[12]=[h("code",null,"(?sLine truncated
`},l=async()=>{t.value="";try{await H.saveSource(o.currentSource)}catch(u){throw o.debugFinish(),u}H.debug(o.currentSourceUrl,r.value||o.searchKey,n,o.debugFinish)},c=D(()=>/bookSource/i.test(window.location.href));return(u,k)=>{const b=Y;return g(),x(O,null,[s(c)?(g(),w(b,{key:0,id:"debug-key",modelValue:s(r),"onUpdate:modelValue":k[0]||(k[0]=C=>K(r)?r.value=C:null),placeholder:"搜索书名、作者","prefix-icon":s(ye),style:{"padding-bottom":"4px"},onKeydown:Oe(l,["enter"])},null,8,["modelValue","prefix-icon"])):N("",!0),m(b,{id:"debug-text",modelValue:s(t),"onUpdate:modelValue":k[1]||(k[1]=C=>K(t)?t.value=C:null),type:"textarea",readonly:"",rows:29,placeholder:"这里用于输出调试信息"},null,8,["modelValue"])],64)}}},Pt=J(Ot,[["__scopeId","data-v-e289b5e4"]]),Jt=Se("book",{state:()=>({connectStatus:"正在连接后端服务器……",connectType:"primary",newConnect:!0,searchBooks:[],shelf:[],catalog:[],readingBook:{index:0,chapterPos:0},popCataVisible:!1,contentLoading:!0,showContent:!1,config:{theme:0,font:0,fontSize:18,readWidth:800,infiniteLoading:!1,customFontName:"",jumpDuration:1e3,spacing:{paragraph:1,line:.8,letter:0}},miniInterface:!1,readSettingsVisible:!1}),getters:{bookProgress:e=>{var c;if(e.catalog.length==0)return;const{index:o,chapterPos:t,bookName:r,bookAuthor:n}=e.readingBook;let l=(c=e.catalog[o])==null?void 0:c.title;if(l)return{name:r,author:n,durChapterIndex:o,durChapterPos:t,durChapterTime:new Date().getTime(),durChapterTitle:l}},theme:e=>e.config.theme,isNight:e=>e.config.theme==6},actions:{setConnectStatus(e){this.connectStatus=e},setConnectType(e){this.connectType=e},setNewConnect(e){this.newConnect=e},addBooks(e){this.shelf=e},clearBooks(){this.shelf=[]},setCatalog(e){this.catalog=e},setPopCataVisible(e){this.popCataVisible=e},setContentLoading(e){this.contentLoading=e},setReadingBook(e){this.readingBook=e},setConfig(e){this.config=Object.assign({},this.config,e)},setReadSettingsVisible(e){this.readSettingsVisible=e},setShowContent(e){this.showContent=e},setMiniInterface(e){this.miniInterface=e},async setSearchBooks(e){e.forEach(o=>{this.shelf.find(r=>r.bookUrl==o.bookUrl)===void 0&&this.searchBooks.push(o)})},clearSearchBooks(){this.searchBooks=[]},async saveBookProgress(){return this.bookProgress?H.saveBookProgress(this.bookProgress):Promise.resolve()}}}),Dt=Pe(),$t={__name:"SourceJson",setup(e){const o=M(),t=P(""),r=async n=>{try{o.changeEditTabSource(JSON.parse(n))}catch{B({message:"粘贴的源格式错误",type:"error"})}};return Je(async()=>{let n=o.editTabSource;Object.keys(n).length>0?t.value=JSON.stringify(n,null,4):t.value=""}),(n,l)=>{const c=Y;return g(),w(c,{id:"source-json",modelValue:s(t),"onUpdate:modelValue":l[0]||(l[0]=u=>K(t)?t.value=u:null),type:"textarea",placeholder:"这里输出序列化的JSON数据,可直接导入'阅读'APP",rows:30,onChange:r,style:{"margin-bottom":"4px"}},null,8,["modelValue"])}}},At=J($t,[["__scopeId","data-v-4e022d46"]]),jt={__name:"SourceTabTools",setup(e){const o=M(),t=D({get:()=>o.currentTab,set:n=>o.currentTab=n}),r=P([["editTab","编辑源"],["editDebug","调试源"],["editList","源列表"],["editHelp","帮助信息"]]);return(n,l)=>{const c=At,u=Pt,k=Tt,b=ot,C=be,I=_e;return g(),w(I,{modelValue:s(t),"onUpdate:modelValue":l[0]||(l[0]=d=>K(t)?t.value=d:null)},{default:p(()=>[(g(!0),x(O,null,j(s(r),(d,i)=>(g(),w(C,{key:d[0],name:d[0],label:d[1]},{default:p(()=>[i==0?(g(),w(c,{key:0})):N("",!0),i==1?(g(),w(u,{key:1})):N("",!0),i==2?(g(),w(k,{key:2})):N("",!0),i==3?(g(),w(b,{key:3})):N("",!0)]),_:2},1032,["name","label"]))),128))]),_:1},8,["modelValue"])}}},Ht=J(jt,[["__scopeId","data-v-8249c810"]]),Kt={class:"menu flex-column-center"},Mt={class:"hotkeys-header flex-space-between"},Wt=["id"],Ft={key:0},qt={class:"hotkeys-settings flex-column-center"},zt={class:"title"},Gt={class:"hotkeys-item__content"},Qt={key:0},Xt={key:0},Yt={__name:"ToolBar",setup(e){const o=M(),t=()=>{const f=B({message:"加载中……",showClose:!0,duration:0});H.getSources().then(({data:a})=>{a.isSuccess?(o.changeTabName("editList"),o.saveSources(a.data),B({message:`成功拉取${a.data.length}条源`,type:"success"})):B({message:a.errorMsg??"后端错误",type:"error"})}).finally(()=>f.close())},r=()=>{let f=o.sources;if(o.changeTabName("editList"),f.length===0)return B({message:"空空如也",type:"info"});B({message:"正在推送中",type:"info"}),H.saveSources(f).then(({data:a})=>{if(a.isSuccess){let S=a.data;if(Array.isArray(S)){let A="";f.length>S.length&&(A=`
推送失败的源将用红色字体标注!`,o.setPushReturnSources(S)),B({message:`批量推送源到「阅读3.0APP」
共计: ${f.length} 条
成功: ${S.length} 条
失败: ${f.length-S.length} 条${$}`,type:"success"})}}else B({message:`批量推送源失败!
失败: ${f.length-S.length} 条${A}`,type:"success"})}}else B({message:`批量推送源失败!
ErrorMsg: ${a.errorMsg}`,type:"error"})})},n=()=>{o.changeTabName("editTab"),o.changeEditTabSource(o.currentSource)},l=()=>{o.changeCurrentSource(o.editTabSource)},c=()=>{o.editHistoryUndo()},u=()=>{o.clearEdit(),B({message:"已清除",type:"success"})},k=()=>{o.clearEdit(),o.clearAllHistory(),B({message:"已清除所有历史记录",type:"success"})},b=()=>{let f=/bookSource/i.test(location.href),a=o.currentSource;Bt(a)?H.saveSource(a).then(({data:S})=>{S.isSuccess?(B({message:`源《${f?a.bookSourceName:a.sourceName}》已成功保存到「阅读3.0APP」`,type:"success"}),o.saveCurrentSource()):B({message:`源《${f?a.bookSourceName:a.sourceName}》保存失败!
ErrorMsg: ${S.errorMsg}`,type:"error"})}):B({message:"请检查<必填>项是否全部填写",type:"error"})},C=()=>{o.startDebug()},I=P(Array.of({name:"⇈推送源",hotKeys:[],action:r},{name:"⇊拉取源",hotKeys:[],action:t},{name:"⋙生成源",hotKeys:[],action:n},{name:"⋘编辑源",hotKeys:[],action:l},{name:"✗清空表单",hotKeys:[],action:u},{name:"↶撤销操作",hotKeys:[],action:c},{name:"↷重做操作",hotKeys:[],action:k},{name:"⇏调试源",hotKeys:[],action:C},{name:"✓保存源",hotKeys:[],action:b})),d=P(!0),i=P(!1),_=P(-1),v=()=>{i.value||(d.value=!1),i.value=!1};le(d,f=>{if(!f){F.unbind("*"),z(),W();return}z(),F.unbind(),F("*",a=>{a.preventDefault();let S=F.getPressedKeyString();S.length==1&&S[0]=="esc"||i.value&&_.value>-1&&(I.value[_.value].hotKeys=S)})},{immediate:!0});const E=f=>{i.value=!0,B({message:"按ESC键或者点击空白处结束录入",type:"info"}),I.value[f].hotKeys=[],_.value=f},V=()=>{const f=[];I.value.forEach(({hotKeys:a})=>{f.push(a)}),R(f),d.value=!1},W=()=>{F.filter=()=>!0,I.value.forEach(({hotKeys:f,action:a})=>{f.length!=0&&F(f.join("+"),S=>{S.preventDefault(),a.call(null)})})},R=f=>{localStorage.setItem("legado_web_hotkeys",JSON.stringify(f))};function z(){try{const f=JSON.parse(localStorage.getItem("legado_web_hotkeys"));return!Array.isArray(f)||f.length==0?!1:(I.value.forEach((a,S)=>a.hotKeys=f[S]),!0)}catch{B({message:"快捷键配置错误",type:"error"}),localStorage.removeItem("legado_web_hotkeys")}return!1}return De(()=>{z()&&(d.value=!1)}),(f,a)=>{const S=se,$=me,Ue=Ae;return g(),x(O,null,[h("div",Kt,[(g(!0),x(O,null,j(s(I),L=>(g(),w(S,{size:"large",key:L.name,onClick:L.action},{default:p(()=>[y(X(L.name),1)]),_:2},1032,["onClick"]))),128)),m(S,{size:"large",onClick:a[0]||(a[0]=()=>d.value=!0)},{default:p(()=>a[2]||(a[2]=[y("快捷键")])),_:1})]),m(Ue,{modelValue:s(d),"onUpdate:modelValue":a[1]||(a[1]=L=>K(d)?d.value=L:null),"show-close":!1,"before-close":v},{header:p(({titleClass:L,titleId:ee})=>[h("div",Mt,[h("div",{id:ee,class:fe(L)},[a[4]||(a[4]=y(" 快捷键设置 ")),s(i)?(g(),x("span",Ft,[m($,null,{default:p(()=>a[3]||(a[3]=[y(" / 录入中 ")])),_:1})])):N("",!0)],10,Wt),m(S,{disabled:s(i),onClick:V,icon:s($e)},{default:p(()=>a[5]||(a[5]=[y("保存")])),_:1},8,["disabled","icon"])])]),default:p(()=>[h("div",qt,[(g(!0),x(O,null,j(s(I),(L,ee)=>(g(),x("div",{key:L.name,class:"hotkeys-item flex-space-between"},[h("span",zt,[m($,null,{default:p(()=>[y(X(L.name),1)]),_:2},1024)]),h("div",Gt,[(g(!0),x(O,null,j(L.hotKeys,(te,Ce)=>(g(),x("div",{key:te},[h("kbd",null,X(te),1),Ce+1<L.hotKeys.length?(g(),x("span",Qt,[m($,null,{default:p(()=>a[6]||(a[6]=[y("+")])),_:1})])):N("",!0)]))),128)),L.hotKeys.length==0?(g(),x("span",Xt,"未设置")):N("",!0)]),m(S,{disabled:s(i),text:"",icon:s(he),onClick:te=>E(ee)},{default:p(()=>a[7]||(a[7]=[y("编辑")])),_:2},1032,["disabled","icon","onClick"])]))),128))])]),_:1},8,["modelValue"])],64)}}},Zt=J(Yt,[["__scopeId","data-v-9f61bfde"]]),eo={__name:"SourceTabForm",props:["config"],setup(e){const o=M(),t=D(()=>o.currentSource);return(r,n)=>{const l=Y,c=je,u=He,k=Ke,b=Me,C=We,I=Fe,d=be,i=_e;return g(),w(i,{id:"source-edit"},{default:p(()=>[(g(!0),x(O,null,j(Object.values(e.config),({name:_,children:v})=>(g(),w(d,{label:_,key:_},{default:p(()=>[m(I,{"label-position":"right","label-width":"auto"},{default:p(()=>[(g(!0),x(O,null,j(v,({type:E,title:V,namespace:W,id:R,array:z,hint:f,required:a})=>(g(),w(C,{label:V,key:V,required:a},{default:p(()=>[E=="String"&&typeof W>"u"?(g(),w(l,{key:0,type:"textarea",modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S,placeholder:f,autosize:""},null,8,["modelValue","onUpdate:modelValue","placeholder"])):N("",!0),E=="String"&&typeof W<"u"?(g(),w(l,{key:1,type:"textarea",modelValue:s(t)[W][R],"onUpdate:modelValue":S=>s(t)[W][R]=S,placeholder:f,autosize:""},null,8,["modelValue","onUpdate:modelValue","placeholder"])):N("",!0),E=="Boolean"?(g(),w(c,{key:2,modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S},null,8,["modelValue","onUpdate:modelValue"])):N("",!0),E=="Number"?(g(),w(u,{key:3,modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S,min:0},null,8,["modelValue","onUpdate:modelValue"])):N("",!0),E=="Array"?(g(),w(b,{key:4,modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S},{default:p(()=>[(g(!0),x(O,null,j(z,(S,$)=>(g(),w(k,{value:$,key:S,label:S},null,8,["value","label"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):N("",!0)]),_:2},1032,["label","required"]))),128))]),_:2},1024)]),_:2},1032,["label"]))),128))]),_:1})}}},to=J(eo,[["__scopeId","data-v-0cb9f194"]]),oo={base:{name:"基础",children:[{title:"源类型",id:"bookSourceType",type:"Array",array:["文本","音频","图片","文件"],required:!0},{title:"源域名",id:"bookSourceUrl",type:"String",hint:"通常填写网站主页,例: https://www.qidian.com",required:!0},{title:"源名称",id:"bookSourceName",type:"String",hint:"会显示在源列表",required:!0},{title:"源分组",id:"bookSourceGr Line truncated
名称2::链接2`},{title:"登录地址",id:"loginUrl",type:"String",hint:"填写网站登录网址,仅在需要登录的源有用"},{title:"登录界面",id:"loginUi",type:"String",hint:"自定义登录界面"},{title:"登录检测",id:"loginCheckJs",type:"String",hint:"登录检测js"},{title:"封面解密",id:"coverDecodeJs",type:"String",hint:"封面解密js"},{title:"请求头",id:"header",type:"String",hint:"客户端标识"},{title:"变量说明",id:"variableComment",type:"String",hint:"源变量说明"},{title:"并发率",id:"concurrentRate",type:"String",hint:"并发率"}]},list:{name:"列表",children:[{title:"列表规则",id:"ruleArticles",type:"String",hint:"规则结果为List<Element>"},{title:"翻页规则",id:"ruleNextPage",type:"String",hint:"下一页链接 规则结果为List<String>或String"},{title:"标题规则",id:"ruleTitle",type:"String",hint:"文章标题 规则结果为String"},{title:"时间规则",id:"rulePubDate",type:"String",hint:"文章发布时间 规则结果为String"},{title:"描述规则",id:"ruleDescription",type:"String",hint:"文章简要描述 规则结果为String"},{title:"图片规则",id:"ruleImage",type:"String",hint:"文章图片链接 规则结果为String"},{title:"链接规则",id:"ruleLink",type:"String",hint:"文章链接 规则结果为String"}]},webView:{name:"WebView",children:[{title:"内容规则",id:"ruleContent",type:"String",hint:"文章正文"},{title:"样式规则",id:"style",type:"String",hint:"文章正文样式 填写css"},{title:"注入规则",id:"injectJs",type:"String",hint:"注入网页的JavaScript"},{title:"黑名单",id:"contentBlacklist",type:"String",hint:"webView链接加载黑名单,英文逗号隔开"},{title:"白名单",id:"contentWhitelist",type:"String",hint:"webView链接加载白名单,英文逗号隔开"},{title:"链接拦截",id:"shouldOverrideUrlLoading",type:"String",hint:"填写js,变量url为当前资源链接,返回true拦截"}]},other:{name:"其他",children:[{title:"列表样式",id:"articleStyle",type:"Array",array:["默认","大图","双列"]},{title:"加载地址",id:"loadWithBaseUrl",type:"Boolean"},{title:"启用JS",id:"enableJs",type:"Boolean"},{title:"启用",id:"enabled",type:"Boolean"},{title:"Cookie",id:"enabledCookieJar",type:"Boolean"},{title:"单URL",id:"singleUrl",type:"Boolean"},{title:"排序编号",id:"customOrder",type:"Number"}]}},ro={class:"editor"},so={__name:"SourceEditor",setup(e){qe();let o;return/bookSource/i.test(location.href)?(o=oo,document.title="书源管理"):(o=no,document.title="订阅源管理"),(t,r)=>{const n=to,l=Zt,c=Ht;return g(),x("div",ro,[m(n,{class:"left",config:s(o)},null,8,["config"]),m(l),m(c,{class:"right"})])}}},ge=J(so,[["__scopeId","data-v-9682883a"]]),ve=[{path:"/bookSource",name:"book-home",component:ge},{path:"/rssSource",name:"rss-home",component:ge}];ne({history:re(),routes:ve});const we=ne({history:re(),routes:ke.concat(ve)});we.afterEach(e=>{e.name=="shelf"&&(document.title="书架")});ze(Xe).use(Dt).use(we).mount("#app");le(()=>Jt().isNight,e=>{e?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")});export{H as A,J as _,A as l,st as s,Jt as u,rt as v};
ErrorMsg: ${S.errorMsg}`,type:"error"})}):B({message:"请检查<必填>项是否全部填写",type:"error"})},C=()=>{o.startDebug()},I=P(Array.of({name:"⇈推送源",hotKeys:[],action:r},{name:"⇊拉取源",hotKeys:[],action:t},{name:"⋙生成源",hotKeys:[],action:n},{name:"⋘编辑源",hotKeys:[],action:l},{name:"✗清空表单",hotKeys:[],action:u},{name:"↶撤销操作",hotKeys:[],action:c},{name:"↷重做操作",hotKeys:[],action:k},{name:"⇏调试源",hotKeys:[],action:C},{name:"✓保存源",hotKeys:[],action:b})),d=P(!0),i=P(!1),_=P(-1),v=()=>{i.value||(d.value=!1),i.value=!1};le(d,f=>{if(!f){F.unbind("*"),z(),W();return}z(),F.unbind(),F("*",a=>{a.preventDefault();let S=F.getPressedKeyString();S.length==1&&S[0]=="esc"||i.value&&_.value>-1&&(I.value[_.value].hotKeys=S)})},{immediate:!0});const E=f=>{i.value=!0,B({message:"按ESC键或者点击空白处结束录入",type:"info"}),I.value[f].hotKeys=[],_.value=f},V=()=>{const f=[];I.value.forEach(({hotKeys:a})=>{f.push(a)}),R(f),d.value=!1},W=()=>{F.filter=()=>!0,I.value.forEach(({hotKeys:f,action:a})=>{f.length!=0&&F(f.join("+"),S=>{S.preventDefault(),a.call(null)})})},R=f=>{localStorage.setItem("legado_web_hotkeys",JSON.stringify(f))};function z(){try{const f=JSON.parse(localStorage.getItem("legado_web_hotkeys"));return!Array.isArray(f)||f.length==0?!1:(I.value.forEach((a,S)=>a.hotKeys=f[S]),!0)}catch{B({message:"快捷键配置错误",type:"error"}),localStorage.removeItem("legado_web_hotkeys")}return!1}return De(()=>{z()&&(d.value=!1)}),(f,a)=>{const S=se,A=me,Ue=Ae;return g(),x(O,null,[h("div",Kt,[(g(!0),x(O,null,j(s(I),L=>(g(),w(S,{size:"large",key:L.name,onClick:L.action},{default:p(()=>[y(X(L.name),1)]),_:2},1032,["onClick"]))),128)),m(S,{size:"large",onClick:a[0]||(a[0]=()=>d.value=!0)},{default:p(()=>a[2]||(a[2]=[y("快捷键")])),_:1})]),m(Ue,{modelValue:s(d),"onUpdate:modelValue":a[1]||(a[1]=L=>K(d)?d.value=L:null),"show-close":!1,"before-close":v},{header:p(({titleClass:L,titleId:ee})=>[h("div",Mt,[h("div",{id:ee,class:fe(L)},[a[4]||(a[4]=y(" 快捷键设置 ")),s(i)?(g(),x("span",Ft,[m(A,null,{default:p(()=>a[3]||(a[3]=[y(" / 录入中 ")])),_:1})])):N("",!0)],10,Wt),m(S,{disabled:s(i),onClick:V,icon:s($e)},{default:p(()=>a[5]||(a[5]=[y("保存")])),_:1},8,["disabled","icon"])])]),default:p(()=>[h("div",qt,[(g(!0),x(O,null,j(s(I),(L,ee)=>(g(),x("div",{key:L.name,class:"hotkeys-item flex-space-between"},[h("span",zt,[m(A,null,{default:p(()=>[y(X(L.name),1)]),_:2},1024)]),h("div",Gt,[(g(!0),x(O,null,j(L.hotKeys,(te,Ce)=>(g(),x("div",{key:te},[h("kbd",null,X(te),1),Ce+1<L.hotKeys.length?(g(),x("span",Qt,[m(A,null,{default:p(()=>a[6]||(a[6]=[y("+")])),_:1})])):N("",!0)]))),128)),L.hotKeys.length==0?(g(),x("span",Xt,"未设置")):N("",!0)]),m(S,{disabled:s(i),text:"",icon:s(he),onClick:te=>E(ee)},{default:p(()=>a[7]||(a[7]=[y("编辑")])),_:2},1032,["disabled","icon","onClick"])]))),128))])]),_:1},8,["modelValue"])],64)}}},Zt=J(Yt,[["__scopeId","data-v-9f61bfde"]]),eo={__name:"SourceTabForm",props:["config"],setup(e){const o=M(),t=D(()=>o.currentSource);return(r,n)=>{const l=Y,c=je,u=He,k=Ke,b=Me,C=We,I=Fe,d=be,i=_e;return g(),w(i,{id:"source-edit"},{default:p(()=>[(g(!0),x(O,null,j(Object.values(e.config),({name:_,children:v})=>(g(),w(d,{label:_,key:_},{default:p(()=>[m(I,{"label-position":"right","label-width":"auto"},{default:p(()=>[(g(!0),x(O,null,j(v,({type:E,title:V,namespace:W,id:R,array:z,hint:f,required:a})=>(g(),w(C,{label:V,key:V,required:a},{default:p(()=>[E=="String"&&typeof W>"u"?(g(),w(l,{key:0,type:"textarea",modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S,placeholder:f,autosize:""},null,8,["modelValue","onUpdate:modelValue","placeholder"])):N("",!0),E=="String"&&typeof W<"u"?(g(),w(l,{key:1,type:"textarea",modelValue:s(t)[W][R],"onUpdate:modelValue":S=>s(t)[W][R]=S,placeholder:f,autosize:""},null,8,["modelValue","onUpdate:modelValue","placeholder"])):N("",!0),E=="Boolean"?(g(),w(c,{key:2,modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S},null,8,["modelValue","onUpdate:modelValue"])):N("",!0),E=="Number"?(g(),w(u,{key:3,modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S,min:0},null,8,["modelValue","onUpdate:modelValue"])):N("",!0),E=="Array"?(g(),w(b,{key:4,modelValue:s(t)[R],"onUpdate:modelValue":S=>s(t)[R]=S},{default:p(()=>[(g(!0),x(O,null,j(z,(S,A)=>(g(),w(k,{value:A,key:S,label:S},null,8,["value","label"]))),128))]),_:2},1032,["modelValue","onUpdate:modelValue"])):N("",!0)]),_:2},1032,["label","required"]))),128))]),_:2},1024)]),_:2},1032,["label"]))),128))]),_:1})}}},to=J(eo,[["__scopeId","data-v-0cb9f194"]]),oo={base:{name:"基础",children:[{title:"源类型",id:"bookSourceType",type:"Array",array:["文本","音频","图片","文件"],required:!0},{title:"源域名",id:"bookSourceUrl",type:"String",hint:"通常填写网站主页,例: https://www.qidian.com",required:!0},{title:"源名称",id:"bookSourceName",type:"String",hint:"会显示在源列表",required:!0},{title:"源分组",id:"bookSourceGr Line truncated
名称2::链接2`},{title:"登录地址",id:"loginUrl",type:"String",hint:"填写网站登录网址,仅在需要登录的源有用"},{title:"登录界面",id:"loginUi",type:"String",hint:"自定义登录界面"},{title:"登录检测",id:"loginCheckJs",type:"String",hint:"登录检测js"},{title:"封面解密",id:"coverDecodeJs",type:"String",hint:"封面解密js"},{title:"请求头",id:"header",type:"String",hint:"客户端标识"},{title:"变量说明",id:"variableComment",type:"String",hint:"源变量说明"},{title:"并发率",id:"concurrentRate",type:"String",hint:"并发率"}]},list:{name:"列表",children:[{title:"列表规则",id:"ruleArticles",type:"String",hint:"规则结果为List<Element>"},{title:"翻页规则",id:"ruleNextPage",type:"String",hint:"下一页链接 规则结果为List<String>或String"},{title:"标题规则",id:"ruleTitle",type:"String",hint:"文章标题 规则结果为String"},{title:"时间规则",id:"rulePubDate",type:"String",hint:"文章发布时间 规则结果为String"},{title:"描述规则",id:"ruleDescription",type:"String",hint:"文章简要描述 规则结果为String"},{title:"图片规则",id:"ruleImage",type:"String",hint:"文章图片链接 规则结果为String"},{title:"链接规则",id:"ruleLink",type:"String",hint:"文章链接 规则结果为String"}]},webView:{name:"WebView",children:[{title:"内容规则",id:"ruleContent",type:"String",hint:"文章正文"},{title:"样式规则",id:"style",type:"String",hint:"文章正文样式 填写css"},{title:"注入规则",id:"injectJs",type:"String",hint:"注入网页的JavaScript"},{title:"黑名单",id:"contentBlacklist",type:"String",hint:"webView链接加载黑名单,英文逗号隔开"},{title:"白名单",id:"contentWhitelist",type:"String",hint:"webView链接加载白名单,英文逗号隔开"},{title:"链接拦截",id:"shouldOverrideUrlLoading",type:"String",hint:"填写js,变量url为当前资源链接,返回true拦截"}]},other:{name:"其他",children:[{title:"列表样式",id:"articleStyle",type:"Array",array:["默认","大图","双列"]},{title:"加载地址",id:"loadWithBaseUrl",type:"Boolean"},{title:"启用JS",id:"enableJs",type:"Boolean"},{title:"启用",id:"enabled",type:"Boolean"},{title:"Cookie",id:"enabledCookieJar",type:"Boolean"},{title:"单URL",id:"singleUrl",type:"Boolean"},{title:"排序编号",id:"customOrder",type:"Number"}]}},ro={class:"editor"},so={__name:"SourceEditor",setup(e){qe();let o;return/bookSource/i.test(location.href)?(o=oo,document.title="书源管理"):(o=no,document.title="订阅源管理"),(t,r)=>{const n=to,l=Zt,c=Ht;return g(),x("div",ro,[m(n,{class:"left",config:s(o)},null,8,["config"]),m(l),m(c,{class:"right"})])}}},ge=J(so,[["__scopeId","data-v-9682883a"]]),ve=[{path:"/bookSource",name:"book-home",component:ge},{path:"/rssSource",name:"rss-home",component:ge}];ne({history:re(),routes:ve});const we=ne({history:re(),routes:ke.concat(ve)});we.afterEach(e=>{e.name=="shelf"&&(document.title="书架")});ze(Xe).use(Dt).use(we).mount("#app");le(()=>Jt().isNight,e=>{e?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")});export{H as A,J as _,$ as l,st as s,Jt as u,rt as v};
+1 -1
View File
@@ -4,7 +4,7 @@
<meta charset="UTF-8" />
<link rel="icon" href="./favicon.ico" />
<meta name="viewport" content="width=device-width,initial-scale=1.0" />
<script type="module" crossorigin src="./assets/index-2f7oRvfk.js"></script>
<script type="module" crossorigin src="./assets/index-BPmSTa9M.js"></script>
<link rel="modulepreload" crossorigin href="./assets/vendor-JTttPx12.js">
<link rel="stylesheet" crossorigin href="./assets/vendor-Bui7wm94.css">
<link rel="stylesheet" crossorigin href="./assets/index-BLTQ_MWi.css">