@prose-reader/core 1.21.0 → 1.23.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.
Files changed (35) hide show
  1. package/dist/context.d.ts +6 -1
  2. package/dist/createReaderWithEnhancer.d.ts +233 -805
  3. package/dist/enhancers/accessibility.d.ts +231 -805
  4. package/dist/enhancers/chrome.d.ts +231 -805
  5. package/dist/enhancers/cssFix.d.ts +6639 -0
  6. package/dist/enhancers/fonts.d.ts +233 -807
  7. package/dist/enhancers/hotkeys.d.ts +231 -805
  8. package/dist/enhancers/layoutEnhancer/layoutEnhancer.d.ts +231 -805
  9. package/dist/enhancers/links.d.ts +231 -805
  10. package/dist/enhancers/loadingEnhancer.d.ts +231 -805
  11. package/dist/enhancers/media.d.ts +231 -805
  12. package/dist/enhancers/navigation.d.ts +231 -805
  13. package/dist/enhancers/pagination.d.ts +233 -805
  14. package/dist/enhancers/progression.d.ts +231 -805
  15. package/dist/enhancers/resources/index.d.ts +231 -805
  16. package/dist/enhancers/theme.d.ts +231 -805
  17. package/dist/enhancers/types/enhancer.d.ts +231 -805
  18. package/dist/enhancers/utils.d.ts +231 -805
  19. package/dist/enhancers/webkit.d.ts +231 -805
  20. package/dist/enhancers/zoom/index.d.ts +231 -805
  21. package/dist/prose.js +300 -278
  22. package/dist/prose.js.map +1 -1
  23. package/dist/prose.umd.cjs +299 -277
  24. package/dist/prose.umd.cjs.map +1 -1
  25. package/dist/reader.d.ts +231 -805
  26. package/dist/spine/locationResolver.d.ts +7 -17
  27. package/dist/spine/navigationResolver.d.ts +5 -8
  28. package/dist/spine/types.d.ts +10 -0
  29. package/dist/spineItem/locationResolver.d.ts +3 -7
  30. package/dist/spineItem/navigationResolver.d.ts +7 -17
  31. package/dist/spineItem/types.d.ts +19 -0
  32. package/dist/spineItemManager.d.ts +6 -519
  33. package/dist/types/Hook.d.ts +6 -6
  34. package/dist/types/Spine.d.ts +1 -5
  35. package/package.json +3 -3
@@ -491,7 +491,7 @@ export declare const createReaderWithEnhancers: (options: {
491
491
  isReady$: import("rxjs").Observable<boolean>;
492
492
  };
493
493
  }[];
