@prose-reader/core 1.57.0 → 1.59.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 (100) hide show
  1. package/dist/cfi.d.ts +74 -0
  2. package/dist/constants.d.ts +6 -0
  3. package/dist/context/Context.d.ts +63 -0
  4. package/dist/context/isUsingSpreadMode.d.ts +10 -0
  5. package/dist/createReaderWithEnhancer.d.ts +268 -0
  6. package/dist/enhancers/accessibility.d.ts +3 -0
  7. package/dist/enhancers/chrome.d.ts +3 -0
  8. package/dist/enhancers/events/createIframeEventBridgeElement.d.ts +1 -0
  9. package/dist/enhancers/events/events.d.ts +8 -0
  10. package/dist/enhancers/events/normalizeEventForViewport.d.ts +7 -0
  11. package/dist/enhancers/firefox.d.ts +3 -0
  12. package/dist/enhancers/fonts.d.ts +19 -0
  13. package/dist/enhancers/hotkeys.d.ts +3 -0
  14. package/dist/enhancers/layoutEnhancer/createMovingSafePan$.d.ts +4 -0
  15. package/dist/enhancers/layoutEnhancer/fixReflowable.d.ts +3 -0
  16. package/dist/enhancers/layoutEnhancer/layoutEnhancer.d.ts +10 -0
  17. package/dist/enhancers/layoutEnhancer/types.d.ts +8 -0
  18. package/dist/enhancers/links.d.ts +14 -0
  19. package/dist/enhancers/loadingEnhancer.d.ts +24 -0
  20. package/dist/enhancers/media.d.ts +3 -0
  21. package/dist/enhancers/navigation/navigation.d.ts +9 -0
  22. package/dist/enhancers/navigation/navigator.d.ts +8 -0
  23. package/dist/enhancers/navigation/state.d.ts +12 -0
  24. package/dist/enhancers/pagination/chapters.d.ts +24 -0
  25. package/dist/enhancers/pagination/constants.d.ts +1 -0
  26. package/dist/enhancers/pagination/enhancer.d.ts +14 -0
  27. package/dist/enhancers/pagination/pagination.d.ts +10 -0
  28. package/dist/enhancers/pagination/spine.d.ts +13 -0
  29. package/dist/enhancers/pagination/types.d.ts +19 -0
  30. package/dist/enhancers/pagination.test.d.ts +1 -0
  31. package/dist/enhancers/progression.d.ts +16 -0
  32. package/dist/enhancers/publicApi.d.ts +5 -0
  33. package/dist/enhancers/resources/index.d.ts +3 -0
  34. package/dist/enhancers/resources/indexedDB.d.ts +6 -0
  35. package/dist/enhancers/resources/resourcesManager.d.ts +7 -0
  36. package/dist/enhancers/theme.d.ts +32 -0
  37. package/dist/enhancers/types/enhancer.d.ts +9 -0
  38. package/dist/enhancers/utils.d.ts +7 -0
  39. package/dist/enhancers/webkit.d.ts +3 -0
  40. package/dist/enhancers/zoom/elementZoomer.d.ts +19 -0
  41. package/dist/enhancers/zoom/index.d.ts +4 -0
  42. package/dist/enhancers/zoom/types.d.ts +23 -0
  43. package/dist/enhancers/zoom/viewportZoomer.d.ts +19 -0
  44. package/dist/frames.d.ts +5 -0
  45. package/dist/hooks/HookManager.d.ts +10 -0
  46. package/dist/hooks/types.d.ts +64 -0
  47. package/dist/index.d.ts +9 -4262
  48. package/dist/index.js +225 -255
  49. package/dist/index.js.map +1 -1
  50. package/dist/index.umd.cjs +225 -255
  51. package/dist/index.umd.cjs.map +1 -1
  52. package/dist/manifest/areAllItemsPrePaginated.d.ts +3 -0
  53. package/dist/manifest/isFullyPrePaginated.d.ts +3 -0
  54. package/dist/pagination/pagination.d.ts +88 -0
  55. package/dist/pagination/types.d.ts +10 -0
  56. package/dist/reader.d.ts +8 -0
  57. package/dist/report.d.ts +26 -0
  58. package/dist/selection.d.ts +7 -0
  59. package/dist/settings/SettingsManager.d.ts +14 -0
  60. package/dist/settings/defaultSettings.d.ts +3 -0
  61. package/dist/settings/getComputedSettings.d.ts +4 -0
  62. package/dist/settings/types.d.ts +19 -0
  63. package/dist/spine/cfiLocator.d.ts +340 -0
  64. package/dist/spine/createSpine.d.ts +31 -0
  65. package/dist/spine/locationResolver.d.ts +636 -0
  66. package/dist/spine/navigationResolver.d.ts +48 -0
  67. package/dist/spine/types.d.ts +10 -0
  68. package/dist/spineItem/commonSpineItem.d.ts +165 -0
  69. package/dist/spineItem/createSpineItem.d.ts +167 -0
  70. package/dist/spineItem/frameItem/createFrame$.d.ts +1 -0
  71. package/dist/spineItem/frameItem/createFrameManipulator.d.ts +5 -0
  72. package/dist/spineItem/frameItem/createHtmlPageFromResource.d.ts +3 -0
  73. package/dist/spineItem/frameItem/frameItem.d.ts +49 -0
  74. package/dist/spineItem/frameItem/loader.d.ts +30 -0
  75. package/dist/spineItem/locationResolver.d.ts +24 -0
  76. package/dist/spineItem/navigationResolver.d.ts +16 -0
  77. package/dist/spineItem/prePaginatedSpineItem.d.ts +166 -0
  78. package/dist/spineItem/reflowableSpineItem.d.ts +165 -0
  79. package/dist/spineItem/styles/getStyleForViewportDocument.d.ts +1 -0
  80. package/dist/spineItem/trackers.d.ts +34 -0
  81. package/dist/spineItem/types.d.ts +19 -0
  82. package/dist/spineItemManager.d.ts +505 -0
  83. package/dist/types/Spine.d.ts +40 -0
  84. package/dist/types/index.d.ts +12 -0
  85. package/dist/types/reader.d.ts +44 -0
  86. package/dist/utils/compose.d.ts +8 -0
  87. package/dist/utils/dom.d.ts +19 -0
  88. package/dist/utils/isDefined.d.ts +1 -0
  89. package/dist/utils/layout.d.ts +7 -0
  90. package/dist/utils/layout.test.d.ts +1 -0
  91. package/dist/utils/manifest.d.ts +3 -0
  92. package/dist/utils/objects.d.ts +6 -0
  93. package/dist/utils/objects.test.d.ts +1 -0
  94. package/dist/utils/rxjs.d.ts +5 -0
  95. package/dist/viewportNavigator/manualViewportNavigator.d.ts +96 -0
  96. package/dist/viewportNavigator/panViewportNavigator.d.ts +55 -0
  97. package/dist/viewportNavigator/scrollViewportNavigator.d.ts +38 -0
  98. package/dist/viewportNavigator/types.d.ts +34 -0
  99. package/dist/viewportNavigator/viewportNavigator.d.ts +82 -0
  100. package/package.json +3 -3
