@prose-reader/core 1.116.0 → 1.118.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 (66) hide show
  1. package/dist/cfi/generate/generateCfiForSpineItemPage.d.ts +1 -1
  2. package/dist/cfi/generate/getItemAnchor.d.ts +1 -1
  3. package/dist/cfi/generate/getRootCfi.d.ts +1 -1
  4. package/dist/cfi/lookup/resolveCfi.d.ts +2 -236
  5. package/dist/context/Context.d.ts +1 -1
  6. package/dist/createReaderWithEnhancer.d.ts +11 -245
  7. package/dist/enhancers/events/normalizeEventForViewport.d.ts +2 -1
  8. package/dist/enhancers/events/translateFramePositionIntoPage.d.ts +12 -0
  9. package/dist/enhancers/html/enhancer.d.ts +2 -0
  10. package/dist/enhancers/html/renderer/HtmlRenderer.d.ts +26 -0
  11. package/dist/{spineItem/frame/loader → enhancers/html/renderer}/attachFrameSrc.d.ts +4 -2
  12. package/dist/{spineItem/frame → enhancers/html/renderer}/createHtmlPageFromResource.d.ts +1 -1
  13. package/dist/enhancers/html/renderer/prePaginated/renderPrePaginated.d.ts +31 -0
  14. package/dist/enhancers/html/renderer/reflowable/renderReflowable.d.ts +22 -0
  15. package/dist/enhancers/loading/constants.d.ts +2 -0
  16. package/dist/enhancers/loading/createLoadingElement.d.ts +7 -0
  17. package/dist/enhancers/{loadingEnhancer.d.ts → loading/loadingEnhancer.d.ts} +3 -3
  18. package/dist/enhancers/media/ImageRenderer.d.ts +15 -0
  19. package/dist/enhancers/media/media.d.ts +2 -0
  20. package/dist/enhancers/navigation/resolvers/getNavigationForLeftOrTopPage.d.ts +1 -1
  21. package/dist/enhancers/navigation/resolvers/getNavigationForRightOrBottomPage.d.ts +1 -1
  22. package/dist/enhancers/navigation/resolvers/getSpineItemPositionForLeftPage.d.ts +1 -1
  23. package/dist/enhancers/navigation/resolvers/getSpineItemPositionForRightPage.d.ts +1 -1
  24. package/dist/enhancers/progression.d.ts +1 -1
  25. package/dist/hooks/types.d.ts +19 -9
  26. package/dist/index.d.ts +2 -0
  27. package/dist/index.js +2314 -2181
  28. package/dist/index.js.map +1 -1
  29. package/dist/index.umd.cjs +3010 -2877
  30. package/dist/index.umd.cjs.map +1 -1
  31. package/dist/navigation/Navigator.d.ts +6 -6
  32. package/dist/navigation/resolvers/NavigationResolver.d.ts +1 -1
  33. package/dist/navigation/resolvers/getNavigationForSpineItemPage.d.ts +1 -1
  34. package/dist/navigation/resolvers/getNavigationFromSpineItemPosition.d.ts +1 -1
  35. package/dist/reader.d.ts +3 -237
  36. package/dist/settings/SettingsManager.d.ts +2 -1
  37. package/dist/settings/types.d.ts +9 -1
  38. package/dist/spine/SpineItemsManager.d.ts +6 -591
  39. package/dist/spine/SpineItemsObserver.d.ts +2 -1
  40. package/dist/spine/SpineLayout.d.ts +1 -1
  41. package/dist/spine/locator/SpineLocator.d.ts +5 -473
  42. package/dist/spine/locator/getAbsolutePageIndexFromPageIndex.d.ts +1 -1
  43. package/dist/spine/locator/getSpineInfoFromAbsolutePageIndex.d.ts +2 -118
  44. package/dist/spine/locator/getSpineItemFromPosition.d.ts +1 -118
  45. package/dist/spineItem/DocumentRenderer.d.ts +48 -0
  46. package/dist/spineItem/ResourceHandler.d.ts +15 -0
  47. package/dist/spineItem/SpineItem.d.ts +64 -0
  48. package/dist/spineItem/locationResolver.d.ts +1 -1
  49. package/dist/spineItem/navigationResolver.d.ts +1 -1
  50. package/dist/utils/frames.d.ts +15 -0
  51. package/package.json +3 -3
  52. package/dist/enhancers/media.d.ts +0 -2
  53. package/dist/spineItem/commonSpineItem.d.ts +0 -128
  54. package/dist/spineItem/createSpineItem.d.ts +0 -130
  55. package/dist/spineItem/frame/FrameItem.d.ts +0 -43
  56. package/dist/spineItem/frame/loader/configureFrame.d.ts +0 -9
  57. package/dist/spineItem/frame/loader/loadFrame.d.ts +0 -11
  58. package/dist/spineItem/frame/loader/loader.d.ts +0 -22
  59. package/dist/spineItem/frame/loader/unloadFrame.d.ts +0 -8
  60. package/dist/spineItem/frame/loader/waitForFrameLoad.d.ts +0 -2
  61. package/dist/spineItem/frame/loader/waitForFrameReady.d.ts +0 -2
  62. package/dist/spineItem/prePaginatedSpineItem.d.ts +0 -129
  63. package/dist/spineItem/reflowable/ReflowableSpineItems.d.ts +0 -128
  64. package/dist/spineItem/styles/getStyleForViewportDocument.d.ts +0 -1
  65. /package/dist/{spineItem/frame/loader → enhancers/html/renderer}/createFrameElement.d.ts +0 -0
  66. /package/dist/{spineItem → enhancers/html/renderer}/reflowable/styles.d.ts +0 -0
