@webnovel-proxy/schemas 0.1.2 → 0.3.0

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/dist/index.d.ts CHANGED
@@ -784,6 +784,13 @@ export declare const PartialDateTime: z.ZodCustom<`${number}` | `${number}-${num
784
784
  export type PartialDateTime = z.infer<typeof PartialDateTime>;
785
785
  export declare const Mime: z.ZodPipe<z.ZodCoercedString<unknown>, z.ZodTransform<string, string>>;
786
786
  export type Mime = z.infer<typeof Mime>;
787
+ export declare const WebNovelChapterContent: z.ZodObject<{
788
+ originalHTML: z.ZodArray<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
789
+ originalHTMLSize: z.ZodInt;
790
+ generatedMarkdown: z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>;
791
+ generatedMarkdownSize: z.ZodInt;
792
+ }, z.core.$strip>;
793
+ export type WebNovelChapterContent = z.infer<typeof WebNovelChapterContent>;
787
794
  export declare const WebNovelChapter: z.ZodObject<{
788
795
  externalIdentifiers: z.ZodArray<z.ZodObject<{
789
796
  provider: z.ZodEnum<{
@@ -2501,6 +2508,53 @@ export declare const WebNovel: z.ZodObject<{
2501
2508
  }, z.core.$strip>;
2502
2509
  export type WebNovel = z.infer<typeof WebNovel>;
2503
2510
  export declare function webNovelExternalIdentifierToURL(ext: ExternalIdentifier): URL | undefined;
2511
+ declare const ImageConfig: z.ZodDiscriminatedUnion<[
2512
+ z.ZodObject<{
2513
+ imageProxy: z.ZodLiteral<false>;
2514
+ }, z.core.$strip>,
2515
+ z.ZodObject<{
2516
+ imageProxy: z.ZodLiteral<"wsrv.nl">;
2517
+ output: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
2518
+ gif: "gif";
2519
+ jpg: "jpg";
2520
+ jxl: "jxl";
2521
+ png: "png";
2522
+ tiff: "tiff";
2523
+ webp: "webp";
2524
+ original: "original";
2525
+ }>>>;
2526
+ quality: z.ZodOptional<z.ZodDefault<z.ZodInt>>;
2527
+ default: z.ZodOptional<z.ZodURL>;
2528
+ lossless: z.ZodOptional<z.ZodBoolean>;
2529
+ compressionLevel: z.ZodOptional<z.ZodDefault<z.ZodInt>>;
2530
+ width: z.ZodOptional<z.ZodInt>;
2531
+ height: z.ZodOptional<z.ZodInt>;
2532
+ devicePixelRatio: z.ZodOptional<z.ZodInt>;
2533
+ fit: z.ZodOptional<z.ZodEnum<{
2534
+ cover: "cover";
2535
+ inside: "inside";
2536
+ outside: "outside";
2537
+ fill: "fill";
2538
+ contain: "contain";
2539
+ }>>;
2540
+ withoutEnlargement: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>;
2541
+ alignmentPosition: z.ZodOptional<z.ZodDefault<z.ZodEnum<{
2542
+ top: "top";
2543
+ right: "right";
2544
+ bottom: "bottom";
2545
+ left: "left";
2546
+ "top-left": "top-left";
2547
+ "bottom-left": "bottom-left";
2548
+ "bottom-right": "bottom-right";
2549
+ "top-right": "top-right";
2550
+ center: "center";
2551
+ entropy: "entropy";
2552
+ attention: "attention";
2553
+ }>>>;
2554
+ }, z.core.$strip>
2555
+ ], "imageProxy">;
2556
+ export type ImageConfig = z.infer<typeof ImageConfig>;
2557
+ export declare function webNovelImageToURL(image: Image, inputConfig?: ImageConfig): URL | undefined;
2504
2558
  export declare const mime: Mime$1;
2505
2559
 
2506
2560
  export {};
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import j from"zod";var b=j.string().regex(/^n\/\d+$/,"Invalid WebNovel novel ID"),u=j.string().regex(/^n\/\d+\/c\/\d+$/,"Invalid WebNovel novel chapter ID"),y=j.string().regex(/^c\/\d+$/,"Invalid WebNovel creator ID");import v from"zod";import T from"zod";var g=T.string().regex(/^n\/[a-zA-Z0-9_-]+$/,"Invalid HostedNovel novel ID"),N=T.string().regex(/^n\/[a-zA-Z0-9_-]+\/c\/[a-zA-Z0-9_-]+$/,"Invalid HostedNovel novel chapter ID"),x=T.string().regex(/^c\/[a-zA-Z0-9_-]+$/,"Invalid HostedNovel creator ID");import k from"zod";var w=k.string().regex(/^n\/[a-zA-Z0-9_-]+$/,"Invalid NovelFire novel ID"),W=k.string().regex(/^n\/[a-zA-Z0-9_-]+\/c\/[a-zA-Z0-9_-]+$/,"Invalid NovelFire novel chapter ID");var E=v.enum(["webnovel.com","novelfire.net","hostednovel.com"]),d=v.object({provider:E,id:v.union([b,u,y,w,W,g,N,x])}),z=v.enum(["qidian.com","ciweimao.com"]);import P from"language-tags";import R from"zod";var f=R.string().refine((r)=>P(r).valid(),{error:(r)=>`Invalid Language Tag: ${P(String(r?.input??"")).errors().join(";")}`}).transform((r)=>String(P(r).format()));var A=["abr","acp","act","adi","adp","aft","anc","anl","anm","ann","ant","ape","apl","app","aqt","arc","ard","arr","art","asg","asn","ato","att","auc","aud","aue","aui","aup","aus","aut","bdd","bjd","bka","bkd","bkp","blw","bnd","bpd","brd","brl","bsl","cad","cas","ccp","chr","cli","cll","clr","clt","cmm","cmp","cmt","cnd","cng","cns","coe","col","com","con","cop","cor","cos","cot","cou","cov","cpc","cpe","cph","cpl","cpt","cre","crp","crr","crt","csl","csp","cst","ctb","cte","ctg","ctr","cts","ctt","cur","cwt","dbd","dbp","dfd","dfe","dft","dgc","dgg","dgs","dis","djo","dln","dnc","dnr","dpc","dpt","drm","drt","dsr","dst","dtc","dte","dtm","dto","dub","edc","edd","edm","edt","egr","elg","elt","eng","enj","etr","evp","exp","fac","fds","fld","flm","fmd","fmk","fmo","fmp","fnd","fon","fpy","frg","gdv","gis","his","hnr","hst","ill","ilu","ink","ins","inv","isb","itr","ive","ivr","jud","jug","lbr","lbt","ldr","led","lee","lel","len","let","lgd","lie","lil","lit","lsa","lse","lso","ltg","ltr","lyr","mcp","mdc","med","mfp","mfr","mka","mod","mon","mrb","mrk","msd","mte","mtk","mup","mus","mxe","nan","nrt","onp","opn","org","orm","osp","oth","own","pad","pan","pat","pbd","pbl","pdr","pfr","pht","plt","pma","pmn","pnc","pop","ppm","ppt","pra","prc","prd","pre","prf","prg","prm","prn","pro","prp","prs","prt","prv","pta","pte","ptf","pth","ptt","pup","rap","rbr","rcd","rce","rcp","rdd","red","ren","res","rev","rpc","rps","rpt","rpy","rse","rsg","rsp","rsr","rst","rth","rtm","rxa","sad","sce","scl","scr","sde","sds","sec","sfx","sgd","sgn","sht","sll","sng","spk","spn","spy","srv","std","stg","stl","stm","stn","str","swd","tad","tau","tcd","tch","ths","tld","tlg","tlh","tlp","trc","trl","tyd","tyg","uvp","vac","vdg","vfx","voc","wac","wal","wam","wat","waw","wdc","wde","wfs","wft","wfw","win","wit","wpr","wst","wts"];import V from"zod";var M=V.enum(A);import{Mime as $}from"mime/lite";import q from"mime/types/other.js";import B from"mime/types/standard.js";var O=new $().define({...B,...q});import{Temporal as I}from"temporal-polyfill";import C from"zod";var l=C.string({error:(r)=>`Not a string: "${typeof r?.input}"`}).transform((r)=>r.trim()).refine((r)=>r!=="","String must not be empty"),gr=C.string({error:(r)=>`Not a string: "${typeof r?.input}"`}).transform((r)=>r.trim()).transform((r)=>r===""?null:r),i=C.custom((r)=>{return typeof r==="string"&&/^(\d{4})(-\d{2})?(-\d{2})?(T\d{2}:\d{2}:\d{2}Z)?$/.test(r)}).refine((r)=>{if(r.indexOf("T")>0)try{return I.Instant.from(r),!0}catch{return!1}else{let o=r.split("-");if(o.length>3)return!1;else if(o.length===3)try{return I.PlainDate.from(r),!0}catch{return!1}else if(o.length===2)try{return I.PlainDate.from(r+"-01"),!0}catch{return!1}else if(o.length===1)try{return I.PlainDate.from(r+"-01-01"),!0}catch{return!1}return!1}},{error:(r)=>`Date "${String(r?.input??"").substring(0,20)}" is invalid`}),S=C.coerce.string().refine((r)=>O.getExtension(r)!==null,{error:(r)=>`Invalid MIME type "${String(r.input)}"`}).transform((r)=>r.toLocaleLowerCase().trim());function p(r){let o=r.filter((a)=>a.primary===!0).length;if(o>1){let a=r.findIndex((n)=>n.primary===!0);return r.map((n,m)=>{return n.primary=m===a,n})}if(o===0&&typeof r[0]<"u")return r[0].primary=!0,r;return r}import e from"zod";var s=e.object({language:f.nullable().default(null),value:l,type:e.enum(["plain","markdown","html"]).nullable().default(null),primary:e.boolean().default(!1)}),G=e.object({displayName:l,givenName:l.nullable(),middleName:l.nullable(),familyName:l.nullable(),primary:e.boolean().default(!1)}),h=e.object({externalIdentifiers:e.array(d),names:e.array(G).min(1).transform(p),roles:e.array(M)}),H=e.enum(["cover","backdrop","spine","back"]),D=e.intersection(e.object({type:H,height:e.int().min(1).nullable(),width:e.int().min(1).nullable(),language:f.nullable().default(null),primary:e.boolean().default(!1),mediaType:S.pipe(e.string().startsWith("image/")).nullable()}),e.union([e.object({provider:E,id:l}),e.object({provider:e.null(),id:e.url()})]));import t from"zod";var J=t.object({externalIdentifiers:t.array(d).min(1),volumeNumber:t.number().min(0).nullable(),number:t.number().min(0),names:t.array(s).min(1).transform(p),creators:t.array(h),createdAt:i.nullable(),updatedAt:i.nullable()}),K=t.object({externalIdentifiers:t.array(d),number:t.number().min(0),names:t.array(s).transform(p),createdAt:i.nullable(),updatedAt:i.nullable(),chapters:t.array(J)}),Mr=t.object({externalIdentifiers:t.array(d).min(1),names:t.array(s).min(1).transform(p),language:f,overviews:t.array(s).transform(p),creators:t.array(h),images:t.array(D).transform(p),originalLanguage:f.nullable(),originalSource:z.nullable(),isComplete:t.boolean().nullable(),createdAt:i.nullable(),updatedAt:i.nullable(),volumes:t.array(K)});function Vr(r){if(r.provider==="webnovel.com"){let o=b.safeParse(r.id)?.data??void 0,a=u.safeParse(r.id)?.data??void 0,n=y.safeParse(r.id)?.data??void 0,m="https://www.webnovel.com";if(typeof o==="string")return new URL(`/book/${o.substring(2)}`,"https://www.webnovel.com");else if(typeof a==="string"){let c=a.split("/");return new URL(`/book/${c[1]}/${c[3]}`,"https://www.webnovel.com")}else if(typeof n==="string")return new URL(`/profile/${n.substring(2)}`,"https://www.webnovel.com")}else if(r.provider==="novelfire.net"){let o=w.safeParse(r.id)?.data??void 0,a=W.safeParse(r.id)?.data??void 0,n="https://novelfire.net";if(typeof o==="string")return new URL(`/book/${o.substring(2)}`,"https://novelfire.net");else if(typeof a==="string"){let m=a.split("/");return new URL(`/book/${m[1]}/${m[3]}`,"https://novelfire.net")}}else if(r.provider==="hostednovel.com"){let o=g.safeParse(r.id)?.data??void 0,a=N.safeParse(r.id)?.data??void 0,n=x.safeParse(r.id)?.data??void 0,m="https://hostednovel.com";if(typeof o==="string")return new URL(`/novel/${o.substring(2)}`,"https://hostednovel.com");else if(typeof a==="string"){let c=a.split("/");return new URL(`/novel/${c[1]}/${c[3]}`,"https://hostednovel.com")}else if(typeof n==="string")return new URL(`/creator/${n.substring(2)}`,"https://hostednovel.com")}return}export{Vr as webNovelExternalIdentifierToURL,O as mime,K as WebNovelVolume,b as WebNovelComNovelId,u as WebNovelComNovelChapterId,y as WebNovelComCreatorId,J as WebNovelChapter,Mr as WebNovel,s as Translation,M as Relator,G as PersonalName,i as PartialDateTime,z as OriginalSource,gr as NullableNonEmptyString,w as NovelFireNetNovelId,W as NovelFireNetNovelChapterId,l as NonEmptyString,S as Mime,H as ImageType,D as Image,g as HostedNovelComNovelId,N as HostedNovelComNovelChapterId,x as HostedNovelComCreatorId,E as ExternalProvider,d as ExternalIdentifier,h as Creator,f as BCP47LanguageTag};
1
+ import k from"zod";var u=k.string().regex(/^n\/\d+$/,"Invalid WebNovel novel ID"),y=k.string().regex(/^n\/\d+\/c\/\d+$/,"Invalid WebNovel novel chapter ID"),N=k.string().regex(/^c\/\d+$/,"Invalid WebNovel creator ID");import T from"zod";import P from"zod";var w=P.string().regex(/^n\/[a-zA-Z0-9_-]+$/,"Invalid HostedNovel novel ID"),W=P.string().regex(/^n\/[a-zA-Z0-9_-]+\/c\/[a-zA-Z0-9_-]+$/,"Invalid HostedNovel novel chapter ID"),v=P.string().regex(/^c\/[a-zA-Z0-9_-]+$/,"Invalid HostedNovel creator ID");import O from"zod";var j=O.string().regex(/^n\/[a-zA-Z0-9_-]+$/,"Invalid NovelFire novel ID"),I=O.string().regex(/^n\/[a-zA-Z0-9_-]+\/c\/[a-zA-Z0-9_-]+$/,"Invalid NovelFire novel chapter ID");var M=T.enum(["webnovel.com","novelfire.net","hostednovel.com"]),s=T.object({provider:M,id:T.union([u,y,N,j,I,w,W,v])}),D=T.enum(["qidian.com","ciweimao.com"]);import S from"language-tags";import J from"zod";var b=J.string().refine((r)=>S(r).valid(),{error:(r)=>`Invalid Language Tag: ${S(String(r?.input??"")).errors().join(";")}`}).transform((r)=>String(S(r).format()));var V=["abr","acp","act","adi","adp","aft","anc","anl","anm","ann","ant","ape","apl","app","aqt","arc","ard","arr","art","asg","asn","ato","att","auc","aud","aue","aui","aup","aus","aut","bdd","bjd","bka","bkd","bkp","blw","bnd","bpd","brd","brl","bsl","cad","cas","ccp","chr","cli","cll","clr","clt","cmm","cmp","cmt","cnd","cng","cns","coe","col","com","con","cop","cor","cos","cot","cou","cov","cpc","cpe","cph","cpl","cpt","cre","crp","crr","crt","csl","csp","cst","ctb","cte","ctg","ctr","cts","ctt","cur","cwt","dbd","dbp","dfd","dfe","dft","dgc","dgg","dgs","dis","djo","dln","dnc","dnr","dpc","dpt","drm","drt","dsr","dst","dtc","dte","dtm","dto","dub","edc","edd","edm","edt","egr","elg","elt","eng","enj","etr","evp","exp","fac","fds","fld","flm","fmd","fmk","fmo","fmp","fnd","fon","fpy","frg","gdv","gis","his","hnr","hst","ill","ilu","ink","ins","inv","isb","itr","ive","ivr","jud","jug","lbr","lbt","ldr","led","lee","lel","len","let","lgd","lie","lil","lit","lsa","lse","lso","ltg","ltr","lyr","mcp","mdc","med","mfp","mfr","mka","mod","mon","mrb","mrk","msd","mte","mtk","mup","mus","mxe","nan","nrt","onp","opn","org","orm","osp","oth","own","pad","pan","pat","pbd","pbl","pdr","pfr","pht","plt","pma","pmn","pnc","pop","ppm","ppt","pra","prc","prd","pre","prf","prg","prm","prn","pro","prp","prs","prt","prv","pta","pte","ptf","pth","ptt","pup","rap","rbr","rcd","rce","rcp","rdd","red","ren","res","rev","rpc","rps","rpt","rpy","rse","rsg","rsp","rsr","rst","rth","rtm","rxa","sad","sce","scl","scr","sde","sds","sec","sfx","sgd","sgn","sht","sll","sng","spk","spn","spy","srv","std","stg","stl","stm","stn","str","swd","tad","tau","tcd","tch","ths","tld","tlg","tlh","tlp","trc","trl","tyd","tyg","uvp","vac","vdg","vfx","voc","wac","wal","wam","wat","waw","wdc","wde","wfs","wft","wfw","win","wit","wpr","wst","wts"];import K from"zod";var $=K.enum(V);import{Mime as Q}from"mime/lite";import X from"mime/types/other.js";import Y from"mime/types/standard.js";var q=new Q().define({...Y,...X});import{Temporal as h}from"temporal-polyfill";import E from"zod";var m=E.string({error:(r)=>`Not a string: "${typeof r?.input}"`}).transform((r)=>r.trim()).refine((r)=>r!=="","String must not be empty"),vr=E.string({error:(r)=>`Not a string: "${typeof r?.input}"`}).transform((r)=>r.trim()).transform((r)=>r===""?null:r),c=E.custom((r)=>{return typeof r==="string"&&/^(\d{4})(-\d{2})?(-\d{2})?(T\d{2}:\d{2}:\d{2}Z)?$/.test(r)}).refine((r)=>{if(r.indexOf("T")>0)try{return h.Instant.from(r),!0}catch{return!1}else{let l=r.split("-");if(l.length>3)return!1;else if(l.length===3)try{return h.PlainDate.from(r),!0}catch{return!1}else if(l.length===2)try{return h.PlainDate.from(r+"-01"),!0}catch{return!1}else if(l.length===1)try{return h.PlainDate.from(r+"-01-01"),!0}catch{return!1}return!1}},{error:(r)=>`Date "${String(r?.input??"").substring(0,20)}" is invalid`}),H=E.coerce.string().refine((r)=>q.getExtension(r)!==null,{error:(r)=>`Invalid MIME type "${String(r.input)}"`}).transform((r)=>r.toLocaleLowerCase().trim());function i(r){let l=r.filter((d)=>d.primary===!0).length;if(l>1){let d=r.findIndex((n)=>n.primary===!0);return r.map((n,t)=>{return n.primary=t===d,n})}if(l===0&&typeof r[0]<"u")return r[0].primary=!0,r;return r}import o from"zod";var f=o.object({language:b.nullable().default(null),value:m,type:o.enum(["plain","markdown","html"]).nullable().default(null),primary:o.boolean().default(!1)}),Z=o.object({displayName:m,givenName:m.nullable(),middleName:m.nullable(),familyName:m.nullable(),primary:o.boolean().default(!1)}),A=o.object({externalIdentifiers:o.array(s),names:o.array(Z).min(1).transform(i),roles:o.array($)}),F=o.enum(["cover","backdrop","spine","back"]),B=o.intersection(o.object({type:F,height:o.int().min(1).nullable(),width:o.int().min(1).nullable(),language:b.nullable().default(null),primary:o.boolean().default(!1),mediaType:H.pipe(o.string().startsWith("image/")).nullable()}),o.union([o.object({provider:M,id:m}),o.object({provider:o.null(),id:o.url()})]));import a from"zod";var Hr=a.object({originalHTML:a.array(m),originalHTMLSize:a.int().min(0),generatedMarkdown:m,generatedMarkdownSize:a.int().min(0)}),g=a.object({externalIdentifiers:a.array(s).min(1),volumeNumber:a.number().min(0).nullable(),number:a.number().min(0),names:a.array(f).min(1).transform(i),creators:a.array(A),createdAt:c.nullable(),updatedAt:c.nullable()}),_=a.object({externalIdentifiers:a.array(s),number:a.number().min(0),names:a.array(f).transform(i),createdAt:c.nullable(),updatedAt:c.nullable(),chapters:a.array(g)}),Br=a.object({externalIdentifiers:a.array(s).min(1),names:a.array(f).min(1).transform(i),language:b,overviews:a.array(f).transform(i),creators:a.array(A),images:a.array(B).transform(i),originalLanguage:b.nullable(),originalSource:D.nullable(),isComplete:a.boolean().nullable(),createdAt:c.nullable(),updatedAt:c.nullable(),volumes:a.array(_)});import p from"zod";function Yr(r){if(r.provider==="webnovel.com"){let l=u.safeParse(r.id)?.data??void 0,d=y.safeParse(r.id)?.data??void 0,n=N.safeParse(r.id)?.data??void 0,t="https://www.webnovel.com";if(typeof l==="string")return new URL(`/book/${l.substring(2)}`,"https://www.webnovel.com");else if(typeof d==="string"){let e=d.split("/");return new URL(`/book/${e[1]}/${e[3]}`,"https://www.webnovel.com")}else if(typeof n==="string")return new URL(`/profile/${n.substring(2)}`,"https://www.webnovel.com")}else if(r.provider==="novelfire.net"){let l=j.safeParse(r.id)?.data??void 0,d=I.safeParse(r.id)?.data??void 0,n="https://novelfire.net";if(typeof l==="string")return new URL(`/book/${l.substring(2)}`,"https://novelfire.net");else if(typeof d==="string"){let t=d.split("/");return new URL(`/book/${t[1]}/${t[3]}`,"https://novelfire.net")}}else if(r.provider==="hostednovel.com"){let l=w.safeParse(r.id)?.data??void 0,d=W.safeParse(r.id)?.data??void 0,n=v.safeParse(r.id)?.data??void 0,t="https://hostednovel.com";if(typeof l==="string")return new URL(`/novel/${l.substring(2)}`,"https://hostednovel.com");else if(typeof d==="string"){let e=d.split("/");return new URL(`/novel/${e[1]}/${e[3]}`,"https://hostednovel.com")}else if(typeof n==="string")return new URL(`/creator/${n.substring(2)}`,"https://hostednovel.com")}return}var G=p.object({imageProxy:p.literal("wsrv.nl"),output:p.enum(["jpg","jxl","png","gif","tiff","webp","original"]).default("original").optional(),quality:p.int().min(1).max(100).default(80).optional(),default:p.url().optional(),lossless:p.boolean().optional(),compressionLevel:p.int().min(0).max(9).default(6).optional(),width:p.int().min(1).max(Number.MAX_SAFE_INTEGER).optional(),height:p.int().min(1).max(Number.MAX_SAFE_INTEGER).optional(),devicePixelRatio:p.int().min(1).max(8).optional(),fit:p.enum(["inside","outside","cover","fill","contain"]).optional(),withoutEnlargement:p.boolean().default(!0).optional(),alignmentPosition:p.enum(["top","right","bottom","left","top-left","bottom-left","bottom-right","top-right","center","entropy","attention"]).default("center").optional()}),C=p.discriminatedUnion("imageProxy",[p.object({imageProxy:p.literal(!1)}),G]);function Zr(r,l={imageProxy:!1}){let d=C.parse(l),n=void 0;if(r.provider==="webnovel.com"){if(/^n\/\d+(\/\d+)?/.test(r.id)){let t=r.id.split("/");if(n=new URL(`/bookcover/${t[1]}`,"https://book-pic.webnovel.com"),n.searchParams.set("imageMogr2/thumbnail/600x",""),typeof t?.[2]==="string")n.searchParams.set("imageId",t[2])}}if(typeof n>"u")return;if(d.imageProxy==="wsrv.nl"){let t=new URL("https://wsrv.nl");t.searchParams.set("url",n.toString());let e=G.parse(d);if(typeof e?.width==="number")t.searchParams.set("w",e.width.toString());else if(typeof r?.width==="number")t.searchParams.set("w",r.width.toString());if(typeof e?.height==="number")t.searchParams.set("h",e.height.toString());else if(typeof r?.height==="number")t.searchParams.set("h",r.height.toString());if(typeof e?.devicePixelRatio==="number")t.searchParams.set("dpr",e.devicePixelRatio.toString());if(typeof e?.fit==="string")t.searchParams.set("fit",e.fit);if(typeof e?.withoutEnlargement==="boolean"&&e.withoutEnlargement===!0)t.searchParams.set("we","true");if(typeof e?.alignmentPosition==="string")t.searchParams.set("a",e.alignmentPosition);if(typeof e?.compressionLevel==="number")t.searchParams.set("l",e.compressionLevel.toString());if(typeof e?.lossless==="boolean"&&e.lossless===!0)t.searchParams.set("ll","true");if(typeof e?.default==="string")t.searchParams.set("default",e.default);if(typeof e?.output==="string"&&e.output!=="original")t.searchParams.set("output",e.output);if(typeof e?.quality==="number")t.searchParams.set("q",e.quality.toString());return t}return n}export{Zr as webNovelImageToURL,Yr as webNovelExternalIdentifierToURL,q as mime,_ as WebNovelVolume,u as WebNovelComNovelId,y as WebNovelComNovelChapterId,N as WebNovelComCreatorId,Hr as WebNovelChapterContent,g as WebNovelChapter,Br as WebNovel,f as Translation,$ as Relator,Z as PersonalName,c as PartialDateTime,D as OriginalSource,vr as NullableNonEmptyString,j as NovelFireNetNovelId,I as NovelFireNetNovelChapterId,m as NonEmptyString,H as Mime,F as ImageType,B as Image,w as HostedNovelComNovelId,W as HostedNovelComNovelChapterId,v as HostedNovelComCreatorId,M as ExternalProvider,s as ExternalIdentifier,A as Creator,b as BCP47LanguageTag};
2
2
 
3
- //# debugId=9A451E850986AEC764756E2164756E21
3
+ //# debugId=DC38A14D020253E964756E2164756E21
4
4
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -13,10 +13,10 @@
13
13
  "import { mime } from \"@/utils/mime\";\nimport { Temporal } from \"temporal-polyfill\";\nimport z from \"zod\";\n\nexport const NonEmptyString = z\n\t.string({ error: (e) => `Not a string: \"${typeof e?.input}\"` })\n\t.transform((e) => e.trim())\n\t.refine((e) => e !== \"\", \"String must not be empty\");\nexport type NonEmptyString = z.infer<typeof NonEmptyString>;\n\nexport const NullableNonEmptyString = z\n\t.string({ error: (e) => `Not a string: \"${typeof e?.input}\"` })\n\t.transform((e) => e.trim())\n\t.transform((e) => (e === \"\" ? null : e));\nexport type NullableNonEmptyString = z.infer<typeof NullableNonEmptyString>;\n\nexport const PartialDateTime = z\n\t.custom<\n\t\t| `${number}`\n\t\t| `${number}-${number}`\n\t\t| `${number}-${number}-${number}`\n\t\t| `${number}-${number}-${number}T${number}:${number}:${number}Z`\n\t>((v) => {\n\t\treturn typeof v === \"string\" && /^(\\d{4})(-\\d{2})?(-\\d{2})?(T\\d{2}:\\d{2}:\\d{2}Z)?$/.test(v);\n\t})\n\t.refine(\n\t\t(v) => {\n\t\t\tif (v.indexOf(\"T\") > 0) {\n\t\t\t\ttry {\n\t\t\t\t\tTemporal.Instant.from(v);\n\t\t\t\t\treturn true;\n\t\t\t\t} catch {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tconst m = v.split(\"-\");\n\n\t\t\t\tif (m.length > 3) {\n\t\t\t\t\t// sanity check; should never happen\n\t\t\t\t\treturn false;\n\t\t\t\t} else if (m.length === 3) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tTemporal.PlainDate.from(v);\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} catch {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t} else if (m.length === 2) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tTemporal.PlainDate.from(v + \"-01\");\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} catch {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t} else if (m.length === 1) {\n\t\t\t\t\ttry {\n\t\t\t\t\t\tTemporal.PlainDate.from(v + \"-01-01\");\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t} catch {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// sanity check; should never happen\n\t\t\t\treturn false;\n\t\t\t}\n\t\t},\n\t\t{ error: (e) => `Date \"${String(e?.input ?? \"\").substring(0, 20)}\" is invalid` }\n\t);\nexport type PartialDateTime = z.infer<typeof PartialDateTime>;\n\nexport const Mime = z.coerce\n\t.string()\n\t.refine((v) => mime.getExtension(v) !== null, {\n\t\terror: (e) => `Invalid MIME type \"${String(e.input)}\"`,\n\t})\n\t.transform((v) => v.toLocaleLowerCase().trim());\nexport type Mime = z.infer<typeof Mime>;\n",
