@prose-reader/core 1.200.0 → 1.201.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 (40) hide show
  1. package/dist/context/Context.d.ts +5 -7
  2. package/dist/createReaderWithEnhancer.d.ts +21 -13
  3. package/dist/enhancers/navigation/resolvers/getNavigationForLeftOrTopPage.d.ts +1 -1
  4. package/dist/enhancers/navigation/resolvers/getNavigationForLeftSinglePage.d.ts +1 -1
  5. package/dist/enhancers/navigation/resolvers/getNavigationForRightOrBottomPage.d.ts +1 -1
  6. package/dist/enhancers/navigation/resolvers/getNavigationForRightSinglePage.d.ts +1 -1
  7. package/dist/hooks/types.d.ts +0 -5
  8. package/dist/index.js +2470 -2338
  9. package/dist/index.js.map +1 -1
  10. package/dist/index.umd.cjs +2467 -2336
  11. package/dist/index.umd.cjs.map +1 -1
  12. package/dist/navigation/InternalNavigator.d.ts +5 -4
  13. package/dist/navigation/Navigator.d.ts +19 -19
  14. package/dist/navigation/UserNavigator.d.ts +3 -3
  15. package/dist/navigation/consolidation/consolidateWithPagination.d.ts +1 -1
  16. package/dist/navigation/{viewport/ViewportNavigator.d.ts → controllers/ControlledNavigationController.d.ts} +5 -5
  17. package/dist/navigation/controllers/ScrollNavigationController.d.ts +26 -0
  18. package/dist/navigation/{viewport → controllers}/getScaledDownPosition.d.ts +1 -1
  19. package/dist/navigation/resolvers/NavigationResolver.d.ts +1 -1
  20. package/dist/navigation/resolvers/getAdjustedPositionForSpread.d.ts +1 -1
  21. package/dist/navigation/resolvers/getAdjustedPositionWithSafeEdge.d.ts +1 -1
  22. package/dist/navigation/resolvers/getNavigationForPosition.d.ts +1 -1
  23. package/dist/navigation/resolvers/getNavigationForSpineItemPage.d.ts +1 -1
  24. package/dist/navigation/resolvers/getNavigationForUrl.d.ts +1 -1
  25. package/dist/navigation/restoration/restorePosition.d.ts +1 -1
  26. package/dist/reader.d.ts +22 -13
  27. package/dist/spine/Spine.d.ts +8 -6
  28. package/dist/spine/SpineLayout.d.ts +3 -1
  29. package/dist/spine/layout/layoutItem.d.ts +3 -1
  30. package/dist/spine/locator/SpineLocator.d.ts +9 -3
  31. package/dist/spine/locator/getSpineItemFromPosition.d.ts +1 -1
  32. package/dist/spine/locator/getVisibleSpineItemsFromPosition.d.ts +4 -4
  33. package/dist/spineItem/SpineItemLayout.d.ts +3 -1
  34. package/dist/utils/ReactiveEntity.d.ts +8 -0
  35. package/dist/utils/rxjs.d.ts +1 -0
  36. package/dist/viewport/Viewport.d.ts +17 -0
  37. package/dist/viewport/translateSpinePositionToRelativeViewport.d.ts +1 -1
  38. package/package.json +3 -3
  39. package/dist/navigation/tests/SpineItemsManagerMock.d.ts +0 -30
  40. /package/dist/navigation/{viewport → controllers}/positions.d.ts +0 -0
@@ -1,9 +1,10 @@
1
1
  import { Manifest } from '@prose-reader/shared';
2
- import { BehaviorSubject, Subject } from 'rxjs';
3
- import { AbsoluteViewport, RelativeViewport } from '../viewport/types';
2
+ import { Subject } from 'rxjs';
3
+ import { ReactiveEntity } from '../utils/ReactiveEntity';
4
4
  import { BridgeEvent } from './BridgeEvent';
5
5
  export type ContextState = {
6
6
  containerElement?: HTMLElement;
7
+ rootElement?: HTMLElement;
7
8
  manifest?: Manifest;
8
9
  hasVerticalWriting?: boolean;
9
10
  isUsingSpreadMode?: boolean;
@@ -20,8 +21,7 @@ export type ContextState = {
20
21
  y: number;
21
22
  };
22
23
  };