@@ -0,0 +1,22 @@
1
+ import { Manifest } from '@prose-reader/shared';
2
+ export declare const renderReflowable: ({ pageHeight: pageSizeHeight, pageWidth, frameElement, manifest, latestContentHeightWhenLoaded, minPageSpread, isRTL, blankPagePosition, isImageType, enableTouch, isUsingVerticalWriting, }: {
3
+ blankPagePosition: `before` | `after` | `none`;
4
+ pageWidth: number;
5
+ pageHeight: number;
6
+ frameElement: HTMLIFrameElement;
7
+ manifest?: Manifest;
8
+ minPageSpread: number;
9
+ latestContentHeightWhenLoaded: number | undefined;
10
+ isRTL: boolean;
11
+ isImageType: boolean;
12
+ enableTouch: boolean;
13
+ isUsingVerticalWriting: boolean;
14
+ }) => {
15
+ width: number;
16
+ height: number;
17
+ latestContentHeightWhenLoaded?: undefined;
18
+ } | {
19
+ width: number;
20
+ height: number;
21
+ latestContentHeightWhenLoaded: number | undefined;
22
+ };
@@ -0,0 +1,2 @@
1
+ export declare const HTML_PREFIX = "prose-reader-enhancer-loading";
2
+ export declare const CONTAINER_HTML_PREFIX = "prose-reader-enhancer-loading-container";
@@ -0,0 +1,7 @@
1
+ import { Manifest } from '@prose-reader/shared';
2
+ import { Context } from '../../context/Context';
3
+ export declare const createLoadingElementContainer: (containerElement: HTMLElement, context: Context) => HTMLDivElement;
4
+ export declare const defaultLoadingElementCreate: ({ container, item, }: {
5
+ container: HTMLElement;
6
+ item: Manifest[`spineItems`][number];
7
+ }) => HTMLElement;
@@ -1,7 +1,7 @@
1
1
  import { Observable } from 'rxjs';
2
- import { Manifest } from '..';
3
- import { EnhancerOutput } from './types/enhancer';
4
- import { themeEnhancer } from './theme';
2
+ import { Manifest } from '../..';
3
+ import { EnhancerOutput } from '../types/enhancer';
4
+ import { themeEnhancer } from '../theme';
5
5
  type Entries = {
6
6
  [key: string]: HTMLElement;
7
7
  };
@@ -0,0 +1,15 @@
1
+ import { DocumentRenderer } from '../../spineItem/DocumentRenderer';
2
+ export declare class ImageRenderer extends DocumentRenderer {
3
+ private getImageElement;
4
+ onCreateDocument(): import('rxjs').Observable<string>;
5
+ onLoadDocument(): import('rxjs').Observable<Event>;
6
+ onUnload(): import('rxjs').Observable<never>;
7
+ layout({ spreadPosition, }: {
8
+ minPageSpread: number;
9
+ blankPagePosition: `before` | `after` | `none`;
10
+ spreadPosition: `none` | `left` | `right`;
11
+ }): {
12
+ width: number;
13
+ height: number;
14
+ };
15
+ }
@@ -0,0 +1,2 @@
1
+ import { EnhancerOptions, EnhancerOutput, RootEnhancer } from '../types/enhancer';
2
+ export declare const mediaEnhancer: <InheritOptions extends EnhancerOptions<RootEnhancer>, InheritOutput extends EnhancerOutput<RootEnhancer>>(next: (options: InheritOptions) => InheritOutput) => (options: InheritOptions) => InheritOutput;
@@ -2,7 +2,7 @@ import { Context } from '../../../context/Context';
2
2
  import { NavigationResolver } from '../../../navigation/resolvers/NavigationResolver';
3
3
  import { ViewportPosition } from '../../../navigation/viewport/ViewportNavigator';
4
4
  import { SpineLocator } from '../../../spine/locator/SpineLocator';
5
- import { SpineItem } from '../../../spineItem/createSpineItem';
5
+ import { SpineItem } from '../../../spineItem/SpineItem';
6
6
  import { SpineItemsManager } from '../../../spine/SpineItemsManager';
