@prose-reader/core 1.310.0 → 1.312.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/enhancers/pagination/spread.d.ts +4 -5
- package/dist/index.js +391 -390
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +15 -15
- package/dist/index.umd.cjs.map +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
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, concatMap as ee, debounce as te, debounceTime as ne, defaultIfEmpty as re, defer as ie, delay as ae, distinctUntilChanged as y, endWith as oe, exhaustMap as se, filter as b, finalize as
|
|
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, concatMap as ee, debounce as te, debounceTime as ne, defaultIfEmpty as re, defer as ie, delay as ae, distinctUntilChanged as y, endWith as oe, exhaustMap as se, filter as b, finalize as ce, first as x, forkJoin as le, from as S, fromEvent as C, identity as ue, lastValueFrom as de, map as w, merge as T, mergeMap as fe, of as E, scheduled as pe, share as D, shareReplay as O, skip as me, startWith as k, 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
3
|
import { catchError as be, debounceTime as xe, distinctUntilChanged as Se, filter as Ce, first as we, map as P, mergeMap as Te, pairwise as Ee, share as De, shareReplay as Oe, skip as ke, startWith as Ae, switchMap as F, take as je, takeUntil as I, tap as L } from "rxjs/operators";
|
|
4
4
|
import { generate as Me, isIndirectionOnly as Ne, isParsedCfiRange as Pe, parse as Fe, resolve as Ie } from "@prose-reader/cfi";
|
|
5
5
|
var R = e.namespace("@prose-reader/core", void 0, { color: "#98cde7" }), Le = [
|
|
@@ -226,9 +226,9 @@ var nt = (e, t, n, r) => {
|
|
|
226
226
|
}
|
|
227
227
|
}
|
|
228
228
|
return { hasViewport: !1 };
|
|
229
|
-
}, lt = (e) => e.pipe(A((e) => e.src === "about:blank" && e.contentDocument?.readyState === "complete" && e.contentDocument.body ?
|
|
229
|
+
}, lt = (e) => e.pipe(A((e) => e.src === "about:blank" && e.contentDocument?.readyState === "complete" && e.contentDocument.body ? E(e) : C(e, "load").pipe(ge(1), w(() => e)))), ut = (e) => e.pipe(A((e) => {
|
|
230
230
|
let t = e?.contentDocument?.fonts.ready;
|
|
231
|
-
return t ?
|
|
231
|
+
return t ? S(t).pipe(w(() => e)) : E(e);
|
|
232
232
|
})), dt = (e) => (t) => {
|
|
233
233
|
let n = e(t), r = new IntersectionObserver((e) => {
|
|
234
234
|
e.forEach((e) => {
|
|
@@ -392,7 +392,7 @@ var St = (e) => (t) => t.pipe(F((t) => e.pipe(we(), P(() => t)))), Ct = (e) => {
|
|
|
392
392
|
let t, n = e.subscribe((e) => {
|
|
393
393
|
t = { result: e };
|
|
394
394
|
});
|
|
395
|
-
return () => (n.unsubscribe(), t ?
|
|
395
|
+
return () => (n.unsubscribe(), t ? E(t.result) : e);
|
|
396
396
|
};
|
|
397
397
|
function wt() {
|
|
398
398
|
return new f((e) => {
|
|
@@ -504,7 +504,7 @@ var Ot = 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(Ee(),
|
|
507
|
+
}), c.values$.pipe((e) => e.pipe(Ee(), w(([e, t]) => t.fontScale !== e.fontScale || t.lineHeight !== e.lineHeight)), L((e) => {
|
|
508
508
|
s.spineItemsManager.items.forEach((e) => {
|
|
509
509
|
if (e.renditionLayout !== "pre-paginated") {
|
|
510
510
|
let t = e.renderer.getDocumentFrame();
|
|
@@ -519,7 +519,7 @@ var Ot = class {
|
|
|
519
519
|
settings: c
|
|
520
520
|
};
|
|
521
521
|
}, jt = (e) => (t) => {
|
|
522
|
-
let n = e(t), r = (e) =>
|
|
522
|
+
let n = e(t), r = (e) => C(e, "keyup").pipe(w((e) => {
|
|
523
523
|
let { pageTurnDirection: t, computedPageTurnMode: r } = n.settings.values;
|
|
524
524
|
if (r === "scrollable") return e;
|
|
525
525
|
if (t === "horizontal") {
|
|
@@ -532,16 +532,16 @@ var Ot = class {
|
|
|
532
532
|
}
|
|
533
533
|
return e;
|
|
534
534
|
}));
|
|
535
|
-
return r(document).pipe(j(n.$.destroy$)).subscribe(), n.spineItemsManager.items$.pipe(A((e) =>
|
|
535
|
+
return r(document).pipe(j(n.$.destroy$)).subscribe(), n.spineItemsManager.items$.pipe(A((e) => T(...e.map((e) => e.watch("isLoaded").pipe(A(() => {
|
|
536
536
|
let t = e.renderer.getDocumentFrame();
|
|
537
537
|
return t instanceof HTMLIFrameElement && t?.contentDocument ? r(t.contentDocument) : u;
|
|
538
538
|
}))))), j(n.$.destroy$)).subscribe(), n;
|
|
539
|
-
}, Mt = (e) => e.spine.spineItemsManager.items$.pipe(A((e) =>
|
|
539
|
+
}, Mt = (e) => e.spine.spineItemsManager.items$.pipe(A((e) => T(...e.map((e) => e.watch("isLoaded").pipe(A(() => {
|
|
540
540
|
let t = e.renderer.getDocumentFrame();
|
|
541
|
-
return !t || !t?.contentDocument ? d :
|
|
541
|
+
return !t || !t?.contentDocument ? d : T(...Array.from(t.contentDocument.querySelectorAll("a")).map((e) => C(e, "click")));
|
|
542
542
|
}))))), M((e) => {
|
|
543
543
|
e.preventDefault();
|
|
544
|
-
}),
|
|
544
|
+
}), D()), U = class extends f {
|
|
545
545
|
constructor(e) {
|
|
546
546
|
super((e) => this.stateSubject.pipe(j(this._destroy$)).subscribe(e)), this._destroy$ = new m(), this.destroy$ = this._destroy$.asObservable(), this.stateSubject = new l(e), this.state$ = this.stateSubject.asObservable();
|
|
547
547
|
}
|
|
@@ -556,7 +556,7 @@ var Ot = class {
|
|
|
556
556
|
o(this.value, t) || this.stateSubject.next(t);
|
|
557
557
|
}
|
|
558
558
|
watch(e) {
|
|
559
|
-
return Array.isArray(e) ? this.stateSubject.pipe(bt(e)) : this.stateSubject.pipe(
|
|
559
|
+
return Array.isArray(e) ? this.stateSubject.pipe(bt(e)) : this.stateSubject.pipe(w((t) => t[e]), y(o));
|
|
560
560
|
}
|
|
561
561
|
get value() {
|
|
562
562
|
return this.stateSubject.value;
|
|
@@ -575,35 +575,35 @@ var Ot = class {
|
|
|
575
575
|
documentContainer: void 0
|
|
576
576
|
}), 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;
|
|
577
577
|
let t = this.triggerSubject.pipe(b((e) => e.type === "unload")), n = this.triggerSubject.pipe(b((e) => e.type === "load"));
|
|
578
|
-
this.loaded$ = n.pipe(
|
|
578
|
+
this.loaded$ = n.pipe(fe(() => this.value.state === "loaded" || this.value.state === "loading" ? u : (this.mergeCompare({
|
|
579
579
|
state: "loading",
|
|
580
580
|
error: void 0
|
|
581
|
-
}), this.onCreateDocument().pipe(
|
|
581
|
+
}), this.onCreateDocument().pipe(x()).pipe(fe((e) => (this.hookManager.execute("item.onDocumentCreated", {
|
|
582
582
|
itemId: this.item.id,
|
|
583
583
|
documentContainer: e
|
|
584
|
-
}), this.onLoadDocument().pipe(oe(null),
|
|
584
|
+
}), this.onLoadDocument().pipe(oe(null), x()).pipe(St(this.context.bridgeEvent.viewportFree$), A(() => this.hookManager.fromExecuteAsync("item.onDocumentLoad", this.item.id, {
|
|
585
585
|
itemId: this.item.id,
|
|
586
586
|
documentContainer: e
|
|
587
|
-
}))))),
|
|
587
|
+
}))))), w(() => {
|
|
588
588
|
this.mergeCompare({
|
|
589
589
|
state: "loaded",
|
|
590
590
|
error: void 0
|
|
591
591
|
});
|
|
592
|
-
}), j(t)))),
|
|
592
|
+
}), j(t)))), D()), this.unloaded$ = t.pipe(fe(() => this.value.state === "unloading" || this.value.state === "idle" ? u : (this.mergeCompare({
|
|
593
593
|
state: "unloading",
|
|
594
594
|
error: void 0
|
|
595
|
-
}), this.context.bridgeEvent.viewportFree$.pipe(
|
|
595
|
+
}), this.context.bridgeEvent.viewportFree$.pipe(x(), A(() => {
|
|
596
596
|
let e = this.value.documentContainer;
|
|
597
|
-
return
|
|
597
|
+
return S(e ? this.hookManager.executeAsync("item.onDocumentUnload", this.item.id, {
|
|
598
598
|
itemId: this.item.id,
|
|
599
599
|
documentContainer: e
|
|
600
|
-
}).then(() => null) : Promise.resolve(null)).pipe(A(() => this.onUnload()), oe(null),
|
|
601
|
-
}),
|
|
600
|
+
}).then(() => null) : Promise.resolve(null)).pipe(A(() => this.onUnload()), oe(null), x(), _((e) => (R.error("Error unloading document", e), E(null))));
|
|
601
|
+
}), w(() => {
|
|
602
602
|
this.mergeCompare({
|
|
603
603
|
state: "idle",
|
|
604
604
|
error: void 0
|
|
605
605
|
});
|
|
606
|
-
}), j(n)))),
|
|
606
|
+
}), j(n)))), D()), T(this.loaded$, this.unloaded$).pipe(_((e) => (this.mergeCompare({
|
|
607
607
|
state: "error",
|
|
608
608
|
error: e
|
|
609
609
|
}), u)), j(this.destroy$)).subscribe();
|
|
@@ -618,7 +618,7 @@ var Ot = class {
|
|
|
618
618
|
this.documentContainer?.remove(), this.mergeCompare({ documentContainer: void 0 });
|
|
619
619
|
}
|
|
620
620
|
get isLoaded$() {
|
|
621
|
-
return this.state$.pipe(
|
|
621
|
+
return this.state$.pipe(w((e) => e.state === "loaded"));
|
|
622
622
|
}
|
|
623
623
|
load() {
|
|
624
624
|
this.triggerSubject.next({ type: "load" });
|
|
@@ -628,16 +628,16 @@ var Ot = class {
|
|
|
628
628
|
}
|
|
629
629
|
renderHeadless() {
|
|
630
630
|
let e = new m();
|
|
631
|
-
return ie(() => this.onRenderHeadless({ release: e })).pipe(oe(void 0),
|
|
631
|
+
return ie(() => this.onRenderHeadless({ release: e })).pipe(oe(void 0), x(), w((t) => {
|
|
632
632
|
if (t) return {
|
|
633
633
|
doc: t,
|
|
634
634
|
release: () => {
|
|
635
635
|
e.next(void 0);
|
|
636
636
|
}
|
|
637
637
|
};
|
|
638
|
-
}),
|
|
638
|
+
}), ce(() => {
|
|
639
639
|
e.complete();
|
|
640
|
-
}), _((e) => (R.error(e),
|
|
640
|
+
}), _((e) => (R.error(e), E(void 0))));
|
|
641
641
|
}
|
|
642
642
|
layout(e) {
|
|
643
643
|
return this.onLayout(e);
|
|
@@ -665,7 +665,7 @@ var Ot = class {
|
|
|
665
665
|
this.item = e, this.settings = t;
|
|
666
666
|
}
|
|
667
667
|
async getResource() {
|
|
668
|
-
return await
|
|
668
|
+
return await de(this.settings.values.getResource?.(this.item) ?? E(void 0)) ?? Pt(this.item);
|
|
669
669
|
}
|
|
670
670
|
async fetchResource() {
|
|
671
671
|
let e = await this.getResource();
|
|
@@ -712,10 +712,10 @@ var Ot = class {
|
|
|
712
712
|
}
|
|
713
713
|
}, Rt = (e, t, n, r, i) => {
|
|
714
714
|
let a = t.getAttribute("src") || t.getAttribute("href");
|
|
715
|
-
if (!a) return
|
|
715
|
+
if (!a) return E(null);
|
|
716
716
|
let o = r.manifest?.items.find(({ href: e }) => `${It(n, a).toLowerCase()}`.endsWith(`${e.toLowerCase()}`));
|
|
717
|
-
return o ?
|
|
718
|
-
if (!a) return
|
|
717
|
+
return o ? S(new Ft(o, i).getResource()).pipe(fe((e) => e instanceof Response ? S(e.blob()) : E(void 0)), fe((a) => {
|
|
718
|
+
if (!a) return E(null);
|
|
719
719
|
let o = e?.defaultView?.URL.createObjectURL(a) ?? "";
|
|
720
720
|
if (t.hasAttribute("src")) t.setAttribute("src", o);
|
|
721
721
|
else if (t.hasAttribute("href") && (t.setAttribute("href", o), e?.defaultView && t instanceof e.defaultView.HTMLLinkElement)) return new f((a) => {
|
|
@@ -727,11 +727,11 @@ var Ot = class {
|
|
|
727
727
|
}
|
|
728
728
|
}, t.onerror = a.error;
|
|
729
729
|
});
|
|
730
|
-
return
|
|
731
|
-
})) :
|
|
730
|
+
return E(null);
|
|
731
|
+
})) : E(null);
|
|
732
732
|
}, zt = ({ settings: e, item: t, context: n }) => (r) => r.pipe(A((r) => {
|
|
733
733
|
let a = Xe(r.contentDocument), o = i(t.href), s = a.map((t) => Rt(r.contentDocument, t, o, n, e));
|
|
734
|
-
return s.length === 0 ?
|
|
734
|
+
return s.length === 0 ? E(r) : v(s).pipe(w(() => r));
|
|
735
735
|
})), Bt = (e) => {
|
|
736
736
|
Ze(e?.contentDocument);
|
|
737
737
|
}, Vt = async (e, t) => {
|
|
@@ -803,14 +803,14 @@ var Ot = class {
|
|
|
803
803
|
let n = URL.createObjectURL(t);
|
|
804
804
|
e.setAttribute("src", n);
|
|
805
805
|
};
|
|
806
|
-
return (r) => r.pipe(A((r) =>
|
|
806
|
+
return (r) => r.pipe(A((r) => S(t.getResource()).pipe(A((i) => {
|
|
807
807
|
let a = Ht.some((t) => e.href.endsWith(t)) || e.mediaType && Ut.includes(e.mediaType);
|
|
808
|
-
return i instanceof URL && e.href.startsWith(window.location.origin) && !a ? (Wt(r), r?.setAttribute("src", i.href),
|
|
808
|
+
return i instanceof URL && e.href.startsWith(window.location.origin) && !a ? (Wt(r), r?.setAttribute("src", i.href), E(r)) : (i instanceof URL ? S(t.fetchResource()) : E(i)).pipe(A((t) => {
|
|
809
809
|
if (!(t instanceof Response)) throw Error("Invalid resource");
|
|
810
810
|
return Vt(t, e);
|
|
811
811
|
}), M((e) => {
|
|
812
812
|
n(r, e);
|
|
813
|
-
}),
|
|
813
|
+
}), w(() => r), _((t) => (R.error(`Error while trying to fetch or load resource for item ${e.id}`, i), R.error(t), E(r))));
|
|
814
814
|
}))));
|
|
815
815
|
}, Kt = () => {
|
|
816
816
|
let e = document.createElement("iframe");
|
|
@@ -1033,12 +1033,12 @@ var Ot = class {
|
|
|
1033
1033
|
}
|
|
1034
1034
|
onCreateDocument() {
|
|
1035
1035
|
let e = Kt();
|
|
1036
|
-
return this.setDocumentContainer(e),
|
|
1036
|
+
return this.setDocumentContainer(e), E(e);
|
|
1037
1037
|
}
|
|
1038
1038
|
onLoadDocument() {
|
|
1039
1039
|
let e = this.getFrameElement();
|
|
1040
1040
|
if (!e) throw Error("invalid frame");
|
|
1041
|
-
return
|
|
1041
|
+
return E(e).pipe(Gt({
|
|
1042
1042
|
item: this.item,
|
|
1043
1043
|
resourcesHandler: this.resourcesHandler,
|
|
1044
1044
|
settings: this.settings
|
|
@@ -1060,9 +1060,9 @@ var Ot = class {
|
|
|
1060
1060
|
}
|
|
1061
1061
|
onLayout({ minPageSpread: e, blankPagePosition: t, spreadPosition: n }) {
|
|
1062
1062
|
let { width: r, height: i } = this.viewport.pageSize, a = this.getFrameElement();
|
|
1063
|
-
if (!a) return
|
|
1063
|
+
if (!a) return E(void 0);
|
|
1064
1064
|
let o = this.settings.values.computedPageTurnMode === "scrollable";
|
|
1065
|
-
if (a.contentDocument?.documentElement && (z(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()) return
|
|
1065
|
+
if (a.contentDocument?.documentElement && (z(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()) return E(en({
|
|
1066
1066
|
blankPagePosition: t,
|
|
1067
1067
|
frameElement: a,
|
|
1068
1068
|
isRTL: this.context.isRTL(),
|
|
@@ -1072,7 +1072,7 @@ var Ot = class {
|
|
|
1072
1072
|
spreadPosition: n
|
|
1073
1073
|
}));
|
|
1074
1074
|
let s = !!this.writingMode?.startsWith("vertical"), c = this.isImageType();
|
|
1075
|
-
return
|
|
1075
|
+
return E(sn({
|
|
1076
1076
|
pageHeight: i,
|
|
1077
1077
|
pageWidth: r,
|
|
1078
1078
|
frameElement: a,
|
|
@@ -1087,7 +1087,7 @@ var Ot = class {
|
|
|
1087
1087
|
}));
|
|
1088
1088
|
}
|
|
1089
1089
|
onRenderHeadless() {
|
|
1090
|
-
return
|
|
1090
|
+
return S(this.resourcesHandler.fetchResource()).pipe(A((e) => {
|
|
1091
1091
|
if (e instanceof Response) {
|
|
1092
1092
|
let t = e.headers.get("content-type") ?? "";
|
|
1093
1093
|
if ([
|
|
@@ -1095,9 +1095,9 @@ var Ot = class {
|
|
|
1095
1095
|
"application/xml",
|
|
1096
1096
|
"text/html",
|
|
1097
1097
|
"text/xml"
|
|
1098
|
-
].includes(t)) return
|
|
1098
|
+
].includes(t)) return S(e.text()).pipe(w((e) => new DOMParser().parseFromString(e, t)));
|
|
1099
1099
|
}
|
|
1100
|
-
return
|
|
1100
|
+
return E(void 0);
|
|
1101
1101
|
}));
|
|
1102
1102
|
}
|
|
1103
1103
|
getFrameElement() {
|
|
@@ -1200,12 +1200,12 @@ var un = class {
|
|
|
1200
1200
|
}, _n = (e, t) => new Y(gn(e, t)), vn = (e) => ({ getSpinePositionFromClientPosition: (t) => e.spine.element ? _n(t, e.spine.element) : void 0 }), yn = (e) => {
|
|
1201
1201
|
let t, n = e.context.watch("rootElement").pipe(F((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), () => {
|
|
1202
1202
|
t?.remove(), t = void 0;
|
|
1203
|
-
})) : d)), r = (e) =>
|
|
1203
|
+
})) : d)), r = (e) => pe(e, h).pipe(L(() => {
|
|
1204
1204
|
t && B(t.style, "visibility", "hidden");
|
|
1205
1205
|
})), i = e.context.bridgeEvent.viewportBusy$.pipe(L(() => {
|
|
1206
1206
|
t && B(t.style, "visibility", "visible");
|
|
1207
1207
|
})), a = r(e.viewportFree$).pipe(je(1));
|
|
1208
|
-
return
|
|
1208
|
+
return T(n, e.settings.values$.pipe(P(() => e.settings.values.computedPageTurnMode), Se()).pipe(F((e) => e === "controlled" ? i.pipe(F(() => a)) : r(E(void 0))), I(e.$.destroy$)));
|
|
1209
1209
|
}, bn = "@prose-reader/core", xn = 0, Sn = 200, X = "prose-reader", Cn = `${X}-style`, wn = `data-${X}-id`, Tn = `${X}-viewport`, En = `${X}-scroll-navigator`, Dn = `${X}-spine-item`, On = `--${X}-absolute-viewport-width`, kn = `--${X}-absolute-viewport-height`, An = `${X}-enhancer-loading`, jn = `${An}-container`, Mn = `${An}-logo`, Nn = `${An}-details`, Pn = ({ container: e, item: t }) => {
|
|
1210
1210
|
let n = e.ownerDocument.createElement("div");
|
|
1211
1211
|
n.classList.add(jn);
|
|
@@ -1227,7 +1227,7 @@ var un = class {
|
|
|
1227
1227
|
loadingElement: i,
|
|
1228
1228
|
theme: e.theme.get()
|
|
1229
1229
|
}), t.set(n, i), n.appendChild(i);
|
|
1230
|
-
}),
|
|
1230
|
+
}), T(e.spineItemsObserver.states$.pipe(L(({ item: e, isError: n, error: r }) => {
|
|
1231
1231
|
if (!n) return;
|
|
1232
1232
|
let i = t.get(e.containerElement);
|
|
1233
1233
|
if (!i) return;
|
|
@@ -1347,7 +1347,7 @@ var un = class {
|
|
|
1347
1347
|
refCount: !0,
|
|
1348
1348
|
bufferSize: 1
|
|
1349
1349
|
}));
|
|
1350
|
-
return
|
|
1350
|
+
return T(l, d, u, f, Bn(s), Kn(s), Ln(s)).pipe(I(s.$.destroy$)).subscribe(), {
|
|
1351
1351
|
...s,
|
|
1352
1352
|
destroy: () => {
|
|
1353
1353
|
c.destroy(), s.destroy();
|
|
@@ -1396,10 +1396,10 @@ var un = class {
|
|
|
1396
1396
|
...n,
|
|
1397
1397
|
destroy: o
|
|
1398
1398
|
};
|
|
1399
|
-
}, Yn = (e) => (t) => t.pipe(A((t) => e.pipe(b((e) => e === "free"),
|
|
1399
|
+
}, Yn = (e) => (t) => t.pipe(A((t) => e.pipe(b((e) => e === "free"), x(), w(() => t)))), Xn = ({ navigation$: e, navigationState$: t }) => e.pipe(Yn(t)), Zn = (e) => Xn(e).pipe(me(1)), Qn = (e) => (t) => t.pipe(j(Zn(e))), $n = (e) => e.navigation.navigation$.pipe(b((e) => e.triggeredBy === "user"), Yn(e.navigation.navigationState$), w((t) => {
|
|
1400
1400
|
let n = t.requestedPosition, r = t.requestedVisibleArea;
|
|
1401
1401
|
return n && r ? e.navigation.navigationResolver.getBoundaryForPosition(n, r) : void 0;
|
|
1402
|
-
}), b((e) => e !== void 0),
|
|
1402
|
+
}), b((e) => e !== void 0), w((e) => ({ boundary: e })), D()), er = (e, t) => e.links$.pipe(M((n) => {
|
|
1403
1403
|
if (!et(n.target, "a") || n.type !== "click") return;
|
|
1404
1404
|
let r = new URL(n.target.href), i = `${r.origin}${r.pathname}`;
|
|
1405
1405
|
e.context.manifest?.spineItems.some((e) => e.href === i) && t.goToUrl(r);
|
|
@@ -1752,21 +1752,21 @@ var un = class {
|
|
|
1752
1752
|
}
|
|
1753
1753
|
}, lr = 500, ur = class extends Q {
|
|
1754
1754
|
constructor(e, t) {
|
|
1755
|
-
super(), this.scrollNavigationController = e, this.lock = t, this.navigationSubject = new m(), this.navigation$ = this.navigationSubject.asObservable(),
|
|
1755
|
+
super(), this.scrollNavigationController = e, this.lock = t, this.navigationSubject = new m(), this.navigation$ = this.navigationSubject.asObservable(), T(this.scrollNavigationController.userScroll$.pipe(se((e) => {
|
|
1756
1756
|
let t = this.lock();
|
|
1757
|
-
return
|
|
1757
|
+
return T(this.scrollNavigationController.userScroll$, E(e)).pipe(ne(lr, h), x(), M(() => {
|
|
1758
1758
|
let e = this.scrollNavigationController.fromScrollPosition(this.scrollNavigationController.scrollPosition);
|
|
1759
1759
|
this.navigationSubject.next({
|
|
1760
1760
|
animation: !1,
|
|
1761
1761
|
type: "scroll",
|
|
1762
1762
|
position: e
|
|
1763
1763
|
});
|
|
1764
|
-
}),
|
|
1764
|
+
}), ce(() => {
|
|
1765
1765
|
t();
|
|
1766
1766
|
}));
|
|
1767
1767
|
}))).pipe(j(this.destroy$)).subscribe();
|
|
1768
1768
|
}
|
|
1769
|
-
}, dr = (e) => e.pagination.state$.pipe(N(e.context.manifest$, e.settings.values$),
|
|
1769
|
+
}, dr = (e) => e.pagination.state$.pipe(N(e.context.manifest$, e.settings.values$), w(([e, { spineItems: t, readingDirection: n }, { computedPageTurnDirection: r }]) => {
|
|
1770
1770
|
let i = t.length ?? 0, a = e.beginSpineItemIndex === 0, o = e.endSpineItemIndex === Math.max(i - 1, 0), s = e.endSpineItemIndex === Math.max(i - 1, 0), c = e.beginSpineItemIndex === 0, l = e.beginPageIndexInSpineItem === 0, u = e.endPageIndexInSpineItem === e.endNumberOfPagesInSpineItem - 1;
|
|
1771
1771
|
return {
|
|
1772
1772
|
canTurnLeft: r === "vertical" ? !1 : !l,
|
|
@@ -1785,10 +1785,10 @@ var un = class {
|
|
|
1785
1785
|
}), _e(t, void 0, {
|
|
1786
1786
|
trailing: !0,
|
|
1787
1787
|
leading: !0
|
|
1788
|
-
}), M(i),
|
|
1788
|
+
}), M(i), ce(i));
|
|
1789
1789
|
}, pr = (e) => (t) => {
|
|
1790
1790
|
let n = e(t), r = dr(n), i = $n(n), a = new sr(n), o = new cr(n), s = new ur(n.navigation.scrollNavigationController, n.navigation.lock);
|
|
1791
|
-
|
|
1791
|
+
T(er(n, a), s.navigation$.pipe(M((e) => {
|
|
1792
1792
|
n.navigation.navigate(e);
|
|
1793
1793
|
}))).pipe(j(n.$.destroy$)).subscribe();
|
|
1794
1794
|
let c = (e) => {
|
|
@@ -1852,7 +1852,7 @@ var un = class {
|
|
|
1852
1852
|
};
|
|
1853
1853
|
}, hr = (e, t) => {
|
|
1854
1854
|
let n = e?.itemPageIndex, { itemIndex: r, ...i } = t.cfi.parseCfi(e.cfi), a = t.spineItemsManager.get(r);
|
|
1855
|
-
return a ? wt().pipe(N(a.isReady$),
|
|
1855
|
+
return a ? wt().pipe(N(a.isReady$), w(([, o]) => {
|
|
1856
1856
|
let { node: s = null, offset: c, range: l } = o ? t.cfi.resolveCfi({ cfi: e.cfi }) : {};
|
|
1857
1857
|
a.renditionLayout !== "pre-paginated" && s && (n = t.spine.locator.spineItemLocator.getSpineItemPageIndexFromNode(s, c ?? 0, a) ?? n);
|
|
1858
1858
|
let u = e?.absolutePageIndex;
|
|
@@ -1869,7 +1869,7 @@ var un = class {
|
|
|
1869
1869
|
absolutePageIndex: u,
|
|
1870
1870
|
itemPageIndex: n
|
|
1871
1871
|
};
|
|
1872
|
-
})) :
|
|
1872
|
+
})) : E({
|
|
1873
1873
|
...e,
|
|
1874
1874
|
itemIndex: r,
|
|
1875
1875
|
...i
|
|
@@ -1885,19 +1885,19 @@ var un = class {
|
|
|
1885
1885
|
meta: mr(this.reader, e)
|
|
1886
1886
|
};
|
|
1887
1887
|
return Tt(() => {
|
|
1888
|
-
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(
|
|
1888
|
+
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(() => {
|
|
1889
1889
|
o && this.deregisterMemoizedStream(o), setTimeout(() => {
|
|
1890
1890
|
a();
|
|
1891
1891
|
}, 1e3);
|
|
1892
1892
|
}));
|
|
1893
|
-
if (o && s) return s.observerCount++, c(s.consolidate$.pipe(
|
|
1893
|
+
if (o && s) return s.observerCount++, c(s.consolidate$.pipe(w(({ resource: e, meta: t }) => ({
|
|
1894
1894
|
resource: e,
|
|
1895
1895
|
meta: t
|
|
1896
1896
|
}))));
|
|
1897
|
-
let l = this.reader.spine.layout$.pipe(ne(10),
|
|
1897
|
+
let l = this.reader.spine.layout$.pipe(ne(10), k(n), he((e) => hr(e.meta, this.reader).pipe(w((t) => ({
|
|
1898
1898
|
...e,
|
|
1899
1899
|
meta: t
|
|
1900
|
-
}))), n),
|
|
1900
|
+
}))), n), O({
|
|
1901
1901
|
refCount: !0,
|
|
1902
1902
|
bufferSize: 1
|
|
1903
1903
|
}));
|
|
@@ -1964,7 +1964,7 @@ var un = class {
|
|
|
1964
1964
|
};
|
|
1965
1965
|
}), Sr = class e extends U {
|
|
1966
1966
|
constructor(t, n, r, i, a, o) {
|
|
1967
|
-
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(
|
|
1967
|
+
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(w(() => this.fromAbsolutePageIndex(e))), this.layout$ = t.layout$.pipe(N(o), A(([, { pageSize: e }]) => xr(n.items.reduce((t, n, i) => {
|
|
1968
1968
|
for (let o = 0; o < n.numberOfPages; o += 1) {
|
|
1969
1969
|
let s = r.getSpineItemPositionFromPageIndex({
|
|
1970
1970
|
spineItem: n,
|
|
@@ -1995,7 +1995,7 @@ var un = class {
|
|
|
1995
1995
|
});
|
|
1996
1996
|
}
|
|
1997
1997
|
return t;
|
|
1998
|
-
}, []))),
|
|
1998
|
+
}, []))), w((e) => (_r.info("Pages layout", e), { pages: e })), D()), this.layout$.pipe(j(this.destroy$)).subscribe(this.next.bind(this));
|
|
1999
1999
|
}
|
|
2000
2000
|
static {
|
|
2001
2001
|
this.fromSpineItemPageIndex = (e, t, n) => {
|
|
@@ -2150,21 +2150,20 @@ var un = class {
|
|
|
2150
2150
|
}, Vr = (e, t) => e ? e.spineItems.reduce((n, r) => (n[r.id] = Br(e, t, r), n), {}) : {}, Hr = (e, t, n) => e + t * n, Ur = (e, t, n) => {
|
|
2151
2151
|
let { height: r, width: i } = n.layoutInfo, { top: a, left: o } = e.spine.getSpineItemSpineLayoutInfo(n);
|
|
2152
2152
|
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));
|
|
2153
|
-
}, Wr = (e, t, n, r, i, a) => i.isReady$.pipe(
|
|
2153
|
+
}, Wr = (e, t, n, r, i, a) => i.isReady$.pipe(x(), N(e.layoutInfo$), w(([o, s]) => {
|
|
2154
2154
|
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);
|
|
2155
2155
|
!c && i.renditionLayout === "reflowable" && !o && (h = 0);
|
|
2156
2156
|
let g = u + h;
|
|
2157
2157
|
return a.renditionFlow === "scrolled-continuous" && (h = o ? Ur(e, r, i) : 0, g = Hr(u, m, h)), t === l - 1 && n === p - 1 && g > .99 ? 1 : g;
|
|
2158
|
-
})), Gr = (e) => {
|
|
2159
|
-
|
|
2160
|
-
if (
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
}, qr = ({ item: e, nextItem: t, previousItem: n }) => Kr(e, n) || Kr(e, t), Jr = {
|
|
2158
|
+
})), Gr = (e) => e ? r(e.item) : void 0, Kr = ({ item: e, nextItem: t, previousItem: n, readingDirection: r }) => {
|
|
2159
|
+
let i = Gr(e);
|
|
2160
|
+
if (i === void 0) return !1;
|
|
2161
|
+
let a = Gr(i === (r === "rtl" ? "right" : "left") ? t : n);
|
|
2162
|
+
return a !== void 0 && a !== i;
|
|
2163
|
+
}, qr = {
|
|
2165
2164
|
tocCandidatesBySpineHref: /* @__PURE__ */ new Map(),
|
|
2166
2165
|
chaptersInfo: {}
|
|
2167
|
-
},
|
|
2166
|
+
}, Jr = ({ beginItem: e, endItem: t, paginationInfo: n, chaptersData: r, pagesState: i, spineItems: a }) => {
|
|
2168
2167
|
let o = e && n.beginPageIndexInSpineItem !== void 0 ? Sr.fromSpineItemPageIndex(i, e.index, n.beginPageIndexInSpineItem) : void 0, s = o ? Sr.fromNextPageWithinSameSpineItem(i, o) : void 0, c = t && n.endPageIndexInSpineItem !== void 0 ? Sr.fromSpineItemPageIndex(i, t.index, n.endPageIndexInSpineItem) : void 0, l = c ? Sr.fromNextPageWithinSameSpineItem(i, c) : void 0, u = e ? Lr({
|
|
2169
2168
|
node: o?.firstVisibleNode?.node,
|
|
2170
2169
|
offset: o?.firstVisibleNode?.offset,
|
|
@@ -2180,34 +2179,36 @@ var un = class {
|
|
|
2180
2179
|
}) : void 0;
|
|
2181
2180
|
return {
|
|
2182
2181
|
beginChapterInfo: u ?? (e ? r.chaptersInfo[e.item.id] : void 0),
|
|
2183
|
-
beginHasAdjacentSpreadPage:
|
|
2182
|
+
beginHasAdjacentSpreadPage: Kr({
|
|
2184
2183
|
item: e,
|
|
2185
2184
|
nextItem: e === void 0 ? void 0 : a[e.index + 1],
|
|
2186
|
-
previousItem: e === void 0 ? void 0 : a[e.index - 1]
|
|
2185
|
+
previousItem: e === void 0 ? void 0 : a[e.index - 1],
|
|
2186
|
+
readingDirection: e?.readingDirection
|
|
2187
2187
|
}),
|
|
2188
2188
|
beginSpineItemReadingDirection: e?.readingDirection,
|
|
2189
2189
|
beginAbsolutePageIndex: o?.absolutePageIndex,
|
|
2190
2190
|
endChapterInfo: d ?? (t ? r.chaptersInfo[t.item.id] : void 0),
|
|
2191
|
-
endHasAdjacentSpreadPage:
|
|
2191
|
+
endHasAdjacentSpreadPage: Kr({
|
|
2192
2192
|
item: t,
|
|
2193
2193
|
nextItem: t === void 0 ? void 0 : a[t.index + 1],
|
|
2194
|
-
previousItem: t === void 0 ? void 0 : a[t.index - 1]
|
|
2194
|
+
previousItem: t === void 0 ? void 0 : a[t.index - 1],
|
|
2195
|
+
readingDirection: t?.readingDirection
|
|
2195
2196
|
}),
|
|
2196
2197
|
endSpineItemReadingDirection: t?.readingDirection,
|
|
2197
2198
|
endAbsolutePageIndex: c?.absolutePageIndex
|
|
2198
2199
|
};
|
|
2199
|
-
},
|
|
2200
|
+
}, Yr = ({ items: e, pagesState: t }) => {
|
|
2200
2201
|
let n = e.map(() => 0);
|
|
2201
2202
|
for (let e of t.pages) n[e.itemIndex] = (n[e.itemIndex] ?? 0) + 1;
|
|
2202
2203
|
return {
|
|
2203
2204
|
numberOfPagesPerItems: n,
|
|
2204
2205
|
numberOfTotalPages: t.pages.length
|
|
2205
2206
|
};
|
|
2206
|
-
},
|
|
2207
|
+
}, Xr = (e, t) => e.numberOfTotalPages !== t.numberOfTotalPages || e.numberOfPagesPerItems.length !== t.numberOfPagesPerItems.length ? !1 : e.numberOfPagesPerItems.every((e, n) => e === t.numberOfPagesPerItems[n]), Zr = ({ reader: e, paginationInfo: t, navigationPosition: n, manifest: r }) => {
|
|
2207
2208
|
let i = e.spineItemsManager.get(t.endSpineItemIndex);
|
|
2208
|
-
return i ? Wr(e, t.endSpineItemIndex ?? 0, t.endPageIndexInSpineItem || 0, n, i, r) :
|
|
2209
|
-
},
|
|
2210
|
-
if (!e) return
|
|
2209
|
+
return i ? Wr(e, t.endSpineItemIndex ?? 0, t.endPageIndexInSpineItem || 0, n, i, r) : E(0);
|
|
2210
|
+
}, Qr = (e) => e.context.manifest$.pipe(w((e) => {
|
|
2211
|
+
if (!e) return qr;
|
|
2211
2212
|
let t = Or(e.nav?.toc ?? [], e);
|
|
2212
2213
|
return {
|
|
2213
2214
|
tocCandidatesBySpineHref: kr({
|
|
@@ -2216,59 +2217,59 @@ var un = class {
|
|
|
2216
2217
|
}),
|
|
2217
2218
|
chaptersInfo: Vr(e, t)
|
|
2218
2219
|
};
|
|
2219
|
-
})),
|
|
2220
|
+
})), $r = (e) => ({
|
|
2220
2221
|
beginSpineItemIndex: e.beginSpineItemIndex,
|
|
2221
2222
|
beginPageIndexInSpineItem: e.beginPageIndexInSpineItem,
|
|
2222
2223
|
endSpineItemIndex: e.endSpineItemIndex,
|
|
2223
2224
|
endPageIndexInSpineItem: e.endPageIndexInSpineItem
|
|
2224
|
-
}),
|
|
2225
|
-
let t = e.pagination.state$, n = e.spine.pages.layout$, r =
|
|
2225
|
+
}), ei = (e) => {
|
|
2226
|
+
let t = e.pagination.state$, n = e.spine.pages.layout$, r = Qr(e).pipe(O({
|
|
2226
2227
|
bufferSize: 1,
|
|
2227
2228
|
refCount: !0
|
|
2228
2229
|
})), i = v([
|
|
2229
|
-
t.pipe(
|
|
2230
|
+
t.pipe(w($r), y(o)),
|
|
2230
2231
|
r,
|
|
2231
2232
|
n,
|
|
2232
2233
|
e.spineItemsManager.items$
|
|
2233
|
-
]).pipe(
|
|
2234
|
+
]).pipe(w(([e, t, n, r]) => Jr({
|
|
2234
2235
|
beginItem: e.beginSpineItemIndex === void 0 ? void 0 : r[e.beginSpineItemIndex],
|
|
2235
2236
|
endItem: e.endSpineItemIndex === void 0 ? void 0 : r[e.endSpineItemIndex],
|
|
2236
2237
|
paginationInfo: e,
|
|
2237
2238
|
chaptersData: t,
|
|
2238
2239
|
pagesState: n,
|
|
2239
2240
|
spineItems: r
|
|
2240
|
-
})),
|
|
2241
|
+
})), O({
|
|
2241
2242
|
bufferSize: 1,
|
|
2242
2243
|
refCount: !0
|
|
2243
2244
|
})), a = v([
|
|
2244
2245
|
t,
|
|
2245
|
-
e.settings.watch(["computedSpreadMode"]).pipe(
|
|
2246
|
+
e.settings.watch(["computedSpreadMode"]).pipe(w((e) => e.computedSpreadMode ?? !1), y()),
|
|
2246
2247
|
i,
|
|
2247
|
-
v([n, e.spineItemsManager.items$]).pipe(
|
|
2248
|
+
v([n, e.spineItemsManager.items$]).pipe(w(([e, t]) => Yr({
|
|
2248
2249
|
items: t,
|
|
2249
2250
|
pagesState: e
|
|
2250
|
-
})), y(
|
|
2251
|
-
]).pipe(
|
|
2251
|
+
})), y(Xr))
|
|
2252
|
+
]).pipe(w(([e, t, n, r]) => ({
|
|
2252
2253
|
...e,
|
|
2253
2254
|
...n,
|
|
2254
2255
|
isUsingSpread: t,
|
|
2255
2256
|
...r
|
|
2256
|
-
}))), s = Xn(e.navigation).pipe(
|
|
2257
|
+
}))), s = Xn(e.navigation).pipe(w(({ position: e }) => e), y(o));
|
|
2257
2258
|
return v([a, v([
|
|
2258
2259
|
t,
|
|
2259
2260
|
e.layout$,
|
|
2260
2261
|
s,
|
|
2261
2262
|
e.context.manifest$
|
|
2262
|
-
]).pipe(A(([t, n, r, i]) =>
|
|
2263
|
+
]).pipe(A(([t, n, r, i]) => Zr({
|
|
2263
2264
|
reader: e,
|
|
2264
2265
|
paginationInfo: t,
|
|
2265
2266
|
navigationPosition: r,
|
|
2266
2267
|
manifest: i
|
|
2267
|
-
})),
|
|
2268
|
+
})), w((e) => ({ percentageEstimateOfBook: e })))]).pipe(w(([e, t]) => ({
|
|
2268
2269
|
...e,
|
|
2269
2270
|
...t
|
|
2270
2271
|
})), y(o), g(5));
|
|
2271
|
-
},
|
|
2272
|
+
}, ti = (e) => (t) => {
|
|
2272
2273
|
let n = e(t), r = new l({
|
|
2273
2274
|
...n.pagination.state,
|
|
2274
2275
|
beginChapterInfo: void 0,
|
|
@@ -2286,7 +2287,7 @@ var un = class {
|
|
|
2286
2287
|
endHasAdjacentSpreadPage: !1,
|
|
2287
2288
|
endSpineItemReadingDirection: void 0,
|
|
2288
2289
|
percentageEstimateOfBook: 0
|
|
2289
|
-
}), i = new gr(n), a =
|
|
2290
|
+
}), i = new gr(n), a = ei(n).pipe(M((e) => R.log("Pagination", e))).subscribe(r);
|
|
2290
2291
|
return {
|
|
2291
2292
|
...n,
|
|
2292
2293
|
locateResource: i.locateResource.bind(i),
|
|
@@ -2303,7 +2304,7 @@ var un = class {
|
|
|
2303
2304
|
}
|
|
2304
2305
|
}
|
|
2305
2306
|
};
|
|
2306
|
-
},
|
|
2307
|
+
}, ni = (e) => ({
|
|
2307
2308
|
put: (t, n) => new Promise((r, i) => {
|
|
2308
2309
|
let a = e.transaction(["store"], "readwrite");
|
|
2309
2310
|
a.onerror = (e) => {
|
|
@@ -2354,16 +2355,16 @@ var un = class {
|
|
|
2354
2355
|
r(a.error ? a.error : a.transaction?.error);
|
|
2355
2356
|
};
|
|
2356
2357
|
})
|
|
2357
|
-
}),
|
|
2358
|
+
}), ri = async (e) => new Promise((t, n) => {
|
|
2358
2359
|
let r = window.indexedDB.open(e);
|
|
2359
2360
|
r.onerror = (e) => {
|
|
2360
2361
|
n(e);
|
|
2361
2362
|
}, r.onsuccess = () => {
|
|
2362
|
-
t(
|
|
2363
|
+
t(ni(r.result));
|
|
2363
2364
|
}, r.onupgradeneeded = () => {
|
|
2364
2365
|
r.result.createObjectStore("store");
|
|
2365
2366
|
};
|
|
2366
|
-
}),
|
|
2367
|
+
}), ii = (e) => {
|
|
2367
2368
|
let t = Date.now().toString(), n = new m(), r = (t) => {
|
|
2368
2369
|
if (typeof t == "string" || typeof t == "object") {
|
|
2369
2370
|
let n = typeof t == "object" ? t.id : t;
|
|
@@ -2373,7 +2374,7 @@ var un = class {
|
|
|
2373
2374
|
}, i = async (e, n) => {
|
|
2374
2375
|
let i = r(e);
|
|
2375
2376
|
if (!i) return new Response("Item not found", { status: 404 });
|
|
2376
|
-
let o = await (await
|
|
2377
|
+
let o = await (await ri("prose-reader")).get(`${t}_${i.id}`);
|
|
2377
2378
|
if (o) return new Response(o, { status: 200 });
|
|
2378
2379
|
let s = n && await n(i) || await fetch(i.href);
|
|
2379
2380
|
return a(i, s.clone()), s;
|
|
@@ -2385,27 +2386,27 @@ var un = class {
|
|
|
2385
2386
|
};
|
|
2386
2387
|
return n.asObservable().pipe(Te(({ id: e, data: n }) => {
|
|
2387
2388
|
let i = r(e);
|
|
2388
|
-
return i ?
|
|
2389
|
-
}), I(e.destroy$)).subscribe(),
|
|
2389
|
+
return i ? S(le([ri("prose-reader"), S(n.blob())])).pipe(F(([e, n]) => S(e.put(`${t}_${i.id}`, n))), be((e) => (R.error(e), u))) : u;
|
|
2390
|
+
}), I(e.destroy$)).subscribe(), T(e.manifest$.pipe(L(() => {
|
|
2390
2391
|
t = Date.now().toString();
|
|
2391
|
-
}))).pipe(F(() => (R.debug("Cleanup up old cache..."),
|
|
2392
|
+
}))).pipe(F(() => (R.debug("Cleanup up old cache..."), S(ri("prose-reader")).pipe(F((e) => S(e.keys()).pipe(P((e) => e.filter((e) => !e.toString().startsWith(t))), F((t) => {
|
|
2392
2393
|
let n = t.map((t) => e.remove(t));
|
|
2393
|
-
return
|
|
2394
|
+
return S(Promise.all(n));
|
|
2394
2395
|
}))), be((e) => (R.error(e), u))))), I(e.destroy$)).subscribe(), {
|
|
2395
2396
|
get: i,
|
|
2396
2397
|
destroy: () => {
|
|
2397
2398
|
n.complete();
|
|
2398
2399
|
}
|
|
2399
2400
|
};
|
|
2400
|
-
},
|
|
2401
|
-
let n = e(t), r =
|
|
2401
|
+
}, ai = (e) => (t) => {
|
|
2402
|
+
let n = e(t), r = ii(n.context), i = () => {
|
|
2402
2403
|
r.destroy(), n.destroy();
|
|
2403
2404
|
};
|
|
2404
2405
|
return {
|
|
2405
2406
|
...n,
|
|
2406
2407
|
destroy: i
|
|
2407
2408
|
};
|
|
2408
|
-
},
|
|
2409
|
+
}, oi = (e, t) => {
|
|
2409
2410
|
let n = e.node.ownerDocument?.createRange(), r = e.node.compareDocumentPosition(t.node);
|
|
2410
2411
|
if (n) {
|
|
2411
2412
|
try {
|
|
@@ -2423,10 +2424,10 @@ var un = class {
|
|
|
2423
2424
|
}
|
|
2424
2425
|
return n;
|
|
2425
2426
|
}
|
|
2426
|
-
},
|
|
2427
|
+
}, si = ({ selection: e, spineItem: t }) => {
|
|
2427
2428
|
let { anchorNode: n, anchorOffset: r, focusNode: i, focusOffset: a } = e;
|
|
2428
2429
|
if (!(!n || !i)) try {
|
|
2429
|
-
return
|
|
2430
|
+
return oi({
|
|
2430
2431
|
node: n,
|
|
2431
2432
|
offset: r
|
|
2432
2433
|
}, {
|
|
@@ -2440,7 +2441,7 @@ var un = class {
|
|
|
2440
2441
|
});
|
|
2441
2442
|
return;
|
|
2442
2443
|
}
|
|
2443
|
-
},
|
|
2444
|
+
}, ci = class extends Q {
|
|
2444
2445
|
constructor(e) {
|
|
2445
2446
|
super();
|
|
2446
2447
|
let t = e.contentDocument || e.contentWindow?.document;
|
|
@@ -2449,48 +2450,48 @@ var un = class {
|
|
|
2449
2450
|
let n = Et(t.body, {
|
|
2450
2451
|
childList: !0,
|
|
2451
2452
|
subtree: !0
|
|
2452
|
-
}).pipe(b((e) => !!e.find((e) => e.type === "childList" && e.removedNodes.length))), r = e.parentElement ? Et(e.parentElement, { childList: !0 }).pipe(b((t) => !!t.find((t) => Array.from(t.removedNodes).includes(e)))) :
|
|
2453
|
-
this.selectionChange$ =
|
|
2453
|
+
}).pipe(b((e) => !!e.find((e) => e.type === "childList" && e.removedNodes.length))), r = e.parentElement ? Et(e.parentElement, { childList: !0 }).pipe(b((t) => !!t.find((t) => Array.from(t.removedNodes).includes(e)))) : E(null);
|
|
2454
|
+
this.selectionChange$ = T(C(t, "selectionchange"), n).pipe(w(() => t.getSelection()), j(T(r, this.destroy$)), oe(null)), this.selectionOver$ = C(t, "pointerdown").pipe(A(() => T(C(t, "pointerup"), C(t, "pointercancel"), C(t, "contextmenu")).pipe(x(), ae(0), w((e) => {
|
|
2454
2455
|
let n = t.getSelection();
|
|
2455
2456
|
return n && !n.isCollapsed ? [e, n] : void 0;
|
|
2456
|
-
}), b(K))), j(
|
|
2457
|
+
}), b(K))), j(T(r, this.destroy$)));
|
|
2457
2458
|
}
|
|
2458
2459
|
}
|
|
2459
|
-
},
|
|
2460
|
+
}, li = (e) => e.watch("isLoaded").pipe(A(() => {
|
|
2460
2461
|
let t = e.renderer.getDocumentFrame(), n = t?.contentDocument || t?.contentWindow?.document;
|
|
2461
2462
|
if (!t || !n) return d;
|
|
2462
|
-
let r = new
|
|
2463
|
-
return
|
|
2463
|
+
let r = new ci(t);
|
|
2464
|
+
return T(r.selectionChange$.pipe(w((e) => {
|
|
2464
2465
|
if (e?.toString()) return {
|
|
2465
2466
|
type: "change",
|
|
2466
2467
|
selection: e
|
|
2467
2468
|
};
|
|
2468
|
-
})), r.selectionOver$.pipe(
|
|
2469
|
+
})), r.selectionOver$.pipe(w(([e, t]) => ({
|
|
2469
2470
|
type: "over",
|
|
2470
2471
|
event: e,
|
|
2471
2472
|
selection: t
|
|
2472
|
-
})))).pipe(j(e.unloaded$), oe(void 0),
|
|
2473
|
+
})))).pipe(j(e.unloaded$), oe(void 0), ce(() => {
|
|
2473
2474
|
r.destroy();
|
|
2474
2475
|
}));
|
|
2475
|
-
}), y()),
|
|
2476
|
-
let n = e(t), r, i = n.spineItemsManager.items$.pipe(A((e) =>
|
|
2476
|
+
}), y()), ui = (e) => (t) => {
|
|
2477
|
+
let n = e(t), r, i = n.spineItemsManager.items$.pipe(A((e) => T(...e.map((e) => {
|
|
2477
2478
|
let t = n.spineItemsManager.getSpineItemIndex(e) ?? 0;
|
|
2478
|
-
return
|
|
2479
|
+
return li(e).pipe(w((e) => {
|
|
2479
2480
|
if (e) return {
|
|
2480
2481
|
...e,
|
|
2481
2482
|
itemIndex: t
|
|
2482
2483
|
};
|
|
2483
2484
|
}));
|
|
2484
|
-
}))),
|
|
2485
|
+
}))), k(void 0), y(), M((e) => {
|
|
2485
2486
|
r = e;
|
|
2486
|
-
}),
|
|
2487
|
+
}), O({
|
|
2487
2488
|
refCount: !0,
|
|
2488
2489
|
bufferSize: 1
|
|
2489
|
-
})), a = i, o = i.pipe(
|
|
2490
|
+
})), a = i, o = i.pipe(w((e) => !!e), y(), b((e) => e), D()), s = o.pipe(A(() => a), y(), b((e) => !e), D()), c = i.pipe(b((e) => e?.type === "over"), D()), l = n.context.watch("rootElement").pipe(b(K), A((e) => C(e, "pointerdown")), N(a), w(([, e]) => e), k(void 0), O({
|
|
2490
2491
|
refCount: !0,
|
|
2491
2492
|
bufferSize: 1
|
|
2492
2493
|
}));
|
|
2493
|
-
return
|
|
2494
|
+
return T(a, l).pipe(j(n.$.destroy$)).subscribe(), {
|
|
2494
2495
|
...n,
|
|
2495
2496
|
selection: {
|
|
2496
2497
|
selection$: a,
|
|
@@ -2499,10 +2500,10 @@ var un = class {
|
|
|
2499
2500
|
selectionOver$: c,
|
|
2500
2501
|
lastSelectionOnPointerdown$: l,
|
|
2501
2502
|
getSelection: () => r,
|
|
2502
|
-
createOrderedRangeFromSelection:
|
|
2503
|
+
createOrderedRangeFromSelection: si
|
|
2503
2504
|
}
|
|
2504
2505
|
};
|
|
2505
|
-
},
|
|
2506
|
+
}, di = [
|
|
2506
2507
|
{
|
|
2507
2508
|
name: "bright",
|
|
2508
2509
|
backgroundColor: "white"
|
|
@@ -2517,9 +2518,9 @@ var un = class {
|
|
|
2517
2518
|
backgroundColor: "#191717",
|
|
2518
2519
|
foregroundColor: "#f1ebeb"
|
|
2519
2520
|
}
|
|
2520
|
-
],
|
|
2521
|
+
], fi = (e) => (t) => {
|
|
2521
2522
|
let n = e(t), r = new l(t.theme ?? "bright"), i = () => {
|
|
2522
|
-
let e =
|
|
2523
|
+
let e = di.find((e) => e.name === r.value);
|
|
2523
2524
|
return `
|
|
2524
2525
|
body {
|
|
2525
2526
|
${e === void 0 ? "" : `background-color: ${e.backgroundColor} !important;`}
|
|
@@ -2532,7 +2533,7 @@ var un = class {
|
|
|
2532
2533
|
` : ""}
|
|
2533
2534
|
`;
|
|
2534
2535
|
}, a = ({ container: e }) => {
|
|
2535
|
-
let t =
|
|
2536
|
+
let t = di.find((e) => e.name === r.value);
|
|
2536
2537
|
return t && B(e.style, "background-color", t.backgroundColor), () => {};
|
|
2537
2538
|
}, o = () => {
|
|
2538
2539
|
n.spineItemsManager.items.forEach((e) => {
|
|
@@ -2558,7 +2559,7 @@ var un = class {
|
|
|
2558
2559
|
$: { theme$: r.asObservable() }
|
|
2559
2560
|
}
|
|
2560
2561
|
};
|
|
2561
|
-
},
|
|
2562
|
+
}, pi = (e) => (t) => {
|
|
2562
2563
|
let n = e(t), r = (e) => !!($e(e) && (e.nodeName === "a" ? e : e.closest("a"))?.getAttribute("href")), i = (e, t, r) => {
|
|
2563
2564
|
let i = r.replace("${id}", n.id);
|
|
2564
2565
|
return nt(e, `${t}-${n.id}`, i);
|
|
@@ -2572,7 +2573,7 @@ var un = class {
|
|
|
2572
2573
|
};
|
|
2573
2574
|
};
|
|
2574
2575
|
navigator.userAgent.indexOf("") > -1 && navigator.userAgent.indexOf("Chrome");
|
|
2575
|
-
var
|
|
2576
|
+
var mi = (e) => (t) => e(t), hi = (e, t, n) => {
|
|
2576
2577
|
let { clientWidth: r, clientHeight: i } = n.value.element, a = {
|
|
2577
2578
|
maxX: 0,
|
|
2578
2579
|
minX: r * (1 - t),
|
|
@@ -2583,25 +2584,25 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2583
2584
|
x: Math.min(Math.max(e.x, a.minX), a.maxX),
|
|
2584
2585
|
y: Math.min(Math.max(e.y, a.minY), a.maxY)
|
|
2585
2586
|
};
|
|
2586
|
-
},
|
|
2587
|
+
}, gi = (e, t, n) => {
|
|
2587
2588
|
B(n.style, "transform-origin", "0 0");
|
|
2588
2589
|
let r = `translate3d(${t.x}px, ${t.y}px, 0px)`, i = `scale(${e})`;
|
|
2589
2590
|
B(n.style, "transform", `${r} ${i}`);
|
|
2590
|
-
},
|
|
2591
|
+
}, _i = (e, t, n, r) => {
|
|
2591
2592
|
let i = t / e, a = n.clientWidth, o = n.clientHeight, s = a / 2 - r.x, c = o / 2 - r.y;
|
|
2592
2593
|
return {
|
|
2593
2594
|
x: r.x + s * (1 - i),
|
|
2594
2595
|
y: r.y + c * (1 - i)
|
|
2595
2596
|
};
|
|
2596
|
-
},
|
|
2597
|
+
}, vi = class {
|
|
2597
2598
|
constructor(e) {
|
|
2598
2599
|
this.x = e.x, this.y = e.y;
|
|
2599
2600
|
}
|
|
2600
|
-
},
|
|
2601
|
+
}, yi = class extends vi {}, bi = class extends vi {
|
|
2601
2602
|
constructor(...e) {
|
|
2602
2603
|
super(...e), this.__symbol = Symbol("UnboundScrollPosition");
|
|
2603
2604
|
}
|
|
2604
|
-
},
|
|
2605
|
+
}, xi = class extends U {
|
|
2605
2606
|
constructor(e, t, n, r, i) {
|
|
2606
2607
|
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 }) => {
|
|
2607
2608
|
let t = this.value.element;
|
|
@@ -2613,7 +2614,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2613
2614
|
behavior: "instant"
|
|
2614
2615
|
}), ye(1).pipe(M(() => {
|
|
2615
2616
|
this.scrollingSubject.next(!1);
|
|
2616
|
-
}), j(
|
|
2617
|
+
}), j(T(this.scrollingSubject.pipe(me(1)), this.destroy$))).subscribe(), this.hookManager.execute("onViewportOffsetAdjust", void 0));
|
|
2617
2618
|
}, this.isActive = () => this.settings.values.computedPageTurnMode === "scrollable", this.getNavigationVisibleArea = () => this.viewport.relativeViewport;
|
|
2618
2619
|
let a = this.context.pipe(bt(["rootElement"]), M(({ rootElement: e }) => {
|
|
2619
2620
|
if (!e) return;
|
|
@@ -2623,8 +2624,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2623
2624
|
t && (e === "scrollable" ? B(t.style, "display", "block") : B(t.style, "display", "contents"));
|
|
2624
2625
|
})), s = this.navigateSubject.pipe(M(this.applyNavigationPosition));
|
|
2625
2626
|
this.isNavigating$ = this.scrollingSubject.asObservable();
|
|
2626
|
-
let c = v([
|
|
2627
|
-
this.userScroll$ = this.watch("element").pipe(b(K), A((e) => t.watch(["computedPageTurnMode"]).pipe(A(({ computedPageTurnMode: t }) => t === "controlled" ? d :
|
|
2627
|
+
let c = v([T(r.element$.pipe(b(K), A((e) => xt(e))), r.element$.pipe(b(K), A((e) => C(e, "scroll"))), r.spineItemsObserver.itemResize$).pipe(A(() => ye(10).pipe(w(() => !1), k(!0))), y(), k(!1)), this.isNavigating$]).pipe(w(([e, t]) => e || t), O(1));
|
|
2628
|
+
this.userScroll$ = this.watch("element").pipe(b(K), A((e) => t.watch(["computedPageTurnMode"]).pipe(A(({ computedPageTurnMode: t }) => t === "controlled" ? d : C(e, "scroll").pipe(N(c), b(([, e]) => !e), w(([e]) => e))))), D()), T(a, o, s).pipe(j(this.destroy$)).subscribe();
|
|
2628
2629
|
}
|
|
2629
2630
|
update(e) {
|
|
2630
2631
|
this.mergeCompare(e);
|
|
@@ -2641,30 +2642,30 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2641
2642
|
}
|
|
2642
2643
|
fromSpinePosition(e) {
|
|
2643
2644
|
let t = this.viewport.scaleFactor;
|
|
2644
|
-
return new
|
|
2645
|
+
return new yi({
|
|
2645
2646
|
x: e.x * t,
|
|
2646
2647
|
y: e.y * t
|
|
2647
2648
|
});
|
|
2648
2649
|
}
|
|
2649
2650
|
get scrollPosition() {
|
|
2650
2651
|
let e = this.value.element;
|
|
2651
|
-
return new
|
|
2652
|
+
return new yi({
|
|
2652
2653
|
x: e?.scrollLeft ?? 0,
|
|
2653
2654
|
y: e?.scrollTop ?? 0
|
|
2654
2655
|
});
|
|
2655
2656
|
}
|
|
2656
|
-
},
|
|
2657
|
+
}, Si = (e, t, n, r, i) => {
|
|
2657
2658
|
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;
|
|
2658
|
-
return new
|
|
2659
|
+
return new bi({
|
|
2659
2660
|
x: f - a / 2 + r,
|
|
2660
2661
|
y: p - o / 2 + i
|
|
2661
2662
|
});
|
|
2662
|
-
},
|
|
2663
|
-
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 =
|
|
2663
|
+
}, Ci = (e, t) => {
|
|
2664
|
+
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 = Si(a ?? Ye(), s, e, c, l), d = e < 1 ? "down" : "up";
|
|
2664
2665
|
o && z(o, `data-${X}-zooming-direction`, d), e < 1 ? B(i.style, "transform-origin", "top") : e > 1 && B(i.style, "transform-origin", `${c}px ${l}px`), B(i.style, "transform", `scale(${e})`);
|
|
2665
2666
|
let f = r.fromScrollPosition(u);
|
|
2666
2667
|
t.navigation.navigate({ position: f });
|
|
2667
|
-
},
|
|
2668
|
+
}, wi = 200, Ti = class extends U {
|
|
2668
2669
|
constructor(e) {
|
|
2669
2670
|
super({
|
|
2670
2671
|
isZooming: !1,
|
|
@@ -2673,28 +2674,28 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2673
2674
|
x: 0,
|
|
2674
2675
|
y: 0
|
|
2675
2676
|
}
|
|
2676
|
-
}), this.reader = e, this.enterSubject = new m(), this.exitSubject = new m(),
|
|
2677
|
+
}), this.reader = e, this.enterSubject = new m(), this.exitSubject = new m(), T(this.enterSubject.pipe(A((e) => {
|
|
2677
2678
|
let { scale: t = 1, animate: n = !1 } = e ?? {}, r = this.reader.viewport.value.element;
|
|
2678
2679
|
z(this.viewport.element, `data-${X}-zooming`, "true");
|
|
2679
2680
|
let i = this.scrollNavigationController.value.element;
|
|
2680
|
-
return i && z(i, `data-${X}-zooming`, this.isControlled ? "false" : "true"), n && this.isControlled && B(r.style, "transition", `transform ${
|
|
2681
|
+
return i && z(i, `data-${X}-zooming`, this.isControlled ? "false" : "true"), n && this.isControlled && B(r.style, "transition", `transform ${wi}ms`), this.mergeCompare({
|
|
2681
2682
|
isZooming: !0,
|
|
2682
2683
|
currentScale: 1,
|
|
2683
2684
|
currentPosition: {
|
|
2684
2685
|
x: 0,
|
|
2685
2686
|
y: 0
|
|
2686
2687
|
}
|
|
2687
|
-
}), this.updateZoom(t), t !== 1 && this.isControlled ? ye(e?.animate ?
|
|
2688
|
+
}), this.updateZoom(t), t !== 1 && this.isControlled ? ye(e?.animate ? wi : 0).pipe(M(() => {
|
|
2688
2689
|
this.reader.layout();
|
|
2689
2690
|
})) : u;
|
|
2690
2691
|
})), this.exitSubject.pipe(A((e) => {
|
|
2691
2692
|
let t = this.reader.viewport.value.element;
|
|
2692
2693
|
z(this.viewport.element, `data-${X}-zooming`, "false");
|
|
2693
2694
|
let n = this.scrollNavigationController.value.element;
|
|
2694
|
-
return n && (Re(n, `data-${X}-zooming-direction`), z(n, `data-${X}-zooming`, "false")), e?.animate && this.isControlled && B(t.style, "transition", `transform ${
|
|
2695
|
+
return n && (Re(n, `data-${X}-zooming-direction`), z(n, `data-${X}-zooming`, "false")), e?.animate && this.isControlled && B(t.style, "transition", `transform ${wi}ms`), this.updateZoom(1, {
|
|
2695
2696
|
x: 0,
|
|
2696
2697
|
y: 0
|
|
2697
|
-
}), V(t.style, "transform"), this.mergeCompare({ isZooming: !1 }), ye(e?.animate ?
|
|
2698
|
+
}), V(t.style, "transform"), this.mergeCompare({ isZooming: !1 }), ye(e?.animate ? wi : 0).pipe(M(() => {
|
|
2698
2699
|
let e = this.reader.viewport.value.element;
|
|
2699
2700
|
V(e.style, "transform-origin"), V(e.style, "transition"), this.isControlled && this.reader.layout();
|
|
2700
2701
|
}), j(this.enterSubject));
|
|
@@ -2707,17 +2708,17 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2707
2708
|
this.exitSubject.next(e);
|
|
2708
2709
|
}
|
|
2709
2710
|
move(e, t) {
|
|
2710
|
-
this.isControlled && (V(this.viewport.element.style, "transition"), this.updateZoom(this.value.currentScale, e, { constraints: t?.constrain === "within-viewport" ? (...e) =>
|
|
2711
|
+
this.isControlled && (V(this.viewport.element.style, "transition"), this.updateZoom(this.value.currentScale, e, { constraints: t?.constrain === "within-viewport" ? (...e) => hi(...e, this.reader.viewport) : void 0 }));
|
|
2711
2712
|
}
|
|
2712
2713
|
scaleAt(e, t) {
|
|
2713
2714
|
if (!this.value.isZooming) return;
|
|
2714
2715
|
V(this.viewport.element.style, "transition");
|
|
2715
2716
|
let n = Math.ceil(e * 100) / 100;
|
|
2716
|
-
this.updateZoom(n, void 0, { constraints: t?.constrain === "within-viewport" ? (...e) =>
|
|
2717
|
+
this.updateZoom(n, void 0, { constraints: t?.constrain === "within-viewport" ? (...e) => hi(...e, this.reader.viewport) : void 0 });
|
|
2717
2718
|
}
|
|
2718
2719
|
updateZoom(e, t, n) {
|
|
2719
2720
|
if (this.isControlled) {
|
|
2720
|
-
let r = t ||
|
|
2721
|
+
let r = t || _i(this.value.currentScale, e, this.viewport.element, this.value.currentPosition), i = n?.constraints?.(r, e) ?? r;
|
|
2721
2722
|
return this.applyZoom(e, i), this.mergeCompare({
|
|
2722
2723
|
currentScale: e,
|
|
2723
2724
|
currentPosition: i
|
|
@@ -2726,7 +2727,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2726
2727
|
this.applyZoom(e, t ?? this.value.currentPosition), this.mergeCompare({ currentScale: e });
|
|
2727
2728
|
}
|
|
2728
2729
|
applyZoom(e, t) {
|
|
2729
|
-
this.isControlled ?
|
|
2730
|
+
this.isControlled ? gi(e, t, this.viewport.element) : Ci(e, this.reader), this.reader.viewport.layout();
|
|
2730
2731
|
}
|
|
2731
2732
|
get isControlled() {
|
|
2732
2733
|
return this.reader.settings.values.computedPageTurnMode === "controlled";
|
|
@@ -2737,8 +2738,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2737
2738
|
get viewport() {
|
|
2738
2739
|
return this.reader.viewport.value;
|
|
2739
2740
|
}
|
|
2740
|
-
},
|
|
2741
|
-
let n = e(t), r = new
|
|
2741
|
+
}, Ei = (e) => (t) => {
|
|
2742
|
+
let n = e(t), r = new Ti(n), i = () => {
|
|
2742
2743
|
r.destroy(), n.destroy();
|
|
2743
2744
|
}, a = r;
|
|
2744
2745
|
return {
|
|
@@ -2755,12 +2756,12 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2755
2756
|
}
|
|
2756
2757
|
}
|
|
2757
2758
|
};
|
|
2758
|
-
},
|
|
2759
|
+
}, Di = (e) => Me({
|
|
2759
2760
|
spineIndex: e.index,
|
|
2760
2761
|
spineId: e.id
|
|
2761
|
-
}),
|
|
2762
|
+
}), Oi = ({ nodeOrRange: e, offset: t, item: n }) => {
|
|
2762
2763
|
let r = "ownerDocument" in e ? e.ownerDocument : e.startContainer.ownerDocument;
|
|
2763
|
-
return !r?.documentElement || e === r ?
|
|
2764
|
+
return !r?.documentElement || e === r ? Di(n) : tt(e) ? Me({
|
|
2764
2765
|
start: {
|
|
2765
2766
|
node: e.startContainer,
|
|
2766
2767
|
offset: e.startOffset,
|
|
@@ -2779,22 +2780,22 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2779
2780
|
spineIndex: n.index,
|
|
2780
2781
|
spineId: n.id
|
|
2781
2782
|
});
|
|
2782
|
-
},
|
|
2783
|
+
}, ki = ({ spineItem: e, pageNode: t }) => Oi({
|
|
2783
2784
|
nodeOrRange: t.node,
|
|
2784
2785
|
offset: t.offset,
|
|
2785
2786
|
item: e
|
|
2786
|
-
}).trim(),
|
|
2787
|
+
}).trim(), Ai = (e, t) => Oi({
|
|
2787
2788
|
nodeOrRange: e,
|
|
2788
2789
|
item: t
|
|
2789
|
-
}),
|
|
2790
|
-
let t = Fe(e), n = ((
|
|
2790
|
+
}), ji = (e) => e.index.toString(), Mi = (e) => e[0]?.index === 6 && e.length > 1, Ni = (e) => Ne(Fe(e)), Pi = (e) => Array.isArray(e) ? e[0] && Mi(e[0]) ? e[0] : void 0 : e.parent[0] && Mi(e.parent[0]) ? e.parent[0] : void 0, Fi = (e) => {
|
|
2791
|
+
let t = Fe(e), n = ((Pi(t) ?? [])[1]?.index ?? 2) / 2 - 1, r = Pe(t);
|
|
2791
2792
|
return {
|
|
2792
2793
|
isCfiRange: r,
|
|
2793
2794
|
itemIndex: n,
|
|
2794
2795
|
offset: (r ? t.end.at(-1)?.at(-1)?.offset : t.at(-1)?.at(-1)?.offset) ?? 0
|
|
2795
2796
|
};
|
|
2796
|
-
},
|
|
2797
|
-
let { itemIndex: n, ...r } =
|
|
2797
|
+
}, Ii = ({ cfi: e, spineItemsManager: t }) => {
|
|
2798
|
+
let { itemIndex: n, ...r } = Fi(e), i = t.get(n);
|
|
2798
2799
|
if (!i) return {
|
|
2799
2800
|
...r,
|
|
2800
2801
|
itemIndex: n,
|
|
@@ -2829,27 +2830,27 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2829
2830
|
spineItem: i,
|
|
2830
2831
|
node: null
|
|
2831
2832
|
};
|
|
2832
|
-
},
|
|
2833
|
+
}, Li = class {
|
|
2833
2834
|
constructor(e, t) {
|
|
2834
2835
|
this.hookManager = e, this.spineItemsManager = t, this.transformForResolve = (e) => {
|
|
2835
2836
|
let { finalParams: t } = this.hookManager.executeSequential("cfi.beforeResolve", { cfi: e }, (e, t) => ({ cfi: t ?? e.cfi }));
|
|
2836
2837
|
return t.cfi;
|
|
2837
|
-
}, this.parseCfi = (e) =>
|
|
2838
|
+
}, this.parseCfi = (e) => Fi(this.transformForResolve(e)), this.getSpineItemFromCfi = (e) => {
|
|
2838
2839
|
let { itemIndex: t } = this.parseCfi(e);
|
|
2839
2840
|
if (t !== void 0) return this.spineItemsManager.get(t);
|
|
2840
|
-
}, this.isRootCfi = (e) =>
|
|
2841
|
-
cfi:
|
|
2841
|
+
}, this.isRootCfi = (e) => Ni(e), this.generateRootCfi = (e) => this.transformGeneratedCfi({
|
|
2842
|
+
cfi: Di(e),
|
|
2842
2843
|
spineItem: e
|
|
2843
2844
|
}), this.generateCfiForSpineItemPage = ({ spineItem: e, pageNode: t }) => this.transformGeneratedCfi({
|
|
2844
|
-
cfi:
|
|
2845
|
+
cfi: ki({
|
|
2845
2846
|
spineItem: e,
|
|
2846
2847
|
pageNode: t
|
|
2847
2848
|
}),
|
|
2848
2849
|
spineItem: e
|
|
2849
2850
|
}), this.generateCfiFromRange = (e, t) => this.transformGeneratedCfi({
|
|
2850
|
-
cfi:
|
|
2851
|
+
cfi: Ai(e, t),
|
|
2851
2852
|
spineItem: t
|
|
2852
|
-
}), this.resolveCfi = (e) =>
|
|
2853
|
+
}), this.resolveCfi = (e) => Ii({
|
|
2853
2854
|
...e,
|
|
2854
2855
|
cfi: this.transformForResolve(e.cfi),
|
|
2855
2856
|
spineItemsManager: this.spineItemsManager
|
|
@@ -2862,20 +2863,20 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2862
2863
|
}));
|
|
2863
2864
|
return t.cfi;
|
|
2864
2865
|
}
|
|
2865
|
-
},
|
|
2866
|
+
}, Ri = (e) => e?.spineItems.every((t) => (t.renditionLayout ?? e.renditionLayout) === "pre-paginated"), zi = class {
|
|
2866
2867
|
constructor() {
|
|
2867
2868
|
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(b((e) => e === "free")), this.viewportBusy$ = this.viewportState$.pipe(b((e) => e === "busy")), this.navigation$ = this.navigationSubject.asObservable(), this.position$ = this.positionSubject.asObservable();
|
|
2868
2869
|
}
|
|
2869
|
-
},
|
|
2870
|
+
}, Bi = class extends U {
|
|
2870
2871
|
constructor() {
|
|
2871
|
-
super({ assumedRenditionLayout: "reflowable" }), this.bridgeEvent = new
|
|
2872
|
+
super({ assumedRenditionLayout: "reflowable" }), this.bridgeEvent = new zi(), this.manifest$ = this.pipe(P((e) => e.manifest), Ce(K), Se()), this.isRTL = () => this.value.manifest?.readingDirection === "rtl";
|
|
2872
2873
|
}
|
|
2873
2874
|
update(e) {
|
|
2874
2875
|
let t = this.value, n = e.manifest ?? t.manifest, r = {
|
|
2875
2876
|
...t,
|
|
2876
2877
|
...e,
|
|
2877
2878
|
...e.manifest && {
|
|
2878
|
-
isFullyPrePaginated:
|
|
2879
|
+
isFullyPrePaginated: Ri(n),
|
|
2879
2880
|
assumedRenditionLayout: n?.renditionLayout ?? "reflowable"
|
|
2880
2881
|
}
|
|
2881
2882
|
};
|
|
@@ -2887,7 +2888,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2887
2888
|
get readingDirection() {
|
|
2888
2889
|
return this.manifest?.readingDirection;
|
|
2889
2890
|
}
|
|
2890
|
-
},
|
|
2891
|
+
}, Vi = class extends U {
|
|
2891
2892
|
constructor(e, t) {
|
|
2892
2893
|
super({
|
|
2893
2894
|
supportedPageTurnAnimation: [
|
|
@@ -2898,12 +2899,12 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2898
2899
|
supportedPageTurnMode: ["controlled", "scrollable"],
|
|
2899
2900
|
supportedPageTurnDirection: ["horizontal", "vertical"],
|
|
2900
2901
|
supportedComputedPageTurnDirection: ["horizontal", "vertical"]
|
|
2901
|
-
}), v([e.watch(["manifest", "hasVerticalWriting"]), t.watch(["computedPageTurnMode"])]).pipe(
|
|
2902
|
+
}), v([e.watch(["manifest", "hasVerticalWriting"]), t.watch(["computedPageTurnMode"])]).pipe(w(([{ manifest: e, hasVerticalWriting: t }, { computedPageTurnMode: n }]) => ({
|
|
2902
2903
|
hasVerticalWriting: t,
|
|
2903
2904
|
renditionFlow: e?.renditionFlow,
|
|
2904
2905
|
renditionLayout: e?.renditionLayout,
|
|
2905
2906
|
computedPageTurnMode: n
|
|
2906
|
-
})), y(o),
|
|
2907
|
+
})), y(o), w(({ hasVerticalWriting: e, renditionFlow: t, renditionLayout: n, computedPageTurnMode: r }) => ({
|
|
2907
2908
|
...this.value,
|
|
2908
2909
|
supportedPageTurnMode: t === "scrolled-continuous" ? ["scrollable"] : ["controlled", "scrollable"],
|
|
2909
2910
|
supportedPageTurnAnimation: t === "scrolled-continuous" || r === "scrollable" ? ["none"] : e ? ["fade", "none"] : [
|
|
@@ -2914,7 +2915,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2914
2915
|
supportedPageTurnDirection: r === "scrollable" ? ["vertical"] : n === "reflowable" ? ["horizontal"] : ["horizontal", "vertical"]
|
|
2915
2916
|
})), j(this.destroy$)).subscribe(this.next.bind(this));
|
|
2916
2917
|
}
|
|
2917
|
-
},
|
|
2918
|
+
}, Hi = class {
|
|
2918
2919
|
constructor() {
|
|
2919
2920
|
this._hooks = [], this._hookExecutions = [];
|
|
2920
2921
|
}
|
|
@@ -2946,7 +2947,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2946
2947
|
id: t,
|
|
2947
2948
|
ref: n,
|
|
2948
2949
|
abortController: r,
|
|
2949
|
-
destroyFn: () => (r.abort(),
|
|
2950
|
+
destroyFn: () => (r.abort(), E(void 0))
|
|
2950
2951
|
};
|
|
2951
2952
|
});
|
|
2952
2953
|
this._hookExecutions.push(...a);
|
|
@@ -2997,16 +2998,16 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
2997
2998
|
let r = this._hookExecutions.filter((r) => n && r.ref === n || e === r.name && (!t || t && t === r.id));
|
|
2998
2999
|
return this._hookExecutions = this._hookExecutions.filter((e) => !r.includes(e)), v(r.map(({ destroyFn: e }) => e()));
|
|
2999
3000
|
}
|
|
3000
|
-
},
|
|
3001
|
+
}, Ui = "[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}", Wi = (e) => ({
|
|
3001
3002
|
x: -e.x,
|
|
3002
3003
|
y: -e.y
|
|
3003
|
-
}),
|
|
3004
|
+
}), Gi = (e) => e instanceof DOMMatrix ? new J({
|
|
3004
3005
|
x: -e.e,
|
|
3005
3006
|
y: -e.f
|
|
3006
3007
|
}) : new J({
|
|
3007
3008
|
x: -e.x,
|
|
3008
3009
|
y: -e.y
|
|
3009
|
-
}),
|
|
3010
|
+
}), Ki = R.namespace("navigation/ControlledNavigationController"), qi = class extends Q {
|
|
3010
3011
|
constructor(e, t, n, r, i) {
|
|
3011
3012
|
super(), this.settings = e, this.hookManager = t, this.context = n, this.spine = r, this.viewport = i, this.navigateSubject = new m(), this.element$ = new l(document.createElement("div")), this.isActive = () => this.settings.values.computedPageTurnMode === "controlled", this.getNavigationVisibleArea = () => this.viewport.absoluteViewport;
|
|
3012
3013
|
let o = this.spine.element$.pipe(b(K), N(this.element$), M(([e, t]) => {
|
|
@@ -3019,8 +3020,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3019
3020
|
e.values.computedPageTurnMode === "scrollable" ? B(t.style, "display", "contents") : B(t.style, "display", "block");
|
|
3020
3021
|
}));
|
|
3021
3022
|
this.layout$ = s.pipe(M(() => {
|
|
3022
|
-
|
|
3023
|
-
}),
|
|
3023
|
+
Ki.info("layout", e.values);
|
|
3024
|
+
}), D()), this.isNavigating$ = this.navigateSubject.pipe(y((e, t) => a(e.position, t.position)), w(({ animation: t, position: n }) => (Ki.info("Navigation requested", {
|
|
3024
3025
|
animation: t,
|
|
3025
3026
|
position: n
|
|
3026
3027
|
}), {
|
|
@@ -3030,25 +3031,25 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3030
3031
|
position: n
|
|
3031
3032
|
})), A((t) => {
|
|
3032
3033
|
let n = this.element$.getValue();
|
|
3033
|
-
return B(n.style, "transition", "none"), B(n.style, "opacity", "1"), E(
|
|
3034
|
-
if (t?.type !== "manualAdjust") return
|
|
3034
|
+
return B(n.style, "transition", "none"), B(n.style, "opacity", "1"), T(E(!0), E(null).pipe(fe(() => {
|
|
3035
|
+
if (t?.type !== "manualAdjust") return E(!1);
|
|
3035
3036
|
let n = t.animation === "snap" ? e.values.snapAnimationDuration : e.values.computedPageTurnAnimationDuration, r = t.animation === "snap" ? "slide" : e.values.computedPageTurnAnimation;
|
|
3036
|
-
return
|
|
3037
|
+
return E(t).pipe(t.shouldAnimate ? ae(1, h) : ue, M((e) => {
|
|
3037
3038
|
let i = this.element$.getValue();
|
|
3038
3039
|
e.shouldAnimate ? r === "fade" ? (B(i.style, "transition", `opacity ${n / 2}ms`), B(i.style, "opacity", "0")) : (t.animation === "snap" || r === "slide") && (B(i.style, "transition", `transform ${n}ms`), B(i.style, "opacity", "1")) : (B(i.style, "transition", "none"), B(i.style, "opacity", "1"));
|
|
3039
3040
|
}), M((e) => {
|
|
3040
3041
|
r !== "fade" && this.applyNavigationPosition(e.position);
|
|
3041
|
-
}), t.shouldAnimate ? ae(n / 2, h) :
|
|
3042
|
+
}), t.shouldAnimate ? ae(n / 2, h) : ue, M((e) => {
|
|
3042
3043
|
let t = this.element$.getValue();
|
|
3043
3044
|
r === "fade" && (this.applyNavigationPosition(e.position), B(t.style, "opacity", "1"));
|
|
3044
|
-
}), t.shouldAnimate ? ae(n / 2, h) :
|
|
3045
|
+
}), t.shouldAnimate ? ae(n / 2, h) : ue, M((e) => {
|
|
3045
3046
|
r === "fade" && this.applyNavigationPosition(e.position);
|
|
3046
3047
|
}));
|
|
3047
|
-
}),
|
|
3048
|
-
}),
|
|
3048
|
+
}), w(() => !1)));
|
|
3049
|
+
}), k(!1), O(1)), T(o, this.isNavigating$, this.layout$).pipe(j(this.destroy$)).subscribe();
|
|
3049
3050
|
}
|
|
3050
3051
|
applyNavigationPosition(e) {
|
|
3051
|
-
let t = this.element$.getValue(), n =
|
|
3052
|
+
let t = this.element$.getValue(), n = Wi(e);
|
|
3052
3053
|
B(t.style, "transform", `translate(${n.x}px, ${n.y}px)`), this.hookManager.execute("onViewportOffsetAdjust", void 0);
|
|
3053
3054
|
}
|
|
3054
3055
|
navigate(e) {
|
|
@@ -3059,22 +3060,22 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3059
3060
|
return !n || n === "none" ? new J({
|
|
3060
3061
|
x: 0,
|
|
3061
3062
|
y: 0
|
|
3062
|
-
}) :
|
|
3063
|
+
}) : Gi(new DOMMatrix(n));
|
|
3063
3064
|
}
|
|
3064
|
-
},
|
|
3065
|
+
}, Ji = () => (e) => e.pipe(w(({ navigation: e, pagination: t, ...n }) => ({
|
|
3065
3066
|
navigation: {
|
|
3066
3067
|
...e,
|
|
3067
3068
|
paginationBeginCfi: t.beginCfi
|
|
3068
3069
|
},
|
|
3069
3070
|
...n
|
|
3070
|
-
}))),
|
|
3071
|
+
}))), Yi = (e, t, n) => e.bridgeEvent.pagination$.pipe(N(t), b(([e, t]) => e.navigationId === t.id), A(([e, t]) => (n.spineItemsManager.get(t.spineItem)?.isReady$.pipe(x()) ?? E(!1)).pipe(b((e) => e), w(() => ({
|
|
3071
3072
|
pagination: e,
|
|
3072
3073
|
navigation: t
|
|
3073
|
-
})))),
|
|
3074
|
+
})))), Ji(), y((e, t) => e.navigation.paginationBeginCfi === t.navigation.paginationBeginCfi), w(({ navigation: e }) => ({
|
|
3074
3075
|
...e,
|
|
3075
3076
|
meta: { triggeredBy: "pagination" },
|
|
3076
3077
|
requestedPosition: e.position
|
|
3077
|
-
}))),
|
|
3078
|
+
}))), Xi = ({ navigationResolver: e, getNavigationVisibleArea: t }) => (n) => n.pipe(w(([n, r]) => {
|
|
3078
3079
|
let i = n.position, a = i ? t() : void 0, o = i && a ? e.clampPositionInSpine(i, a) : void 0;
|
|
3079
3080
|
return {
|
|
3080
3081
|
previousNavigation: r,
|
|
@@ -3089,7 +3090,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3089
3090
|
position: o
|
|
3090
3091
|
}
|
|
3091
3092
|
};
|
|
3092
|
-
})),
|
|
3093
|
+
})), Zi = ({ navigationResolver: e }) => (t) => t.pipe(w((t) => {
|
|
3093
3094
|
if (t.navigation.cfi) {
|
|
3094
3095
|
let n = e.getNavigationForCfi(t.navigation.cfi);
|
|
3095
3096
|
if (n) return {
|
|
@@ -3101,8 +3102,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3101
3102
|
};
|
|
3102
3103
|
}
|
|
3103
3104
|
return t;
|
|
3104
|
-
})),
|
|
3105
|
-
let i =
|
|
3105
|
+
})), Qi = ({ 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", $i = ({ context: e, settings: t }) => (n) => n.pipe(w(({ navigation: n, previousNavigation: r }) => {
|
|
3106
|
+
let i = Qi({
|
|
3106
3107
|
context: e,
|
|
3107
3108
|
navigation: n,
|
|
3108
3109
|
previousNavigation: r,
|
|
@@ -3116,7 +3117,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3116
3117
|
},
|
|
3117
3118
|
direction: i
|
|
3118
3119
|
};
|
|
3119
|
-
})),
|
|
3120
|
+
})), ea = ({ spineItemsManager: e, navigationResolver: t, settings: n, viewport: r }) => (i) => i.pipe(w(({ navigation: i, ...a }) => {
|
|
3120
3121
|
let o = e.get(i.spineItem);
|
|
3121
3122
|
if (i.position) return n.values.computedPageTurnMode === "scrollable" ? {
|
|
3122
3123
|
navigation: {
|
|
@@ -3149,7 +3150,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3149
3150
|
},
|
|
3150
3151
|
...a
|
|
3151
3152
|
};
|
|
3152
|
-
})),
|
|
3153
|
+
})), ta = ({ settings: e, spineItemsManager: t, navigationResolver: n, spineLocator: r, cfi: i }) => (a) => {
|
|
3153
3154
|
let o = (a) => {
|
|
3154
3155
|
let { position: o, spineItem: s, cfi: c, directionFromLastNavigation: l } = a, { navigationSnapThreshold: u, computedPageTurnMode: d } = e.values;
|
|
3155
3156
|
if (s !== void 0) {
|
|
@@ -3185,7 +3186,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3185
3186
|
}
|
|
3186
3187
|
return o && d === "scrollable" ? r.getSpineItemFromPosition(o) : t.get(0);
|
|
3187
3188
|
};
|
|
3188
|
-
return a.pipe(
|
|
3189
|
+
return a.pipe(w(({ navigation: e, ...n }) => {
|
|
3189
3190
|
let r = o(e);
|
|
3190
3191
|
return {
|
|
3191
3192
|
navigation: {
|
|
@@ -3195,9 +3196,9 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3195
3196
|
...n
|
|
3196
3197
|
};
|
|
3197
3198
|
}));
|
|
3198
|
-
},
|
|
3199
|
+
}, na = ({ spine: e }) => (t) => t.pipe(A(({ navigation: t, ...n }) => {
|
|
3199
3200
|
let r = e.getSpineItemSpineLayoutInfo(t.spineItem), i = e.spineItemsManager.get(t.spineItem);
|
|
3200
|
-
return (i?.isReady$ ??
|
|
3201
|
+
return (i?.isReady$ ?? E(!1)).pipe(x(), w((e) => ({
|
|
3201
3202
|
navigation: {
|
|
3202
3203
|
...t,
|
|
3203
3204
|
spineItemHeight: r?.height,
|
|
@@ -3209,7 +3210,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3209
3210
|
},
|
|
3210
3211
|
...n
|
|
3211
3212
|
})));
|
|
3212
|
-
})),
|
|
3213
|
+
})), ra = ({ settings: e, spineItemsManager: t, spineLocator: n, navigationResolver: r }) => (i) => {
|
|
3213
3214
|
let a = (i) => {
|
|
3214
3215
|
let { navigationSnapThreshold: a, computedPageTurnMode: o } = e.values, s = t.get(i.spineItem);
|
|
3215
3216
|
if (!(!s || !i.position)) {
|
|
@@ -3239,14 +3240,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3239
3240
|
return n.getSpineItemPositionFromSpinePosition(i.position, s);
|
|
3240
3241
|
}
|
|
3241
3242
|
};
|
|
3242
|
-
return i.pipe(
|
|
3243
|
+
return i.pipe(w(({ navigation: e, ...t }) => ({
|
|
3243
3244
|
navigation: {
|
|
3244
3245
|
...e,
|
|
3245
3246
|
positionInSpineItem: a(e)
|
|
3246
3247
|
},
|
|
3247
3248
|
...t
|
|
3248
3249
|
})));
|
|
3249
|
-
},
|
|
3250
|
+
}, ia = ({ navigationResolver: e }) => (t) => t.pipe(w((t) => {
|
|
3250
3251
|
if (t.navigation.url) {
|
|
3251
3252
|
let n = e.getNavigationForUrl(t.navigation.url);
|
|
3252
3253
|
if (n) return {
|
|
@@ -3259,9 +3260,9 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3259
3260
|
};
|
|
3260
3261
|
}
|
|
3261
3262
|
return t;
|
|
3262
|
-
})),
|
|
3263
|
+
})), aa = class {
|
|
3263
3264
|
constructor() {
|
|
3264
|
-
this.isLockedSubject = new l(0), this.isLocked$ = this.isLockedSubject.pipe(
|
|
3265
|
+
this.isLockedSubject = new l(0), this.isLocked$ = this.isLockedSubject.pipe(w((e) => !!e), y());
|
|
3265
3266
|
}
|
|
3266
3267
|
lock() {
|
|
3267
3268
|
let e = !1;
|
|
@@ -3269,9 +3270,9 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3269
3270
|
e || (e = !0, this.isLockedSubject.next(this.isLockedSubject.getValue() - 1));
|
|
3270
3271
|
};
|
|
3271
3272
|
}
|
|
3272
|
-
},
|
|
3273
|
+
}, oa = ({ spineLocator: e, navigation: t, navigationResolver: n, spineItemsManager: r, spine: i, cfiManager: a }) => {
|
|
3273
3274
|
let o = r.get(t.spineItem);
|
|
3274
|
-
return o ? o.isReady$.pipe(
|
|
3275
|
+
return o ? o.isReady$.pipe(x(), w((r) => {
|
|
3275
3276
|
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;
|
|
3276
3277
|
if (t.url !== void 0 && (l || u || r && !t.spineItemIsReady)) {
|
|
3277
3278
|
let e = n.getNavigationForUrl(t.url);
|
|
@@ -3305,11 +3306,11 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3305
3306
|
});
|
|
3306
3307
|
}
|
|
3307
3308
|
return c ? n.getNavigationForPosition(t.position) : n.getNavigationForSpineIndexOrId(o);
|
|
3308
|
-
})) :
|
|
3309
|
+
})) : E(new J({
|
|
3309
3310
|
x: 0,
|
|
3310
3311
|
y: 0
|
|
3311
3312
|
}));
|
|
3312
|
-
},
|
|
3313
|
+
}, sa = ({ navigation: e, spineLocator: t, spineItemsManager: n, settings: r, navigationResolver: i, spine: a }) => {
|
|
3313
3314
|
let { spineItem: o } = e, s = n.get(o);
|
|
3314
3315
|
if (!s) return new J({
|
|
3315
3316
|
x: 0,
|
|
@@ -3360,21 +3361,21 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3360
3361
|
}
|
|
3361
3362
|
}
|
|
3362
3363
|
return e.position;
|
|
3363
|
-
},
|
|
3364
|
+
}, ca = ({ navigation: e, spineItemsManager: t, settings: n, spineLocator: r, navigationResolver: i, spine: a, cfiManager: o }) => n.values.computedPageTurnMode === "scrollable" ? E(sa({
|
|
3364
3365
|
navigation: e,
|
|
3365
3366
|
spineLocator: r,
|
|
3366
3367
|
navigationResolver: i,
|
|
3367
3368
|
settings: n,
|
|
3368
3369
|
spineItemsManager: t,
|
|
3369
3370
|
spine: a
|
|
3370
|
-
})) :
|
|
3371
|
+
})) : oa({
|
|
3371
3372
|
navigation: e,
|
|
3372
3373
|
spineLocator: r,
|
|
3373
3374
|
navigationResolver: i,
|
|
3374
3375
|
spineItemsManager: t,
|
|
3375
3376
|
spine: a,
|
|
3376
3377
|
cfiManager: o
|
|
3377
|
-
}),
|
|
3378
|
+
}), la = ({ settings: e, navigationResolver: t, context: n, spine: r, cfiManager: i }) => (a) => a.pipe(A((a) => ca({
|
|
3378
3379
|
spineLocator: r.locator,
|
|
3379
3380
|
navigation: a.navigation,
|
|
3380
3381
|
navigationResolver: t,
|
|
@@ -3384,13 +3385,13 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3384
3385
|
context: n,
|
|
3385
3386
|
spine: r,
|
|
3386
3387
|
cfiManager: i
|
|
3387
|
-
}).pipe(
|
|
3388
|
+
}).pipe(w((e) => ({
|
|
3388
3389
|
...a,
|
|
3389
3390
|
navigation: {
|
|
3390
3391
|
...a.navigation,
|
|
3391
3392
|
position: e
|
|
3392
3393
|
}
|
|
3393
|
-
}))))),
|
|
3394
|
+
}))))), ua = R.namespace("navigation/InternalNavigator"), da = (e, t) => e === t || !!e && !!t && e.x === t.x && e.y === t.y, fa = (e, t) => e === t || !!e && !!t && e.width === t.width && e.height === t.height, pa = (e, t) => e.id === t.id && da(e.position, t.position) && da(e.requestedPosition, t.requestedPosition) && fa(e.requestedVisibleArea, t.requestedVisibleArea), ma = class extends Q {
|
|
3394
3395
|
constructor(e, t, n, r, i, a, o, s, c, u) {
|
|
3395
3396
|
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({
|
|
3396
3397
|
animation: !1,
|
|
@@ -3406,85 +3407,85 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3406
3407
|
spineItemIsReady: !1,
|
|
3407
3408
|
type: "api",
|
|
3408
3409
|
id: Symbol("init")
|
|
3409
|
-
}), this.navigation$ = this.navigationSubject.pipe(
|
|
3410
|
+
}), this.navigation$ = this.navigationSubject.pipe(w(({ position: e, id: t, requestedPosition: n, requestedVisibleArea: r, meta: i }) => ({
|
|
3410
3411
|
position: e,
|
|
3411
3412
|
id: t,
|
|
3412
3413
|
requestedPosition: n,
|
|
3413
3414
|
requestedVisibleArea: r,
|
|
3414
3415
|
triggeredBy: i.triggeredBy
|
|
3415
|
-
})), y(
|
|
3416
|
-
let d = n.pipe(N(this.navigationSubject),
|
|
3416
|
+
})), y(pa), O(1)), this.locker = new aa();
|
|
3417
|
+
let d = n.pipe(N(this.navigationSubject), Xi({
|
|
3417
3418
|
navigationResolver: a,
|
|
3418
3419
|
getNavigationVisibleArea: () => r().getNavigationVisibleArea()
|
|
3419
|
-
}),
|
|
3420
|
+
}), ia({ navigationResolver: a }), Zi({ navigationResolver: a }), $i({
|
|
3420
3421
|
context: t,
|
|
3421
3422
|
settings: e
|
|
3422
|
-
}),
|
|
3423
|
+
}), ta({
|
|
3423
3424
|
context: t,
|
|
3424
3425
|
cfi: c,
|
|
3425
3426
|
navigationResolver: a,
|
|
3426
3427
|
settings: e,
|
|
3427
3428
|
spineItemsManager: o.spineItemsManager,
|
|
3428
3429
|
spineLocator: o.locator
|
|
3429
|
-
}),
|
|
3430
|
+
}), ra({
|
|
3430
3431
|
navigationResolver: a,
|
|
3431
3432
|
settings: e,
|
|
3432
3433
|
spineItemsManager: o.spineItemsManager,
|
|
3433
3434
|
spineLocator: o.locator
|
|
3434
|
-
}),
|
|
3435
|
+
}), na({ spine: o })).pipe(ea({
|
|
3435
3436
|
navigationResolver: a,
|
|
3436
3437
|
spineItemsManager: o.spineItemsManager,
|
|
3437
3438
|
settings: e,
|
|
3438
3439
|
viewport: s
|
|
3439
3440
|
}), N(u), A(([n, r]) => {
|
|
3440
3441
|
let i = n.navigation.cfi || n.navigation.url || e.values.computedPageTurnMode === "scrollable" || r;
|
|
3441
|
-
return
|
|
3442
|
+
return E(n).pipe(i ? ue : la({
|
|
3442
3443
|
navigationResolver: a,
|
|
3443
3444
|
settings: e,
|
|
3444
3445
|
spine: o,
|
|
3445
3446
|
context: t,
|
|
3446
3447
|
cfiManager: c
|
|
3447
3448
|
}));
|
|
3448
|
-
}),
|
|
3449
|
+
}), ra({
|
|
3449
3450
|
spineItemsManager: o.spineItemsManager,
|
|
3450
3451
|
spineLocator: o.locator,
|
|
3451
3452
|
settings: e,
|
|
3452
3453
|
navigationResolver: a
|
|
3453
|
-
}),
|
|
3454
|
+
}), w((e) => e.navigation), D()), f = d.pipe(N(u), b(([, e]) => e), A(([e]) => {
|
|
3454
3455
|
let t = this.locker.lock();
|
|
3455
|
-
return u.pipe(b((e) => !e),
|
|
3456
|
+
return u.pipe(b((e) => !e), x(), w(() => ({ navigation: {
|
|
3456
3457
|
...e,
|
|
3457
3458
|
animation: "snap"
|
|
3458
|
-
} })),
|
|
3459
|
+
} })), ce(() => {
|
|
3459
3460
|
t();
|
|
3460
3461
|
}), j(d));
|
|
3461
|
-
}),
|
|
3462
|
-
|
|
3462
|
+
}), D());
|
|
3463
|
+
T(T(T(i, o.layout$).pipe(A(() => E(null).pipe(A(() => u.pipe(b((e) => !e), x())), w(() => ({ navigation: {
|
|
3463
3464
|
...this.navigationSubject.getValue(),
|
|
3464
3465
|
animation: !1
|
|
3465
|
-
} })), j(
|
|
3466
|
+
} })), j(T(f, d))))), f).pipe(la({
|
|
3466
3467
|
navigationResolver: a,
|
|
3467
3468
|
settings: e,
|
|
3468
3469
|
context: t,
|
|
3469
3470
|
spine: o,
|
|
3470
3471
|
cfiManager: c
|
|
3471
|
-
}),
|
|
3472
|
+
}), w(({ navigation: e }) => ({ navigation: {
|
|
3472
3473
|
...e,
|
|
3473
3474
|
meta: { triggeredBy: "restoration" },
|
|
3474
3475
|
requestedPosition: e.position
|
|
3475
|
-
} })),
|
|
3476
|
+
} })), ta({
|
|
3476
3477
|
context: t,
|
|
3477
3478
|
cfi: c,
|
|
3478
3479
|
navigationResolver: a,
|
|
3479
3480
|
settings: e,
|
|
3480
3481
|
spineItemsManager: o.spineItemsManager,
|
|
3481
3482
|
spineLocator: o.locator
|
|
3482
|
-
}),
|
|
3483
|
+
}), na({ spine: o }), ra({
|
|
3483
3484
|
spineItemsManager: o.spineItemsManager,
|
|
3484
3485
|
spineLocator: o.locator,
|
|
3485
3486
|
settings: e,
|
|
3486
3487
|
navigationResolver: a
|
|
3487
|
-
}),
|
|
3488
|
+
}), w(({ navigation: e }) => e), D()), d, Yi(t, this.navigationSubject, o)).pipe(N(this.navigationSubject), (e) => e.pipe(M(([e]) => {
|
|
3488
3489
|
let t = e.type === "scroll", n = e.meta.triggeredBy === "pagination", r = e.meta.triggeredBy === "restoration";
|
|
3489
3490
|
if (t && !r || n) return;
|
|
3490
3491
|
let i = {
|
|
@@ -3493,7 +3494,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3493
3494
|
};
|
|
3494
3495
|
this.getActiveNavigationModeController().navigate(i);
|
|
3495
3496
|
})), (e) => e.pipe(M(([e, t]) => {
|
|
3496
|
-
|
|
3497
|
+
ua.info(`navigation updated from ${e.meta.triggeredBy} of type ${e.type}`, {
|
|
3497
3498
|
previousNavigation: t,
|
|
3498
3499
|
currentNavigation: e
|
|
3499
3500
|
}), this.navigationSubject.next(e);
|
|
@@ -3502,24 +3503,24 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3502
3503
|
get navigation() {
|
|
3503
3504
|
return this.navigationSubject.getValue();
|
|
3504
3505
|
}
|
|
3505
|
-
},
|
|
3506
|
+
}, ha = (e, t, n) => {
|
|
3506
3507
|
let r = n - e, i = t * e * n / (n || 1);
|
|
3507
3508
|
return Math.max(0, Math.min(r, i));
|
|
3508
|
-
},
|
|
3509
|
-
let r =
|
|
3509
|
+
}, ga = (e, t) => (t || 0) === 0 || (e || 0) === 0 ? 1 : Math.floor(Math.max(1, e / t)), _a = (e, t, n) => {
|
|
3510
|
+
let r = ga(n, t), i = [...Array(r)].map((e, n) => n * t);
|
|
3510
3511
|
return e >= r * t ? i[i.length - 1] || 0 : i.find((n) => e < n + t) || 0;
|
|
3511
|
-
},
|
|
3512
|
+
}, va = (e, t, n) => {
|
|
3512
3513
|
let r = [...Array(n)].map((e, n) => n * t);
|
|
3513
3514
|
return e <= 0 || n === 0 ? 0 : e >= n * t ? n - 1 : r.findIndex((n) => e < n + t) ?? 0;
|
|
3514
|
-
},
|
|
3515
|
+
}, ya = ({ itemWidth: e, itemHeight: t, spineItemPosition: n }) => new q({
|
|
3515
3516
|
x: Math.min(e, Math.max(0, n.x)),
|
|
3516
3517
|
y: Math.min(t, Math.max(0, n.y))
|
|
3517
|
-
}),
|
|
3518
|
-
let l =
|
|
3518
|
+
}), ba = ({ itemHeight: e, itemWidth: t, isUsingVerticalWriting: n, pageWidth: r, pageHeight: i, pageTurnDirection: a, pageTurnMode: o }) => a === "vertical" && o === "scrollable" ? 1 : n || a === "vertical" ? ga(e, i) : ga(t, r), xa = ({ itemWidth: e, itemHeight: t, position: n, isUsingVerticalWriting: r, pageWidth: i, pageHeight: a, pageTurnDirection: o, pageTurnMode: s, isRTL: c }) => {
|
|
3519
|
+
let l = ya({
|
|
3519
3520
|
spineItemPosition: n,
|
|
3520
3521
|
itemHeight: t,
|
|
3521
3522
|
itemWidth: e
|
|
3522
|
-
}).x, u =
|
|
3523
|
+
}).x, u = ba({
|
|
3523
3524
|
isUsingVerticalWriting: r,
|
|
3524
3525
|
itemHeight: t,
|
|
3525
3526
|
itemWidth: e,
|
|
@@ -3528,15 +3529,15 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3528
3529
|
pageTurnDirection: o,
|
|
3529
3530
|
pageTurnMode: s
|
|
3530
3531
|
});
|
|
3531
|
-
if (r) return
|
|
3532
|
-
let d =
|
|
3532
|
+
if (r) return va(n.y, a, u);
|
|
3533
|
+
let d = va(l, i, u);
|
|
3533
3534
|
return c ? u - 1 - d : d;
|
|
3534
|
-
},
|
|
3535
|
+
}, Sa = ({ pageIndex: e, itemLayout: t, context: n, isUsingVerticalWriting: r, viewport: i }) => {
|
|
3535
3536
|
if (r) return new q({
|
|
3536
3537
|
x: 0,
|
|
3537
|
-
y:
|
|
3538
|
+
y: ha(i.pageSize.height, e, t.height)
|
|
3538
3539
|
});
|
|
3539
|
-
let a =
|
|
3540
|
+
let a = ha(i.pageSize.width, e, t.width);
|
|
3540
3541
|
return n.isRTL() ? new q({
|
|
3541
3542
|
x: t.width - a - i.pageSize.width,
|
|
3542
3543
|
y: 0
|
|
@@ -3544,26 +3545,26 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3544
3545
|
x: a,
|
|
3545
3546
|
y: 0
|
|
3546
3547
|
});
|
|
3547
|
-
},
|
|
3548
|
+
}, Ca = ({ context: e, settings: t, viewport: n }) => {
|
|
3548
3549
|
let r = (e, t, r) => {
|
|
3549
3550
|
let i;
|
|
3550
3551
|
e?.nodeName === "img" || e?.textContent === "" && e.nodeType === Node.ELEMENT_NODE ? i = e.getBoundingClientRect().x : e && (i = (e ? Ge(e, t) : void 0)?.getBoundingClientRect().x || i);
|
|
3551
3552
|
let a = r.layoutInfo?.width || 0, o = n.pageSize.width;
|
|
3552
3553
|
if (i !== void 0) return new q({
|
|
3553
|
-
x:
|
|
3554
|
+
x: _a(i, o, a),
|
|
3554
3555
|
y: 0
|
|
3555
3556
|
});
|
|
3556
3557
|
};
|
|
3557
3558
|
return {
|
|
3558
3559
|
getSpineItemPositionFromNode: r,
|
|
3559
|
-
getSpineItemPositionFromPageIndex: ({ pageIndex: t, spineItem: r }) =>
|
|
3560
|
+
getSpineItemPositionFromPageIndex: ({ pageIndex: t, spineItem: r }) => Sa({
|
|
3560
3561
|
context: e,
|
|
3561
3562
|
isUsingVerticalWriting: !!r.isUsingVerticalWriting(),
|
|
3562
3563
|
itemLayout: r.layoutInfo,
|
|
3563
3564
|
pageIndex: t,
|
|
3564
3565
|
viewport: n
|
|
3565
3566
|
}),
|
|
3566
|
-
getSpineItemPageIndexFromPosition: (r) =>
|
|
3567
|
+
getSpineItemPageIndexFromPosition: (r) => xa({
|
|
3567
3568
|
...r,
|
|
3568
3569
|
isRTL: e.isRTL(),
|
|
3569
3570
|
pageWidth: n.pageSize.width,
|
|
@@ -3573,7 +3574,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3573
3574
|
}),
|
|
3574
3575
|
getSpineItemPageIndexFromNode: (i, a, o) => {
|
|
3575
3576
|
let s = r(i, a, o), { height: c, width: l } = o.layoutInfo;
|
|
3576
|
-
return s ?
|
|
3577
|
+
return s ? xa({
|
|
3577
3578
|
isUsingVerticalWriting: !!o.isUsingVerticalWriting(),
|
|
3578
3579
|
position: s,
|
|
3579
3580
|
itemHeight: c,
|
|
@@ -3588,20 +3589,20 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3588
3589
|
getSpineItemClosestPositionFromUnsafePosition: (e, t) => {
|
|
3589
3590
|
let { width: r, height: i } = t.layoutInfo;
|
|
3590
3591
|
return new q({
|
|
3591
|
-
x:
|
|
3592
|
-
y:
|
|
3592
|
+
x: _a(e.x, n.pageSize.width, r),
|
|
3593
|
+
y: _a(e.y, n.pageSize.height, i)
|
|
3593
3594
|
});
|
|
3594
3595
|
},
|
|
3595
3596
|
getSpineItemPagePositionFromSpineItemPosition: (t, r, i) => {
|
|
3596
3597
|
let { width: a, height: o } = i.layoutInfo, s = n.pageSize.width, c = n.pageSize.height;
|
|
3597
3598
|
if (i.isUsingVerticalWriting()) {
|
|
3598
|
-
let e =
|
|
3599
|
+
let e = ha(c, r, o);
|
|
3599
3600
|
return new dn({
|
|
3600
3601
|
x: t.x,
|
|
3601
3602
|
y: t.y - e
|
|
3602
3603
|
});
|
|
3603
3604
|
}
|
|
3604
|
-
let l =
|
|
3605
|
+
let l = ha(s, r, a);
|
|
3605
3606
|
if (e.isRTL()) {
|
|
3606
3607
|
let e = a - (r + 1) * s;
|
|
3607
3608
|
return new dn({
|
|
@@ -3615,8 +3616,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3615
3616
|
});
|
|
3616
3617
|
}
|
|
3617
3618
|
};
|
|
3618
|
-
},
|
|
3619
|
-
let r =
|
|
3619
|
+
}, wa = ({ context: e, settings: t, viewport: n }) => {
|
|
3620
|
+
let r = Ca({
|
|
3620
3621
|
context: e,
|
|
3621
3622
|
settings: t,
|
|
3622
3623
|
viewport: n
|
|
@@ -3635,7 +3636,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3635
3636
|
y: 0
|
|
3636
3637
|
})
|
|
3637
3638
|
};
|
|
3638
|
-
},
|
|
3639
|
+
}, Ta = ({ size: e, isRTL: t, spineItemsManager: n, spine: r }) => {
|
|
3639
3640
|
let i = n.get(n.items.length - 1);
|
|
3640
3641
|
if (!i) return;
|
|
3641
3642
|
let a = r.getSpineItemSpineLayoutInfo(i), o = Math.max(0, a.bottom - e.height);
|
|
@@ -3654,8 +3655,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3654
3655
|
yMin: 0,
|
|
3655
3656
|
yMax: o
|
|
3656
3657
|
};
|
|
3657
|
-
},
|
|
3658
|
-
let a =
|
|
3658
|
+
}, Ea = ({ position: e, size: t, isRTL: n, spineItemsManager: r, spine: i }) => {
|
|
3659
|
+
let a = Ta({
|
|
3659
3660
|
size: t,
|
|
3660
3661
|
isRTL: n,
|
|
3661
3662
|
spineItemsManager: r,
|
|
@@ -3670,8 +3671,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3670
3671
|
x: n ? Math.max(a.xMin, Math.min(a.xMax, e.x)) : Math.min(Math.max(a.xMin, e.x), a.xMax),
|
|
3671
3672
|
y: o
|
|
3672
3673
|
});
|
|
3673
|
-
},
|
|
3674
|
-
let a =
|
|
3674
|
+
}, Da = ({ position: e, size: t, isRTL: n, spineItemsManager: r, spine: i }) => {
|
|
3675
|
+
let a = Ta({
|
|
3675
3676
|
size: t,
|
|
3676
3677
|
isRTL: n,
|
|
3677
3678
|
spineItemsManager: r,
|
|
@@ -3697,7 +3698,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3697
3698
|
x: a,
|
|
3698
3699
|
y: i
|
|
3699
3700
|
});
|
|
3700
|
-
},
|
|
3701
|
+
}, Oa = ({ viewportPosition: e, spineLocator: t, spineItemNavigationResolver: n, viewport: r }) => {
|
|
3701
3702
|
let i = t.getSpineItemFromPosition(e);
|
|
3702
3703
|
if (i) {
|
|
3703
3704
|
let a = t.getSpineItemPositionFromSpinePosition(e, i), o = n.getNavigationForPosition(i, a);
|
|
@@ -3714,9 +3715,9 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3714
3715
|
x: 0,
|
|
3715
3716
|
y: 0
|
|
3716
3717
|
});
|
|
3717
|
-
},
|
|
3718
|
+
}, ka = ({ pageIndex: e, spineItemsManager: t, spineItemId: n, spineLocator: r, spineItemNavigationResolver: i, viewport: a }) => {
|
|
3718
3719
|
let o = t.get(n);
|
|
3719
|
-
if (!o) return
|
|
3720
|
+
if (!o) return Oa({
|
|
3720
3721
|
viewportPosition: new J({
|
|
3721
3722
|
x: e * a.pageSize.width,
|
|
3722
3723
|
y: 0
|
|
@@ -3737,7 +3738,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3737
3738
|
pageSizeWidth: a.pageSize.width,
|
|
3738
3739
|
visibleAreaRectWidth: a.absoluteViewport.width
|
|
3739
3740
|
});
|
|
3740
|
-
},
|
|
3741
|
+
}, Aa = (e, t) => {
|
|
3741
3742
|
if (t && t instanceof HTMLIFrameElement) {
|
|
3742
3743
|
let n = t.contentDocument, r = e.trim();
|
|
3743
3744
|
if (!n || r.length === 0) return;
|
|
@@ -3751,11 +3752,11 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3751
3752
|
return;
|
|
3752
3753
|
}
|
|
3753
3754
|
}
|
|
3754
|
-
},
|
|
3755
|
-
let r =
|
|
3755
|
+
}, ja = ({ anchor: e, spineItem: t, spine: n }) => {
|
|
3756
|
+
let r = Aa(e, t.renderer.getDocumentFrame());
|
|
3756
3757
|
return r ? n.spineItemLocator.getSpineItemPositionFromNode(r, 0, t)?.x ?? 0 : 0;
|
|
3757
|
-
},
|
|
3758
|
-
let i =
|
|
3758
|
+
}, Ma = ({ anchor: e, spineItem: t, spineLocator: n, spine: r }) => {
|
|
3759
|
+
let i = ja({
|
|
3759
3760
|
anchor: e,
|
|
3760
3761
|
spineItem: t,
|
|
3761
3762
|
spine: r
|
|
@@ -3767,8 +3768,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3767
3768
|
}),
|
|
3768
3769
|
spineItem: t
|
|
3769
3770
|
});
|
|
3770
|
-
},
|
|
3771
|
-
position:
|
|
3771
|
+
}, Na = ({ anchor: e, spineItem: t, spineLocator: n, spine: r, pageSizeWidth: i, visibleAreaRectWidth: a }) => $({
|
|
3772
|
+
position: Ma({
|
|
3772
3773
|
anchor: e,
|
|
3773
3774
|
spineItem: t,
|
|
3774
3775
|
spineLocator: n,
|
|
@@ -3776,14 +3777,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3776
3777
|
}),
|
|
3777
3778
|
pageSizeWidth: i,
|
|
3778
3779
|
visibleAreaRectWidth: a
|
|
3779
|
-
}),
|
|
3780
|
+
}), Pa = ({ spine: e, spineItemsManager: t, spineLocator: n, url: r, context: i, pageSizeWidth: a, visibleAreaRectWidth: o }) => {
|
|
3780
3781
|
try {
|
|
3781
3782
|
let s = r instanceof URL ? r : new URL(r), c = `${s.origin}${s.pathname}`, l = i.manifest?.spineItems.find((e) => e.href === c);
|
|
3782
3783
|
if (l) {
|
|
3783
3784
|
let r = t.get(l.id);
|
|
3784
3785
|
if (r) return {
|
|
3785
3786
|
position: $({
|
|
3786
|
-
position:
|
|
3787
|
+
position: Na({
|
|
3787
3788
|
anchor: s.hash,
|
|
3788
3789
|
spineItem: r,
|
|
3789
3790
|
spine: e,
|
|
@@ -3802,7 +3803,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3802
3803
|
console.error(e);
|
|
3803
3804
|
return;
|
|
3804
3805
|
}
|
|
3805
|
-
},
|
|
3806
|
+
}, Fa = ({ spineItem: e, spineItemPosition: t, spineLocator: n, spineItemLocator: r, viewport: i }) => {
|
|
3806
3807
|
let a = r.getSpineItemClosestPositionFromUnsafePosition(t, e);
|
|
3807
3808
|
return $({
|
|
3808
3809
|
position: n.getSpinePositionFromSpineItemPosition({
|
|
@@ -3812,14 +3813,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3812
3813
|
pageSizeWidth: i.pageSize.width,
|
|
3813
3814
|
visibleAreaRectWidth: i.absoluteViewport.width
|
|
3814
3815
|
});
|
|
3815
|
-
},
|
|
3816
|
-
let s =
|
|
3816
|
+
}, Ia = "spineNavigator", La = ({ context: e, spineItemsManager: t, locator: n, settings: r, spine: i, viewport: a, cfi: o }) => {
|
|
3817
|
+
let s = wa({
|
|
3817
3818
|
context: e,
|
|
3818
3819
|
settings: r,
|
|
3819
3820
|
viewport: a
|
|
3820
3821
|
});
|
|
3821
3822
|
return {
|
|
3822
|
-
getNavigationForUrl: (r) =>
|
|
3823
|
+
getNavigationForUrl: (r) => Pa({
|
|
3823
3824
|
context: e,
|
|
3824
3825
|
spineItemsManager: t,
|
|
3825
3826
|
spineLocator: n,
|
|
@@ -3828,14 +3829,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3828
3829
|
visibleAreaRectWidth: a.absoluteViewport.width,
|
|
3829
3830
|
spine: i
|
|
3830
3831
|
}),
|
|
3831
|
-
getNavigationForSpineItemPage: (e) =>
|
|
3832
|
+
getNavigationForSpineItemPage: (e) => ka({
|
|
3832
3833
|
...e,
|
|
3833
3834
|
spineItemsManager: t,
|
|
3834
3835
|
spineItemNavigationResolver: s,
|
|
3835
3836
|
spineLocator: n,
|
|
3836
3837
|
viewport: a
|
|
3837
3838
|
}),
|
|
3838
|
-
getNavigationFromSpineItemPosition: (e) =>
|
|
3839
|
+
getNavigationFromSpineItemPosition: (e) => Fa({
|
|
3839
3840
|
...e,
|
|
3840
3841
|
spineItemLocator: n.spineItemLocator,
|
|
3841
3842
|
spineLocator: n,
|
|
@@ -3844,7 +3845,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3844
3845
|
getNavigationForCfi: (e) => {
|
|
3845
3846
|
let { node: t, offset: r = 0, spineItem: i } = o.resolveCfi({ cfi: e });
|
|
3846
3847
|
if (!i) {
|
|
3847
|
-
R.warn(
|
|
3848
|
+
R.warn(Ia, `unable to detect item id from cfi ${e}`);
|
|
3848
3849
|
return;
|
|
3849
3850
|
}
|
|
3850
3851
|
let c = t ? s.getNavigationFromNode(i, t, r) : new q({
|
|
@@ -3882,7 +3883,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3882
3883
|
y: 0
|
|
3883
3884
|
});
|
|
3884
3885
|
},
|
|
3885
|
-
getNavigationForPosition: (e) =>
|
|
3886
|
+
getNavigationForPosition: (e) => Oa({
|
|
3886
3887
|
viewportPosition: e,
|
|
3887
3888
|
spineItemNavigationResolver: s,
|
|
3888
3889
|
spineLocator: n,
|
|
@@ -3890,10 +3891,10 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3890
3891
|
}),
|
|
3891
3892
|
getMostPredominantNavigationForPosition: (o) => {
|
|
3892
3893
|
let c = r.values.computedPageTurnDirection, l = .5;
|
|
3893
|
-
return
|
|
3894
|
+
return Oa({
|
|
3894
3895
|
spineItemNavigationResolver: s,
|
|
3895
3896
|
spineLocator: n,
|
|
3896
|
-
viewportPosition:
|
|
3897
|
+
viewportPosition: Ea({
|
|
3897
3898
|
position: new J({
|
|
3898
3899
|
x: c === "horizontal" ? o.x + a.absoluteViewport.width * l : 0,
|
|
3899
3900
|
y: c === "horizontal" ? 0 : o.y + a.absoluteViewport.height * l
|
|
@@ -3906,14 +3907,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3906
3907
|
viewport: a
|
|
3907
3908
|
});
|
|
3908
3909
|
},
|
|
3909
|
-
clampPositionInSpine: (n, r) =>
|
|
3910
|
+
clampPositionInSpine: (n, r) => Ea({
|
|
3910
3911
|
position: n,
|
|
3911
3912
|
size: r,
|
|
3912
3913
|
isRTL: e.isRTL(),
|
|
3913
3914
|
spineItemsManager: t,
|
|
3914
3915
|
spine: i
|
|
3915
3916
|
}),
|
|
3916
|
-
getBoundaryForPosition: (n, r = a.absoluteViewport) =>
|
|
3917
|
+
getBoundaryForPosition: (n, r = a.absoluteViewport) => Da({
|
|
3917
3918
|
position: n,
|
|
3918
3919
|
size: r,
|
|
3919
3920
|
isRTL: e.isRTL(),
|
|
@@ -3929,8 +3930,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3929
3930
|
}),
|
|
3930
3931
|
spineItemNavigator: s
|
|
3931
3932
|
};
|
|
3932
|
-
},
|
|
3933
|
-
let c = new m(), l = c.asObservable(), u = new
|
|
3933
|
+
}, Ra = ({ spineItemsManager: e, context: t, hookManager: n, spine: r, settings: i, viewport: a, cfi: s }) => {
|
|
3934
|
+
let c = new m(), l = c.asObservable(), u = new aa(), d = s, f = La({
|
|
3934
3935
|
cfi: d,
|
|
3935
3936
|
context: t,
|
|
3936
3937
|
settings: i,
|
|
@@ -3938,11 +3939,11 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3938
3939
|
locator: r.locator,
|
|
3939
3940
|
spine: r,
|
|
3940
3941
|
viewport: a
|
|
3941
|
-
}), p = new
|
|
3942
|
+
}), p = new qi(i, n, t, r, a), h = new xi(a, i, n, r, t), g = [h, p], _ = new ma(i, t, l, () => g.find((e) => e.isActive()) ?? p, T(...g.flatMap((e) => e.layout$ ? [e.layout$] : [])), f, r, a, d, u.isLocked$), ee = v([
|
|
3942
3943
|
...g.map((e) => e.isNavigating$),
|
|
3943
3944
|
u.isLocked$,
|
|
3944
3945
|
_.locker.isLocked$
|
|
3945
|
-
]).pipe(
|
|
3946
|
+
]).pipe(w((e) => e.some((e) => e) ? "busy" : "free"), y(), O(1)), te = _.navigation$.pipe(w(({ position: e }) => e), y(o), O(1));
|
|
3946
3947
|
return {
|
|
3947
3948
|
destroy: () => {
|
|
3948
3949
|
g.forEach((e) => {
|
|
@@ -3963,7 +3964,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3963
3964
|
navigation$: _.navigation$,
|
|
3964
3965
|
position$: te
|
|
3965
3966
|
};
|
|
3966
|
-
},
|
|
3967
|
+
}, za = class extends U {
|
|
3967
3968
|
constructor(e, t) {
|
|
3968
3969
|
super({
|
|
3969
3970
|
beginPageIndexInSpineItem: void 0,
|
|
@@ -3980,10 +3981,10 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
3980
3981
|
update(e) {
|
|
3981
3982
|
this.mergeCompare(e);
|
|
3982
3983
|
}
|
|
3983
|
-
},
|
|
3984
|
+
}, Ba = class extends Q {
|
|
3984
3985
|
constructor(e, t, n, r, i, a, o) {
|
|
3985
3986
|
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spine = r, this.spineItemLocator = i, this.isNavigationLocked$ = a, this.cfi = o;
|
|
3986
|
-
let s =
|
|
3987
|
+
let s = T(this.context.bridgeEvent.navigation$, r.layout$).pipe(A(() => {
|
|
3987
3988
|
let e = ({ spineItem: e, position: t }) => this.spine.locator.getVisiblePagesFromViewportPosition({
|
|
3988
3989
|
spineItem: e,
|
|
3989
3990
|
position: t,
|
|
@@ -4021,7 +4022,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4021
4022
|
});
|
|
4022
4023
|
}));
|
|
4023
4024
|
}));
|
|
4024
|
-
|
|
4025
|
+
T(s, s.pipe(St(this.context.bridgeEvent.viewportFree$), M(() => {
|
|
4025
4026
|
let { beginSpineItemIndex: e, endSpineItemIndex: t, beginPageIndexInSpineItem: n, endPageIndexInSpineItem: r } = this.pagination.value;
|
|
4026
4027
|
if (n === void 0 || r === void 0 || e === void 0 || t === void 0) return;
|
|
4027
4028
|
let i = this.spineItemsManager.get(e), a = this.spineItemsManager.get(t);
|
|
@@ -4039,14 +4040,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4039
4040
|
});
|
|
4040
4041
|
}))).pipe(j(this.destroy$)).subscribe();
|
|
4041
4042
|
}
|
|
4042
|
-
},
|
|
4043
|
+
}, Va = class extends Q {
|
|
4043
4044
|
constructor(e) {
|
|
4044
4045
|
super();
|
|
4045
4046
|
let t = {
|
|
4046
4047
|
...this.getDefaultSettings(),
|
|
4047
4048
|
...e
|
|
4048
4049
|
};
|
|
4049
|
-
this.inputSettings = t, this.outputSettingsUpdateSubject = new m(), this._settings$ = this.outputSettingsUpdateSubject.asObservable().pipe(
|
|
4050
|
+
this.inputSettings = t, this.outputSettingsUpdateSubject = new m(), this._settings$ = this.outputSettingsUpdateSubject.asObservable().pipe(O(1)), this._settings$.subscribe();
|
|
4050
4051
|
}
|
|
4051
4052
|
_prepareUpdate(e) {
|
|
4052
4053
|
let t = c(this.inputSettings, e), n = this.getOutputSettings(t), r = !o(this.outputSettings, n);
|
|
@@ -4080,7 +4081,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4080
4081
|
destroy() {
|
|
4081
4082
|
super.destroy(), this.outputSettingsUpdateSubject.complete();
|
|
4082
4083
|
}
|
|
4083
|
-
},
|
|
4084
|
+
}, Ha = class extends Va {
|
|
4084
4085
|
constructor(e, t) {
|
|
4085
4086
|
super(e), this.context = t, t.watch(["manifest", "hasVerticalWriting"]).pipe(M(() => this.update(this.values)), j(this.destroy$)).subscribe();
|
|
4086
4087
|
}
|
|
@@ -4120,27 +4121,27 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4120
4121
|
numberOfAdjacentSpineItemToPreLoad: 3
|
|
4121
4122
|
};
|
|
4122
4123
|
}
|
|
4123
|
-
},
|
|
4124
|
+
}, Ua = class extends Nt {
|
|
4124
4125
|
onUnload() {
|
|
4125
4126
|
return u;
|
|
4126
4127
|
}
|
|
4127
4128
|
onCreateDocument() {
|
|
4128
|
-
return
|
|
4129
|
+
return E(document.createElement("div"));
|
|
4129
4130
|
}
|
|
4130
4131
|
onLoadDocument() {
|
|
4131
4132
|
return u;
|
|
4132
4133
|
}
|
|
4133
4134
|
onLayout() {
|
|
4134
|
-
return
|
|
4135
|
+
return E(void 0);
|
|
4135
4136
|
}
|
|
4136
4137
|
onRenderHeadless() {
|
|
4137
4138
|
return u;
|
|
4138
4139
|
}
|
|
4139
4140
|
getDocumentFrame() {}
|
|
4140
|
-
},
|
|
4141
|
+
}, Wa = class extends Q {
|
|
4141
4142
|
constructor(e, t, n, i, a, s, c) {
|
|
4142
4143
|
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 }) => {
|
|
4143
|
-
let i = this.viewport.value.pageSize.width, a = "none", o = t % this.viewport.absoluteViewport.width === 0, s = this.context.manifest, c =
|
|
4144
|
+
let i = this.viewport.value.pageSize.width, a = "none", o = t % this.viewport.absoluteViewport.width === 0, s = this.context.manifest, c = Ri(s) ?? !1;
|
|
4144
4145
|
if (this.settings.values.computedSpreadMode) {
|
|
4145
4146
|
!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);
|
|
4146
4147
|
let t = o && e && c, s = r(this.item);
|
|
@@ -4152,7 +4153,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4152
4153
|
};
|
|
4153
4154
|
}, this.adjustPositionOfElement = ({ right: e, left: t, top: n }) => {
|
|
4154
4155
|
e === void 0 ? V(this.containerElement.style, "right") : B(this.containerElement.style, "right", `${e}px`), t === void 0 ? V(this.containerElement.style, "left") : B(this.containerElement.style, "left", `${t}px`), n === void 0 ? V(this.containerElement.style, "top") : B(this.containerElement.style, "top", `${n}px`);
|
|
4155
|
-
}, this.updateContainerLayout = ({ minimumWidth: e, edgeX: t, edgeY: n }) => (r) => r.pipe(
|
|
4156
|
+
}, this.updateContainerLayout = ({ minimumWidth: e, edgeX: t, edgeY: n }) => (r) => r.pipe(w((r) => {
|
|
4156
4157
|
let { width: i, height: a } = (o(this.lastLayout?.pageSize, this.viewport.pageSize) ? this.lastLayout : void 0) ?? {}, { width: s = i, height: c = a } = r ?? {}, { width: l, height: u } = this.viewport.pageSize, d = this.validateDimension(s ?? l, l, e), f = this.settings.values.computedPageTurnMode === "scrollable" ? c ?? u : this.validateDimension(c ?? u, u, u);
|
|
4157
4158
|
return this.lastLayout = {
|
|
4158
4159
|
width: d,
|
|
@@ -4175,7 +4176,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4175
4176
|
height: f
|
|
4176
4177
|
});
|
|
4177
4178
|
})), this.layout = (e) => {
|
|
4178
|
-
let t = Ct(this.didLayout$.pipe(
|
|
4179
|
+
let t = Ct(this.didLayout$.pipe(x()));
|
|
4179
4180
|
return this.layoutTriggerSubject.next(e), t();
|
|
4180
4181
|
};
|
|
4181
4182
|
let l = this.layoutTriggerSubject.pipe(A(({ spreadPosition: e, horizontalOffset: t, isLastItem: n, edgeX: r, edgeY: i }) => {
|
|
@@ -4195,11 +4196,11 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4195
4196
|
minimumWidth: o,
|
|
4196
4197
|
spreadPosition: e
|
|
4197
4198
|
});
|
|
4198
|
-
return E(
|
|
4199
|
+
return T(E({ type: "start" }), s.pipe(this.updateContainerLayout({
|
|
4199
4200
|
minimumWidth: o,
|
|
4200
4201
|
edgeX: r,
|
|
4201
4202
|
edgeY: i
|
|
4202
|
-
}),
|
|
4203
|
+
}), w((e) => (this.hookManager.execute("item.onAfterLayout", {
|
|
4203
4204
|
blankPagePosition: a,
|
|
4204
4205
|
item: this.item,
|
|
4205
4206
|
minimumWidth: o
|
|
@@ -4207,8 +4208,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4207
4208
|
type: "end",
|
|
4208
4209
|
data: e
|
|
4209
4210
|
}))));
|
|
4210
|
-
}),
|
|
4211
|
-
this.didLayout$ = l.pipe(b((e) => e.type === "end"),
|
|
4211
|
+
}), D());
|
|
4212
|
+
this.didLayout$ = l.pipe(b((e) => e.type === "end"), w((e) => e.data), D());
|
|
4212
4213
|
}
|
|
4213
4214
|
validateDimension(e, t, n) {
|
|
4214
4215
|
if (e <= 0) return n;
|
|
@@ -4222,7 +4223,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4222
4223
|
height: e.height ? parseFloat(e.height) : 0
|
|
4223
4224
|
};
|
|
4224
4225
|
}
|
|
4225
|
-
},
|
|
4226
|
+
}, Ga = class extends U {
|
|
4226
4227
|
constructor(e, t, n, r, i, a, o) {
|
|
4227
4228
|
super({
|
|
4228
4229
|
isLoaded: !1,
|
|
@@ -4238,7 +4239,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4238
4239
|
this.mergeCompare({ isDirty: !0 });
|
|
4239
4240
|
}, this.destroy = () => {
|
|
4240
4241
|
super.destroy(), this.containerElement.remove(), this.renderer.destroy();
|
|
4241
|
-
}, this.isUsingVerticalWriting = () => !!this.renderer.writingMode?.startsWith("vertical"), this.layout = (e) => this._layout.layout(e), this.containerElement =
|
|
4242
|
+
}, this.isUsingVerticalWriting = () => !!this.renderer.writingMode?.startsWith("vertical"), this.layout = (e) => this._layout.layout(e), this.containerElement = Ka(t, e, i), t.appendChild(this.containerElement);
|
|
4242
4243
|
let s = this.settings.values.getRenderer?.(e);
|
|
4243
4244
|
this.resourcesHandler = new Ft(e, this.settings);
|
|
4244
4245
|
let c = {
|
|
@@ -4250,7 +4251,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4250
4251
|
resourcesHandler: this.resourcesHandler,
|
|
4251
4252
|
viewport: this.viewport
|
|
4252
4253
|
};
|
|
4253
|
-
this.renderer = s ? s(c) : new
|
|
4254
|
+
this.renderer = s ? s(c) : new Ua(c), this._layout = new Wa(e, this.containerElement, n, i, this.renderer, this.settings, this.viewport);
|
|
4254
4255
|
let l = this.renderer.state$.pipe(L(({ state: e, error: t }) => {
|
|
4255
4256
|
this.mergeCompare({
|
|
4256
4257
|
isLoaded: e === "loaded",
|
|
@@ -4263,7 +4264,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4263
4264
|
isDirty: !1,
|
|
4264
4265
|
isReady: this.renderer.value.state === "loaded"
|
|
4265
4266
|
});
|
|
4266
|
-
}), De()),
|
|
4267
|
+
}), De()), T(l, this.didLayout$).pipe(I(this.destroy$)).subscribe();
|
|
4267
4268
|
}
|
|
4268
4269
|
get isReady$() {
|
|
4269
4270
|
return this.watch("isReady");
|
|
@@ -4287,7 +4288,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4287
4288
|
return this._layout.layoutInfo;
|
|
4288
4289
|
}
|
|
4289
4290
|
get numberOfPages() {
|
|
4290
|
-
return
|
|
4291
|
+
return ba({
|
|
4291
4292
|
isUsingVerticalWriting: !!this.isUsingVerticalWriting(),
|
|
4292
4293
|
itemHeight: this._layout.layoutInfo.height,
|
|
4293
4294
|
itemWidth: this._layout.layoutInfo.width,
|
|
@@ -4297,20 +4298,20 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4297
4298
|
pageTurnMode: this.settings.values.pageTurnMode
|
|
4298
4299
|
});
|
|
4299
4300
|
}
|
|
4300
|
-
},
|
|
4301
|
+
}, Ka = (e, t, n) => {
|
|
4301
4302
|
let r = e.ownerDocument.createElement("div");
|
|
4302
4303
|
return r.setAttribute(`data-${Dn}`, ""), r.classList.add("spineItem"), r.classList.add(`spineItem-${t.renditionLayout ?? "reflowable"}`), r.style.cssText = "\n position: absolute;\n overflow: hidden;\n ", r.dataset.isReady = "false", n.execute("item.onBeforeContainerAttach", {
|
|
4303
4304
|
element: r,
|
|
4304
4305
|
item: t
|
|
4305
4306
|
}), r;
|
|
4306
|
-
},
|
|
4307
|
+
}, qa = class extends Q {
|
|
4307
4308
|
constructor(e, n, r, i, a, o) {
|
|
4308
4309
|
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());
|
|
4309
|
-
let s = this.forcedOpenSubject.pipe(
|
|
4310
|
+
let s = this.forcedOpenSubject.pipe(w((e) => Array.from(e.keys()).sort((e, t) => e - t)), y(t), O({
|
|
4310
4311
|
bufferSize: 1,
|
|
4311
4312
|
refCount: !0
|
|
4312
4313
|
}));
|
|
4313
|
-
|
|
4314
|
+
T(this.context.bridgeEvent.position$, this.viewport.layout$, this.spineLayout.layout$, s, i.watch(["numberOfAdjacentSpineItemToPreLoad"])).pipe(ne(100), St(this.context.bridgeEvent.viewportFree$), N(this.context.bridgeEvent.position$, s), w(([, e, t]) => {
|
|
4314
4315
|
let { numberOfAdjacentSpineItemToPreLoad: a } = i.values, { beginIndex: o = 0, endIndex: s = 0 } = r.getVisibleSpineItemsFromPosition({
|
|
4315
4316
|
position: e,
|
|
4316
4317
|
threshold: {
|
|
@@ -4339,13 +4340,13 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4339
4340
|
destroy() {
|
|
4340
4341
|
super.destroy(), this.forcedOpenSubject.complete();
|
|
4341
4342
|
}
|
|
4342
|
-
},
|
|
4343
|
+
}, Ja = (e, t, n) => {
|
|
4343
4344
|
let r = (n.width - t.width) / 2, i = (n.height - t.height) / 2;
|
|
4344
4345
|
return new Y({
|
|
4345
4346
|
x: e.x - r,
|
|
4346
4347
|
y: e.y - i
|
|
4347
4348
|
});
|
|
4348
|
-
},
|
|
4349
|
+
}, Ya = class e extends DOMRect {
|
|
4349
4350
|
constructor(...e) {
|
|
4350
4351
|
super(...e), this.__symbol = Symbol("ViewportPosition");
|
|
4351
4352
|
}
|
|
@@ -4357,15 +4358,15 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4357
4358
|
let r = t;
|
|
4358
4359
|
return new e(r.x, r.y, r.width, r.height);
|
|
4359
4360
|
}
|
|
4360
|
-
},
|
|
4361
|
+
}, Xa = class {
|
|
4361
4362
|
constructor({ width: e, height: t }) {
|
|
4362
4363
|
this.__symbol = Symbol("AbsoluteViewport"), this.width = e, this.height = t;
|
|
4363
4364
|
}
|
|
4364
|
-
},
|
|
4365
|
+
}, Za = class {
|
|
4365
4366
|
constructor({ width: e, height: t }) {
|
|
4366
4367
|
this.__symbol = Symbol("RelativeViewport"), this.width = e, this.height = t;
|
|
4367
4368
|
}
|
|
4368
|
-
},
|
|
4369
|
+
}, Qa = ({ pageIndex: e, spineItemOrId: t, spineItemsManager: n }) => {
|
|
4369
4370
|
let r = n.items, i = n.get(t);
|
|
4370
4371
|
if (!i) return;
|
|
4371
4372
|
let { currentAbsolutePage: a } = r.reduce((t, n) => {
|
|
@@ -4383,47 +4384,47 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4383
4384
|
found: !1
|
|
4384
4385
|
});
|
|
4385
4386
|
return a;
|
|
4386
|
-
},
|
|
4387
|
+
}, $a = ({ itemHeight: e, itemWidth: t, visibleWidthOfItem: n, visibleHeightOfItem: r, threshold: i }) => {
|
|
4387
4388
|
let a = n / t, o = r / e;
|
|
4388
4389
|
return i.type === "percentage" ? a >= i.value && o >= i.value : n >= i.value && r >= i.value;
|
|
4389
|
-
},
|
|
4390
|
+
}, eo = ({ visibleWidthOfItem: e, visibleHeightOfItem: t, threshold: n, viewportPosition: r }) => {
|
|
4390
4391
|
let i = e / r.width, a = t / r.height;
|
|
4391
4392
|
return n.type === "percentage" ? a >= n.value && i >= n.value : t >= n.value && e >= n.value;
|
|
4392
|
-
},
|
|
4393
|
+
}, to = ({ itemPosition: { bottom: e, left: t, right: n, top: r, width: i, height: a }, threshold: o, viewportPosition: s, restrictToScreen: c }) => {
|
|
4393
4394
|
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));
|
|
4394
4395
|
if (p <= 0 || m <= 0) return { visible: !1 };
|
|
4395
|
-
let h =
|
|
4396
|
+
let h = eo({
|
|
4396
4397
|
threshold: o,
|
|
4397
4398
|
visibleHeightOfItem: m,
|
|
4398
4399
|
visibleWidthOfItem: p,
|
|
4399
4400
|
viewportPosition: s
|
|
4400
4401
|
});
|
|
4401
|
-
return c ? { visible: h } : { visible:
|
|
4402
|
+
return c ? { visible: h } : { visible: $a({
|
|
4402
4403
|
itemHeight: a,
|
|
4403
4404
|
itemWidth: i,
|
|
4404
4405
|
threshold: o,
|
|
4405
4406
|
visibleHeightOfItem: m,
|
|
4406
4407
|
visibleWidthOfItem: p
|
|
4407
4408
|
}) || h };
|
|
4408
|
-
},
|
|
4409
|
+
}, no = ({ position: e, spineItemsManager: t, spineLayout: n }) => {
|
|
4409
4410
|
let r = t.items.find((t) => {
|
|
4410
4411
|
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;
|
|
4411
4412
|
return s && c;
|
|
4412
4413
|
});
|
|
4413
4414
|
return e.x === 0 && !r ? t.items[0] : r;
|
|
4414
|
-
},
|
|
4415
|
+
}, ro = ({ spineItemPosition: e, itemLayout: { left: t, top: n } }) => new J({
|
|
4415
4416
|
x: t + e.x,
|
|
4416
4417
|
y: n + e.y
|
|
4417
|
-
}),
|
|
4418
|
-
let s =
|
|
4418
|
+
}), io = ({ position: e, threshold: t, restrictToScreen: n, spineItemsManager: r, spineLayout: i, useAbsoluteViewport: a = !0, viewport: o }) => {
|
|
4419
|
+
let s = no({
|
|
4419
4420
|
position: e,
|
|
4420
4421
|
spineItemsManager: r,
|
|
4421
4422
|
spineLayout: i
|
|
4422
4423
|
}) || r.get(0), c = r.items.reduce((r, s) => {
|
|
4423
|
-
let c = i.getSpineItemSpineLayoutInfo(s), l = a ? o.absoluteViewport : o.relativeViewport, u =
|
|
4424
|
+
let c = i.getSpineItemSpineLayoutInfo(s), l = a ? o.absoluteViewport : o.relativeViewport, u = Ja(e, o.absoluteViewport, l), { visible: d } = to({
|
|
4424
4425
|
itemPosition: c,
|
|
4425
4426
|
threshold: t,
|
|
4426
|
-
viewportPosition:
|
|
4427
|
+
viewportPosition: Ya.from(u, l),
|
|
4427
4428
|
restrictToScreen: n
|
|
4428
4429
|
});
|
|
4429
4430
|
return d ? [...r, s] : r;
|
|
@@ -4434,14 +4435,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4434
4435
|
beginIndex: d ?? 0,
|
|
4435
4436
|
endIndex: f ?? 0
|
|
4436
4437
|
};
|
|
4437
|
-
},
|
|
4438
|
+
}, ao = ({ spineItemsManager: e, context: t, spineItemLocator: n, settings: r, spineLayout: i, viewport: a }) => {
|
|
4438
4439
|
let o = (e, t) => {
|
|
4439
4440
|
let { left: n, top: r } = i.getSpineItemSpineLayoutInfo(t);
|
|
4440
4441
|
return new q({
|
|
4441
4442
|
x: Math.max(e.x - n, 0),
|
|
4442
4443
|
y: Math.max(e.y - r, 0)
|
|
4443
4444
|
});
|
|
4444
|
-
}, s = (e) =>
|
|
4445
|
+
}, s = (e) => ro({
|
|
4445
4446
|
spineItemPosition: new q({
|
|
4446
4447
|
x: 0,
|
|
4447
4448
|
y: 0
|
|
@@ -4455,7 +4456,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4455
4456
|
return n.getSpineItemPageIndexFromNode(t, r || 0, i);
|
|
4456
4457
|
}, u = ({ position: e, threshold: t, spineItem: r, restrictToScreen: a, useAbsoluteViewport: o = !0, viewport: s }) => {
|
|
4457
4458
|
let c = r.numberOfPages, l = Array.from(Array(c)).map((e, t) => {
|
|
4458
|
-
let a =
|
|
4459
|
+
let a = ro({
|
|
4459
4460
|
spineItemPosition: n.getSpineItemPositionFromPageIndex({
|
|
4460
4461
|
pageIndex: t,
|
|
4461
4462
|
spineItem: r
|
|
@@ -4474,8 +4475,8 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4474
4475
|
}
|
|
4475
4476
|
};
|
|
4476
4477
|
}).reduce((n, { absolutePosition: r, index: i }) => {
|
|
4477
|
-
let c = o ? s.absoluteViewport : s.relativeViewport, l =
|
|
4478
|
-
viewportPosition:
|
|
4478
|
+
let c = o ? s.absoluteViewport : s.relativeViewport, l = Ja(e, s.absoluteViewport, c), { visible: u } = to({
|
|
4479
|
+
viewportPosition: Ya.from(l, c),
|
|
4479
4480
|
restrictToScreen: a,
|
|
4480
4481
|
threshold: t,
|
|
4481
4482
|
itemPosition: r
|
|
@@ -4488,11 +4489,11 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4488
4489
|
};
|
|
4489
4490
|
};
|
|
4490
4491
|
return {
|
|
4491
|
-
getSpinePositionFromSpineItemPosition: ({ spineItem: e, spineItemPosition: t }) =>
|
|
4492
|
+
getSpinePositionFromSpineItemPosition: ({ spineItem: e, spineItemPosition: t }) => ro({
|
|
4492
4493
|
itemLayout: i.getSpineItemSpineLayoutInfo(e),
|
|
4493
4494
|
spineItemPosition: t
|
|
4494
4495
|
}),
|
|
4495
|
-
_getAbsolutePageIndexFromPageIndex: (n) =>
|
|
4496
|
+
_getAbsolutePageIndexFromPageIndex: (n) => Qa({
|
|
4496
4497
|
...n,
|
|
4497
4498
|
context: t,
|
|
4498
4499
|
settings: r,
|
|
@@ -4500,7 +4501,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4500
4501
|
spineLayout: i
|
|
4501
4502
|
}),
|
|
4502
4503
|
getSpineItemPagePositionFromSpinePosition: (t) => {
|
|
4503
|
-
let r =
|
|
4504
|
+
let r = no({
|
|
4504
4505
|
position: t,
|
|
4505
4506
|
spineItemsManager: e,
|
|
4506
4507
|
spineLayout: i
|
|
@@ -4521,14 +4522,14 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4521
4522
|
},
|
|
4522
4523
|
getSpinePositionFromSpineItem: s,
|
|
4523
4524
|
getSpineItemPositionFromSpinePosition: o,
|
|
4524
|
-
getSpineItemFromPosition: (t) =>
|
|
4525
|
+
getSpineItemFromPosition: (t) => no({
|
|
4525
4526
|
position: t,
|
|
4526
4527
|
spineItemsManager: e,
|
|
4527
4528
|
spineLayout: i
|
|
4528
4529
|
}),
|
|
4529
4530
|
getSpineItemFromIframe: c,
|
|
4530
4531
|
getSpineItemPageIndexFromNode: l,
|
|
4531
|
-
getVisibleSpineItemsFromPosition: (t) =>
|
|
4532
|
+
getVisibleSpineItemsFromPosition: (t) => io({
|
|
4532
4533
|
settings: r,
|
|
4533
4534
|
spineItemsManager: e,
|
|
4534
4535
|
spineLayout: i,
|
|
@@ -4552,25 +4553,25 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4552
4553
|
});
|
|
4553
4554
|
}
|
|
4554
4555
|
};
|
|
4555
|
-
},
|
|
4556
|
+
}, oo = class extends Q {
|
|
4556
4557
|
constructor(e) {
|
|
4557
|
-
super(), this.spineItemsManager = e, this.states$ = this.spineItemsManager.items$.pipe(A((e) =>
|
|
4558
|
+
super(), this.spineItemsManager = e, this.states$ = this.spineItemsManager.items$.pipe(A((e) => T(...e.map((e) => e.pipe(w((t) => ({
|
|
4558
4559
|
item: e,
|
|
4559
4560
|
...t
|
|
4560
|
-
})), y(o))))),
|
|
4561
|
+
})), y(o))))), D()), this.itemResize$ = this.spineItemsManager.items$.pipe(A((e) => T(...e.map((e) => xt(e.element).pipe(w((t) => ({
|
|
4561
4562
|
entries: t,
|
|
4562
4563
|
item: e
|
|
4563
|
-
})))))),
|
|
4564
|
+
})))))), D()), this.itemLoad$ = this.spineItemsManager.items$.pipe(A((e) => T(...e.map((e) => e.loaded$.pipe(w(() => e))))), D()), this.itemUnload$ = this.spineItemsManager.items$.pipe(A((e) => T(...e.map((e) => e.unloaded$.pipe(w(() => e))))), D());
|
|
4564
4565
|
}
|
|
4565
|
-
},
|
|
4566
|
+
}, so = class extends Q {
|
|
4566
4567
|
constructor(e, t, n, r, i) {
|
|
4567
4568
|
super(), this.spineItemsManager = e, this.spineItemsObserver = t, this.context = n, this.settings = r, this.viewport = i, this.externalLayoutTrigger = new m(), this.spineItemsRelativeLayouts = [];
|
|
4568
|
-
let a =
|
|
4569
|
+
let a = T(t.itemLoad$, t.itemUnload$).pipe(w(() => ({ immediate: !1 }))), o = T(this.externalLayoutTrigger, a);
|
|
4569
4570
|
this.layout$ = o.pipe(M(() => {
|
|
4570
4571
|
this.spineItemsManager.items.forEach((e) => {
|
|
4571
4572
|
e.markDirty();
|
|
4572
4573
|
});
|
|
4573
|
-
}), te((e) => e.immediate ?
|
|
4574
|
+
}), te((e) => e.immediate ? E(void 0) : ye(50)), A(() => this.spineItemsManager.items.reduce((t, a, o) => t.pipe(ee(({ horizontalOffset: t, verticalOffset: s }) => {
|
|
4574
4575
|
let c = t % i.absoluteViewport.width === 0, l = o === e.items.length - 1, u = r.values.computedPageTurnDirection === "vertical", d = n.isRTL(), f = this.getSpreadPosition(c, d), { edgeX: p, edgeY: m } = this.getStartEdges(u, c, t, s, i.absoluteViewport.height);
|
|
4575
4576
|
return a.layout({
|
|
4576
4577
|
spreadPosition: f,
|
|
@@ -4578,17 +4579,17 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4578
4579
|
isLastItem: l,
|
|
4579
4580
|
edgeX: p,
|
|
4580
4581
|
edgeY: m
|
|
4581
|
-
}).pipe(
|
|
4582
|
+
}).pipe(w(({ width: e, height: t }) => {
|
|
4582
4583
|
let n = this.createSpineItemLayout(u, d, p, m, e, t, i.absoluteViewport.width);
|
|
4583
4584
|
return this.spineItemsRelativeLayouts[o] = n, {
|
|
4584
4585
|
horizontalOffset: p + e,
|
|
4585
4586
|
verticalOffset: u ? m + t : 0
|
|
4586
4587
|
};
|
|
4587
4588
|
}));
|
|
4588
|
-
})),
|
|
4589
|
+
})), E({
|
|
4589
4590
|
horizontalOffset: 0,
|
|
4590
4591
|
verticalOffset: 0
|
|
4591
|
-
}))), j(this.destroy$),
|
|
4592
|
+
}))), j(this.destroy$), D()), this.layout$.subscribe(), this.watchForVerticalWritingUpdate();
|
|
4592
4593
|
}
|
|
4593
4594
|
watchForVerticalWritingUpdate() {
|
|
4594
4595
|
this.spineItemsObserver.itemLoad$.pipe(M((e) => {
|
|
@@ -4652,24 +4653,24 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4652
4653
|
y: r
|
|
4653
4654
|
});
|
|
4654
4655
|
}
|
|
4655
|
-
},
|
|
4656
|
+
}, co = class extends Q {
|
|
4656
4657
|
constructor(e, t, n, r, i, a, o) {
|
|
4657
|
-
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spineItemLocator = r, this.settings = i, this.hookManager = a, this.viewport = o, this.elementSubject = new l(void 0), this.element$ = this.elementSubject.asObservable(), this.spineItemsObserver = new
|
|
4658
|
+
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spineItemLocator = r, this.settings = i, this.hookManager = a, this.viewport = o, this.elementSubject = new l(void 0), this.element$ = this.elementSubject.asObservable(), this.spineItemsObserver = new oo(n), this.spineLayout = new so(n, this.spineItemsObserver, e, i, o), this.locator = ao({
|
|
4658
4659
|
context: e,
|
|
4659
4660
|
spineItemsManager: n,
|
|
4660
4661
|
spineItemLocator: r,
|
|
4661
4662
|
settings: i,
|
|
4662
4663
|
spineLayout: this.spineLayout,
|
|
4663
4664
|
viewport: o
|
|
4664
|
-
}), this.spineItemsLoader = new
|
|
4665
|
+
}), this.spineItemsLoader = new qa(this.context, n, this.locator, i, this.spineLayout, this.viewport), this.pages = new Sr(this.spineLayout, this.spineItemsManager, this.spineItemLocator, this.context, this.locator, this.viewport);
|
|
4665
4666
|
let s = e.watch("rootElement").pipe(Ce(K), L((e) => {
|
|
4666
4667
|
let t = e.ownerDocument.createElement("div");
|
|
4667
4668
|
t.style.cssText = "\n height: 100%;\n position: relative;\n ", t.className = `${X}-spine`, this.elementSubject.next(t);
|
|
4668
4669
|
}));
|
|
4669
|
-
|
|
4670
|
+
T(v([this.context.manifest$, this.element$]).pipe(L(([e, t]) => {
|
|
4670
4671
|
if (!t) return;
|
|
4671
4672
|
this.spineItemsManager.destroyItems();
|
|
4672
|
-
let n = e.spineItems.map((e, n) => new
|
|
4673
|
+
let n = e.spineItems.map((e, n) => new Ga(e, t, this.context, this.settings, this.hookManager, n, this.viewport));
|
|
4673
4674
|
this.spineItemsManager.addMany(n);
|
|
4674
4675
|
})), s).pipe(I(this.destroy$)).subscribe();
|
|
4675
4676
|
}
|
|
@@ -4688,7 +4689,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4688
4689
|
destroy() {
|
|
4689
4690
|
super.destroy(), this.pages.destroy(), this.spineItemsLoader.destroy(), this.elementSubject.getValue()?.remove(), this.elementSubject.complete();
|
|
4690
4691
|
}
|
|
4691
|
-
},
|
|
4692
|
+
}, lo = class extends Q {
|
|
4692
4693
|
constructor(e, t) {
|
|
4693
4694
|
super(), this.context = e, this.settings = t, this.orderedSpineItemsSubject = new l([]), this.items$ = this.orderedSpineItemsSubject.asObservable();
|
|
4694
4695
|
}
|
|
@@ -4700,7 +4701,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4700
4701
|
return n > r ? "after" : n === r ? "same" : "before";
|
|
4701
4702
|
}
|
|
4702
4703
|
getSpineItemIndex(e) {
|
|
4703
|
-
let t = e instanceof
|
|
4704
|
+
let t = e instanceof Ga ? e : this.get(e);
|
|
4704
4705
|
if (!t) return;
|
|
4705
4706
|
let n = this.orderedSpineItemsSubject.value.indexOf(t);
|
|
4706
4707
|
return n < 0 ? void 0 : n;
|
|
@@ -4716,7 +4717,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4716
4717
|
e.destroy();
|
|
4717
4718
|
});
|
|
4718
4719
|
}
|
|
4719
|
-
},
|
|
4720
|
+
}, uo = class extends U {
|
|
4720
4721
|
constructor(e, t) {
|
|
4721
4722
|
let n = document.createElement("div");
|
|
4722
4723
|
n.setAttribute(`data-${Tn}`, ""), super({
|
|
@@ -4727,7 +4728,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4727
4728
|
},
|
|
4728
4729
|
width: 1,
|
|
4729
4730
|
height: 1
|
|
4730
|
-
}), this.context = e, this.settingsManager = t, this.layoutSubject = new m(), this.layout$ = this.layoutSubject.asObservable(),
|
|
4731
|
+
}), this.context = e, this.settingsManager = t, this.layoutSubject = new m(), this.layout$ = this.layoutSubject.asObservable(), T(this.settingsManager.watch(["computedSpreadMode"]).pipe(M(() => {
|
|
4731
4732
|
this.mergeCompare({ pageSize: this.calculatePageSize(this.value) });
|
|
4732
4733
|
})), this.context.watch("rootElement").pipe(M(() => {
|
|
4733
4734
|
this.layout();
|
|
@@ -4755,7 +4756,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4755
4756
|
}), this.layoutSubject.next();
|
|
4756
4757
|
}
|
|
4757
4758
|
get absoluteViewport() {
|
|
4758
|
-
return new
|
|
4759
|
+
return new Xa({
|
|
4759
4760
|
width: this.value.width,
|
|
4760
4761
|
height: this.value.height
|
|
4761
4762
|
});
|
|
@@ -4769,7 +4770,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4769
4770
|
}
|
|
4770
4771
|
get relativeViewport() {
|
|
4771
4772
|
let e = this.absoluteViewport, t = this.scaleFactor;
|
|
4772
|
-
return new
|
|
4773
|
+
return new Za({
|
|
4773
4774
|
width: e.width / t,
|
|
4774
4775
|
height: e.height / t
|
|
4775
4776
|
});
|
|
@@ -4777,12 +4778,12 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4777
4778
|
destroy() {
|
|
4778
4779
|
super.destroy(), this.layoutSubject.complete();
|
|
4779
4780
|
}
|
|
4780
|
-
},
|
|
4781
|
-
let t = crypto.randomUUID(), n = new m(), r = new m(), i = new
|
|
4781
|
+
}, fo = `${Cn}-core`, po = (e) => {
|
|
4782
|
+
let t = crypto.randomUUID(), n = new m(), r = new m(), i = new Hi(), a = new Bi(), o = new Ha(e, a), s = new Vi(a, o), c = new lo(a, o), l = new Li(i, c), u = new uo(a, o), d = Ca({
|
|
4782
4783
|
context: a,
|
|
4783
4784
|
settings: o,
|
|
4784
4785
|
viewport: u
|
|
4785
|
-
}), f = new
|
|
4786
|
+
}), f = new za(a, c), p = new co(a, f, c, d, o, i, u), h = Ra({
|
|
4786
4787
|
cfi: l,
|
|
4787
4788
|
context: a,
|
|
4788
4789
|
spineItemsManager: c,
|
|
@@ -4790,7 +4791,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4790
4791
|
spine: p,
|
|
4791
4792
|
settings: o,
|
|
4792
4793
|
viewport: u
|
|
4793
|
-
}), g = new
|
|
4794
|
+
}), g = new Ba(a, f, c, p, d, h.isLocked$, l);
|
|
4794
4795
|
h.navigationState$.subscribe(a.bridgeEvent.viewportStateSubject), h.navigation$.subscribe(a.bridgeEvent.navigationSubject), h.position$.subscribe(a.bridgeEvent.positionSubject), f.subscribe(a.bridgeEvent.paginationSubject);
|
|
4795
4796
|
let _ = (e = {}) => {
|
|
4796
4797
|
n.next(e);
|
|
@@ -4801,16 +4802,16 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4801
4802
|
return;
|
|
4802
4803
|
}
|
|
4803
4804
|
R.log("load", { options: e });
|
|
4804
|
-
let i =
|
|
4805
|
+
let i = mo(n, t);
|
|
4805
4806
|
a.update({
|
|
4806
4807
|
manifest: r,
|
|
4807
4808
|
rootElement: i
|
|
4808
4809
|
}), _({ immediate: !0 });
|
|
4809
|
-
}, ee = o.watch(["computedSpreadMode"]).pipe(ke(1), L(() => _())), te =
|
|
4810
|
+
}, ee = o.watch(["computedSpreadMode"]).pipe(ke(1), L(() => _())), te = T(n.pipe(L((e) => {
|
|
4810
4811
|
let t = a.value.rootElement;
|
|
4811
4812
|
t && (B(t.style, "overflow", "hidden"), u.layout(), p.layout(e));
|
|
4812
4813
|
}), I(r)), ee).subscribe();
|
|
4813
|
-
return nt(document,
|
|
4814
|
+
return nt(document, fo, Ui), {
|
|
4814
4815
|
id: t,
|
|
4815
4816
|
context: a,
|
|
4816
4817
|
spine: p,
|
|
@@ -4822,7 +4823,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4822
4823
|
layout: _,
|
|
4823
4824
|
load: v,
|
|
4824
4825
|
destroy: () => {
|
|
4825
|
-
rt(document,
|
|
4826
|
+
rt(document, fo), te.unsubscribe(), c.destroy(), g.destroy(), o.destroy(), f.destroy(), a.destroy(), h.destroy(), p.destroy(), s.destroy(), r.next(), r.complete(), u.destroy();
|
|
4826
4827
|
},
|
|
4827
4828
|
pagination: {
|
|
4828
4829
|
get state() {
|
|
@@ -4833,7 +4834,7 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4833
4834
|
}
|
|
4834
4835
|
},
|
|
4835
4836
|
settings: o,
|
|
4836
|
-
renderHeadless: (e) => c.get(e)?.renderer.renderHeadless() ??
|
|
4837
|
+
renderHeadless: (e) => c.get(e)?.renderer.renderHeadless() ?? E(void 0),
|
|
4837
4838
|
viewport: u,
|
|
4838
4839
|
viewportState$: a.bridgeEvent.viewportState$,
|
|
4839
4840
|
viewportFree$: a.bridgeEvent.viewportFree$,
|
|
@@ -4841,19 +4842,19 @@ var hi = (e) => (t) => e(t), gi = (e, t, n) => {
|
|
|
4841
4842
|
features: s,
|
|
4842
4843
|
$: { destroy$: r }
|
|
4843
4844
|
};
|
|
4844
|
-
},
|
|
4845
|
+
}, mo = (e, t) => (e.style.cssText = `
|
|
4845
4846
|
${e.style.cssText}
|
|
4846
4847
|
background-color: white;
|
|
4847
4848
|
position: relative;
|
|
4848
|
-
`, e.classList.add(`${X}-reader`), e.setAttribute(wn, t), e.setAttribute("data-prose-reader-container", t), e),
|
|
4849
|
-
if (n.boundary === "start") return
|
|
4849
|
+
`, e.classList.add(`${X}-reader`), e.setAttribute(wn, t), e.setAttribute("data-prose-reader-container", t), e), ho = ui(jt(mi(At(dt(ai(pi(Ei(pr(ln(Jn(ft(gt(ti(qn(fi(po)))))))))))))))), go = (e) => (t) => e(t), _o = 5e3, vo = (e, { itemReadinessTimeoutMs: t = _o } = {}) => $n(e).pipe(A((n) => {
|
|
4850
|
+
if (n.boundary === "start") return E(n);
|
|
4850
4851
|
let r = e.spineItemsManager.items, i = r[r.length - 1];
|
|
4851
|
-
return i ? i.value.isReady ?
|
|
4852
|
+
return i ? i.value.isReady ? E(n) : i.isReady$.pipe(b(Boolean), x(), w(() => n), t === Infinity ? ue : ve({
|
|
4852
4853
|
first: t,
|
|
4853
4854
|
with: () => u
|
|
4854
4855
|
}), Qn(e.navigation)) : u;
|
|
4855
|
-
}),
|
|
4856
|
+
}), D());
|
|
4856
4857
|
//#endregion
|
|
4857
|
-
export { hn as AbstractSpinePosition, kn as CSS_VAR_ABSOLUTE_VIEWPORT_HEIGHT, On as CSS_VAR_ABSOLUTE_VIEWPORT_WIDTH,
|
|
4858
|
+
export { hn as AbstractSpinePosition, kn as CSS_VAR_ABSOLUTE_VIEWPORT_HEIGHT, On as CSS_VAR_ABSOLUTE_VIEWPORT_WIDTH, Li as CfiManager, Bi as Context, qi as ControlledNavigationController, Q as DestroyableClass, Nt as DocumentRenderer, Vi as Features, wn as HTML_ATTRIBUTE_DATA_READER_ID, X as HTML_PREFIX, En as HTML_PREFIX_SCROLL_NAVIGATOR, Dn as HTML_PREFIX_SPINE_ITEM, Tn as HTML_PREFIX_VIEWPORT, Cn as HTML_STYLE_PREFIX, Hi as HookManager, ma as InternalNavigator, un as LayoutEntry, aa as Locker, Sn as PAGINATION_UPDATE_AFTER_VIEWPORT_ADJUSTMENT_DEBOUNCE, bn as PROSE_READER_NAMESPACE, Sr as Pages, za as Pagination, Ba as PaginationController, U as ReactiveEntity, Ft as ResourceHandler, gr as ResourcesLocator, xi as ScrollNavigationController, yi as ScrollPosition, Va as SettingsManager, co as Spine, Ga as SpineItem, fn as SpineItemPageLayout, mn as SpineItemPageSpineLayout, q as SpineItemPosition, pn as SpineItemSpineLayout, lo as SpineItemsManager, oo as SpineItemsObserver, J as SpinePosition, bi as UnboundScrollPosition, dn as UnboundSpineItemPagePosition, Y as UnboundSpinePosition, xn as VIEWPORT_ADJUSTMENT_THROTTLE, uo as Viewport, hr as consolidate, ho as createReader, Tt as deferIdle, Ct as deferNextResult, ki as generateCfiForSpineItemPage, Ai as generateCfiFromRange, Di as generateRootCfi, at as getAttributeValueFromString, _t as getBase64FromBlob, ct as getFrameViewportInfo, ji as getItemAnchor, ln as htmlEnhancer, wt as idle, nt as injectCSS, ot as injectCSSToFrame, K as isDefined, $e as isHtmlElement, et as isHtmlTagElement, Ni as isRootCfi, a as isShallowEqual, qn as layoutEnhancer, yt as mapKeysTo, vo as observeBookBoundaryReached, Dt as observeIntersection, Et as observeMutation, Zn as observeNextSettledNavigation, xt as observeResize, Xn as observeSettledNavigation, ti as paginationEnhancer, Fi as parseCfi, vt as pick, Re as removeAttributeIfPresent, st as removeCSS, V as removeStylePropertyIfPresent, Ii as resolveCfi, go as rootEnhancer, z as setAttributeIfChanged, ze as setPropertyIfChanged, B as setStylePropertyIfChanged, Wn as shouldEnableSpreadModeForViewport, Gn as shouldUseComputedSpreadModeForViewport, vr as spinePositionToSpineItemSpineLayout, Qn as takeUntilNextNavigationSettled, H as upsertCSSToFrame, lt as waitForFrameLoad, ut as waitForFrameReady, Yn as waitForNavigationSettled, St as waitForSwitch, bt as watchKeys };
|
|
4858
4859
|
|
|
4859
4860
|
//# sourceMappingURL=index.js.map
|