@prose-reader/core 1.20.0 → 1.22.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
@@ -34,6 +34,8 @@ type PaginationInfo = {
34
34
  percentageEstimateOfBook: number | undefined;
35
35
  numberOfTotalPages: number | undefined;
36
36
  isUsingSpread: boolean;
37
+ canGoLeft: boolean;
38
+ canGoRight: boolean;
37
39
  };
38
40
  export declare const paginationEnhancer: <InheritOptions, InheritOutput extends {
39
41
  context: import("../context").Context;
@@ -503,7 +505,7 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
503
505
  isReady$: Observable<boolean>;
504
506
  };
505
507
  }[];
506
- getAbsolutePositionOf: ((spineItemOrIndex: number | {
508
+ getAbsolutePositionOf: (spineItemOrIndex: number | {
507
509
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
508
510
  blankPagePosition: "after" | "before" | "none";
509
511
  minimumWidth: number;
@@ -672,188 +674,13 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
672
674
  isReady$: Observable<boolean>;
673
675
  };
674
676
  }) => {
675
- leftStart: number;
676
- leftEnd: number;
677
- topStart: number;
678
- topEnd: number;
677
+ left: number;
678
+ right: number;
679
+ top: number;
680
+ bottom: number;
679
681
  width: number;
680
682
  height: number;
681
- }) | ((spineItemOrIndex: number | {
682
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
683
- blankPagePosition: "after" | "before" | "none";
684
- minimumWidth: number;
685
- spreadPosition: "none" | "right" | "left";
686
- }) => {
687
- width: number;
688
- height: number;
689
- };
690
- item: {
691
- id: string;
692
- href: string;
693
- renditionLayout: "reflowable" | "pre-paginated";
694
- progressionWeight: number;
695
- pageSpreadLeft: true | undefined;
696
- pageSpreadRight: true | undefined;
697
- mediaType?: string | undefined;
698
- };
699
- load: () => void;
700
- adjustPositionOfElement: ({ right, left, top }: {
701
- right?: number | undefined;
702
- left?: number | undefined;
703
- top?: number | undefined;
704
- }) => void;
705
- getElementDimensions: () => {
706
- width: number;
707
- height: number;
708
- };
709
- getHtmlFromResource: (response: Response) => Promise<string>;
710
- getResource: () => Promise<Response>;
711
- translateFramePositionIntoPage: (position: {
712
- clientX: number;
713
- clientY: number;
714
- }) => {
715
- clientX: number;
716
- clientY: number;
717
- };
718
- setLayoutDirty: () => void;
719
- injectStyle: (cssText: string) => void;
720
- loadContent: () => void;
721
- unloadContent: () => void;
722
- spineItemFrame: {
723
- getIsLoaded: () => boolean;
724
- getIsReady: () => boolean;
725
- getViewportDimensions: () => {
726
- width: number;
727
- height: number;
728
- } | undefined;
729
- getFrameElement: () => HTMLIFrameElement | undefined;
730
- getHtmlFromResource: (response: Response) => Promise<string>;
731
- load: () => void;
732
- unload: () => void;
733
- staticLayout: (size: {
734
- width: number;
735
- height: number;
736
- }) => void;
737
- getManipulableFrame: () => {
738
- frame: HTMLIFrameElement;
739
- removeStyle: (id: string) => void;
740
- addStyle: (id: string, style: string, prepend?: boolean) => void;
741
- } | undefined;
742
- getReadingDirection: () => "ltr" | "rtl" | undefined;
743
- isUsingVerticalWriting: () => boolean;
744
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
745
- destroy: () => void;
746
- $: {
747
- unload$: Observable<void>;
748
- unloaded$: Observable<void>;
749
- loaded$: Observable<HTMLIFrameElement>;
750
- ready$: Observable<FontFaceSet | undefined>;
751
- isReady$: Observable<boolean>;
752
- contentLayoutChange$: Observable<{
753
- isFirstLayout: boolean;
754
- } | {
755
- isFirstLayout: boolean;
756
- }>;
757
- };
758
- };
759
- element: HTMLElement;
760
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
761
- getViewPortInformation: () => {
762
- computedScale: number;
763
- computedWidthScale: number;
764
- viewportDimensions: {
765
- width: number;
766
- height: number;
767
- };
768
- } | undefined;
769
- isImageType: () => boolean;
770
- isReady: () => boolean;
771
- destroy: () => void;
772
- isUsingVerticalWriting: () => boolean | undefined;
773
- getReadingDirection: () => "ltr" | "rtl" | undefined;
774
- manipulateSpineItem: (cb: (options: {
775
- container: HTMLElement;
776
- item: {
777
- id: string;
778
- href: string;
779
- renditionLayout: "reflowable" | "pre-paginated";
780
- progressionWeight: number;
781
- pageSpreadLeft: true | undefined;
782
- pageSpreadRight: true | undefined;
783
- mediaType?: string | undefined;
784
- };
785
- overlayElement: HTMLDivElement;
786
- } & ({
787
- frame: HTMLIFrameElement;
788
- removeStyle: (id: string) => void;
789
- addStyle: (id: string, style: string, prepend?: boolean) => void;
790
- } | {
791
- frame: undefined;
792
- removeStyle: (id: string) => void;
793
- addStyle: (id: string, style: string) => void;
794
- })) => boolean) => boolean;
795
- executeOnLayoutBeforeMeasurementHook: (options: {
796
- minimumWidth: number;
797
- }) => void;
798
- selectionTracker: {
799
- track: (frameToTrack: HTMLIFrameElement) => void;
800
- destroy: () => void;
801
- isSelecting: () => boolean;
802
- getSelection: () => Selection | undefined;
803
- $: Observable<{
804
- event: "selectionchange";
805
- data: Selection | null;
806
- } | {
807
- event: "selectstart";
808
- data: Selection | null;
809
- } | {
810
- event: "selectend";
811
- data: Selection | null;
812
- }>;
813
- };
814
- fingerTracker: {
815
- track: (frame: HTMLIFrameElement) => void;
816
- getFingerPositionInIframe(): {
817
- x: number | undefined;
818
- y: number | undefined;
819
- } | undefined;
820
- destroy: () => void;
821
- $: Observable<{
822
- event: "fingermove";
823
- data: {
824
- x: number;
825
- y: number;
826
- };
827
- } | {
828
- event: "fingerout";
829
- data: undefined;
830
- }>;
831
- };
832
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
833
- columnHeight: number;
834
- columnWidth: number;
835
- width: number;
836
- };
837
- getDimensionsForPaginatedContent: () => {
838
- columnHeight: number;
839
- columnWidth: number;
840
- };
841
- $: {
842
- contentLayout$: Observable<{
843
- isFirstLayout: boolean;
844
- isReady: boolean;
845
- }>;
846
- loaded$: Observable<HTMLIFrameElement>;
847
- isReady$: Observable<boolean>;
848
- };
849
- }) => {
850
- leftStart: number;
851
- leftEnd: number;
852
- topStart: number;
853
- topEnd: number;
854
- width: number;
855
- height: number;
856
- });
683
+ };
857
684
  getSelection: () => Selection | undefined;