@@ -0,0 +1,165 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Context } from '../context/Context';
3
+ import { Manifest } from '../types';
4
+ import { SettingsManager } from '../settings/SettingsManager';
5
+ import { HookManager } from '../hooks/HookManager';
6
+
7
+ export declare const createReflowableSpineItem: ({ item, context, containerElement, viewportState$, settings, hookManager, }: {
8
+ item: Manifest[`spineItems`][number];
9
+ containerElement: HTMLElement;
10
+ context: Context;
11
+ viewportState$: Observable<`free` | `busy`>;
12
+ settings: SettingsManager;
13
+ hookManager: HookManager;
14
+ }) => {
15
+ layout: ({ blankPagePosition, minimumWidth, }: {
16
+ blankPagePosition: `before` | `after` | `none`;
17
+ minimumWidth: number;
18
+ }) => {
19
+ width: number;
20
+ height: number;
21
+ };
22
+ item: {
23
+ id: string;
24
+ href: string;
25
+ renditionLayout: `reflowable` | `pre-paginated`;
26
+ progressionWeight: number;
27
+ pageSpreadLeft: true | undefined;
28
+ pageSpreadRight: true | undefined;
29
+ mediaType?: string;
30
+ };
31
+ load: () => void;
32
+ adjustPositionOfElement: ({ right, left, top }: {
33
+ right?: number;
34
+ left?: number;
35
+ top?: number;
36
+ }) => void;
37
+ getElementDimensions: () => {
38
+ width: number;
39
+ height: number;
40
+ };
41
+ getHtmlFromResource: (response: Response) => Promise<string>;
42
+ getResource: () => Promise<Response>;
43
+ translateFramePositionIntoPage: (position: {
44
+ clientX: number;
45
+ clientY: number;
46
+ }) => {
47
+ clientX: number;
48
+ clientY: number;
49
+ };
50
+ setLayoutDirty: () => void;
51
+ injectStyle: (cssText: string) => void;
52
+ loadContent: () => void;
53
+ unloadContent: () => void;
54
+ spineItemFrame: {
55
+ getIsLoaded: () => boolean;
56
+ getIsReady: () => boolean;
57
+ getViewportDimensions: () => {
58
+ width: number;
59
+ height: number;
60
+ } | undefined;
61
+ getFrameElement: () => HTMLIFrameElement | undefined;
62
+ getHtmlFromResource: (response: Response) => Promise<string>;
63
+ load: () => void;
64
+ unload: () => void;
65
+ staticLayout: (size: {
66
+ width: number;
67
+ height: number;
68
+ }) => void;
69
+ getManipulableFrame: () => ReturnType<typeof import('./frameItem/createFrameManipulator').createFrameManipulator> | undefined;
70
+ getReadingDirection: () => `ltr` | `rtl` | undefined;
71
+ isUsingVerticalWriting: () => boolean;
72
+ getWritingMode: () => `vertical-rl` | `horizontal-tb` | undefined;
73
+ destroy: () => void;
74
+ $: {
75
+ unload$: Observable<void>;
76
+ unloaded$: Observable<void>;
77
+ loaded$: Observable<HTMLIFrameElement>;
78
+ ready$: Observable<FontFaceSet | undefined>;
79
+ isReady$: Observable<boolean>;
80
+ contentLayoutChange$: Observable<{
81
+ isFirstLayout: boolean;
82
+ } | {
83
+ isFirstLayout: boolean;
84
+ }>;
85
+ };
86
+ };
87
+ element: HTMLElement;
88
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
89
+ getViewPortInformation: () => {
90
+ computedScale: number;
91
+ computedWidthScale: number;
92
+ viewportDimensions: {
93
+ width: number;
94
+ height: number;
95
+ };
96
+ } | undefined;
97
+ isImageType: () => boolean;
98
+ isReady: () => boolean;
99
+ destroy: () => void;
100
+ isUsingVerticalWriting: () => boolean | undefined;
101
+ getReadingDirection: () => "ltr" | "rtl" | undefined;
102
+ manipulateSpineItem: (cb: (options: {
103
+ container: HTMLElement;
104
+ item: Manifest[`spineItems`][number];
105
+ overlayElement: HTMLDivElement;
106
+ } & (ReturnType<typeof import('./frameItem/createFrameManipulator').createFrameManipulator> | {
107
+ frame: undefined;
108
+ removeStyle: (id: string) => void;
109
+ addStyle: (id: string, style: string) => void;
110
+ })) => boolean) => boolean;
111
+ executeOnLayoutBeforeMeasurementHook: (options: {
112
+ minimumWidth: number;
113
+ }) => void[];
114
+ selectionTracker: {
115
+ track: (frameToTrack: HTMLIFrameElement) => void;
116
+ destroy: () => void;
117
+ isSelecting: () => boolean;
118
+ getSelection: () => Selection | undefined;
119
+ $: Observable<{
120
+ event: `selectionchange`;
121
+ data: Selection | null;
122
+ } | {
123
+ event: `selectstart`;
124
+ data: Selection | null;
125
+ } | {
126
+ event: `selectend`;
127
+ data: Selection | null;
128
+ }>;
129
+ };
130
+ fingerTracker: {
131
+ track: (frame: HTMLIFrameElement) => void;
132
+ getFingerPositionInIframe(): {
133
+ x: number | undefined;
134
+ y: number | undefined;
135
+ } | undefined;
136
+ destroy: () => void;
137
+ $: Observable<{
138
+ event: `fingermove`;
139
+ data: {
140
+ x: number;
141
+ y: number;
142
+ };
143
+ } | {
144
+ event: `fingerout`;
145
+ data: undefined;
146
+ }>;
147
+ };
148
+ getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
149
+ columnHeight: number;
150
+ columnWidth: number;
151
+ width: number;
152
+ };
153
+ getDimensionsForPaginatedContent: () => {
154
+ columnHeight: number;
155
+ columnWidth: number;
156
+ };
157
+ $: {
158
+ contentLayout$: Observable<{
159
+ isFirstLayout: boolean;
160
+ isReady: boolean;
161
+ }>;
162
+ loaded$: Observable<HTMLIFrameElement>;
163
+ isReady$: Observable<boolean>;
164
+ };
165
+ };
@@ -0,0 +1 @@
1
+ export declare const getStyleForViewportDocument: () => string;
@@ -0,0 +1,34 @@
1
+ export declare const createFingerTracker: () => {
2
+ track: (frame: HTMLIFrameElement) => void;
3
+ getFingerPositionInIframe(): {
4
+ x: number | undefined;
5
+ y: number | undefined;
6
+ } | undefined;
7
+ destroy: () => void;
8
+ $: import('rxjs').Observable<{
9
+ event: `fingermove`;
10
+ data: {
11
+ x: number;
12
+ y: number;
13
+ };
14
+ } | {
15
+ event: `fingerout`;
16
+ data: undefined;
17
+ }>;
18
+ };
19
+ export declare const createSelectionTracker: () => {
20
+ track: (frameToTrack: HTMLIFrameElement) => void;
21
+ destroy: () => void;
22
+ isSelecting: () => boolean;
23
+ getSelection: () => Selection | undefined;
24
+ $: import('rxjs').Observable<{
25
+ event: `selectionchange`;
26
+ data: Selection | null;
27
+ } | {
28
+ event: `selectstart`;
29
+ data: Selection | null;
30
+ } | {
31
+ event: `selectend`;
32
+ data: Selection | null;
33
+ }>;
34
+ };
@@ -0,0 +1,19 @@
1
+ export type SpineItemPosition = {
2
+ x: number;
3
+ y: number;
4
+ __symbol?: `SpineItemPosition`;
5
+ };
6
+ export type UnsafeSpineItemPosition = {
7
+ x: number;
8
+ y: number;
9
+ __symbol?: `UnsafeSpineItemPosition` | `SpineItemPosition`;
10
+ };
11
+ export declare class SpineItemNavigationPosition {
12
+ __symbol: string;
13
+ x: number;
14
+ y: number;
15
+ constructor(position: {
16
+ x: number;
17
+ y: number;
18
+ });
19
+ }