14
14
  "interface MandatoryArrayInput {\n\t[x: string]: unknown;\n\tprimary: boolean;\n}\nexport function mandatoryArray<T extends MandatoryArrayInput>(inputArray: T[]): T[] {\n\tconst primaryCount = inputArray.filter((e) => e.primary === true).length;\n\n\tif (primaryCount > 1) {\n\t\tconst firstPrimaryIndex = inputArray.findIndex((e) => e.primary === true);\n\n\t\treturn inputArray.map((e, i) => {\n\t\t\te.primary = i === firstPrimaryIndex;\n\t\t\treturn e;\n\t\t});\n\t}\n\n\tif (primaryCount === 0 && typeof inputArray[0] !== \"undefined\") {\n\t\tinputArray[0].primary = true;\n\t\treturn inputArray;\n\t}\n\n\treturn inputArray;\n}\n",
15
15
  "import { ExternalIdentifier, ExternalProvider } from \"@/schemas/external/common\";\nimport { BCP47LanguageTag } from \"@/schemas/ietf\";\nimport { Relator } from \"@/schemas/loc\";\nimport { Mime, NonEmptyString } from \"@/schemas/string\";\nimport { mandatoryArray } from \"@/utils/array\";\nimport z from \"zod\";\n\nexport const Translation = z.object({\n\tlanguage: BCP47LanguageTag.nullable().default(null),\n\tvalue: NonEmptyString,\n\ttype: z.enum([\"plain\", \"markdown\", \"html\"]).nullable().default(null),\n\tprimary: z.boolean().default(false),\n});\nexport type Translation = z.infer<typeof Translation>;\n\nexport const PersonalName = z.object({\n\tdisplayName: NonEmptyString,\n\tgivenName: NonEmptyString.nullable(),\n\tmiddleName: NonEmptyString.nullable(),\n\tfamilyName: NonEmptyString.nullable(),\n\tprimary: z.boolean().default(false),\n});\nexport type PersonalName = z.infer<typeof PersonalName>;\n\nexport const Creator = z.object({\n\texternalIdentifiers: z.array(ExternalIdentifier),\n\tnames: z.array(PersonalName).min(1).transform(mandatoryArray),\n\troles: z.array(Relator),\n});\nexport type Creator = z.infer<typeof Creator>;\n\nexport const ImageType = z.enum([\"cover\", \"backdrop\", \"spine\", \"back\"]);\nexport type ImageType = z.infer<typeof ImageType>;\n\nexport const Image = z.intersection(\n\tz.object({\n\t\ttype: ImageType,\n\t\theight: z.int().min(1).nullable(),\n\t\twidth: z.int().min(1).nullable(),\n\t\tlanguage: BCP47LanguageTag.nullable().default(null),\n\t\tprimary: z.boolean().default(false),\n\t\tmediaType: Mime.pipe(z.string().startsWith(\"image/\")).nullable(),\n\t}),\n\tz.union([\n\t\tz.object({\n\t\t\tprovider: ExternalProvider,\n\t\t\tid: NonEmptyString,\n\t\t}),\n\t\tz.object({\n\t\t\tprovider: z.null(),\n\t\t\tid: z.url(),\n\t\t}),\n\t])\n);\nexport type Image = z.infer<typeof Image>;\n",