858
685
  isSelecting: () => boolean | undefined;
859
686
  normalizeEventForViewport: <E extends MouseEvent | TouchEvent | PointerEvent>(event: E) => E;
@@ -887,11 +714,7 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
887
714
  end: string;
888
715
  };
889
716
  locator: {
890
- getSpinePositionFromSpineItemPosition: (spineItemPosition: {
891
- x: number;
892
- y: number;
893
- outsideOfBoundaries?: boolean | undefined;
894
- }, spineItem: {
717
+ getSpinePositionFromSpineItemPosition: (spineItemPosition: import("../spineItem/types").SpineItemPosition | import("../spineItem/types").SpineItemNavigationPosition, spineItem: {
895
718
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
896
719
  blankPagePosition: "after" | "before" | "none";
897
720
  minimumWidth: number;
@@ -1059,10 +882,7 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
1059
882
  loaded$: Observable<HTMLIFrameElement>;
1060
883
  isReady$: Observable<boolean>;
1061
884
  };
1062
- }) => {
1063
- x: number;
1064
- y: number;
1065
- };
885
+ }) => import("../spine/types").SpinePosition;
1066
886
  getSpinePositionFromSpineItem: (spineItem: {
1067
887
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1068
888
  blankPagePosition: "after" | "before" | "none";
@@ -1231,10 +1051,7 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
1231
1051
  loaded$: Observable<HTMLIFrameElement>;
1232
1052
  isReady$: Observable<boolean>;
1233
1053
  };
1234
- }) => {
1235
- x: number;
1236
- y: number;
1237
- };
1054
+ }) => import("../spine/types").SpinePosition;
1238
1055
  getSpinePositionFromSpineItemAnchor: (anchor: string, spineItem: {
1239
1056
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1240
1057
  blankPagePosition: "after" | "before" | "none";
@@ -1403,14 +1220,8 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
1403
1220
  loaded$: Observable<HTMLIFrameElement>;
1404
1221
  isReady$: Observable<boolean>;
1405
1222
  };
1406
- }) => {
1407
- x: number;
1408
- y: number;
1409
- };
1410
- getSpineItemPositionFromSpinePosition: ((position: {
1411
- x: number;
1412
- y: number;
1413
- }, spineItem: {
1223
+ }) => import("../spine/types").SpinePosition;
1224
+ getSpineItemPositionFromSpinePosition: ((position: import("../spine/types").UnsafeSpinePosition, spineItem: {
1414
1225
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1415
1226
  blankPagePosition: "after" | "before" | "none";
1416
1227
  minimumWidth: number;
@@ -1578,14 +1389,7 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
1578
1389
  loaded$: Observable<HTMLIFrameElement>;
1579
1390
  isReady$: Observable<boolean>;
1580
1391
  };
1581
- }) => {
1582
- x: number;
1583
- y: number;
1584
- outsideOfBoundaries?: boolean | undefined;
1585
- }) | ((position: {
1586
- x: number;
1587
- y: number;
1588
- }, spineItem: {
1392
+ }) => import("../spineItem/types").UnsafeSpineItemPosition) | ((position: import("../spine/types").UnsafeSpinePosition, spineItem: {
1589
1393
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1590
1394
  blankPagePosition: "after" | "before" | "none";
1591
1395
  minimumWidth: number;
@@ -1753,15 +1557,8 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
1753
1557
  loaded$: Observable<HTMLIFrameElement>;
1754
1558
  isReady$: Observable<boolean>;
1755
1559
  };
1756
- }) => {
1757
- x: number;
1758
- y: number;
1759
- outsideOfBoundaries?: boolean | undefined;
1760
- });
1761
- getSpineItemFromPosition: ((position: {
1762
- x: number;
1763
- y: number;
1764
- }) => {
1560
+ }) => import("../spineItem/types").UnsafeSpineItemPosition);
1561
+ getSpineItemFromPosition: ((position: import("../spine/types").UnsafeSpinePosition) => {
1765
1562
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1766
1563
  blankPagePosition: "after" | "before" | "none";
1767
1564
  minimumWidth: number;
@@ -1929,10 +1726,7 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
1929
1726
  loaded$: Observable<HTMLIFrameElement>;
1930
1727
  isReady$: Observable<boolean>;
1931
1728
  };
1932
- } | undefined) | ((position: {
1933
- x: number;
1934
- y: number;
1935
- }) => {
1729
+ } | undefined) | ((position: import("../spine/types").UnsafeSpinePosition) => {
1936
1730
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
1937
1731
  blankPagePosition: "after" | "before" | "none";
1938
1732
  minimumWidth: number;
@@ -2439,22 +2233,11 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
2439
2233
  isReady$: Observable<boolean>;
2440
2234
  };
2441
2235
  }) => number | undefined;