494
- getAbsolutePositionOf: ((spineItemOrIndex: number | {
494
+ getAbsolutePositionOf: (spineItemOrIndex: number | {
495
495
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
496
496
  blankPagePosition: "after" | "before" | "none";
497
497
  minimumWidth: number;
@@ -660,188 +660,13 @@ export declare const createReaderWithEnhancers: (options: {
660
660
  isReady$: import("rxjs").Observable<boolean>;
661
661
  };
662
662
  }) => {
663
- leftStart: number;
664
- leftEnd: number;
665
- topStart: number;
666
- topEnd: number;
663
+ left: number;
664
+ right: number;
665
+ top: number;
666
+ bottom: number;
667
667
  width: number;
668
668
  height: number;
669
- }) | ((spineItemOrIndex: number | {
670
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
671
- blankPagePosition: "after" | "before" | "none";
672
- minimumWidth: number;
673
- spreadPosition: "none" | "right" | "left";
674
- }) => {
675
- width: number;
676
- height: number;
677
- };
678
- item: {
679
- id: string;
680
- href: string;
681
- renditionLayout: "reflowable" | "pre-paginated";
682
- progressionWeight: number;
683
- pageSpreadLeft: true | undefined;
684
- pageSpreadRight: true | undefined;
685
- mediaType?: string | undefined;
686
- };
687
- load: () => void;
688
- adjustPositionOfElement: ({ right, left, top }: {
689
- right?: number | undefined;
690
- left?: number | undefined;
691
- top?: number | undefined;
692
- }) => void;
693
- getElementDimensions: () => {
694
- width: number;
695
- height: number;
696
- };
697
- getHtmlFromResource: (response: Response) => Promise<string>;
698
- getResource: () => Promise<Response>;
699
- translateFramePositionIntoPage: (position: {
700
- clientX: number;
701
- clientY: number;
702
- }) => {
703
- clientX: number;
704
- clientY: number;
705
- };
706
- setLayoutDirty: () => void;
707
- injectStyle: (cssText: string) => void;
708
- loadContent: () => void;
709
- unloadContent: () => void;
710
- spineItemFrame: {
711
- getIsLoaded: () => boolean;
712
- getIsReady: () => boolean;
713
- getViewportDimensions: () => {
714
- width: number;
715
- height: number;
716
- } | undefined;
717
- getFrameElement: () => HTMLIFrameElement | undefined;
718
- getHtmlFromResource: (response: Response) => Promise<string>;
719
- load: () => void;
720
- unload: () => void;
721
- staticLayout: (size: {
722
- width: number;
723
- height: number;
724
- }) => void;
725
- getManipulableFrame: () => {
726
- frame: HTMLIFrameElement;
727
- removeStyle: (id: string) => void;
728
- addStyle: (id: string, style: string, prepend?: boolean) => void;
729
- } | undefined;
730
- getReadingDirection: () => "ltr" | "rtl" | undefined;
731
- isUsingVerticalWriting: () => boolean;
732
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
733
- destroy: () => void;
734
- $: {
735
- unload$: import("rxjs").Observable<void>;
736
- unloaded$: import("rxjs").Observable<void>;
737
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
738
- ready$: import("rxjs").Observable<FontFaceSet | undefined>;
739
- isReady$: import("rxjs").Observable<boolean>;
740
- contentLayoutChange$: import("rxjs").Observable<{
741
- isFirstLayout: boolean;
742
- } | {
743
- isFirstLayout: boolean;
744
- }>;
745
- };
746
- };
747
- element: HTMLElement;
748
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
749
- getViewPortInformation: () => {
750
- computedScale: number;
751
- computedWidthScale: number;
752
- viewportDimensions: {
753
- width: number;
754
- height: number;
755
- };
756
- } | undefined;
757
- isImageType: () => boolean;
758
- isReady: () => boolean;
759
- destroy: () => void;
760
- isUsingVerticalWriting: () => boolean | undefined;
761
- getReadingDirection: () => "ltr" | "rtl" | undefined;
762
- manipulateSpineItem: (cb: (options: {
763
- container: HTMLElement;
764
- item: {
765
- id: string;
766
- href: string;
767
- renditionLayout: "reflowable" | "pre-paginated";
768
- progressionWeight: number;
769
- pageSpreadLeft: true | undefined;
770
- pageSpreadRight: true | undefined;
771
- mediaType?: string | undefined;
772
- };
773
- overlayElement: HTMLDivElement;
774
- } & ({
775
- frame: HTMLIFrameElement;
776
- removeStyle: (id: string) => void;
777
- addStyle: (id: string, style: string, prepend?: boolean) => void;
778
- } | {
779
- frame: undefined;
780
- removeStyle: (id: string) => void;
781
- addStyle: (id: string, style: string) => void;
782
- })) => boolean) => boolean;
783
- executeOnLayoutBeforeMeasurementHook: (options: {
784
- minimumWidth: number;
785
- }) => void;
786
- selectionTracker: {
787
- track: (frameToTrack: HTMLIFrameElement) => void;
788
- destroy: () => void;
789
- isSelecting: () => boolean;
790
- getSelection: () => Selection | undefined;
791
- $: import("rxjs").Observable<{
792
- event: "selectionchange";
793
- data: Selection | null;
794
- } | {
795
- event: "selectstart";
796
- data: Selection | null;
797
- } | {
798
- event: "selectend";
799
- data: Selection | null;
800
- }>;
801
- };
802
- fingerTracker: {
803
- track: (frame: HTMLIFrameElement) => void;
804
- getFingerPositionInIframe(): {
805
- x: number | undefined;
806
- y: number | undefined;
807
- } | undefined;
808
- destroy: () => void;
809
- $: import("rxjs").Observable<{
810
- event: "fingermove";
811
- data: {
812
- x: number;
813
- y: number;
814
- };
815
- } | {
816
- event: "fingerout";
817
- data: undefined;
818
- }>;
819
- };
820
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
821
- columnHeight: number;
822
- columnWidth: number;
823
- width: number;
824
- };
825
- getDimensionsForPaginatedContent: () => {
826
- columnHeight: number;
827
- columnWidth: number;
828
- };
829
- $: {
830
- contentLayout$: import("rxjs").Observable<{
831
- isFirstLayout: boolean;
832
- isReady: boolean;
833
- }>;
834
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
835
- isReady$: import("rxjs").Observable<boolean>;
836
- };
837
- }) => {
838
- leftStart: number;
839
- leftEnd: number;
840
- topStart: number;
841
- topEnd: number;
842
- width: number;
843
- height: number;
844
- });
669
+ };
845
670
  getSelection: () => Selection | undefined;
846
671
  isSelecting: () => boolean | undefined;
847
672
  normalizeEventForViewport: <E extends MouseEvent | TouchEvent | PointerEvent>(event: E) => E;