16
- "import { Creator, Image, Translation } from \"@/schemas/common\";\nimport { ExternalIdentifier, OriginalSource } from \"@/schemas/external/common\";\nimport { BCP47LanguageTag } from \"@/schemas/ietf\";\nimport { mandatoryArray } from \"@/utils/array\";\nimport z from \"zod\";\nimport { PartialDateTime } from \"./string\";\n\nexport const WebNovelChapter = z.object({\n\texternalIdentifiers: z.array(ExternalIdentifier).min(1),\n\n\tvolumeNumber: z.number().min(0).nullable(),\n\tnumber: z.number().min(0),\n\tnames: z.array(Translation).min(1).transform(mandatoryArray),\n\tcreators: z.array(Creator),\n\n\tcreatedAt: PartialDateTime.nullable(),\n\tupdatedAt: PartialDateTime.nullable(),\n});\nexport type WebNovelChapter = z.infer<typeof WebNovelChapter>;\n\nexport const WebNovelVolume = z.object({\n\texternalIdentifiers: z.array(ExternalIdentifier),\n\n\tnumber: z.number().min(0),\n\tnames: z.array(Translation).transform(mandatoryArray),\n\n\tcreatedAt: PartialDateTime.nullable(),\n\tupdatedAt: PartialDateTime.nullable(),\n\n\tchapters: z.array(WebNovelChapter),\n});\nexport type WebNovelVolume = z.infer<typeof WebNovelVolume>;\n\nexport const WebNovel = z.object({\n\texternalIdentifiers: z.array(ExternalIdentifier).min(1),\n\n\tnames: z.array(Translation).min(1).transform(mandatoryArray),\n\tlanguage: BCP47LanguageTag,\n\toverviews: z.array(Translation).transform(mandatoryArray),\n\tcreators: z.array(Creator),\n\timages: z.array(Image).transform(mandatoryArray),\n\toriginalLanguage: BCP47LanguageTag.nullable(),\n\toriginalSource: OriginalSource.nullable(),\n\n\tisComplete: z.boolean().nullable(),\n\n\tcreatedAt: PartialDateTime.nullable(),\n\tupdatedAt: PartialDateTime.nullable(),\n\n\tvolumes: z.array(WebNovelVolume),\n});\nexport type WebNovel = z.infer<typeof WebNovel>;\n",
17
- "import type { ExternalIdentifier } from \"@/schemas/external/common\";\nimport {\n\tHostedNovelComCreatorId,\n\tHostedNovelComNovelChapterId,\n\tHostedNovelComNovelId,\n} from \"@/schemas/external/hostednovel_com\";\nimport { NovelFireNetNovelChapterId, NovelFireNetNovelId } from \"@/schemas/external/novelfire_net\";\nimport {\n\tWebNovelComCreatorId,\n\tWebNovelComNovelChapterId,\n\tWebNovelComNovelId,\n} from \"@/schemas/external/webnovel_com\";\n\nexport function webNovelExternalIdentifierToURL(ext: ExternalIdentifier): URL | undefined {\n\tif (ext.provider === \"webnovel.com\") {\n\t\tconst novelId = WebNovelComNovelId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst novelChapterId = WebNovelComNovelChapterId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst creatorId = WebNovelComCreatorId.safeParse(ext.id)?.data ?? undefined;\n\n\t\tconst HOST = \"https://www.webnovel.com\";\n\n\t\tif (typeof novelId === \"string\") {\n\t\t\treturn new URL(`/book/${novelId.substring(2)}`, HOST);\n\t\t} else if (typeof novelChapterId === \"string\") {\n\t\t\tconst p = novelChapterId.split(\"/\");\n\t\t\treturn new URL(`/book/${p[1]}/${p[3]}`, HOST);\n\t\t} else if (typeof creatorId === \"string\") {\n\t\t\treturn new URL(`/profile/${creatorId.substring(2)}`, HOST);\n\t\t}\n\t} else if (ext.provider === \"novelfire.net\") {\n\t\tconst novelId = NovelFireNetNovelId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst novelChapterId = NovelFireNetNovelChapterId.safeParse(ext.id)?.data ?? undefined;\n\n\t\tconst HOST = \"https://novelfire.net\";\n\n\t\tif (typeof novelId === \"string\") {\n\t\t\treturn new URL(`/book/${novelId.substring(2)}`, HOST);\n\t\t} else if (typeof novelChapterId === \"string\") {\n\t\t\tconst p = novelChapterId.split(\"/\");\n\t\t\treturn new URL(`/book/${p[1]}/${p[3]}`, HOST);\n\t\t}\n\t} else if (ext.provider === \"hostednovel.com\") {\n\t\tconst novelId = HostedNovelComNovelId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst novelChapterId = HostedNovelComNovelChapterId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst creatorId = HostedNovelComCreatorId.safeParse(ext.id)?.data ?? undefined;\n\n\t\tconst HOST = \"https://hostednovel.com\";\n\n\t\tif (typeof novelId === \"string\") {\n\t\t\treturn new URL(`/novel/${novelId.substring(2)}`, HOST);\n\t\t} else if (typeof novelChapterId === \"string\") {\n\t\t\tconst p = novelChapterId.split(\"/\");\n\t\t\treturn new URL(`/novel/${p[1]}/${p[3]}`, HOST);\n\t\t} else if (typeof creatorId === \"string\") {\n\t\t\treturn new URL(`/creator/${creatorId.substring(2)}`, HOST);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n"
16
+ "import { Creator, Image, Translation } from \"@/schemas/common\";\nimport { ExternalIdentifier, OriginalSource } from \"@/schemas/external/common\";\nimport { BCP47LanguageTag } from \"@/schemas/ietf\";\nimport { NonEmptyString, PartialDateTime } from \"@/schemas/string\";\nimport { mandatoryArray } from \"@/utils/array\";\nimport z from \"zod\";\n\nexport const WebNovelChapterContent = z.object({\n\toriginalHTML: z.array(NonEmptyString),\n\toriginalHTMLSize: z.int().min(0),\n\n\tgeneratedMarkdown: NonEmptyString,\n\tgeneratedMarkdownSize: z.int().min(0),\n});\nexport type WebNovelChapterContent = z.infer<typeof WebNovelChapterContent>;\n\nexport const WebNovelChapter = z.object({\n\texternalIdentifiers: z.array(ExternalIdentifier).min(1),\n\n\tvolumeNumber: z.number().min(0).nullable(),\n\tnumber: z.number().min(0),\n\tnames: z.array(Translation).min(1).transform(mandatoryArray),\n\tcreators: z.array(Creator),\n\n\tcreatedAt: PartialDateTime.nullable(),\n\tupdatedAt: PartialDateTime.nullable(),\n});\nexport type WebNovelChapter = z.infer<typeof WebNovelChapter>;\n\nexport const WebNovelVolume = z.object({\n\texternalIdentifiers: z.array(ExternalIdentifier),\n\n\tnumber: z.number().min(0),\n\tnames: z.array(Translation).transform(mandatoryArray),\n\n\tcreatedAt: PartialDateTime.nullable(),\n\tupdatedAt: PartialDateTime.nullable(),\n\n\tchapters: z.array(WebNovelChapter),\n});\nexport type WebNovelVolume = z.infer<typeof WebNovelVolume>;\n\nexport const WebNovel = z.object({\n\texternalIdentifiers: z.array(ExternalIdentifier).min(1),\n\n\tnames: z.array(Translation).min(1).transform(mandatoryArray),\n\tlanguage: BCP47LanguageTag,\n\toverviews: z.array(Translation).transform(mandatoryArray),\n\tcreators: z.array(Creator),\n\timages: z.array(Image).transform(mandatoryArray),\n\toriginalLanguage: BCP47LanguageTag.nullable(),\n\toriginalSource: OriginalSource.nullable(),\n\n\tisComplete: z.boolean().nullable(),\n\n\tcreatedAt: PartialDateTime.nullable(),\n\tupdatedAt: PartialDateTime.nullable(),\n\n\tvolumes: z.array(WebNovelVolume),\n});\nexport type WebNovel = z.infer<typeof WebNovel>;\n",
17
+ "import type { Image } from \"@/schemas/common\";\nimport type { ExternalIdentifier } from \"@/schemas/external/common\";\nimport {\n\tHostedNovelComCreatorId,\n\tHostedNovelComNovelChapterId,\n\tHostedNovelComNovelId,\n} from \"@/schemas/external/hostednovel_com\";\nimport { NovelFireNetNovelChapterId, NovelFireNetNovelId } from \"@/schemas/external/novelfire_net\";\nimport {\n\tWebNovelComCreatorId,\n\tWebNovelComNovelChapterId,\n\tWebNovelComNovelId,\n} from \"@/schemas/external/webnovel_com\";\nimport z from \"zod\";\n\nexport function webNovelExternalIdentifierToURL(ext: ExternalIdentifier): URL | undefined {\n\tif (ext.provider === \"webnovel.com\") {\n\t\tconst novelId = WebNovelComNovelId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst novelChapterId = WebNovelComNovelChapterId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst creatorId = WebNovelComCreatorId.safeParse(ext.id)?.data ?? undefined;\n\n\t\tconst HOST = \"https://www.webnovel.com\";\n\n\t\tif (typeof novelId === \"string\") {\n\t\t\treturn new URL(`/book/${novelId.substring(2)}`, HOST);\n\t\t} else if (typeof novelChapterId === \"string\") {\n\t\t\tconst p = novelChapterId.split(\"/\");\n\t\t\treturn new URL(`/book/${p[1]}/${p[3]}`, HOST);\n\t\t} else if (typeof creatorId === \"string\") {\n\t\t\treturn new URL(`/profile/${creatorId.substring(2)}`, HOST);\n\t\t}\n\t} else if (ext.provider === \"novelfire.net\") {\n\t\tconst novelId = NovelFireNetNovelId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst novelChapterId = NovelFireNetNovelChapterId.safeParse(ext.id)?.data ?? undefined;\n\n\t\tconst HOST = \"https://novelfire.net\";\n\n\t\tif (typeof novelId === \"string\") {\n\t\t\treturn new URL(`/book/${novelId.substring(2)}`, HOST);\n\t\t} else if (typeof novelChapterId === \"string\") {\n\t\t\tconst p = novelChapterId.split(\"/\");\n\t\t\treturn new URL(`/book/${p[1]}/${p[3]}`, HOST);\n\t\t}\n\t} else if (ext.provider === \"hostednovel.com\") {\n\t\tconst novelId = HostedNovelComNovelId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst novelChapterId = HostedNovelComNovelChapterId.safeParse(ext.id)?.data ?? undefined;\n\t\tconst creatorId = HostedNovelComCreatorId.safeParse(ext.id)?.data ?? undefined;\n\n\t\tconst HOST = \"https://hostednovel.com\";\n\n\t\tif (typeof novelId === \"string\") {\n\t\t\treturn new URL(`/novel/${novelId.substring(2)}`, HOST);\n\t\t} else if (typeof novelChapterId === \"string\") {\n\t\t\tconst p = novelChapterId.split(\"/\");\n\t\t\treturn new URL(`/novel/${p[1]}/${p[3]}`, HOST);\n\t\t} else if (typeof creatorId === \"string\") {\n\t\t\treturn new URL(`/creator/${creatorId.substring(2)}`, HOST);\n\t\t}\n\t}\n\n\treturn undefined;\n}\n\nconst ImageConfigWsrvNl = z.object({\n\timageProxy: z.literal(\"wsrv.nl\"),\n\n\t// ================================ Format ================\n\t/**\n\t * @see {@link https://wsrv.nl/docs/format#output}\n\t */\n\toutput: z\n\t\t.enum([\"jpg\", \"jxl\", \"png\", \"gif\", \"tiff\", \"webp\", \"original\"])\n\t\t.default(\"original\")\n\t\t.optional(),\n\t/**\n\t * Only supported by `jpg`, `jxl`, `tiff` and `webp`\n\t * @see {@link https://wsrv.nl/docs/format#quality}\n\t */\n\tquality: z.int().min(1).max(100).default(80).optional(),\n\t/**\n\t * @see {@link https://wsrv.nl/docs/format#default-image}\n\t */\n\tdefault: z.url().optional(),\n\t/**\n\t * Only supported by `png`\n\t * @see {@link https://wsrv.nl/docs/format#lossless-compression}\n\t */\n\tlossless: z.boolean().optional(),\n\t/**\n\t * Only supported by `png`\n\t * @see {@link https://wsrv.nl/docs/format#compression-level}\n\t */\n\tcompressionLevel: z.int().min(0).max(9).default(6).optional(),\n\n\t// ================================ Size ================\n\t/**\n\t * @see {@link https://wsrv.nl/docs/size#width}\n\t */\n\twidth: z.int().min(1).max(Number.MAX_SAFE_INTEGER).optional(),\n\t/**\n\t * @see {@link https://wsrv.nl/docs/size#height}\n\t */\n\theight: z.int().min(1).max(Number.MAX_SAFE_INTEGER).optional(),\n\t/**\n\t * A `width`, a `height`, or both must be specified for this parameter to work.\n\t * @see {@link https://wsrv.nl/docs/size#device-pixel-ratio}\n\t */\n\tdevicePixelRatio: z.int().min(1).max(8).optional(),\n\n\t// ================================ Fit ================\n\t/**\n\t * @see {@link https://wsrv.nl/docs/fit#fit}\n\t */\n\tfit: z.enum([\"inside\", \"outside\", \"cover\", \"fill\", \"contain\"]).optional(),\n\t/**\n\t * @see {@link https://wsrv.nl/docs/fit#without-enlargement}\n\t */\n\twithoutEnlargement: z.boolean().default(true).optional(),\n\n\t// ================================ Crop ================\n\t/**\n\t * How the image should be aligned when `fit=cover` or `fit=contain` is set. The `width` and `height` parameters should also be specified.\n\t *\n\t * `entropy`: Focus on the region with the highest [Shannon entropy](https://en.wikipedia.org/wiki/Entropy_%28information_theory%29)\n\t *\n\t * `attention`: Focus on the region with the highest luminance frequency, color saturation and presence of skin tones.\n\t *\n\t * @see {@link https://wsrv.nl/docs/crop#alignment-position}\n\t */\n\talignmentPosition: z\n\t\t.enum([\n\t\t\t\"top\",\n\t\t\t\"right\",\n\t\t\t\"bottom\",\n\t\t\t\"left\",\n\t\t\t\"top-left\",\n\t\t\t\"bottom-left\",\n\t\t\t\"bottom-right\",\n\t\t\t\"top-right\",\n\t\t\t\"center\",\n\n\t\t\t\"entropy\",\n\t\t\t\"attention\",\n\t\t])\n\t\t.default(\"center\")\n\t\t.optional(),\n});\nconst ImageConfig = z.discriminatedUnion(\"imageProxy\", [\n\tz.object({\n\t\timageProxy: z.literal(false),\n\t}),\n\tImageConfigWsrvNl,\n]);\ntype ImageConfig = z.infer<typeof ImageConfig>;\nexport function webNovelImageToURL(\n\timage: Image,\n\tinputConfig: ImageConfig = { imageProxy: false }\n): URL | undefined {\n\tconst config = ImageConfig.parse(inputConfig);\n\n\tlet imageURL: URL | undefined = undefined;\n\n\tif (image.provider === \"webnovel.com\") {\n\t\tif (/^n\\/\\d+(\\/\\d+)?/.test(image.id)) {\n\t\t\tconst sId = image.id.split(\"/\");\n\t\t\t/* cspell:disable-next-line */\n\t\t\timageURL = new URL(`/bookcover/${sId[1]}`, \"https://book-pic.webnovel.com\");\n\t\t\t/* cspell:disable-next-line */\n\t\t\timageURL.searchParams.set(\"imageMogr2/thumbnail/600x\", \"\");\n\t\t\tif (typeof sId?.[2] === \"string\") {\n\t\t\t\timageURL.searchParams.set(\"imageId\", sId[2]);\n\t\t\t}\n\t\t}\n\t}\n\n\tif (typeof imageURL === \"undefined\") {\n\t\treturn undefined;\n\t}\n\n\t// Image Proxy\n\n\tif (config.imageProxy === \"wsrv.nl\") {\n\t\tconst proxyURL = new URL(\"https://wsrv.nl\");\n\t\tproxyURL.searchParams.set(\"url\", imageURL.toString());\n\n\t\tconst proxyConfig = ImageConfigWsrvNl.parse(config);\n\n\t\tif (typeof proxyConfig?.width === \"number\") {\n\t\t\tproxyURL.searchParams.set(\"w\", proxyConfig.width.toString());\n\t\t} else if (typeof image?.width === \"number\") {\n\t\t\tproxyURL.searchParams.set(\"w\", image.width.toString());\n\t\t}\n\t\tif (typeof proxyConfig?.height === \"number\") {\n\t\t\tproxyURL.searchParams.set(\"h\", proxyConfig.height.toString());\n\t\t} else if (typeof image?.height === \"number\") {\n\t\t\tproxyURL.searchParams.set(\"h\", image.height.toString());\n\t\t}\n\t\tif (typeof proxyConfig?.devicePixelRatio === \"number\") {\n\t\t\tproxyURL.searchParams.set(\"dpr\", proxyConfig.devicePixelRatio.toString());\n\t\t}\n\n\t\tif (typeof proxyConfig?.fit === \"string\") {\n\t\t\tproxyURL.searchParams.set(\"fit\", proxyConfig.fit);\n\t\t}\n\t\tif (\n\t\t\ttypeof proxyConfig?.withoutEnlargement === \"boolean\" &&\n\t\t\tproxyConfig.withoutEnlargement === true\n\t\t) {\n\t\t\tproxyURL.searchParams.set(\"we\", \"true\");\n\t\t}\n\n\t\tif (typeof proxyConfig?.alignmentPosition === \"string\") {\n\t\t\tproxyURL.searchParams.set(\"a\", proxyConfig.alignmentPosition);\n\t\t}\n\n\t\tif (typeof proxyConfig?.compressionLevel === \"number\") {\n\t\t\tproxyURL.searchParams.set(\"l\", proxyConfig.compressionLevel.toString());\n\t\t}\n\t\tif (typeof proxyConfig?.lossless === \"boolean\" && proxyConfig.lossless === true) {\n\t\t\tproxyURL.searchParams.set(\"ll\", \"true\");\n\t\t}\n\t\tif (typeof proxyConfig?.default === \"string\") {\n\t\t\tproxyURL.searchParams.set(\"default\", proxyConfig.default);\n\t\t}\n\t\tif (typeof proxyConfig?.output === \"string\" && proxyConfig.output !== \"original\") {\n\t\t\tproxyURL.searchParams.set(\"output\", proxyConfig.output);\n\t\t}\n\t\tif (typeof proxyConfig?.quality === \"number\") {\n\t\t\tproxyURL.searchParams.set(\"q\", proxyConfig.quality.toString());\n\t\t}\n\n\t\treturn proxyURL;\n\t}\n\n\t// Not yet implemented\n\treturn imageURL;\n}\n"
18
18
  ],
