@the_library/public 2.0.0 → 2.0.1
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/{Book-K86JRm42.d.ts → Book-CYyj_y_4.d.ts} +22 -1
- package/dist/{bookSearchService-BmFHrvsv.d.ts → bookSearchService-YQskauJS.d.ts} +1 -1
- package/dist/downloader/dl2-sw.js +1 -1
- package/dist/downloader/index.d.ts +13 -1
- package/dist/downloader/index.js +1 -1
- package/dist/downloader/index.js.map +1 -1
- package/dist/global/public.global.js +17 -17
- package/dist/models/index.d.ts +3 -4
- package/dist/models/models.d.ts +2 -3
- package/dist/models/vue.d.ts +2 -3
- package/package.json +15 -15
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import { O as Orm, C as CommonOrmJson, b as SerializedCommonOrmJson, u as uid, L as Lang, D as DeepCollectOptions, R as RecordIdentityCluster, I as InstanceData } from './orm-MJTHCG9E.js';
|
|
2
|
-
import { CopyrightStatus, QualityScore, BookMethod } from '@the_library/db_schemas/enums';
|
|
3
2
|
import { LCCAdapter } from '@the_library/standard-adapters/lcc';
|
|
4
3
|
import { DDCAdapter } from '@the_library/standard-adapters/ddc';
|
|
5
4
|
import { UDCAdapter } from '@the_library/standard-adapters/udc';
|
|
@@ -11,6 +10,28 @@ import { ISBNAdapter } from '@the_library/standard-adapters/isbn';
|
|
|
11
10
|
import { ISNIAdapter } from '@the_library/standard-adapters/isni';
|
|
12
11
|
import { ORCIDAdapter } from '@the_library/standard-adapters/orcid';
|
|
13
12
|
|
|
13
|
+
declare enum BookMethod {
|
|
14
|
+
Unknown = 0,
|
|
15
|
+
Scan = 1,
|
|
16
|
+
NativeDigital = 2,
|
|
17
|
+
OCR = 3,
|
|
18
|
+
AiTranslation = 4
|
|
19
|
+
}
|
|
20
|
+
declare enum CopyrightStatus {
|
|
21
|
+
Unknown = 0,
|
|
22
|
+
PublicDomain = 1,
|
|
23
|
+
CreativeCommons = 2,
|
|
24
|
+
AllRightsReserved = 3
|
|
25
|
+
}
|
|
26
|
+
declare enum QualityScore {
|
|
27
|
+
None = 0,
|
|
28
|
+
Poor = 1,
|
|
29
|
+
Fair = 2,
|
|
30
|
+
Good = 3,
|
|
31
|
+
VeryGood = 4,
|
|
32
|
+
Excellent = 5
|
|
33
|
+
}
|
|
34
|
+
|
|
14
35
|
/** propName -> propId (provenance column mapping) */
|
|
15
36
|
declare const PERSON_PROP_IDS: Record<string, number>;
|
|
16
37
|
interface PersonSlimCols {
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var u={pdf:"dl2-pdf-v1",preview:"dl2-preview-v1",pages:"dl2-pages-v1"};var w=n=>`/ar/${n}`,d=w,h=w,g=(n,t)=>`/pages/${encodeURIComponent(n)}/${t}`;var f=class{constructor(t){this.active=0;this.queue=[];this.waiters=new Map;this.max=t}add(t,e){let i=this.waiters.get(t);if(i)return i;let s=new Promise((c,r)=>{let a=()=>{this.active++,Promise.resolve().then(e).then(c,r).finally(()=>{this.waiters.delete(t),this.active--,this._drain()})};this.active<this.max?a():this.queue.push({key:t,run:a,reject:r})});return this.waiters.set(t,s),s}start(){}stop(){let t=this.queue;this.queue=[];for(let{key:i,reject:s}of t)this.waiters.delete(i),s(new Error("[queue] stopped before task started"));let e=[...this.waiters.values()];return Promise.allSettled(e).then(()=>{})}_drain(){this.queue.length>0&&this.active<this.max&&this.queue.shift().run()}};var R="
|
|
1
|
+
var u={pdf:"dl2-pdf-v1",preview:"dl2-preview-v1",pages:"dl2-pages-v1"};var w=n=>`/ar/${n}`,d=w,h=w,g=(n,t)=>`/pages/${encodeURIComponent(n)}/${t}`;var f=class{constructor(t){this.active=0;this.queue=[];this.waiters=new Map;this.max=t}add(t,e){let i=this.waiters.get(t);if(i)return i;let s=new Promise((c,r)=>{let a=()=>{this.active++,Promise.resolve().then(e).then(c,r).finally(()=>{this.waiters.delete(t),this.active--,this._drain()})};this.active<this.max?a():this.queue.push({key:t,run:a,reject:r})});return this.waiters.set(t,s),s}start(){}stop(){let t=this.queue;this.queue=[];for(let{key:i,reject:s}of t)this.waiters.delete(i),s(new Error("[queue] stopped before task started"));let e=[...this.waiters.values()];return Promise.allSettled(e).then(()=>{})}_drain(){this.queue.length>0&&this.active<this.max&&this.queue.shift().run()}};var R="2b6d16c2",v=4,_=new f(v),p=self;p.addEventListener("install",n=>{p.skipWaiting()});p.addEventListener("activate",n=>{n.waitUntil((async()=>{await p.clients.claim();let t=new Set(Object.values(u));for(let e of await caches.keys())e.startsWith("dl2-")&&!t.has(e)&&(console.log("[SW]",R,"- deleting stale cache",e),await caches.delete(e))})())});p.addEventListener("fetch",n=>{let t=n.request;if(t.method!=="GET")return;let e=new URL(t.url);if(e.searchParams.get("dl2-bypass")!=="1"&&e.origin===p.location.origin){if(e.pathname.startsWith("/ar/")){n.respondWith(y(t,e));return}if(e.pathname.startsWith("/pages/")){n.respondWith(S(t,e));return}}});async function y(n,t){let e=t.pathname.slice(4),i=await caches.open(u.pdf),s=await i.match(d(e));if(s)return m(n,s);let c=await caches.open(u.preview),r=await c.match(h(e));if(r)return r;let a=await _.add(e,()=>C(e,i,c));if(a==="pdf"){let o=await i.match(d(e));return o?m(n,o):new Response("Not Found",{status:404})}return a==="preview"?await c.match(h(e))??new Response("Not Found",{status:404}):a==="error"?Response.error():new Response("Not Found",{status:404})}async function C(n,t,e){let i=["https://arweave.net","https://permagate.io","https://ar-io.dev"];for(let s of i)try{let c=new Request(`${s}/${n}`,{mode:"cors"}),r=await fetch(c);if(r.type==="opaque")return"error";if(!r.ok)continue;return(r.headers.get("content-type")||"").includes("application/pdf")?(await t.put(d(n),r),"pdf"):(await e.put(h(n),r),"preview")}catch{}return"not-found"}async function S(n,t){let e=t.pathname.split("/").filter(Boolean);if(e.length<3)return new Response("Not Found",{status:404});let i=decodeURIComponent(e[1]),s=parseInt(e[2],10),r=await(await caches.open(u.pages)).match(g(i,s));return r||new Response("Not Found",{status:404})}async function m(n,t){let e=n.headers.get("range");if(!e)return t;let i=await t.blob(),s=i.size,[c,r]=e.replace(/bytes=/,"").split("-"),a,o;if(c===""){let l=parseInt(r,10);if(isNaN(l))return t;a=Math.max(0,s-l),o=s-1}else a=parseInt(c,10),o=r?parseInt(r,10):s-1;return isNaN(a)||isNaN(o)?new Response("Range Not Satisfiable",{status:416,headers:{"Content-Range":`bytes */${s}`}}):(o=Math.min(o,s-1),a>o||a>=s?new Response("Range Not Satisfiable",{status:416,headers:{"Content-Range":`bytes */${s}`}}):new Response(i.slice(a,o+1),{status:206,statusText:"Partial Content",headers:{"Content-Range":`bytes ${a}-${o}/${s}`,"Accept-Ranges":"bytes","Content-Length":String(o-a+1),"Content-Type":t.headers.get("Content-Type")??"application/octet-stream"}}))}export{m as handleRangeRequest};
|
|
2
2
|
//# sourceMappingURL=dl2-sw.js.map
|
|
@@ -47,6 +47,18 @@ declare class DownloadQuotaExceededError extends Error {
|
|
|
47
47
|
constructor(txId: string, message?: string);
|
|
48
48
|
}
|
|
49
49
|
|
|
50
|
+
/** `detail` of the window `ARWEAVE_DOWNLOAD_PROGRESS` event — listeners type their handler with it. */
|
|
51
|
+
interface DownloadProgressDetail {
|
|
52
|
+
txId: string;
|
|
53
|
+
loaded: number;
|
|
54
|
+
total?: number;
|
|
55
|
+
}
|
|
56
|
+
/** `detail` of the window `ARWEAVE_DOWNLOAD_DONE` event. */
|
|
57
|
+
interface DownloadDoneDetail {
|
|
58
|
+
txId: string;
|
|
59
|
+
mime: 'pdf' | 'preview';
|
|
60
|
+
}
|
|
61
|
+
|
|
50
62
|
declare const CACHE_VERSION = 1;
|
|
51
63
|
declare const CACHES: {
|
|
52
64
|
readonly pdf: "dl2-pdf-v1";
|
|
@@ -58,4 +70,4 @@ declare const pdfKey: (txId: string) => string;
|
|
|
58
70
|
declare const previewKey: (txId: string) => string;
|
|
59
71
|
declare const pageKey: (txId: string, n: number) => string;
|
|
60
72
|
|
|
61
|
-
export { CACHES, CACHE_VERSION, DL2_SW_VERSION, DownloadPdfToDisk, DownloadQuotaExceededError, EnsurePageCount, EnsurePageImage, EnsurePdf, GetImage, GetObjectUrl, GetPdf, InitDownloaderV2, type InitOptions, SetPinnedPdfs, getBookData, pageKey, pdfKey, preloadWorkersV2, previewKey, revokeObjectUrl, storageEstimate };
|
|
73
|
+
export { CACHES, CACHE_VERSION, DL2_SW_VERSION, type DownloadDoneDetail, DownloadPdfToDisk, type DownloadProgressDetail, DownloadQuotaExceededError, EnsurePageCount, EnsurePageImage, EnsurePdf, GetImage, GetObjectUrl, GetPdf, InitDownloaderV2, type InitOptions, SetPinnedPdfs, getBookData, pageKey, pdfKey, preloadWorkersV2, previewKey, revokeObjectUrl, storageEstimate };
|
package/dist/downloader/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{a as Re,b as p,c as l,d as I,e as Q,f as X,g as F,h as J,i as Z}from"../chunk-SD3INWZF.js";import{a as G,b as Ee,c as B,d as Y,e as A,f as z}from"../chunk-PV3X54EU.js";var
|
|
1
|
+
import{a as Re,b as p,c as l,d as I,e as Q,f as X,g as F,h as J,i as Z}from"../chunk-SD3INWZF.js";import{a as G,b as Ee,c as B,d as Y,e as A,f as z}from"../chunk-PV3X54EU.js";var xe=1,g={pdf:"dl2-pdf-v1",preview:"dl2-preview-v1",pages:"dl2-pages-v1"},ke="__DL2_SW_VERSION__",ee=e=>`/ar/${e}`,f=ee,U=ee,P=(e,r)=>`/pages/${encodeURIComponent(e)}/${r}`;var y=()=>caches.open(g.pdf),re=()=>caches.open(g.preview),te=()=>caches.open(g.pages),w=async e=>(await y()).match(f(e)),k=async e=>(await re()).match(U(e)),q=async(e,r)=>(await te()).match(P(e,r));var oe=async e=>(await y()).delete(f(e));var ne=async()=>(await(await y()).keys()).map(t=>ae(t.url)).filter(Boolean),se=async()=>(await(await re()).keys()).map(t=>ae(t.url)).filter(Boolean);var ie=async()=>(await(await te()).keys()).flatMap(t=>{let s=new URL(t.url).pathname.match(/^\/pages\/([^/]+)\/(\d+)$/);if(!s)return[];let i=Number(s[2]);if(!Number.isSafeInteger(i))return[];try{return[{txId:decodeURIComponent(s[1]),page:i}]}catch{return[]}});function ae(e){let r=e.match(/\/ar\/([^/?#]+)/);return r?r[1]:null}var m=class{constructor(r){this.active=0;this.queue=[];this.waiters=new Map;this.max=r}add(r,t){let s=this.waiters.get(r);if(s)return s;let i=new Promise((n,a)=>{let c=()=>{this.active++,Promise.resolve().then(t).then(n,a).finally(()=>{this.waiters.delete(r),this.active--,this._drain()})};this.active<this.max?c():this.queue.push({key:r,run:c,reject:a})});return this.waiters.set(r,i),i}start(){}stop(){let r=this.queue;this.queue=[];for(let{key:s,reject:i}of r)this.waiters.delete(s),i(new Error("[queue] stopped before task started"));let t=[...this.waiters.values()];return Promise.allSettled(t).then(()=>{})}_drain(){this.queue.length>0&&this.active<this.max&&this.queue.shift().run()}};var v=class extends Error{constructor(r,t){super(t??`Storage quota exceeded while caching ${r}`),this.name="DownloadQuotaExceededError",this.txId=r}};var ce=2,_e=3,de=null,b=null,$=6e4,ue=null,_=new Map,N=new Map;function pe(e,r,t={}){de=e,b=r,$=t.muWorkerTimeout??6e4,ue=new m(t.pdfConcurrency??_e),r.listen(be)}function be(e){e.type==="MuPageDone"?l(e.txId,e.page,"done"):e.type==="MuPageError"&&l(e.txId,e.page,"error")}function h(e){let r=_.get(e);if(r)return r;let t=Ce(e).finally(()=>_.delete(e));return _.set(e,t),t}async function Ce(e){await w(e)||(p(e,{phase:"queued"}),await ue.add(e,async()=>{let t=await de.rpc({type:"GetFile",txId:e,mime:"pdf"});if(!t.ok)throw t.quotaExceeded?new v(e,t.error):new Error(t.error??"[orchestrator] download failed")}))}function le(e,r){let t=P(e,r),s=N.get(t);if(s)return s;let i=De(e,r,t).finally(()=>N.delete(t));return N.set(t,i),i}async function De(e,r,t){let s=await q(e,r);if(s)return s;l(e,r,"queued");let i=0;for(;i<=ce;){if(await h(e),l(e,r,"downloading"),await Te(e,r)==="done"){let a=await q(e,r);if(a)return a;throw new Error(`[orchestrator] page ${r} not in cache after render`)}if(i++,i>ce)throw l(e,r,"error"),new Error(`[orchestrator] render failed for page ${r} of ${e}`);await oe(e),_.delete(e)}throw new Error("[orchestrator] unreachable")}function Te(e,r){return new Promise(t=>{let s=setTimeout(()=>{i(),t("error")},$),i=Me(e,r,n=>{clearTimeout(s),t(n)});b.send({type:"ProcessPages",txId:e,from:r,to:r})})}function Me(e,r,t){let s=b,i=!1,n=()=>{i=!0,s.unlisten(a)},a=c=>{i||(c.type==="MuPageDone"&&c.txId===e&&c.page===r?(n(),t("done")):c.type==="MuPageError"&&c.txId===e&&c.page===r&&(n(),t("error")))};return s.listen(a),n}async function fe(e){return await h(e),new Promise((r,t)=>{let s=setTimeout(()=>{n(),t(new Error(`[orchestrator] page count timed out for ${e}`))},$),i=b,n=()=>i.unlisten(a),a=c=>{c.type==="MuPageCountResult"&&c.txId===e?(clearTimeout(s),n(),r(c.pageCount)):c.type==="MuPageCountError"&&c.txId===e&&(clearTimeout(s),n(),t(new Error(c.error)))};i.listen(a),i.send({type:"GetPageCount",txId:e})})}var K=class{constructor(){this.handlers=[];this.pending=new Map}listen(r){this.handlers.push(r)}unlisten(r){this.handlers=this.handlers.filter(t=>t!==r)}rpc(r){return We(this.pending,r,t=>this.send(t))}_dispatch(r){if(r.type==="FileRpcResponse"){let t=this.pending.get(r.key);if(t&&t.length>0){let s=t.shift();t.length===0&&this.pending.delete(r.key),s({ok:r.ok,key:r.key,error:r.error,quotaExceeded:r.quotaExceeded})}return}for(let t of this.handlers)t(r)}},C=class extends K{constructor(r){super(),this.w=new Worker(r,{type:"module"}),this.w.onmessage=t=>this._dispatch(t.data),this.w.onerror=t=>console.error("[DedicatedThread] worker error",t)}send(r){this.w.postMessage(r)}};function Se(e){return"mime"in e?`${e.txId}:${e.mime}`:e.txId}function We(e,r,t){return new Promise((s,i)=>{let n=Se(r),a=e.get(n)??[],c=d=>{clearTimeout(W),s(d)},W=setTimeout(()=>{let d=e.get(n);if(d){let R=d.indexOf(c);R>=0&&d.splice(R,1),d.length===0&&e.delete(n)}i(new Error(`[worker-client] rpc timeout after 90000ms for ${n}`))},9e4);a.push(c),e.set(n,a),t(r)})}function we(e="/file-worker-v2.js"){return new C(e)}function me(e="/mu-worker-v2.js"){return new C(e)}function he(e,r,t){typeof window>"u"||window.dispatchEvent(new CustomEvent("ARWEAVE_DOWNLOAD_PROGRESS",{detail:{txId:e,loaded:r,total:t},bubbles:!0}))}function D(e,r){typeof window>"u"||window.dispatchEvent(new CustomEvent("ARWEAVE_DOWNLOAD_DONE",{detail:{txId:e,mime:r},bubbles:!0}))}var Oe=6,E=null,L=null,H=null,ge=null;function M(){return L||(L=we()),L}function Pe(){return H||(H=me()),H}function Ae(){M(),Pe()}var u=(e={})=>E||(E=Ie(e).catch(r=>{throw E=null,r}),E);async function Ie(e){let{requestPersistence:r=!0,muWorkerTimeout:t,mupdfUrl:s="/js/mupdf.js"}=e;r&&typeof navigator<"u"&&navigator.storage?.persist&&navigator.storage.persist().catch(()=>{}),await G();let i=M(),n=Pe();e.gateways?.length&&i.send({type:"FileInit",gateways:e.gateways}),ge=new m(e.concurrency?.preview??Oe),n.send({type:"MuInit",mupdfUrl:s}),pe(i,n,{muWorkerTimeout:t,pdfConcurrency:e.concurrency?.pdf}),i.listen(o=>{if(o.type==="DownloadProgress")p(o.txId,{phase:"downloading",loaded:o.loaded,total:o.total}),he(o.txId,o.loaded,o.total);else if(o.type==="DownloadFinished")p(o.txId,{phase:"done"}),D(o.txId,o.mime);else if(o.type==="DownloadError")p(o.txId,{phase:"error",error:o.error});else if(o.type==="StoragePruneStarted")F({active:!0});else if(o.type==="StoragePruned"){F({active:!1,freedBytes:o.freedBytes,removedCount:o.removed});for(let x of o.prunedTxIds)X(x),Q(x)}}),n.listen(o=>{o.type==="MuPdfData"&&(I(o.txId,o.bookData),typeof window<"u"&&window.dispatchEvent(new CustomEvent("WorkerEvent.MuPdfData",{detail:{...o.bookData,fileId:o.txId},bubbles:!0})))});let[a,c,W,d]=await Promise.all([ne(),se(),ie(),B()]);await Ge(a,c);let R=[...a.map(o=>[o,{phase:"done"}]),...c.map(o=>[o,{phase:"done"}])];J(R),typeof window<"u"&&(a.forEach(o=>D(o,"pdf")),c.forEach(o=>D(o,"preview")));for(let o of d)I(o.txId,o);let O=new Map;for(let{txId:o,page:x}of W){let j=O.get(o)??[];j.push([x,"done"]),O.set(o,j)}Z([...O])}var T=null,ye=[];function ve(){let e=new Set(ye);T&&e.add(T),M().send({type:"PinTxIds",txIds:Array.from(e)})}function S(e){T!==e&&(T=e,ve())}var Fe=e=>{ye=[...e],ve()},Ue=async e=>{await u(),S(e);let r=await w(e);if(r)return V(e),r;await h(e);let t=await w(e);if(!t)throw new Error(`[downloader_v2] PDF not in cache after download: ${e}`);return t},qe=async e=>{await u();let r=await k(e);if(r)return V(e),r;let t=await ge.add(e,async()=>M().rpc({type:"GetFile",txId:e,mime:"preview"}));if(!t.ok)throw new Error(`[downloader_v2] preview download failed for ${e}: ${t.error}`);let s=await k(e);if(!s)throw new Error(`[downloader_v2] preview not in cache after download: ${e}`);return s},Ne=async(e,r)=>(await u(),S(e),V(e),le(e,r)),$e=async e=>(await u(),S(e),h(e)),Ke=async e=>(await u(),S(e),fe(e)),Le=async(e,r)=>{await u(),await h(e);let s=await(await y()).match(f(e));if(!s)throw new Error("[downloader_v2] PDF not in cache after EnsurePdf");let i=await s.blob(),n=URL.createObjectURL(i),a=document.createElement("a");a.href=n,a.download=r.endsWith(".pdf")?r:`${r}.pdf`,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL(n)},He=async e=>{let r=await e.blob();return URL.createObjectURL(r)},Ve=e=>{URL.revokeObjectURL(e)},je=()=>navigator.storage.estimate();async function Ge(e,r){let t=new Set((await z()).map(n=>n.txId)),s=n=>{let a=n?.headers.get("content-length"),c=a?Number(a):NaN;return Number.isFinite(c)?c:0},i=async(n,a,c)=>{t.has(n)||await A({txId:n,fileType:a,sizeBytes:s(c),downloadedAt:0,lastAccessedAt:0})};await Promise.all([...e.map(async n=>i(n,"pdf",await w(n))),...r.map(async n=>i(n,"preview",await k(n)))])}function V(e){let r=Date.now();Y(e).then(t=>{t&&(r-t.lastAccessedAt<36e5||A({...t,lastAccessedAt:r}).catch(()=>{}))}).catch(()=>{})}export{g as CACHES,xe as CACHE_VERSION,ke as DL2_SW_VERSION,Le as DownloadPdfToDisk,v as DownloadQuotaExceededError,Ke as EnsurePageCount,Ne as EnsurePageImage,$e as EnsurePdf,qe as GetImage,He as GetObjectUrl,Ue as GetPdf,u as InitDownloaderV2,Fe as SetPinnedPdfs,Re as downloadState,Ee as getBookData,P as pageKey,f as pdfKey,Ae as preloadWorkersV2,U as previewKey,Ve as revokeObjectUrl,je as storageEstimate};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/downloader/keys.ts","../../src/downloader/cache-store.ts","../../src/downloader/queue.ts","../../src/downloader/errors.ts","../../src/downloader/orchestrator.ts","../../src/downloader/client/worker-client.ts","../../src/downloader/client/progress.ts","../../src/downloader/client/files.ts"],"mappings":"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","names":["CACHE_VERSION","CACHES","DL2_SW_VERSION","arKey","txId","pdfKey","previewKey","pageKey","n","openPdfCache","CACHES","openPreviewCache","openPagesCache","matchPdf","txId","pdfKey","matchPreview","previewKey","matchPage","n","pageKey","deletePdf","txId","openPdfCache","pdfKey","pdfKeys","openPdfCache","r","txIdFromArKey","previewKeys","openPreviewCache","pageEntries","openPagesCache","request","match","page","txIdFromArKey","url","m","ConcurrentProcessor","maxConcurrent","key","task","existing","p","resolve","reject","run","pending","remaining","DownloadQuotaExceededError","txId","message","MAX_RENDER_RETRIES","DEFAULT_PDF_CONCURRENCY","_fileThread","_muThread","_muTimeout","_pdfProcessor","pendingPdf","pendingPage","initOrchestrator","fileThread","muThread","opts","ConcurrentProcessor","handleMuWorkerMessage","msg","_setRenderPage","EnsurePdf","txId","cached","p","_ensurePdfInner","matchPdf","_setFileState","result","DownloadQuotaExceededError","EnsurePageImage","page","key","pageKey","_ensurePageInner","pKey","hit","matchPage","retries","requestRender","resp","deletePdf","resolve","timer","cleanup","_addOneShotMuListener","cb","thread","done","handler","EnsurePageCount","reject","BaseThread","cb","h","cmd","rpcWithTimeout","c","msg","list","resolver","DedicatedThread","scriptUrl","e","rpcRequestKey","pending","send","resolve","reject","key","settle","r","timer","l","i","createFileThread","scriptUrl","DedicatedThread","createMuThread","emitProgress","txId","loaded","total","emitDone","mime","DEFAULT_PREVIEW_CONCURRENCY","_initPromise","_fileThread","_muThread","_previewProcessor","getFileThread","createFileThread","getMuThread","createMuThread","preloadWorkersV2","InitDownloaderV2","opts","_doInit","err","requestPersistence","muWorkerTimeout","mupdfUrl","openMetaDb","fileThread","muThread","ConcurrentProcessor","initOrchestrator","msg","_setFileState","emitProgress","emitDone","_setPruning","txId","_clearFileState","_clearRender","_setBookData","pdfTxIds","previewTxIds","cachedPages","allBookData","pdfKeys","previewKeys","pageEntries","getAllBookData","_reconcileDownloads","fileEntries","id","_hydrateFiles","bd","renderedPages","page","pages","_hydrateRenders","_autoPinnedTxId","_explicitPins","_sendPins","txIds","_autoPin","SetPinnedPdfs","GetPdf","cached","matchPdf","_touchAccessTime","EnsurePdf","resp","GetImage","matchPreview","result","EnsurePageImage","EnsurePageCount","DownloadPdfToDisk","filename","response","openPdfCache","pdfKey","blob","url","GetObjectUrl","revokeObjectUrl","storageEstimate","existing","getAllDownloadRecords","r","sizeOf","len","n","reconcile","fileType","putDownloadRecord","now","getDownloadRecord","rec"]}
|
|
1
|
+
{"version":3,"sources":["../../src/downloader/keys.ts","../../src/downloader/cache-store.ts","../../src/downloader/queue.ts","../../src/downloader/errors.ts","../../src/downloader/orchestrator.ts","../../src/downloader/client/worker-client.ts","../../src/downloader/client/progress.ts","../../src/downloader/client/files.ts"],"mappings":"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","names":["CACHE_VERSION","CACHES","DL2_SW_VERSION","arKey","txId","pdfKey","previewKey","pageKey","n","openPdfCache","CACHES","openPreviewCache","openPagesCache","matchPdf","txId","pdfKey","matchPreview","previewKey","matchPage","n","pageKey","deletePdf","txId","openPdfCache","pdfKey","pdfKeys","openPdfCache","r","txIdFromArKey","previewKeys","openPreviewCache","pageEntries","openPagesCache","request","match","page","txIdFromArKey","url","m","ConcurrentProcessor","maxConcurrent","key","task","existing","p","resolve","reject","run","pending","remaining","DownloadQuotaExceededError","txId","message","MAX_RENDER_RETRIES","DEFAULT_PDF_CONCURRENCY","_fileThread","_muThread","_muTimeout","_pdfProcessor","pendingPdf","pendingPage","initOrchestrator","fileThread","muThread","opts","ConcurrentProcessor","handleMuWorkerMessage","msg","_setRenderPage","EnsurePdf","txId","cached","p","_ensurePdfInner","matchPdf","_setFileState","result","DownloadQuotaExceededError","EnsurePageImage","page","key","pageKey","_ensurePageInner","pKey","hit","matchPage","retries","requestRender","resp","deletePdf","resolve","timer","cleanup","_addOneShotMuListener","cb","thread","done","handler","EnsurePageCount","reject","BaseThread","cb","h","cmd","rpcWithTimeout","c","msg","list","resolver","DedicatedThread","scriptUrl","e","rpcRequestKey","pending","send","resolve","reject","key","settle","r","timer","l","i","createFileThread","scriptUrl","DedicatedThread","createMuThread","emitProgress","txId","loaded","total","emitDone","mime","DEFAULT_PREVIEW_CONCURRENCY","_initPromise","_fileThread","_muThread","_previewProcessor","getFileThread","createFileThread","getMuThread","createMuThread","preloadWorkersV2","InitDownloaderV2","opts","_doInit","err","requestPersistence","muWorkerTimeout","mupdfUrl","openMetaDb","fileThread","muThread","ConcurrentProcessor","initOrchestrator","msg","_setFileState","emitProgress","emitDone","_setPruning","txId","_clearFileState","_clearRender","_setBookData","pdfTxIds","previewTxIds","cachedPages","allBookData","pdfKeys","previewKeys","pageEntries","getAllBookData","_reconcileDownloads","fileEntries","id","_hydrateFiles","bd","renderedPages","page","pages","_hydrateRenders","_autoPinnedTxId","_explicitPins","_sendPins","txIds","_autoPin","SetPinnedPdfs","GetPdf","cached","matchPdf","_touchAccessTime","EnsurePdf","resp","GetImage","matchPreview","result","EnsurePageImage","EnsurePageCount","DownloadPdfToDisk","filename","response","openPdfCache","pdfKey","blob","url","GetObjectUrl","revokeObjectUrl","storageEstimate","existing","getAllDownloadRecords","r","sizeOf","len","n","reconcile","fileType","putDownloadRecord","now","getDownloadRecord","rec"]}
|