23
- export declare class Context {
24
- _stateSubject: BehaviorSubject<ContextState>;
24
+ export declare class Context extends ReactiveEntity<ContextState> {
25
25
  bridgeEvent: BridgeEvent;
26
26
  destroy$: Subject<void>;
27
27
  state$: import('rxjs').Observable<ContextState>;
@@ -29,6 +29,7 @@ export declare class Context {
29
29
  containerElement$: import('rxjs').Observable<HTMLElement>;
30
30
  hasVerticalWriting$: import('rxjs').Observable<boolean>;
31
31
  isUsingSpreadMode$: import('rxjs').Observable<boolean | undefined>;
32
+ constructor();
32
33
  update(newState: Partial<ContextState>): void;
33
34
  isRTL: () => boolean;
34
35
  get state(): ContextState;
@@ -38,7 +39,4 @@ export declare class Context {
38
39
  width: number;
39
40
  height: number;
40
41
  };
41
- get absoluteViewport(): AbsoluteViewport;
42
- get relativeViewport(): RelativeViewport;
43
- destroy: () => void;
44
42
  }
@@ -50,15 +50,18 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
50
50
  } | undefined;
51
51
  };
52
52
  navigation: {
53
- viewportBusy$: import('rxjs').Observable<"busy">;
54
- getViewportPosition: () => import('./spine/types').SpinePosition;
53
+ destroy: () => void;
55
54
  getNavigation: () => import('./navigation/InternalNavigator').InternalNavigationEntry;
56
- getElement: () => HTMLElement;
55
+ internalNavigator: import('./navigation/InternalNavigator').InternalNavigator;
56
+ scrollNavigationController: import('./navigation/controllers/ScrollNavigationController').ScrollNavigationController;
57
+ controlledNavigationController: import('./navigation/controllers/ControlledNavigationController').ControlledNavigationController;
58
+ isLocked$: import('rxjs').Observable<boolean>;
59
+ viewportState$: import('rxjs').Observable<"free" | "busy">;
57
60
  navigate: (to: import('./navigation/UserNavigator').UserNavigationEntry) => void;
58
- lock: () => () => void;
61
+ lock(): () => void;
59
62
  navigationResolver: {
60
63
  getNavigationForUrl: (url: string | URL) => {
61
- position: import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition;
64
+ position: import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition;
62
65
  spineItemId: string;
63
66
  } | undefined;
64
67
  getNavigationForSpineItemPage: (params: Omit<Parameters<typeof import('./navigation/resolvers/getNavigationForSpineItemPage').getNavigationForSpineItemPage>[0], "context" | "spineItemsManager" | "spineItemNavigationResolver" | "spineLocator">) => import('./spine/types').SpinePosition;
@@ -66,13 +69,13 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
66
69
  spineItemPosition: import('./spineItem/types').SpineItemPosition;
67
70
  spineItem: import('.').SpineItem;
68
71
  }) => import('./spine/types').SpinePosition;
