@prose-reader/core 1.24.0 → 1.25.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 (73) hide show
  1. package/dist/cfi.d.ts +101 -71
  2. package/dist/constants.d.ts +6 -6
  3. package/dist/context.d.ts +38 -43
  4. package/dist/createReaderWithEnhancer.d.ts +6297 -5286
  5. package/dist/enhancers/accessibility.d.ts +5685 -4785
  6. package/dist/enhancers/chrome.d.ts +5685 -4785
  7. package/dist/enhancers/fonts.d.ts +5699 -4798
  8. package/dist/enhancers/hotkeys.d.ts +5685 -4785
  9. package/dist/enhancers/layoutEnhancer/createMovingSafePan$.d.ts +3 -3
  10. package/dist/enhancers/layoutEnhancer/fixReflowable.d.ts +2 -2
  11. package/dist/enhancers/layoutEnhancer/layoutEnhancer.d.ts +5696 -4792
  12. package/dist/enhancers/layoutEnhancer/types.d.ts +6 -6
  13. package/dist/enhancers/links.d.ts +5694 -4794
  14. package/dist/enhancers/loadingEnhancer.d.ts +5707 -4810
  15. package/dist/enhancers/media.d.ts +5685 -4785
  16. package/dist/enhancers/navigation.d.ts +5688 -4788
  17. package/dist/enhancers/pagination.d.ts +6133 -5165
  18. package/dist/enhancers/progression.d.ts +5709 -4798
  19. package/dist/enhancers/resources/index.d.ts +5685 -4785
  20. package/dist/enhancers/resources/indexedDB.d.ts +5 -5
  21. package/dist/enhancers/resources/resourcesManager.d.ts +8 -5
  22. package/dist/enhancers/theme.d.ts +5717 -4811
  23. package/dist/enhancers/types/enhancer.d.ts +5689 -4789
  24. package/dist/enhancers/utils.d.ts +5689 -4789
  25. package/dist/enhancers/webkit.d.ts +5685 -4785
  26. package/dist/enhancers/zoom/elementZoomer.d.ts +25 -17
  27. package/dist/enhancers/zoom/index.d.ts +5686 -4786
  28. package/dist/enhancers/zoom/types.d.ts +26 -21
  29. package/dist/enhancers/zoom/viewportZoomer.d.ts +22 -17
  30. package/dist/frames.d.ts +7 -5
  31. package/dist/index.d.ts +8 -8
  32. package/dist/pagination.d.ts +73 -64
  33. package/dist/prose.js +5274 -4853
  34. package/dist/prose.umd.cjs +5429 -4969
  35. package/dist/reader.d.ts +5692 -4791
  36. package/dist/report.d.ts +49 -25
  37. package/dist/selection.d.ts +9 -6
  38. package/dist/settings.d.ts +38 -36
  39. package/dist/spine/cfiLocator.d.ts +438 -359
  40. package/dist/spine/createSpine.d.ts +43 -29
  41. package/dist/spine/eventsHelper.d.ts +13 -10
  42. package/dist/spine/locationResolver.d.ts +820 -682
  43. package/dist/spine/navigationResolver.d.ts +51 -42
  44. package/dist/spine/types.d.ts +8 -8
  45. package/dist/spineItem/commonSpineItem.d.ts +205 -169
  46. package/dist/spineItem/createSpineItem.d.ts +213 -178
  47. package/dist/spineItem/frameItem/createFrame$.d.ts +3 -1
  48. package/dist/spineItem/frameItem/createFrameManipulator.d.ts +4 -4
  49. package/dist/spineItem/frameItem/createHtmlPageFromResource.d.ts +5 -2
  50. package/dist/spineItem/frameItem/frameItem.d.ts +54 -45
  51. package/dist/spineItem/frameItem/loader.d.ts +33 -26
  52. package/dist/spineItem/locationResolver.d.ts +35 -23
  53. package/dist/spineItem/navigationResolver.d.ts +11 -13
  54. package/dist/spineItem/prePaginatedSpineItem.d.ts +212 -177
  55. package/dist/spineItem/reflowableSpineItem.d.ts +204 -176
  56. package/dist/spineItem/styles/getStyleForViewportDocument.d.ts +1 -1
  57. package/dist/spineItem/trackers.d.ts +40 -31
  58. package/dist/spineItem/types.d.ts +12 -15
  59. package/dist/spineItemManager.d.ts +618 -532
  60. package/dist/types/Hook.d.ts +113 -69
  61. package/dist/types/Spine.d.ts +41 -37
  62. package/dist/types/index.d.ts +8 -8
  63. package/dist/utils/dom.d.ts +30 -18
  64. package/dist/utils/layout.d.ts +12 -7
  65. package/dist/utils/manifest.d.ts +2 -2
  66. package/dist/utils/objects.d.ts +12 -6
  67. package/dist/utils/rxjs.d.ts +9 -4
  68. package/dist/viewportNavigator/manualViewportNavigator.d.ts +1624 -1367
  69. package/dist/viewportNavigator/panViewportNavigator.d.ts +271 -214
  70. package/dist/viewportNavigator/scrollViewportNavigator.d.ts +37 -34
  71. package/dist/viewportNavigator/types.d.ts +36 -31
  72. package/dist/viewportNavigator/viewportNavigator.d.ts +100 -70
  73. package/package.json +3 -3