19
- "mappings": "AAAA,mBAGO,IAAM,EAAqB,EAAE,OAAO,EAAE,MAAM,WAAY,2BAA2B,EAI7E,EAA4B,EACvC,OAAO,EACP,MAAM,mBAAoB,mCAAmC,EAIlD,EAAuB,EAAE,OAAO,EAAE,MAAM,WAAY,6BAA6B,ECR9F,mBCLA,mBAGO,IAAM,EAAwB,EACnC,OAAO,EACP,MAAM,sBAAuB,8BAA8B,EAIhD,EAA+B,EAC1C,OAAO,EACP,MAAM,yCAA0C,sCAAsC,EAI3E,EAA0B,EACrC,OAAO,EACP,MAAM,sBAAuB,gCAAgC,ECjB/D,mBAGO,IAAM,EAAsB,EACjC,OAAO,EACP,MAAM,sBAAuB,4BAA4B,EAI9C,EAA6B,EACxC,OAAO,EACP,MAAM,yCAA0C,oCAAoC,EFE/E,IAAM,EAAmB,EAAE,KAAK,CAAC,eAAgB,gBAAiB,iBAAiB,CAAC,EAG9E,EAAqB,EAAE,OAAO,CAC1C,SAAU,EACV,GAAI,EAAE,MAAM,CACX,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACD,CAAC,CACF,CAAC,EAGY,EAAiB,EAAE,KAAK,CAAC,aAAc,cAAc,CAAC,EG/BnE,6BACA,mBAeO,IAAM,EAAmB,EAC9B,OAAO,EACP,OAAO,CAAC,IAAM,EAAK,CAAC,EAAE,MAAM,EAAG,CAC/B,MAAO,CAAC,IACP,yBAAyB,EAAK,OAAO,GAAG,OAAS,EAAE,CAAC,EAClD,OAAO,EACP,KAAK,GAAG,GACZ,CAAC,EACA,UAAU,CAAC,IAAM,OAAO,EAAK,CAAC,EAAE,OAAO,CAAC,CAAC,ECxB3C,IAAe,GACd,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACD,ECj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",
20
- "debugId": "9A451E850986AEC764756E2164756E21",
19
+ "mappings": "AAAA,mBAGO,IAAM,EAAqB,EAAE,OAAO,EAAE,MAAM,WAAY,2BAA2B,EAI7E,EAA4B,EACvC,OAAO,EACP,MAAM,mBAAoB,mCAAmC,EAIlD,EAAuB,EAAE,OAAO,EAAE,MAAM,WAAY,6BAA6B,ECR9F,mBCLA,mBAGO,IAAM,EAAwB,EACnC,OAAO,EACP,MAAM,sBAAuB,8BAA8B,EAIhD,EAA+B,EAC1C,OAAO,EACP,MAAM,yCAA0C,sCAAsC,EAI3E,EAA0B,EACrC,OAAO,EACP,MAAM,sBAAuB,gCAAgC,ECjB/D,mBAGO,IAAM,EAAsB,EACjC,OAAO,EACP,MAAM,sBAAuB,4BAA4B,EAI9C,EAA6B,EACxC,OAAO,EACP,MAAM,yCAA0C,oCAAoC,EFE/E,IAAM,EAAmB,EAAE,KAAK,CAAC,eAAgB,gBAAiB,iBAAiB,CAAC,EAG9E,EAAqB,EAAE,OAAO,CAC1C,SAAU,EACV,GAAI,EAAE,MAAM,CACX,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACD,CAAC,CACF,CAAC,EAGY,EAAiB,EAAE,KAAK,CAAC,aAAc,cAAc,CAAC,EG/BnE,6BACA,mBAeO,IAAM,EAAmB,EAC9B,OAAO,EACP,OAAO,CAAC,IAAM,EAAK,CAAC,EAAE,MAAM,EAAG,CAC/B,MAAO,CAAC,IACP,yBAAyB,EAAK,OAAO,GAAG,OAAS,EAAE,CAAC,EAClD,OAAO,EACP,KAAK,GAAG,GACZ,CAAC,EACA,UAAU,CAAC,IAAM,OAAO,EAAK,CAAC,EAAE,OAAO,CAAC,CAAC,ECxB3C,IAAe,GACd,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,MACA,KACD,ECj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",
20
+ "debugId": "DC38A14D020253E964756E2164756E21",
21
21
  "names": []
22
22
  }
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "dist"
9
9
  ],
10
10
  "type": "module",
11
- "version": "0.1.2",
11
+ "version": "0.3.0",
12
12
  "scripts": {
13
13
  "format": "prettier --write --cache .",
14
14
  "lint": "prettier --check . && eslint --cache .",