69
- getNavigationForCfi: (cfi: string) => import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition | undefined;
70
- getNavigationForLastPage: (spineItem: import('.').SpineItem) => import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition;
71
- getNavigationForSpineIndexOrId: (indexOrId: number | string | import('.').SpineItem) => import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition;
72
- getNavigationForPosition: (viewportPosition: import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
73
- getMostPredominantNavigationForPosition: (viewportPosition: import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition) => import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition;
74
- getAdjustedPositionWithSafeEdge: (position: import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
75
- isNavigationGoingForwardFrom: (to: import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition, from: import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition) => boolean;
72
+ getNavigationForCfi: (cfi: string) => import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition | undefined;
73
+ getNavigationForLastPage: (spineItem: import('.').SpineItem) => import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition;
74
+ getNavigationForSpineIndexOrId: (indexOrId: number | string | import('.').SpineItem) => import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition;
75
+ getNavigationForPosition: (viewportPosition: import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
76
+ getMostPredominantNavigationForPosition: (viewportPosition: import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition) => import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition;
77
+ getAdjustedPositionWithSafeEdge: (position: import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
78
+ isNavigationGoingForwardFrom: (to: import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition, from: import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition) => boolean;
76
79
  arePositionsDifferent: (a: {
77
80
  x: number;
78
81
  y: number;
@@ -80,13 +83,17 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
80
83
  x: number;
81
84
  y: number;
82
85
  }) => boolean;
83
- getAdjustedPositionForSpread: (position: import('./navigation/viewport/ViewportNavigator').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
86
+ getAdjustedPositionForSpread: (position: import('./navigation/controllers/ControlledNavigationController').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
84
87
  spineItemNavigator: {
85
88
  getNavigationForLastPage: (spineItem: import('.').SpineItem) => import('./spineItem/types').SpineItemPosition;
86
89
  getNavigationForPosition: (spineItem: import('.').SpineItem, position: import('./spineItem/types').SpineItemPosition) => import('./spineItem/types').SpineItemPosition;
87
90
  getNavigationFromNode: (spineItem: import('.').SpineItem, node: Node, offset: number) => import('./spineItem/types').SpineItemPosition;
88
91
  };
89
92
  };
93
+ navigation$: import('rxjs').Observable<{
94
+ position: import('./spine/types').SpinePosition;
95
+ id: symbol;
96
+ }>;
90
97
  };
91
98
  spineItemsObserver: import('./spine/SpineItemsObserver').SpineItemsObserver;
92
99
  spineItemsManager: import('./spine/SpineItemsManager').SpineItemsManager;
@@ -98,6 +105,7 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
98
105
  state$: import('rxjs').Observable<import('./pagination/Pagination').PaginationInfo>;
99
106
  };
100
107
  settings: import('./settings/SettingsInterface').SettingsInterface<NonNullable<import('./settings/types').CoreInputSettings>, NonNullable<import('./settings/types').CoreOutputSettings | undefined>>;
108
+ viewport: import('./viewport/Viewport').Viewport;
101
109
  element$: import('rxjs').Observable<HTMLElement>;
102
110
  viewportState$: import('rxjs').Observable<"free" | "busy">;
103
111
  viewportFree$: import('rxjs').Observable<"free">;
@@ -1,6 +1,6 @@
1
1
  import { Context } from '../../../context/Context';
2
+ import { DeprecatedViewportPosition } from '../../../navigation/controllers/ControlledNavigationController';
2
3
  import { NavigationResolver } from '../../../navigation/resolvers/NavigationResolver';
3
- import { DeprecatedViewportPosition } from '../../../navigation/viewport/ViewportNavigator';
4
4
  import { SpineItemsManager } from '../../../spine/SpineItemsManager';
5
5
  import { SpineLocator } from '../../../spine/locator/SpineLocator';
6
6
  import { SpinePosition } from '../../../spine/types';
@@ -1,6 +1,6 @@
1
1
  import { Context } from '../../../context/Context';
2
+ import { DeprecatedViewportPosition } from '../../../navigation/controllers/ControlledNavigationController';
2
3
  import { NavigationResolver } from '../../../navigation/resolvers/NavigationResolver';
3
- import { DeprecatedViewportPosition } from '../../../navigation/viewport/ViewportNavigator';
4
4
  import { SpineItemsManager } from '../../../spine/SpineItemsManager';
5
5
  import { SpineLocator } from '../../../spine/locator/SpineLocator';
6
6
  import { SpinePosition } from '../../../spine/types';
@@ -1,6 +1,6 @@
1
1
  import { Context } from '../../../context/Context';
2
+ import { DeprecatedViewportPosition } from '../../../navigation/controllers/ControlledNavigationController';
2
3
  import { NavigationResolver } from '../../../navigation/resolvers/NavigationResolver';
3
- import { DeprecatedViewportPosition } from '../../../navigation/viewport/ViewportNavigator';
4
4
  import { SpineItemsManager } from '../../../spine/SpineItemsManager';
5
5
  import { SpineLocator } from '../../../spine/locator/SpineLocator';
6
6
  import { SpinePosition } from '../../../spine/types';
@@ -1,6 +1,6 @@
1
1
  import { Context } from '../../../context/Context';
2
+ import { DeprecatedViewportPosition } from '../../../navigation/controllers/ControlledNavigationController';
2
3
  import { NavigationResolver } from '../../../navigation/resolvers/NavigationResolver';
3
- import { DeprecatedViewportPosition } from '../../../navigation/viewport/ViewportNavigator';
4
4
  import { SpineItemsManager } from '../../../spine/SpineItemsManager';
5
5
  import { SpineLocator } from '../../../spine/locator/SpineLocator';
6
6
  import { SpinePosition } from '../../../spine/types';
@@ -41,11 +41,6 @@ export type CoreHook = {
41
41
  } | {
42
42
  name: "onViewportOffsetAdjust";
43
43
  runFn: (params: undefined) => void;
44
- } | {
45
- name: `navigator.onBeforeContainerCreated`;
46
- runFn: (params: {
47
- element: HTMLElement;
48
- }) => void;
49
44
  };
50
45
  export type HookExecution<H extends Hook<any, any, any>> = {
51
46
  name: string;