@prose-reader/core 1.374.0 → 1.374.2
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/enhancers/pagination/trackPaginationEnrichment.d.ts +17 -0
- package/dist/enhancers/pagination/types.d.ts +2 -4
- package/dist/index.cjs +13 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +667 -627
- package/dist/index.js.map +1 -1
- package/dist/pagination/PaginationController.d.ts +3 -1
- package/dist/pagination/edges.d.ts +4 -1
- package/dist/pagination/settlement.test.d.ts +1 -0
- package/dist/pagination/types.d.ts +13 -3
- package/package.json +2 -2
- package/dist/enhancers/pagination/trackPaginationInfo.d.ts +0 -29
package/dist/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Report as e, arrayEqual as t, detectMimeTypeFromName as n, getItemSpreadPosition as r, getParentPath as i, isShallowEqual as a, isShallowEqual as o, parseContentType as s, shallowMergeIfDefined as c } from "@prose-reader/shared";
|
|
2
|
-
import { BehaviorSubject as l, EMPTY as u, NEVER as d, Observable as f, ReplaySubject as p, Subject as m, animationFrameScheduler as h, auditTime as g, catchError as _, combineLatest as v,
|
|
3
|
-
import { debounceTime as
|
|
4
|
-
import { generate as
|
|
5
|
-
var L = e.namespace("@prose-reader/core", void 0, { color: "#98cde7" }),
|
|
2
|
+
import { BehaviorSubject as l, EMPTY as u, NEVER as d, Observable as f, ReplaySubject as p, Subject as m, animationFrameScheduler as h, auditTime as g, catchError as _, combineLatest as v, concat as y, concatMap as ee, debounce as te, debounceTime as ne, defaultIfEmpty as re, defer as ie, delay as ae, distinctUntilChanged as b, endWith as oe, exhaustMap as se, filter as x, finalize as ce, first as S, from as C, fromEvent as w, identity as le, lastValueFrom as ue, map as T, merge as E, mergeMap as de, of as D, scheduled as fe, share as O, shareReplay as k, skip as pe, startWith as me, switchMap as A, switchScan as he, take as ge, takeUntil as j, tap as M, throttleTime as _e, timeout as ve, timer as ye, withLatestFrom as N } from "rxjs";
|
|
3
|
+
import { debounceTime as be, distinctUntilChanged as xe, filter as Se, first as Ce, map as we, pairwise as Te, share as Ee, shareReplay as De, skip as Oe, startWith as ke, switchMap as P, take as Ae, takeUntil as F, tap as I } from "rxjs/operators";
|
|
4
|
+
import { generate as je, isIndirectionOnly as Me, isParsedCfiRange as Ne, parse as Pe, resolve as Fe } from "@prose-reader/cfi";
|
|
5
|
+
var L = e.namespace("@prose-reader/core", void 0, { color: "#98cde7" }), Ie = [
|
|
6
6
|
"pointercancel",
|
|
7
7
|
"pointerdown",
|
|
8
8
|
"pointerenter",
|
|
@@ -16,10 +16,10 @@ function R(e, t, n) {
|
|
|
16
16
|
let r = String(n);
|
|
17
17
|
e.getAttribute(t) !== r && e.setAttribute(t, r);
|
|
18
18
|
}
|
|
19
|
-
function
|
|
19
|
+
function Le(e, t) {
|
|
20
20
|
e.hasAttribute(t) && e.removeAttribute(t);
|
|
21
21
|
}
|
|
22
|
-
function
|
|
22
|
+
function Re(e, t, n) {
|
|
23
23
|
e[t] !== n && (e[t] = n);
|
|
24
24
|
}
|
|
25
25
|
function z(e, t, n) {
|
|
@@ -28,22 +28,22 @@ function z(e, t, n) {
|
|
|
28
28
|
function B(e, t) {
|
|
29
29
|
e.getPropertyValue(t) !== "" && e.removeProperty(t);
|
|
30
30
|
}
|
|
31
|
-
function
|
|
31
|
+
function ze(e, t, n) {
|
|
32
32
|
if ("caretPositionFromPoint" in e) return e.caretPositionFromPoint(t, n);
|
|
33
33
|
if ("caretRangeFromPoint" in e && e.caretRangeFromPoint !== void 0) return e.caretRangeFromPoint(t, n);
|
|
34
34
|
}
|
|
35
|
-
var
|
|
35
|
+
var Be = (e, t) => {
|
|
36
36
|
let n = "createRange" in e ? e : e.ownerDocument;
|
|
37
37
|
if (!n) return;
|
|
38
|
-
let r = "body" in e ?
|
|
38
|
+
let r = "body" in e ? Ve(e.body, t) : Ve(e, t);
|
|
39
39
|
if (r) {
|
|
40
40
|
let e, i = 0, a = n.createRange();
|
|
41
41
|
return Array.from(r.childNodes).some((r) => {
|
|
42
42
|
a.selectNodeContents(r);
|
|
43
|
-
let o =
|
|
43
|
+
let o = Ue(a.getClientRects(), t);
|
|
44
44
|
if (o) {
|
|
45
45
|
e = a.cloneRange();
|
|
46
|
-
let t =
|
|
46
|
+
let t = ze(n, Math.ceil(o.left), Math.ceil(o.top));
|
|
47
47
|
return t && "startContainer" in t && t.startContainer === e.startContainer && (i = t.startOffset), t && "offsetNode" in t && t.offsetNode === e.startContainer && (i = t.offset), !0;
|
|
48
48
|
}
|
|
49
49
|
return !1;
|
|
@@ -55,25 +55,25 @@ var ze = (e, t) => {
|
|
|
55
55
|
offset: 0
|
|
56
56
|
};
|
|
57
57
|
}
|
|
58
|
-
},
|
|
59
|
-
let n =
|
|
58
|
+
}, Ve = (e, t) => {
|
|
59
|
+
let n = He(e.getBoundingClientRect(), t), r;
|
|
60
60
|
n !== "before" && n !== "after" && (r = e);
|
|
61
61
|
for (let n of e.children) {
|
|
62
|
-
let e =
|
|
62
|
+
let e = Ve(n, t);
|
|
63
63
|
if (e) return e;
|
|
64
64
|
}
|
|
65
65
|
return r;
|
|
66
66
|
};
|
|
67
|
-
function
|
|
67
|
+
function He(e, { left: t, right: n }) {
|
|
68
68
|
return e.left <= t && e.right <= t ? "before" : e.left <= t && e.right > t && e.right <= n ? "partially-before" : e.left <= n && e.right > n ? "partially-after" : e.left > n ? "after" : "within";
|
|
69
69
|
}
|
|
70
|
-
function
|
|
70
|
+
function Ue(e, t) {
|
|
71
71
|
return Array.from(e).find((e) => {
|
|
72
|
-
let n =
|
|
72
|
+
let n = He(e, t);
|
|
73
73
|
return n !== "before" && n !== "after";
|
|
74
74
|
});
|
|
75
75
|
}
|
|
76
|
-
var
|
|
76
|
+
var We = (e, t) => {
|
|
77
77
|
if (e.nodeType !== Node.CDATA_SECTION_NODE && e.nodeType !== Node.DOCUMENT_TYPE_NODE) {
|
|
78
78
|
let n = e.ownerDocument?.createRange();
|
|
79
79
|
n?.selectNodeContents(e);
|
|
@@ -84,7 +84,7 @@ var Ue = (e, t) => {
|
|
|
84
84
|
}
|
|
85
85
|
return n;
|
|
86
86
|
}
|
|
87
|
-
},
|
|
87
|
+
}, Ge = (e) => {
|
|
88
88
|
if (e?.target && (e?.target)?.ownerDocument?.defaultView) {
|
|
89
89
|
let t = (e?.target)?.ownerDocument?.defaultView;
|
|
90
90
|
if (t.PointerEvent && e instanceof t.PointerEvent) return !0;
|
|
@@ -93,9 +93,9 @@ var Ue = (e, t) => {
|
|
|
93
93
|
let t = e?.view;
|
|
94
94
|
if (t.PointerEvent && e instanceof t.PointerEvent) return !0;
|
|
95
95
|
}
|
|
96
|
-
return !!
|
|
97
|
-
},
|
|
98
|
-
if (
|
|
96
|
+
return !!Ie.includes(e.type);
|
|
97
|
+
}, Ke = (e) => {
|
|
98
|
+
if (Ge(e)) return !1;
|
|
99
99
|
if (e?.target && (e?.target)?.ownerDocument?.defaultView) {
|
|
100
100
|
let t = (e?.target)?.ownerDocument?.defaultView;
|
|
101
101
|
if (t.MouseEvent) return e instanceof t.MouseEvent;
|
|
@@ -105,7 +105,7 @@ var Ue = (e, t) => {
|
|
|
105
105
|
if (t.MouseEvent) return e instanceof t.MouseEvent;
|
|
106
106
|
}
|
|
107
107
|
return !1;
|
|
108
|
-
},
|
|
108
|
+
}, qe = (e) => {
|
|
109
109
|
if (e?.target && (e?.target)?.ownerDocument?.defaultView) {
|
|
110
110
|
let t = (e?.target)?.ownerDocument?.defaultView;
|
|
111
111
|
if (t.TouchEvent) return e instanceof t.TouchEvent;
|
|
@@ -115,7 +115,7 @@ var Ue = (e, t) => {
|
|
|
115
115
|
if (t.TouchEvent) return e instanceof t.TouchEvent;
|
|
116
116
|
}
|
|
117
117
|
return !1;
|
|
118
|
-
},
|
|
118
|
+
}, Je = () => document.createElement("div"), Ye = (e) => {
|
|
119
119
|
let t = [
|
|
120
120
|
"img",
|
|
121
121
|
"video",
|
|
@@ -125,8 +125,8 @@ var Ue = (e, t) => {
|
|
|
125
125
|
"script"
|
|
126
126
|
].join(",");
|
|
127
127
|
return Array.from(e?.querySelectorAll(t) || []);
|
|
128
|
-
},
|
|
129
|
-
if (
|
|
128
|
+
}, Xe = (e) => {
|
|
129
|
+
if (Ye(e).forEach((t) => {
|
|
130
130
|
let n = t.getAttribute("src") || t.getAttribute("href");
|
|
131
131
|
n?.startsWith("blob:") && e?.defaultView?.URL.revokeObjectURL(n);
|
|
132
132
|
}), e) {
|
|
@@ -148,20 +148,20 @@ var Ue = (e, t) => {
|
|
|
148
148
|
}
|
|
149
149
|
}
|
|
150
150
|
};
|
|
151
|
-
function
|
|
151
|
+
function Ze(e, t, n = []) {
|
|
152
152
|
if (typeof e != "object" || !e) return !1;
|
|
153
153
|
for (let n of t) if (!(n in e)) return !1;
|
|
154
154
|
for (let t of n) if (t in e && typeof e[t] != "function") return !1;
|
|
155
155
|
return !0;
|
|
156
156
|
}
|
|
157
|
-
function
|
|
158
|
-
return
|
|
157
|
+
function Qe(e) {
|
|
158
|
+
return Ze(e, ["nodeType"], []) && e.nodeType === Node.ELEMENT_NODE;
|
|
159
159
|
}
|
|
160
160
|
function V(e, t) {
|
|
161
|
-
return
|
|
161
|
+
return Qe(e) && e.tagName.toLowerCase() === t.toLowerCase();
|
|
162
162
|
}
|
|
163
|
-
function
|
|
164
|
-
return
|
|
163
|
+
function $e(e) {
|
|
164
|
+
return Ze(e, [
|
|
165
165
|
"startContainer",
|
|
166
166
|
"endContainer",
|
|
167
167
|
"startOffset",
|
|
@@ -174,28 +174,28 @@ function Qe(e) {
|
|
|
174
174
|
"selectNodeContents"
|
|
175
175
|
]);
|
|
176
176
|
}
|
|
177
|
-
var
|
|
177
|
+
var et = (e, t, n, r) => {
|
|
178
178
|
let i = e.createElement("style");
|
|
179
179
|
return i.id = t, i.textContent = n, r ? e.head.prepend(i) : e.head.appendChild(i), () => {
|
|
180
|
-
|
|
180
|
+
tt(e, t);
|
|
181
181
|
};
|
|
182
|
-
},
|
|
182
|
+
}, tt = (e, t) => {
|
|
183
183
|
if (e?.head) {
|
|
184
184
|
let n = e.getElementById(t);
|
|
185
185
|
n && n.remove();
|
|
186
186
|
}
|
|
187
|
-
},
|
|
187
|
+
}, nt = (e, t) => {
|
|
188
188
|
let n = RegExp(`${t}\\s*=\\s*([^,\\s]+)`, "i");
|
|
189
189
|
return e.match(n)?.[1]?.trim().toLowerCase();
|
|
190
|
-
},
|
|
191
|
-
let n =
|
|
190
|
+
}, rt = (e, t) => {
|
|
191
|
+
let n = nt(e, t);
|
|
192
192
|
if (!n) return 0;
|
|
193
193
|
let r = Number.parseFloat(n);
|
|
194
194
|
return Number.isFinite(r) ? r : 0;
|
|
195
|
-
},
|
|
196
|
-
e?.contentDocument?.head &&
|
|
197
|
-
},
|
|
198
|
-
e?.contentDocument &&
|
|
195
|
+
}, it = (e, t, n, r) => {
|
|
196
|
+
e?.contentDocument?.head && et(e.contentDocument, t, n, r);
|
|
197
|
+
}, at = (e, t) => {
|
|
198
|
+
e?.contentDocument && tt(e.contentDocument, t);
|
|
199
199
|
}, H = (e, t, n, r) => {
|
|
200
200
|
if (!e) return;
|
|
201
201
|
let i = e?.contentDocument?.getElementById(t);
|
|
@@ -203,14 +203,14 @@ var $e = (e, t, n, r) => {
|
|
|
203
203
|
i.textContent !== n && (i.textContent = n);
|
|
204
204
|
return;
|
|
205
205
|
}
|
|
206
|
-
|
|
207
|
-
},
|
|
206
|
+
it(e, t, n, r);
|
|
207
|
+
}, ot = (e) => {
|
|
208
208
|
if (e?.contentDocument) {
|
|
209
209
|
let t = e.contentDocument.querySelector("meta[name='viewport']");
|
|
210
210
|
if (t) {
|
|
211
211
|
let e = t.getAttribute("content");
|
|
212
212
|
if (e) {
|
|
213
|
-
let t =
|
|
213
|
+
let t = nt(e, "width"), n = nt(e, "height"), r = rt(e, "width"), i = rt(e, "height");
|
|
214
214
|
return r > 0 && i > 0 ? {
|
|
215
215
|
hasViewport: !0,
|
|
216
216
|
widthToken: t,
|
|
@@ -226,13 +226,13 @@ var $e = (e, t, n, r) => {
|
|
|
226
226
|
}
|
|
227
227
|
}
|
|
228
228
|
return { hasViewport: !1 };
|
|
229
|
-
},
|
|
229
|
+
}, st = (e) => e.pipe(A((e) => e.src === "about:blank" && e.contentDocument?.readyState === "complete" && e.contentDocument.body ? D(e) : w(e, "load").pipe(ge(1), T(() => e)))), ct = (e) => e.pipe(A((e) => {
|
|
230
230
|
let t = e?.contentDocument?.fonts.ready;
|
|
231
231
|
return t ? C(t).pipe(T(() => e)) : D(e);
|
|
232
|
-
})),
|
|
232
|
+
})), lt = (e) => (t) => {
|
|
233
233
|
let n = e(t), r = new ((n.context.document.defaultView?.IntersectionObserver) ?? IntersectionObserver)((e) => {
|
|
234
234
|
e.forEach((e) => {
|
|
235
|
-
e.isIntersecting ?
|
|
235
|
+
e.isIntersecting ? Le(e.target, "tab-index") : R(e.target, "tab-index", "-1");
|
|
236
236
|
});
|
|
237
237
|
}, {}), i = /* @__PURE__ */ new Map();
|
|
238
238
|
return n.hookManager.register("item.onDocumentLoad", async ({ itemId: e }) => {
|
|
@@ -253,7 +253,7 @@ var $e = (e, t, n, r) => {
|
|
|
253
253
|
}), n.hookManager.register("item.onDocumentUnload", ({ itemId: e }) => {
|
|
254
254
|
i.get(e)?.(), i.delete(e);
|
|
255
255
|
}), { ...n };
|
|
256
|
-
},
|
|
256
|
+
}, ut = (e) => (t) => {
|
|
257
257
|
let n = e(t);
|
|
258
258
|
return n.context.watch("rootElement").pipe(j(n.context.destroy$)).subscribe((e) => {
|
|
259
259
|
e && e.addEventListener("scroll", () => {
|
|
@@ -263,19 +263,19 @@ var $e = (e, t, n, r) => {
|
|
|
263
263
|
let t = n.spineItemsManager.get(e)?.renderer.getDocumentFrame();
|
|
264
264
|
t && t.contentDocument?.body && R(t.contentDocument.body, "tabindex", "-1");
|
|
265
265
|
}), n;
|
|
266
|
-
},
|
|
266
|
+
}, dt = ({ position: e, frameElement: t }) => {
|
|
267
267
|
let n = t.getBoundingClientRect(), r = n.width / t.offsetWidth, i = n.height / t.offsetHeight, { left: a = 0, top: o = 0 } = n;
|
|
268
268
|
return {
|
|
269
269
|
clientX: e.clientX * r + a,
|
|
270
270
|
clientY: e.clientY * i + o
|
|
271
271
|
};
|
|
272
|
-
},
|
|
272
|
+
}, ft = (e, t, n, r) => {
|
|
273
273
|
let i = t?.view?.frameElement;
|
|
274
274
|
if (!t || !i) return e;
|
|
275
275
|
let a = n.getSpineItemFromIframe(i), o = i, { height: s, width: c } = r.pageSize;
|
|
276
276
|
if (!a || !V(o, "iframe")) return e;
|
|
277
|
-
if (
|
|
278
|
-
let { clientX: n, clientY: r } =
|
|
277
|
+
if (Ge(e)) {
|
|
278
|
+
let { clientX: n, clientY: r } = dt({
|
|
279
279
|
position: e,
|
|
280
280
|
frameElement: o,
|
|
281
281
|
pageHeight: s,
|
|
@@ -291,8 +291,8 @@ var $e = (e, t, n, r) => {
|
|
|
291
291
|
enumerable: !0
|
|
292
292
|
}), i;
|
|
293
293
|
}
|
|
294
|
-
if (
|
|
295
|
-
let { clientX: n, clientY: r } =
|
|
294
|
+
if (Ke(e)) {
|
|
295
|
+
let { clientX: n, clientY: r } = dt({
|
|
296
296
|
position: e,
|
|
297
297
|
frameElement: o,
|
|
298
298
|
pageHeight: s,
|
|
@@ -307,9 +307,9 @@ var $e = (e, t, n, r) => {
|
|
|
307
307
|
enumerable: !0
|
|
308
308
|
}), i;
|
|
309
309
|
}
|
|
310
|
-
if (
|
|
310
|
+
if (qe(e)) {
|
|
311
311
|
let n = Array.from(e.touches).map((e) => {
|
|
312
|
-
let { clientX: t, clientY: n } =
|
|
312
|
+
let { clientX: t, clientY: n } = dt({
|
|
313
313
|
position: e,
|
|
314
314
|
frameElement: o,
|
|
315
315
|
pageHeight: s,
|
|
@@ -332,7 +332,7 @@ var $e = (e, t, n, r) => {
|
|
|
332
332
|
}), r;
|
|
333
333
|
}
|
|
334
334
|
return e;
|
|
335
|
-
},
|
|
335
|
+
}, pt = [
|
|
336
336
|
"pointercancel",
|
|
337
337
|
"pointerdown",
|
|
338
338
|
"pointerenter",
|
|
@@ -341,17 +341,17 @@ var $e = (e, t, n, r) => {
|
|
|
341
341
|
"pointerout",
|
|
342
342
|
"pointerover",
|
|
343
343
|
"pointerup"
|
|
344
|
-
],
|
|
344
|
+
], mt = (e) => (t) => {
|
|
345
345
|
let n = e(t), r = /* @__PURE__ */ new Map();
|
|
346
346
|
return n.hookManager.register("item.onDocumentLoad", async ({ itemId: e }) => {
|
|
347
347
|
r.get(e)?.(), r.delete(e);
|
|
348
348
|
let t = n.spineItemsManager.get(e), i = t?.renderer.getDocumentFrame();
|
|
349
349
|
if (!i || !t) return;
|
|
350
|
-
let a =
|
|
350
|
+
let a = pt.map((e) => {
|
|
351
351
|
let t = (e) => {
|
|
352
352
|
let t = e;
|
|
353
|
-
if (
|
|
354
|
-
let r =
|
|
353
|
+
if (Ge(e) && (t = new PointerEvent(e.type, e)), t !== e) {
|
|
354
|
+
let r = ft(t, e, n.spine.locator, n.viewport);
|
|
355
355
|
n.context.value.rootElement?.dispatchEvent(r);
|
|
356
356
|
}
|
|
357
357
|
};
|
|
@@ -367,18 +367,18 @@ var $e = (e, t, n, r) => {
|
|
|
367
367
|
}), n.hookManager.register("item.onDocumentUnload", ({ itemId: e }) => {
|
|
368
368
|
r.get(e)?.(), r.delete(e);
|
|
369
369
|
}), n;
|
|
370
|
-
},
|
|
370
|
+
}, ht = (e) => {
|
|
371
371
|
let t = new FileReader();
|
|
372
372
|
return new Promise((n) => {
|
|
373
373
|
t.addEventListener("load", () => {
|
|
374
374
|
n(t.result);
|
|
375
375
|
}, !1), t.readAsDataURL(e);
|
|
376
376
|
});
|
|
377
|
-
},
|
|
377
|
+
}, gt = (e, t) => Object.entries(e).reduce((e, [n, r]) => t.includes(n) ? {
|
|
378
378
|
...e,
|
|
379
379
|
[n]: r
|
|
380
|
-
} : e, {}),
|
|
381
|
-
function
|
|
380
|
+
} : e, {}), _t = (e) => we((t) => gt(t, e)), vt = (e) => (t) => t.pipe(_t(e), xe(o));
|
|
381
|
+
function yt(e) {
|
|
382
382
|
return new f((t) => {
|
|
383
383
|
let n = new ((e.ownerDocument.defaultView?.ResizeObserver) ?? ResizeObserver)((e) => {
|
|
384
384
|
t.next(e);
|
|
@@ -388,13 +388,13 @@ function vt(e) {
|
|
|
388
388
|
};
|
|
389
389
|
});
|
|
390
390
|
}
|
|
391
|
-
var
|
|
391
|
+
var bt = (e) => (t) => t.pipe(P((t) => e.pipe(Ce(), we(() => t)))), xt = (e) => {
|
|
392
392
|
let t, n = e.subscribe((e) => {
|
|
393
393
|
t = { result: e };
|
|
394
394
|
});
|
|
395
395
|
return () => (n.unsubscribe(), t ? D(t.result) : e);
|
|
396
396
|
};
|
|
397
|
-
function
|
|
397
|
+
function St() {
|
|
398
398
|
return new f((e) => {
|
|
399
399
|
if (window.requestIdleCallback) {
|
|
400
400
|
let t = window.requestIdleCallback(() => {
|
|
@@ -408,16 +408,16 @@ function xt() {
|
|
|
408
408
|
return () => clearTimeout(t);
|
|
409
409
|
});
|
|
410
410
|
}
|
|
411
|
-
function
|
|
412
|
-
return
|
|
411
|
+
function Ct(e) {
|
|
412
|
+
return ie(() => St().pipe(P(e)));
|
|
413
413
|
}
|
|
414
|
-
var
|
|
414
|
+
var wt = (e, t) => new f((n) => {
|
|
415
415
|
let r = new ((e.ownerDocument?.defaultView?.MutationObserver) ?? MutationObserver)((e) => {
|
|
416
416
|
n.next(e);
|
|
417
417
|
});
|
|
418
418
|
return r.observe(e, t), () => r.disconnect();
|
|
419
419
|
});
|
|
420
|
-
function
|
|
420
|
+
function Tt(e, t) {
|
|
421
421
|
return new f((n) => {
|
|
422
422
|
let r = new ((e.ownerDocument.defaultView?.IntersectionObserver) ?? IntersectionObserver)((e) => {
|
|
423
423
|
n.next(e);
|
|
@@ -429,14 +429,14 @@ function wt(e, t) {
|
|
|
429
429
|
}
|
|
430
430
|
//#endregion
|
|
431
431
|
//#region src/settings/SettingsManagerOverload.ts
|
|
432
|
-
var
|
|
432
|
+
var Et = class {
|
|
433
433
|
constructor(e, t) {
|
|
434
434
|
this.settingsManager = t;
|
|
435
435
|
let n = c(this.getDefaultSettings(), e);
|
|
436
|
-
this.outputSettings = this.computeOutputSettings(n), this.inputSettings = c(this.getDefaultSettings(), e), this.outputSettingsUpdateSubject = new m(), this.values$ = v([this.settingsManager.values$, this.outputSettingsUpdateSubject.pipe(
|
|
436
|
+
this.outputSettings = this.computeOutputSettings(n), this.inputSettings = c(this.getDefaultSettings(), e), this.outputSettingsUpdateSubject = new m(), this.values$ = v([this.settingsManager.values$, this.outputSettingsUpdateSubject.pipe(ke(this.outputSettings))]).pipe(we(([e, t]) => ({
|
|
437
437
|
...e,
|
|
438
438
|
...t
|
|
439
|
-
})),
|
|
439
|
+
})), De(1)), this.values$.subscribe();
|
|
440
440
|
}
|
|
441
441
|
_prepareUpdate(e) {
|
|
442
442
|
let t = this.getCleanedParentInputSettings(e), n = this.settingsManager._prepareUpdate(t), r = c(this.inputSettings, e), i = this.computeOutputSettings(r), a = this.hasSettingsChanged(i);
|
|
@@ -459,12 +459,12 @@ var Tt = class {
|
|
|
459
459
|
};
|
|
460
460
|
}
|
|
461
461
|
watch(e) {
|
|
462
|
-
return Array.isArray(e) ? this.values$.pipe(
|
|
462
|
+
return Array.isArray(e) ? this.values$.pipe(vt(e)) : this.values$.pipe(we((t) => t[e]), xe(o));
|
|
463
463
|
}
|
|
464
464
|
destroy() {
|
|
465
465
|
this.outputSettingsUpdateSubject.complete();
|
|
466
466
|
}
|
|
467
|
-
},
|
|
467
|
+
}, Dt = class extends Et {
|
|
468
468
|
computeOutputSettings(e) {
|
|
469
469
|
return e;
|
|
470
470
|
}
|
|
@@ -483,8 +483,8 @@ var Tt = class {
|
|
|
483
483
|
fontJustification: "publisher"
|
|
484
484
|
};
|
|
485
485
|
}
|
|
486
|
-
},
|
|
487
|
-
let { fontScale: n, lineHeight: r, fontWeight: i, fontJustification: a } = t, o = new m(), s = e(t), c = new
|
|
486
|
+
}, Ot = (e) => (t) => {
|
|
487
|
+
let { fontScale: n, lineHeight: r, fontWeight: i, fontJustification: a } = t, o = new m(), s = e(t), c = new Dt({
|
|
488
488
|
fontScale: n,
|
|
489
489
|
lineHeight: r,
|
|
490
490
|
fontWeight: i,
|
|
@@ -504,7 +504,7 @@ var Tt = class {
|
|
|
504
504
|
let e = t?.renderer.getDocumentFrame();
|
|
505
505
|
e && H(e, "prose-reader-fonts", l());
|
|
506
506
|
}
|
|
507
|
-
}), c.values$.pipe((e) => e.pipe(
|
|
507
|
+
}), c.values$.pipe((e) => e.pipe(Te(), T(([e, t]) => t.fontScale !== e.fontScale || t.lineHeight !== e.lineHeight)), I((e) => {
|
|
508
508
|
s.spineItemsManager.items.forEach((e) => {
|
|
509
509
|
if (e.renditionLayout !== "pre-paginated") {
|
|
510
510
|
let t = e.renderer.getDocumentFrame();
|
|
@@ -518,7 +518,7 @@ var Tt = class {
|
|
|
518
518
|
},
|
|
519
519
|
settings: c
|
|
520
520
|
};
|
|
521
|
-
},
|
|
521
|
+
}, kt = (e) => (t) => {
|
|
522
522
|
let n = e(t), r = (e) => w(e, "keyup").pipe(T((e) => {
|
|
523
523
|
let { pageTurnDirection: t, computedPageTurnMode: r } = n.settings.values;
|
|
524
524
|
if (r === "scrollable") return e;
|
|
@@ -536,7 +536,7 @@ var Tt = class {
|
|
|
536
536
|
let t = e.renderer.getDocumentFrame();
|
|
537
537
|
return V(t, "iframe") && t.contentDocument ? r(t.contentDocument) : u;
|
|
538
538
|
})))).pipe(j(n.$.destroy$)).subscribe(), n;
|
|
539
|
-
},
|
|
539
|
+
}, At = (e) => E(...e.spine.spineItemsManager.items.map((e) => e.watch("isLoaded").pipe(A(() => {
|
|
540
540
|
let t = e.renderer.getDocumentFrame();
|
|
541
541
|
if (!t?.contentDocument) return d;
|
|
542
542
|
let n = Array.from(t.contentDocument.querySelectorAll("a")).map((e) => w(e, "click"));
|
|
@@ -558,7 +558,7 @@ var Tt = class {
|
|
|
558
558
|
o(this.value, t) || this.stateSubject.next(t);
|
|
559
559
|
}
|
|
560
560
|
watch(e) {
|
|
561
|
-
return Array.isArray(e) ? this.stateSubject.pipe(
|
|
561
|
+
return Array.isArray(e) ? this.stateSubject.pipe(vt(e)) : this.stateSubject.pipe(T((t) => t[e]), b(o));
|
|
562
562
|
}
|
|
563
563
|
get value() {
|
|
564
564
|
return this.stateSubject.value;
|
|
@@ -566,7 +566,7 @@ var Tt = class {
|
|
|
566
566
|
destroy() {
|
|
567
567
|
this.isDestroyed || (this.isDestroyed = !0, this.stateSubject.complete(), this._destroy$.next(), this._destroy$.complete());
|
|
568
568
|
}
|
|
569
|
-
},
|
|
569
|
+
}, jt = class e extends U {
|
|
570
570
|
static {
|
|
571
571
|
this.DOCUMENT_CONTAINER_CLASS_NAME = "prose-reader-document-container";
|
|
572
572
|
}
|
|
@@ -577,13 +577,13 @@ var Tt = class {
|
|
|
577
577
|
documentContainer: void 0
|
|
578
578
|
}), this.triggerSubject = new m(), this.context = e.context, this.settings = e.settings, this.hookManager = e.hookManager, this.item = e.item, this.containerElement = e.containerElement, this.resourcesHandler = e.resourcesHandler, this.viewport = e.viewport;
|
|
579
579
|
let t = this.triggerSubject.pipe(x((e) => e.type === "unload")), n = this.triggerSubject.pipe(x((e) => e.type === "load"));
|
|
580
|
-
this.loaded$ = n.pipe(
|
|
580
|
+
this.loaded$ = n.pipe(de(() => this.value.state === "loaded" || this.value.state === "loading" ? u : (this.mergeCompare({
|
|
581
581
|
state: "loading",
|
|
582
582
|
error: void 0
|
|
583
|
-
}), this.onCreateDocument().pipe(S()).pipe(
|
|
583
|
+
}), this.onCreateDocument().pipe(S()).pipe(de((e) => (this.hookManager.execute("item.onDocumentCreated", {
|
|
584
584
|
itemId: this.item.id,
|
|
585
585
|
documentContainer: e
|
|
586
|
-
}), this.onLoadDocument().pipe(
|
|
586
|
+
}), this.onLoadDocument().pipe(oe(null), S()).pipe(bt(this.context.bridgeEvent.viewportFree$), A(() => this.hookManager.fromExecuteAsync("item.onDocumentLoad", this.item.id, {
|
|
587
587
|
itemId: this.item.id,
|
|
588
588
|
documentContainer: e
|
|
589
589
|
}))))), T(() => {
|
|
@@ -591,7 +591,7 @@ var Tt = class {
|
|
|
591
591
|
state: "loaded",
|
|
592
592
|
error: void 0
|
|
593
593
|
});
|
|
594
|
-
}), j(t)))), O()), this.unloaded$ = t.pipe(
|
|
594
|
+
}), j(t)))), O()), this.unloaded$ = t.pipe(de(() => this.value.state === "unloading" || this.value.state === "idle" ? u : (this.mergeCompare({
|
|
595
595
|
state: "unloading",
|
|
596
596
|
error: void 0
|
|
597
597
|
}), this.context.bridgeEvent.viewportFree$.pipe(S(), T(() => {
|
|
@@ -638,14 +638,14 @@ var Tt = class {
|
|
|
638
638
|
}
|
|
639
639
|
renderHeadless() {
|
|
640
640
|
let e = new m();
|
|
641
|
-
return
|
|
641
|
+
return ie(() => this.onRenderHeadless({ release: e })).pipe(oe(void 0), S(), T((t) => {
|
|
642
642
|
if (t) return {
|
|
643
643
|
doc: t,
|
|
644
644
|
release: () => {
|
|
645
645
|
e.next(void 0);
|
|
646
646
|
}
|
|
647
647
|
};
|
|
648
|
-
}),
|
|
648
|
+
}), ce(() => {
|
|
649
649
|
e.complete();
|
|
650
650
|
}), _((e) => (L.error(e), D(void 0))));
|
|
651
651
|
}
|
|
@@ -682,26 +682,26 @@ var Tt = class {
|
|
|
682
682
|
if (e) return e;
|
|
683
683
|
let t = this.getDocumentFrame();
|
|
684
684
|
if (t) {
|
|
685
|
-
let { hasViewport: e } =
|
|
685
|
+
let { hasViewport: e } = ot(t);
|
|
686
686
|
if (e) return "pre-paginated";
|
|
687
687
|
}
|
|
688
688
|
return this.context.manifest.renditionLayout ?? "reflowable";
|
|
689
689
|
}
|
|
690
|
-
},
|
|
690
|
+
}, Mt = (e) => new URL(e.href), Nt = class {
|
|
691
691
|
constructor(e, t) {
|
|
692
692
|
this.item = e, this.settings = t;
|
|
693
693
|
}
|
|
694
694
|
async getResource() {
|
|
695
|
-
return await
|
|
695
|
+
return await ue(this.settings.values.getResource?.(this.item) ?? D(void 0)) ?? Mt(this.item);
|
|
696
696
|
}
|
|
697
697
|
async fetchResource() {
|
|
698
698
|
let e = await this.getResource();
|
|
699
699
|
return e instanceof Response ? e : e instanceof URL ? fetch(e) : e;
|
|
700
700
|
}
|
|
701
|
-
},
|
|
701
|
+
}, Pt = (e, t) => {
|
|
702
702
|
let n = e.startsWith("file://"), r = n ? e.replace("file://", "http://") : e, i = new URL(t, r).toString();
|
|
703
703
|
return n ? i.replace("http://", "file://") : i;
|
|
704
|
-
},
|
|
704
|
+
}, Ft = async (e, t, n, r, i) => {
|
|
705
705
|
if (!e?.defaultView) return;
|
|
706
706
|
let a = t.sheet;
|
|
707
707
|
if (a) try {
|
|
@@ -715,9 +715,9 @@ var Tt = class {
|
|
|
715
715
|
if (t.startsWith("local(")) return t;
|
|
716
716
|
let a = t.match(/url\(['"]?([^'"]+)['"]?\)/);
|
|
717
717
|
if (!a) return t;
|
|
718
|
-
let o = a[1] ?? "", s = r.manifest.items.find(({ href: e }) => `${
|
|
718
|
+
let o = a[1] ?? "", s = r.manifest.items.find(({ href: e }) => `${Pt(n, o).toLowerCase()}`.endsWith(`${e.toLowerCase()}`));
|
|
719
719
|
if (s) {
|
|
720
|
-
let n = new
|
|
720
|
+
let n = new Nt(s, i);
|
|
721
721
|
try {
|
|
722
722
|
let r = await n.getResource();
|
|
723
723
|
if (r instanceof Response) {
|
|
@@ -737,20 +737,20 @@ var Tt = class {
|
|
|
737
737
|
} catch (e) {
|
|
738
738
|
console.error("Could not access stylesheet rules:", e);
|
|
739
739
|
}
|
|
740
|
-
},
|
|
740
|
+
}, It = (e, t, n, r, i) => {
|
|
741
741
|
let a = t.getAttribute("src") || t.getAttribute("href");
|
|
742
742
|
if (!a) return D(null);
|
|
743
|
-
let o = r.manifest.items.find(({ href: e }) => `${
|
|
743
|
+
let o = r.manifest.items.find(({ href: e }) => `${Pt(n, a).toLowerCase()}`.endsWith(`${e.toLowerCase()}`));
|
|
744
744
|
if (!o) return D(null);
|
|
745
|
-
let s = new
|
|
746
|
-
return C(s.getResource()).pipe(
|
|
745
|
+
let s = new Nt(o, i);
|
|
746
|
+
return C(s.getResource()).pipe(de((e) => e instanceof Response ? C(e.blob()) : D(void 0)), de((a) => {
|
|
747
747
|
if (!a) return D(null);
|
|
748
748
|
let o = e?.defaultView?.URL.createObjectURL(a) ?? "";
|
|
749
749
|
if (t.hasAttribute("src")) t.setAttribute("src", o);
|
|
750
750
|
else if (t.hasAttribute("href") && (t.setAttribute("href", o), e?.defaultView && t instanceof e.defaultView.HTMLLinkElement)) return new f((a) => {
|
|
751
751
|
t.onload = async () => {
|
|
752
752
|
try {
|
|
753
|
-
t.sheet && await
|
|
753
|
+
t.sheet && await Ft(e, t, n, r, i), a.next(), a.complete();
|
|
754
754
|
} catch (e) {
|
|
755
755
|
a.error(e);
|
|
756
756
|
}
|
|
@@ -758,21 +758,21 @@ var Tt = class {
|
|
|
758
758
|
});
|
|
759
759
|
return D(null);
|
|
760
760
|
}));
|
|
761
|
-
},
|
|
762
|
-
let a =
|
|
761
|
+
}, Lt = ({ settings: e, item: t, context: n }) => (r) => r.pipe(A((r) => {
|
|
762
|
+
let a = Ye(r.contentDocument), o = i(t.href), s = a.map((t) => It(r.contentDocument, t, o, n, e));
|
|
763
763
|
return s.length === 0 ? D(r) : v(s).pipe(T(() => r));
|
|
764
|
-
})),
|
|
765
|
-
|
|
766
|
-
},
|
|
764
|
+
})), Rt = (e) => {
|
|
765
|
+
Xe(e?.contentDocument);
|
|
766
|
+
}, zt = [
|
|
767
767
|
"image/jpg",
|
|
768
768
|
"image/jpeg",
|
|
769
769
|
"image/png",
|
|
770
770
|
"image/webp",
|
|
771
771
|
"image/avif"
|
|
772
|
-
],
|
|
772
|
+
], Bt = async (e, t) => {
|
|
773
773
|
if (typeof e == "string") return new Blob([e], { type: "text/html" });
|
|
774
774
|
let r = s(e.headers.get("Content-Type") || "") || n(t.href);
|
|
775
|
-
if (
|
|
775
|
+
if (zt.some((e) => e === r)) {
|
|
776
776
|
let n = await e.blob(), r = URL.createObjectURL(n), i = await createImageBitmap(n), { width: a, height: o } = {
|
|
777
777
|
width: i.width,
|
|
778
778
|
height: i.height
|
|
@@ -812,36 +812,36 @@ var Tt = class {
|
|
|
812
812
|
`], { type: "text/html" });
|
|
813
813
|
}
|
|
814
814
|
return await e.blob();
|
|
815
|
-
},
|
|
815
|
+
}, Vt = [
|
|
816
816
|
".txt",
|
|
817
817
|
".jpg",
|
|
818
818
|
".jpeg",
|
|
819
819
|
".png",
|
|
820
820
|
".webp",
|
|
821
821
|
".avif"
|
|
822
|
-
],
|
|
822
|
+
], Ht = ["text/plain", ...zt], Ut = (e) => {
|
|
823
823
|
let t = e?.getAttribute("src");
|
|
824
824
|
t?.startsWith("blob:") && URL.revokeObjectURL(t);
|
|
825
|
-
},
|
|
825
|
+
}, Wt = ({ item: e, resourcesHandler: t }) => {
|
|
826
826
|
let n = (e, t) => {
|
|
827
|
-
|
|
827
|
+
Ut(e);
|
|
828
828
|
let n = URL.createObjectURL(t);
|
|
829
829
|
e.setAttribute("src", n);
|
|
830
830
|
};
|
|
831
831
|
return (r) => r.pipe(A((r) => C(t.getResource()).pipe(A((i) => {
|
|
832
|
-
let a =
|
|
833
|
-
return i instanceof URL && e.href.startsWith(window.location.origin) && !a ? (
|
|
832
|
+
let a = Vt.some((t) => e.href.endsWith(t)) || e.mediaType && Ht.includes(e.mediaType);
|
|
833
|
+
return i instanceof URL && e.href.startsWith(window.location.origin) && !a ? (Ut(r), r?.setAttribute("src", i.href), D(r)) : (i instanceof URL ? C(t.fetchResource()) : D(i)).pipe(A((t) => {
|
|
834
834
|
if (!(t instanceof Response)) throw Error("Invalid resource");
|
|
835
|
-
return
|
|
835
|
+
return Bt(t, e);
|
|
836
836
|
}), M((e) => {
|
|
837
837
|
n(r, e);
|
|
838
838
|
}), T(() => r), _((t) => (L.error(`Error while trying to fetch or load resource for item ${e.id}`, i), L.error(t), D(r))));
|
|
839
839
|
}))));
|
|
840
|
-
},
|
|
840
|
+
}, Gt = (e) => {
|
|
841
841
|
let t = e.createElement("iframe");
|
|
842
842
|
return t.frameBorder = "no", t.tabIndex = 0, t.setAttribute("sandbox", "\n allow-same-origin \n allow-scripts \n allow-top-navigation-to-custom-protocols\n"), t.style.cssText = "\n overflow: hidden;\n background-color: transparent;\n border: 0px none transparent;\n padding: 0px;\n", t.setAttribute("role", "main"), t;
|
|
843
|
-
},
|
|
844
|
-
let r =
|
|
843
|
+
}, Kt = "body{margin:0}html,body{width:100%;height:100%}html[data-prose-reader-html-renderer-has-viewport-dimensions=false] body{display:flex}html[data-prose-reader-html-renderer-has-viewport-dimensions=false][data-prose-reader-html-renderer-spread-position=left] body{justify-content:flex-end}html[data-prose-reader-html-renderer-has-viewport-dimensions=false][data-prose-reader-html-renderer-spread-position=right] body{justify-content:flex-start}html[data-prose-reader-html-renderer-has-viewport-dimensions=false][data-prose-reader-html-renderer-spread-position=none] body{justify-content:center}:not(html.prose-reader-html-renderer-touch-enabled),:not(html.prose-reader-html-renderer-touch-enabled) body{touch-action:none}img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;display:flex}html[data-prose-reader-html-renderer-has-viewport-dimensions=false] img{object-fit:contain;max-width:100%;height:100%}", qt = ({ pageHeight: e, pageWidth: t, frameElement: n }) => {
|
|
844
|
+
let r = ot(n), i = r.width, a = r.height;
|
|
845
845
|
!i && r.widthToken === "device-width" && (i = t), !a && r.heightToken === "device-height" && (a = e), !a && (i || r.widthToken === "device-width") && (a = e), !i && (a || r.heightToken === "device-height") && (i = t);
|
|
846
846
|
let o = r.hasViewport && i && a ? {
|
|
847
847
|
...r,
|
|
@@ -856,17 +856,17 @@ var Tt = class {
|
|
|
856
856
|
viewportDimensions: o
|
|
857
857
|
};
|
|
858
858
|
}
|
|
859
|
-
},
|
|
859
|
+
}, Jt = /* @__PURE__ */ new WeakMap(), W = (e, t, n) => {
|
|
860
860
|
e.style.getPropertyValue(t) !== n && e.style.setProperty(t, n);
|
|
861
861
|
}, G = (e, t) => {
|
|
862
862
|
e.style.getPropertyValue(t) !== "" && e.style.removeProperty(t);
|
|
863
|
-
},
|
|
863
|
+
}, Yt = (e, t) => {
|
|
864
864
|
let n = `${t.width}px`, r = `${t.height}px`;
|
|
865
865
|
e.style.width !== n && (e.style.width = n), e.style.height !== r && (e.style.height = r);
|
|
866
|
-
},
|
|
866
|
+
}, Xt = (e, t, n) => {
|
|
867
867
|
let r = e.contentDocument?.documentElement;
|
|
868
868
|
r && r.getAttribute(t) !== n && r.setAttribute(t, n);
|
|
869
|
-
},
|
|
869
|
+
}, Zt = ({ hasViewportDimensions: e, viewportWidth: t, viewportHeight: n, computedScale: r, spreadPosition: i, blankPagePosition: a, isRTL: o, pageWidth: s, pageHeight: c }) => [
|
|
870
870
|
e ? "1" : "0",
|
|
871
871
|
t ?? "",
|
|
872
872
|
n ?? "",
|
|
@@ -876,7 +876,7 @@ var Tt = class {
|
|
|
876
876
|
o ? "1" : "0",
|
|
877
877
|
s,
|
|
878
878
|
c
|
|
879
|
-
].join("|"),
|
|
879
|
+
].join("|"), Qt = ({ frameElement: e, viewportDimensions: t, computedScale: n, spreadPosition: r, blankPagePosition: i, isRTL: a, pageWidth: o }) => {
|
|
880
880
|
if (t) {
|
|
881
881
|
W(e, "position", "absolute"), W(e, "top", "50%"), i === "before" ? r === "left" ? (W(e, "left", a ? "0" : "50%"), G(e, "right")) : r === "right" ? (W(e, "right", a ? "50%" : "0"), G(e, "left")) : (W(e, "left", a ? "25%" : "75%"), G(e, "right")) : r === "left" ? (W(e, "right", "0"), G(e, "left")) : r === "right" ? (W(e, "left", "0"), G(e, "right")) : (W(e, "left", i === "after" ? a ? "75%" : "25%" : "50%"), G(e, "right"));
|
|
882
882
|
let t = r === "none" ? "-50%" : "0", o = i === "before" ? r === "left" ? "left" : r === "right" ? "right" : "center" : r === "right" ? "left" : r === "left" ? "right" : "center";
|
|
@@ -884,14 +884,14 @@ var Tt = class {
|
|
|
884
884
|
return;
|
|
885
885
|
}
|
|
886
886
|
i === "before" ? a ? W(e, "margin-right", `${o}px`) : W(e, "margin-left", `${o}px`) : (G(e, "margin-left"), G(e, "margin-right"));
|
|
887
|
-
},
|
|
887
|
+
}, $t = ({ minPageSpread: e, blankPagePosition: t, spreadPosition: n, pageHeight: r, pageWidth: i, frameElement: a, isRTL: o }) => {
|
|
888
888
|
let s = e * i;
|
|
889
889
|
if (a?.contentDocument && a?.contentWindow) {
|
|
890
|
-
let { viewportDimensions: e, computedScale: c = 1 } =
|
|
890
|
+
let { viewportDimensions: e, computedScale: c = 1 } = qt({
|
|
891
891
|
frameElement: a,
|
|
892
892
|
pageHeight: r,
|
|
893
893
|
pageWidth: i
|
|
894
|
-
}) ?? {}, l = !!e, u = i, d = r, f =
|
|
894
|
+
}) ?? {}, l = !!e, u = i, d = r, f = Zt({
|
|
895
895
|
hasViewportDimensions: l,
|
|
896
896
|
viewportWidth: e?.width,
|
|
897
897
|
viewportHeight: e?.height,
|
|
@@ -902,16 +902,16 @@ var Tt = class {
|
|
|
902
902
|
pageWidth: i,
|
|
903
903
|
pageHeight: r
|
|
904
904
|
});
|
|
905
|
-
return
|
|
905
|
+
return Jt.get(a) === f ? {
|
|
906
906
|
width: s,
|
|
907
907
|
height: d
|
|
908
|
-
} : (
|
|
908
|
+
} : (Jt.set(a, f), Xt(a, "data-prose-reader-html-renderer-has-viewport-dimensions", l.toString()), e ? Yt(a, {
|
|
909
909
|
width: e.width ?? 1,
|
|
910
910
|
height: e.height ?? 1
|
|
911
|
-
}) :
|
|
911
|
+
}) : Yt(a, {
|
|
912
912
|
width: u,
|
|
913
913
|
height: d
|
|
914
|
-
}),
|
|
914
|
+
}), Qt({
|
|
915
915
|
frameElement: a,
|
|
916
916
|
viewportDimensions: e,
|
|
917
917
|
computedScale: c,
|
|
@@ -928,7 +928,7 @@ var Tt = class {
|
|
|
928
928
|
width: s,
|
|
929
929
|
height: r
|
|
930
930
|
};
|
|
931
|
-
},
|
|
931
|
+
}, en = () => "\n body {\n margin: 0;\n }\n html {\n width: 100%;\n height: 100%;\n }\n body {\n width: 100%;\n height: 100%;\n margin: 0;\n }\n \n html, body {\n touch-action: none;\n }\n ", tn = ({ isScrollable: e, enableTouch: t }) => `
|
|
932
932
|
|
|
933
933
|
html, body {
|
|
934
934
|
width: 100%;
|
|
@@ -937,7 +937,7 @@ var Tt = class {
|
|
|
937
937
|
${t ? "" : "\n touch-action: none\n "}
|
|
938
938
|
}
|
|
939
939
|
${e ? "\n img {\n height: auto !important;\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n \n width: 100%;\n \n display: block;\n }\n " : ""}
|
|
940
|
-
`,
|
|
940
|
+
`, nn = ({ width: e, columnHeight: t, columnWidth: n }) => `
|
|
941
941
|
parsererror {
|
|
942
942
|
display: none !important;
|
|
943
943
|
}
|
|
@@ -1001,48 +1001,48 @@ var Tt = class {
|
|
|
1001
1001
|
td {
|
|
1002
1002
|
max-width: ${n}px;
|
|
1003
1003
|
}
|
|
1004
|
-
`,
|
|
1004
|
+
`, rn = ({ isUsingVerticalWriting: e, minimumWidth: t, pageHeight: n, pageWidth: r }) => {
|
|
1005
1005
|
let i = r - 0, a = n - 0, o = r - 0;
|
|
1006
1006
|
return e && (o = t - 0, i = a), {
|
|
1007
1007
|
columnHeight: a,
|
|
1008
1008
|
columnWidth: i,
|
|
1009
1009
|
width: o
|
|
1010
1010
|
};
|
|
1011
|
-
},
|
|
1011
|
+
}, an = (e, t) => {
|
|
1012
1012
|
z(e.style, "width", `${t.width}px`), z(e.style, "height", `${t.height}px`);
|
|
1013
|
-
},
|
|
1013
|
+
}, on = ({ pageHeight: e, pageWidth: t, frameElement: n, manifest: r, renditionFlow: i, minPageSpread: a, isRTL: o, blankPagePosition: s, isImageType: c, enableTouch: l, isUsingVerticalWriting: u }) => {
|
|
1014
1014
|
let d = a * t, f = r.renditionLayout === "reflowable" && i === "scrolled-continuous", p = f ? Math.min(400, e) : e;
|
|
1015
1015
|
z(n.style, "width", `${t}px`), f ? B(n.style, "height") : z(n.style, "height", `${p}px`);
|
|
1016
|
-
let { viewportDimensions: m, computedScale: h = 1 } =
|
|
1016
|
+
let { viewportDimensions: m, computedScale: h = 1 } = qt({
|
|
1017
1017
|
frameElement: n,
|
|
1018
1018
|
pageHeight: p,
|
|
1019
1019
|
pageWidth: t
|
|
1020
1020
|
}) ?? {}, g = r.renditionLayout === "pre-paginated";
|
|
1021
1021
|
if (n?.contentDocument && n?.contentWindow && n.contentDocument.body) {
|
|
1022
1022
|
let e = t, r = p;
|
|
1023
|
-
if (m?.hasViewport) H(n, "prose-reader-html-renderer-framce-css",
|
|
1023
|
+
if (m?.hasViewport) H(n, "prose-reader-html-renderer-framce-css", en()), an(n, {
|
|
1024
1024
|
width: m.width ?? 1,
|
|
1025
1025
|
height: m.height ?? 1
|
|
1026
1026
|
}), z(n.style, "position", "absolute"), z(n.style, "top", "50%"), z(n.style, "left", s === "before" ? o ? "25%" : "75%" : s === "after" ? o ? "75%" : "25%" : "50%"), z(n.style, "transform", `translate(-50%, -50%) scale(${h})`), z(n.style, "transform-origin", "center center");
|
|
1027
|
-
else if (H(n, "prose-reader-css", c ?
|
|
1027
|
+
else if (H(n, "prose-reader-css", c ? tn({
|
|
1028
1028
|
isScrollable: i === "scrolled-continuous",
|
|
1029
1029
|
enableTouch: l
|
|
1030
|
-
}) :
|
|
1030
|
+
}) : nn(rn({
|
|
1031
1031
|
isUsingVerticalWriting: u,
|
|
1032
1032
|
minimumWidth: d,
|
|
1033
1033
|
pageHeight: p,
|
|
1034
1034
|
pageWidth: t
|
|
1035
|
-
})), !0), u) r = Math.ceil(n.contentDocument.documentElement.scrollHeight / p) * p,
|
|
1035
|
+
})), !0), u) r = Math.ceil(n.contentDocument.documentElement.scrollHeight / p) * p, an(n, {
|
|
1036
1036
|
width: d,
|
|
1037
1037
|
height: r
|
|
1038
1038
|
});
|
|
1039
|
-
else if (i === "scrolled-continuous") r = n.contentDocument.body.scrollHeight,
|
|
1039
|
+
else if (i === "scrolled-continuous") r = n.contentDocument.body.scrollHeight, an(n, {
|
|
1040
1040
|
width: d,
|
|
1041
1041
|
height: r
|
|
1042
1042
|
});
|
|
1043
1043
|
else {
|
|
1044
1044
|
let i = Math.ceil(n.contentDocument.documentElement.scrollWidth / t);
|
|
1045
|
-
e = g ? t : i * t,
|
|
1045
|
+
e = g ? t : i * t, an(n, {
|
|
1046
1046
|
width: e,
|
|
1047
1047
|
height: r
|
|
1048
1048
|
});
|
|
@@ -1052,43 +1052,43 @@ var Tt = class {
|
|
|
1052
1052
|
height: r
|
|
1053
1053
|
};
|
|
1054
1054
|
}
|
|
1055
|
-
},
|
|
1055
|
+
}, sn = class extends jt {
|
|
1056
1056
|
constructor(...e) {
|
|
1057
1057
|
super(...e), this.isPrePaginated = () => this.item.renditionLayout === "pre-paginated" || !this.item.renditionLayout && this.context.manifest.renditionLayout === "pre-paginated", this.isImageType = () => !!(this.item.mediaType ?? n(this.item.href))?.startsWith("image/");
|
|
1058
1058
|
}
|
|
1059
1059
|
onCreateDocument() {
|
|
1060
|
-
let e =
|
|
1060
|
+
let e = Gt(this.context.document);
|
|
1061
1061
|
return this.setDocumentContainer(e), D(e);
|
|
1062
1062
|
}
|
|
1063
1063
|
onLoadDocument() {
|
|
1064
1064
|
let e = this.getFrameElement();
|
|
1065
1065
|
if (!e) throw Error("invalid frame");
|
|
1066
|
-
return D(e).pipe(
|
|
1066
|
+
return D(e).pipe(Wt({
|
|
1067
1067
|
item: this.item,
|
|
1068
1068
|
resourcesHandler: this.resourcesHandler,
|
|
1069
1069
|
settings: this.settings
|
|
1070
|
-
}),
|
|
1070
|
+
}), bt(this.context.bridgeEvent.viewportFree$), M((e) => {
|
|
1071
1071
|
this.prepareFrameForAttach(e), this.attach();
|
|
1072
|
-
}),
|
|
1073
|
-
this.isPrePaginated() ? H(e, "prose-reader-css",
|
|
1074
|
-
}),
|
|
1072
|
+
}), st, M((e) => {
|
|
1073
|
+
this.isPrePaginated() ? H(e, "prose-reader-css", Kt) : this.isImageType();
|
|
1074
|
+
}), Lt({
|
|
1075
1075
|
context: this.context,
|
|
1076
1076
|
item: this.item,
|
|
1077
1077
|
settings: this.settings
|
|
1078
|
-
}),
|
|
1078
|
+
}), ct, M((e) => {
|
|
1079
1079
|
this.revealFrameAfterReady(e);
|
|
1080
1080
|
}));
|
|
1081
1081
|
}
|
|
1082
1082
|
onUnload() {
|
|
1083
1083
|
let e = this.getFrameElement();
|
|
1084
|
-
|
|
1084
|
+
Rt(e), Ut(e), this.detach();
|
|
1085
1085
|
}
|
|
1086
1086
|
onLayout({ minPageSpread: e, blankPagePosition: t, spreadPosition: n }) {
|
|
1087
1087
|
let { width: r, height: i } = this.viewport.pageSize, a = this.getFrameElement();
|
|
1088
1088
|
if (!a) return D(void 0);
|
|
1089
1089
|
let o = this.settings.values.computedPageTurnMode === "scrollable";
|
|
1090
1090
|
if (a.contentDocument?.documentElement && (R(a.contentDocument.documentElement, "data-prose-reader-html-renderer-spread-position", n), o ? a.contentDocument?.documentElement.classList.add("prose-reader-html-renderer-touch-enabled") : a.contentDocument?.documentElement.classList.remove("prose-reader-html-renderer-touch-enabled")), this.isPrePaginated()) {
|
|
1091
|
-
let o =
|
|
1091
|
+
let o = $t({
|
|
1092
1092
|
blankPagePosition: t,
|
|
1093
1093
|
frameElement: a,
|
|
1094
1094
|
isRTL: this.context.isRTL(),
|
|
@@ -1099,7 +1099,7 @@ var Tt = class {
|
|
|
1099
1099
|
});
|
|
1100
1100
|
return D(o);
|
|
1101
1101
|
}
|
|
1102
|
-
let s = !!this.writingMode?.startsWith("vertical"), c = this.isImageType(), l =
|
|
1102
|
+
let s = !!this.writingMode?.startsWith("vertical"), c = this.isImageType(), l = on({
|
|
1103
1103
|
pageHeight: i,
|
|
1104
1104
|
pageWidth: r,
|
|
1105
1105
|
frameElement: a,
|
|
@@ -1158,13 +1158,13 @@ var Tt = class {
|
|
|
1158
1158
|
getDocumentFrame() {
|
|
1159
1159
|
return this.getFrameElement();
|
|
1160
1160
|
}
|
|
1161
|
-
},
|
|
1161
|
+
}, cn = (e) => (t) => {
|
|
1162
1162
|
let n = e({
|
|
1163
1163
|
...t,
|
|
1164
1164
|
getRenderer(e) {
|
|
1165
|
-
return t.getRenderer?.(e) ?? ((e) => new
|
|
1165
|
+
return t.getRenderer?.(e) ?? ((e) => new sn(e));
|
|
1166
1166
|
}
|
|
1167
|
-
}), r =
|
|
1167
|
+
}), r = At(n);
|
|
1168
1168
|
return r.pipe(j(n.$.destroy$)).subscribe(), {
|
|
1169
1169
|
...n,
|
|
1170
1170
|
links$: r
|
|
@@ -1177,7 +1177,7 @@ function K(e) {
|
|
|
1177
1177
|
}
|
|
1178
1178
|
//#endregion
|
|
1179
1179
|
//#region src/spineItem/types.ts
|
|
1180
|
-
var
|
|
1180
|
+
var ln = class {
|
|
1181
1181
|
constructor(e) {
|
|
1182
1182
|
this.left = e.left, this.right = e.right, this.top = e.top, this.bottom = e.bottom, this.width = e.width, this.height = e.height, this.x = e.x, this.y = e.y;
|
|
1183
1183
|
}
|
|
@@ -1185,73 +1185,73 @@ var cn = class {
|
|
|
1185
1185
|
constructor(e) {
|
|
1186
1186
|
this.__symbol = Symbol("SpineItemPosition"), this.x = e.x, this.y = e.y;
|
|
1187
1187
|
}
|
|
1188
|
-
},
|
|
1188
|
+
}, un = class {
|
|
1189
1189
|
constructor(e) {
|
|
1190
1190
|
this.__symbol = Symbol("SpineItemPagePosition"), this.x = e.x, this.y = e.y;
|
|
1191
1191
|
}
|
|
1192
|
-
},
|
|
1192
|
+
}, dn = class extends ln {
|
|
1193
1193
|
constructor(...e) {
|
|
1194
1194
|
super(...e), this.__symbol = "SpineItemPageLayout";
|
|
1195
1195
|
}
|
|
1196
|
-
},
|
|
1196
|
+
}, fn = class extends ln {
|
|
1197
1197
|
constructor(...e) {
|
|
1198
1198
|
super(...e), this.__symbol = "SpineItemSpineLayout";
|
|
1199
1199
|
}
|
|
1200
|
-
},
|
|
1200
|
+
}, pn = class extends ln {
|
|
1201
1201
|
constructor(...e) {
|
|
1202
1202
|
super(...e), this.__symbol = "SpineItemPageSpineLayout";
|
|
1203
1203
|
}
|
|
1204
|
-
},
|
|
1204
|
+
}, mn = class {
|
|
1205
1205
|
constructor(e) {
|
|
1206
1206
|
this.x = e.x, this.y = e.y;
|
|
1207
1207
|
}
|
|
1208
|
-
}, J = class e extends
|
|
1208
|
+
}, J = class e extends mn {
|
|
1209
1209
|
constructor(...e) {
|
|
1210
1210
|
super(...e), this.__symbol = "SpinePosition";
|
|
1211
1211
|
}
|
|
1212
1212
|
static from(t) {
|
|
1213
1213
|
return new e(t);
|
|
1214
1214
|
}
|
|
1215
|
-
}, Y = class e extends
|
|
1215
|
+
}, Y = class e extends mn {
|
|
1216
1216
|
constructor(...e) {
|
|
1217
1217
|
super(...e), this.__symbol = "UnboundSpinePosition";
|
|
1218
1218
|
}
|
|
1219
1219
|
static from(t) {
|
|
1220
1220
|
return new e(t);
|
|
1221
1221
|
}
|
|
1222
|
-
},
|
|
1222
|
+
}, hn = (e, t) => {
|
|
1223
1223
|
let n = t.getBoundingClientRect(), { x: r, y: i } = e, { left: a, top: o } = n, s = n.width / t.offsetWidth, c = n.height / t.offsetHeight, l = r - a, u = i - o;
|
|
1224
1224
|
return {
|
|
1225
1225
|
x: l / s,
|
|
1226
1226
|
y: u / c
|
|
1227
1227
|
};
|
|
1228
|
-
},
|
|
1228
|
+
}, gn = (e, t) => new Y(hn(e, t)), _n = (e) => ({ getSpinePositionFromClientPosition: (t) => e.spine.element ? gn(t, e.spine.element) : void 0 }), vn = (e) => {
|
|
1229
1229
|
let t, n = e.context.watch("rootElement").pipe(P((e) => e ? new f(() => (t = e.ownerDocument.createElement("div"), t.style.cssText = "\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n visibility: hidden;\n ", e.appendChild(t), () => {
|
|
1230
1230
|
t?.remove(), t = void 0;
|
|
1231
|
-
})) : d)), r = (e) =>
|
|
1231
|
+
})) : d)), r = (e) => fe(e, h).pipe(I(() => {
|
|
1232
1232
|
t && z(t.style, "visibility", "hidden");
|
|
1233
1233
|
})), i = e.context.bridgeEvent.viewportBusy$.pipe(I(() => {
|
|
1234
1234
|
t && z(t.style, "visibility", "visible");
|
|
1235
|
-
})), a = r(e.viewportFree$).pipe(
|
|
1235
|
+
})), a = r(e.viewportFree$).pipe(Ae(1)), o = e.settings.values$.pipe(we(() => e.settings.values.computedPageTurnMode), xe()).pipe(P((e) => e === "controlled" ? i.pipe(P(() => a)) : r(D(void 0))), F(e.$.destroy$));
|
|
1236
1236
|
return E(n, o);
|
|
1237
|
-
},
|
|
1237
|
+
}, yn = "@prose-reader/core", bn = 0, xn = 200, X = "prose-reader", Sn = `${X}-style`, Cn = `data-${X}-id`, wn = `${X}-viewport`, Tn = `${X}-scroll-navigator`, En = `${X}-spine-item`, Dn = `--${X}-absolute-viewport-width`, On = `--${X}-absolute-viewport-height`, kn = `${X}-enhancer-loading`, An = `${kn}-container`, jn = `${kn}-logo`, Mn = `${kn}-details`, Nn = ({ container: e, item: t }) => {
|
|
1238
1238
|
let n = e.ownerDocument.createElement("div");
|
|
1239
|
-
n.classList.add(
|
|
1239
|
+
n.classList.add(An);
|
|
1240
1240
|
let r = n.ownerDocument.createElement("div");
|
|
1241
|
-
r.classList.add(
|
|
1241
|
+
r.classList.add(jn), r.innerText = "prose";
|
|
1242
1242
|
let i = n.ownerDocument.createElement("div");
|
|
1243
|
-
return i.classList.add(
|
|
1244
|
-
},
|
|
1245
|
-
z(e.style, "color",
|
|
1246
|
-
},
|
|
1243
|
+
return i.classList.add(Mn), i.setAttribute("data-details-element", "true"), i.innerText = `loading ${t.id}`, n.appendChild(r), n.appendChild(i), n;
|
|
1244
|
+
}, Pn = (e) => e === "sepia" ? "#939393" : "rgb(202, 202, 202)", Fn = ({ loadingElement: e, theme: t }) => {
|
|
1245
|
+
z(e.style, "color", Pn(t));
|
|
1246
|
+
}, In = (e) => {
|
|
1247
1247
|
let t = /* @__PURE__ */ new WeakMap();
|
|
1248
1248
|
e.hookManager.register("item.onBeforeContainerAttach", ({ element: n, item: r }) => {
|
|
1249
1249
|
z(n.style, "z-index", "0");
|
|
1250
|
-
let i =
|
|
1250
|
+
let i = Nn({
|
|
1251
1251
|
container: n,
|
|
1252
1252
|
item: r
|
|
1253
1253
|
});
|
|
1254
|
-
|
|
1254
|
+
Fn({
|
|
1255
1255
|
loadingElement: i,
|
|
1256
1256
|
theme: e.theme.get()
|
|
1257
1257
|
}), t.set(n, i), n.appendChild(i);
|
|
@@ -1261,32 +1261,32 @@ var cn = class {
|
|
|
1261
1261
|
let i = t.get(e.containerElement);
|
|
1262
1262
|
if (!i) return;
|
|
1263
1263
|
let a = i.querySelector("[data-details-element]");
|
|
1264
|
-
|
|
1264
|
+
Qe(a) && Re(a, "innerText", r?.toString() ?? "Unknown error");
|
|
1265
1265
|
})), r = e.theme.$.theme$.pipe(I((n) => {
|
|
1266
1266
|
for (let r of e.spineItemsManager.items) {
|
|
1267
1267
|
let e = t.get(r.containerElement);
|
|
1268
|
-
e &&
|
|
1268
|
+
e && Fn({
|
|
1269
1269
|
loadingElement: e,
|
|
1270
1270
|
theme: n
|
|
1271
1271
|
});
|
|
1272
1272
|
}
|
|
1273
1273
|
}));
|
|
1274
1274
|
return E(n, r);
|
|
1275
|
-
},
|
|
1275
|
+
}, Ln = (e) => {
|
|
1276
1276
|
e.hookManager.register("item.onDocumentLoad", async ({ itemId: t }) => {
|
|
1277
1277
|
let n = e.spineItemsManager.get(t)?.renderer.getDocumentFrame();
|
|
1278
1278
|
n && R(n, "scrolling", "no");
|
|
1279
1279
|
});
|
|
1280
|
-
},
|
|
1280
|
+
}, Rn = (e) => {
|
|
1281
1281
|
e.hookManager.register("item.onAfterLayout", ({ item: t, blankPagePosition: n, minimumWidth: r }) => {
|
|
1282
1282
|
let i = e.spineItemsManager.get(t.id), a = i?.renderer.getDocumentFrame();
|
|
1283
1283
|
if (i?.renditionLayout !== "reflowable" || !V(a, "iframe")) return;
|
|
1284
|
-
let { hasViewport: o } =
|
|
1284
|
+
let { hasViewport: o } = ot(a), { width: s } = e.viewport.pageSize, c = i?.renderer.getDocumentFrame();
|
|
1285
1285
|
o && n === "none" && s < r && V(c, "iframe") && z(c.style, "left", e.context.isRTL() ? "75%" : "25%");
|
|
1286
1286
|
});
|
|
1287
|
-
},
|
|
1287
|
+
}, zn = (e) => e.spineItemsObserver.itemStateChange$.pipe(M(({ item: e, isReady: t, isDirty: n }) => {
|
|
1288
1288
|
e.containerElement.dataset.isDirty = n.toString(), e.containerElement.dataset.isReady = t.toString();
|
|
1289
|
-
})),
|
|
1289
|
+
})), Bn = class extends Et {
|
|
1290
1290
|
computeOutputSettings(e) {
|
|
1291
1291
|
return e;
|
|
1292
1292
|
}
|
|
@@ -1305,20 +1305,20 @@ var cn = class {
|
|
|
1305
1305
|
layoutLayerTransition: !0
|
|
1306
1306
|
};
|
|
1307
1307
|
}
|
|
1308
|
-
},
|
|
1308
|
+
}, Vn = ({ manifest: e, spreadMode: t }) => e.renditionFlow !== "scrolled-continuous" && t, Hn = (e) => e === void 0 || e === "auto" || e === "landscape" || e === "both", Un = ({ manifest: e, viewport: t }) => {
|
|
1309
1309
|
let n = t.width > t.height;
|
|
1310
|
-
return !!(!n && e.renditionSpread === "portrait" || n &&
|
|
1311
|
-
},
|
|
1310
|
+
return !!(!n && e.renditionSpread === "portrait" || n && Hn(e.renditionSpread));
|
|
1311
|
+
}, Wn = ({ manifest: e, viewport: t }) => Vn({
|
|
1312
1312
|
manifest: e,
|
|
1313
|
-
spreadMode:
|
|
1313
|
+
spreadMode: Un({
|
|
1314
1314
|
manifest: e,
|
|
1315
1315
|
viewport: t
|
|
1316
1316
|
})
|
|
1317
|
-
}),
|
|
1317
|
+
}), Gn = (e) => v([e.viewport.watch(["width", "height"]), e.context.watch("manifest")]).pipe(M(([t, n]) => e.settings.update({ spreadMode: Un({
|
|
1318
1318
|
manifest: n,
|
|
1319
1319
|
viewport: t
|
|
1320
|
-
}) }))),
|
|
1321
|
-
let { pageHorizontalMargin: r, pageVerticalMargin: i, layoutAutoResize: a, layoutLayerTransition: o } = t, s = e(t), c = new
|
|
1320
|
+
}) }))), Kn = (e) => (t) => {
|
|
1321
|
+
let { pageHorizontalMargin: r, pageVerticalMargin: i, layoutAutoResize: a, layoutLayerTransition: o } = t, s = e(t), c = new Bn({
|
|
1322
1322
|
pageHorizontalMargin: r,
|
|
1323
1323
|
pageVerticalMargin: i,
|
|
1324
1324
|
layoutAutoResize: a,
|
|
@@ -1358,25 +1358,25 @@ var cn = class {
|
|
|
1358
1358
|
}
|
|
1359
1359
|
`);
|
|
1360
1360
|
}
|
|
1361
|
-
}),
|
|
1361
|
+
}), Rn(s), Ln(s), s.hookManager.register("item.onDocumentCreated", ({ documentContainer: e }) => {
|
|
1362
1362
|
z(e.style, "opacity", "0"), c.values.layoutLayerTransition && z(e.style, "transition", "opacity 800ms");
|
|
1363
1363
|
}), s.hookManager.register("item.onBeforeLayout", ({ item: e }) => {
|
|
1364
1364
|
let t = s.spineItemsManager.get(e.id)?.renderer.documentContainer;
|
|
1365
1365
|
s.settings.values.computedPageTurnMode !== "scrollable" && t && R(t, "tab-index", "0");
|
|
1366
1366
|
});
|
|
1367
|
-
let l = s.spineItemsObserver.itemStateChange$.pipe(
|
|
1367
|
+
let l = s.spineItemsObserver.itemStateChange$.pipe(Se(({ isReady: e }) => e), I(({ item: e }) => {
|
|
1368
1368
|
let t = e.renderer.documentContainer;
|
|
1369
1369
|
t && z(t.style, "opacity", "1");
|
|
1370
|
-
})), u = c.values$.pipe(
|
|
1370
|
+
})), u = c.values$.pipe(Se(({ layoutAutoResize: e }) => e === "container"), P(() => s.context.watch("rootElement")), Se(K), P((e) => yt(e)), be(100), Se(K), I(() => {
|
|
1371
1371
|
s?.layout();
|
|
1372
|
-
})), d =
|
|
1373
|
-
c.watch(["pageHorizontalMargin", "pageVerticalMargin"]).pipe(
|
|
1372
|
+
})), d = vn(s);
|
|
1373
|
+
c.watch(["pageHorizontalMargin", "pageVerticalMargin"]).pipe(Oe(1), I(() => {
|
|
1374
1374
|
s.layout();
|
|
1375
1375
|
}), F(s.$.destroy$)).subscribe();
|
|
1376
|
-
let f = s.spine.pages.pipe(
|
|
1376
|
+
let f = s.spine.pages.pipe(De({
|
|
1377
1377
|
refCount: !0,
|
|
1378
1378
|
bufferSize: 1
|
|
1379
|
-
})), p =
|
|
1379
|
+
})), p = zn(s), m = Gn(s), h = In(s);
|
|
1380
1380
|
return E(l, d, u, f, p, m, h).pipe(F(s.$.destroy$)).subscribe(), {
|
|
1381
1381
|
...s,
|
|
1382
1382
|
destroy: () => {
|
|
@@ -1385,9 +1385,9 @@ var cn = class {
|
|
|
1385
1385
|
settings: c,
|
|
1386
1386
|
layout$: s.spine.layout$,
|
|
1387
1387
|
layoutInfo$: f,
|
|
1388
|
-
coordinates:
|
|
1388
|
+
coordinates: _n(s)
|
|
1389
1389
|
};
|
|
1390
|
-
},
|
|
1390
|
+
}, qn = (e) => (t) => {
|
|
1391
1391
|
let n = e(t), r = n.context.document.defaultView?.IntersectionObserver ?? IntersectionObserver, i = new r((e) => {
|
|
1392
1392
|
e.forEach((e) => {
|
|
1393
1393
|
let t = e.target, n = Array.from(t.contentDocument?.body.getElementsByTagName("audio") || []);
|
|
@@ -1426,14 +1426,14 @@ var cn = class {
|
|
|
1426
1426
|
...n,
|
|
1427
1427
|
destroy: s
|
|
1428
1428
|
};
|
|
1429
|
-
},
|
|
1429
|
+
}, Jn = (e) => (t) => t.pipe(A((t) => e.pipe(x((e) => e === "free"), S(), T(() => t)))), Yn = ({ navigation$: e, navigationState$: t }) => e.pipe(Jn(t)), Xn = (e) => Yn(e).pipe(pe(1)), Zn = (e) => (t) => t.pipe(j(Xn(e))), Qn = (e) => e.navigation.navigation$.pipe(x((e) => e.triggeredBy === "user"), Jn(e.navigation.navigationState$), T((t) => {
|
|
1430
1430
|
let n = t.requestedPosition, r = t.requestedVisibleArea;
|
|
1431
1431
|
return n && r ? e.navigation.navigationResolver.getBoundaryForPosition(n, r) : void 0;
|
|
1432
|
-
}), x((e) => e !== void 0), T((e) => ({ boundary: e })), O()),
|
|
1432
|
+
}), x((e) => e !== void 0), T((e) => ({ boundary: e })), O()), $n = (e, t) => e.links$.pipe(M((n) => {
|
|
1433
1433
|
if (!V(n.target, "a") || n.type !== "click") return;
|
|
1434
1434
|
let r = new URL(n.target.href), i = `${r.origin}${r.pathname}`;
|
|
1435
1435
|
e.context.manifest.spineItems.some((e) => e.href === i) && t.goToUrl(r);
|
|
1436
|
-
})), Z = L.namespace("navigation"),
|
|
1436
|
+
})), Z = L.namespace("navigation"), er = ({ position: e, spineItem: t, pageHeight: n, pageWidth: r, spineItemLocator: i }) => {
|
|
1437
1437
|
let a = new q({
|
|
1438
1438
|
x: e.x - r,
|
|
1439
1439
|
y: e.y
|
|
@@ -1442,10 +1442,10 @@ var cn = class {
|
|
|
1442
1442
|
x: e.x,
|
|
1443
1443
|
y: e.y + n
|
|
1444
1444
|
})), i.getSpineItemClosestPositionFromUnsafePosition(a, t);
|
|
1445
|
-
},
|
|
1445
|
+
}, tr = ({ position: e, navigationResolver: t, computedPageTurnDirection: n, spineItemsManager: r, spineLocator: i, viewport: a }) => {
|
|
1446
1446
|
let o = n, s = i.getSpineItemFromPosition(e) || r.get(0), c = e;
|
|
1447
1447
|
if (!s) return c;
|
|
1448
|
-
let l = i.getSpineItemPositionFromSpinePosition(e, s), u =
|
|
1448
|
+
let l = i.getSpineItemPositionFromSpinePosition(e, s), u = er({
|
|
1449
1449
|
position: l,
|
|
1450
1450
|
spineItem: s,
|
|
1451
1451
|
pageHeight: a.pageSize.height,
|
|
@@ -1462,12 +1462,12 @@ var cn = class {
|
|
|
1462
1462
|
y: e.y - a.pageSize.height,
|
|
1463
1463
|
x: 0
|
|
1464
1464
|
});
|
|
1465
|
-
},
|
|
1465
|
+
}, nr = ({ position: e, spineItem: t, context: n, navigationResolver: r, spineItemsManager: i, spineLocator: a, computedPageTurnDirection: o, viewport: s, settings: c }) => {
|
|
1466
1466
|
if (c.values.computedPageTurnMode === "scrollable" && o === "vertical") return new Y({
|
|
1467
1467
|
x: e.x,
|
|
1468
1468
|
y: e.y - s.pageSize.height
|
|
1469
1469
|
});
|
|
1470
|
-
let l =
|
|
1470
|
+
let l = tr({
|
|
1471
1471
|
position: e,
|
|
1472
1472
|
viewport: s,
|
|
1473
1473
|
navigationResolver: r,
|
|
@@ -1485,7 +1485,7 @@ var cn = class {
|
|
|
1485
1485
|
y: l.y
|
|
1486
1486
|
}));
|
|
1487
1487
|
if (o === "vertical" && e.y !== l.y) return r.getAdjustedPositionForSpread(l);
|
|
1488
|
-
let c =
|
|
1488
|
+
let c = tr({
|
|
1489
1489
|
position: l,
|
|
1490
1490
|
viewport: s,
|
|
1491
1491
|
navigationResolver: r,
|
|
@@ -1496,7 +1496,7 @@ var cn = class {
|
|
|
1496
1496
|
return r.getAdjustedPositionForSpread(c);
|
|
1497
1497
|
}
|
|
1498
1498
|
return r.getAdjustedPositionForSpread(l);
|
|
1499
|
-
},
|
|
1499
|
+
}, rr = ({ position: e, spineItem: t, pageHeight: n, pageWidth: r, spineItemLocator: i }) => {
|
|
1500
1500
|
let a = new q({
|
|
1501
1501
|
x: e.x + r,
|
|
1502
1502
|
y: e.y
|
|
@@ -1505,10 +1505,10 @@ var cn = class {
|
|
|
1505
1505
|
x: e.x,
|
|
1506
1506
|
y: e.y - n
|
|
1507
1507
|
})), i.getSpineItemClosestPositionFromUnsafePosition(a, t);
|
|
1508
|
-
},
|
|
1508
|
+
}, ir = ({ position: e, navigationResolver: t, computedPageTurnDirection: n, spineItemsManager: r, spineLocator: i, viewport: a }) => {
|
|
1509
1509
|
let o = n, s = i.getSpineItemFromPosition(e) || r.get(0), c = e;
|
|
1510
1510
|
if (!s) return c;
|
|
1511
|
-
let l = i.getSpineItemPositionFromSpinePosition(e, s), u =
|
|
1511
|
+
let l = i.getSpineItemPositionFromSpinePosition(e, s), u = rr({
|
|
1512
1512
|
position: l,
|
|
1513
1513
|
spineItem: s,
|
|
1514
1514
|
pageHeight: a.pageSize.height,
|
|
@@ -1525,12 +1525,12 @@ var cn = class {
|
|
|
1525
1525
|
y: e.y + a.pageSize.height,
|
|
1526
1526
|
x: 0
|
|
1527
1527
|
});
|
|
1528
|
-
},
|
|
1528
|
+
}, ar = ({ position: e, spineItem: t, context: n, navigationResolver: r, spineItemsManager: i, spineLocator: a, computedPageTurnDirection: o, viewport: s, settings: c }) => {
|
|
1529
1529
|
if (c.values.computedPageTurnMode === "scrollable" && o === "vertical") return new Y({
|
|
1530
1530
|
x: e.x,
|
|
1531
1531
|
y: e.y + s.pageSize.height
|
|
1532
1532
|
});
|
|
1533
|
-
let l =
|
|
1533
|
+
let l = ir({
|
|
1534
1534
|
position: e,
|
|
1535
1535
|
viewport: s,
|
|
1536
1536
|
navigationResolver: r,
|
|
@@ -1548,7 +1548,7 @@ var cn = class {
|
|
|
1548
1548
|
y: l.y
|
|
1549
1549
|
}));
|
|
1550
1550
|
if (o === "vertical" && e.y !== l.y) return r.getAdjustedPositionForSpread(l);
|
|
1551
|
-
let c =
|
|
1551
|
+
let c = ir({
|
|
1552
1552
|
position: l,
|
|
1553
1553
|
viewport: s,
|
|
1554
1554
|
navigationResolver: r,
|
|
@@ -1559,7 +1559,7 @@ var cn = class {
|
|
|
1559
1559
|
return r.getAdjustedPositionForSpread(c);
|
|
1560
1560
|
}
|
|
1561
1561
|
return r.getAdjustedPositionForSpread(l);
|
|
1562
|
-
},
|
|
1562
|
+
}, or = class {
|
|
1563
1563
|
constructor(e) {
|
|
1564
1564
|
this.reader = e, this.movingLastDelta = {
|
|
1565
1565
|
x: 0,
|
|
@@ -1598,10 +1598,10 @@ var cn = class {
|
|
|
1598
1598
|
return this.reader.navigation.navigate({ position: r });
|
|
1599
1599
|
}
|
|
1600
1600
|
turnRightOrBottom() {
|
|
1601
|
-
return this.turnWith(
|
|
1601
|
+
return this.turnWith(ar);
|
|
1602
1602
|
}
|
|
1603
1603
|
turnLeftOrTop() {
|
|
1604
|
-
return this.turnWith(
|
|
1604
|
+
return this.turnWith(nr);
|
|
1605
1605
|
}
|
|
1606
1606
|
goToCfi(e, t = { animate: !0 }) {
|
|
1607
1607
|
return this.reader.navigation.navigate({
|
|
@@ -1712,7 +1712,7 @@ var cn = class {
|
|
|
1712
1712
|
});
|
|
1713
1713
|
}
|
|
1714
1714
|
}
|
|
1715
|
-
},
|
|
1715
|
+
}, sr = class extends U {
|
|
1716
1716
|
constructor(e) {
|
|
1717
1717
|
super({
|
|
1718
1718
|
lastDelta: {
|
|
@@ -1770,25 +1770,25 @@ var cn = class {
|
|
|
1770
1770
|
destroy() {
|
|
1771
1771
|
this.isDestroyed || (this.isDestroyed = !0, this.destroySubject.next(), this.destroySubject.complete());
|
|
1772
1772
|
}
|
|
1773
|
-
},
|
|
1773
|
+
}, cr = 500, lr = class extends Q {
|
|
1774
1774
|
constructor(e, t) {
|
|
1775
1775
|
super(), this.scrollNavigationController = e, this.lock = t, this.navigationSubject = new m(), this.navigation$ = this.navigationSubject.asObservable();
|
|
1776
|
-
let n = this.scrollNavigationController.userScroll$.pipe(
|
|
1776
|
+
let n = this.scrollNavigationController.userScroll$.pipe(se((e) => {
|
|
1777
1777
|
let t = this.lock();
|
|
1778
|
-
return E(this.scrollNavigationController.userScroll$, D(e)).pipe(
|
|
1778
|
+
return E(this.scrollNavigationController.userScroll$, D(e)).pipe(ne(cr, h), S(), M(() => {
|
|
1779
1779
|
let e = this.scrollNavigationController.fromScrollPosition(this.scrollNavigationController.scrollPosition);
|
|
1780
1780
|
this.navigationSubject.next({
|
|
1781
1781
|
animation: !1,
|
|
1782
1782
|
type: "scroll",
|
|
1783
1783
|
position: e
|
|
1784
1784
|
});
|
|
1785
|
-
}),
|
|
1785
|
+
}), ce(() => {
|
|
1786
1786
|
t();
|
|
1787
1787
|
}));
|
|
1788
1788
|
}));
|
|
1789
1789
|
E(n).pipe(j(this.destroy$)).subscribe();
|
|
1790
1790
|
}
|
|
1791
|
-
},
|
|
1791
|
+
}, ur = (e) => e.pagination.state$.pipe(N(e.settings.values$), T(([t, { computedPageTurnDirection: n }]) => {
|
|
1792
1792
|
let { spineItems: r, readingDirection: i } = e.context.manifest, a = r.length ?? 0, o = t.begin.spineItemIndex === 0, s = t.end.spineItemIndex === Math.max(a - 1, 0), c = t.end.spineItemIndex === Math.max(a - 1, 0), l = t.begin.spineItemIndex === 0, u = t.begin.pageIndexInSpineItem === 0, d = t.end.pageIndexInSpineItem === t.end.numberOfPagesInSpineItem - 1;
|
|
1793
1793
|
return {
|
|
1794
1794
|
canTurnLeft: n !== "vertical" && !u,
|
|
@@ -1798,18 +1798,18 @@ var cn = class {
|
|
|
1798
1798
|
canGoLeftSpineItem: n !== "vertical" && (i === "ltr" && !o || i === "rtl" && !c),
|
|
1799
1799
|
canGoRightSpineItem: n !== "vertical" && (i === "ltr" && !s || i === "rtl" && !l)
|
|
1800
1800
|
};
|
|
1801
|
-
}), b(a)),
|
|
1801
|
+
}), b(a)), dr = ({ reader: e, duration: t }) => (n) => {
|
|
1802
1802
|
let r, i = () => {
|
|
1803
1803
|
r?.(), r = void 0;
|
|
1804
1804
|
};
|
|
1805
1805
|
return n.pipe(M(() => {
|
|
1806
1806
|
r ||= e?.navigation.lock();
|
|
1807
|
-
}),
|
|
1807
|
+
}), _e(t, void 0, {
|
|
1808
1808
|
trailing: !0,
|
|
1809
1809
|
leading: !0
|
|
1810
|
-
}), M(i),
|
|
1811
|
-
},
|
|
1812
|
-
let n = e(t), r =
|
|
1810
|
+
}), M(i), ce(i));
|
|
1811
|
+
}, fr = (e) => (t) => {
|
|
1812
|
+
let n = e(t), r = ur(n), i = Qn(n), a = new or(n), o = new sr(n), s = new lr(n.navigation.scrollNavigationController, n.navigation.lock), c = $n(n, a), l = s.navigation$.pipe(M((e) => {
|
|
1813
1813
|
n.navigation.navigate(e);
|
|
1814
1814
|
}));
|
|
1815
1815
|
E(c, l).pipe(j(n.$.destroy$)).subscribe();
|
|
@@ -1826,7 +1826,7 @@ var cn = class {
|
|
|
1826
1826
|
...n.navigation,
|
|
1827
1827
|
state$: r,
|
|
1828
1828
|
outOfSpineBoundary$: i,
|
|
1829
|
-
throttleLock: ({ duration: e, trigger: t }) => t.pipe(
|
|
1829
|
+
throttleLock: ({ duration: e, trigger: t }) => t.pipe(dr({
|
|
1830
1830
|
duration: e,
|
|
1831
1831
|
reader: n
|
|
1832
1832
|
})),
|
|
@@ -1852,7 +1852,18 @@ var cn = class {
|
|
|
1852
1852
|
goToAbsolutePageIndex: a.goToAbsolutePageIndex.bind(a)
|
|
1853
1853
|
}
|
|
1854
1854
|
};
|
|
1855
|
-
},
|
|
1855
|
+
}, pr = () => ({
|
|
1856
|
+
cfi: void 0,
|
|
1857
|
+
spineItemIndex: void 0,
|
|
1858
|
+
pageIndexInSpineItem: void 0,
|
|
1859
|
+
numberOfPagesInSpineItem: 0
|
|
1860
|
+
}), mr = (e, t) => {
|
|
1861
|
+
let { begin: n, end: r, ...i } = e, { begin: a, end: s, ...c } = t;
|
|
1862
|
+
return o(n, a) && o(r, s) && o(i, c);
|
|
1863
|
+
}, hr = (e) => ({
|
|
1864
|
+
...e,
|
|
1865
|
+
isSettled: !1
|
|
1866
|
+
}), gr = (e, t) => {
|
|
1856
1867
|
if ("cfi" in t) {
|
|
1857
1868
|
let { itemIndex: n, ...r } = e.cfi.parseCfi(t.cfi);
|
|
1858
1869
|
return {
|
|
@@ -1871,9 +1882,9 @@ var cn = class {
|
|
|
1871
1882
|
itemIndex: n.index,
|
|
1872
1883
|
node: null
|
|
1873
1884
|
};
|
|
1874
|
-
},
|
|
1885
|
+
}, _r = (e, t) => {
|
|
1875
1886
|
let n = e?.itemPageIndex, { itemIndex: r, ...i } = t.cfi.parseCfi(e.cfi), a = t.spineItemsManager.get(r);
|
|
1876
|
-
return a ?
|
|
1887
|
+
return a ? St().pipe(N(a.isReady$), T(([, o]) => {
|
|
1877
1888
|
let { node: s = null, offset: c, range: l } = o ? t.cfi.resolveCfi({ cfi: e.cfi }) : {};
|
|
1878
1889
|
a.renditionLayout !== "pre-paginated" && s && (n = t.spine.locator.spineItemLocator.getSpineItemPageIndexFromNode(s, c ?? 0, a) ?? n);
|
|
1879
1890
|
let u = e?.absolutePageIndex;
|
|
@@ -1895,7 +1906,7 @@ var cn = class {
|
|
|
1895
1906
|
itemIndex: r,
|
|
1896
1907
|
...i
|
|
1897
1908
|
});
|
|
1898
|
-
},
|
|
1909
|
+
}, vr = class {
|
|
1899
1910
|
constructor(e) {
|
|
1900
1911
|
this.reader = e, this.locatorsByKey = /* @__PURE__ */ new Map(), this.deregisterMemoizedStream = (e) => {
|
|
1901
1912
|
let t = this.locatorsByKey.get(e);
|
|
@@ -1903,10 +1914,10 @@ var cn = class {
|
|
|
1903
1914
|
}, this.locate = (e, t) => {
|
|
1904
1915
|
let n = {
|
|
1905
1916
|
resource: e,
|
|
1906
|
-
meta:
|
|
1917
|
+
meta: gr(this.reader, e)
|
|
1907
1918
|
};
|
|
1908
|
-
return
|
|
1909
|
-
let r = this.reader.spineItemsManager.get(n.meta.itemIndex ?? 0), i = r?.renditionLayout === "reflowable", a = t.mode === "shallow" || !i || !r ? () => {} : this.reader.spine.spineItemsLoader.forceOpen([r.index]), o = "cfi" in e ? e.cfi : void 0, s = o ? this.locatorsByKey.get(o) : void 0, c = (e) => e.pipe(
|
|
1919
|
+
return Ct(() => {
|
|
1920
|
+
let r = this.reader.spineItemsManager.get(n.meta.itemIndex ?? 0), i = r?.renditionLayout === "reflowable", a = t.mode === "shallow" || !i || !r ? () => {} : this.reader.spine.spineItemsLoader.forceOpen([r.index]), o = "cfi" in e ? e.cfi : void 0, s = o ? this.locatorsByKey.get(o) : void 0, c = (e) => e.pipe(ce(() => {
|
|
1910
1921
|
o && this.deregisterMemoizedStream(o), setTimeout(() => {
|
|
1911
1922
|
a();
|
|
1912
1923
|
}, 1e3);
|
|
@@ -1915,7 +1926,7 @@ var cn = class {
|
|
|
1915
1926
|
resource: e,
|
|
1916
1927
|
meta: t
|
|
1917
1928
|
}))));
|
|
1918
|
-
let l = this.reader.spine.layout$.pipe(
|
|
1929
|
+
let l = this.reader.spine.layout$.pipe(ne(10), me(n), he((e) => _r(e.meta, this.reader).pipe(T((t) => ({
|
|
1919
1930
|
...e,
|
|
1920
1931
|
meta: t
|
|
1921
1932
|
}))), n), k({
|
|
@@ -1930,17 +1941,9 @@ var cn = class {
|
|
|
1930
1941
|
};
|
|
1931
1942
|
}
|
|
1932
1943
|
locateResource(e, t) {
|
|
1933
|
-
return Array.isArray(e) ?
|
|
1944
|
+
return Array.isArray(e) ? Ct(() => v(e.map((e) => this.locate(e, t ?? {}))).pipe(re([]))) : this.locate(e, t ?? {});
|
|
1934
1945
|
}
|
|
1935
|
-
},
|
|
1936
|
-
cfi: void 0,
|
|
1937
|
-
spineItemIndex: void 0,
|
|
1938
|
-
pageIndexInSpineItem: void 0,
|
|
1939
|
-
numberOfPagesInSpineItem: 0
|
|
1940
|
-
}), gr = (e, t) => {
|
|
1941
|
-
let { begin: n, end: r, ...i } = e, { begin: a, end: s, ...c } = t;
|
|
1942
|
-
return o(n, a) && o(r, s) && o(i, c);
|
|
1943
|
-
}, _r = L.namespace("spine"), vr = ({ position: e, pageSize: t }) => new fn({
|
|
1946
|
+
}, yr = L.namespace("spine"), br = ({ position: e, pageSize: t }) => new pn({
|
|
1944
1947
|
...e,
|
|
1945
1948
|
left: e.x,
|
|
1946
1949
|
top: e.y,
|
|
@@ -1948,7 +1951,7 @@ var cn = class {
|
|
|
1948
1951
|
height: t.height,
|
|
1949
1952
|
bottom: e.y + t.height,
|
|
1950
1953
|
right: e.x + t.width
|
|
1951
|
-
}),
|
|
1954
|
+
}), xr = 10, Sr = (e) => {
|
|
1952
1955
|
let { spineItem: t, ...n } = e;
|
|
1953
1956
|
if (!e.spineItem.value.isLoaded) return {
|
|
1954
1957
|
...n,
|
|
@@ -1960,9 +1963,9 @@ var cn = class {
|
|
|
1960
1963
|
firstVisibleNode: void 0
|
|
1961
1964
|
} : {
|
|
1962
1965
|
...n,
|
|
1963
|
-
firstVisibleNode:
|
|
1966
|
+
firstVisibleNode: Be(r, e.layout)
|
|
1964
1967
|
};
|
|
1965
|
-
},
|
|
1968
|
+
}, Cr = (e) => new f((t) => {
|
|
1966
1969
|
if (e.length === 0) {
|
|
1967
1970
|
t.next([]), t.complete();
|
|
1968
1971
|
return;
|
|
@@ -1972,13 +1975,13 @@ var cn = class {
|
|
|
1972
1975
|
}, o = () => {
|
|
1973
1976
|
n = void 0;
|
|
1974
1977
|
let a = 0;
|
|
1975
|
-
for (; r < e.length && a <
|
|
1978
|
+
for (; r < e.length && a < xr;) {
|
|
1976
1979
|
let t = e[r];
|
|
1977
1980
|
if (!t) {
|
|
1978
1981
|
r = e.length;
|
|
1979
1982
|
break;
|
|
1980
1983
|
}
|
|
1981
|
-
i[r] =
|
|
1984
|
+
i[r] = Sr(t), r += 1, a += 1;
|
|
1982
1985
|
}
|
|
1983
1986
|
if (r >= e.length) {
|
|
1984
1987
|
t.next(i), t.complete();
|
|
@@ -1991,9 +1994,9 @@ var cn = class {
|
|
|
1991
1994
|
return s(), () => {
|
|
1992
1995
|
a();
|
|
1993
1996
|
};
|
|
1994
|
-
}),
|
|
1997
|
+
}), wr = class e extends U {
|
|
1995
1998
|
constructor(t, n, r, i, a, o) {
|
|
1996
|
-
super({ pages: [] }), this.spineLayout = t, this.spineItemsManager = n, this.spineItemLocator = r, this.context = i, this.locator = a, this.viewport = o, this.fromSpineItemPageIndex = (t, n) => e.fromSpineItemPageIndex(this.value, t, n), this.fromNextPageWithinSameSpineItem = (t) => e.fromNextPageWithinSameSpineItem(this.value, t), this.fromAbsolutePageIndex = (t) => e.fromAbsolutePageIndex(this.value, t), this.observeFromAbsolutePageIndex = (e) => this.pipe(T(() => this.fromAbsolutePageIndex(e))), this.layout$ = t.layout$.pipe(N(o), A(([, { pageSize: e }]) =>
|
|
1999
|
+
super({ pages: [] }), this.spineLayout = t, this.spineItemsManager = n, this.spineItemLocator = r, this.context = i, this.locator = a, this.viewport = o, this.fromSpineItemPageIndex = (t, n) => e.fromSpineItemPageIndex(this.value, t, n), this.fromNextPageWithinSameSpineItem = (t) => e.fromNextPageWithinSameSpineItem(this.value, t), this.fromAbsolutePageIndex = (t) => e.fromAbsolutePageIndex(this.value, t), this.observeFromAbsolutePageIndex = (e) => this.pipe(T(() => this.fromAbsolutePageIndex(e))), this.layout$ = t.layout$.pipe(N(o), A(([, { pageSize: e }]) => Cr(n.items.reduce((t, n, i) => {
|
|
1997
2000
|
for (let o = 0; o < n.numberOfPages; o += 1) {
|
|
1998
2001
|
let s = r.getSpineItemPositionFromPageIndex({
|
|
1999
2002
|
spineItem: n,
|
|
@@ -2003,11 +2006,11 @@ var cn = class {
|
|
|
2003
2006
|
spineItemPosition: s
|
|
2004
2007
|
}), l = t.length;
|
|
2005
2008
|
t.push({
|
|
2006
|
-
absoluteLayout:
|
|
2009
|
+
absoluteLayout: br({
|
|
2007
2010
|
pageSize: e,
|
|
2008
2011
|
position: c
|
|
2009
2012
|
}),
|
|
2010
|
-
layout: new
|
|
2013
|
+
layout: new dn({
|
|
2011
2014
|
left: s.x,
|
|
2012
2015
|
right: s.x + e.width,
|
|
2013
2016
|
top: s.y,
|
|
@@ -2024,7 +2027,7 @@ var cn = class {
|
|
|
2024
2027
|
});
|
|
2025
2028
|
}
|
|
2026
2029
|
return t;
|
|
2027
|
-
}, []))), T((e) => (
|
|
2030
|
+
}, []))), T((e) => (yr.info("Pages layout", e), { pages: e })), O()), this.layout$.pipe(j(this.destroy$)).subscribe(this.next.bind(this));
|
|
2028
2031
|
}
|
|
2029
2032
|
static {
|
|
2030
2033
|
this.fromSpineItemPageIndex = (e, t, n) => {
|
|
@@ -2038,20 +2041,20 @@ var cn = class {
|
|
|
2038
2041
|
static {
|
|
2039
2042
|
this.fromAbsolutePageIndex = (e, t) => e.pages.find((e) => e.absolutePageIndex === t);
|
|
2040
2043
|
}
|
|
2041
|
-
},
|
|
2044
|
+
}, Tr = (e) => {
|
|
2042
2045
|
let t = e.indexOf("#");
|
|
2043
2046
|
return t >= 0 ? e.substring(0, t) : e;
|
|
2044
|
-
},
|
|
2047
|
+
}, Er = (e) => {
|
|
2045
2048
|
if (!e) return;
|
|
2046
2049
|
let t = e.indexOf("#");
|
|
2047
2050
|
if (!(t < 0)) return e.substring(t + 1) || void 0;
|
|
2048
|
-
},
|
|
2051
|
+
}, Dr = (e) => {
|
|
2049
2052
|
try {
|
|
2050
2053
|
return decodeURIComponent(e);
|
|
2051
2054
|
} catch {
|
|
2052
2055
|
return e;
|
|
2053
2056
|
}
|
|
2054
|
-
},
|
|
2057
|
+
}, Or = (e, t = []) => e.flatMap((e) => {
|
|
2055
2058
|
let n = [...t, {
|
|
2056
2059
|
title: e.title,
|
|
2057
2060
|
path: e.path
|
|
@@ -2059,24 +2062,24 @@ var cn = class {
|
|
|
2059
2062
|
return [{
|
|
2060
2063
|
chain: n,
|
|
2061
2064
|
href: e.href || e.path,
|
|
2062
|
-
anchorId:
|
|
2063
|
-
}, ...
|
|
2064
|
-
}),
|
|
2065
|
+
anchorId: Er(e.href) ?? Er(e.path)
|
|
2066
|
+
}, ...Or(e.contents, n)];
|
|
2067
|
+
}), kr = (e) => {
|
|
2065
2068
|
let t = /* @__PURE__ */ new Map();
|
|
2066
2069
|
return e.spineItems.forEach((e, n) => {
|
|
2067
2070
|
t.has(e.href) || t.set(e.href, n);
|
|
2068
2071
|
}), t;
|
|
2069
|
-
},
|
|
2070
|
-
let n =
|
|
2071
|
-
return
|
|
2072
|
-
let t =
|
|
2072
|
+
}, Ar = (e, t) => {
|
|
2073
|
+
let n = kr(t);
|
|
2074
|
+
return Or(e).map((e) => {
|
|
2075
|
+
let t = Tr(e.href), r = n.get(t) ?? -1;
|
|
2073
2076
|
return {
|
|
2074
2077
|
...e,
|
|
2075
2078
|
hrefWithoutAnchor: t,
|
|
2076
2079
|
spineItemIndex: r
|
|
2077
2080
|
};
|
|
2078
2081
|
});
|
|
2079
|
-
},
|
|
2082
|
+
}, jr = ({ manifest: e, tocIndex: t }) => {
|
|
2080
2083
|
let n = /* @__PURE__ */ new Map();
|
|
2081
2084
|
t.forEach((e, t) => {
|
|
2082
2085
|
let r = n.get(e.hrefWithoutAnchor);
|
|
@@ -2089,19 +2092,19 @@ var cn = class {
|
|
|
2089
2092
|
let r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map();
|
|
2090
2093
|
for (let a of e.spineItems) {
|
|
2091
2094
|
if (r.has(a.href)) continue;
|
|
2092
|
-
let e =
|
|
2095
|
+
let e = Tr(a.href), o = i.get(e);
|
|
2093
2096
|
if (!o) {
|
|
2094
2097
|
let r = [];
|
|
2095
|
-
for (let [t, i] of n)
|
|
2098
|
+
for (let [t, i] of n) Mr(e, t) && r.push(...i);
|
|
2096
2099
|
r.sort((e, t) => e - t), o = r.map((e) => t[e]), i.set(e, o);
|
|
2097
2100
|
}
|
|
2098
2101
|
r.set(a.href, o);
|
|
2099
2102
|
}
|
|
2100
2103
|
return r;
|
|
2101
|
-
},
|
|
2104
|
+
}, Mr = (e, t) => e === t || e.endsWith(t) || t.endsWith(e), Nr = (e, t) => {
|
|
2102
2105
|
let n = e.endsWith(t), r = e.substring(0, e.lastIndexOf("/")), i = t.substring(0, t.lastIndexOf("/")), a = r !== "" && r.endsWith(i);
|
|
2103
2106
|
return n || a;
|
|
2104
|
-
},
|
|
2107
|
+
}, Pr = (e) => {
|
|
2105
2108
|
let [t, ...n] = e;
|
|
2106
2109
|
if (!t) return;
|
|
2107
2110
|
let r = {
|
|
@@ -2116,7 +2119,7 @@ var cn = class {
|
|
|
2116
2119
|
i.subChapter = t, i = t;
|
|
2117
2120
|
}
|
|
2118
2121
|
return r;
|
|
2119
|
-
},
|
|
2122
|
+
}, Fr = ({ doc: e, node: t, offset: n }) => {
|
|
2120
2123
|
let r = e.createRange();
|
|
2121
2124
|
if (t.nodeType === Node.TEXT_NODE || t.nodeType === Node.CDATA_SECTION_NODE || t.nodeType === Node.COMMENT_NODE) {
|
|
2122
2125
|
let e = t, i = Math.max(0, Math.min(n, e.length));
|
|
@@ -2126,18 +2129,18 @@ var cn = class {
|
|
|
2126
2129
|
r.setStart(t, i);
|
|
2127
2130
|
}
|
|
2128
2131
|
return r.collapse(!0), r;
|
|
2129
|
-
},
|
|
2132
|
+
}, Ir = ({ rangeToTest: e, upperBoundRange: t }) => e.compareBoundaryPoints(Range.START_TO_START, t) < 0, Lr = (e) => {
|
|
2130
2133
|
let t = e.createRange(), n = e.body ?? e.documentElement;
|
|
2131
2134
|
if (n) return t.selectNodeContents(n), t.collapse(!1), t;
|
|
2132
|
-
},
|
|
2135
|
+
}, Rr = ({ anchorNode: e, nextPageNode: t }) => e === t || e.contains(t), zr = ({ node: e, offset: t, candidates: n, spineItem: r, nextPageEntry: i }) => {
|
|
2133
2136
|
if (!e || t === void 0 || !r || n.length === 0) return;
|
|
2134
2137
|
let a = r.renderer.getDocumentFrame()?.contentDocument;
|
|
2135
2138
|
if (!a || e.ownerDocument !== a) return;
|
|
2136
|
-
let o = i?.firstVisibleNode?.node, s = i?.firstVisibleNode?.offset, c = i ? o !== void 0 && s !== void 0 && o.ownerDocument === a ?
|
|
2139
|
+
let o = i?.firstVisibleNode?.node, s = i?.firstVisibleNode?.offset, c = i ? o !== void 0 && s !== void 0 && o.ownerDocument === a ? Fr({
|
|
2137
2140
|
doc: a,
|
|
2138
2141
|
node: o,
|
|
2139
2142
|
offset: s
|
|
2140
|
-
}) : void 0 :
|
|
2143
|
+
}) : void 0 : Lr(a);
|
|
2141
2144
|
if (!c) return;
|
|
2142
2145
|
let l = i !== void 0 && o !== void 0 && o.ownerDocument === a, u, d, f;
|
|
2143
2146
|
for (let e of n) {
|
|
@@ -2145,93 +2148,93 @@ var cn = class {
|
|
|
2145
2148
|
f = e.chain;
|
|
2146
2149
|
continue;
|
|
2147
2150
|
}
|
|
2148
|
-
let t = a.getElementById(
|
|
2149
|
-
if (!t || l &&
|
|
2151
|
+
let t = a.getElementById(Dr(e.anchorId));
|
|
2152
|
+
if (!t || l && Rr({
|
|
2150
2153
|
anchorNode: t,
|
|
2151
2154
|
nextPageNode: o
|
|
2152
2155
|
})) continue;
|
|
2153
2156
|
let n = a.createRange();
|
|
2154
|
-
n.setStartBefore(t), n.collapse(!0),
|
|
2157
|
+
n.setStartBefore(t), n.collapse(!0), Ir({
|
|
2155
2158
|
rangeToTest: n,
|
|
2156
2159
|
upperBoundRange: c
|
|
2157
2160
|
}) && (!d || n.compareBoundaryPoints(Range.START_TO_START, d) > 0) && (u = e.chain, d = n);
|
|
2158
2161
|
}
|
|
2159
2162
|
let p = u ?? f;
|
|
2160
|
-
return p ?
|
|
2161
|
-
},
|
|
2163
|
+
return p ? Pr(p) : void 0;
|
|
2164
|
+
}, Br = ({ candidate: e, hrefHasAnchor: t }) => {
|
|
2162
2165
|
if (t || !e.anchorId) return !1;
|
|
2163
2166
|
let n = e.chain[e.chain.length - 1], r = e.chain[e.chain.length - 2];
|
|
2164
|
-
return !n || !r ? !1 :
|
|
2165
|
-
},
|
|
2166
|
-
let r =
|
|
2167
|
-
for (let e of t)
|
|
2167
|
+
return !n || !r ? !1 : Tr(n.path) === Tr(r.path);
|
|
2168
|
+
}, Vr = ({ href: e, tocIndex: t, manifest: n }) => {
|
|
2169
|
+
let r = Tr(e), i = e.includes("#"), a = n.spineItems.findIndex((e) => e.href === r), o;
|
|
2170
|
+
for (let e of t) Nr(r, e.hrefWithoutAnchor) && (a < e.spineItemIndex || Br({
|
|
2168
2171
|
candidate: e,
|
|
2169
2172
|
hrefHasAnchor: i
|
|
2170
2173
|
}) || (o = e.chain));
|
|
2171
2174
|
return o;
|
|
2172
|
-
},
|
|
2173
|
-
let { href: r } = n, i =
|
|
2175
|
+
}, Hr = (e, t, n) => {
|
|
2176
|
+
let { href: r } = n, i = Vr({
|
|
2174
2177
|
href: r,
|
|
2175
2178
|
tocIndex: t,
|
|
2176
2179
|
manifest: e
|
|
2177
2180
|
});
|
|
2178
|
-
return i ?
|
|
2179
|
-
},
|
|
2181
|
+
return i ? Pr(i) : void 0;
|
|
2182
|
+
}, Ur = (e, t) => e ? e.spineItems.reduce((n, r) => (n[r.id] = Hr(e, t, r), n), {}) : {}, Wr = (e, t, n) => e + t * n, Gr = (e, t, n) => {
|
|
2180
2183
|
let { height: r, width: i } = n.layoutInfo, { top: a, left: o } = e.spine.getSpineItemSpineLayoutInfo(n);
|
|
2181
2184
|
return e.settings.values.computedPageTurnDirection === "vertical" ? Math.max(0, Math.min(1, (t.y - a + e.viewport.absoluteViewport.height) / r)) : Math.max(0, Math.min(1, (t.x - o + e.viewport.absoluteViewport.width) / i));
|
|
2182
|
-
},
|
|
2185
|
+
}, Kr = (e, t, n, r, i, a) => i.isReady$.pipe(S(), N(e.layoutInfo$), T(([o, s]) => {
|
|
2183
2186
|
let c = a.renditionLayout === "pre-paginated", l = a.spineItems.length || 0, u = a.spineItems.slice(0, t).reduce((e, t) => e + (t.progressionWeight ?? 0), 0) || 0, d = e.spineItemsManager.getSpineItemIndex(i) ?? 0, f = a.spineItems.length ?? 0, p = s.pages.filter((e) => e.itemIndex === d).length ?? 0, m = a.spineItems[t]?.progressionWeight ?? (d + 1) / f, h = (n + 1) * (m / p);
|
|
2184
2187
|
!c && i.renditionLayout === "reflowable" && !o && (h = 0);
|
|
2185
2188
|
let g = u + h;
|
|
2186
|
-
return a.renditionFlow === "scrolled-continuous" && (h = o ?
|
|
2187
|
-
})),
|
|
2188
|
-
let i = e && t !== void 0 ?
|
|
2189
|
+
return a.renditionFlow === "scrolled-continuous" && (h = o ? Gr(e, r, i) : 0, g = Wr(u, m, h)), t === l - 1 && n === p - 1 && g > .99 ? 1 : g;
|
|
2190
|
+
})), qr = ({ spineItem: e, pageIndexInSpineItem: t, chaptersData: n, pagesState: r }) => {
|
|
2191
|
+
let i = e && t !== void 0 ? wr.fromSpineItemPageIndex(r, e.index, t) : void 0;
|
|
2189
2192
|
return {
|
|
2190
|
-
chapterInfo: (e ?
|
|
2193
|
+
chapterInfo: (e ? zr({
|
|
2191
2194
|
node: i?.firstVisibleNode?.node,
|
|
2192
2195
|
offset: i?.firstVisibleNode?.offset,
|
|
2193
2196
|
candidates: n.tocCandidatesBySpineHref.get(e.item.href) ?? [],
|
|
2194
2197
|
spineItem: e,
|
|
2195
|
-
nextPageEntry: i ?
|
|
2198
|
+
nextPageEntry: i ? wr.fromNextPageWithinSameSpineItem(r, i) : void 0
|
|
2196
2199
|
}) : void 0) ?? (e ? n.chaptersInfo[e.item.id] : void 0),
|
|
2197
2200
|
spineItemReadingDirection: e?.readingDirection,
|
|
2198
2201
|
absolutePageIndex: i?.absolutePageIndex
|
|
2199
2202
|
};
|
|
2200
|
-
},
|
|
2203
|
+
}, Jr = ({ items: e, pagesState: t }) => {
|
|
2201
2204
|
let n = e.map(() => 0);
|
|
2202
2205
|
for (let e of t.pages) n[e.itemIndex] = (n[e.itemIndex] ?? 0) + 1;
|
|
2203
2206
|
return {
|
|
2204
2207
|
numberOfPagesPerItems: n,
|
|
2205
2208
|
numberOfTotalPages: t.pages.length
|
|
2206
2209
|
};
|
|
2207
|
-
},
|
|
2210
|
+
}, Yr = (e, t) => e.numberOfTotalPages !== t.numberOfTotalPages || e.numberOfPagesPerItems.length !== t.numberOfPagesPerItems.length ? !1 : e.numberOfPagesPerItems.every((e, n) => e === t.numberOfPagesPerItems[n]), Xr = ({ reader: e, paginationInfo: t, navigationPosition: n, manifest: r }) => {
|
|
2208
2211
|
let i = e.spineItemsManager.get(t.end.spineItemIndex);
|
|
2209
|
-
return i ?
|
|
2210
|
-
},
|
|
2211
|
-
let t =
|
|
2212
|
+
return i ? Kr(e, t.end.spineItemIndex ?? 0, t.end.pageIndexInSpineItem || 0, n, i, r) : D(0);
|
|
2213
|
+
}, Zr = (e) => D(e.context.manifest).pipe(T((e) => {
|
|
2214
|
+
let t = Ar(e.nav?.toc ?? [], e);
|
|
2212
2215
|
return {
|
|
2213
|
-
tocCandidatesBySpineHref:
|
|
2216
|
+
tocCandidatesBySpineHref: jr({
|
|
2214
2217
|
manifest: e,
|
|
2215
2218
|
tocIndex: t
|
|
2216
2219
|
}),
|
|
2217
|
-
chaptersInfo:
|
|
2220
|
+
chaptersInfo: Ur(e, t)
|
|
2218
2221
|
};
|
|
2219
|
-
})),
|
|
2222
|
+
})), Qr = ({ spineItemIndex: e, pageIndexInSpineItem: t }) => ({
|
|
2220
2223
|
spineItemIndex: e,
|
|
2221
2224
|
pageIndexInSpineItem: t
|
|
2222
|
-
}),
|
|
2223
|
-
begin:
|
|
2224
|
-
end:
|
|
2225
|
-
}),
|
|
2226
|
-
let t = e.pagination.state$, n = e.spine.pages.layout$, r =
|
|
2225
|
+
}), $r = (e) => ({
|
|
2226
|
+
begin: Qr(e.begin),
|
|
2227
|
+
end: Qr(e.end)
|
|
2228
|
+
}), ei = (e) => {
|
|
2229
|
+
let t = e.pagination.state$, n = e.spine.pages.layout$, r = Zr(e).pipe(k({
|
|
2227
2230
|
bufferSize: 1,
|
|
2228
2231
|
refCount: !0
|
|
2229
|
-
})), i = t.pipe(T(
|
|
2232
|
+
})), i = t.pipe(T($r), b(mr)), a = v([
|
|
2230
2233
|
i,
|
|
2231
2234
|
r,
|
|
2232
2235
|
n
|
|
2233
2236
|
]).pipe(T(([t, n, r]) => {
|
|
2234
|
-
let i = (t) =>
|
|
2237
|
+
let i = (t) => qr({
|
|
2235
2238
|
spineItem: e.spineItemsManager.get(t.spineItemIndex),
|
|
2236
2239
|
pageIndexInSpineItem: t.pageIndexInSpineItem,
|
|
2237
2240
|
chaptersData: n,
|
|
@@ -2244,71 +2247,85 @@ var cn = class {
|
|
|
2244
2247
|
}), k({
|
|
2245
2248
|
bufferSize: 1,
|
|
2246
2249
|
refCount: !0
|
|
2247
|
-
})), s = e.settings.watch(["computedSpreadMode"]).pipe(T((e) => e.computedSpreadMode ?? !1), b()), c = n.pipe(T((t) =>
|
|
2250
|
+
})), s = e.settings.watch(["computedSpreadMode"]).pipe(T((e) => e.computedSpreadMode ?? !1), b()), c = n.pipe(T((t) => Jr({
|
|
2248
2251
|
items: e.spineItemsManager.items,
|
|
2249
2252
|
pagesState: t
|
|
2250
|
-
})), b(
|
|
2253
|
+
})), b(Yr)), l = Yn(e.navigation).pipe(T(({ position: e }) => e), b(o));
|
|
2254
|
+
return v([
|
|
2251
2255
|
t,
|
|
2252
2256
|
s,
|
|
2253
2257
|
a,
|
|
2254
|
-
c
|
|
2255
|
-
]).pipe(T(([e, t, n, r]) => ({
|
|
2256
|
-
...e,
|
|
2257
|
-
begin: {
|
|
2258
|
-
...e.begin,
|
|
2259
|
-
...n.begin
|
|
2260
|
-
},
|
|
2261
|
-
end: {
|
|
2262
|
-
...e.end,
|
|
2263
|
-
...n.end
|
|
2264
|
-
},
|
|
2265
|
-
isUsingSpread: t,
|
|
2266
|
-
...r
|
|
2267
|
-
}))), u = Jn(e.navigation).pipe(T(({ position: e }) => e), b(o)), d = v([
|
|
2268
|
-
t,
|
|
2258
|
+
c,
|
|
2269
2259
|
e.layout$,
|
|
2270
|
-
|
|
2271
|
-
]).pipe(A(([t, n, r]) =>
|
|
2260
|
+
l
|
|
2261
|
+
]).pipe(A(([t, n, r, i, , a]) => Xr({
|
|
2272
2262
|
reader: e,
|
|
2273
2263
|
paginationInfo: t,
|
|
2274
|
-
navigationPosition:
|
|
2264
|
+
navigationPosition: a,
|
|
2275
2265
|
manifest: e.context.manifest
|
|
2276
|
-
})
|
|
2277
|
-
|
|
2278
|
-
|
|
2266
|
+
}).pipe(T((e) => ({
|
|
2267
|
+
source: t,
|
|
2268
|
+
begin: r.begin,
|
|
2269
|
+
end: r.end,
|
|
2270
|
+
isUsingSpread: n,
|
|
2271
|
+
numberOfTotalPages: i.numberOfTotalPages,
|
|
2272
|
+
percentageEstimateOfBook: e
|
|
2273
|
+
})))), b(mr), g(5));
|
|
2274
|
+
}, ti = ({ source: e, begin: t, end: n, ...r }, i) => e.isSettled && i ? {
|
|
2275
|
+
...r,
|
|
2276
|
+
...e,
|
|
2277
|
+
begin: {
|
|
2278
|
+
...e.begin,
|
|
2279
2279
|
...t
|
|
2280
|
-
}
|
|
2281
|
-
|
|
2280
|
+
},
|
|
2281
|
+
end: {
|
|
2282
|
+
...e.end,
|
|
2283
|
+
...n
|
|
2284
|
+
}
|
|
2285
|
+
} : {
|
|
2286
|
+
...r,
|
|
2287
|
+
...e,
|
|
2288
|
+
isSettled: !1,
|
|
2289
|
+
begin: {
|
|
2290
|
+
...e.begin,
|
|
2291
|
+
...t
|
|
2292
|
+
},
|
|
2293
|
+
end: {
|
|
2294
|
+
...e.end,
|
|
2295
|
+
...n
|
|
2296
|
+
}
|
|
2297
|
+
}, ni = (e) => (t) => {
|
|
2282
2298
|
let n = e(t), r = (e) => ({
|
|
2283
2299
|
...e,
|
|
2284
2300
|
chapterInfo: void 0,
|
|
2285
2301
|
spineItemReadingDirection: void 0,
|
|
2286
2302
|
absolutePageIndex: 0
|
|
2287
|
-
}), i =
|
|
2303
|
+
}), i = {
|
|
2288
2304
|
...n.pagination.state,
|
|
2305
|
+
isSettled: !1,
|
|
2289
2306
|
begin: r(n.pagination.state.begin),
|
|
2290
2307
|
end: r(n.pagination.state.end),
|
|
2291
2308
|
isUsingSpread: !1,
|
|
2292
2309
|
numberOfTotalPages: 0,
|
|
2293
2310
|
percentageEstimateOfBook: 0
|
|
2294
|
-
}
|
|
2311
|
+
}, a = ei(n).pipe(A((e) => n.pagination.state$.pipe(T((t) => e.source === t), b(), T((t) => ti(e, t)))), b(mr), M((e) => L.log("Pagination", e))), o = new vr(n), s = new l(i), c = a.subscribe(s);
|
|
2295
2312
|
return {
|
|
2296
2313
|
...n,
|
|
2297
|
-
locateResource:
|
|
2314
|
+
locateResource: o.locateResource.bind(o),
|
|
2298
2315
|
destroy: () => {
|
|
2299
|
-
|
|
2316
|
+
c.unsubscribe(), n.destroy();
|
|
2300
2317
|
},
|
|
2301
2318
|
pagination: {
|
|
2302
2319
|
...n.pagination,
|
|
2303
2320
|
get state() {
|
|
2304
|
-
return
|
|
2321
|
+
return s.value;
|
|
2305
2322
|
},
|
|
2306
2323
|
get state$() {
|
|
2307
|
-
return
|
|
2324
|
+
return s.asObservable();
|
|
2308
2325
|
}
|
|
2309
2326
|
}
|
|
2310
2327
|
};
|
|
2311
|
-
},
|
|
2328
|
+
}, ri = (e, t) => {
|
|
2312
2329
|
let n = e.node.ownerDocument?.createRange(), r = e.node.compareDocumentPosition(t.node);
|
|
2313
2330
|
if (n) {
|
|
2314
2331
|
try {
|
|
@@ -2326,10 +2343,10 @@ var cn = class {
|
|
|
2326
2343
|
}
|
|
2327
2344
|
return n;
|
|
2328
2345
|
}
|
|
2329
|
-
},
|
|
2346
|
+
}, ii = ({ selection: e, spineItem: t }) => {
|
|
2330
2347
|
let { anchorNode: n, anchorOffset: r, focusNode: i, focusOffset: a } = e;
|
|
2331
2348
|
if (n && i) try {
|
|
2332
|
-
return
|
|
2349
|
+
return ri({
|
|
2333
2350
|
node: n,
|
|
2334
2351
|
offset: r
|
|
2335
2352
|
}, {
|
|
@@ -2343,26 +2360,26 @@ var cn = class {
|
|
|
2343
2360
|
});
|
|
2344
2361
|
return;
|
|
2345
2362
|
}
|
|
2346
|
-
},
|
|
2363
|
+
}, ai = class extends Q {
|
|
2347
2364
|
constructor(e) {
|
|
2348
2365
|
super();
|
|
2349
2366
|
let t = e.contentDocument || e.contentWindow?.document;
|
|
2350
2367
|
if (!t) this.selectionChange$ = d, this.selectionOver$ = d;
|
|
2351
2368
|
else {
|
|
2352
|
-
let n =
|
|
2369
|
+
let n = wt(t.body, {
|
|
2353
2370
|
childList: !0,
|
|
2354
2371
|
subtree: !0
|
|
2355
|
-
}).pipe(x((e) => !!e.find((e) => e.type === "childList" && e.removedNodes.length))), r = e.parentElement ?
|
|
2356
|
-
this.selectionChange$ = E(w(t, "selectionchange"), n).pipe(T(() => t.getSelection()), j(E(r, this.destroy$)),
|
|
2372
|
+
}).pipe(x((e) => !!e.find((e) => e.type === "childList" && e.removedNodes.length))), r = e.parentElement ? wt(e.parentElement, { childList: !0 }).pipe(x((t) => !!t.find((t) => Array.from(t.removedNodes).includes(e)))) : D(null);
|
|
2373
|
+
this.selectionChange$ = E(w(t, "selectionchange"), n).pipe(T(() => t.getSelection()), j(E(r, this.destroy$)), oe(null)), this.selectionOver$ = w(t, "pointerdown").pipe(A(() => E(w(t, "pointerup"), w(t, "pointercancel"), w(t, "contextmenu")).pipe(S(), ae(0), T((e) => {
|
|
2357
2374
|
let n = t.getSelection();
|
|
2358
2375
|
return n && !n.isCollapsed ? [e, n] : void 0;
|
|
2359
2376
|
}), x(K))), j(E(r, this.destroy$)));
|
|
2360
2377
|
}
|
|
2361
2378
|
}
|
|
2362
|
-
},
|
|
2379
|
+
}, oi = (e) => e.watch("isLoaded").pipe(A(() => {
|
|
2363
2380
|
let t = e.renderer.getDocumentFrame(), n = t?.contentDocument || t?.contentWindow?.document;
|
|
2364
2381
|
if (!t || !n) return d;
|
|
2365
|
-
let r = new
|
|
2382
|
+
let r = new ai(t);
|
|
2366
2383
|
return E(r.selectionChange$.pipe(T((e) => {
|
|
2367
2384
|
if (e?.toString()) return {
|
|
2368
2385
|
type: "change",
|
|
@@ -2372,24 +2389,24 @@ var cn = class {
|
|
|
2372
2389
|
type: "over",
|
|
2373
2390
|
event: e,
|
|
2374
2391
|
selection: t
|
|
2375
|
-
})))).pipe(j(e.unloaded$),
|
|
2392
|
+
})))).pipe(j(e.unloaded$), oe(void 0), ce(() => {
|
|
2376
2393
|
r.destroy();
|
|
2377
2394
|
}));
|
|
2378
|
-
}), b()),
|
|
2395
|
+
}), b()), si = (e) => (t) => {
|
|
2379
2396
|
let n = e(t), r, i = E(...n.spineItemsManager.items.map((e) => {
|
|
2380
2397
|
let t = n.spineItemsManager.getSpineItemIndex(e) ?? 0;
|
|
2381
|
-
return
|
|
2398
|
+
return oi(e).pipe(T((e) => {
|
|
2382
2399
|
if (e) return {
|
|
2383
2400
|
...e,
|
|
2384
2401
|
itemIndex: t
|
|
2385
2402
|
};
|
|
2386
2403
|
}));
|
|
2387
|
-
})).pipe(
|
|
2404
|
+
})).pipe(me(void 0), b(), M((e) => {
|
|
2388
2405
|
r = e;
|
|
2389
2406
|
}), k({
|
|
2390
2407
|
refCount: !0,
|
|
2391
2408
|
bufferSize: 1
|
|
2392
|
-
})), a = i, o = i.pipe(T((e) => !!e), b(), x((e) => e), O()), s = o.pipe(A(() => a), b(), x((e) => !e), O()), c = i.pipe(x((e) => e?.type === "over"), O()), l = n.context.watch("rootElement").pipe(x(K), A((e) => w(e, "pointerdown")), N(a), T(([, e]) => e),
|
|
2409
|
+
})), a = i, o = i.pipe(T((e) => !!e), b(), x((e) => e), O()), s = o.pipe(A(() => a), b(), x((e) => !e), O()), c = i.pipe(x((e) => e?.type === "over"), O()), l = n.context.watch("rootElement").pipe(x(K), A((e) => w(e, "pointerdown")), N(a), T(([, e]) => e), me(void 0), k({
|
|
2393
2410
|
refCount: !0,
|
|
2394
2411
|
bufferSize: 1
|
|
2395
2412
|
}));
|
|
@@ -2402,10 +2419,10 @@ var cn = class {
|
|
|
2402
2419
|
selectionOver$: c,
|
|
2403
2420
|
lastSelectionOnPointerdown$: l,
|
|
2404
2421
|
getSelection: () => r,
|
|
2405
|
-
createOrderedRangeFromSelection:
|
|
2422
|
+
createOrderedRangeFromSelection: ii
|
|
2406
2423
|
}
|
|
2407
2424
|
};
|
|
2408
|
-
},
|
|
2425
|
+
}, ci = [
|
|
2409
2426
|
{
|
|
2410
2427
|
name: "bright",
|
|
2411
2428
|
backgroundColor: "white"
|
|
@@ -2420,9 +2437,9 @@ var cn = class {
|
|
|
2420
2437
|
backgroundColor: "#191717",
|
|
2421
2438
|
foregroundColor: "#f1ebeb"
|
|
2422
2439
|
}
|
|
2423
|
-
],
|
|
2440
|
+
], li = (e) => (t) => {
|
|
2424
2441
|
let n = e(t), r = new l(t.theme ?? "bright"), i = () => {
|
|
2425
|
-
let e =
|
|
2442
|
+
let e = ci.find((e) => e.name === r.value);
|
|
2426
2443
|
return `
|
|
2427
2444
|
body {
|
|
2428
2445
|
${e === void 0 ? "" : `background-color: ${e.backgroundColor} !important;`}
|
|
@@ -2435,7 +2452,7 @@ var cn = class {
|
|
|
2435
2452
|
` : ""}
|
|
2436
2453
|
`;
|
|
2437
2454
|
}, a = ({ container: e }) => {
|
|
2438
|
-
let t =
|
|
2455
|
+
let t = ci.find((e) => e.name === r.value);
|
|
2439
2456
|
return t && z(e.style, "background-color", t.backgroundColor), () => {};
|
|
2440
2457
|
}, o = () => {
|
|
2441
2458
|
n.spineItemsManager.items.forEach((e) => {
|
|
@@ -2461,10 +2478,10 @@ var cn = class {
|
|
|
2461
2478
|
$: { theme$: r.asObservable() }
|
|
2462
2479
|
}
|
|
2463
2480
|
};
|
|
2464
|
-
},
|
|
2465
|
-
let n = e(t), r = (e) => !!(
|
|
2481
|
+
}, ui = (e) => (t) => {
|
|
2482
|
+
let n = e(t), r = (e) => !!(Qe(e) && (e.nodeName === "a" ? e : e.closest("a"))?.getAttribute("href")), i = (e, t, r) => {
|
|
2466
2483
|
let i = r.replace("${id}", n.id);
|
|
2467
|
-
return
|
|
2484
|
+
return et(e, `${t}-${n.id}`, i);
|
|
2468
2485
|
};
|
|
2469
2486
|
return {
|
|
2470
2487
|
...n,
|
|
@@ -2475,7 +2492,7 @@ var cn = class {
|
|
|
2475
2492
|
};
|
|
2476
2493
|
};
|
|
2477
2494
|
navigator.userAgent.indexOf("") > -1 && navigator.userAgent.indexOf("Chrome");
|
|
2478
|
-
var
|
|
2495
|
+
var di = (e) => (t) => e(t), fi = (e, t, n) => {
|
|
2479
2496
|
let { clientWidth: r, clientHeight: i } = n.value.element, a = {
|
|
2480
2497
|
maxX: 0,
|
|
2481
2498
|
minX: r * (1 - t),
|
|
@@ -2486,25 +2503,25 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2486
2503
|
x: Math.min(Math.max(e.x, a.minX), a.maxX),
|
|
2487
2504
|
y: Math.min(Math.max(e.y, a.minY), a.maxY)
|
|
2488
2505
|
};
|
|
2489
|
-
},
|
|
2506
|
+
}, pi = (e, t, n) => {
|
|
2490
2507
|
z(n.style, "transform-origin", "0 0");
|
|
2491
2508
|
let r = `translate3d(${t.x}px, ${t.y}px, 0px)`, i = `scale(${e})`;
|
|
2492
2509
|
z(n.style, "transform", `${r} ${i}`);
|
|
2493
|
-
},
|
|
2510
|
+
}, mi = (e, t, n, r) => {
|
|
2494
2511
|
let i = t / e, a = n.clientWidth, o = n.clientHeight, s = a / 2 - r.x, c = o / 2 - r.y;
|
|
2495
2512
|
return {
|
|
2496
2513
|
x: r.x + s * (1 - i),
|
|
2497
2514
|
y: r.y + c * (1 - i)
|
|
2498
2515
|
};
|
|
2499
|
-
},
|
|
2516
|
+
}, hi = class {
|
|
2500
2517
|
constructor(e) {
|
|
2501
2518
|
this.x = e.x, this.y = e.y;
|
|
2502
2519
|
}
|
|
2503
|
-
},
|
|
2520
|
+
}, gi = class extends hi {}, _i = class extends hi {
|
|
2504
2521
|
constructor(...e) {
|
|
2505
2522
|
super(...e), this.__symbol = Symbol("UnboundScrollPosition");
|
|
2506
2523
|
}
|
|
2507
|
-
},
|
|
2524
|
+
}, vi = class extends U {
|
|
2508
2525
|
constructor(e, t, n, r, i) {
|
|
2509
2526
|
super({ element: void 0 }), this.viewport = e, this.settings = t, this.hookManager = n, this.spine = r, this.context = i, this.navigateSubject = new m(), this.scrollingSubject = new l(!1), this.applyNavigationPosition = ({ position: e }) => {
|
|
2510
2527
|
let t = this.value.element;
|
|
@@ -2514,19 +2531,19 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2514
2531
|
left: n.x,
|
|
2515
2532
|
top: n.y,
|
|
2516
2533
|
behavior: "instant"
|
|
2517
|
-
}),
|
|
2534
|
+
}), ye(1).pipe(M(() => {
|
|
2518
2535
|
this.scrollingSubject.next(!1);
|
|
2519
|
-
}), j(E(this.scrollingSubject.pipe(
|
|
2536
|
+
}), j(E(this.scrollingSubject.pipe(pe(1)), this.destroy$))).subscribe(), this.hookManager.execute("onViewportOffsetAdjust", void 0));
|
|
2520
2537
|
}, this.isActive = () => this.settings.values.computedPageTurnMode === "scrollable", this.getNavigationVisibleArea = () => this.viewport.relativeViewport;
|
|
2521
|
-
let a = this.context.pipe(
|
|
2538
|
+
let a = this.context.pipe(vt(["rootElement"]), M(({ rootElement: e }) => {
|
|
2522
2539
|
if (!e) return;
|
|
2523
2540
|
let t = this.context.document.createElement("div");
|
|
2524
|
-
t.setAttribute(`data-${
|
|
2541
|
+
t.setAttribute(`data-${Tn}`, ""), t.appendChild(this.viewport.value.element), e.appendChild(t), this.update({ element: t });
|
|
2525
2542
|
})), o = v([t.watch(["computedPageTurnMode"]), this.watch("element")]).pipe(M(([{ computedPageTurnMode: e }, t]) => {
|
|
2526
2543
|
t && (e === "scrollable" ? z(t.style, "display", "block") : z(t.style, "display", "contents"));
|
|
2527
2544
|
})), s = this.navigateSubject.pipe(M(this.applyNavigationPosition));
|
|
2528
2545
|
this.isNavigating$ = this.scrollingSubject.asObservable();
|
|
2529
|
-
let c = E(r.element$.pipe(x(K), A((e) =>
|
|
2546
|
+
let c = E(r.element$.pipe(x(K), A((e) => yt(e))), r.element$.pipe(x(K), A((e) => w(e, "scroll"))), r.spineItemsObserver.itemResize$).pipe(A(() => ye(10).pipe(T(() => !1), me(!0))), b(), me(!1)), u = v([c, this.isNavigating$]).pipe(T(([e, t]) => e || t), k(1));
|
|
2530
2547
|
this.userScroll$ = this.watch("element").pipe(x(K), A((e) => t.watch(["computedPageTurnMode"]).pipe(A(({ computedPageTurnMode: t }) => t === "controlled" ? d : w(e, "scroll").pipe(N(u), x(([, e]) => !e), T(([e]) => e))))), O()), E(a, o, s).pipe(j(this.destroy$)).subscribe();
|
|
2531
2548
|
}
|
|
2532
2549
|
update(e) {
|
|
@@ -2547,30 +2564,30 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2547
2564
|
}
|
|
2548
2565
|
fromSpinePosition(e) {
|
|
2549
2566
|
let t = this.viewport.scaleFactor;
|
|
2550
|
-
return new
|
|
2567
|
+
return new gi({
|
|
2551
2568
|
x: e.x * t,
|
|
2552
2569
|
y: e.y * t
|
|
2553
2570
|
});
|
|
2554
2571
|
}
|
|
2555
2572
|
get scrollPosition() {
|
|
2556
2573
|
let e = this.value.element;
|
|
2557
|
-
return new
|
|
2574
|
+
return new gi({
|
|
2558
2575
|
x: e?.scrollLeft ?? 0,
|
|
2559
2576
|
y: e?.scrollTop ?? 0
|
|
2560
2577
|
});
|
|
2561
2578
|
}
|
|
2562
|
-
},
|
|
2579
|
+
}, yi = (e, t, n, r, i) => {
|
|
2563
2580
|
let a = e.clientWidth, o = e.clientHeight, s = e.scrollLeft, c = e.scrollTop, l = s + a / 2 - r, u = c + o / 2 - i, d = n / t, f = l * d, p = u * d;
|
|
2564
|
-
return new
|
|
2581
|
+
return new _i({
|
|
2565
2582
|
x: f - a / 2 + r,
|
|
2566
2583
|
y: p - o / 2 + i
|
|
2567
2584
|
});
|
|
2568
|
-
},
|
|
2569
|
-
let n = t.viewport, r = t.navigation.scrollNavigationController, i = n.value.element, a = r.value.element, o = r.value.element, s = Math.round(n.scaleFactor * 100) / 100, c = i.offsetLeft, l = i.offsetTop, u =
|
|
2585
|
+
}, bi = (e, t) => {
|
|
2586
|
+
let n = t.viewport, r = t.navigation.scrollNavigationController, i = n.value.element, a = r.value.element, o = r.value.element, s = Math.round(n.scaleFactor * 100) / 100, c = i.offsetLeft, l = i.offsetTop, u = yi(a ?? Je(), s, e, c, l), d = e < 1 ? "down" : "up";
|
|
2570
2587
|
o && R(o, `data-${X}-zooming-direction`, d), e < 1 ? z(i.style, "transform-origin", "top") : e > 1 && z(i.style, "transform-origin", `${c}px ${l}px`), z(i.style, "transform", `scale(${e})`);
|
|
2571
2588
|
let f = r.fromScrollPosition(u);
|
|
2572
2589
|
t.navigation.navigate({ position: f });
|
|
2573
|
-
},
|
|
2590
|
+
}, xi = 200, Si = class extends U {
|
|
2574
2591
|
constructor(e) {
|
|
2575
2592
|
super({
|
|
2576
2593
|
isZooming: !1,
|
|
@@ -2584,24 +2601,24 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2584
2601
|
let { scale: t = 1, animate: n = !1 } = e ?? {}, r = this.reader.viewport.value.element;
|
|
2585
2602
|
R(this.viewport.element, `data-${X}-zooming`, "true");
|
|
2586
2603
|
let i = this.scrollNavigationController.value.element;
|
|
2587
|
-
return i && R(i, `data-${X}-zooming`, this.isControlled ? "false" : "true"), n && this.isControlled && z(r.style, "transition", `transform ${
|
|
2604
|
+
return i && R(i, `data-${X}-zooming`, this.isControlled ? "false" : "true"), n && this.isControlled && z(r.style, "transition", `transform ${xi}ms`), this.mergeCompare({
|
|
2588
2605
|
isZooming: !0,
|
|
2589
2606
|
currentScale: 1,
|
|
2590
2607
|
currentPosition: {
|
|
2591
2608
|
x: 0,
|
|
2592
2609
|
y: 0
|
|
2593
2610
|
}
|
|
2594
|
-
}), this.updateZoom(t), t !== 1 && this.isControlled ?
|
|
2611
|
+
}), this.updateZoom(t), t !== 1 && this.isControlled ? ye(e?.animate ? xi : 0).pipe(M(() => {
|
|
2595
2612
|
this.reader.layout();
|
|
2596
2613
|
})) : u;
|
|
2597
2614
|
})), n = this.exitSubject.pipe(A((e) => {
|
|
2598
2615
|
let t = this.reader.viewport.value.element;
|
|
2599
2616
|
R(this.viewport.element, `data-${X}-zooming`, "false");
|
|
2600
2617
|
let n = this.scrollNavigationController.value.element;
|
|
2601
|
-
return n && (
|
|
2618
|
+
return n && (Le(n, `data-${X}-zooming-direction`), R(n, `data-${X}-zooming`, "false")), e?.animate && this.isControlled && z(t.style, "transition", `transform ${xi}ms`), this.updateZoom(1, {
|
|
2602
2619
|
x: 0,
|
|
2603
2620
|
y: 0
|
|
2604
|
-
}), B(t.style, "transform"), this.mergeCompare({ isZooming: !1 }),
|
|
2621
|
+
}), B(t.style, "transform"), this.mergeCompare({ isZooming: !1 }), ye(e?.animate ? xi : 0).pipe(M(() => {
|
|
2605
2622
|
let e = this.reader.viewport.value.element;
|
|
2606
2623
|
B(e.style, "transform-origin"), B(e.style, "transition"), this.isControlled && this.reader.layout();
|
|
2607
2624
|
}), j(this.enterSubject));
|
|
@@ -2615,17 +2632,17 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2615
2632
|
this.exitSubject.next(e);
|
|
2616
2633
|
}
|
|
2617
2634
|
move(e, t) {
|
|
2618
|
-
this.isControlled && (B(this.viewport.element.style, "transition"), this.updateZoom(this.value.currentScale, e, { constraints: t?.constrain === "within-viewport" ? (...e) =>
|
|
2635
|
+
this.isControlled && (B(this.viewport.element.style, "transition"), this.updateZoom(this.value.currentScale, e, { constraints: t?.constrain === "within-viewport" ? (...e) => fi(...e, this.reader.viewport) : void 0 }));
|
|
2619
2636
|
}
|
|
2620
2637
|
scaleAt(e, t) {
|
|
2621
2638
|
if (!this.value.isZooming) return;
|
|
2622
2639
|
B(this.viewport.element.style, "transition");
|
|
2623
2640
|
let n = Math.ceil(e * 100) / 100;
|
|
2624
|
-
this.updateZoom(n, void 0, { constraints: t?.constrain === "within-viewport" ? (...e) =>
|
|
2641
|
+
this.updateZoom(n, void 0, { constraints: t?.constrain === "within-viewport" ? (...e) => fi(...e, this.reader.viewport) : void 0 });
|
|
2625
2642
|
}
|
|
2626
2643
|
updateZoom(e, t, n) {
|
|
2627
2644
|
if (this.isControlled) {
|
|
2628
|
-
let r = t ||
|
|
2645
|
+
let r = t || mi(this.value.currentScale, e, this.viewport.element, this.value.currentPosition), i = n?.constraints?.(r, e) ?? r;
|
|
2629
2646
|
return this.applyZoom(e, i), this.mergeCompare({
|
|
2630
2647
|
currentScale: e,
|
|
2631
2648
|
currentPosition: i
|
|
@@ -2634,7 +2651,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2634
2651
|
this.applyZoom(e, t ?? this.value.currentPosition), this.mergeCompare({ currentScale: e });
|
|
2635
2652
|
}
|
|
2636
2653
|
applyZoom(e, t) {
|
|
2637
|
-
this.isControlled ?
|
|
2654
|
+
this.isControlled ? pi(e, t, this.viewport.element) : bi(e, this.reader), this.reader.viewport.layout();
|
|
2638
2655
|
}
|
|
2639
2656
|
get isControlled() {
|
|
2640
2657
|
return this.reader.settings.values.computedPageTurnMode === "controlled";
|
|
@@ -2645,8 +2662,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2645
2662
|
get viewport() {
|
|
2646
2663
|
return this.reader.viewport.value;
|
|
2647
2664
|
}
|
|
2648
|
-
},
|
|
2649
|
-
let n = e(t), r = new
|
|
2665
|
+
}, Ci = (e) => (t) => {
|
|
2666
|
+
let n = e(t), r = new Si(n), i = () => {
|
|
2650
2667
|
r.destroy(), n.destroy();
|
|
2651
2668
|
}, a = r;
|
|
2652
2669
|
return {
|
|
@@ -2663,12 +2680,12 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2663
2680
|
}
|
|
2664
2681
|
}
|
|
2665
2682
|
};
|
|
2666
|
-
},
|
|
2683
|
+
}, wi = (e) => je({
|
|
2667
2684
|
spineIndex: e.index,
|
|
2668
2685
|
spineId: e.id
|
|
2669
|
-
}),
|
|
2686
|
+
}), Ti = ({ nodeOrRange: e, offset: t, item: n }) => {
|
|
2670
2687
|
let r = "ownerDocument" in e ? e.ownerDocument : e.startContainer.ownerDocument;
|
|
2671
|
-
return !r?.documentElement || e === r ?
|
|
2688
|
+
return !r?.documentElement || e === r ? wi(n) : $e(e) ? je({
|
|
2672
2689
|
start: {
|
|
2673
2690
|
node: e.startContainer,
|
|
2674
2691
|
offset: e.startOffset,
|
|
@@ -2681,31 +2698,31 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2681
2698
|
spineIndex: n.index,
|
|
2682
2699
|
spineId: n.id
|
|
2683
2700
|
}
|
|
2684
|
-
}) :
|
|
2701
|
+
}) : je({
|
|
2685
2702
|
node: e,
|
|
2686
2703
|
offset: t,
|
|
2687
2704
|
spineIndex: n.index,
|
|
2688
2705
|
spineId: n.id
|
|
2689
2706
|
});
|
|
2690
|
-
},
|
|
2707
|
+
}, Ei = ({ spineItem: e, pageNode: t }) => Ti({
|
|
2691
2708
|
nodeOrRange: t.node,
|
|
2692
2709
|
offset: t.offset,
|
|
2693
2710
|
item: e
|
|
2694
|
-
}).trim(),
|
|
2711
|
+
}).trim(), Di = (e, t) => Ti({
|
|
2695
2712
|
nodeOrRange: e,
|
|
2696
2713
|
item: t
|
|
2697
|
-
}),
|
|
2698
|
-
let t =
|
|
2699
|
-
return
|
|
2700
|
-
},
|
|
2701
|
-
let t =
|
|
2714
|
+
}), Oi = (e) => e.index.toString(), ki = (e) => e[0]?.index === 6 && e.length > 1, Ai = (e) => {
|
|
2715
|
+
let t = Pe(e);
|
|
2716
|
+
return Me(t);
|
|
2717
|
+
}, ji = (e) => Array.isArray(e) ? e[0] && ki(e[0]) ? e[0] : void 0 : e.parent[0] && ki(e.parent[0]) ? e.parent[0] : void 0, Mi = (e) => {
|
|
2718
|
+
let t = Pe(e), n = ((ji(t) ?? [])[1]?.index ?? 2) / 2 - 1, r = Ne(t);
|
|
2702
2719
|
return {
|
|
2703
2720
|
isCfiRange: r,
|
|
2704
2721
|
itemIndex: n,
|
|
2705
2722
|
offset: (r ? t.end.at(-1)?.at(-1)?.offset : t.at(-1)?.at(-1)?.offset) ?? 0
|
|
2706
2723
|
};
|
|
2707
|
-
},
|
|
2708
|
-
let { itemIndex: n, ...r } =
|
|
2724
|
+
}, Ni = ({ cfi: e, spineItemsManager: t }) => {
|
|
2725
|
+
let { itemIndex: n, ...r } = Mi(e), i = t.get(n);
|
|
2709
2726
|
if (!i) return {
|
|
2710
2727
|
...r,
|
|
2711
2728
|
itemIndex: n,
|
|
@@ -2715,7 +2732,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2715
2732
|
if (V(a, "iframe")) {
|
|
2716
2733
|
let t = a.contentWindow?.document;
|
|
2717
2734
|
if (t) try {
|
|
2718
|
-
let a =
|
|
2735
|
+
let a = Fe(e, t, { throwOnError: !0 });
|
|
2719
2736
|
return {
|
|
2720
2737
|
...r,
|
|
2721
2738
|
itemIndex: n,
|
|
@@ -2740,27 +2757,27 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2740
2757
|
spineItem: i,
|
|
2741
2758
|
node: null
|
|
2742
2759
|
};
|
|
2743
|
-
},
|
|
2760
|
+
}, Pi = class {
|
|
2744
2761
|
constructor(e, t) {
|
|
2745
2762
|
this.hookManager = e, this.spineItemsManager = t, this.transformForResolve = (e) => {
|
|
2746
2763
|
let { finalParams: t } = this.hookManager.executeSequential("cfi.beforeResolve", { cfi: e }, (e, t) => ({ cfi: t ?? e.cfi }));
|
|
2747
2764
|
return t.cfi;
|
|
2748
|
-
}, this.parseCfi = (e) =>
|
|
2765
|
+
}, this.parseCfi = (e) => Mi(this.transformForResolve(e)), this.getSpineItemFromCfi = (e) => {
|
|
2749
2766
|
let { itemIndex: t } = this.parseCfi(e);
|
|
2750
2767
|
if (t !== void 0) return this.spineItemsManager.get(t);
|
|
2751
|
-
}, this.isRootCfi = (e) =>
|
|
2752
|
-
cfi:
|
|
2768
|
+
}, this.isRootCfi = (e) => Ai(e), this.generateRootCfi = (e) => this.transformGeneratedCfi({
|
|
2769
|
+
cfi: wi(e),
|
|
2753
2770
|
spineItem: e
|
|
2754
2771
|
}), this.generateCfiForSpineItemPage = ({ spineItem: e, pageNode: t }) => this.transformGeneratedCfi({
|
|
2755
|
-
cfi:
|
|
2772
|
+
cfi: Ei({
|
|
2756
2773
|
spineItem: e,
|
|
2757
2774
|
pageNode: t
|
|
2758
2775
|
}),
|
|
2759
2776
|
spineItem: e
|
|
2760
2777
|
}), this.generateCfiFromRange = (e, t) => this.transformGeneratedCfi({
|
|
2761
|
-
cfi:
|
|
2778
|
+
cfi: Di(e, t),
|
|
2762
2779
|
spineItem: t
|
|
2763
|
-
}), this.resolveCfi = (e) =>
|
|
2780
|
+
}), this.resolveCfi = (e) => Ni({
|
|
2764
2781
|
...e,
|
|
2765
2782
|
cfi: this.transformForResolve(e.cfi),
|
|
2766
2783
|
spineItemsManager: this.spineItemsManager
|
|
@@ -2773,17 +2790,17 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2773
2790
|
}));
|
|
2774
2791
|
return t.cfi;
|
|
2775
2792
|
}
|
|
2776
|
-
},
|
|
2793
|
+
}, Fi = (e) => e.spineItems.every((t) => (t.renditionLayout ?? e.renditionLayout) === "pre-paginated"), Ii = class {
|
|
2777
2794
|
constructor() {
|
|
2778
2795
|
this.navigationSubject = new p(1), this.positionSubject = new p(1), this.viewportStateSubject = new l("free"), this.paginationSubject = new p(1), this.pagination$ = this.paginationSubject.asObservable(), this.viewportState$ = this.viewportStateSubject.asObservable(), this.viewportFree$ = this.viewportState$.pipe(x((e) => e === "free")), this.viewportBusy$ = this.viewportState$.pipe(x((e) => e === "busy")), this.navigation$ = this.navigationSubject.asObservable(), this.position$ = this.positionSubject.asObservable();
|
|
2779
2796
|
}
|
|
2780
|
-
},
|
|
2797
|
+
}, Li = class extends U {
|
|
2781
2798
|
constructor(e, t = globalThis.document) {
|
|
2782
2799
|
super({
|
|
2783
2800
|
manifest: e,
|
|
2784
2801
|
assumedRenditionLayout: e.renditionLayout ?? "reflowable",
|
|
2785
|
-
isFullyPrePaginated:
|
|
2786
|
-
}), this.bridgeEvent = new
|
|
2802
|
+
isFullyPrePaginated: Fi(e)
|
|
2803
|
+
}), this.bridgeEvent = new Ii(), this.isRTL = () => this.value.manifest.readingDirection === "rtl", this.document = t;
|
|
2787
2804
|
}
|
|
2788
2805
|
update(e) {
|
|
2789
2806
|
this.mergeCompare(e);
|
|
@@ -2794,7 +2811,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2794
2811
|
get readingDirection() {
|
|
2795
2812
|
return this.manifest.readingDirection;
|
|
2796
2813
|
}
|
|
2797
|
-
},
|
|
2814
|
+
}, Ri = class extends U {
|
|
2798
2815
|
constructor(e, t) {
|
|
2799
2816
|
super({
|
|
2800
2817
|
supportedPageTurnAnimation: [
|
|
@@ -2821,7 +2838,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2821
2838
|
supportedPageTurnDirection: r === "scrollable" ? ["vertical"] : n === "reflowable" ? ["horizontal"] : ["horizontal", "vertical"]
|
|
2822
2839
|
})), j(this.destroy$)).subscribe(this.next.bind(this));
|
|
2823
2840
|
}
|
|
2824
|
-
},
|
|
2841
|
+
}, zi = class {
|
|
2825
2842
|
constructor() {
|
|
2826
2843
|
this._hooks = [], this._hookExecutions = [];
|
|
2827
2844
|
}
|
|
@@ -2906,16 +2923,16 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2906
2923
|
let i = r.map(({ destroyFn: e }) => e());
|
|
2907
2924
|
return v(i);
|
|
2908
2925
|
}
|
|
2909
|
-
},
|
|
2926
|
+
}, Bi = "[data-prose-reader-spine-item][data-is-ready=false]{pointer-events:none;-webkit-user-select:none;user-select:none}.prose-reader-enhancer-loading-container{width:100%;height:100%;max-width:var(--prose-reader-absolute-viewport-width,100%);text-align:center;color:#cacaca;z-index:1;background-color:#fff;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}[data-prose-reader-spine-item][data-is-ready=true] .prose-reader-enhancer-loading-container{visibility:hidden;z-index:0}.prose-reader-enhancer-loading-logo{font-size:4em}.prose-reader-enhancer-loading-details{text-overflow:ellipsis;white-space:nowrap;width:80%;max-width:300px;font-size:1.2em;overflow:hidden}[data-prose-reader-scroll-navigator][data-prose-reader-zooming=true]{overflow:scroll}[data-prose-reader-scroll-navigator][data-prose-reader-zooming=true][data-prose-reader-zooming-direction=down]{overflow-x:auto}[data-prose-reader-scroll-navigator]{width:100%;height:100%;position:relative;overflow:hidden scroll}[data-prose-reader-viewport]{background-color:#fff;width:100%;height:100%;position:relative}.prose-reader-reader{background-color:#fff;position:relative;overflow:hidden}", Vi = (e) => ({
|
|
2910
2927
|
x: -e.x,
|
|
2911
2928
|
y: -e.y
|
|
2912
|
-
}),
|
|
2929
|
+
}), Hi = (e) => e instanceof DOMMatrix ? new J({
|
|
2913
2930
|
x: -e.e,
|
|
2914
2931
|
y: -e.f
|
|
2915
2932
|
}) : new J({
|
|
2916
2933
|
x: -e.x,
|
|
2917
2934
|
y: -e.y
|
|
2918
|
-
}),
|
|
2935
|
+
}), Ui = L.namespace("navigation/ControlledNavigationController"), Wi = class extends Q {
|
|
2919
2936
|
constructor(e, t, n, r, i) {
|
|
2920
2937
|
super(), this.settings = e, this.hookManager = t, this.context = n, this.spine = r, this.viewport = i, this.navigateSubject = new m(), this.isActive = () => this.settings.values.computedPageTurnMode === "controlled", this.getNavigationVisibleArea = () => this.viewport.absoluteViewport, this.element$ = new l(n.document.createElement("div"));
|
|
2921
2938
|
let o = this.spine.element$.pipe(x(K), N(this.element$), M(([e, t]) => {
|
|
@@ -2928,8 +2945,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2928
2945
|
e.values.computedPageTurnMode === "scrollable" ? z(t.style, "display", "contents") : z(t.style, "display", "block");
|
|
2929
2946
|
}));
|
|
2930
2947
|
this.layout$ = c.pipe(M(() => {
|
|
2931
|
-
|
|
2932
|
-
}), O()), this.isNavigating$ = this.navigateSubject.pipe(b((e, t) => a(e.position, t.position)), T(({ animation: t, position: n }) => (
|
|
2948
|
+
Ui.info("layout", e.values);
|
|
2949
|
+
}), O()), this.isNavigating$ = this.navigateSubject.pipe(b((e, t) => a(e.position, t.position)), T(({ animation: t, position: n }) => (Ui.info("Navigation requested", {
|
|
2933
2950
|
animation: t,
|
|
2934
2951
|
position: n
|
|
2935
2952
|
}), {
|
|
@@ -2939,25 +2956,25 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2939
2956
|
position: n
|
|
2940
2957
|
})), A((t) => {
|
|
2941
2958
|
let n = this.element$.getValue();
|
|
2942
|
-
return z(n.style, "transition", "none"), z(n.style, "opacity", "1"), E(D(!0), D(null).pipe(
|
|
2959
|
+
return z(n.style, "transition", "none"), z(n.style, "opacity", "1"), E(D(!0), D(null).pipe(de(() => {
|
|
2943
2960
|
if (t?.type !== "manualAdjust") return D(!1);
|
|
2944
2961
|
let n = t.animation === "snap" ? e.values.snapAnimationDuration : e.values.computedPageTurnAnimationDuration, r = t.animation === "snap" ? "slide" : e.values.computedPageTurnAnimation;
|
|
2945
|
-
return D(t).pipe(t.shouldAnimate ?
|
|
2962
|
+
return D(t).pipe(t.shouldAnimate ? ae(1, h) : le, M((e) => {
|
|
2946
2963
|
let i = this.element$.getValue();
|
|
2947
2964
|
e.shouldAnimate ? r === "fade" ? (z(i.style, "transition", `opacity ${n / 2}ms`), z(i.style, "opacity", "0")) : (t.animation === "snap" || r === "slide") && (z(i.style, "transition", `transform ${n}ms`), z(i.style, "opacity", "1")) : (z(i.style, "transition", "none"), z(i.style, "opacity", "1"));
|
|
2948
2965
|
}), M((e) => {
|
|
2949
2966
|
r !== "fade" && this.applyNavigationPosition(e.position);
|
|
2950
|
-
}), t.shouldAnimate ?
|
|
2967
|
+
}), t.shouldAnimate ? ae(n / 2, h) : le, M((e) => {
|
|
2951
2968
|
let t = this.element$.getValue();
|
|
2952
2969
|
r === "fade" && (this.applyNavigationPosition(e.position), z(t.style, "opacity", "1"));
|
|
2953
|
-
}), t.shouldAnimate ?
|
|
2970
|
+
}), t.shouldAnimate ? ae(n / 2, h) : le, M((e) => {
|
|
2954
2971
|
r === "fade" && this.applyNavigationPosition(e.position);
|
|
2955
2972
|
}));
|
|
2956
2973
|
}), T(() => !1)));
|
|
2957
|
-
}),
|
|
2974
|
+
}), me(!1), k(1)), E(o, this.isNavigating$, this.layout$).pipe(j(this.destroy$)).subscribe();
|
|
2958
2975
|
}
|
|
2959
2976
|
applyNavigationPosition(e) {
|
|
2960
|
-
let t = this.element$.getValue(), n =
|
|
2977
|
+
let t = this.element$.getValue(), n = Vi(e);
|
|
2961
2978
|
z(t.style, "transform", `translate(${n.x}px, ${n.y}px)`), this.hookManager.execute("onViewportOffsetAdjust", void 0);
|
|
2962
2979
|
}
|
|
2963
2980
|
navigate(e) {
|
|
@@ -2971,22 +2988,22 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2971
2988
|
return !n || n === "none" ? new J({
|
|
2972
2989
|
x: 0,
|
|
2973
2990
|
y: 0
|
|
2974
|
-
}) :
|
|
2991
|
+
}) : Hi(new DOMMatrix(n));
|
|
2975
2992
|
}
|
|
2976
|
-
},
|
|
2993
|
+
}, Gi = () => (e) => e.pipe(T(({ navigation: e, pagination: t, ...n }) => ({
|
|
2977
2994
|
navigation: {
|
|
2978
2995
|
...e,
|
|
2979
2996
|
paginationBeginCfi: t.begin.cfi
|
|
2980
2997
|
},
|
|
2981
2998
|
...n
|
|
2982
|
-
}))),
|
|
2999
|
+
}))), Ki = (e, t, n) => e.bridgeEvent.pagination$.pipe(N(t), x(([e, t]) => e.navigationId === t.id), A(([e, t]) => (n.spineItemsManager.get(t.spineItem)?.isReady$.pipe(S()) ?? D(!1)).pipe(x((e) => e), T(() => ({
|
|
2983
3000
|
pagination: e,
|
|
2984
3001
|
navigation: t
|
|
2985
|
-
})))),
|
|
3002
|
+
})))), Gi(), b((e, t) => e.navigation.paginationBeginCfi === t.navigation.paginationBeginCfi), T(({ navigation: e }) => ({
|
|
2986
3003
|
...e,
|
|
2987
3004
|
meta: { triggeredBy: "pagination" },
|
|
2988
3005
|
requestedPosition: e.position
|
|
2989
|
-
}))),
|
|
3006
|
+
}))), qi = ({ navigationResolver: e, getNavigationVisibleArea: t }) => (n) => n.pipe(T(([n, r]) => {
|
|
2990
3007
|
let i = n.position, a = i ? t() : void 0, o = i && a ? e.clampPositionInSpine(i, a) : void 0;
|
|
2991
3008
|
return {
|
|
2992
3009
|
previousNavigation: r,
|
|
@@ -3001,7 +3018,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3001
3018
|
position: o
|
|
3002
3019
|
}
|
|
3003
3020
|
};
|
|
3004
|
-
})),
|
|
3021
|
+
})), Ji = ({ navigationResolver: e }) => (t) => t.pipe(T((t) => {
|
|
3005
3022
|
if (t.navigation.cfi) {
|
|
3006
3023
|
let n = e.getNavigationForCfi(t.navigation.cfi);
|
|
3007
3024
|
if (n) return {
|
|
@@ -3013,8 +3030,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3013
3030
|
};
|
|
3014
3031
|
}
|
|
3015
3032
|
return t;
|
|
3016
|
-
})),
|
|
3017
|
-
let i =
|
|
3033
|
+
})), Yi = ({ navigation: e, previousNavigation: t, settings: n }) => e.directionFromLastNavigation ? e.directionFromLastNavigation : e.url !== void 0 || e.cfi !== void 0 ? "anchor" : t.spineItem === void 0 || e.spineItem || !e.position ? "forward" : n.values.computedPageTurnDirection === "vertical" ? e.position.y > t.position.y || e.position.y === t.position.y && t.directionFromLastNavigation !== "backward" ? "forward" : "backward" : Math.abs(e.position.x) > Math.abs(t.position.x) || e.position.x === t.position.x && t.directionFromLastNavigation !== "backward" ? "forward" : "backward", Xi = ({ context: e, settings: t }) => (n) => n.pipe(T(({ navigation: n, previousNavigation: r }) => {
|
|
3034
|
+
let i = Yi({
|
|
3018
3035
|
context: e,
|
|
3019
3036
|
navigation: n,
|
|
3020
3037
|
previousNavigation: r,
|
|
@@ -3028,7 +3045,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3028
3045
|
},
|
|
3029
3046
|
direction: i
|
|
3030
3047
|
};
|
|
3031
|
-
})),
|
|
3048
|
+
})), Zi = ({ spineItemsManager: e, navigationResolver: t, settings: n, viewport: r }) => (i) => i.pipe(T(({ navigation: i, ...a }) => {
|
|
3032
3049
|
let o = e.get(i.spineItem);
|
|
3033
3050
|
if (i.position) return n.values.computedPageTurnMode === "scrollable" ? {
|
|
3034
3051
|
navigation: {
|
|
@@ -3061,7 +3078,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3061
3078
|
},
|
|
3062
3079
|
...a
|
|
3063
3080
|
};
|
|
3064
|
-
})),
|
|
3081
|
+
})), Qi = ({ settings: e, spineItemsManager: t, navigationResolver: n, spineLocator: r, cfi: i }) => (a) => {
|
|
3065
3082
|
let o = (a) => {
|
|
3066
3083
|
let { position: o, spineItem: s, cfi: c, directionFromLastNavigation: l } = a, { navigationSnapThreshold: u, computedPageTurnMode: d } = e.values;
|
|
3067
3084
|
if (s !== void 0) {
|
|
@@ -3107,7 +3124,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3107
3124
|
...n
|
|
3108
3125
|
};
|
|
3109
3126
|
}));
|
|
3110
|
-
},
|
|
3127
|
+
}, $i = ({ spine: e }) => (t) => t.pipe(A(({ navigation: t, ...n }) => {
|
|
3111
3128
|
let r = e.getSpineItemSpineLayoutInfo(t.spineItem), i = e.spineItemsManager.get(t.spineItem);
|
|
3112
3129
|
return (i?.isReady$ ?? D(!1)).pipe(S(), T((e) => ({
|
|
3113
3130
|
navigation: {
|
|
@@ -3121,7 +3138,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3121
3138
|
},
|
|
3122
3139
|
...n
|
|
3123
3140
|
})));
|
|
3124
|
-
})),
|
|
3141
|
+
})), ea = ({ settings: e, spineItemsManager: t, spineLocator: n, navigationResolver: r }) => (i) => {
|
|
3125
3142
|
let a = (i) => {
|
|
3126
3143
|
let { navigationSnapThreshold: a, computedPageTurnMode: o } = e.values, s = t.get(i.spineItem);
|
|
3127
3144
|
if (s && i.position) {
|
|
@@ -3158,7 +3175,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3158
3175
|
},
|
|
3159
3176
|
...t
|
|
3160
3177
|
})));
|
|
3161
|
-
},
|
|
3178
|
+
}, ta = ({ navigationResolver: e }) => (t) => t.pipe(T((t) => {
|
|
3162
3179
|
if (t.navigation.url) {
|
|
3163
3180
|
let n = e.getNavigationForUrl(t.navigation.url);
|
|
3164
3181
|
if (n) return {
|
|
@@ -3171,7 +3188,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3171
3188
|
};
|
|
3172
3189
|
}
|
|
3173
3190
|
return t;
|
|
3174
|
-
})),
|
|
3191
|
+
})), na = class {
|
|
3175
3192
|
constructor() {
|
|
3176
3193
|
this.isLockedSubject = new l(0), this.isLocked$ = this.isLockedSubject.pipe(T((e) => !!e), b());
|
|
3177
3194
|
}
|
|
@@ -3181,7 +3198,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3181
3198
|
e || (e = !0, this.isLockedSubject.next(this.isLockedSubject.getValue() - 1));
|
|
3182
3199
|
};
|
|
3183
3200
|
}
|
|
3184
|
-
},
|
|
3201
|
+
}, ra = ({ spineLocator: e, navigation: t, navigationResolver: n, spineItemsManager: r, spine: i, cfiManager: a }) => {
|
|
3185
3202
|
let o = r.get(t.spineItem);
|
|
3186
3203
|
return o ? o.isReady$.pipe(S(), T((r) => {
|
|
3187
3204
|
let s = i.getSpineItemSpineLayoutInfo(o), c = e.isPositionWithinSpineItem(t.position, o), l = s.width - (t.spineItemWidth ?? 0), u = s.height - (t.spineItemHeight ?? 0), d = l !== 0 || u !== 0;
|
|
@@ -3221,7 +3238,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3221
3238
|
x: 0,
|
|
3222
3239
|
y: 0
|
|
3223
3240
|
}));
|
|
3224
|
-
},
|
|
3241
|
+
}, ia = ({ navigation: e, spineLocator: t, spineItemsManager: n, settings: r, navigationResolver: i, spine: a }) => {
|
|
3225
3242
|
let { spineItem: o } = e, s = n.get(o);
|
|
3226
3243
|
if (!s) return new J({
|
|
3227
3244
|
x: 0,
|
|
@@ -3272,21 +3289,21 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3272
3289
|
}
|
|
3273
3290
|
}
|
|
3274
3291
|
return e.position;
|
|
3275
|
-
},
|
|
3292
|
+
}, aa = ({ navigation: e, spineItemsManager: t, settings: n, spineLocator: r, navigationResolver: i, spine: a, cfiManager: o }) => n.values.computedPageTurnMode === "scrollable" ? D(ia({
|
|
3276
3293
|
navigation: e,
|
|
3277
3294
|
spineLocator: r,
|
|
3278
3295
|
navigationResolver: i,
|
|
3279
3296
|
settings: n,
|
|
3280
3297
|
spineItemsManager: t,
|
|
3281
3298
|
spine: a
|
|
3282
|
-
})) :
|
|
3299
|
+
})) : ra({
|
|
3283
3300
|
navigation: e,
|
|
3284
3301
|
spineLocator: r,
|
|
3285
3302
|
navigationResolver: i,
|
|
3286
3303
|
spineItemsManager: t,
|
|
3287
3304
|
spine: a,
|
|
3288
3305
|
cfiManager: o
|
|
3289
|
-
}),
|
|
3306
|
+
}), oa = ({ settings: e, navigationResolver: t, context: n, spine: r, cfiManager: i }) => (a) => a.pipe(A((a) => aa({
|
|
3290
3307
|
spineLocator: r.locator,
|
|
3291
3308
|
navigation: a.navigation,
|
|
3292
3309
|
navigationResolver: t,
|
|
@@ -3302,7 +3319,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3302
3319
|
...a.navigation,
|
|
3303
3320
|
position: e
|
|
3304
3321
|
}
|
|
3305
|
-
}))))),
|
|
3322
|
+
}))))), sa = L.namespace("navigation/InternalNavigator"), ca = (e, t) => e === t || !!e && !!t && e.x === t.x && e.y === t.y, la = (e, t) => e === t || !!e && !!t && e.width === t.width && e.height === t.height, ua = (e, t) => e.id === t.id && ca(e.position, t.position) && ca(e.requestedPosition, t.requestedPosition) && la(e.requestedVisibleArea, t.requestedVisibleArea), da = class extends Q {
|
|
3306
3323
|
constructor(e, t, n, r, i, a, o, s, c, u) {
|
|
3307
3324
|
super(), this.settings = e, this.context = t, this.userNavigation$ = n, this.getActiveNavigationModeController = r, this.navigationModeLayout$ = i, this.navigationResolver = a, this.spine = o, this.viewport = s, this.cfiManager = c, this.isUserInteractionLocked$ = u, this.navigationSubject = new l({
|
|
3308
3325
|
animation: !1,
|
|
@@ -3324,40 +3341,40 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3324
3341
|
requestedPosition: n,
|
|
3325
3342
|
requestedVisibleArea: r,
|
|
3326
3343
|
triggeredBy: i.triggeredBy
|
|
3327
|
-
})), b(
|
|
3328
|
-
let d = n.pipe(N(this.navigationSubject),
|
|
3344
|
+
})), b(ua), k(1)), this.locker = new na();
|
|
3345
|
+
let d = n.pipe(N(this.navigationSubject), qi({
|
|
3329
3346
|
navigationResolver: a,
|
|
3330
3347
|
getNavigationVisibleArea: () => r().getNavigationVisibleArea()
|
|
3331
|
-
}),
|
|
3348
|
+
}), ta({ navigationResolver: a }), Ji({ navigationResolver: a }), Xi({
|
|
3332
3349
|
context: t,
|
|
3333
3350
|
settings: e
|
|
3334
|
-
}),
|
|
3351
|
+
}), Qi({
|
|
3335
3352
|
context: t,
|
|
3336
3353
|
cfi: c,
|
|
3337
3354
|
navigationResolver: a,
|
|
3338
3355
|
settings: e,
|
|
3339
3356
|
spineItemsManager: o.spineItemsManager,
|
|
3340
3357
|
spineLocator: o.locator
|
|
3341
|
-
}),
|
|
3358
|
+
}), ea({
|
|
3342
3359
|
navigationResolver: a,
|
|
3343
3360
|
settings: e,
|
|
3344
3361
|
spineItemsManager: o.spineItemsManager,
|
|
3345
3362
|
spineLocator: o.locator
|
|
3346
|
-
}),
|
|
3363
|
+
}), $i({ spine: o })).pipe(Zi({
|
|
3347
3364
|
navigationResolver: a,
|
|
3348
3365
|
spineItemsManager: o.spineItemsManager,
|
|
3349
3366
|
settings: e,
|
|
3350
3367
|
viewport: s
|
|
3351
3368
|
}), N(u), A(([n, r]) => {
|
|
3352
3369
|
let i = n.navigation.cfi || n.navigation.url || e.values.computedPageTurnMode === "scrollable" || r;
|
|
3353
|
-
return D(n).pipe(i ?
|
|
3370
|
+
return D(n).pipe(i ? le : oa({
|
|
3354
3371
|
navigationResolver: a,
|
|
3355
3372
|
settings: e,
|
|
3356
3373
|
spine: o,
|
|
3357
3374
|
context: t,
|
|
3358
3375
|
cfiManager: c
|
|
3359
3376
|
}));
|
|
3360
|
-
}),
|
|
3377
|
+
}), ea({
|
|
3361
3378
|
spineItemsManager: o.spineItemsManager,
|
|
3362
3379
|
spineLocator: o.locator,
|
|
3363
3380
|
settings: e,
|
|
@@ -3367,13 +3384,13 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3367
3384
|
return u.pipe(x((e) => !e), S(), T(() => ({ navigation: {
|
|
3368
3385
|
...e,
|
|
3369
3386
|
animation: "snap"
|
|
3370
|
-
} })),
|
|
3387
|
+
} })), ce(() => {
|
|
3371
3388
|
t();
|
|
3372
3389
|
}), j(d));
|
|
3373
3390
|
}), O()), p = E(i, o.layout$).pipe(A(() => D(null).pipe(A(() => u.pipe(x((e) => !e), S())), T(() => ({ navigation: {
|
|
3374
3391
|
...this.navigationSubject.getValue(),
|
|
3375
3392
|
animation: !1
|
|
3376
|
-
} })), j(E(f, d))))), m = E(p, f).pipe(
|
|
3393
|
+
} })), j(E(f, d))))), m = E(p, f).pipe(oa({
|
|
3377
3394
|
navigationResolver: a,
|
|
3378
3395
|
settings: e,
|
|
3379
3396
|
context: t,
|
|
@@ -3383,19 +3400,19 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3383
3400
|
...e,
|
|
3384
3401
|
meta: { triggeredBy: "restoration" },
|
|
3385
3402
|
requestedPosition: e.position
|
|
3386
|
-
} })),
|
|
3403
|
+
} })), Qi({
|
|
3387
3404
|
context: t,
|
|
3388
3405
|
cfi: c,
|
|
3389
3406
|
navigationResolver: a,
|
|
3390
3407
|
settings: e,
|
|
3391
3408
|
spineItemsManager: o.spineItemsManager,
|
|
3392
3409
|
spineLocator: o.locator
|
|
3393
|
-
}),
|
|
3410
|
+
}), $i({ spine: o }), ea({
|
|
3394
3411
|
spineItemsManager: o.spineItemsManager,
|
|
3395
3412
|
spineLocator: o.locator,
|
|
3396
3413
|
settings: e,
|
|
3397
3414
|
navigationResolver: a
|
|
3398
|
-
}), T(({ navigation: e }) => e), O()), h =
|
|
3415
|
+
}), T(({ navigation: e }) => e), O()), h = Ki(t, this.navigationSubject, o);
|
|
3399
3416
|
E(m, d, h).pipe(N(this.navigationSubject), (e) => e.pipe(M(([e]) => {
|
|
3400
3417
|
let t = e.type === "scroll", n = e.meta.triggeredBy === "pagination", r = e.meta.triggeredBy === "restoration";
|
|
3401
3418
|
if (t && !r || n) return;
|
|
@@ -3405,7 +3422,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3405
3422
|
};
|
|
3406
3423
|
this.getActiveNavigationModeController().navigate(i);
|
|
3407
3424
|
})), (e) => e.pipe(M(([e, t]) => {
|
|
3408
|
-
|
|
3425
|
+
sa.info(`navigation updated from ${e.meta.triggeredBy} of type ${e.type}`, {
|
|
3409
3426
|
previousNavigation: t,
|
|
3410
3427
|
currentNavigation: e
|
|
3411
3428
|
}), this.navigationSubject.next(e);
|
|
@@ -3414,24 +3431,24 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3414
3431
|
get navigation() {
|
|
3415
3432
|
return this.navigationSubject.getValue();
|
|
3416
3433
|
}
|
|
3417
|
-
},
|
|
3434
|
+
}, fa = (e, t, n) => {
|
|
3418
3435
|
let r = n - e, i = t * e * n / (n || 1);
|
|
3419
3436
|
return Math.max(0, Math.min(r, i));
|
|
3420
|
-
},
|
|
3421
|
-
let r =
|
|
3437
|
+
}, pa = (e, t) => (t || 0) === 0 || (e || 0) === 0 ? 1 : Math.floor(Math.max(1, e / t)), ma = (e, t, n) => {
|
|
3438
|
+
let r = pa(n, t), i = [...Array(r)].map((e, n) => n * t);
|
|
3422
3439
|
return e >= r * t ? i[i.length - 1] || 0 : i.find((n) => e < n + t) || 0;
|
|
3423
|
-
},
|
|
3440
|
+
}, ha = (e, t, n) => {
|
|
3424
3441
|
let r = [...Array(n)].map((e, n) => n * t);
|
|
3425
3442
|
return e <= 0 || n === 0 ? 0 : e >= n * t ? n - 1 : r.findIndex((n) => e < n + t) ?? 0;
|
|
3426
|
-
},
|
|
3443
|
+
}, ga = ({ itemWidth: e, itemHeight: t, spineItemPosition: n }) => new q({
|
|
3427
3444
|
x: Math.min(e, Math.max(0, n.x)),
|
|
3428
3445
|
y: Math.min(t, Math.max(0, n.y))
|
|
3429
|
-
}),
|
|
3430
|
-
let l =
|
|
3446
|
+
}), _a = ({ itemHeight: e, itemWidth: t, isUsingVerticalWriting: n, pageWidth: r, pageHeight: i, pageTurnDirection: a, pageTurnMode: o }) => a === "vertical" && o === "scrollable" ? 1 : n || a === "vertical" ? pa(e, i) : pa(t, r), va = ({ itemWidth: e, itemHeight: t, position: n, isUsingVerticalWriting: r, pageWidth: i, pageHeight: a, pageTurnDirection: o, pageTurnMode: s, isRTL: c }) => {
|
|
3447
|
+
let l = ga({
|
|
3431
3448
|
spineItemPosition: n,
|
|
3432
3449
|
itemHeight: t,
|
|
3433
3450
|
itemWidth: e
|
|
3434
|
-
}).x, u =
|
|
3451
|
+
}).x, u = _a({
|
|
3435
3452
|
isUsingVerticalWriting: r,
|
|
3436
3453
|
itemHeight: t,
|
|
3437
3454
|
itemWidth: e,
|
|
@@ -3440,15 +3457,15 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3440
3457
|
pageTurnDirection: o,
|
|
3441
3458
|
pageTurnMode: s
|
|
3442
3459
|
});
|
|
3443
|
-
if (r) return
|
|
3444
|
-
let d =
|
|
3460
|
+
if (r) return ha(n.y, a, u);
|
|
3461
|
+
let d = ha(l, i, u);
|
|
3445
3462
|
return c ? u - 1 - d : d;
|
|
3446
|
-
},
|
|
3463
|
+
}, ya = ({ pageIndex: e, itemLayout: t, context: n, isUsingVerticalWriting: r, viewport: i }) => {
|
|
3447
3464
|
if (r) return new q({
|
|
3448
3465
|
x: 0,
|
|
3449
|
-
y:
|
|
3466
|
+
y: fa(i.pageSize.height, e, t.height)
|
|
3450
3467
|
});
|
|
3451
|
-
let a =
|
|
3468
|
+
let a = fa(i.pageSize.width, e, t.width);
|
|
3452
3469
|
return n.isRTL() ? new q({
|
|
3453
3470
|
x: t.width - a - i.pageSize.width,
|
|
3454
3471
|
y: 0
|
|
@@ -3456,26 +3473,26 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3456
3473
|
x: a,
|
|
3457
3474
|
y: 0
|
|
3458
3475
|
});
|
|
3459
|
-
},
|
|
3476
|
+
}, ba = ({ context: e, settings: t, viewport: n }) => {
|
|
3460
3477
|
let r = (e, t, r) => {
|
|
3461
3478
|
let i;
|
|
3462
|
-
e?.nodeName === "img" || e?.textContent === "" && e.nodeType === Node.ELEMENT_NODE ? i = e.getBoundingClientRect().x : e && (i = (e ?
|
|
3479
|
+
e?.nodeName === "img" || e?.textContent === "" && e.nodeType === Node.ELEMENT_NODE ? i = e.getBoundingClientRect().x : e && (i = (e ? We(e, t) : void 0)?.getBoundingClientRect().x || i);
|
|
3463
3480
|
let a = r.layoutInfo?.width || 0, o = n.pageSize.width;
|
|
3464
3481
|
if (i !== void 0) return new q({
|
|
3465
|
-
x:
|
|
3482
|
+
x: ma(i, o, a),
|
|
3466
3483
|
y: 0
|
|
3467
3484
|
});
|
|
3468
3485
|
};
|
|
3469
3486
|
return {
|
|
3470
3487
|
getSpineItemPositionFromNode: r,
|
|
3471
|
-
getSpineItemPositionFromPageIndex: ({ pageIndex: t, spineItem: r }) =>
|
|
3488
|
+
getSpineItemPositionFromPageIndex: ({ pageIndex: t, spineItem: r }) => ya({
|
|
3472
3489
|
context: e,
|
|
3473
3490
|
isUsingVerticalWriting: !!r.isUsingVerticalWriting(),
|
|
3474
3491
|
itemLayout: r.layoutInfo,
|
|
3475
3492
|
pageIndex: t,
|
|
3476
3493
|
viewport: n
|
|
3477
3494
|
}),
|
|
3478
|
-
getSpineItemPageIndexFromPosition: (r) =>
|
|
3495
|
+
getSpineItemPageIndexFromPosition: (r) => va({
|
|
3479
3496
|
...r,
|
|
3480
3497
|
isRTL: e.isRTL(),
|
|
3481
3498
|
pageWidth: n.pageSize.width,
|
|
@@ -3485,7 +3502,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3485
3502
|
}),
|
|
3486
3503
|
getSpineItemPageIndexFromNode: (i, a, o) => {
|
|
3487
3504
|
let s = r(i, a, o), { height: c, width: l } = o.layoutInfo;
|
|
3488
|
-
return s ?
|
|
3505
|
+
return s ? va({
|
|
3489
3506
|
isUsingVerticalWriting: !!o.isUsingVerticalWriting(),
|
|
3490
3507
|
position: s,
|
|
3491
3508
|
itemHeight: c,
|
|
@@ -3500,35 +3517,35 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3500
3517
|
getSpineItemClosestPositionFromUnsafePosition: (e, t) => {
|
|
3501
3518
|
let { width: r, height: i } = t.layoutInfo;
|
|
3502
3519
|
return new q({
|
|
3503
|
-
x:
|
|
3504
|
-
y:
|
|
3520
|
+
x: ma(e.x, n.pageSize.width, r),
|
|
3521
|
+
y: ma(e.y, n.pageSize.height, i)
|
|
3505
3522
|
});
|
|
3506
3523
|
},
|
|
3507
3524
|
getSpineItemPagePositionFromSpineItemPosition: (t, r, i) => {
|
|
3508
3525
|
let { width: a, height: o } = i.layoutInfo, s = n.pageSize.width, c = n.pageSize.height;
|
|
3509
3526
|
if (i.isUsingVerticalWriting()) {
|
|
3510
|
-
let e =
|
|
3511
|
-
return new
|
|
3527
|
+
let e = fa(c, r, o);
|
|
3528
|
+
return new un({
|
|
3512
3529
|
x: t.x,
|
|
3513
3530
|
y: t.y - e
|
|
3514
3531
|
});
|
|
3515
3532
|
}
|
|
3516
|
-
let l =
|
|
3533
|
+
let l = fa(s, r, a);
|
|
3517
3534
|
if (e.isRTL()) {
|
|
3518
3535
|
let e = a - (r + 1) * s;
|
|
3519
|
-
return new
|
|
3536
|
+
return new un({
|
|
3520
3537
|
x: t.x - Math.max(0, e),
|
|
3521
3538
|
y: t.y
|
|
3522
3539
|
});
|
|
3523
3540
|
}
|
|
3524
|
-
return new
|
|
3541
|
+
return new un({
|
|
3525
3542
|
x: t.x - l,
|
|
3526
3543
|
y: t.y
|
|
3527
3544
|
});
|
|
3528
3545
|
}
|
|
3529
3546
|
};
|
|
3530
|
-
},
|
|
3531
|
-
let r =
|
|
3547
|
+
}, xa = ({ context: e, settings: t, viewport: n }) => {
|
|
3548
|
+
let r = ba({
|
|
3532
3549
|
context: e,
|
|
3533
3550
|
settings: t,
|
|
3534
3551
|
viewport: n
|
|
@@ -3547,7 +3564,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3547
3564
|
y: 0
|
|
3548
3565
|
})
|
|
3549
3566
|
};
|
|
3550
|
-
},
|
|
3567
|
+
}, Sa = ({ size: e, isRTL: t, spineItemsManager: n, spine: r }) => {
|
|
3551
3568
|
let i = n.get(n.items.length - 1);
|
|
3552
3569
|
if (!i) return;
|
|
3553
3570
|
let a = r.getSpineItemSpineLayoutInfo(i), o = Math.max(0, a.bottom - e.height);
|
|
@@ -3566,8 +3583,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3566
3583
|
yMin: 0,
|
|
3567
3584
|
yMax: o
|
|
3568
3585
|
};
|
|
3569
|
-
},
|
|
3570
|
-
let a =
|
|
3586
|
+
}, Ca = ({ position: e, size: t, isRTL: n, spineItemsManager: r, spine: i }) => {
|
|
3587
|
+
let a = Sa({
|
|
3571
3588
|
size: t,
|
|
3572
3589
|
isRTL: n,
|
|
3573
3590
|
spineItemsManager: r,
|
|
@@ -3582,8 +3599,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3582
3599
|
x: n ? Math.max(a.xMin, Math.min(a.xMax, e.x)) : Math.min(Math.max(a.xMin, e.x), a.xMax),
|
|
3583
3600
|
y: o
|
|
3584
3601
|
});
|
|
3585
|
-
},
|
|
3586
|
-
let a =
|
|
3602
|
+
}, wa = ({ position: e, size: t, isRTL: n, spineItemsManager: r, spine: i }) => {
|
|
3603
|
+
let a = Sa({
|
|
3587
3604
|
size: t,
|
|
3588
3605
|
isRTL: n,
|
|
3589
3606
|
spineItemsManager: r,
|
|
@@ -3609,7 +3626,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3609
3626
|
x: a,
|
|
3610
3627
|
y: i
|
|
3611
3628
|
});
|
|
3612
|
-
},
|
|
3629
|
+
}, Ta = ({ viewportPosition: e, spineLocator: t, spineItemNavigationResolver: n, viewport: r }) => {
|
|
3613
3630
|
let i = t.getSpineItemFromPosition(e);
|
|
3614
3631
|
if (i) {
|
|
3615
3632
|
let a = t.getSpineItemPositionFromSpinePosition(e, i), o = n.getNavigationForPosition(i, a);
|
|
@@ -3626,9 +3643,9 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3626
3643
|
x: 0,
|
|
3627
3644
|
y: 0
|
|
3628
3645
|
});
|
|
3629
|
-
},
|
|
3646
|
+
}, Ea = ({ pageIndex: e, spineItemsManager: t, spineItemId: n, spineLocator: r, spineItemNavigationResolver: i, viewport: a }) => {
|
|
3630
3647
|
let o = t.get(n);
|
|
3631
|
-
if (!o) return
|
|
3648
|
+
if (!o) return Ta({
|
|
3632
3649
|
viewportPosition: new J({
|
|
3633
3650
|
x: e * a.pageSize.width,
|
|
3634
3651
|
y: 0
|
|
@@ -3649,7 +3666,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3649
3666
|
pageSizeWidth: a.pageSize.width,
|
|
3650
3667
|
visibleAreaRectWidth: a.absoluteViewport.width
|
|
3651
3668
|
});
|
|
3652
|
-
},
|
|
3669
|
+
}, Da = (e, t) => {
|
|
3653
3670
|
if (V(t, "iframe")) {
|
|
3654
3671
|
let n = t.contentDocument, r = e.trim();
|
|
3655
3672
|
if (!n || r.length === 0) return;
|
|
@@ -3663,11 +3680,11 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3663
3680
|
return;
|
|
3664
3681
|
}
|
|
3665
3682
|
}
|
|
3666
|
-
},
|
|
3667
|
-
let r =
|
|
3683
|
+
}, Oa = ({ anchor: e, spineItem: t, spine: n }) => {
|
|
3684
|
+
let r = Da(e, t.renderer.getDocumentFrame());
|
|
3668
3685
|
return r ? n.spineItemLocator.getSpineItemPositionFromNode(r, 0, t)?.x ?? 0 : 0;
|
|
3669
|
-
},
|
|
3670
|
-
let i =
|
|
3686
|
+
}, ka = ({ anchor: e, spineItem: t, spineLocator: n, spine: r }) => {
|
|
3687
|
+
let i = Oa({
|
|
3671
3688
|
anchor: e,
|
|
3672
3689
|
spineItem: t,
|
|
3673
3690
|
spine: r
|
|
@@ -3679,8 +3696,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3679
3696
|
}),
|
|
3680
3697
|
spineItem: t
|
|
3681
3698
|
});
|
|
3682
|
-
},
|
|
3683
|
-
position:
|
|
3699
|
+
}, Aa = ({ anchor: e, spineItem: t, spineLocator: n, spine: r, pageSizeWidth: i, visibleAreaRectWidth: a }) => $({
|
|
3700
|
+
position: ka({
|
|
3684
3701
|
anchor: e,
|
|
3685
3702
|
spineItem: t,
|
|
3686
3703
|
spineLocator: n,
|
|
@@ -3688,14 +3705,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3688
3705
|
}),
|
|
3689
3706
|
pageSizeWidth: i,
|
|
3690
3707
|
visibleAreaRectWidth: a
|
|
3691
|
-
}),
|
|
3708
|
+
}), ja = ({ spine: e, spineItemsManager: t, spineLocator: n, url: r, context: i, pageSizeWidth: a, visibleAreaRectWidth: o }) => {
|
|
3692
3709
|
try {
|
|
3693
3710
|
let s = r instanceof URL ? r : new URL(r), c = `${s.origin}${s.pathname}`, l = i.manifest.spineItems.find((e) => e.href === c);
|
|
3694
3711
|
if (l) {
|
|
3695
3712
|
let r = t.get(l.id);
|
|
3696
3713
|
if (r) return {
|
|
3697
3714
|
position: $({
|
|
3698
|
-
position:
|
|
3715
|
+
position: Aa({
|
|
3699
3716
|
anchor: s.hash,
|
|
3700
3717
|
spineItem: r,
|
|
3701
3718
|
spine: e,
|
|
@@ -3714,7 +3731,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3714
3731
|
console.error(e);
|
|
3715
3732
|
return;
|
|
3716
3733
|
}
|
|
3717
|
-
},
|
|
3734
|
+
}, Ma = ({ spineItem: e, spineItemPosition: t, spineLocator: n, spineItemLocator: r, viewport: i }) => {
|
|
3718
3735
|
let a = r.getSpineItemClosestPositionFromUnsafePosition(t, e);
|
|
3719
3736
|
return $({
|
|
3720
3737
|
position: n.getSpinePositionFromSpineItemPosition({
|
|
@@ -3724,14 +3741,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3724
3741
|
pageSizeWidth: i.pageSize.width,
|
|
3725
3742
|
visibleAreaRectWidth: i.absoluteViewport.width
|
|
3726
3743
|
});
|
|
3727
|
-
},
|
|
3728
|
-
let s =
|
|
3744
|
+
}, Na = "spineNavigator", Pa = ({ context: e, spineItemsManager: t, locator: n, settings: r, spine: i, viewport: a, cfi: o }) => {
|
|
3745
|
+
let s = xa({
|
|
3729
3746
|
context: e,
|
|
3730
3747
|
settings: r,
|
|
3731
3748
|
viewport: a
|
|
3732
3749
|
});
|
|
3733
3750
|
return {
|
|
3734
|
-
getNavigationForUrl: (r) =>
|
|
3751
|
+
getNavigationForUrl: (r) => ja({
|
|
3735
3752
|
context: e,
|
|
3736
3753
|
spineItemsManager: t,
|
|
3737
3754
|
spineLocator: n,
|
|
@@ -3740,14 +3757,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3740
3757
|
visibleAreaRectWidth: a.absoluteViewport.width,
|
|
3741
3758
|
spine: i
|
|
3742
3759
|
}),
|
|
3743
|
-
getNavigationForSpineItemPage: (e) =>
|
|
3760
|
+
getNavigationForSpineItemPage: (e) => Ea({
|
|
3744
3761
|
...e,
|
|
3745
3762
|
spineItemsManager: t,
|
|
3746
3763
|
spineItemNavigationResolver: s,
|
|
3747
3764
|
spineLocator: n,
|
|
3748
3765
|
viewport: a
|
|
3749
3766
|
}),
|
|
3750
|
-
getNavigationFromSpineItemPosition: (e) =>
|
|
3767
|
+
getNavigationFromSpineItemPosition: (e) => Ma({
|
|
3751
3768
|
...e,
|
|
3752
3769
|
spineItemLocator: n.spineItemLocator,
|
|
3753
3770
|
spineLocator: n,
|
|
@@ -3756,7 +3773,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3756
3773
|
getNavigationForCfi: (e) => {
|
|
3757
3774
|
let { node: t, offset: r = 0, spineItem: i } = o.resolveCfi({ cfi: e });
|
|
3758
3775
|
if (!i) {
|
|
3759
|
-
L.warn(
|
|
3776
|
+
L.warn(Na, `unable to detect item id from cfi ${e}`);
|
|
3760
3777
|
return;
|
|
3761
3778
|
}
|
|
3762
3779
|
let c = t ? s.getNavigationFromNode(i, t, r) : new q({
|
|
@@ -3794,14 +3811,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3794
3811
|
y: 0
|
|
3795
3812
|
});
|
|
3796
3813
|
},
|
|
3797
|
-
getNavigationForPosition: (e) =>
|
|
3814
|
+
getNavigationForPosition: (e) => Ta({
|
|
3798
3815
|
viewportPosition: e,
|
|
3799
3816
|
spineItemNavigationResolver: s,
|
|
3800
3817
|
spineLocator: n,
|
|
3801
3818
|
viewport: a
|
|
3802
3819
|
}),
|
|
3803
3820
|
getMostPredominantNavigationForPosition: (o) => {
|
|
3804
|
-
let c = r.values.computedPageTurnDirection, l = .5, u =
|
|
3821
|
+
let c = r.values.computedPageTurnDirection, l = .5, u = Ca({
|
|
3805
3822
|
position: new J({
|
|
3806
3823
|
x: c === "horizontal" ? o.x + a.absoluteViewport.width * l : 0,
|
|
3807
3824
|
y: c === "horizontal" ? 0 : o.y + a.absoluteViewport.height * l
|
|
@@ -3811,21 +3828,21 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3811
3828
|
spineItemsManager: t,
|
|
3812
3829
|
spine: i
|
|
3813
3830
|
});
|
|
3814
|
-
return
|
|
3831
|
+
return Ta({
|
|
3815
3832
|
spineItemNavigationResolver: s,
|
|
3816
3833
|
spineLocator: n,
|
|
3817
3834
|
viewportPosition: u,
|
|
3818
3835
|
viewport: a
|
|
3819
3836
|
});
|
|
3820
3837
|
},
|
|
3821
|
-
clampPositionInSpine: (n, r) =>
|
|
3838
|
+
clampPositionInSpine: (n, r) => Ca({
|
|
3822
3839
|
position: n,
|
|
3823
3840
|
size: r,
|
|
3824
3841
|
isRTL: e.isRTL(),
|
|
3825
3842
|
spineItemsManager: t,
|
|
3826
3843
|
spine: i
|
|
3827
3844
|
}),
|
|
3828
|
-
getBoundaryForPosition: (n, r = a.absoluteViewport) =>
|
|
3845
|
+
getBoundaryForPosition: (n, r = a.absoluteViewport) => wa({
|
|
3829
3846
|
position: n,
|
|
3830
3847
|
size: r,
|
|
3831
3848
|
isRTL: e.isRTL(),
|
|
@@ -3841,8 +3858,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3841
3858
|
}),
|
|
3842
3859
|
spineItemNavigator: s
|
|
3843
3860
|
};
|
|
3844
|
-
},
|
|
3845
|
-
let c = new m(), l = c.asObservable(), u = new
|
|
3861
|
+
}, Fa = ({ spineItemsManager: e, context: t, hookManager: n, spine: r, settings: i, viewport: a, cfi: s }) => {
|
|
3862
|
+
let c = new m(), l = c.asObservable(), u = new na(), d = s, f = Pa({
|
|
3846
3863
|
cfi: d,
|
|
3847
3864
|
context: t,
|
|
3848
3865
|
settings: i,
|
|
@@ -3850,7 +3867,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3850
3867
|
locator: r.locator,
|
|
3851
3868
|
spine: r,
|
|
3852
3869
|
viewport: a
|
|
3853
|
-
}), p = new
|
|
3870
|
+
}), p = new Wi(i, n, t, r, a), h = new vi(a, i, n, r, t), g = [h, p], _ = new da(i, t, l, () => g.find((e) => e.isActive()) ?? p, E(...g.flatMap((e) => e.layout$ ? [e.layout$] : [])), f, r, a, d, u.isLocked$), y = v([
|
|
3854
3871
|
...g.map((e) => e.isNavigating$),
|
|
3855
3872
|
u.isLocked$,
|
|
3856
3873
|
_.locker.isLocked$
|
|
@@ -3875,43 +3892,55 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3875
3892
|
navigation$: _.navigation$,
|
|
3876
3893
|
position$: ee
|
|
3877
3894
|
};
|
|
3878
|
-
},
|
|
3895
|
+
}, Ia = class extends U {
|
|
3879
3896
|
constructor(e, t) {
|
|
3880
3897
|
super({
|
|
3881
|
-
|
|
3882
|
-
|
|
3898
|
+
isSettled: !1,
|
|
3899
|
+
begin: pr(),
|
|
3900
|
+
end: pr(),
|
|
3883
3901
|
navigationId: void 0
|
|
3884
3902
|
}), this.context = e, this.spineItemsManager = t;
|
|
3885
3903
|
}
|
|
3886
3904
|
update(e) {
|
|
3887
|
-
|
|
3905
|
+
mr(this.value, e) || this.mergeCompare(e);
|
|
3888
3906
|
}
|
|
3889
|
-
},
|
|
3907
|
+
}, La = {
|
|
3890
3908
|
type: "percentage",
|
|
3891
3909
|
value: .5
|
|
3892
|
-
},
|
|
3893
|
-
constructor(e, t, n, r, i, a) {
|
|
3894
|
-
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spine = r, this.isNavigationLocked$ = i, this.cfi = a
|
|
3895
|
-
|
|
3896
|
-
|
|
3910
|
+
}, Ra = class extends Q {
|
|
3911
|
+
constructor(e, t, n, r, i, a, o) {
|
|
3912
|
+
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spine = r, this.isNavigationLocked$ = i, this.cfi = a, this.layoutRequest$ = o, E(this.context.bridgeEvent.navigation$.pipe(T(() => "resolve")), r.layout$.pipe(T(() => "resolve")), o.pipe(T(() => "invalidate"))).pipe(A((e) => {
|
|
3913
|
+
let t = D(hr(this.pagination.value));
|
|
3914
|
+
return e === "invalidate" ? t : y(t, this.resolve$());
|
|
3915
|
+
}), j(this.destroy$)).subscribe((e) => {
|
|
3897
3916
|
this.pagination.update(e);
|
|
3898
3917
|
});
|
|
3899
3918
|
}
|
|
3919
|
+
resolve$() {
|
|
3920
|
+
return this.isNavigationLocked$.pipe(x((e) => !e), ge(1), N(this.context.bridgeEvent.navigation$), de(([, e]) => {
|
|
3921
|
+
let t = this.resolveMetrics(e), n = t ?? hr(this.pagination.value);
|
|
3922
|
+
return y(D(n), this.context.bridgeEvent.viewportFree$.pipe(S(), T(() => this.resolvePositions({
|
|
3923
|
+
metrics: n,
|
|
3924
|
+
visibleRangeIsKnown: t !== void 0
|
|
3925
|
+
})), x((e) => e !== void 0)));
|
|
3926
|
+
}));
|
|
3927
|
+
}
|
|
3900
3928
|
getVisiblePages(e, t) {
|
|
3901
3929
|
return this.spine.locator.getVisiblePagesFromViewportPosition({
|
|
3902
3930
|
spineItem: e,
|
|
3903
3931
|
position: t,
|
|
3904
|
-
threshold:
|
|
3932
|
+
threshold: La
|
|
3905
3933
|
});
|
|
3906
3934
|
}
|
|
3907
3935
|
resolveMetrics(e) {
|
|
3908
3936
|
let { position: t } = e, n = this.pagination.value, { beginIndex: r, endIndex: i } = this.spine.locator.getVisibleSpineItemsFromPosition({
|
|
3909
3937
|
position: t,
|
|
3910
|
-
threshold:
|
|
3938
|
+
threshold: La
|
|
3911
3939
|
}) ?? {}, a = this.spineItemsManager.get(r), o = this.spineItemsManager.get(i);
|
|
3912
3940
|
if (!a || !o) return;
|
|
3913
3941
|
let { beginPageIndex: s = 0 } = this.getVisiblePages(a, t) ?? {}, { endPageIndex: c = 0 } = this.getVisiblePages(o, t) ?? {};
|
|
3914
3942
|
return {
|
|
3943
|
+
isSettled: !1,
|
|
3915
3944
|
begin: this.resolveEdgeMetrics(a, r, s, n.begin),
|
|
3916
3945
|
end: this.resolveEdgeMetrics(o, i, c, n.end),
|
|
3917
3946
|
navigationId: e.id
|
|
@@ -3925,12 +3954,20 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3925
3954
|
numberOfPagesInSpineItem: e.numberOfPages
|
|
3926
3955
|
};
|
|
3927
3956
|
}
|
|
3928
|
-
resolvePositions(e) {
|
|
3929
|
-
let
|
|
3930
|
-
if (
|
|
3931
|
-
|
|
3932
|
-
|
|
3933
|
-
|
|
3957
|
+
resolvePositions({ metrics: e, visibleRangeIsKnown: t }) {
|
|
3958
|
+
let n = this.resolveEdgePositions(e.begin), r = this.resolveEdgePositions(e.end);
|
|
3959
|
+
if (!n || !r) return;
|
|
3960
|
+
let { navigationId: i } = e;
|
|
3961
|
+
return t && n.isReady && r.isReady ? {
|
|
3962
|
+
isSettled: !0,
|
|
3963
|
+
begin: n.edge,
|
|
3964
|
+
end: r.edge,
|
|
3965
|
+
navigationId: i
|
|
3966
|
+
} : {
|
|
3967
|
+
isSettled: !1,
|
|
3968
|
+
begin: n.edge,
|
|
3969
|
+
end: r.edge,
|
|
3970
|
+
navigationId: i
|
|
3934
3971
|
};
|
|
3935
3972
|
}
|
|
3936
3973
|
resolveEdgePositions(e) {
|
|
@@ -3940,8 +3977,11 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3940
3977
|
if (!r) return;
|
|
3941
3978
|
let i = this.spine.pages.fromSpineItemPageIndex(r, n);
|
|
3942
3979
|
return {
|
|
3943
|
-
|
|
3944
|
-
|
|
3980
|
+
edge: {
|
|
3981
|
+
...e,
|
|
3982
|
+
cfi: this.resolveCfi(r, i)
|
|
3983
|
+
},
|
|
3984
|
+
isReady: r.value.isReady
|
|
3945
3985
|
};
|
|
3946
3986
|
}
|
|
3947
3987
|
resolveCfi(e, t) {
|
|
@@ -3950,7 +3990,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3950
3990
|
pageNode: t.firstVisibleNode
|
|
3951
3991
|
}) : this.cfi.generateRootCfi(e.item);
|
|
3952
3992
|
}
|
|
3953
|
-
},
|
|
3993
|
+
}, za = class extends Q {
|
|
3954
3994
|
constructor(e) {
|
|
3955
3995
|
super();
|
|
3956
3996
|
let t = {
|
|
@@ -3986,12 +4026,12 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3986
4026
|
return this._settings$;
|
|
3987
4027
|
}
|
|
3988
4028
|
watch(e) {
|
|
3989
|
-
return this.values$.pipe(
|
|
4029
|
+
return this.values$.pipe(_t(e), b(o));
|
|
3990
4030
|
}
|
|
3991
4031
|
destroy() {
|
|
3992
4032
|
super.destroy(), this.outputSettingsUpdateSubject.complete();
|
|
3993
4033
|
}
|
|
3994
|
-
},
|
|
4034
|
+
}, Ba = class extends za {
|
|
3995
4035
|
constructor(e, t) {
|
|
3996
4036
|
super(e), this.context = t, t.watch(["hasVerticalWriting"]).pipe(M(() => this.update(this.values)), j(this.destroy$)).subscribe();
|
|
3997
4037
|
}
|
|
@@ -4001,7 +4041,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4001
4041
|
computedPageTurnAnimation: e.pageTurnAnimation,
|
|
4002
4042
|
computedPageTurnMode: e.pageTurnMode,
|
|
4003
4043
|
computedPageTurnAnimationDuration: 0,
|
|
4004
|
-
computedSpreadMode:
|
|
4044
|
+
computedSpreadMode: Vn({
|
|
4005
4045
|
spreadMode: e.spreadMode,
|
|
4006
4046
|
manifest: t
|
|
4007
4047
|
})
|
|
@@ -4031,14 +4071,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4031
4071
|
numberOfAdjacentSpineItemToPreLoad: 3
|
|
4032
4072
|
};
|
|
4033
4073
|
}
|
|
4034
|
-
},
|
|
4074
|
+
}, Va = class extends Q {
|
|
4035
4075
|
constructor(e, n, r, i, a, o) {
|
|
4036
4076
|
super(), this.context = e, this.spineItemsManager = n, this.spineLocator = r, this.settings = i, this.spineLayout = a, this.viewport = o, this.forcedOpenSubject = new l(/* @__PURE__ */ new Map());
|
|
4037
4077
|
let s = this.forcedOpenSubject.pipe(T((e) => Array.from(e.keys()).sort((e, t) => e - t)), b(t), k({
|
|
4038
4078
|
bufferSize: 1,
|
|
4039
4079
|
refCount: !0
|
|
4040
4080
|
}));
|
|
4041
|
-
E(this.context.bridgeEvent.position$, this.viewport.layout$, this.spineLayout.layout$, s, i.watch(["numberOfAdjacentSpineItemToPreLoad"])).pipe(
|
|
4081
|
+
E(this.context.bridgeEvent.position$, this.viewport.layout$, this.spineLayout.layout$, s, i.watch(["numberOfAdjacentSpineItemToPreLoad"])).pipe(ne(100), x(() => K(this.context.value.rootElement)), bt(this.context.bridgeEvent.viewportFree$), N(this.context.bridgeEvent.position$, s), T(([, e, t]) => {
|
|
4042
4082
|
let { numberOfAdjacentSpineItemToPreLoad: a } = i.values, { beginIndex: o = 0, endIndex: s = 0 } = r.getVisibleSpineItemsFromPosition({
|
|
4043
4083
|
position: e,
|
|
4044
4084
|
threshold: {
|
|
@@ -4067,13 +4107,13 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4067
4107
|
destroy() {
|
|
4068
4108
|
super.destroy(), this.forcedOpenSubject.complete();
|
|
4069
4109
|
}
|
|
4070
|
-
},
|
|
4110
|
+
}, Ha = (e, t, n) => {
|
|
4071
4111
|
let r = (n.width - t.width) / 2, i = (n.height - t.height) / 2;
|
|
4072
4112
|
return new Y({
|
|
4073
4113
|
x: e.x - r,
|
|
4074
4114
|
y: e.y - i
|
|
4075
4115
|
});
|
|
4076
|
-
},
|
|
4116
|
+
}, Ua = class e extends DOMRect {
|
|
4077
4117
|
constructor(...e) {
|
|
4078
4118
|
super(...e), this.__symbol = Symbol("ViewportPosition");
|
|
4079
4119
|
}
|
|
@@ -4085,15 +4125,15 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4085
4125
|
let r = t;
|
|
4086
4126
|
return new e(r.x, r.y, r.width, r.height);
|
|
4087
4127
|
}
|
|
4088
|
-
},
|
|
4128
|
+
}, Wa = class {
|
|
4089
4129
|
constructor({ width: e, height: t }) {
|
|
4090
4130
|
this.__symbol = Symbol("AbsoluteViewport"), this.width = e, this.height = t;
|
|
4091
4131
|
}
|
|
4092
|
-
},
|
|
4132
|
+
}, Ga = class {
|
|
4093
4133
|
constructor({ width: e, height: t }) {
|
|
4094
4134
|
this.__symbol = Symbol("RelativeViewport"), this.width = e, this.height = t;
|
|
4095
4135
|
}
|
|
4096
|
-
},
|
|
4136
|
+
}, Ka = ({ pageIndex: e, spineItemOrId: t, spineItemsManager: n }) => {
|
|
4097
4137
|
let r = n.items, i = n.get(t);
|
|
4098
4138
|
if (!i) return;
|
|
4099
4139
|
let { currentAbsolutePage: a } = r.reduce((t, n) => {
|
|
@@ -4111,45 +4151,45 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4111
4151
|
found: !1
|
|
4112
4152
|
});
|
|
4113
4153
|
return a;
|
|
4114
|
-
},
|
|
4154
|
+
}, qa = ({ itemHeight: e, itemWidth: t, visibleWidthOfItem: n, visibleHeightOfItem: r, threshold: i }) => {
|
|
4115
4155
|
let a = n / t, o = r / e;
|
|
4116
4156
|
return i.type === "percentage" ? a >= i.value && o >= i.value : n >= i.value && r >= i.value;
|
|
4117
|
-
},
|
|
4157
|
+
}, Ja = ({ visibleWidthOfItem: e, visibleHeightOfItem: t, threshold: n, viewportPosition: r }) => {
|
|
4118
4158
|
let i = e / r.width, a = t / r.height;
|
|
4119
4159
|
return n.type === "percentage" ? a >= n.value && i >= n.value : t >= n.value && e >= n.value;
|
|
4120
|
-
},
|
|
4160
|
+
}, Ya = ({ itemPosition: { bottom: e, left: t, right: n, top: r, width: i, height: a }, threshold: o, viewportPosition: s, restrictToScreen: c }) => {
|
|
4121
4161
|
let l = s.x, u = s.x + (s.width - 1), d = s.y, f = Math.max(s.y + (s.height - 1), 0), p = Math.max(0, Math.min(n, u) - Math.max(t, l)), m = Math.max(0, Math.min(e, f) - Math.max(r, d));
|
|
4122
4162
|
if (p <= 0 || m <= 0) return { visible: !1 };
|
|
4123
|
-
let h =
|
|
4163
|
+
let h = Ja({
|
|
4124
4164
|
threshold: o,
|
|
4125
4165
|
visibleHeightOfItem: m,
|
|
4126
4166
|
visibleWidthOfItem: p,
|
|
4127
4167
|
viewportPosition: s
|
|
4128
4168
|
});
|
|
4129
|
-
return c ? { visible: h } : { visible:
|
|
4169
|
+
return c ? { visible: h } : { visible: qa({
|
|
4130
4170
|
itemHeight: a,
|
|
4131
4171
|
itemWidth: i,
|
|
4132
4172
|
threshold: o,
|
|
4133
4173
|
visibleHeightOfItem: m,
|
|
4134
4174
|
visibleWidthOfItem: p
|
|
4135
4175
|
}) || h };
|
|
4136
|
-
},
|
|
4176
|
+
}, Xa = ({ position: e, spineItemsManager: t, spineLayout: n }) => {
|
|
4137
4177
|
let r = t.items.find((t) => {
|
|
4138
4178
|
let { left: r, right: i, bottom: a, top: o } = n.getSpineItemSpineLayoutInfo(t), s = e.x >= r && e.x < i, c = e.y >= o && e.y < a;
|
|
4139
4179
|
return s && c;
|
|
4140
4180
|
});
|
|
4141
4181
|
return e.x === 0 && !r ? t.items[0] : r;
|
|
4142
|
-
},
|
|
4182
|
+
}, Za = ({ spineItemPosition: e, itemLayout: { left: t, top: n } }) => new J({
|
|
4143
4183
|
x: t + e.x,
|
|
4144
4184
|
y: n + e.y
|
|
4145
|
-
}),
|
|
4146
|
-
let s =
|
|
4185
|
+
}), Qa = ({ position: e, threshold: t, restrictToScreen: n, spineItemsManager: r, spineLayout: i, useAbsoluteViewport: a = !0, viewport: o }) => {
|
|
4186
|
+
let s = Xa({
|
|
4147
4187
|
position: e,
|
|
4148
4188
|
spineItemsManager: r,
|
|
4149
4189
|
spineLayout: i
|
|
4150
|
-
}) || r.get(0), c = a ? o.absoluteViewport : o.relativeViewport, l =
|
|
4190
|
+
}) || r.get(0), c = a ? o.absoluteViewport : o.relativeViewport, l = Ha(e, o.absoluteViewport, c), u = Ua.from(l, c), d = [];
|
|
4151
4191
|
for (let e of r.items) {
|
|
4152
|
-
let { visible: r } =
|
|
4192
|
+
let { visible: r } = Ya({
|
|
4153
4193
|
itemPosition: i.getSpineItemSpineLayoutInfo(e),
|
|
4154
4194
|
threshold: t,
|
|
4155
4195
|
viewportPosition: u,
|
|
@@ -4164,14 +4204,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4164
4204
|
beginIndex: m ?? 0,
|
|
4165
4205
|
endIndex: h ?? 0
|
|
4166
4206
|
};
|
|
4167
|
-
},
|
|
4207
|
+
}, $a = ({ spineItemsManager: e, context: t, spineItemLocator: n, settings: r, spineLayout: i, viewport: a }) => {
|
|
4168
4208
|
let o = (e, t) => {
|
|
4169
4209
|
let { left: n, top: r } = i.getSpineItemSpineLayoutInfo(t);
|
|
4170
4210
|
return new q({
|
|
4171
4211
|
x: Math.max(e.x - n, 0),
|
|
4172
4212
|
y: Math.max(e.y - r, 0)
|
|
4173
4213
|
});
|
|
4174
|
-
}, s = (e) =>
|
|
4214
|
+
}, s = (e) => Za({
|
|
4175
4215
|
spineItemPosition: new q({
|
|
4176
4216
|
x: 0,
|
|
4177
4217
|
y: 0
|
|
@@ -4185,7 +4225,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4185
4225
|
return n.getSpineItemPageIndexFromNode(t, r || 0, i);
|
|
4186
4226
|
}, u = ({ position: e, threshold: t, spineItem: r, restrictToScreen: a, useAbsoluteViewport: o = !0, viewport: s }) => {
|
|
4187
4227
|
let c = r.numberOfPages, l = Array.from(Array(c)).map((e, t) => {
|
|
4188
|
-
let a =
|
|
4228
|
+
let a = Za({
|
|
4189
4229
|
spineItemPosition: n.getSpineItemPositionFromPageIndex({
|
|
4190
4230
|
pageIndex: t,
|
|
4191
4231
|
spineItem: r
|
|
@@ -4204,8 +4244,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4204
4244
|
}
|
|
4205
4245
|
};
|
|
4206
4246
|
}).reduce((n, { absolutePosition: r, index: i }) => {
|
|
4207
|
-
let c = o ? s.absoluteViewport : s.relativeViewport, l =
|
|
4208
|
-
viewportPosition:
|
|
4247
|
+
let c = o ? s.absoluteViewport : s.relativeViewport, l = Ha(e, s.absoluteViewport, c), { visible: u } = Ya({
|
|
4248
|
+
viewportPosition: Ua.from(l, c),
|
|
4209
4249
|
restrictToScreen: a,
|
|
4210
4250
|
threshold: t,
|
|
4211
4251
|
itemPosition: r
|
|
@@ -4218,11 +4258,11 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4218
4258
|
};
|
|
4219
4259
|
};
|
|
4220
4260
|
return {
|
|
4221
|
-
getSpinePositionFromSpineItemPosition: ({ spineItem: e, spineItemPosition: t }) =>
|
|
4261
|
+
getSpinePositionFromSpineItemPosition: ({ spineItem: e, spineItemPosition: t }) => Za({
|
|
4222
4262
|
itemLayout: i.getSpineItemSpineLayoutInfo(e),
|
|
4223
4263
|
spineItemPosition: t
|
|
4224
4264
|
}),
|
|
4225
|
-
_getAbsolutePageIndexFromPageIndex: (n) =>
|
|
4265
|
+
_getAbsolutePageIndexFromPageIndex: (n) => Ka({
|
|
4226
4266
|
...n,
|
|
4227
4267
|
context: t,
|
|
4228
4268
|
settings: r,
|
|
@@ -4230,7 +4270,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4230
4270
|
spineLayout: i
|
|
4231
4271
|
}),
|
|
4232
4272
|
getSpineItemPagePositionFromSpinePosition: (t) => {
|
|
4233
|
-
let r =
|
|
4273
|
+
let r = Xa({
|
|
4234
4274
|
position: t,
|
|
4235
4275
|
spineItemsManager: e,
|
|
4236
4276
|
spineLayout: i
|
|
@@ -4251,14 +4291,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4251
4291
|
},
|
|
4252
4292
|
getSpinePositionFromSpineItem: s,
|
|
4253
4293
|
getSpineItemPositionFromSpinePosition: o,
|
|
4254
|
-
getSpineItemFromPosition: (t) =>
|
|
4294
|
+
getSpineItemFromPosition: (t) => Xa({
|
|
4255
4295
|
position: t,
|
|
4256
4296
|
spineItemsManager: e,
|
|
4257
4297
|
spineLayout: i
|
|
4258
4298
|
}),
|
|
4259
4299
|
getSpineItemFromIframe: c,
|
|
4260
4300
|
getSpineItemPageIndexFromNode: l,
|
|
4261
|
-
getVisibleSpineItemsFromPosition: (t) =>
|
|
4301
|
+
getVisibleSpineItemsFromPosition: (t) => Qa({
|
|
4262
4302
|
settings: r,
|
|
4263
4303
|
spineItemsManager: e,
|
|
4264
4304
|
spineLayout: i,
|
|
@@ -4282,19 +4322,19 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4282
4322
|
});
|
|
4283
4323
|
}
|
|
4284
4324
|
};
|
|
4285
|
-
},
|
|
4325
|
+
}, eo = class extends Q {
|
|
4286
4326
|
constructor(e) {
|
|
4287
4327
|
super(), this.spineItemsManager = e;
|
|
4288
4328
|
let t = e.items;
|
|
4289
4329
|
this.itemStateChange$ = E(...t.map((e) => e.pipe(T((t) => ({
|
|
4290
4330
|
item: e,
|
|
4291
4331
|
...t
|
|
4292
|
-
})), b(o)))).pipe(O()), this.itemResize$ = E(...t.map((e) =>
|
|
4332
|
+
})), b(o)))).pipe(O()), this.itemResize$ = E(...t.map((e) => yt(e.element).pipe(T((t) => ({
|
|
4293
4333
|
entries: t,
|
|
4294
4334
|
item: e
|
|
4295
4335
|
}))))).pipe(O()), this.itemLoad$ = E(...t.map((e) => e.loaded$.pipe(T(() => e)))).pipe(O()), this.itemUnload$ = E(...t.map((e) => e.unloaded$.pipe(T(() => e)))).pipe(O());
|
|
4296
4336
|
}
|
|
4297
|
-
},
|
|
4337
|
+
}, to = class extends Q {
|
|
4298
4338
|
constructor(e, t, n, r, i) {
|
|
4299
4339
|
super(), this.spineItemsManager = e, this.spineItemsObserver = t, this.context = n, this.settings = r, this.viewport = i, this.externalLayoutTrigger = new m(), this.spineItemsRelativeLayouts = [];
|
|
4300
4340
|
let a = E(t.itemLoad$, t.itemUnload$).pipe(T(() => ({ immediate: !1 }))), o = E(this.externalLayoutTrigger, a);
|
|
@@ -4302,9 +4342,9 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4302
4342
|
this.spineItemsManager.items.forEach((e) => {
|
|
4303
4343
|
e.markDirty();
|
|
4304
4344
|
});
|
|
4305
|
-
}),
|
|
4345
|
+
}), te((e) => e.immediate ? D(void 0) : ye(50)), A(() => {
|
|
4306
4346
|
let t = [];
|
|
4307
|
-
return this.spineItemsManager.items.reduce((a, o, s) => a.pipe(
|
|
4347
|
+
return this.spineItemsManager.items.reduce((a, o, s) => a.pipe(ee(({ horizontalOffset: a, verticalOffset: c }) => {
|
|
4308
4348
|
let l = a % i.absoluteViewport.width === 0, u = s === e.items.length - 1, d = r.values.computedPageTurnDirection === "vertical", f = n.isRTL(), p = this.getSpreadPosition(l, f), { edgeX: m, edgeY: h } = this.getStartEdges(d, l, a, c, i.absoluteViewport.height);
|
|
4309
4349
|
return o.layout({
|
|
4310
4350
|
spreadPosition: p,
|
|
@@ -4337,7 +4377,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4337
4377
|
}
|
|
4338
4378
|
getSpineItemSpineLayoutInfo(e) {
|
|
4339
4379
|
let t = this.spineItemsManager.getSpineItemIndex(e) ?? 0;
|
|
4340
|
-
return this.spineItemsRelativeLayouts[t] || new
|
|
4380
|
+
return this.spineItemsRelativeLayouts[t] || new fn({
|
|
4341
4381
|
left: 0,
|
|
4342
4382
|
right: 0,
|
|
4343
4383
|
top: 0,
|
|
@@ -4367,7 +4407,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4367
4407
|
};
|
|
4368
4408
|
}
|
|
4369
4409
|
createSpineItemLayout(e, t, n, r, i, a, o) {
|
|
4370
|
-
if (e) return new
|
|
4410
|
+
if (e) return new fn({
|
|
4371
4411
|
left: n,
|
|
4372
4412
|
right: i + n,
|
|
4373
4413
|
top: r,
|
|
@@ -4378,7 +4418,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4378
4418
|
y: r
|
|
4379
4419
|
});
|
|
4380
4420
|
let s = t ? o - n - i : n;
|
|
4381
|
-
return new
|
|
4421
|
+
return new fn({
|
|
4382
4422
|
right: t ? o - n : n + i,
|
|
4383
4423
|
left: s,
|
|
4384
4424
|
x: s,
|
|
@@ -4389,20 +4429,20 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4389
4429
|
y: r
|
|
4390
4430
|
});
|
|
4391
4431
|
}
|
|
4392
|
-
},
|
|
4432
|
+
}, no = class extends Q {
|
|
4393
4433
|
constructor(e, t, n, r, i, a) {
|
|
4394
|
-
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spineItemLocator = r, this.settings = i, this.viewport = a, this.elementSubject = new l(void 0), this.element$ = this.elementSubject.asObservable(), this.spineItemsObserver = new
|
|
4434
|
+
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spineItemLocator = r, this.settings = i, this.viewport = a, this.elementSubject = new l(void 0), this.element$ = this.elementSubject.asObservable(), this.spineItemsObserver = new eo(n), this.spineLayout = new to(n, this.spineItemsObserver, e, i, a), this.locator = $a({
|
|
4395
4435
|
context: e,
|
|
4396
4436
|
spineItemsManager: n,
|
|
4397
4437
|
spineItemLocator: r,
|
|
4398
4438
|
settings: i,
|
|
4399
4439
|
spineLayout: this.spineLayout,
|
|
4400
4440
|
viewport: a
|
|
4401
|
-
}), this.spineItemsLoader = new
|
|
4402
|
-
let o = e.watch("rootElement").pipe(
|
|
4441
|
+
}), this.spineItemsLoader = new Va(this.context, n, this.locator, i, this.spineLayout, this.viewport), this.pages = new wr(this.spineLayout, this.spineItemsManager, this.spineItemLocator, this.context, this.locator, this.viewport);
|
|
4442
|
+
let o = e.watch("rootElement").pipe(Se(K), I(() => {
|
|
4403
4443
|
let e = this.context.document.createElement("div");
|
|
4404
4444
|
e.style.cssText = "\n height: 100%;\n position: relative;\n ", e.className = `${X}-spine`, this.elementSubject.next(e);
|
|
4405
|
-
})), s = this.element$.pipe(
|
|
4445
|
+
})), s = this.element$.pipe(Se(K), I((e) => {
|
|
4406
4446
|
this.spineItemsManager.items.forEach((t) => {
|
|
4407
4447
|
t.attach(e);
|
|
4408
4448
|
});
|
|
@@ -4424,7 +4464,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4424
4464
|
destroy() {
|
|
4425
4465
|
super.destroy(), this.pages.destroy(), this.spineItemsLoader.destroy(), this.elementSubject.getValue()?.remove(), this.elementSubject.complete();
|
|
4426
4466
|
}
|
|
4427
|
-
},
|
|
4467
|
+
}, ro = class extends jt {
|
|
4428
4468
|
onUnload() {}
|
|
4429
4469
|
onCreateDocument() {
|
|
4430
4470
|
return D(this.context.document.createElement("div"));
|
|
@@ -4439,10 +4479,10 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4439
4479
|
return u;
|
|
4440
4480
|
}
|
|
4441
4481
|
getDocumentFrame() {}
|
|
4442
|
-
},
|
|
4482
|
+
}, io = class extends Q {
|
|
4443
4483
|
constructor(e, t, n, i, a, s, c) {
|
|
4444
4484
|
super(), this.item = e, this.containerElement = t, this.context = n, this.hookManager = i, this.renderer = a, this.settings = s, this.viewport = c, this.layoutTriggerSubject = new m(), this.lastLayout = null, this.computeLayoutInformation = ({ isLastItem: e, horizontalOffset: t, spreadPosition: n }) => {
|
|
4445
|
-
let i = this.viewport.value.pageSize.width, a = "none", o = t % this.viewport.absoluteViewport.width === 0, s = this.context.manifest, c =
|
|
4485
|
+
let i = this.viewport.value.pageSize.width, a = "none", o = t % this.viewport.absoluteViewport.width === 0, s = this.context.manifest, c = Fi(s);
|
|
4446
4486
|
if (this.settings.values.computedSpreadMode) {
|
|
4447
4487
|
!c && this.renderer.renditionLayout === "reflowable" && !e && (i = this.viewport.value.pageSize.width * 2), !c && this.renderer.renditionLayout === "reflowable" && e && o && (i = this.viewport.value.pageSize.width * 2);
|
|
4448
4488
|
let t = o && e && c, s = r(this.item);
|
|
@@ -4477,7 +4517,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4477
4517
|
height: f
|
|
4478
4518
|
});
|
|
4479
4519
|
})), this.layout = (e) => {
|
|
4480
|
-
let t =
|
|
4520
|
+
let t = xt(this.didLayout$.pipe(S()));
|
|
4481
4521
|
return this.layoutTriggerSubject.next(e), t();
|
|
4482
4522
|
};
|
|
4483
4523
|
let l = this.layoutTriggerSubject.pipe(A(({ spreadPosition: e, horizontalOffset: t, isLastItem: n, edgeX: r, edgeY: i }) => {
|
|
@@ -4524,7 +4564,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4524
4564
|
height: e.height ? parseFloat(e.height) : 0
|
|
4525
4565
|
};
|
|
4526
4566
|
}
|
|
4527
|
-
},
|
|
4567
|
+
}, ao = class extends U {
|
|
4528
4568
|
constructor(e, t, n, r, i, a) {
|
|
4529
4569
|
super({
|
|
4530
4570
|
isLoaded: !1,
|
|
@@ -4545,9 +4585,9 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4545
4585
|
this.updateState({ isDirty: !0 });
|
|
4546
4586
|
}, this.destroy = () => {
|
|
4547
4587
|
this.isDestroyed || (super.destroy(), this._layout.destroy(), this.renderer.destroy(), this.containerElement.remove());
|
|
4548
|
-
}, this.isUsingVerticalWriting = () => !!this.renderer.writingMode?.startsWith("vertical"), this.layout = (e) => this._layout.layout(e), this.containerElement =
|
|
4588
|
+
}, this.isUsingVerticalWriting = () => !!this.renderer.writingMode?.startsWith("vertical"), this.layout = (e) => this._layout.layout(e), this.containerElement = oo(e, t.document);
|
|
4549
4589
|
let o = this.settings.values.getRenderer?.(e);
|
|
4550
|
-
this.resourcesHandler = new
|
|
4590
|
+
this.resourcesHandler = new Nt(e, this.settings);
|
|
4551
4591
|
let s = {
|
|
4552
4592
|
context: t,
|
|
4553
4593
|
settings: n,
|
|
@@ -4557,7 +4597,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4557
4597
|
resourcesHandler: this.resourcesHandler,
|
|
4558
4598
|
viewport: this.viewport
|
|
4559
4599
|
};
|
|
4560
|
-
this.renderer = o ? o(s) : new
|
|
4600
|
+
this.renderer = o ? o(s) : new ro(s), this._layout = new io(e, this.containerElement, t, r, this.renderer, this.settings, this.viewport);
|
|
4561
4601
|
let c = this.renderer.state$.pipe(I(({ state: e, error: t }) => {
|
|
4562
4602
|
this.updateState({
|
|
4563
4603
|
isLoaded: e === "loaded",
|
|
@@ -4570,7 +4610,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4570
4610
|
isDirty: !1,
|
|
4571
4611
|
isReady: !0
|
|
4572
4612
|
});
|
|
4573
|
-
}),
|
|
4613
|
+
}), Ee()), E(c, this.didLayout$).pipe(F(this.destroy$)).subscribe();
|
|
4574
4614
|
}
|
|
4575
4615
|
updateState(e) {
|
|
4576
4616
|
let t = {
|
|
@@ -4604,7 +4644,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4604
4644
|
return this._layout.layoutInfo;
|
|
4605
4645
|
}
|
|
4606
4646
|
get numberOfPages() {
|
|
4607
|
-
return
|
|
4647
|
+
return _a({
|
|
4608
4648
|
isUsingVerticalWriting: !!this.isUsingVerticalWriting(),
|
|
4609
4649
|
itemHeight: this._layout.layoutInfo.height,
|
|
4610
4650
|
itemWidth: this._layout.layoutInfo.width,
|
|
@@ -4614,12 +4654,12 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4614
4654
|
pageTurnMode: this.settings.values.pageTurnMode
|
|
4615
4655
|
});
|
|
4616
4656
|
}
|
|
4617
|
-
},
|
|
4657
|
+
}, oo = (e, t) => {
|
|
4618
4658
|
let n = t.createElement("div");
|
|
4619
|
-
return n.setAttribute(`data-${
|
|
4620
|
-
},
|
|
4659
|
+
return n.setAttribute(`data-${En}`, ""), n.classList.add("spineItem"), n.classList.add(`spineItem-${e.renditionLayout ?? "reflowable"}`), n.style.cssText = "\n position: absolute;\n overflow: hidden;\n ", n.dataset.isReady = "false", n;
|
|
4660
|
+
}, so = class extends Q {
|
|
4621
4661
|
constructor(e, t, n, r) {
|
|
4622
|
-
super(), this.context = e, this.settings = t, this.hookManager = n, this.viewport = r, this.items = e.manifest.spineItems.map((i, a) => new
|
|
4662
|
+
super(), this.context = e, this.settings = t, this.hookManager = n, this.viewport = r, this.items = e.manifest.spineItems.map((i, a) => new ao(i, e, t, n, a, r));
|
|
4623
4663
|
}
|
|
4624
4664
|
get(e) {
|
|
4625
4665
|
return typeof e == "number" ? this.items[e] : typeof e == "string" ? this.items.find(({ item: t }) => t.id === e) : e;
|
|
@@ -4629,17 +4669,17 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4629
4669
|
return n > r ? "after" : n === r ? "same" : "before";
|
|
4630
4670
|
}
|
|
4631
4671
|
getSpineItemIndex(e) {
|
|
4632
|
-
return (e instanceof
|
|
4672
|
+
return (e instanceof ao ? e : this.get(e))?.index;
|
|
4633
4673
|
}
|
|
4634
4674
|
destroy() {
|
|
4635
4675
|
this.items.forEach((e) => {
|
|
4636
4676
|
e.destroy();
|
|
4637
4677
|
}), super.destroy();
|
|
4638
4678
|
}
|
|
4639
|
-
},
|
|
4679
|
+
}, co = class extends U {
|
|
4640
4680
|
constructor(e, t) {
|
|
4641
4681
|
let n = e.document.createElement("div");
|
|
4642
|
-
n.setAttribute(`data-${
|
|
4682
|
+
n.setAttribute(`data-${wn}`, ""), super({
|
|
4643
4683
|
element: n,
|
|
4644
4684
|
pageSize: {
|
|
4645
4685
|
width: 1,
|
|
@@ -4664,7 +4704,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4664
4704
|
}
|
|
4665
4705
|
syncAbsoluteViewportCssVariables(e) {
|
|
4666
4706
|
let { style: t } = this.value.element;
|
|
4667
|
-
e.width > 0 ? z(t,
|
|
4707
|
+
e.width > 0 ? z(t, Dn, `${e.width}px`) : B(t, Dn), e.height > 0 ? z(t, On, `${e.height}px`) : B(t, On);
|
|
4668
4708
|
}
|
|
4669
4709
|
layout() {
|
|
4670
4710
|
let e = {
|
|
@@ -4677,7 +4717,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4677
4717
|
}), this.layoutSubject.next();
|
|
4678
4718
|
}
|
|
4679
4719
|
get absoluteViewport() {
|
|
4680
|
-
return new
|
|
4720
|
+
return new Wa({
|
|
4681
4721
|
width: this.value.width,
|
|
4682
4722
|
height: this.value.height
|
|
4683
4723
|
});
|
|
@@ -4691,7 +4731,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4691
4731
|
}
|
|
4692
4732
|
get relativeViewport() {
|
|
4693
4733
|
let e = this.absoluteViewport, t = this.scaleFactor;
|
|
4694
|
-
return new
|
|
4734
|
+
return new Ga({
|
|
4695
4735
|
width: e.width / t,
|
|
4696
4736
|
height: e.height / t
|
|
4697
4737
|
});
|
|
@@ -4699,12 +4739,12 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4699
4739
|
destroy() {
|
|
4700
4740
|
super.destroy(), this.layoutSubject.complete(), this.value.element.remove();
|
|
4701
4741
|
}
|
|
4702
|
-
},
|
|
4703
|
-
let i = crypto.randomUUID(), a = `${
|
|
4742
|
+
}, lo = ({ manifest: e, cfi: t, ownerDocument: n = globalThis.document, ...r }) => {
|
|
4743
|
+
let i = crypto.randomUUID(), a = `${Sn}-core-${i}`, o = new m(), s = new m(), c = new zi(), l = new Li(e, n), u = new Ba(r, l), d = new Ri(l, u), f = new co(l, u), p = new so(l, u, c, f), h = new Pi(c, p), g = ba({
|
|
4704
4744
|
context: l,
|
|
4705
4745
|
settings: u,
|
|
4706
4746
|
viewport: f
|
|
4707
|
-
}), _ = new
|
|
4747
|
+
}), _ = new Ia(l, p), v = new no(l, _, p, g, u, f), y = Fa({
|
|
4708
4748
|
cfi: h,
|
|
4709
4749
|
context: l,
|
|
4710
4750
|
spineItemsManager: p,
|
|
@@ -4712,19 +4752,19 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4712
4752
|
spine: v,
|
|
4713
4753
|
settings: u,
|
|
4714
4754
|
viewport: f
|
|
4715
|
-
}), ee = new
|
|
4755
|
+
}), ee = new Ra(l, _, p, v, y.isLocked$, h, o);
|
|
4716
4756
|
y.navigationState$.subscribe(l.bridgeEvent.viewportStateSubject), y.navigation$.subscribe(l.bridgeEvent.navigationSubject), y.position$.subscribe(l.bridgeEvent.positionSubject), _.subscribe(l.bridgeEvent.paginationSubject);
|
|
4717
4757
|
let te = (e = {}) => {
|
|
4718
4758
|
o.next(e);
|
|
4719
4759
|
}, ne = (e) => {
|
|
4720
4760
|
if (l.value.rootElement) throw Error("This reader is already mounted. A reader renders a single book, destroy it and create a new reader instead.");
|
|
4721
4761
|
if (e.ownerDocument !== l.document) throw Error("The container element must belong to the reader's document. Pass `ownerDocument` to `createReader` when mounting into a foreign document (eg: an iframe's contentDocument).");
|
|
4722
|
-
L.log("mount", { containerElement: e }),
|
|
4723
|
-
let t =
|
|
4762
|
+
L.log("mount", { containerElement: e }), et(l.document, a, Bi);
|
|
4763
|
+
let t = po(e, i);
|
|
4724
4764
|
l.update({ rootElement: t }), te({ immediate: !0 });
|
|
4725
|
-
}, re = u.watch(["computedSpreadMode"]).pipe(
|
|
4765
|
+
}, re = u.watch(["computedSpreadMode"]).pipe(Oe(1), I(() => te())), ie = o.pipe(I((e) => {
|
|
4726
4766
|
l.value.rootElement && (f.layout(), v.layout(e));
|
|
4727
|
-
}), F(s)),
|
|
4767
|
+
}), F(s)), ae = E(ie, re).subscribe();
|
|
4728
4768
|
return {
|
|
4729
4769
|
id: i,
|
|
4730
4770
|
context: l,
|
|
@@ -4738,7 +4778,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4738
4778
|
mount: ne,
|
|
4739
4779
|
destroy: () => {
|
|
4740
4780
|
let e = l.value.rootElement;
|
|
4741
|
-
e && (
|
|
4781
|
+
e && (tt(l.document, a), mo(e)), ae.unsubscribe(), p.destroy(), ee.destroy(), u.destroy(), _.destroy(), l.destroy(), y.destroy(), v.destroy(), d.destroy(), s.next(), s.complete(), f.destroy();
|
|
4742
4782
|
},
|
|
4743
4783
|
pagination: {
|
|
4744
4784
|
get state() {
|
|
@@ -4753,21 +4793,21 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4753
4793
|
viewport: f,
|
|
4754
4794
|
viewportState$: l.bridgeEvent.viewportState$,
|
|
4755
4795
|
viewportFree$: l.bridgeEvent.viewportFree$,
|
|
4756
|
-
mounted$: l.watch("rootElement").pipe(
|
|
4796
|
+
mounted$: l.watch("rootElement").pipe(we(K), xe()),
|
|
4757
4797
|
features: d,
|
|
4758
4798
|
$: { destroy$: s }
|
|
4759
4799
|
};
|
|
4760
|
-
},
|
|
4761
|
-
e.classList.remove(
|
|
4762
|
-
},
|
|
4800
|
+
}, uo = `${X}-reader`, fo = "data-prose-reader-container", po = (e, t) => (e.classList.add(uo), R(e, Cn, t), R(e, fo, t), e), mo = (e) => {
|
|
4801
|
+
e.classList.remove(uo), e.removeAttribute(Cn), e.removeAttribute(fo);
|
|
4802
|
+
}, ho = si(kt(di(Ot(lt(ui(Ci(fr(cn(qn(ut(mt(ni(Kn(li(lo))))))))))))))), go = (e) => (t) => e(t), _o = 5e3, vo = (e, { itemReadinessTimeoutMs: t = _o } = {}) => Qn(e).pipe(A((n) => {
|
|
4763
4803
|
if (n.boundary === "start") return D(n);
|
|
4764
4804
|
let r = e.spineItemsManager.items, i = r[r.length - 1];
|
|
4765
|
-
return i ? i.value.isReady ? D(n) : i.isReady$.pipe(x(Boolean), S(), T(() => n), t === Infinity ?
|
|
4805
|
+
return i ? i.value.isReady ? D(n) : i.isReady$.pipe(x(Boolean), S(), T(() => n), t === Infinity ? le : ve({
|
|
4766
4806
|
first: t,
|
|
4767
4807
|
with: () => u
|
|
4768
|
-
}),
|
|
4808
|
+
}), Zn(e.navigation)) : u;
|
|
4769
4809
|
}), O());
|
|
4770
4810
|
//#endregion
|
|
4771
|
-
export {
|
|
4811
|
+
export { mn as AbstractSpinePosition, On as CSS_VAR_ABSOLUTE_VIEWPORT_HEIGHT, Dn as CSS_VAR_ABSOLUTE_VIEWPORT_WIDTH, Pi as CfiManager, Li as Context, Wi as ControlledNavigationController, Q as DestroyableClass, jt as DocumentRenderer, Ri as Features, Cn as HTML_ATTRIBUTE_DATA_READER_ID, X as HTML_PREFIX, Tn as HTML_PREFIX_SCROLL_NAVIGATOR, En as HTML_PREFIX_SPINE_ITEM, wn as HTML_PREFIX_VIEWPORT, Sn as HTML_STYLE_PREFIX, zi as HookManager, da as InternalNavigator, ln as LayoutEntry, na as Locker, xn as PAGINATION_UPDATE_AFTER_VIEWPORT_ADJUSTMENT_DEBOUNCE, yn as PROSE_READER_NAMESPACE, wr as Pages, U as ReactiveEntity, Nt as ResourceHandler, vr as ResourcesLocator, vi as ScrollNavigationController, gi as ScrollPosition, za as SettingsManager, no as Spine, ao as SpineItem, dn as SpineItemPageLayout, pn as SpineItemPageSpineLayout, q as SpineItemPosition, fn as SpineItemSpineLayout, so as SpineItemsManager, eo as SpineItemsObserver, J as SpinePosition, _i as UnboundScrollPosition, un as UnboundSpineItemPagePosition, Y as UnboundSpinePosition, bn as VIEWPORT_ADJUSTMENT_THROTTLE, co as Viewport, _r as consolidate, ho as createReader, Ct as deferIdle, xt as deferNextResult, Ei as generateCfiForSpineItemPage, Di as generateCfiFromRange, wi as generateRootCfi, rt as getAttributeValueFromString, ht as getBase64FromBlob, ot as getFrameViewportInfo, Oi as getItemAnchor, cn as htmlEnhancer, St as idle, et as injectCSS, it as injectCSSToFrame, K as isDefined, Qe as isHtmlElement, V as isHtmlTagElement, Ai as isRootCfi, a as isShallowEqual, Kn as layoutEnhancer, _t as mapKeysTo, vo as observeBookBoundaryReached, Tt as observeIntersection, wt as observeMutation, Xn as observeNextSettledNavigation, yt as observeResize, Yn as observeSettledNavigation, ni as paginationEnhancer, Mi as parseCfi, gt as pick, Le as removeAttributeIfPresent, at as removeCSS, B as removeStylePropertyIfPresent, Ni as resolveCfi, go as rootEnhancer, R as setAttributeIfChanged, Re as setPropertyIfChanged, z as setStylePropertyIfChanged, Un as shouldEnableSpreadModeForViewport, Wn as shouldUseComputedSpreadModeForViewport, br as spinePositionToSpineItemSpineLayout, Zn as takeUntilNextNavigationSettled, H as upsertCSSToFrame, st as waitForFrameLoad, ct as waitForFrameReady, Jn as waitForNavigationSettled, bt as waitForSwitch, vt as watchKeys };
|
|
4772
4812
|
|
|
4773
4813
|
//# sourceMappingURL=index.js.map
|