@prose-reader/core 1.372.0 → 1.373.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +11 -11
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +95 -75
- package/dist/index.js.map +1 -1
- package/package.json +4 -4
package/dist/index.js
CHANGED
|
@@ -538,7 +538,9 @@ var Tt = class {
|
|
|
538
538
|
})))).pipe(j(n.$.destroy$)).subscribe(), n;
|
|
539
539
|
}, kt = (e) => E(...e.spine.spineItemsManager.items.map((e) => e.watch("isLoaded").pipe(A(() => {
|
|
540
540
|
let t = e.renderer.getDocumentFrame();
|
|
541
|
-
|
|
541
|
+
if (!t?.contentDocument) return d;
|
|
542
|
+
let n = Array.from(t.contentDocument.querySelectorAll("a")).map((e) => w(e, "click"));
|
|
543
|
+
return E(...n);
|
|
542
544
|
})))).pipe(M((e) => {
|
|
543
545
|
e.preventDefault();
|
|
544
546
|
}), O()), U = class extends f {
|
|
@@ -739,7 +741,9 @@ var Tt = class {
|
|
|
739
741
|
let a = t.getAttribute("src") || t.getAttribute("href");
|
|
740
742
|
if (!a) return D(null);
|
|
741
743
|
let o = r.manifest.items.find(({ href: e }) => `${Nt(n, a).toLowerCase()}`.endsWith(`${e.toLowerCase()}`));
|
|
742
|
-
|
|
744
|
+
if (!o) return D(null);
|
|
745
|
+
let s = new Mt(o, i);
|
|
746
|
+
return C(s.getResource()).pipe(ue((e) => e instanceof Response ? C(e.blob()) : D(void 0)), ue((a) => {
|
|
743
747
|
if (!a) return D(null);
|
|
744
748
|
let o = e?.defaultView?.URL.createObjectURL(a) ?? "";
|
|
745
749
|
if (t.hasAttribute("src")) t.setAttribute("src", o);
|
|
@@ -753,7 +757,7 @@ var Tt = class {
|
|
|
753
757
|
}, t.onerror = a.error;
|
|
754
758
|
});
|
|
755
759
|
return D(null);
|
|
756
|
-
}))
|
|
760
|
+
}));
|
|
757
761
|
}, It = ({ settings: e, item: t, context: n }) => (r) => r.pipe(A((r) => {
|
|
758
762
|
let a = Je(r.contentDocument), o = i(t.href), s = a.map((t) => Ft(r.contentDocument, t, o, n, e));
|
|
759
763
|
return s.length === 0 ? D(r) : v(s).pipe(T(() => r));
|
|
@@ -1083,17 +1087,19 @@ var Tt = class {
|
|
|
1083
1087
|
let { width: r, height: i } = this.viewport.pageSize, a = this.getFrameElement();
|
|
1084
1088
|
if (!a) return D(void 0);
|
|
1085
1089
|
let o = this.settings.values.computedPageTurnMode === "scrollable";
|
|
1086
|
-
if (a.contentDocument?.documentElement && (R(a.contentDocument.documentElement, "data-prose-reader-html-renderer-spread-position", n), o ? a.contentDocument?.documentElement.classList.add("prose-reader-html-renderer-touch-enabled") : a.contentDocument?.documentElement.classList.remove("prose-reader-html-renderer-touch-enabled")), this.isPrePaginated())
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
|
|
1095
|
-
|
|
1096
|
-
|
|
1090
|
+
if (a.contentDocument?.documentElement && (R(a.contentDocument.documentElement, "data-prose-reader-html-renderer-spread-position", n), o ? a.contentDocument?.documentElement.classList.add("prose-reader-html-renderer-touch-enabled") : a.contentDocument?.documentElement.classList.remove("prose-reader-html-renderer-touch-enabled")), this.isPrePaginated()) {
|
|
1091
|
+
let o = Qt({
|
|
1092
|
+
blankPagePosition: t,
|
|
1093
|
+
frameElement: a,
|
|
1094
|
+
isRTL: this.context.isRTL(),
|
|
1095
|
+
minPageSpread: e,
|
|
1096
|
+
pageHeight: i,
|
|
1097
|
+
pageWidth: r,
|
|
1098
|
+
spreadPosition: n
|
|
1099
|
+
});
|
|
1100
|
+
return D(o);
|
|
1101
|
+
}
|
|
1102
|
+
let s = !!this.writingMode?.startsWith("vertical"), c = this.isImageType(), l = an({
|
|
1097
1103
|
pageHeight: i,
|
|
1098
1104
|
pageWidth: r,
|
|
1099
1105
|
frameElement: a,
|
|
@@ -1105,7 +1111,8 @@ var Tt = class {
|
|
|
1105
1111
|
minPageSpread: e,
|
|
1106
1112
|
isImageType: c,
|
|
1107
1113
|
enableTouch: this.settings.values.computedPageTurnMode === "scrollable"
|
|
1108
|
-
})
|
|
1114
|
+
});
|
|
1115
|
+
return D(l);
|
|
1109
1116
|
}
|
|
1110
1117
|
onRenderHeadless() {
|
|
1111
1118
|
return C(this.resourcesHandler.fetchResource()).pipe(A((e) => {
|
|
@@ -1225,8 +1232,8 @@ var cn = class {
|
|
|
1225
1232
|
t && z(t.style, "visibility", "hidden");
|
|
1226
1233
|
})), i = e.context.bridgeEvent.viewportBusy$.pipe(I(() => {
|
|
1227
1234
|
t && z(t.style, "visibility", "visible");
|
|
1228
|
-
})), a = r(e.viewportFree$).pipe(ke(1));
|
|
1229
|
-
return E(n,
|
|
1235
|
+
})), a = r(e.viewportFree$).pipe(ke(1)), o = e.settings.values$.pipe(Ce(() => e.settings.values.computedPageTurnMode), be()).pipe(P((e) => e === "controlled" ? i.pipe(P(() => a)) : r(D(void 0))), F(e.$.destroy$));
|
|
1236
|
+
return E(n, o);
|
|
1230
1237
|
}, vn = "@prose-reader/core", yn = 0, bn = 200, X = "prose-reader", xn = `${X}-style`, Sn = `data-${X}-id`, Cn = `${X}-viewport`, wn = `${X}-scroll-navigator`, Tn = `${X}-spine-item`, En = `--${X}-absolute-viewport-width`, Dn = `--${X}-absolute-viewport-height`, On = `${X}-enhancer-loading`, kn = `${On}-container`, An = `${On}-logo`, jn = `${On}-details`, Mn = ({ container: e, item: t }) => {
|
|
1231
1238
|
let n = e.ownerDocument.createElement("div");
|
|
1232
1239
|
n.classList.add(kn);
|
|
@@ -1238,7 +1245,7 @@ var cn = class {
|
|
|
1238
1245
|
z(e.style, "color", Nn(t));
|
|
1239
1246
|
}, Fn = (e) => {
|
|
1240
1247
|
let t = /* @__PURE__ */ new WeakMap();
|
|
1241
|
-
|
|
1248
|
+
e.hookManager.register("item.onBeforeContainerAttach", ({ element: n, item: r }) => {
|
|
1242
1249
|
z(n.style, "z-index", "0");
|
|
1243
1250
|
let i = Mn({
|
|
1244
1251
|
container: n,
|
|
@@ -1248,13 +1255,14 @@ var cn = class {
|
|
|
1248
1255
|
loadingElement: i,
|
|
1249
1256
|
theme: e.theme.get()
|
|
1250
1257
|
}), t.set(n, i), n.appendChild(i);
|
|
1251
|
-
})
|
|
1258
|
+
});
|
|
1259
|
+
let n = e.spineItemsObserver.itemStateChange$.pipe(I(({ item: e, isError: n, error: r }) => {
|
|
1252
1260
|
if (!n) return;
|
|
1253
1261
|
let i = t.get(e.containerElement);
|
|
1254
1262
|
if (!i) return;
|
|
1255
1263
|
let a = i.querySelector("[data-details-element]");
|
|
1256
1264
|
Ze(a) && Le(a, "innerText", r?.toString() ?? "Unknown error");
|
|
1257
|
-
})), e.theme.$.theme$.pipe(I((n) => {
|
|
1265
|
+
})), r = e.theme.$.theme$.pipe(I((n) => {
|
|
1258
1266
|
for (let r of e.spineItemsManager.items) {
|
|
1259
1267
|
let e = t.get(r.containerElement);
|
|
1260
1268
|
e && Pn({
|
|
@@ -1262,7 +1270,8 @@ var cn = class {
|
|
|
1262
1270
|
theme: n
|
|
1263
1271
|
});
|
|
1264
1272
|
}
|
|
1265
|
-
}))
|
|
1273
|
+
}));
|
|
1274
|
+
return E(n, r);
|
|
1266
1275
|
}, In = (e) => {
|
|
1267
1276
|
e.hookManager.register("item.onDocumentLoad", async ({ itemId: t }) => {
|
|
1268
1277
|
let n = e.spineItemsManager.get(t)?.renderer.getDocumentFrame();
|
|
@@ -1367,8 +1376,8 @@ var cn = class {
|
|
|
1367
1376
|
let f = s.spine.pages.pipe(Ee({
|
|
1368
1377
|
refCount: !0,
|
|
1369
1378
|
bufferSize: 1
|
|
1370
|
-
}));
|
|
1371
|
-
return E(l, d, u, f,
|
|
1379
|
+
})), p = Rn(s), m = Wn(s), h = Fn(s);
|
|
1380
|
+
return E(l, d, u, f, p, m, h).pipe(F(s.$.destroy$)).subscribe(), {
|
|
1372
1381
|
...s,
|
|
1373
1382
|
destroy: () => {
|
|
1374
1383
|
c.destroy(), s.destroy();
|
|
@@ -1763,7 +1772,8 @@ var cn = class {
|
|
|
1763
1772
|
}
|
|
1764
1773
|
}, sr = 500, cr = class extends Q {
|
|
1765
1774
|
constructor(e, t) {
|
|
1766
|
-
super(), this.scrollNavigationController = e, this.lock = t, this.navigationSubject = new m(), this.navigation$ = this.navigationSubject.asObservable()
|
|
1775
|
+
super(), this.scrollNavigationController = e, this.lock = t, this.navigationSubject = new m(), this.navigation$ = this.navigationSubject.asObservable();
|
|
1776
|
+
let n = this.scrollNavigationController.userScroll$.pipe(oe((e) => {
|
|
1767
1777
|
let t = this.lock();
|
|
1768
1778
|
return E(this.scrollNavigationController.userScroll$, D(e)).pipe(te(sr, h), S(), M(() => {
|
|
1769
1779
|
let e = this.scrollNavigationController.fromScrollPosition(this.scrollNavigationController.scrollPosition);
|
|
@@ -1775,7 +1785,8 @@ var cn = class {
|
|
|
1775
1785
|
}), se(() => {
|
|
1776
1786
|
t();
|
|
1777
1787
|
}));
|
|
1778
|
-
}))
|
|
1788
|
+
}));
|
|
1789
|
+
E(n).pipe(j(this.destroy$)).subscribe();
|
|
1779
1790
|
}
|
|
1780
1791
|
}, lr = (e) => e.pagination.state$.pipe(N(e.settings.values$), T(([t, { computedPageTurnDirection: n }]) => {
|
|
1781
1792
|
let { spineItems: r, readingDirection: i } = e.context.manifest, a = r.length ?? 0, o = t.begin.spineItemIndex === 0, s = t.end.spineItemIndex === Math.max(a - 1, 0), c = t.end.spineItemIndex === Math.max(a - 1, 0), l = t.begin.spineItemIndex === 0, u = t.begin.pageIndexInSpineItem === 0, d = t.end.pageIndexInSpineItem === t.end.numberOfPagesInSpineItem - 1;
|
|
@@ -1798,19 +1809,19 @@ var cn = class {
|
|
|
1798
1809
|
leading: !0
|
|
1799
1810
|
}), M(i), se(i));
|
|
1800
1811
|
}, dr = (e) => (t) => {
|
|
1801
|
-
let n = e(t), r = lr(n), i = Zn(n), a = new ar(n), o = new or(n), s = new cr(n.navigation.scrollNavigationController, n.navigation.lock)
|
|
1802
|
-
E(Qn(n, a), s.navigation$.pipe(M((e) => {
|
|
1812
|
+
let n = e(t), r = lr(n), i = Zn(n), a = new ar(n), o = new or(n), s = new cr(n.navigation.scrollNavigationController, n.navigation.lock), c = Qn(n, a), l = s.navigation$.pipe(M((e) => {
|
|
1803
1813
|
n.navigation.navigate(e);
|
|
1804
|
-
}))
|
|
1805
|
-
|
|
1814
|
+
}));
|
|
1815
|
+
E(c, l).pipe(j(n.$.destroy$)).subscribe();
|
|
1816
|
+
let u = (e) => {
|
|
1806
1817
|
n.mount(e), t.cfi && a.goToCfi(t.cfi, { animate: !1 });
|
|
1807
|
-
},
|
|
1818
|
+
}, d = () => {
|
|
1808
1819
|
s.destroy(), n.destroy();
|
|
1809
1820
|
};
|
|
1810
1821
|
return {
|
|
1811
1822
|
...n,
|
|
1812
|
-
mount:
|
|
1813
|
-
destroy:
|
|
1823
|
+
mount: u,
|
|
1824
|
+
destroy: d,
|
|
1814
1825
|
navigation: {
|
|
1815
1826
|
...n.navigation,
|
|
1816
1827
|
state$: r,
|
|
@@ -2215,8 +2226,8 @@ var cn = class {
|
|
|
2215
2226
|
let t = e.pagination.state$, n = e.spine.pages.layout$, r = Yr(e).pipe(k({
|
|
2216
2227
|
bufferSize: 1,
|
|
2217
2228
|
refCount: !0
|
|
2218
|
-
})), i = v([
|
|
2219
|
-
|
|
2229
|
+
})), i = t.pipe(T(Zr), b(gr)), a = v([
|
|
2230
|
+
i,
|
|
2220
2231
|
r,
|
|
2221
2232
|
n
|
|
2222
2233
|
]).pipe(T(([t, n, r]) => {
|
|
@@ -2233,14 +2244,14 @@ var cn = class {
|
|
|
2233
2244
|
}), k({
|
|
2234
2245
|
bufferSize: 1,
|
|
2235
2246
|
refCount: !0
|
|
2236
|
-
})),
|
|
2247
|
+
})), s = e.settings.watch(["computedSpreadMode"]).pipe(T((e) => e.computedSpreadMode ?? !1), b()), c = n.pipe(T((t) => Kr({
|
|
2248
|
+
items: e.spineItemsManager.items,
|
|
2249
|
+
pagesState: t
|
|
2250
|
+
})), b(qr)), l = v([
|
|
2237
2251
|
t,
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
|
|
2241
|
-
items: e.spineItemsManager.items,
|
|
2242
|
-
pagesState: t
|
|
2243
|
-
})), b(qr))
|
|
2252
|
+
s,
|
|
2253
|
+
a,
|
|
2254
|
+
c
|
|
2244
2255
|
]).pipe(T(([e, t, n, r]) => ({
|
|
2245
2256
|
...e,
|
|
2246
2257
|
begin: {
|
|
@@ -2253,17 +2264,17 @@ var cn = class {
|
|
|
2253
2264
|
},
|
|
2254
2265
|
isUsingSpread: t,
|
|
2255
2266
|
...r
|
|
2256
|
-
}))),
|
|
2257
|
-
return v([a, v([
|
|
2267
|
+
}))), u = Jn(e.navigation).pipe(T(({ position: e }) => e), b(o)), d = v([
|
|
2258
2268
|
t,
|
|
2259
2269
|
e.layout$,
|
|
2260
|
-
|
|
2270
|
+
u
|
|
2261
2271
|
]).pipe(A(([t, n, r]) => Jr({
|
|
2262
2272
|
reader: e,
|
|
2263
2273
|
paginationInfo: t,
|
|
2264
2274
|
navigationPosition: r,
|
|
2265
2275
|
manifest: e.context.manifest
|
|
2266
|
-
})), T((e) => ({ percentageEstimateOfBook: e })))
|
|
2276
|
+
})), T((e) => ({ percentageEstimateOfBook: e })));
|
|
2277
|
+
return v([l, d]).pipe(T(([e, t]) => ({
|
|
2267
2278
|
...e,
|
|
2268
2279
|
...t
|
|
2269
2280
|
})), b(gr), g(5));
|
|
@@ -2317,7 +2328,7 @@ var cn = class {
|
|
|
2317
2328
|
}
|
|
2318
2329
|
}, ti = ({ selection: e, spineItem: t }) => {
|
|
2319
2330
|
let { anchorNode: n, anchorOffset: r, focusNode: i, focusOffset: a } = e;
|
|
2320
|
-
if (
|
|
2331
|
+
if (n && i) try {
|
|
2321
2332
|
return ei({
|
|
2322
2333
|
node: n,
|
|
2323
2334
|
offset: r
|
|
@@ -2499,7 +2510,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2499
2510
|
let t = this.value.element;
|
|
2500
2511
|
if (!t) return;
|
|
2501
2512
|
let n = this.fromSpinePosition(e);
|
|
2502
|
-
Math.round(n.x)
|
|
2513
|
+
(Math.round(n.x) !== t.scrollLeft || Math.round(n.y) !== t.scrollTop) && (this.scrollingSubject.next(!0), t.scrollTo({
|
|
2503
2514
|
left: n.x,
|
|
2504
2515
|
top: n.y,
|
|
2505
2516
|
behavior: "instant"
|
|
@@ -2515,8 +2526,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2515
2526
|
t && (e === "scrollable" ? z(t.style, "display", "block") : z(t.style, "display", "contents"));
|
|
2516
2527
|
})), s = this.navigateSubject.pipe(M(this.applyNavigationPosition));
|
|
2517
2528
|
this.isNavigating$ = this.scrollingSubject.asObservable();
|
|
2518
|
-
let c =
|
|
2519
|
-
this.userScroll$ = this.watch("element").pipe(x(K), A((e) => t.watch(["computedPageTurnMode"]).pipe(A(({ computedPageTurnMode: t }) => t === "controlled" ? d : w(e, "scroll").pipe(N(
|
|
2529
|
+
let c = E(r.element$.pipe(x(K), A((e) => vt(e))), r.element$.pipe(x(K), A((e) => w(e, "scroll"))), r.spineItemsObserver.itemResize$).pipe(A(() => ve(10).pipe(T(() => !1), pe(!0))), b(), pe(!1)), u = v([c, this.isNavigating$]).pipe(T(([e, t]) => e || t), k(1));
|
|
2530
|
+
this.userScroll$ = this.watch("element").pipe(x(K), A((e) => t.watch(["computedPageTurnMode"]).pipe(A(({ computedPageTurnMode: t }) => t === "controlled" ? d : w(e, "scroll").pipe(N(u), x(([, e]) => !e), T(([e]) => e))))), O()), E(a, o, s).pipe(j(this.destroy$)).subscribe();
|
|
2520
2531
|
}
|
|
2521
2532
|
update(e) {
|
|
2522
2533
|
this.mergeCompare(e);
|
|
@@ -2568,7 +2579,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2568
2579
|
x: 0,
|
|
2569
2580
|
y: 0
|
|
2570
2581
|
}
|
|
2571
|
-
}), this.reader = e, this.enterSubject = new m(), this.exitSubject = new m()
|
|
2582
|
+
}), this.reader = e, this.enterSubject = new m(), this.exitSubject = new m();
|
|
2583
|
+
let t = this.enterSubject.pipe(A((e) => {
|
|
2572
2584
|
let { scale: t = 1, animate: n = !1 } = e ?? {}, r = this.reader.viewport.value.element;
|
|
2573
2585
|
R(this.viewport.element, `data-${X}-zooming`, "true");
|
|
2574
2586
|
let i = this.scrollNavigationController.value.element;
|
|
@@ -2582,7 +2594,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2582
2594
|
}), this.updateZoom(t), t !== 1 && this.isControlled ? ve(e?.animate ? vi : 0).pipe(M(() => {
|
|
2583
2595
|
this.reader.layout();
|
|
2584
2596
|
})) : u;
|
|
2585
|
-
})), this.exitSubject.pipe(A((e) => {
|
|
2597
|
+
})), n = this.exitSubject.pipe(A((e) => {
|
|
2586
2598
|
let t = this.reader.viewport.value.element;
|
|
2587
2599
|
R(this.viewport.element, `data-${X}-zooming`, "false");
|
|
2588
2600
|
let n = this.scrollNavigationController.value.element;
|
|
@@ -2593,7 +2605,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2593
2605
|
let e = this.reader.viewport.value.element;
|
|
2594
2606
|
B(e.style, "transform-origin"), B(e.style, "transition"), this.isControlled && this.reader.layout();
|
|
2595
2607
|
}), j(this.enterSubject));
|
|
2596
|
-
}))
|
|
2608
|
+
}));
|
|
2609
|
+
E(t, n).pipe(j(this.destroy$)).subscribe();
|
|
2597
2610
|
}
|
|
2598
2611
|
enter(e) {
|
|
2599
2612
|
this.enterSubject.next(e);
|
|
@@ -2681,7 +2694,10 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2681
2694
|
}).trim(), wi = (e, t) => Si({
|
|
2682
2695
|
nodeOrRange: e,
|
|
2683
2696
|
item: t
|
|
2684
|
-
}), Ti = (e) => e.index.toString(), Ei = (e) => e[0]?.index === 6 && e.length > 1, Di = (e) =>
|
|
2697
|
+
}), Ti = (e) => e.index.toString(), Ei = (e) => e[0]?.index === 6 && e.length > 1, Di = (e) => {
|
|
2698
|
+
let t = Ne(e);
|
|
2699
|
+
return je(t);
|
|
2700
|
+
}, Oi = (e) => Array.isArray(e) ? e[0] && Ei(e[0]) ? e[0] : void 0 : e.parent[0] && Ei(e.parent[0]) ? e.parent[0] : void 0, ki = (e) => {
|
|
2685
2701
|
let t = Ne(e), n = ((Oi(t) ?? [])[1]?.index ?? 2) / 2 - 1, r = Me(t);
|
|
2686
2702
|
return {
|
|
2687
2703
|
isCfiRange: r,
|
|
@@ -2886,7 +2902,9 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2886
2902
|
}
|
|
2887
2903
|
destroy(e, t, n) {
|
|
2888
2904
|
let r = this._hookExecutions.filter((r) => n && r.ref === n || e === r.name && (!t || t && t === r.id));
|
|
2889
|
-
|
|
2905
|
+
this._hookExecutions = this._hookExecutions.filter((e) => !r.includes(e));
|
|
2906
|
+
let i = r.map(({ destroyFn: e }) => e());
|
|
2907
|
+
return v(i);
|
|
2890
2908
|
}
|
|
2891
2909
|
}, Li = "[data-prose-reader-spine-item][data-is-ready=false]{pointer-events:none;-webkit-user-select:none;user-select:none}.prose-reader-enhancer-loading-container{width:100%;height:100%;max-width:var(--prose-reader-absolute-viewport-width,100%);text-align:center;color:#cacaca;z-index:1;background-color:#fff;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;top:0;left:0}[data-prose-reader-spine-item][data-is-ready=true] .prose-reader-enhancer-loading-container{visibility:hidden;z-index:0}.prose-reader-enhancer-loading-logo{font-size:4em}.prose-reader-enhancer-loading-details{text-overflow:ellipsis;white-space:nowrap;width:80%;max-width:300px;font-size:1.2em;overflow:hidden}[data-prose-reader-scroll-navigator][data-prose-reader-zooming=true]{overflow:scroll}[data-prose-reader-scroll-navigator][data-prose-reader-zooming=true][data-prose-reader-zooming-direction=down]{overflow-x:auto}[data-prose-reader-scroll-navigator]{width:100%;height:100%;position:relative;overflow:hidden scroll}[data-prose-reader-viewport]{background-color:#fff;width:100%;height:100%;position:relative}.prose-reader-reader{background-color:#fff;position:relative;overflow:hidden}", Ri = (e) => ({
|
|
2892
2910
|
x: -e.x,
|
|
@@ -2902,14 +2920,14 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
2902
2920
|
super(), this.settings = e, this.hookManager = t, this.context = n, this.spine = r, this.viewport = i, this.navigateSubject = new m(), this.isActive = () => this.settings.values.computedPageTurnMode === "controlled", this.getNavigationVisibleArea = () => this.viewport.absoluteViewport, this.element$ = new l(n.document.createElement("div"));
|
|
2903
2921
|
let o = this.spine.element$.pipe(x(K), N(this.element$), M(([e, t]) => {
|
|
2904
2922
|
t.style.cssText = "\n height: 100%;\n width: 100%;\n position: relative;\n ", t.className = `${X}-controlled-navigator`, t.innerHTML = "", t.appendChild(e), this.viewport.value.element.appendChild(t), this.element$.next(t);
|
|
2905
|
-
})), s =
|
|
2923
|
+
})), s = e.watch([
|
|
2906
2924
|
"computedPageTurnDirection",
|
|
2907
2925
|
"computedPageTurnMode",
|
|
2908
2926
|
"numberOfAdjacentSpineItemToPreLoad"
|
|
2909
|
-
]), this.element$]).pipe(M(([, t]) => {
|
|
2927
|
+
]), c = v([s, this.element$]).pipe(M(([, t]) => {
|
|
2910
2928
|
e.values.computedPageTurnMode === "scrollable" ? z(t.style, "display", "contents") : z(t.style, "display", "block");
|
|
2911
2929
|
}));
|
|
2912
|
-
this.layout$ =
|
|
2930
|
+
this.layout$ = c.pipe(M(() => {
|
|
2913
2931
|
Bi.info("layout", e.values);
|
|
2914
2932
|
}), O()), this.isNavigating$ = this.navigateSubject.pipe(b((e, t) => a(e.position, t.position)), T(({ animation: t, position: n }) => (Bi.info("Navigation requested", {
|
|
2915
2933
|
animation: t,
|
|
@@ -3106,7 +3124,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3106
3124
|
})), Zi = ({ settings: e, spineItemsManager: t, spineLocator: n, navigationResolver: r }) => (i) => {
|
|
3107
3125
|
let a = (i) => {
|
|
3108
3126
|
let { navigationSnapThreshold: a, computedPageTurnMode: o } = e.values, s = t.get(i.spineItem);
|
|
3109
|
-
if (
|
|
3127
|
+
if (s && i.position) {
|
|
3110
3128
|
if (o === "controlled") {
|
|
3111
3129
|
let { endPageIndex: e, beginPageIndex: t } = n.getVisiblePagesFromViewportPosition({
|
|
3112
3130
|
position: i.position,
|
|
@@ -3352,11 +3370,10 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3352
3370
|
} })), se(() => {
|
|
3353
3371
|
t();
|
|
3354
3372
|
}), j(d));
|
|
3355
|
-
}), O())
|
|
3356
|
-
E(E(E(i, o.layout$).pipe(A(() => D(null).pipe(A(() => u.pipe(x((e) => !e), S())), T(() => ({ navigation: {
|
|
3373
|
+
}), O()), p = E(i, o.layout$).pipe(A(() => D(null).pipe(A(() => u.pipe(x((e) => !e), S())), T(() => ({ navigation: {
|
|
3357
3374
|
...this.navigationSubject.getValue(),
|
|
3358
3375
|
animation: !1
|
|
3359
|
-
} })), j(E(f, d))))), f).pipe(ra({
|
|
3376
|
+
} })), j(E(f, d))))), m = E(p, f).pipe(ra({
|
|
3360
3377
|
navigationResolver: a,
|
|
3361
3378
|
settings: e,
|
|
3362
3379
|
context: t,
|
|
@@ -3378,7 +3395,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3378
3395
|
spineLocator: o.locator,
|
|
3379
3396
|
settings: e,
|
|
3380
3397
|
navigationResolver: a
|
|
3381
|
-
}), T(({ navigation: e }) => e), O()),
|
|
3398
|
+
}), T(({ navigation: e }) => e), O()), h = Ui(t, this.navigationSubject, o);
|
|
3399
|
+
E(m, d, h).pipe(N(this.navigationSubject), (e) => e.pipe(M(([e]) => {
|
|
3382
3400
|
let t = e.type === "scroll", n = e.meta.triggeredBy === "pagination", r = e.meta.triggeredBy === "restoration";
|
|
3383
3401
|
if (t && !r || n) return;
|
|
3384
3402
|
let i = {
|
|
@@ -3874,8 +3892,8 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3874
3892
|
}, Fa = class extends Q {
|
|
3875
3893
|
constructor(e, t, n, r, i, a) {
|
|
3876
3894
|
super(), this.context = e, this.pagination = t, this.spineItemsManager = n, this.spine = r, this.isNavigationLocked$ = i, this.cfi = a;
|
|
3877
|
-
let o = E(this.context.bridgeEvent.navigation$, r.layout$).pipe(A(() => this.isNavigationLocked$.pipe(x((e) => !e), he(1), N(this.context.bridgeEvent.navigation$), T(([, e]) => this.resolveMetrics(e) ?? this.pagination.value))), O());
|
|
3878
|
-
E(o,
|
|
3895
|
+
let o = E(this.context.bridgeEvent.navigation$, r.layout$).pipe(A(() => this.isNavigationLocked$.pipe(x((e) => !e), he(1), N(this.context.bridgeEvent.navigation$), T(([, e]) => this.resolveMetrics(e) ?? this.pagination.value))), O()), s = o.pipe(yt(this.context.bridgeEvent.viewportFree$), T((e) => this.resolvePositions(e)), x((e) => e !== void 0));
|
|
3896
|
+
E(o, s).pipe(j(this.destroy$)).subscribe((e) => {
|
|
3879
3897
|
this.pagination.update(e);
|
|
3880
3898
|
});
|
|
3881
3899
|
}
|
|
@@ -3909,7 +3927,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
3909
3927
|
}
|
|
3910
3928
|
resolvePositions(e) {
|
|
3911
3929
|
let t = this.resolveEdgePositions(e.begin), n = this.resolveEdgePositions(e.end);
|
|
3912
|
-
if (
|
|
3930
|
+
if (t && n) return {
|
|
3913
3931
|
...e,
|
|
3914
3932
|
begin: t,
|
|
3915
3933
|
end: n
|
|
@@ -4194,7 +4212,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4194
4212
|
});
|
|
4195
4213
|
return u ? [...n, i] : n;
|
|
4196
4214
|
}, []), u = l[0], d = l[l.length - 1] ?? u;
|
|
4197
|
-
if (
|
|
4215
|
+
if (u !== void 0 && d !== void 0) return {
|
|
4198
4216
|
beginPageIndex: u,
|
|
4199
4217
|
endPageIndex: d
|
|
4200
4218
|
};
|
|
@@ -4384,12 +4402,12 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4384
4402
|
let o = e.watch("rootElement").pipe(xe(K), I(() => {
|
|
4385
4403
|
let e = this.context.document.createElement("div");
|
|
4386
4404
|
e.style.cssText = "\n height: 100%;\n position: relative;\n ", e.className = `${X}-spine`, this.elementSubject.next(e);
|
|
4387
|
-
}))
|
|
4388
|
-
E(this.element$.pipe(xe(K), I((e) => {
|
|
4405
|
+
})), s = this.element$.pipe(xe(K), I((e) => {
|
|
4389
4406
|
this.spineItemsManager.items.forEach((t) => {
|
|
4390
4407
|
t.attach(e);
|
|
4391
4408
|
});
|
|
4392
|
-
}))
|
|
4409
|
+
}));
|
|
4410
|
+
E(s, o).pipe(F(this.destroy$)).subscribe();
|
|
4393
4411
|
}
|
|
4394
4412
|
get element() {
|
|
4395
4413
|
return this.elementSubject.getValue();
|
|
@@ -4629,11 +4647,13 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4629
4647
|
},
|
|
4630
4648
|
width: 1,
|
|
4631
4649
|
height: 1
|
|
4632
|
-
}), this.context = e, this.settingsManager = t, this.layoutSubject = new m(), this.layout$ = this.layoutSubject.asObservable()
|
|
4650
|
+
}), this.context = e, this.settingsManager = t, this.layoutSubject = new m(), this.layout$ = this.layoutSubject.asObservable();
|
|
4651
|
+
let r = this.settingsManager.watch(["computedSpreadMode"]).pipe(M(() => {
|
|
4633
4652
|
this.mergeCompare({ pageSize: this.calculatePageSize(this.value) });
|
|
4634
|
-
})), this.context.watch("rootElement").pipe(M(() => {
|
|
4653
|
+
})), i = this.context.watch("rootElement").pipe(M(() => {
|
|
4635
4654
|
this.layout();
|
|
4636
|
-
}))
|
|
4655
|
+
}));
|
|
4656
|
+
E(r, i).pipe(j(this.destroy$)).subscribe();
|
|
4637
4657
|
}
|
|
4638
4658
|
calculatePageSize(e) {
|
|
4639
4659
|
let { computedSpreadMode: t } = this.settingsManager.values;
|
|
@@ -4702,9 +4722,9 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4702
4722
|
L.log("mount", { containerElement: e }), $e(l.document, a, Li);
|
|
4703
4723
|
let t = lo(e, i);
|
|
4704
4724
|
l.update({ rootElement: t }), te({ immediate: !0 });
|
|
4705
|
-
}, re = u.watch(["computedSpreadMode"]).pipe(De(1), I(() => te())), ie =
|
|
4725
|
+
}, re = u.watch(["computedSpreadMode"]).pipe(De(1), I(() => te())), ie = o.pipe(I((e) => {
|
|
4706
4726
|
l.value.rootElement && (f.layout(), v.layout(e));
|
|
4707
|
-
}), F(s)), re).subscribe();
|
|
4727
|
+
}), F(s)), b = E(ie, re).subscribe();
|
|
4708
4728
|
return {
|
|
4709
4729
|
id: i,
|
|
4710
4730
|
context: l,
|
|
@@ -4718,7 +4738,7 @@ var ci = (e) => (t) => e(t), li = (e, t, n) => {
|
|
|
4718
4738
|
mount: ne,
|
|
4719
4739
|
destroy: () => {
|
|
4720
4740
|
let e = l.value.rootElement;
|
|
4721
|
-
e && (et(l.document, a), uo(e)),
|
|
4741
|
+
e && (et(l.document, a), uo(e)), b.unsubscribe(), p.destroy(), ee.destroy(), u.destroy(), _.destroy(), l.destroy(), y.destroy(), v.destroy(), d.destroy(), s.next(), s.complete(), f.destroy();
|
|
4722
4742
|
},
|
|
4723
4743
|
pagination: {
|
|
4724
4744
|
get state() {
|