2442
- getSpineItemsFromReadingOrderPosition: (position: {
2443
- x: number;
2444
- y: number;
2445
- }) => {
2446
- left: number;
2447
- right: number;
2236
+ getSpineItemsFromReadingOrderPosition: (position: import("../spine/types").SpinePosition) => {
2448
2237
  begin: number;
2449
- beginPosition: {
2450
- x: number;
2451
- y: number;
2452
- };
2238
+ beginPosition: import("../spine/types").SpinePosition;
2453
2239
  end: number;
2454
- endPosition: {
2455
- x: number;
2456
- y: number;
2457
- };
2240
+ endPosition: import("../spine/types").SpinePosition;
2458
2241
  } | undefined;
2459
2242
  };
2460
2243
  getCurrentNavigationPosition: () => import("../spine/navigationResolver").ViewportNavigationEntry;
@@ -2486,56 +2269,213 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
2486
2269
  endCfi: string | undefined;
2487
2270
  endSpineItemIndex: number | undefined;
2488
2271
  }>;
2489
- $: {
2490
- state$: Observable<{
2491
- supportedPageTurnAnimation: NonNullable<"none" | "fade" | "slide" | undefined>[];
2492
- supportedPageTurnMode: NonNullable<"controlled" | "scrollable" | undefined>[];
2493
- supportedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2494
- supportedComputedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2495
- }>;
2496
- ready$: Observable<void>;
2497
- selection$: Observable<{
2498
- toString: () => string;
2499
- getAnchorCfi: () => string | undefined;
2500
- getFocusCfi: () => string | undefined;
2501
- } | null>;
2502
- viewportState$: Observable<"free" | "busy">;
2503
- layout$: Observable<boolean>;
2504
- itemsCreated$: Observable<{
2505
- item: {
2506
- id: string;
2507
- href: string;
2508
- renditionLayout: "reflowable" | "pre-paginated";
2509
- progressionWeight: number;
2510
- pageSpreadLeft: true | undefined;
2511
- pageSpreadRight: true | undefined;
2512
- mediaType?: string | undefined;
2513
- };
2514
- element: HTMLElement;
2515
- }[]>;
2516
- itemsBeforeDestroy$: Observable<void>;
2517
- itemIsReady$: Observable<{
2518
- item: {
2519
- id: string;
2520
- href: string;
2521
- renditionLayout: "reflowable" | "pre-paginated";
2522
- progressionWeight: number;
2523
- pageSpreadLeft: true | undefined;
2524
- pageSpreadRight: true | undefined;
2525
- mediaType?: string | undefined;
2526
- };
2527
- isReady: boolean;
2528
- }>;
2529
- destroy$: import("rxjs").Subject<void>;
2530
- };
2531
- __debug: {
2532
- pagination: {
2533
- destroy: () => void;
2534
- updateBeginAndEnd: ((begin: {
2535
- spineItem: {
2536
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
2537
- blankPagePosition: "after" | "before" | "none";
2538
- minimumWidth: number;
2272
+ spineItems$: Observable<{
2273
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
2274
+ blankPagePosition: "after" | "before" | "none";
2275
+ minimumWidth: number;
2276
+ spreadPosition: "none" | "right" | "left";
2277
+ }) => {
2278
+ width: number;
2279
+ height: number;
2280
+ };
2281
+ item: {
2282
+ id: string;
2283
+ href: string;
2284
+ renditionLayout: "reflowable" | "pre-paginated";
2285
+ progressionWeight: number;
2286
+ pageSpreadLeft: true | undefined;
2287
+ pageSpreadRight: true | undefined;
2288
+ mediaType?: string | undefined;
2289
+ };
2290
+ load: () => void;
2291
+ adjustPositionOfElement: ({ right, left, top }: {
2292
+ right?: number | undefined;
2293
+ left?: number | undefined;
2294
+ top?: number | undefined;
2295
+ }) => void;
2296
+ getElementDimensions: () => {
2297
+ width: number;
2298
+ height: number;
2299
+ };
2300
+ getHtmlFromResource: (response: Response) => Promise<string>;
2301
+ getResource: () => Promise<Response>;
2302
+ translateFramePositionIntoPage: (position: {
2303
+ clientX: number;
2304
+ clientY: number;
2305
+ }) => {
2306
+ clientX: number;
2307
+ clientY: number;
2308
+ };
2309
+ setLayoutDirty: () => void;
2310
+ injectStyle: (cssText: string) => void;
2311
+ loadContent: () => void;
2312
+ unloadContent: () => void;
2313
+ spineItemFrame: {
2314
+ getIsLoaded: () => boolean;
2315
+ getIsReady: () => boolean;
2316
+ getViewportDimensions: () => {
2317
+ width: number;
2318
+ height: number;
2319
+ } | undefined;
2320
+ getFrameElement: () => HTMLIFrameElement | undefined;
2321
+ getHtmlFromResource: (response: Response) => Promise<string>;
2322
+ load: () => void;
2323
+ unload: () => void;
2324
+ staticLayout: (size: {
2325
+ width: number;
2326
+ height: number;
2327
+ }) => void;
2328
+ getManipulableFrame: () => {
2329
+ frame: HTMLIFrameElement;
2330
+ removeStyle: (id: string) => void;
2331
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
2332
+ } | undefined;
2333
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
2334
+ isUsingVerticalWriting: () => boolean;
2335
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
2336
+ destroy: () => void;
2337
+ $: {
2338
+ unload$: Observable<void>;
2339
+ unloaded$: Observable<void>;
2340
+ loaded$: Observable<HTMLIFrameElement>;
2341
+ ready$: Observable<FontFaceSet | undefined>;
2342
+ isReady$: Observable<boolean>;
2343
+ contentLayoutChange$: Observable<{
2344
+ isFirstLayout: boolean;
2345
+ } | {
2346
+ isFirstLayout: boolean;
2347
+ }>;
2348
+ };
2349
+ };
2350
+ element: HTMLElement;
2351
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
2352
+ getViewPortInformation: () => {
2353
+ computedScale: number;
2354
+ computedWidthScale: number;
2355
+ viewportDimensions: {
2356
+ width: number;
2357
+ height: number;
2358
+ };
2359
+ } | undefined;
2360
+ isImageType: () => boolean;
2361
+ isReady: () => boolean;
2362
+ destroy: () => void;
2363
+ isUsingVerticalWriting: () => boolean | undefined;
2364
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
2365
+ manipulateSpineItem: (cb: (options: {
2366
+ container: HTMLElement;
2367
+ item: {
2368
+ id: string;
2369
+ href: string;
2370
+ renditionLayout: "reflowable" | "pre-paginated";
2371
+ progressionWeight: number;
2372
+ pageSpreadLeft: true | undefined;
2373
+ pageSpreadRight: true | undefined;
2374
+ mediaType?: string | undefined;
2375
+ };
2376
+ overlayElement: HTMLDivElement;
2377
+ } & ({
2378
+ frame: HTMLIFrameElement;
2379
+ removeStyle: (id: string) => void;
2380
+ addStyle: (id: string, style: string, prepend?: boolean) => void;
2381
+ } | {
2382
+ frame: undefined;
2383
+ removeStyle: (id: string) => void;
2384
+ addStyle: (id: string, style: string) => void;
2385
+ })) => boolean) => boolean;
2386
+ executeOnLayoutBeforeMeasurementHook: (options: {
2387
+ minimumWidth: number;
2388
+ }) => void;
2389
+ selectionTracker: {
2390
+ track: (frameToTrack: HTMLIFrameElement) => void;
2391
+ destroy: () => void;
2392
+ isSelecting: () => boolean;
2393
+ getSelection: () => Selection | undefined;
2394
+ $: Observable<{
2395
+ event: "selectionchange";
2396
+ data: Selection | null;
2397
+ } | {
2398
+ event: "selectstart";
2399
+ data: Selection | null;
2400
+ } | {
2401
+ event: "selectend";
2402
+ data: Selection | null;
2403
+ }>;
2404
+ };
2405
+ fingerTracker: {
2406
+ track: (frame: HTMLIFrameElement) => void;
2407
+ getFingerPositionInIframe(): {
2408
+ x: number | undefined;
2409
+ y: number | undefined;
2410
+ } | undefined;
2411
+ destroy: () => void;
2412
+ $: Observable<{
2413
+ event: "fingermove";
2414
+ data: {
2415
+ x: number;
2416
+ y: number;
2417
+ };
2418
+ } | {
2419
+ event: "fingerout";
2420
+ data: undefined;
2421
+ }>;
2422
+ };
2423
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
2424
+ columnHeight: number;
2425
+ columnWidth: number;
2426
+ width: number;
2427
+ };
2428
+ getDimensionsForPaginatedContent: () => {
2429
+ columnHeight: number;
2430
+ columnWidth: number;
2431
+ };
2432
+ $: {
2433
+ contentLayout$: Observable<{
2434
+ isFirstLayout: boolean;
2435
+ isReady: boolean;
2436
+ }>;
2437
+ loaded$: Observable<HTMLIFrameElement>;
2438
+ isReady$: Observable<boolean>;
2439
+ };
2440
+ }[]>;
2441
+ $: {
2442
+ state$: Observable<{
2443
+ supportedPageTurnAnimation: NonNullable<"none" | "fade" | "slide" | undefined>[];
2444
+ supportedPageTurnMode: NonNullable<"controlled" | "scrollable" | undefined>[];
2445
+ supportedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2446
+ supportedComputedPageTurnDirection: NonNullable<"vertical" | "horizontal" | undefined>[];
2447
+ }>;
2448
+ ready$: Observable<void>;
2449
+ selection$: Observable<{
2450
+ toString: () => string;
2451
+ getAnchorCfi: () => string | undefined;
2452
+ getFocusCfi: () => string | undefined;
2453
+ } | null>;
2454
+ viewportState$: Observable<"free" | "busy">;
2455
+ layout$: Observable<boolean>;
2456
+ itemsBeforeDestroy$: Observable<void>;
2457
+ itemIsReady$: Observable<{
2458
+ item: {
2459
+ id: string;
2460
+ href: string;
2461
+ renditionLayout: "reflowable" | "pre-paginated";
2462
+ progressionWeight: number;
2463
+ pageSpreadLeft: true | undefined;
2464
+ pageSpreadRight: true | undefined;
2465
+ mediaType?: string | undefined;
2466
+ };
2467
+ isReady: boolean;
2468
+ }>;
2469
+ destroy$: import("rxjs").Subject<void>;
2470
+ };
2471
+ __debug: {
2472
+ pagination: {
2473
+ destroy: () => void;
2474
+ updateBeginAndEnd: ((begin: {
2475
+ spineItem: {
2476
+ layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
2477
+ blankPagePosition: "after" | "before" | "none";
2478
+ minimumWidth: number;
2539
2479
  spreadPosition: "none" | "right" | "left";
2540
2480
  }) => {
2541
2481
  width: number;
@@ -4282,7 +4222,7 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
4282
4222
  isReady$: Observable<boolean>;
4283
4223
  };
4284
4224
  }) => "after" | "before";
4285
- getAbsolutePositionOf: ((spineItemOrIndex: number | {
4225
+ getAbsolutePositionOf: (spineItemOrIndex: number | {
4286
4226
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4287
4227
  blankPagePosition: "after" | "before" | "none";
4288
4228
  minimumWidth: number;
@@ -4451,525 +4391,13 @@ export declare const paginationEnhancer: <InheritOptions, InheritOutput extends
4451
4391
  isReady$: Observable<boolean>;
4452
4392
  };
4453
4393
  }) => {
4454
- leftStart: number;
4455
- leftEnd: number;
4456
- topStart: number;
4457
- topEnd: number;
4394
+ left: number;
4395
+ right: number;
4396
+ top: number;
4397
+ bottom: number;
4458
4398
  width: number;
4459
4399
  height: number;
4460
- }) | ((spineItemOrIndex: number | {
4461
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4462
- blankPagePosition: "after" | "before" | "none";
4463
- minimumWidth: number;
4464
- spreadPosition: "none" | "right" | "left";
4465
- }) => {
4466
- width: number;
4467
- height: number;
4468
- };
4469
- item: {
4470
- id: string;
4471
- href: string;
4472
- renditionLayout: "reflowable" | "pre-paginated";
4473
- progressionWeight: number;
4474
- pageSpreadLeft: true | undefined;
4475
- pageSpreadRight: true | undefined;
4476
- mediaType?: string | undefined;
4477
- };
4478
- load: () => void;
4479
- adjustPositionOfElement: ({ right, left, top }: {
4480
- right?: number | undefined;
4481
- left?: number | undefined;
4482
- top?: number | undefined;
4483
- }) => void;
4484
- getElementDimensions: () => {
4485
- width: number;
4486
- height: number;
4487
- };
4488
- getHtmlFromResource: (response: Response) => Promise<string>;
4489
- getResource: () => Promise<Response>;
4490
- translateFramePositionIntoPage: (position: {
4491
- clientX: number;
4492
- clientY: number;
4493
- }) => {
4494
- clientX: number;
4495
- clientY: number;
4496
- };
4497
- setLayoutDirty: () => void;
4498
- injectStyle: (cssText: string) => void;
4499
- loadContent: () => void;
4500
- unloadContent: () => void;
4501
- spineItemFrame: {
4502
- getIsLoaded: () => boolean;
4503
- getIsReady: () => boolean;
4504
- getViewportDimensions: () => {
4505
- width: number;
4506
- height: number;
4507
- } | undefined;
4508
- getFrameElement: () => HTMLIFrameElement | undefined;
4509
- getHtmlFromResource: (response: Response) => Promise<string>;
4510
- load: () => void;
4511
- unload: () => void;
4512
- staticLayout: (size: {
4513
- width: number;
4514
- height: number;
4515
- }) => void;
4516
- getManipulableFrame: () => {
4517
- frame: HTMLIFrameElement;
4518
- removeStyle: (id: string) => void;
4519
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4520
- } | undefined;
4521
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4522
- isUsingVerticalWriting: () => boolean;
4523
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
4524
- destroy: () => void;
4525
- $: {
4526
- unload$: Observable<void>;
4527
- unloaded$: Observable<void>;
4528
- loaded$: Observable<HTMLIFrameElement>;
4529
- ready$: Observable<FontFaceSet | undefined>;
4530
- isReady$: Observable<boolean>;
4531
- contentLayoutChange$: Observable<{
4532
- isFirstLayout: boolean;
4533
- } | {
4534
- isFirstLayout: boolean;
4535
- }>;
4536
- };
4537
- };
4538
- element: HTMLElement;
4539
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
4540
- getViewPortInformation: () => {
4541
- computedScale: number;
4542
- computedWidthScale: number;
4543
- viewportDimensions: {
4544
- width: number;
4545
- height: number;
4546
- };
4547
- } | undefined;
4548
- isImageType: () => boolean;
4549
- isReady: () => boolean;
4550
- destroy: () => void;
4551
- isUsingVerticalWriting: () => boolean | undefined;
4552
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4553
- manipulateSpineItem: (cb: (options: {
4554
- container: HTMLElement;
4555
- item: {
4556
- id: string;
4557
- href: string;
4558
- renditionLayout: "reflowable" | "pre-paginated";
4559
- progressionWeight: number;
4560
- pageSpreadLeft: true | undefined;
4561
- pageSpreadRight: true | undefined;
4562
- mediaType?: string | undefined;
4563
- };
4564
- overlayElement: HTMLDivElement;
4565
- } & ({
4566
- frame: HTMLIFrameElement;
4567
- removeStyle: (id: string) => void;
4568
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4569
- } | {
4570
- frame: undefined;
4571
- removeStyle: (id: string) => void;
4572
- addStyle: (id: string, style: string) => void;
4573
- })) => boolean) => boolean;
4574
- executeOnLayoutBeforeMeasurementHook: (options: {
4575
- minimumWidth: number;
4576
- }) => void;
4577
- selectionTracker: {
4578
- track: (frameToTrack: HTMLIFrameElement) => void;
4579
- destroy: () => void;
4580
- isSelecting: () => boolean;
4581
- getSelection: () => Selection | undefined;
4582
- $: Observable<{
4583
- event: "selectionchange";
4584
- data: Selection | null;
4585
- } | {
4586
- event: "selectstart";
4587
- data: Selection | null;
4588
- } | {
4589
- event: "selectend";
4590
- data: Selection | null;
4591
- }>;
4592
- };
4593
- fingerTracker: {
4594
- track: (frame: HTMLIFrameElement) => void;
4595
- getFingerPositionInIframe(): {
4596
- x: number | undefined;
4597
- y: number | undefined;
4598
- } | undefined;
4599
- destroy: () => void;
4600
- $: Observable<{
4601
- event: "fingermove";
4602
- data: {
4603
- x: number;
4604
- y: number;
4605
- };
4606
- } | {
4607
- event: "fingerout";
4608
- data: undefined;
4609
- }>;
4610
- };
4611
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
4612
- columnHeight: number;
4613
- columnWidth: number;
4614
- width: number;
4615
- };
4616
- getDimensionsForPaginatedContent: () => {
4617
- columnHeight: number;
4618
- columnWidth: number;
4619
- };
4620
- $: {
4621
- contentLayout$: Observable<{
4622
- isFirstLayout: boolean;
4623
- isReady: boolean;
4624
- }>;
4625
- loaded$: Observable<HTMLIFrameElement>;
4626
- isReady$: Observable<boolean>;
4627
- };
4628
- }) => {
4629
- leftStart: number;
4630
- leftEnd: number;
4631
- topStart: number;
4632
- topEnd: number;
4633
- width: number;
4634
- height: number;
4635
- });
4636
- getSpineItemAtPosition: ((position: import("../types").ViewportPosition) => {
4637
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4638
- blankPagePosition: "after" | "before" | "none";
4639
- minimumWidth: number;
4640
- spreadPosition: "none" | "right" | "left";
4641
- }) => {
4642
- width: number;
4643
- height: number;
4644
- };
4645
- item: {
4646
- id: string;
4647
- href: string;
4648
- renditionLayout: "reflowable" | "pre-paginated";
4649
- progressionWeight: number;
4650
- pageSpreadLeft: true | undefined;
4651
- pageSpreadRight: true | undefined;
4652
- mediaType?: string | undefined;
4653
- };
4654
- load: () => void;
4655
- adjustPositionOfElement: ({ right, left, top }: {
4656
- right?: number | undefined;
4657
- left?: number | undefined;
4658
- top?: number | undefined;
4659
- }) => void;
4660
- getElementDimensions: () => {
4661
- width: number;
4662
- height: number;
4663
- };
4664
- getHtmlFromResource: (response: Response) => Promise<string>;
4665
- getResource: () => Promise<Response>;
4666
- translateFramePositionIntoPage: (position: {
4667
- clientX: number;
4668
- clientY: number;
4669
- }) => {
4670
- clientX: number;
4671
- clientY: number;
4672
- };
4673
- setLayoutDirty: () => void;
4674
- injectStyle: (cssText: string) => void;
4675
- loadContent: () => void;
4676
- unloadContent: () => void;
4677
- spineItemFrame: {
4678
- getIsLoaded: () => boolean;
4679
- getIsReady: () => boolean;
4680
- getViewportDimensions: () => {
4681
- width: number;
4682
- height: number;
4683
- } | undefined;
4684
- getFrameElement: () => HTMLIFrameElement | undefined;
4685
- getHtmlFromResource: (response: Response) => Promise<string>;
4686
- load: () => void;
4687
- unload: () => void;
4688
- staticLayout: (size: {
4689
- width: number;
4690
- height: number;
4691
- }) => void;
4692
- getManipulableFrame: () => {
4693
- frame: HTMLIFrameElement;
4694
- removeStyle: (id: string) => void;
4695
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4696
- } | undefined;
4697
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4698
- isUsingVerticalWriting: () => boolean;
4699
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
4700
- destroy: () => void;
4701
- $: {
4702
- unload$: Observable<void>;
4703
- unloaded$: Observable<void>;
4704
- loaded$: Observable<HTMLIFrameElement>;
4705
- ready$: Observable<FontFaceSet | undefined>;
4706
- isReady$: Observable<boolean>;
4707
- contentLayoutChange$: Observable<{
4708
- isFirstLayout: boolean;
4709
- } | {
4710
- isFirstLayout: boolean;
4711
- }>;
4712
- };
4713
- };
4714
- element: HTMLElement;
4715
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
4716
- getViewPortInformation: () => {
4717
- computedScale: number;
4718
- computedWidthScale: number;
4719
- viewportDimensions: {
4720
- width: number;
4721
- height: number;
4722
- };
4723
- } | undefined;
4724
- isImageType: () => boolean;
4725
- isReady: () => boolean;
4726
- destroy: () => void;
4727
- isUsingVerticalWriting: () => boolean | undefined;
4728
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4729
- manipulateSpineItem: (cb: (options: {
4730
- container: HTMLElement;
4731
- item: {
4732
- id: string;
4733
- href: string;
4734
- renditionLayout: "reflowable" | "pre-paginated";
4735
- progressionWeight: number;
4736
- pageSpreadLeft: true | undefined;
4737
- pageSpreadRight: true | undefined;
4738
- mediaType?: string | undefined;
4739
- };
4740
- overlayElement: HTMLDivElement;
4741
- } & ({
4742
- frame: HTMLIFrameElement;
4743
- removeStyle: (id: string) => void;
4744
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4745
- } | {
4746
- frame: undefined;
4747
- removeStyle: (id: string) => void;
4748
- addStyle: (id: string, style: string) => void;
4749
- })) => boolean) => boolean;
4750
- executeOnLayoutBeforeMeasurementHook: (options: {
4751
- minimumWidth: number;
4752
- }) => void;
4753
- selectionTracker: {
4754
- track: (frameToTrack: HTMLIFrameElement) => void;
4755
- destroy: () => void;
4756
- isSelecting: () => boolean;
4757
- getSelection: () => Selection | undefined;
4758
- $: Observable<{
4759
- event: "selectionchange";
4760
- data: Selection | null;
4761
- } | {
4762
- event: "selectstart";
4763
- data: Selection | null;
4764
- } | {
4765
- event: "selectend";
4766
- data: Selection | null;
4767
- }>;
4768
- };
4769
- fingerTracker: {
4770
- track: (frame: HTMLIFrameElement) => void;
4771
- getFingerPositionInIframe(): {
4772
- x: number | undefined;
4773
- y: number | undefined;
4774
- } | undefined;
4775
- destroy: () => void;
4776
- $: Observable<{
4777
- event: "fingermove";
4778
- data: {
4779
- x: number;
4780
- y: number;
4781
- };
4782
- } | {
4783
- event: "fingerout";
4784
- data: undefined;
4785
- }>;
4786
- };
4787
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
4788
- columnHeight: number;
4789
- columnWidth: number;
4790
- width: number;
4791
- };
4792
- getDimensionsForPaginatedContent: () => {
4793
- columnHeight: number;
4794
- columnWidth: number;
4795
- };
4796
- $: {
4797
- contentLayout$: Observable<{
4798
- isFirstLayout: boolean;
4799
- isReady: boolean;
4800
- }>;
4801
- loaded$: Observable<HTMLIFrameElement>;
4802
- isReady$: Observable<boolean>;
4803
- };
4804
- } | undefined) | ((position: import("../types").ViewportPosition) => {
4805
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4806
- blankPagePosition: "after" | "before" | "none";
4807
- minimumWidth: number;
4808
- spreadPosition: "none" | "right" | "left";
4809
- }) => {
4810
- width: number;
4811
- height: number;
4812
- };
4813
- item: {
4814
- id: string;
4815
- href: string;
4816
- renditionLayout: "reflowable" | "pre-paginated";
4817
- progressionWeight: number;
4818
- pageSpreadLeft: true | undefined;
4819
- pageSpreadRight: true | undefined;
4820
- mediaType?: string | undefined;
4821
- };
4822
- load: () => void;
4823
- adjustPositionOfElement: ({ right, left, top }: {
4824
- right?: number | undefined;
4825
- left?: number | undefined;
4826
- top?: number | undefined;
4827
- }) => void;
4828
- getElementDimensions: () => {
4829
- width: number;
4830
- height: number;
4831
- };
4832
- getHtmlFromResource: (response: Response) => Promise<string>;
4833
- getResource: () => Promise<Response>;
4834
- translateFramePositionIntoPage: (position: {
4835
- clientX: number;
4836
- clientY: number;
4837
- }) => {
4838
- clientX: number;
4839
- clientY: number;
4840
- };
4841
- setLayoutDirty: () => void;
4842
- injectStyle: (cssText: string) => void;
4843
- loadContent: () => void;
4844
- unloadContent: () => void;
4845
- spineItemFrame: {
4846
- getIsLoaded: () => boolean;
4847
- getIsReady: () => boolean;
4848
- getViewportDimensions: () => {
4849
- width: number;
4850
- height: number;
4851
- } | undefined;
4852
- getFrameElement: () => HTMLIFrameElement | undefined;
4853
- getHtmlFromResource: (response: Response) => Promise<string>;
4854
- load: () => void;
4855
- unload: () => void;
4856
- staticLayout: (size: {
4857
- width: number;
4858
- height: number;
4859
- }) => void;
4860
- getManipulableFrame: () => {
4861
- frame: HTMLIFrameElement;
4862
- removeStyle: (id: string) => void;
4863
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4864
- } | undefined;
4865
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4866
- isUsingVerticalWriting: () => boolean;
4867
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
4868
- destroy: () => void;
4869
- $: {
4870
- unload$: Observable<void>;
4871
- unloaded$: Observable<void>;
4872
- loaded$: Observable<HTMLIFrameElement>;
4873
- ready$: Observable<FontFaceSet | undefined>;
4874
- isReady$: Observable<boolean>;
4875
- contentLayoutChange$: Observable<{
4876
- isFirstLayout: boolean;
4877
- } | {
4878
- isFirstLayout: boolean;
4879
- }>;
4880
- };
4881
- };
4882
- element: HTMLElement;
4883
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
4884
- getViewPortInformation: () => {
4885
- computedScale: number;
4886
- computedWidthScale: number;
4887
- viewportDimensions: {
4888
- width: number;
4889
- height: number;
4890
- };
4891
- } | undefined;
4892
- isImageType: () => boolean;
4893
- isReady: () => boolean;
4894
- destroy: () => void;
4895
- isUsingVerticalWriting: () => boolean | undefined;
4896
- getReadingDirection: () => "ltr" | "rtl" | undefined;
4897
- manipulateSpineItem: (cb: (options: {
4898
- container: HTMLElement;
4899
- item: {
4900
- id: string;
4901
- href: string;
4902
- renditionLayout: "reflowable" | "pre-paginated";
4903
- progressionWeight: number;
4904
- pageSpreadLeft: true | undefined;
4905
- pageSpreadRight: true | undefined;
4906
- mediaType?: string | undefined;
4907
- };
4908
- overlayElement: HTMLDivElement;
4909
- } & ({
4910
- frame: HTMLIFrameElement;
4911
- removeStyle: (id: string) => void;
4912
- addStyle: (id: string, style: string, prepend?: boolean) => void;
4913
- } | {
4914
- frame: undefined;
4915
- removeStyle: (id: string) => void;
4916
- addStyle: (id: string, style: string) => void;
4917
- })) => boolean) => boolean;
4918
- executeOnLayoutBeforeMeasurementHook: (options: {
4919
- minimumWidth: number;
4920
- }) => void;
4921
- selectionTracker: {
4922
- track: (frameToTrack: HTMLIFrameElement) => void;
4923
- destroy: () => void;
4924
- isSelecting: () => boolean;
4925
- getSelection: () => Selection | undefined;
4926
- $: Observable<{
4927
- event: "selectionchange";
4928
- data: Selection | null;
4929
- } | {
4930
- event: "selectstart";
4931
- data: Selection | null;
4932
- } | {
4933
- event: "selectend";
4934
- data: Selection | null;
4935
- }>;
4936
- };
4937
- fingerTracker: {
4938
- track: (frame: HTMLIFrameElement) => void;
4939
- getFingerPositionInIframe(): {
4940
- x: number | undefined;
4941
- y: number | undefined;
4942
- } | undefined;
4943
- destroy: () => void;
4944
- $: Observable<{
4945
- event: "fingermove";
4946
- data: {
4947
- x: number;
4948
- y: number;
4949
- };
4950
- } | {
4951
- event: "fingerout";
4952
- data: undefined;
4953
- }>;
4954
- };
4955
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
4956
- columnHeight: number;
4957
- columnWidth: number;
4958
- width: number;
4959
- };
4960
- getDimensionsForPaginatedContent: () => {
4961
- columnHeight: number;
4962
- columnWidth: number;
4963
- };
4964
- $: {
4965
- contentLayout$: Observable<{
4966
- isFirstLayout: boolean;
4967
- isReady: boolean;
4968
- }>;
4969
- loaded$: Observable<HTMLIFrameElement>;
4970
- isReady$: Observable<boolean>;
4971
- };
4972
- } | undefined);
4400
+ };
4973
4401
  getFocusedSpineItem: () => {
4974
4402
  layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
4975
4403
  blankPagePosition: "after" | "before" | "none";