@prose-reader/core 1.28.0 → 1.30.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 (75) hide show
  1. package/dist/cfi.d.ts +71 -101
  2. package/dist/constants.d.ts +6 -6
  3. package/dist/context.d.ts +43 -38
  4. package/dist/createReaderWithEnhancer.d.ts +5286 -6297
  5. package/dist/enhancers/accessibility.d.ts +4785 -5685
  6. package/dist/enhancers/chrome.d.ts +4785 -5685
  7. package/dist/enhancers/fonts.d.ts +4798 -5699
  8. package/dist/enhancers/hotkeys.d.ts +4785 -5685
  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 +4792 -5696
  12. package/dist/enhancers/layoutEnhancer/types.d.ts +6 -6
  13. package/dist/enhancers/links.d.ts +4794 -5694
  14. package/dist/enhancers/loadingEnhancer.d.ts +4810 -5707
  15. package/dist/enhancers/media.d.ts +4785 -5685
  16. package/dist/enhancers/navigation.d.ts +4788 -5688
  17. package/dist/enhancers/pagination.d.ts +5165 -6133
  18. package/dist/enhancers/progression.d.ts +4798 -5709
  19. package/dist/enhancers/resources/index.d.ts +4785 -5685
  20. package/dist/enhancers/resources/indexedDB.d.ts +5 -5
  21. package/dist/enhancers/resources/resourcesManager.d.ts +5 -8
  22. package/dist/enhancers/theme.d.ts +4811 -5717
  23. package/dist/enhancers/types/enhancer.d.ts +4789 -5689
  24. package/dist/enhancers/utils.d.ts +4789 -5689
  25. package/dist/enhancers/webkit.d.ts +4785 -5685
  26. package/dist/enhancers/zoom/elementZoomer.d.ts +17 -25
  27. package/dist/enhancers/zoom/index.d.ts +4786 -5686
  28. package/dist/enhancers/zoom/types.d.ts +21 -26
  29. package/dist/enhancers/zoom/viewportZoomer.d.ts +17 -22
  30. package/dist/frames.d.ts +5 -7
  31. package/dist/index.d.ts +8 -8
  32. package/dist/pagination.d.ts +64 -73
  33. package/dist/prose.js +4851 -5294
  34. package/dist/prose.js.map +1 -1
  35. package/dist/prose.umd.cjs +4975 -5457
  36. package/dist/prose.umd.cjs.map +1 -1
  37. package/dist/reader.d.ts +4791 -5692
  38. package/dist/report.d.ts +25 -49
  39. package/dist/selection.d.ts +6 -9
  40. package/dist/settings.d.ts +36 -38
  41. package/dist/spine/cfiLocator.d.ts +359 -438
  42. package/dist/spine/createSpine.d.ts +29 -43
  43. package/dist/spine/eventsHelper.d.ts +10 -13
  44. package/dist/spine/locationResolver.d.ts +682 -820
  45. package/dist/spine/navigationResolver.d.ts +42 -51
  46. package/dist/spine/types.d.ts +8 -8
  47. package/dist/spineItem/commonSpineItem.d.ts +169 -205
  48. package/dist/spineItem/createSpineItem.d.ts +178 -213
  49. package/dist/spineItem/frameItem/createFrame$.d.ts +1 -3
  50. package/dist/spineItem/frameItem/createFrameManipulator.d.ts +4 -4
  51. package/dist/spineItem/frameItem/createHtmlPageFromResource.d.ts +2 -5
  52. package/dist/spineItem/frameItem/frameItem.d.ts +45 -54
  53. package/dist/spineItem/frameItem/loader.d.ts +26 -33
  54. package/dist/spineItem/locationResolver.d.ts +23 -35
  55. package/dist/spineItem/navigationResolver.d.ts +13 -11
  56. package/dist/spineItem/prePaginatedSpineItem.d.ts +177 -212
  57. package/dist/spineItem/reflowableSpineItem.d.ts +176 -204
  58. package/dist/spineItem/styles/getStyleForViewportDocument.d.ts +1 -1
  59. package/dist/spineItem/trackers.d.ts +31 -40
  60. package/dist/spineItem/types.d.ts +15 -12
  61. package/dist/spineItemManager.d.ts +532 -618
  62. package/dist/types/Hook.d.ts +69 -113
  63. package/dist/types/Spine.d.ts +37 -41
  64. package/dist/types/index.d.ts +8 -8
  65. package/dist/utils/dom.d.ts +18 -30
  66. package/dist/utils/layout.d.ts +7 -12
  67. package/dist/utils/manifest.d.ts +2 -2
  68. package/dist/utils/objects.d.ts +6 -12
  69. package/dist/utils/rxjs.d.ts +4 -9
  70. package/dist/viewportNavigator/manualViewportNavigator.d.ts +1367 -1624
  71. package/dist/viewportNavigator/panViewportNavigator.d.ts +214 -271
  72. package/dist/viewportNavigator/scrollViewportNavigator.d.ts +34 -37
  73. package/dist/viewportNavigator/types.d.ts +31 -36
  74. package/dist/viewportNavigator/viewportNavigator.d.ts +70 -100
  75. package/package.json +3 -3
@@ -1,636 +1,550 @@
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"
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";
16
13
  }) => {
17
- width: number
18
- height: number
19
- }
14
+ width: number;
15
+ height: number;
16
+ };
20
17
  item: {
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
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;
39
32
  getElementDimensions: () => {
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
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;
53
49
  spineItemFrame: {
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
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;
140
125
  selectionTracker: {
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
- }
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
+ };
160
141
  fingerTracker: {
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"
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";
172
150
  data: {
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
- }
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
+ };
191
164
  getDimensionsForPaginatedContent: () => {
192
- columnHeight: number
193
- columnWidth: number
194
- }
165
+ columnHeight: number;
166
+ columnWidth: number;
167
+ };
195
168
  $: {
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"
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;
218
+ 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;
294
+ 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
+ };
310
+ 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";
319
+ 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
+ };
333
+ getDimensionsForPaginatedContent: () => {
334
+ columnHeight: number;
335
+ columnWidth: number;
336
+ };
337
+ $: {
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";
425
364
  }) => {
426
- width: number
427
- height: number
428
- }
365
+ width: number;
366
+ height: number;
367
+ };
429
368
  item: {
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
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;
448
383
  getElementDimensions: () => {
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
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;
462
400
  spineItemFrame: {
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
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;
549
476
  selectionTracker: {
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
- }
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
+ };
569
492
  fingerTracker: {
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"
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";
581
501
  data: {
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
- }
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
+ };
600
515
  getDimensionsForPaginatedContent: () => {
601
- columnHeight: number
602
- columnWidth: number
603
- }
516
+ columnHeight: number;
517
+ columnWidth: number;
518
+ };
604
519
  $: {
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>
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>;