7
7
  export declare const getNavigationForLeftOrTopPage: ({ position, spineItem, context, navigationResolver, spineItemsManager, spineLocator, computedPageTurnDirection, }: {
8
8
  position: ViewportPosition;
@@ -2,8 +2,8 @@ import { Context } from '../../../context/Context';
2
2
  import { NavigationResolver } from '../../../navigation/resolvers/NavigationResolver';
3
3
  import { ViewportPosition } from '../../../navigation/viewport/ViewportNavigator';
4
4
  import { SpineLocator } from '../../../spine/locator/SpineLocator';
5
- import { SpineItem } from '../../../spineItem/createSpineItem';
6
5
  import { SpineItemsManager } from '../../../spine/SpineItemsManager';
6
+ import { SpineItem } from '../../../spineItem/SpineItem';
7
7
  export declare const getNavigationForRightOrBottomPage: ({ position, spineItem, context, navigationResolver, spineItemsManager, spineLocator, computedPageTurnDirection, }: {
8
8
  position: ViewportPosition;
9
9
  spineItem: SpineItem;
@@ -1,5 +1,5 @@
1
- import { SpineItem } from '../../../spineItem/createSpineItem';
2
1
  import { SpineItemLocator } from '../../../spineItem/locationResolver';
2
+ import { SpineItem } from '../../../spineItem/SpineItem';
3
3
  import { SafeSpineItemPosition, UnsafeSpineItemPosition } from '../../../spineItem/types';
4
4
  export declare const getSpineItemPositionForLeftPage: ({ position, spineItem, pageHeight, pageWidth, spineItemLocator, }: {
5
5
  position: UnsafeSpineItemPosition;
@@ -1,5 +1,5 @@
1
- import { SpineItem } from '../../../spineItem/createSpineItem';
2
1
  import { SpineItemLocator } from '../../../spineItem/locationResolver';
2
+ import { SpineItem } from '../../../spineItem/SpineItem';
3
3
  import { SafeSpineItemPosition, UnsafeSpineItemPosition } from '../../../spineItem/types';
4
4
  export declare const getSpineItemPositionForRightPage: ({ position, spineItem, pageHeight, pageWidth, spineItemLocator, }: {
5
5
  position: UnsafeSpineItemPosition;
@@ -1,6 +1,6 @@
1
1
  import { Context } from '../context/Context';
2
- import { SpineItem } from '../spineItem/createSpineItem';
3
2
  import { Reader } from '../reader';
3
+ import { SpineItem } from '../spineItem/SpineItem';
4
4
  export declare const progressionEnhancer: <InheritOptions, InheritOutput extends Reader>(next: (options: InheritOptions) => InheritOutput) => (options: InheritOptions) => InheritOutput & {
5
5
  progression: {
6
6
  getPercentageEstimate: (context: Context, currentSpineIndex: number, numberOfPages: number, pageIndex: number, currentPosition: {
@@ -6,31 +6,41 @@ export interface Hook<Name, Params, Result> {
6
6
  runFn: (params: Params) => Result;
7
7
  }
8
8
  export type CoreHook = {
9
- name: `item.onLoad`;
9
+ name: `item.onDocumentCreated`;
10
+ runFn: (params: {
11
+ itemId: string;
12
+ layers: {
13
+ element: HTMLElement;
14
+ }[];
15
+ }) => void;
16
+ } | {
17
+ name: `item.onDocumentLoad`;
10
18
  runFn: (params: {
11
19
  destroy$: Observable<void>;
12
20
  destroy: (fn: UserDestroyFn) => void;
13
21
  itemId: string;
14
- frame: HTMLIFrameElement;
22
+ layers: {
23
+ element: HTMLElement;
24
+ }[];
15
25
  }) => Observable<void> | void;
16
26
  } | {
17
- name: "item.onAfterLayout";
27
+ name: "item.onBeforeLayout";
18
28
  runFn: (params: {
19
29
  blankPagePosition: "before" | "after" | "none";
20
30
  item: Manifest["spineItems"][number];
21
31
  minimumWidth: number;
22
32
  }) => void;
23
33
  } | {
24
- name: "item.onBeforeContainerCreated";
34
+ name: "item.onAfterLayout";
25
35
  runFn: (params: {
26
- element: HTMLElement;
36
+ blankPagePosition: "before" | "after" | "none";
37
+ item: Manifest["spineItems"][number];
38
+ minimumWidth: number;
27
39
  }) => void;
28
40
  } | {
29
- name: "item.onLayoutBeforeMeasurement";
41
+ name: "item.onBeforeContainerCreated";
30
42
  runFn: (params: {
31
- itemIndex: number;
32
- minimumWidth: number;
33
- isImageType: () => boolean | undefined;
43
+ element: HTMLElement;
34
44
  }) => void;
35
45
  } | {
36
46
  name: "onViewportOffsetAdjust";
package/dist/index.d.ts CHANGED
@@ -1,6 +1,8 @@
1
1
  import { createSelection } from './selection';
2
2
  import { createReaderWithEnhancers as createReader } from './createReaderWithEnhancer';
3
3
  export type { Manifest } from '@prose-reader/shared';
4
+ export { DocumentRenderer } from './spineItem/DocumentRenderer';
5
+ export { ResourceHandler } from './spineItem/ResourceHandler';
4
6
  export { HookManager } from './hooks/HookManager';
5
7
  export { SettingsManager } from './settings/SettingsManager';
6
8
  export type Reader = ReturnType<typeof createReader>;