@@ -875,11 +700,7 @@ export declare const createReaderWithEnhancers: (options: {
875
700
  end: string;
876
701
  };
877
702
  locator: {
878
- getSpinePositionFromSpineItemPosition: (spineItemPosition: {
879
- x: number;
880
- y: number;
881
- outsideOfBoundaries?: boolean | undefined;
882
- }, spineItem: {
703
+ getSpinePositionFromSpineItemPosition: (spineItemPosition: import("./spineItem/types").SpineItemPosition | import("./spineItem/types").SpineItemNavigationPosition, spineItem: {
883
704
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
884
705
  blankPagePosition: "after" | "before" | "none";
885
706
  minimumWidth: number;
@@ -1047,10 +868,7 @@ export declare const createReaderWithEnhancers: (options: {
1047
868
  loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1048
869
  isReady$: import("rxjs").Observable<boolean>;
1049
870
  };
1050
- }) => {
1051
- x: number;
1052
- y: number;
1053
- };
871
+ }) => import("./spine/types").SpinePosition;
1054
872
  getSpinePositionFromSpineItem: (spineItem: {
1055
873
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1056
874
  blankPagePosition: "after" | "before" | "none";
@@ -1219,10 +1037,7 @@ export declare const createReaderWithEnhancers: (options: {
1219
1037
  loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1220
1038
  isReady$: import("rxjs").Observable<boolean>;
1221
1039
  };
1222
- }) => {
1223
- x: number;
1224
- y: number;
1225
- };
1040
+ }) => import("./spine/types").SpinePosition;
1226
1041
  getSpinePositionFromSpineItemAnchor: (anchor: string, spineItem: {
1227
1042
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1228
1043
  blankPagePosition: "after" | "before" | "none";
@@ -1391,14 +1206,8 @@ export declare const createReaderWithEnhancers: (options: {
1391
1206
  loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1392
1207
  isReady$: import("rxjs").Observable<boolean>;
1393
1208
  };
1394
- }) => {
1395
- x: number;
1396
- y: number;
1397
- };
1398
- getSpineItemPositionFromSpinePosition: ((position: {
1399
- x: number;
1400
- y: number;
1401
- }, spineItem: {
1209
+ }) => import("./spine/types").SpinePosition;
1210
+ getSpineItemPositionFromSpinePosition: ((position: import("./spine/types").UnsafeSpinePosition, spineItem: {
1402
1211
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1403
1212
  blankPagePosition: "after" | "before" | "none";
1404
1213
  minimumWidth: number;
@@ -1566,14 +1375,7 @@ export declare const createReaderWithEnhancers: (options: {
1566
1375
  loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1567
1376
  isReady$: import("rxjs").Observable<boolean>;
1568
1377
  };
1569
- }) => {
1570
- x: number;
1571
- y: number;
1572
- outsideOfBoundaries?: boolean | undefined;
1573
- }) | ((position: {
1574
- x: number;
1575
- y: number;
1576
- }, spineItem: {
1378
+ }) => import("./spineItem/types").UnsafeSpineItemPosition) | ((position: import("./spine/types").UnsafeSpinePosition, spineItem: {
1577
1379
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1578
1380
  blankPagePosition: "after" | "before" | "none";
1579
1381
  minimumWidth: number;
@@ -1741,15 +1543,8 @@ export declare const createReaderWithEnhancers: (options: {
1741
1543
  loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1742
1544
  isReady$: import("rxjs").Observable<boolean>;
1743
1545
  };
1744
- }) => {
1745
- x: number;
1746
- y: number;
1747
- outsideOfBoundaries?: boolean | undefined;
1748
- });
1749
- getSpineItemFromPosition: ((position: {
1750
- x: number;
1751
- y: number;
1752
- }) => {
1546
+ }) => import("./spineItem/types").UnsafeSpineItemPosition);
1547
+ getSpineItemFromPosition: ((position: import("./spine/types").UnsafeSpinePosition) => {
1753
1548
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1754
1549
  blankPagePosition: "after" | "before" | "none";
1755
1550
  minimumWidth: number;
@@ -1917,10 +1712,7 @@ export declare const createReaderWithEnhancers: (options: {
1917
1712
  loaded$: import("rxjs").Observable<HTMLIFrameElement>;
1918
1713
  isReady$: import("rxjs").Observable<boolean>;
1919
1714
  };
1920
- } | undefined) | ((position: {
1921
- x: number;
1922
- y: number;
1923
- }) => {
1715
+ } | undefined) | ((position: import("./spine/types").UnsafeSpinePosition) => {
1924
1716
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1925
1717
  blankPagePosition: "after" | "before" | "none";
1926
1718
  minimumWidth: number;
@@ -2427,22 +2219,11 @@ export declare const createReaderWithEnhancers: (options: {
2427
2219
  isReady$: import("rxjs").Observable<boolean>;
2428
2220
  };
2429
2221
  }) => number | undefined;
2430
- getSpineItemsFromReadingOrderPosition: (position: {
2431
- x: number;
2432
- y: number;
2433
- }) => {
2434
- left: number;
2435
- right: number;
2222
+ getSpineItemsFromReadingOrderPosition: (position: import("./spine/types").SpinePosition) => {
2436
2223
  begin: number;
2437
- beginPosition: {
2438
- x: number;
2439
- y: number;
2440
- };
2224
+ beginPosition: import("./spine/types").SpinePosition;
2441
2225
  end: number;
2442
- endPosition: {
2443
- x: number;
2444
- y: number;
2445
- };
2226
+ endPosition: import("./spine/types").SpinePosition;
2446
2227
  } | undefined;
2447
2228
  };
2448
2229
  getCurrentNavigationPosition: () => import("./spine/navigationResolver").ViewportNavigationEntry;
@@ -2474,56 +2255,213 @@ export declare const createReaderWithEnhancers: (options: {
2474
2255
  endCfi: string | undefined;
2475
2256
  endSpineItemIndex: number | undefined;
2476
2257
  }>;
2477
- $: {
2478
- state$: import("rxjs").Observable<{
2479
- supportedPageTurnAnimation: NonNullable<"none" | "fade" | "slide" | undefined>[];
2480
- supportedPageTurnMode: NonNullable<"controlled" | "scrollable" | undefined>[];
2481
- supportedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2482
- supportedComputedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2483
- }>;
2484
- ready$: import("rxjs").Observable<void>;
2485
- selection$: import("rxjs").Observable<{
2486
- toString: () => string;
2487
- getAnchorCfi: () => string | undefined;
2488
- getFocusCfi: () => string | undefined;
2489
- } | null>;
2490
- viewportState$: import("rxjs").Observable<"free" | "busy">;
2491
- layout$: import("rxjs").Observable<boolean>;
2492
- itemsCreated$: import("rxjs").Observable<{
2493
- item: {
2494
- id: string;
2495
- href: string;
2496
- renditionLayout: "reflowable" | "pre-paginated";
2497
- progressionWeight: number;
2498
- pageSpreadLeft: true | undefined;
2499
- pageSpreadRight: true | undefined;
2500
- mediaType?: string | undefined;
2501
- };
2502
- element: HTMLElement;
2503
- }[]>;
2504
- itemsBeforeDestroy$: import("rxjs").Observable<void>;
2505
- itemIsReady$: import("rxjs").Observable<{
2506
- item: {
2507
- id: string;
2508
- href: string;
2509
- renditionLayout: "reflowable" | "pre-paginated";
2510
- progressionWeight: number;
2511
- pageSpreadLeft: true | undefined;
2512
- pageSpreadRight: true | undefined;
2513
- mediaType?: string | undefined;
2514
- };
2515
- isReady: boolean;
2516
- }>;
2517
- destroy$: import("rxjs").Subject<void>;
2518
- };
2519
- __debug: {
2520
- pagination: {
2521
- destroy: () => void;
2522
- updateBeginAndEnd: ((begin: {
2523
- spineItem: {
2524
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
2525
- blankPagePosition: "after" | "before" | "none";
2526
- minimumWidth: number;
2258
+ spineItems$: import("rxjs").Observable<{
2259
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
2260
+ blankPagePosition: "after" | "before" | "none";
2261
+ minimumWidth: number;
2262
+ spreadPosition: "none" | "right" | "left";
2263
+ }) => {
2264
+ width: number;
2265
+ height: number;
2266
+ };
2267
+ item: {
2268
+ id: string;
2269
+ href: string;
2270
+ renditionLayout: "reflowable" | "pre-paginated";
2271
+ progressionWeight: number;
2272
+ pageSpreadLeft: true | undefined;
2273
+ pageSpreadRight: true | undefined;
2274
+ mediaType?: string | undefined;
2275
+ };
2276
+ load: () => void;
2277
+ adjustPositionOfElement: ({ right, left, top }: {
2278
+ right?: number | undefined;
2279
+ left?: number | undefined;
2280
+ top?: number | undefined;
2281
+ }) => void;
2282
+ getElementDimensions: () => {
2283
+ width: number;
2284
+ height: number;
2285
+ };
2286
+ getHtmlFromResource: (response: Response) => Promise<string>;
2287
+ getResource: () => Promise<Response>;
2288
+ translateFramePositionIntoPage: (position: {
2289
+ clientX: number;
2290
+ clientY: number;
2291
+ }) => {
2292
+ clientX: number;
2293
+ clientY: number;
2294
+ };
2295
+ setLayoutDirty: () => void;
2296
+ injectStyle: (cssText: string) => void;
2297
+ loadContent: () => void;
2298
+ unloadContent: () => void;
2299
+ spineItemFrame: {
2300
+ getIsLoaded: () => boolean;
2301
+ getIsReady: () => boolean;
2302
+ getViewportDimensions: () => {
2303
+ width: number;
2304
+ height: number;
2305
+ } | undefined;
2306
+ getFrameElement: () => HTMLIFrameElement | undefined;
2307
+ getHtmlFromResource: (response: Response) => Promise<string>;
2308
+ load: () => void;
2309
+ unload: () => void;
2310
+ staticLayout: (size: {
2311
+ width: number;
2312
+ height: number;
2313
+ }) => void;
2314
+ getManipulableFrame: () => {
2315
+ frame: HTMLIFrameElement;
2316
+ removeStyle: (id: string) => void;
2317
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
2318
+ } | undefined;
2319
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
2320
+ isUsingVerticalWriting: () => boolean;
2321
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
2322
+ destroy: () => void;
2323
+ $: {
2324
+ unload$: import("rxjs").Observable<void>;
2325
+ unloaded$: import("rxjs").Observable<void>;
2326
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
2327
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>;
2328
+ isReady$: import("rxjs").Observable<boolean>;
2329
+ contentLayoutChange$: import("rxjs").Observable<{
2330
+ isFirstLayout: boolean;
2331
+ } | {
2332
+ isFirstLayout: boolean;
2333
+ }>;
2334
+ };
2335
+ };
2336
+ element: HTMLElement;
2337
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
2338
+ getViewPortInformation: () => {
2339
+ computedScale: number;
2340
+ computedWidthScale: number;
2341
+ viewportDimensions: {
2342
+ width: number;
2343
+ height: number;
2344
+ };
2345
+ } | undefined;
2346
+ isImageType: () => boolean;
2347
+ isReady: () => boolean;
2348
+ destroy: () => void;
2349
+ isUsingVerticalWriting: () => boolean | undefined;
2350
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
2351
+ manipulateSpineItem: (cb: (options: {
2352
+ container: HTMLElement;
2353
+ item: {
2354
+ id: string;
2355
+ href: string;
2356
+ renditionLayout: "reflowable" | "pre-paginated";
2357
+ progressionWeight: number;
2358
+ pageSpreadLeft: true | undefined;
2359
+ pageSpreadRight: true | undefined;
2360
+ mediaType?: string | undefined;
2361
+ };
2362
+ overlayElement: HTMLDivElement;
2363
+ } & ({
2364
+ frame: HTMLIFrameElement;
2365
+ removeStyle: (id: string) => void;
2366
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
2367
+ } | {
2368
+ frame: undefined;
2369
+ removeStyle: (id: string) => void;
2370
+ addStyle: (id: string, style: string) => void;
2371
+ })) => boolean) => boolean;
2372
+ executeOnLayoutBeforeMeasurementHook: (options: {
2373
+ minimumWidth: number;
2374
+ }) => void;
2375
+ selectionTracker: {
2376
+ track: (frameToTrack: HTMLIFrameElement) => void;
2377
+ destroy: () => void;
2378
+ isSelecting: () => boolean;
2379
+ getSelection: () => Selection | undefined;
2380
+ $: import("rxjs").Observable<{
2381
+ event: "selectionchange";
2382
+ data: Selection | null;
2383
+ } | {
2384
+ event: "selectstart";
2385
+ data: Selection | null;
2386
+ } | {
2387
+ event: "selectend";
2388
+ data: Selection | null;
2389
+ }>;
2390
+ };
2391
+ fingerTracker: {
2392
+ track: (frame: HTMLIFrameElement) => void;
2393
+ getFingerPositionInIframe(): {
2394
+ x: number | undefined;
2395
+ y: number | undefined;
2396
+ } | undefined;
2397
+ destroy: () => void;
2398
+ $: import("rxjs").Observable<{
2399
+ event: "fingermove";
2400
+ data: {
2401
+ x: number;
2402
+ y: number;
2403
+ };
2404
+ } | {
2405
+ event: "fingerout";
2406
+ data: undefined;
2407
+ }>;
2408
+ };
2409
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
2410
+ columnHeight: number;
2411
+ columnWidth: number;
2412
+ width: number;
2413
+ };
2414
+ getDimensionsForPaginatedContent: () => {
2415
+ columnHeight: number;
2416
+ columnWidth: number;
2417
+ };
2418
+ $: {
2419
+ contentLayout$: import("rxjs").Observable<{
2420
+ isFirstLayout: boolean;
2421
+ isReady: boolean;
2422
+ }>;
2423
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>;
2424
+ isReady$: import("rxjs").Observable<boolean>;
2425
+ };
2426
+ }[]>;
2427
+ $: {
2428
+ state$: import("rxjs").Observable<{
2429
+ supportedPageTurnAnimation: NonNullable<"none" | "fade" | "slide" | undefined>[];
2430
+ supportedPageTurnMode: NonNullable<"controlled" | "scrollable" | undefined>[];
2431
+ supportedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2432
+ supportedComputedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2433
+ }>;
2434
+ ready$: import("rxjs").Observable<void>;
2435
+ selection$: import("rxjs").Observable<{
2436
+ toString: () => string;
2437
+ getAnchorCfi: () => string | undefined;
2438
+ getFocusCfi: () => string | undefined;
2439
+ } | null>;
2440
+ viewportState$: import("rxjs").Observable<"free" | "busy">;
2441
+ layout$: import("rxjs").Observable<boolean>;
2442
+ itemsBeforeDestroy$: import("rxjs").Observable<void>;
2443
+ itemIsReady$: import("rxjs").Observable<{
2444
+ item: {
2445
+ id: string;
2446
+ href: string;
2447
+ renditionLayout: "reflowable" | "pre-paginated";
2448
+ progressionWeight: number;
2449
+ pageSpreadLeft: true | undefined;
2450
+ pageSpreadRight: true | undefined;
2451
+ mediaType?: string | undefined;
2452
+ };
2453
+ isReady: boolean;
2454
+ }>;
2455
+ destroy$: import("rxjs").Subject<void>;
2456
+ };
2457
+ __debug: {
2458
+ pagination: {
2459
+ destroy: () => void;
2460
+ updateBeginAndEnd: ((begin: {
2461
+ spineItem: {
2462
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
2463
+ blankPagePosition: "after" | "before" | "none";
2464
+ minimumWidth: number;
2527
2465
  spreadPosition: "none" | "right" | "left";
2528
2466
  }) => {
2529
2467
  width: number;
@@ -4270,7 +4208,7 @@ export declare const createReaderWithEnhancers: (options: {
4270
4208
  isReady$: import("rxjs").Observable<boolean>;
4271
4209
  };
4272
4210
  }) => "after" | "before";
4273
- getAbsolutePositionOf: ((spineItemOrIndex: number | {
4211
+ getAbsolutePositionOf: (spineItemOrIndex: number | {
4274
4212
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4275
4213
  blankPagePosition: "after" | "before" | "none";
4276
4214
  minimumWidth: number;
@@ -4439,525 +4377,13 @@ export declare const createReaderWithEnhancers: (options: {
4439
4377
  isReady$: import("rxjs").Observable<boolean>;
4440
4378
  };
4441
4379
  }) => {
4442
- leftStart: number;
4443
- leftEnd: number;
4444
- topStart: number;
4445
- topEnd: number;
4380
+ left: number;
4381
+ right: number;
4382
+ top: number;
4383
+ bottom: number;
4446
4384
  width: number;
4447
4385
  height: number;
4448
- }) | ((spineItemOrIndex: number | {
4449
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4450
- blankPagePosition: "after" | "before" | "none";
4451
- minimumWidth: number;
4452
- spreadPosition: "none" | "right" | "left";
4453
- }) => {
4454
- width: number;
4455
- height: number;
4456
- };
4457
- item: {
4458
- id: string;
4459
- href: string;
4460
- renditionLayout: "reflowable" | "pre-paginated";
4461
- progressionWeight: number;
4462
- pageSpreadLeft: true | undefined;
4463
- pageSpreadRight: true | undefined;
4464
- mediaType?: string | undefined;
4465
- };
4466
- load: () => void;
4467
- adjustPositionOfElement: ({ right, left, top }: {
4468
- right?: number | undefined;
4469
- left?: number | undefined;
4470
- top?: number | undefined;
4471
- }) => void;
4472
- getElementDimensions: () => {
4473
- width: number;
4474
- height: number;
4475
- };
4476
- getHtmlFromResource: (response: Response) => Promise<string>;
4477
- getResource: () => Promise<Response>;
4478
- translateFramePositionIntoPage: (position: {
4479
- clientX: number;
4480
- clientY: number;
4481
- }) => {
4482
- clientX: number;
4483
- clientY: number;
4484
- };
4485
- setLayoutDirty: () => void;
4486
- injectStyle: (cssText: string) => void;
4487
- loadContent: () => void;
4488
- unloadContent: () => void;
4489
- spineItemFrame: {
4490
- getIsLoaded: () => boolean;
4491
- getIsReady: () => boolean;
4492
- getViewportDimensions: () => {
4493
- width: number;
4494
- height: number;
4495
- } | undefined;
4496
- getFrameElement: () => HTMLIFrameElement | undefined;
4497
- getHtmlFromResource: (response: Response) => Promise<string>;
4498
- load: () => void;
4499
- unload: () => void;
4500
- staticLayout: (size: {
4501
- width: number;
4502
- height: number;
4503
- }) => void;
4504
- getManipulableFrame: () => {
4505
- frame: HTMLIFrameElement;
4506
- removeStyle: (id: string) => void;
4507
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4508
- } | undefined;
4509
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4510
- isUsingVerticalWriting: () => boolean;
4511
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
4512
- destroy: () => void;
4513
- $: {
4514
- unload$: import("rxjs").Observable<void>;
4515
- unloaded$: import("rxjs").Observable<void>;
4516
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
4517
- ready$: import("rxjs").Observable<FontFaceSet | undefined>;
4518
- isReady$: import("rxjs").Observable<boolean>;
4519
- contentLayoutChange$: import("rxjs").Observable<{
4520
- isFirstLayout: boolean;
4521
- } | {
4522
- isFirstLayout: boolean;
4523
- }>;
4524
- };
4525
- };
4526
- element: HTMLElement;
4527
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
4528
- getViewPortInformation: () => {
4529
- computedScale: number;
4530
- computedWidthScale: number;
4531
- viewportDimensions: {
4532
- width: number;
4533
- height: number;
4534
- };
4535
- } | undefined;
4536
- isImageType: () => boolean;
4537
- isReady: () => boolean;
4538
- destroy: () => void;
4539
- isUsingVerticalWriting: () => boolean | undefined;
4540
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4541
- manipulateSpineItem: (cb: (options: {
4542
- container: HTMLElement;
4543
- item: {
4544
- id: string;
4545
- href: string;
4546
- renditionLayout: "reflowable" | "pre-paginated";
4547
- progressionWeight: number;
4548
- pageSpreadLeft: true | undefined;
4549
- pageSpreadRight: true | undefined;
4550
- mediaType?: string | undefined;
4551
- };
4552
- overlayElement: HTMLDivElement;
4553
- } & ({
4554
- frame: HTMLIFrameElement;
4555
- removeStyle: (id: string) => void;
4556
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4557
- } | {
4558
- frame: undefined;
4559
- removeStyle: (id: string) => void;
4560
- addStyle: (id: string, style: string) => void;
4561
- })) => boolean) => boolean;
4562
- executeOnLayoutBeforeMeasurementHook: (options: {
4563
- minimumWidth: number;
4564
- }) => void;
4565
- selectionTracker: {
4566
- track: (frameToTrack: HTMLIFrameElement) => void;
4567
- destroy: () => void;
4568
- isSelecting: () => boolean;
4569
- getSelection: () => Selection | undefined;
4570
- $: import("rxjs").Observable<{
4571
- event: "selectionchange";
4572
- data: Selection | null;
4573
- } | {
4574
- event: "selectstart";
4575
- data: Selection | null;
4576
- } | {
4577
- event: "selectend";
4578
- data: Selection | null;
4579
- }>;
4580
- };
4581
- fingerTracker: {
4582
- track: (frame: HTMLIFrameElement) => void;
4583
- getFingerPositionInIframe(): {
4584
- x: number | undefined;
4585
- y: number | undefined;
4586
- } | undefined;
4587
- destroy: () => void;
4588
- $: import("rxjs").Observable<{
4589
- event: "fingermove";
4590
- data: {
4591
- x: number;
4592
- y: number;
4593
- };
4594
- } | {
4595
- event: "fingerout";
4596
- data: undefined;
4597
- }>;
4598
- };
4599
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
4600
- columnHeight: number;
4601
- columnWidth: number;
4602
- width: number;
4603
- };
4604
- getDimensionsForPaginatedContent: () => {
4605
- columnHeight: number;
4606
- columnWidth: number;
4607
- };
4608
- $: {
4609
- contentLayout$: import("rxjs").Observable<{
4610
- isFirstLayout: boolean;
4611
- isReady: boolean;
4612
- }>;
4613
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
4614
- isReady$: import("rxjs").Observable<boolean>;
4615
- };
4616
- }) => {
4617
- leftStart: number;
4618
- leftEnd: number;
4619
- topStart: number;
4620
- topEnd: number;
4621
- width: number;
4622
- height: number;
4623
- });
4624
- getSpineItemAtPosition: ((position: import("./types").ViewportPosition) => {
4625
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4626
- blankPagePosition: "after" | "before" | "none";
4627
- minimumWidth: number;
4628
- spreadPosition: "none" | "right" | "left";
4629
- }) => {
4630
- width: number;
4631
- height: number;
4632
- };
4633
- item: {
4634
- id: string;
4635
- href: string;
4636
- renditionLayout: "reflowable" | "pre-paginated";
4637
- progressionWeight: number;
4638
- pageSpreadLeft: true | undefined;
4639
- pageSpreadRight: true | undefined;
4640
- mediaType?: string | undefined;
4641
- };
4642
- load: () => void;
4643
- adjustPositionOfElement: ({ right, left, top }: {
4644
- right?: number | undefined;
4645
- left?: number | undefined;
4646
- top?: number | undefined;
4647
- }) => void;
4648
- getElementDimensions: () => {
4649
- width: number;
4650
- height: number;
4651
- };
4652
- getHtmlFromResource: (response: Response) => Promise<string>;
4653
- getResource: () => Promise<Response>;
4654
- translateFramePositionIntoPage: (position: {
4655
- clientX: number;
4656
- clientY: number;
4657
- }) => {
4658
- clientX: number;
4659
- clientY: number;
4660
- };
4661
- setLayoutDirty: () => void;
4662
- injectStyle: (cssText: string) => void;
4663
- loadContent: () => void;
4664
- unloadContent: () => void;
4665
- spineItemFrame: {
4666
- getIsLoaded: () => boolean;
4667
- getIsReady: () => boolean;
4668
- getViewportDimensions: () => {
4669
- width: number;
4670
- height: number;
4671
- } | undefined;
4672
- getFrameElement: () => HTMLIFrameElement | undefined;
4673
- getHtmlFromResource: (response: Response) => Promise<string>;
4674
- load: () => void;
4675
- unload: () => void;
4676
- staticLayout: (size: {
4677
- width: number;
4678
- height: number;
4679
- }) => void;
4680
- getManipulableFrame: () => {
4681
- frame: HTMLIFrameElement;
4682
- removeStyle: (id: string) => void;
4683
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4684
- } | undefined;
4685
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4686
- isUsingVerticalWriting: () => boolean;
4687
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
4688
- destroy: () => void;
4689
- $: {
4690
- unload$: import("rxjs").Observable<void>;
4691
- unloaded$: import("rxjs").Observable<void>;
4692
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
4693
- ready$: import("rxjs").Observable<FontFaceSet | undefined>;
4694
- isReady$: import("rxjs").Observable<boolean>;
4695
- contentLayoutChange$: import("rxjs").Observable<{
4696
- isFirstLayout: boolean;
4697
- } | {
4698
- isFirstLayout: boolean;
4699
- }>;
4700
- };
4701
- };
4702
- element: HTMLElement;
4703
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
4704
- getViewPortInformation: () => {
4705
- computedScale: number;
4706
- computedWidthScale: number;
4707
- viewportDimensions: {
4708
- width: number;
4709
- height: number;
4710
- };
4711
- } | undefined;
4712
- isImageType: () => boolean;
4713
- isReady: () => boolean;
4714
- destroy: () => void;
4715
- isUsingVerticalWriting: () => boolean | undefined;
4716
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4717
- manipulateSpineItem: (cb: (options: {
4718
- container: HTMLElement;
4719
- item: {
4720
- id: string;
4721
- href: string;
4722
- renditionLayout: "reflowable" | "pre-paginated";
4723
- progressionWeight: number;
4724
- pageSpreadLeft: true | undefined;
4725
- pageSpreadRight: true | undefined;
4726
- mediaType?: string | undefined;
4727
- };
4728
- overlayElement: HTMLDivElement;
4729
- } & ({
4730
- frame: HTMLIFrameElement;
4731
- removeStyle: (id: string) => void;
4732
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4733
- } | {
4734
- frame: undefined;
4735
- removeStyle: (id: string) => void;
4736
- addStyle: (id: string, style: string) => void;
4737
- })) => boolean) => boolean;
4738
- executeOnLayoutBeforeMeasurementHook: (options: {
4739
- minimumWidth: number;
4740
- }) => void;
4741
- selectionTracker: {
4742
- track: (frameToTrack: HTMLIFrameElement) => void;
4743
- destroy: () => void;
4744
- isSelecting: () => boolean;
4745
- getSelection: () => Selection | undefined;
4746
- $: import("rxjs").Observable<{
4747
- event: "selectionchange";
4748
- data: Selection | null;
4749
- } | {
4750
- event: "selectstart";
4751
- data: Selection | null;
4752
- } | {
4753
- event: "selectend";
4754
- data: Selection | null;
4755
- }>;
4756
- };
4757
- fingerTracker: {
4758
- track: (frame: HTMLIFrameElement) => void;
4759
- getFingerPositionInIframe(): {
4760
- x: number | undefined;
4761
- y: number | undefined;
4762
- } | undefined;
4763
- destroy: () => void;
4764
- $: import("rxjs").Observable<{
4765
- event: "fingermove";
4766
- data: {
4767
- x: number;
4768
- y: number;
4769
- };
4770
- } | {
4771
- event: "fingerout";
4772
- data: undefined;
4773
- }>;
4774
- };
4775
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
4776
- columnHeight: number;
4777
- columnWidth: number;
4778
- width: number;
4779
- };
4780
- getDimensionsForPaginatedContent: () => {
4781
- columnHeight: number;
4782
- columnWidth: number;
4783
- };
4784
- $: {
4785
- contentLayout$: import("rxjs").Observable<{
4786
- isFirstLayout: boolean;
4787
- isReady: boolean;
4788
- }>;
4789
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
4790
- isReady$: import("rxjs").Observable<boolean>;
4791
- };
4792
- } | undefined) | ((position: import("./types").ViewportPosition) => {
4793
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4794
- blankPagePosition: "after" | "before" | "none";
4795
- minimumWidth: number;
4796
- spreadPosition: "none" | "right" | "left";
4797
- }) => {
4798
- width: number;
4799
- height: number;
4800
- };
4801
- item: {
4802
- id: string;
4803
- href: string;
4804
- renditionLayout: "reflowable" | "pre-paginated";
4805
- progressionWeight: number;
4806
- pageSpreadLeft: true | undefined;
4807
- pageSpreadRight: true | undefined;
4808
- mediaType?: string | undefined;
4809
- };
4810
- load: () => void;
4811
- adjustPositionOfElement: ({ right, left, top }: {
4812
- right?: number | undefined;
4813
- left?: number | undefined;
4814
- top?: number | undefined;
4815
- }) => void;
4816
- getElementDimensions: () => {
4817
- width: number;
4818
- height: number;
4819
- };
4820
- getHtmlFromResource: (response: Response) => Promise<string>;
4821
- getResource: () => Promise<Response>;
4822
- translateFramePositionIntoPage: (position: {
4823
- clientX: number;
4824
- clientY: number;
4825
- }) => {
4826
- clientX: number;
4827
- clientY: number;
4828
- };
4829
- setLayoutDirty: () => void;
4830
- injectStyle: (cssText: string) => void;
4831
- loadContent: () => void;
4832
- unloadContent: () => void;
4833
- spineItemFrame: {
4834
- getIsLoaded: () => boolean;
4835
- getIsReady: () => boolean;
4836
- getViewportDimensions: () => {
4837
- width: number;
4838
- height: number;
4839
- } | undefined;
4840
- getFrameElement: () => HTMLIFrameElement | undefined;
4841
- getHtmlFromResource: (response: Response) => Promise<string>;
4842
- load: () => void;
4843
- unload: () => void;
4844
- staticLayout: (size: {
4845
- width: number;
4846
- height: number;
4847
- }) => void;
4848
- getManipulableFrame: () => {
4849
- frame: HTMLIFrameElement;
4850
- removeStyle: (id: string) => void;
4851
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4852
- } | undefined;
4853
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4854
- isUsingVerticalWriting: () => boolean;
4855
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
4856
- destroy: () => void;
4857
- $: {
4858
- unload$: import("rxjs").Observable<void>;
4859
- unloaded$: import("rxjs").Observable<void>;
4860
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
4861
- ready$: import("rxjs").Observable<FontFaceSet | undefined>;
4862
- isReady$: import("rxjs").Observable<boolean>;
4863
- contentLayoutChange$: import("rxjs").Observable<{
4864
- isFirstLayout: boolean;
4865
- } | {
4866
- isFirstLayout: boolean;
4867
- }>;
4868
- };
4869
- };
4870
- element: HTMLElement;
4871
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
4872
- getViewPortInformation: () => {
4873
- computedScale: number;
4874
- computedWidthScale: number;
4875
- viewportDimensions: {
4876
- width: number;
4877
- height: number;
4878
- };
4879
- } | undefined;
4880
- isImageType: () => boolean;
4881
- isReady: () => boolean;
4882
- destroy: () => void;
4883
- isUsingVerticalWriting: () => boolean | undefined;
4884
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4885
- manipulateSpineItem: (cb: (options: {
4886
- container: HTMLElement;
4887
- item: {
4888
- id: string;
4889
- href: string;
4890
- renditionLayout: "reflowable" | "pre-paginated";
4891
- progressionWeight: number;
4892
- pageSpreadLeft: true | undefined;
4893
- pageSpreadRight: true | undefined;
4894
- mediaType?: string | undefined;
4895
- };
4896
- overlayElement: HTMLDivElement;
4897
- } & ({
4898
- frame: HTMLIFrameElement;
4899
- removeStyle: (id: string) => void;
4900
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4901
- } | {
4902
- frame: undefined;
4903
- removeStyle: (id: string) => void;
4904
- addStyle: (id: string, style: string) => void;
4905
- })) => boolean) => boolean;
4906
- executeOnLayoutBeforeMeasurementHook: (options: {
4907
- minimumWidth: number;
4908
- }) => void;
4909
- selectionTracker: {
4910
- track: (frameToTrack: HTMLIFrameElement) => void;
4911
- destroy: () => void;
4912
- isSelecting: () => boolean;
4913
- getSelection: () => Selection | undefined;
4914
- $: import("rxjs").Observable<{
4915
- event: "selectionchange";
4916
- data: Selection | null;
4917
- } | {
4918
- event: "selectstart";
4919
- data: Selection | null;
4920
- } | {
4921
- event: "selectend";
4922
- data: Selection | null;
4923
- }>;
4924
- };
4925
- fingerTracker: {
4926
- track: (frame: HTMLIFrameElement) => void;
4927
- getFingerPositionInIframe(): {
4928
- x: number | undefined;
4929
- y: number | undefined;
4930
- } | undefined;
4931
- destroy: () => void;
4932
- $: import("rxjs").Observable<{
4933
- event: "fingermove";
4934
- data: {
4935
- x: number;
4936
- y: number;
4937
- };
4938
- } | {
4939
- event: "fingerout";
4940
- data: undefined;
4941
- }>;
4942
- };
4943
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
4944
- columnHeight: number;
4945
- columnWidth: number;
4946
- width: number;
4947
- };
4948
- getDimensionsForPaginatedContent: () => {
4949
- columnHeight: number;
4950
- columnWidth: number;
4951
- };
4952
- $: {
4953
- contentLayout$: import("rxjs").Observable<{
4954
- isFirstLayout: boolean;
4955
- isReady: boolean;
4956
- }>;
4957
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
4958
- isReady$: import("rxjs").Observable<boolean>;
4959
- };
4960
- } | undefined);
4386
+ };
4961
4387
  getFocusedSpineItem: () => {
4962
4388
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4963
4389
  blankPagePosition: "after" | "before" | "none";
@@ -5891,6 +5317,8 @@ export declare const createReaderWithEnhancers: (options: {
5891
5317
  percentageEstimateOfBook: number | undefined;
5892
5318
  numberOfTotalPages: number | undefined;
5893
5319
  isUsingSpread: boolean;
5320
+ canGoLeft: boolean;
5321
+ canGoRight: boolean;
5894
5322
  }>;
5895
5323
  } & {
5896
5324
  theme: {