@@ -1,550 +1,636 @@
1
- import { Context } from "./context";
2
- import { SpineItem } from "./spineItem/createSpineItem";
3
- export declare const createSpineItemManager: ({ context }: {
4
- context: Context;
5
- }) => {
6
- destroyItems: () => void;
7
- add: (spineItem: SpineItem) => void;
8
- get: (indexOrId: number | string) => {
9
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
10
- blankPagePosition: "after" | "before" | "none";
11
- minimumWidth: number;
12
- spreadPosition: "none" | "right" | "left";
1
+ import { Context } from "./context"
2
+ import { SpineItem } from "./spineItem/createSpineItem"
3
+ export declare const createSpineItemManager: ({ context }: { context: Context }) => {
4
+ destroyItems: () => void
5
+ add: (spineItem: SpineItem) => void
6
+ get: (indexOrId: number | string) =>
7
+ | {
8
+ layout: ({
9
+ blankPagePosition,
10
+ minimumWidth,
11
+ spreadPosition,
12
+ }: {
13
+ blankPagePosition: "after" | "before" | "none"
14
+ minimumWidth: number
15
+ spreadPosition: "none" | "right" | "left"
13
16
  }) => {
14
- width: number;
15
- height: number;
16
- };
17
+ width: number
18
+ height: number
19
+ }
17
20
  item: {
18
- id: string;
19
- href: string;
20
- renditionLayout: "reflowable" | "pre-paginated";
21
- progressionWeight: number;
22
- pageSpreadLeft: true | undefined;
23
- pageSpreadRight: true | undefined;
24
- mediaType?: string | undefined;
25
- };
26
- load: () => void;
27
- adjustPositionOfElement: ({ right, left, top }: {
28
- right?: number | undefined;
29
- left?: number | undefined;
30
- top?: number | undefined;
31
- }) => void;
21
+ id: string
22
+ href: string
23
+ renditionLayout: "reflowable" | "pre-paginated"
24
+ progressionWeight: number
25
+ pageSpreadLeft: true | undefined
26
+ pageSpreadRight: true | undefined
27
+ mediaType?: string | undefined
28
+ }
29
+ load: () => void
30
+ adjustPositionOfElement: ({
31
+ right,
32
+ left,
33
+ top,
34
+ }: {
35
+ right?: number | undefined
36
+ left?: number | undefined
37
+ top?: number | undefined
38
+ }) => void
32
39
  getElementDimensions: () => {
33
- width: number;
34
- height: number;
35
- };
36
- getHtmlFromResource: (response: Response) => Promise<string>;
37
- getResource: () => Promise<Response>;
38
- translateFramePositionIntoPage: (position: {
39
- clientX: number;
40
- clientY: number;
41
- }) => {
42
- clientX: number;
43
- clientY: number;
44
- };
45
- setLayoutDirty: () => void;
46
- injectStyle: (cssText: string) => void;
47
- loadContent: () => void;
48
- unloadContent: () => void;
49
- spineItemFrame: {
50
- getIsLoaded: () => boolean;
51
- getIsReady: () => boolean;
52
- getViewportDimensions: () => {
53
- width: number;
54
- height: number;
55
- } | undefined;
56
- getFrameElement: () => HTMLIFrameElement | undefined;
57
- getHtmlFromResource: (response: Response) => Promise<string>;
58
- load: () => void;
59
- unload: () => void;
60
- staticLayout: (size: {
61
- width: number;
62
- height: number;
63
- }) => void;
64
- getManipulableFrame: () => {
65
- frame: HTMLIFrameElement;
66
- removeStyle: (id: string) => void;
67
- addStyle: (id: string, style: string, prepend?: boolean) => void;
68
- } | undefined;
69
- getReadingDirection: () => "ltr" | "rtl" | undefined;
70
- isUsingVerticalWriting: () => boolean;
71
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
72
- destroy: () => void;
73
- $: {
74
- unload$: import("rxjs").Observable<void>;
75
- unloaded$: import("rxjs").Observable<void>;
76
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
77
- ready$: import("rxjs").Observable<FontFaceSet | undefined>;
78
- isReady$: import("rxjs").Observable<boolean>;
79
- contentLayoutChange$: import("rxjs").Observable<{
80
- isFirstLayout: boolean;
81
- } | {
82
- isFirstLayout: boolean;
83
- }>;
84
- };
85
- };
86
- element: HTMLElement;
87
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
88
- getViewPortInformation: () => {
89
- computedScale: number;
90
- computedWidthScale: number;
91
- viewportDimensions: {
92
- width: number;
93
- height: number;
94
- };
95
- } | undefined;
96
- isImageType: () => boolean;
97
- isReady: () => boolean;
98
- destroy: () => void;
99
- isUsingVerticalWriting: () => boolean | undefined;
100
- getReadingDirection: () => "ltr" | "rtl" | undefined;
101
- manipulateSpineItem: (cb: (options: {
102
- container: HTMLElement;
103
- item: {
104
- id: string;
105
- href: string;
106
- renditionLayout: "reflowable" | "pre-paginated";
107
- progressionWeight: number;
108
- pageSpreadLeft: true | undefined;
109
- pageSpreadRight: true | undefined;
110
- mediaType?: string | undefined;
111
- };
112
- overlayElement: HTMLDivElement;
113
- } & ({
114
- frame: HTMLIFrameElement;
115
- removeStyle: (id: string) => void;
116
- addStyle: (id: string, style: string, prepend?: boolean) => void;
117
- } | {
118
- frame: undefined;
119
- removeStyle: (id: string) => void;
120
- addStyle: (id: string, style: string) => void;
121
- })) => boolean) => boolean;
122
- executeOnLayoutBeforeMeasurementHook: (options: {
123
- minimumWidth: number;
124
- }) => void;
125
- selectionTracker: {
126
- track: (frameToTrack: HTMLIFrameElement) => void;
127
- destroy: () => void;
128
- isSelecting: () => boolean;
129
- getSelection: () => Selection | undefined;
130
- $: import("rxjs").Observable<{
131
- event: "selectionchange";
132
- data: Selection | null;
133
- } | {
134
- event: "selectstart";
135
- data: Selection | null;
136
- } | {
137
- event: "selectend";
138
- data: Selection | null;
139
- }>;
140
- };
141
- fingerTracker: {
142
- track: (frame: HTMLIFrameElement) => void;
143
- getFingerPositionInIframe(): {
144
- x: number | undefined;
145
- y: number | undefined;
146
- } | undefined;
147
- destroy: () => void;
148
- $: import("rxjs").Observable<{
149
- event: "fingermove";
150
- data: {
151
- x: number;
152
- y: number;
153
- };
154
- } | {
155
- event: "fingerout";
156
- data: undefined;
157
- }>;
158
- };
159
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
160
- columnHeight: number;
161
- columnWidth: number;
162
- width: number;
163
- };
164
- getDimensionsForPaginatedContent: () => {
165
- columnHeight: number;
166
- columnWidth: number;
167
- };
168
- $: {
169
- contentLayout$: import("rxjs").Observable<{
170
- isFirstLayout: boolean;
171
- isReady: boolean;
172
- }>;
173
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
174
- isReady$: import("rxjs").Observable<boolean>;
175
- };
176
- } | undefined;
177
- getAll: () => {
178
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
179
- blankPagePosition: "after" | "before" | "none";
180
- minimumWidth: number;
181
- spreadPosition: "none" | "right" | "left";
182
- }) => {
183
- width: number;
184
- height: number;
185
- };
186
- item: {
187
- id: string;
188
- href: string;
189
- renditionLayout: "reflowable" | "pre-paginated";
190
- progressionWeight: number;
191
- pageSpreadLeft: true | undefined;
192
- pageSpreadRight: true | undefined;
193
- mediaType?: string | undefined;
194
- };
195
- load: () => void;
196
- adjustPositionOfElement: ({ right, left, top }: {
197
- right?: number | undefined;
198
- left?: number | undefined;
199
- top?: number | undefined;
200
- }) => void;
201
- getElementDimensions: () => {
202
- width: number;
203
- height: number;
204
- };
205
- getHtmlFromResource: (response: Response) => Promise<string>;
206
- getResource: () => Promise<Response>;
207
- translateFramePositionIntoPage: (position: {
208
- clientX: number;
209
- clientY: number;
210
- }) => {
211
- clientX: number;
212
- clientY: number;
213
- };
214
- setLayoutDirty: () => void;
215
- injectStyle: (cssText: string) => void;
216
- loadContent: () => void;
217
- unloadContent: () => void;
40
+ width: number
41
+ height: number
42
+ }
43
+ getHtmlFromResource: (response: Response) => Promise<string>
44
+ getResource: () => Promise<Response>
45
+ translateFramePositionIntoPage: (position: { clientX: number; clientY: number }) => {
46
+ clientX: number
47
+ clientY: number
48
+ }
49
+ setLayoutDirty: () => void
50
+ injectStyle: (cssText: string) => void
51
+ loadContent: () => void
52
+ unloadContent: () => void
218
53
  spineItemFrame: {
219
- getIsLoaded: () => boolean;
220
- getIsReady: () => boolean;
221
- getViewportDimensions: () => {
222
- width: number;
223
- height: number;
224
- } | undefined;
225
- getFrameElement: () => HTMLIFrameElement | undefined;
226
- getHtmlFromResource: (response: Response) => Promise<string>;
227
- load: () => void;
228
- unload: () => void;
229
- staticLayout: (size: {
230
- width: number;
231
- height: number;
232
- }) => void;
233
- getManipulableFrame: () => {
234
- frame: HTMLIFrameElement;
235
- removeStyle: (id: string) => void;
236
- addStyle: (id: string, style: string, prepend?: boolean) => void;
237
- } | undefined;
238
- getReadingDirection: () => "ltr" | "rtl" | undefined;
239
- isUsingVerticalWriting: () => boolean;
240
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
241
- destroy: () => void;
242
- $: {
243
- unload$: import("rxjs").Observable<void>;
244
- unloaded$: import("rxjs").Observable<void>;
245
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
246
- ready$: import("rxjs").Observable<FontFaceSet | undefined>;
247
- isReady$: import("rxjs").Observable<boolean>;
248
- contentLayoutChange$: import("rxjs").Observable<{
249
- isFirstLayout: boolean;
250
- } | {
251
- isFirstLayout: boolean;
252
- }>;
253
- };
254
- };
255
- element: HTMLElement;
256
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
257
- getViewPortInformation: () => {
258
- computedScale: number;
259
- computedWidthScale: number;
260
- viewportDimensions: {
261
- width: number;
262
- height: number;
263
- };
264
- } | undefined;
265
- isImageType: () => boolean;
266
- isReady: () => boolean;
267
- destroy: () => void;
268
- isUsingVerticalWriting: () => boolean | undefined;
269
- getReadingDirection: () => "ltr" | "rtl" | undefined;
270
- manipulateSpineItem: (cb: (options: {
271
- container: HTMLElement;
272
- item: {
273
- id: string;
274
- href: string;
275
- renditionLayout: "reflowable" | "pre-paginated";
276
- progressionWeight: number;
277
- pageSpreadLeft: true | undefined;
278
- pageSpreadRight: true | undefined;
279
- mediaType?: string | undefined;
280
- };
281
- overlayElement: HTMLDivElement;
282
- } & ({
283
- frame: HTMLIFrameElement;
284
- removeStyle: (id: string) => void;
285
- addStyle: (id: string, style: string, prepend?: boolean) => void;
286
- } | {
287
- frame: undefined;
288
- removeStyle: (id: string) => void;
289
- addStyle: (id: string, style: string) => void;
290
- })) => boolean) => boolean;
291
- executeOnLayoutBeforeMeasurementHook: (options: {
292
- minimumWidth: number;
293
- }) => void;
54
+ getIsLoaded: () => boolean
55
+ getIsReady: () => boolean
56
+ getViewportDimensions: () =>
57
+ | {
58
+ width: number
59
+ height: number
60
+ }
61
+ | undefined
62
+ getFrameElement: () => HTMLIFrameElement | undefined
63
+ getHtmlFromResource: (response: Response) => Promise<string>
64
+ load: () => void
65
+ unload: () => void
66
+ staticLayout: (size: { width: number; height: number }) => void
67
+ getManipulableFrame: () =>
68
+ | {
69
+ frame: HTMLIFrameElement
70
+ removeStyle: (id: string) => void
71
+ addStyle: (id: string, style: string, prepend?: boolean) => void
72
+ }
73
+ | undefined
74
+ getReadingDirection: () => "ltr" | "rtl" | undefined
75
+ isUsingVerticalWriting: () => boolean
76
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined
77
+ destroy: () => void
78
+ $: {
79
+ unload$: import("rxjs").Observable<void>
80
+ unloaded$: import("rxjs").Observable<void>
81
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>
82
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>
83
+ isReady$: import("rxjs").Observable<boolean>
84
+ contentLayoutChange$: import("rxjs").Observable<
85
+ | {
86
+ isFirstLayout: boolean
87
+ }
88
+ | {
89
+ isFirstLayout: boolean
90
+ }
91
+ >
92
+ }
93
+ }
94
+ element: HTMLElement
95
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined
96
+ getViewPortInformation: () =>
97
+ | {
98
+ computedScale: number
99
+ computedWidthScale: number
100
+ viewportDimensions: {
101
+ width: number
102
+ height: number
103
+ }
104
+ }
105
+ | undefined
106
+ isImageType: () => boolean
107
+ isReady: () => boolean
108
+ destroy: () => void
109
+ isUsingVerticalWriting: () => boolean | undefined
110
+ getReadingDirection: () => "ltr" | "rtl" | undefined
111
+ manipulateSpineItem: (
112
+ cb: (
113
+ options: {
114
+ container: HTMLElement
115
+ item: {
116
+ id: string
117
+ href: string
118
+ renditionLayout: "reflowable" | "pre-paginated"
119
+ progressionWeight: number
120
+ pageSpreadLeft: true | undefined
121
+ pageSpreadRight: true | undefined
122
+ mediaType?: string | undefined
123
+ }
124
+ overlayElement: HTMLDivElement
125
+ } & (
126
+ | {
127
+ frame: HTMLIFrameElement
128
+ removeStyle: (id: string) => void
129
+ addStyle: (id: string, style: string, prepend?: boolean) => void
130
+ }
131
+ | {
132
+ frame: undefined
133
+ removeStyle: (id: string) => void
134
+ addStyle: (id: string, style: string) => void
135
+ }
136
+ )
137
+ ) => boolean
138
+ ) => boolean
139
+ executeOnLayoutBeforeMeasurementHook: (options: { minimumWidth: number }) => void
294
140
  selectionTracker: {
295
- track: (frameToTrack: HTMLIFrameElement) => void;
296
- destroy: () => void;
297
- isSelecting: () => boolean;
298
- getSelection: () => Selection | undefined;
299
- $: import("rxjs").Observable<{
300
- event: "selectionchange";
301
- data: Selection | null;
302
- } | {
303
- event: "selectstart";
304
- data: Selection | null;
305
- } | {
306
- event: "selectend";
307
- data: Selection | null;
308
- }>;
309
- };
141
+ track: (frameToTrack: HTMLIFrameElement) => void
142
+ destroy: () => void
143
+ isSelecting: () => boolean
144
+ getSelection: () => Selection | undefined
145
+ $: import("rxjs").Observable<
146
+ | {
147
+ event: "selectionchange"
148
+ data: Selection | null
149
+ }
150
+ | {
151
+ event: "selectstart"
152
+ data: Selection | null
153
+ }
154
+ | {
155
+ event: "selectend"
156
+ data: Selection | null
157
+ }
158
+ >
159
+ }
310
160
  fingerTracker: {
311
- track: (frame: HTMLIFrameElement) => void;
312
- getFingerPositionInIframe(): {
313
- x: number | undefined;
314
- y: number | undefined;
315
- } | undefined;
316
- destroy: () => void;
317
- $: import("rxjs").Observable<{
318
- event: "fingermove";
161
+ track: (frame: HTMLIFrameElement) => void
162
+ getFingerPositionInIframe():
163
+ | {
164
+ x: number | undefined
165
+ y: number | undefined
166
+ }
167
+ | undefined
168
+ destroy: () => void
169
+ $: import("rxjs").Observable<
170
+ | {
171
+ event: "fingermove"
319
172
  data: {
320
- x: number;
321
- y: number;
322
- };
323
- } | {
324
- event: "fingerout";
325
- data: undefined;
326
- }>;
327
- };
328
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
329
- columnHeight: number;
330
- columnWidth: number;
331
- width: number;
332
- };
173
+ x: number
174
+ y: number
175
+ }
176
+ }
177
+ | {
178
+ event: "fingerout"
179
+ data: undefined
180
+ }
181
+ >
182
+ }
183
+ getDimensionsForReflowableContent: (
184
+ isUsingVerticalWriting: boolean,
185
+ minimumWidth: number
186
+ ) => {
187
+ columnHeight: number
188
+ columnWidth: number
189
+ width: number
190
+ }
333
191
  getDimensionsForPaginatedContent: () => {
334
- columnHeight: number;
335
- columnWidth: number;
336
- };
192
+ columnHeight: number
193
+ columnWidth: number
194
+ }
337
195
  $: {
338
- contentLayout$: import("rxjs").Observable<{
339
- isFirstLayout: boolean;
340
- isReady: boolean;
341
- }>;
342
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
343
- isReady$: import("rxjs").Observable<boolean>;
344
- };
345
- }[];
346
- getLength: () => number;
347
- layout: () => void;
348
- focus: (indexOrSpineItem: number | SpineItem) => void;
349
- loadContents: ((rangeOfIndex: [number, number]) => void) | ((rangeOfIndex: [number, number]) => void);
350
- comparePositionOf: (toCompare: SpineItem, withItem: SpineItem) => "after" | "before";
351
- getAbsolutePositionOf: (spineItemOrIndex: SpineItem | number) => {
352
- left: number;
353
- right: number;
354
- top: number;
355
- bottom: number;
356
- width: number;
357
- height: number;
358
- };
359
- getFocusedSpineItem: () => {
360
- layout: ({ blankPagePosition, minimumWidth, spreadPosition, }: {
361
- blankPagePosition: "after" | "before" | "none";
362
- minimumWidth: number;
363
- spreadPosition: "none" | "right" | "left";
196
+ contentLayout$: import("rxjs").Observable<{
197
+ isFirstLayout: boolean
198
+ isReady: boolean
199
+ }>
200
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>
201
+ isReady$: import("rxjs").Observable<boolean>
202
+ }
203
+ }
204
+ | undefined
205
+ getAll: () => {
206
+ layout: ({
207
+ blankPagePosition,
208
+ minimumWidth,
209
+ spreadPosition,
210
+ }: {
211
+ blankPagePosition: "after" | "before" | "none"
212
+ minimumWidth: number
213
+ spreadPosition: "none" | "right" | "left"
214
+ }) => {
215
+ width: number
216
+ height: number
217
+ }
218
+ item: {
219
+ id: string
220
+ href: string
221
+ renditionLayout: "reflowable" | "pre-paginated"
222
+ progressionWeight: number
223
+ pageSpreadLeft: true | undefined
224
+ pageSpreadRight: true | undefined
225
+ mediaType?: string | undefined
226
+ }
227
+ load: () => void
228
+ adjustPositionOfElement: ({
229
+ right,
230
+ left,
231
+ top,
232
+ }: {
233
+ right?: number | undefined
234
+ left?: number | undefined
235
+ top?: number | undefined
236
+ }) => void
237
+ getElementDimensions: () => {
238
+ width: number
239
+ height: number
240
+ }
241
+ getHtmlFromResource: (response: Response) => Promise<string>
242
+ getResource: () => Promise<Response>
243
+ translateFramePositionIntoPage: (position: { clientX: number; clientY: number }) => {
244
+ clientX: number
245
+ clientY: number
246
+ }
247
+ setLayoutDirty: () => void
248
+ injectStyle: (cssText: string) => void
249
+ loadContent: () => void
250
+ unloadContent: () => void
251
+ spineItemFrame: {
252
+ getIsLoaded: () => boolean
253
+ getIsReady: () => boolean
254
+ getViewportDimensions: () =>
255
+ | {
256
+ width: number
257
+ height: number
258
+ }
259
+ | undefined
260
+ getFrameElement: () => HTMLIFrameElement | undefined
261
+ getHtmlFromResource: (response: Response) => Promise<string>
262
+ load: () => void
263
+ unload: () => void
264
+ staticLayout: (size: { width: number; height: number }) => void
265
+ getManipulableFrame: () =>
266
+ | {
267
+ frame: HTMLIFrameElement
268
+ removeStyle: (id: string) => void
269
+ addStyle: (id: string, style: string, prepend?: boolean) => void
270
+ }
271
+ | undefined
272
+ getReadingDirection: () => "ltr" | "rtl" | undefined
273
+ isUsingVerticalWriting: () => boolean
274
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined
275
+ destroy: () => void
276
+ $: {
277
+ unload$: import("rxjs").Observable<void>
278
+ unloaded$: import("rxjs").Observable<void>
279
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>
280
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>
281
+ isReady$: import("rxjs").Observable<boolean>
282
+ contentLayoutChange$: import("rxjs").Observable<
283
+ | {
284
+ isFirstLayout: boolean
285
+ }
286
+ | {
287
+ isFirstLayout: boolean
288
+ }
289
+ >
290
+ }
291
+ }
292
+ element: HTMLElement
293
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined
294
+ getViewPortInformation: () =>
295
+ | {
296
+ computedScale: number
297
+ computedWidthScale: number
298
+ viewportDimensions: {
299
+ width: number
300
+ height: number
301
+ }
302
+ }
303
+ | undefined
304
+ isImageType: () => boolean
305
+ isReady: () => boolean
306
+ destroy: () => void
307
+ isUsingVerticalWriting: () => boolean | undefined
308
+ getReadingDirection: () => "ltr" | "rtl" | undefined
309
+ manipulateSpineItem: (
310
+ cb: (
311
+ options: {
312
+ container: HTMLElement
313
+ item: {
314
+ id: string
315
+ href: string
316
+ renditionLayout: "reflowable" | "pre-paginated"
317
+ progressionWeight: number
318
+ pageSpreadLeft: true | undefined
319
+ pageSpreadRight: true | undefined
320
+ mediaType?: string | undefined
321
+ }
322
+ overlayElement: HTMLDivElement
323
+ } & (
324
+ | {
325
+ frame: HTMLIFrameElement
326
+ removeStyle: (id: string) => void
327
+ addStyle: (id: string, style: string, prepend?: boolean) => void
328
+ }
329
+ | {
330
+ frame: undefined
331
+ removeStyle: (id: string) => void
332
+ addStyle: (id: string, style: string) => void
333
+ }
334
+ )
335
+ ) => boolean
336
+ ) => boolean
337
+ executeOnLayoutBeforeMeasurementHook: (options: { minimumWidth: number }) => void
338
+ selectionTracker: {
339
+ track: (frameToTrack: HTMLIFrameElement) => void
340
+ destroy: () => void
341
+ isSelecting: () => boolean
342
+ getSelection: () => Selection | undefined
343
+ $: import("rxjs").Observable<
344
+ | {
345
+ event: "selectionchange"
346
+ data: Selection | null
347
+ }
348
+ | {
349
+ event: "selectstart"
350
+ data: Selection | null
351
+ }
352
+ | {
353
+ event: "selectend"
354
+ data: Selection | null
355
+ }
356
+ >
357
+ }
358
+ fingerTracker: {
359
+ track: (frame: HTMLIFrameElement) => void
360
+ getFingerPositionInIframe():
361
+ | {
362
+ x: number | undefined
363
+ y: number | undefined
364
+ }
365
+ | undefined
366
+ destroy: () => void
367
+ $: import("rxjs").Observable<
368
+ | {
369
+ event: "fingermove"
370
+ data: {
371
+ x: number
372
+ y: number
373
+ }
374
+ }
375
+ | {
376
+ event: "fingerout"
377
+ data: undefined
378
+ }
379
+ >
380
+ }
381
+ getDimensionsForReflowableContent: (
382
+ isUsingVerticalWriting: boolean,
383
+ minimumWidth: number
384
+ ) => {
385
+ columnHeight: number
386
+ columnWidth: number
387
+ width: number
388
+ }
389
+ getDimensionsForPaginatedContent: () => {
390
+ columnHeight: number
391
+ columnWidth: number
392
+ }
393
+ $: {
394
+ contentLayout$: import("rxjs").Observable<{
395
+ isFirstLayout: boolean
396
+ isReady: boolean
397
+ }>
398
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>
399
+ isReady$: import("rxjs").Observable<boolean>
400
+ }
401
+ }[]
402
+ getLength: () => number
403
+ layout: () => void
404
+ focus: (indexOrSpineItem: number | SpineItem) => void
405
+ loadContents: ((rangeOfIndex: [number, number]) => void) | ((rangeOfIndex: [number, number]) => void)
406
+ comparePositionOf: (toCompare: SpineItem, withItem: SpineItem) => "after" | "before"
407
+ getAbsolutePositionOf: (spineItemOrIndex: SpineItem | number) => {
408
+ left: number
409
+ right: number
410
+ top: number
411
+ bottom: number
412
+ width: number
413
+ height: number
414
+ }
415
+ getFocusedSpineItem: () =>
416
+ | {
417
+ layout: ({
418
+ blankPagePosition,
419
+ minimumWidth,
420
+ spreadPosition,
421
+ }: {
422
+ blankPagePosition: "after" | "before" | "none"
423
+ minimumWidth: number
424
+ spreadPosition: "none" | "right" | "left"
364
425
  }) => {
365
- width: number;
366
- height: number;
367
- };
426
+ width: number
427
+ height: number
428
+ }
368
429
  item: {
369
- id: string;
370
- href: string;
371
- renditionLayout: "reflowable" | "pre-paginated";
372
- progressionWeight: number;
373
- pageSpreadLeft: true | undefined;
374
- pageSpreadRight: true | undefined;
375
- mediaType?: string | undefined;
376
- };
377
- load: () => void;
378
- adjustPositionOfElement: ({ right, left, top }: {
379
- right?: number | undefined;
380
- left?: number | undefined;
381
- top?: number | undefined;
382
- }) => void;
430
+ id: string
431
+ href: string
432
+ renditionLayout: "reflowable" | "pre-paginated"
433
+ progressionWeight: number
434
+ pageSpreadLeft: true | undefined
435
+ pageSpreadRight: true | undefined
436
+ mediaType?: string | undefined
437
+ }
438
+ load: () => void
439
+ adjustPositionOfElement: ({
440
+ right,
441
+ left,
442
+ top,
443
+ }: {
444
+ right?: number | undefined
445
+ left?: number | undefined
446
+ top?: number | undefined
447
+ }) => void
383
448
  getElementDimensions: () => {
384
- width: number;
385
- height: number;
386
- };
387
- getHtmlFromResource: (response: Response) => Promise<string>;
388
- getResource: () => Promise<Response>;
389
- translateFramePositionIntoPage: (position: {
390
- clientX: number;
391
- clientY: number;
392
- }) => {
393
- clientX: number;
394
- clientY: number;
395
- };
396
- setLayoutDirty: () => void;
397
- injectStyle: (cssText: string) => void;
398
- loadContent: () => void;
399
- unloadContent: () => void;
449
+ width: number
450
+ height: number
451
+ }
452
+ getHtmlFromResource: (response: Response) => Promise<string>
453
+ getResource: () => Promise<Response>
454
+ translateFramePositionIntoPage: (position: { clientX: number; clientY: number }) => {
455
+ clientX: number
456
+ clientY: number
457
+ }
458
+ setLayoutDirty: () => void
459
+ injectStyle: (cssText: string) => void
460
+ loadContent: () => void
461
+ unloadContent: () => void
400
462
  spineItemFrame: {
401
- getIsLoaded: () => boolean;
402
- getIsReady: () => boolean;
403
- getViewportDimensions: () => {
404
- width: number;
405
- height: number;
406
- } | undefined;
407
- getFrameElement: () => HTMLIFrameElement | undefined;
408
- getHtmlFromResource: (response: Response) => Promise<string>;
409
- load: () => void;
410
- unload: () => void;
411
- staticLayout: (size: {
412
- width: number;
413
- height: number;
414
- }) => void;
415
- getManipulableFrame: () => {
416
- frame: HTMLIFrameElement;
417
- removeStyle: (id: string) => void;
418
- addStyle: (id: string, style: string, prepend?: boolean) => void;
419
- } | undefined;
420
- getReadingDirection: () => "ltr" | "rtl" | undefined;
421
- isUsingVerticalWriting: () => boolean;
422
- getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined;
423
- destroy: () => void;
424
- $: {
425
- unload$: import("rxjs").Observable<void>;
426
- unloaded$: import("rxjs").Observable<void>;
427
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
428
- ready$: import("rxjs").Observable<FontFaceSet | undefined>;
429
- isReady$: import("rxjs").Observable<boolean>;
430
- contentLayoutChange$: import("rxjs").Observable<{
431
- isFirstLayout: boolean;
432
- } | {
433
- isFirstLayout: boolean;
434
- }>;
435
- };
436
- };
437
- element: HTMLElement;
438
- getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
439
- getViewPortInformation: () => {
440
- computedScale: number;
441
- computedWidthScale: number;
442
- viewportDimensions: {
443
- width: number;
444
- height: number;
445
- };
446
- } | undefined;
447
- isImageType: () => boolean;
448
- isReady: () => boolean;
449
- destroy: () => void;
450
- isUsingVerticalWriting: () => boolean | undefined;
451
- getReadingDirection: () => "ltr" | "rtl" | undefined;
452
- manipulateSpineItem: (cb: (options: {
453
- container: HTMLElement;
454
- item: {
455
- id: string;
456
- href: string;
457
- renditionLayout: "reflowable" | "pre-paginated";
458
- progressionWeight: number;
459
- pageSpreadLeft: true | undefined;
460
- pageSpreadRight: true | undefined;
461
- mediaType?: string | undefined;
462
- };
463
- overlayElement: HTMLDivElement;
464
- } & ({
465
- frame: HTMLIFrameElement;
466
- removeStyle: (id: string) => void;
467
- addStyle: (id: string, style: string, prepend?: boolean) => void;
468
- } | {
469
- frame: undefined;
470
- removeStyle: (id: string) => void;
471
- addStyle: (id: string, style: string) => void;
472
- })) => boolean) => boolean;
473
- executeOnLayoutBeforeMeasurementHook: (options: {
474
- minimumWidth: number;
475
- }) => void;
463
+ getIsLoaded: () => boolean
464
+ getIsReady: () => boolean
465
+ getViewportDimensions: () =>
466
+ | {
467
+ width: number
468
+ height: number
469
+ }
470
+ | undefined
471
+ getFrameElement: () => HTMLIFrameElement | undefined
472
+ getHtmlFromResource: (response: Response) => Promise<string>
473
+ load: () => void
474
+ unload: () => void
475
+ staticLayout: (size: { width: number; height: number }) => void
476
+ getManipulableFrame: () =>
477
+ | {
478
+ frame: HTMLIFrameElement
479
+ removeStyle: (id: string) => void
480
+ addStyle: (id: string, style: string, prepend?: boolean) => void
481
+ }
482
+ | undefined
483
+ getReadingDirection: () => "ltr" | "rtl" | undefined
484
+ isUsingVerticalWriting: () => boolean
485
+ getWritingMode: () => "vertical-rl" | "horizontal-tb" | undefined
486
+ destroy: () => void
487
+ $: {
488
+ unload$: import("rxjs").Observable<void>
489
+ unloaded$: import("rxjs").Observable<void>
490
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>
491
+ ready$: import("rxjs").Observable<FontFaceSet | undefined>
492
+ isReady$: import("rxjs").Observable<boolean>
493
+ contentLayoutChange$: import("rxjs").Observable<
494
+ | {
495
+ isFirstLayout: boolean
496
+ }
497
+ | {
498
+ isFirstLayout: boolean
499
+ }
500
+ >
501
+ }
502
+ }
503
+ element: HTMLElement
504
+ getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined
505
+ getViewPortInformation: () =>
506
+ | {
507
+ computedScale: number
508
+ computedWidthScale: number
509
+ viewportDimensions: {
510
+ width: number
511
+ height: number
512
+ }
513
+ }
514
+ | undefined
515
+ isImageType: () => boolean
516
+ isReady: () => boolean
517
+ destroy: () => void
518
+ isUsingVerticalWriting: () => boolean | undefined
519
+ getReadingDirection: () => "ltr" | "rtl" | undefined
520
+ manipulateSpineItem: (
521
+ cb: (
522
+ options: {
523
+ container: HTMLElement
524
+ item: {
525
+ id: string
526
+ href: string
527
+ renditionLayout: "reflowable" | "pre-paginated"
528
+ progressionWeight: number
529
+ pageSpreadLeft: true | undefined
530
+ pageSpreadRight: true | undefined
531
+ mediaType?: string | undefined
532
+ }
533
+ overlayElement: HTMLDivElement
534
+ } & (
535
+ | {
536
+ frame: HTMLIFrameElement
537
+ removeStyle: (id: string) => void
538
+ addStyle: (id: string, style: string, prepend?: boolean) => void
539
+ }
540
+ | {
541
+ frame: undefined
542
+ removeStyle: (id: string) => void
543
+ addStyle: (id: string, style: string) => void
544
+ }
545
+ )
546
+ ) => boolean
547
+ ) => boolean
548
+ executeOnLayoutBeforeMeasurementHook: (options: { minimumWidth: number }) => void
476
549
  selectionTracker: {
477
- track: (frameToTrack: HTMLIFrameElement) => void;
478
- destroy: () => void;
479
- isSelecting: () => boolean;
480
- getSelection: () => Selection | undefined;
481
- $: import("rxjs").Observable<{
482
- event: "selectionchange";
483
- data: Selection | null;
484
- } | {
485
- event: "selectstart";
486
- data: Selection | null;
487
- } | {
488
- event: "selectend";
489
- data: Selection | null;
490
- }>;
491
- };
550
+ track: (frameToTrack: HTMLIFrameElement) => void
551
+ destroy: () => void
552
+ isSelecting: () => boolean
553
+ getSelection: () => Selection | undefined
554
+ $: import("rxjs").Observable<
555
+ | {
556
+ event: "selectionchange"
557
+ data: Selection | null
558
+ }
559
+ | {
560
+ event: "selectstart"
561
+ data: Selection | null
562
+ }
563
+ | {
564
+ event: "selectend"
565
+ data: Selection | null
566
+ }
567
+ >
568
+ }
492
569
  fingerTracker: {
493
- track: (frame: HTMLIFrameElement) => void;
494
- getFingerPositionInIframe(): {
495
- x: number | undefined;
496
- y: number | undefined;
497
- } | undefined;
498
- destroy: () => void;
499
- $: import("rxjs").Observable<{
500
- event: "fingermove";
570
+ track: (frame: HTMLIFrameElement) => void
571
+ getFingerPositionInIframe():
572
+ | {
573
+ x: number | undefined
574
+ y: number | undefined
575
+ }
576
+ | undefined
577
+ destroy: () => void
578
+ $: import("rxjs").Observable<
579
+ | {
580
+ event: "fingermove"
501
581
  data: {
502
- x: number;
503
- y: number;
504
- };
505
- } | {
506
- event: "fingerout";
507
- data: undefined;
508
- }>;
509
- };
510
- getDimensionsForReflowableContent: (isUsingVerticalWriting: boolean, minimumWidth: number) => {
511
- columnHeight: number;
512
- columnWidth: number;
513
- width: number;
514
- };
582
+ x: number
583
+ y: number
584
+ }
585
+ }
586
+ | {
587
+ event: "fingerout"
588
+ data: undefined
589
+ }
590
+ >
591
+ }
592
+ getDimensionsForReflowableContent: (
593
+ isUsingVerticalWriting: boolean,
594
+ minimumWidth: number
595
+ ) => {
596
+ columnHeight: number
597
+ columnWidth: number
598
+ width: number
599
+ }
515
600
  getDimensionsForPaginatedContent: () => {
516
- columnHeight: number;
517
- columnWidth: number;
518
- };
601
+ columnHeight: number
602
+ columnWidth: number
603
+ }
519
604
  $: {
520
- contentLayout$: import("rxjs").Observable<{
521
- isFirstLayout: boolean;
522
- isReady: boolean;
523
- }>;
524
- loaded$: import("rxjs").Observable<HTMLIFrameElement>;
525
- isReady$: import("rxjs").Observable<boolean>;
526
- };
527
- } | undefined;
528
- getFocusedSpineItemIndex: () => number | undefined;
529
- getSpineItemIndex: (spineItem: SpineItem | undefined) => number | undefined;
530
- destroy: () => void;
531
- $: {
532
- focus$: import("rxjs").Observable<{
533
- data: SpineItem;
534
- }>;
535
- layout$: import("rxjs").Observable<boolean>;
536
- itemIsReady$: import("rxjs").Observable<{
537
- item: {
538
- id: string;
539
- href: string;
540
- renditionLayout: "reflowable" | "pre-paginated";
541
- progressionWeight: number;
542
- pageSpreadLeft: true | undefined;
543
- pageSpreadRight: true | undefined;
544
- mediaType?: string | undefined;
545
- };
546
- isReady: boolean;
547
- }>;
548
- };
549
- };
550
- export type SpineItemManager = ReturnType<typeof createSpineItemManager>;
605
+ contentLayout$: import("rxjs").Observable<{
606
+ isFirstLayout: boolean
607
+ isReady: boolean
608
+ }>
609
+ loaded$: import("rxjs").Observable<HTMLIFrameElement>
610
+ isReady$: import("rxjs").Observable<boolean>
611
+ }
612
+ }
613
+ | undefined
614
+ getFocusedSpineItemIndex: () => number | undefined
615
+ getSpineItemIndex: (spineItem: SpineItem | undefined) => number | undefined
616
+ destroy: () => void
617
+ $: {
618
+ focus$: import("rxjs").Observable<{
619
+ data: SpineItem
620
+ }>
621
+ layout$: import("rxjs").Observable<boolean>
622
+ itemIsReady$: import("rxjs").Observable<{
623
+ item: {
624
+ id: string
625
+ href: string
626
+ renditionLayout: "reflowable" | "pre-paginated"
627
+ progressionWeight: number
628
+ pageSpreadLeft: true | undefined
629
+ pageSpreadRight: true | undefined
630
+ mediaType?: string | undefined
631
+ }
632
+ isReady: boolean
633
+ }>
634
+ }
635
+ }
636
+ export type SpineItemManager = ReturnType<typeof createSpineItemManager>