@prose-reader/core 1.209.0 → 1.210.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.
- package/dist/cfi/generate.d.ts +22 -0
- package/dist/cfi/generate.test.d.ts +1 -0
- package/dist/cfi/index.d.ts +3 -0
- package/dist/cfi/{lookup/parseCfi.d.ts → parse.d.ts} +1 -0
- package/dist/cfi/parse.test.d.ts +1 -0
- package/dist/cfi/{lookup/resolveCfi.d.ts → resolve.d.ts} +4 -4
- package/dist/context/BridgeEvent.d.ts +2 -2
- package/dist/context/Context.d.ts +1 -1
- package/dist/createReaderWithEnhancer.d.ts +18 -18
- package/dist/enhancers/html/renderer/HtmlRenderer.d.ts +1 -1
- package/dist/enhancers/navigation/resolvers/getNavigationForLeftOrTopPage.d.ts +1 -1
- package/dist/enhancers/navigation/resolvers/getNavigationForLeftSinglePage.d.ts +1 -1
- package/dist/enhancers/navigation/resolvers/getNavigationForRightOrBottomPage.d.ts +1 -1
- package/dist/enhancers/navigation/resolvers/getNavigationForRightSinglePage.d.ts +1 -1
- package/dist/enhancers/pagination/pagination.d.ts +1 -1
- package/dist/enhancers/pagination/types.d.ts +1 -1
- package/dist/index.js +2753 -3236
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +49 -49
- package/dist/index.umd.cjs.map +1 -1
- package/dist/navigation/InternalNavigator.d.ts +4 -32
- package/dist/navigation/Navigator.d.ts +10 -10
- package/dist/navigation/consolidation/consolidateWithPagination.d.ts +2 -2
- package/dist/navigation/consolidation/mapUserNavigationToInternal.d.ts +1 -2
- package/dist/navigation/consolidation/withCfiPosition.d.ts +1 -1
- package/dist/navigation/consolidation/withDirection.d.ts +1 -1
- package/dist/navigation/consolidation/withFallbackPosition.d.ts +1 -1
- package/dist/navigation/consolidation/withPaginationInfo.d.ts +2 -2
- package/dist/navigation/consolidation/withSpineItem.d.ts +1 -1
- package/dist/navigation/consolidation/withSpineItemLayoutInfo.d.ts +1 -1
- package/dist/navigation/consolidation/withSpineItemPosition.d.ts +1 -1
- package/dist/navigation/consolidation/withUrlInfo.d.ts +1 -1
- package/dist/navigation/controllers/ControlledNavigationController.d.ts +0 -1
- package/dist/navigation/controllers/getScaledDownPosition.d.ts +1 -1
- package/dist/navigation/resolvers/NavigationResolver.d.ts +1 -1
- package/dist/navigation/resolvers/getAdjustedPositionForSpread.d.ts +1 -1
- package/dist/navigation/resolvers/getAdjustedPositionWithSafeEdge.d.ts +1 -1
- package/dist/navigation/resolvers/getNavigationForPosition.d.ts +1 -1
- package/dist/navigation/resolvers/getNavigationForSpineItemPage.d.ts +1 -1
- package/dist/navigation/resolvers/getNavigationForUrl.d.ts +1 -1
- package/dist/navigation/restoration/restoreNavigationForControlledPageTurnMode.d.ts +1 -1
- package/dist/navigation/restoration/restorePosition.d.ts +1 -2
- package/dist/navigation/restoration/withRestoredPosition.d.ts +1 -1
- package/dist/navigation/types.d.ts +29 -1
- package/dist/pagination/Pagination.d.ts +1 -11
- package/dist/pagination/index.d.ts +2 -0
- package/dist/pagination/types.d.ts +11 -0
- package/dist/reader.d.ts +13 -13
- package/dist/spine/loader/SpineItemsLoader.d.ts +1 -1
- package/dist/spine/locator/getSpineItemFromPosition.d.ts +1 -1
- package/dist/spine/locator/getVisibleSpineItemsFromPosition.d.ts +1 -1
- package/dist/spineItem/SpineItem.d.ts +1 -1
- package/dist/viewport/translateSpinePositionToRelativeViewport.d.ts +1 -1
- package/package.json +11 -3
- package/dist/cfi/CfiHandler.d.ts +0 -72
- package/dist/cfi/generate/generateCfi.d.ts +0 -2
- package/dist/cfi/generate/generateCfiForSpineItemPage.d.ts +0 -7
- package/dist/cfi/generate/generateCfiFromRange.d.ts +0 -5
- package/dist/cfi/generate/generateCfiFronSelection.d.ts +0 -8
- package/dist/cfi/generate/getItemAnchor.d.ts +0 -2
- package/dist/cfi/generate/getRootCfi.d.ts +0 -2
- package/dist/cfi/lookup/isRootCfi.d.ts +0 -1
|
@@ -3,40 +3,12 @@ import { Context } from '../context/Context';
|
|
|
3
3
|
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
4
4
|
import { Spine } from '../spine/Spine';
|
|
5
5
|
import { SpinePosition } from '../spine/types';
|
|
6
|
-
import { SpineItemPosition } from '../spineItem/types';
|
|
7
6
|
import { DestroyableClass } from '../utils/DestroyableClass';
|
|
8
7
|
import { Locker } from './Locker';
|
|
9
|
-
import { ControlledNavigationController
|
|
8
|
+
import { ControlledNavigationController } from './controllers/ControlledNavigationController';
|
|
10
9
|
import { ScrollNavigationController } from './controllers/ScrollNavigationController';
|
|
11
10
|
import { createNavigationResolver } from './resolvers/NavigationResolver';
|
|
12
|
-
import { UserNavigationEntry } from './types';
|
|
13
|
-
export type NavigationConsolidation = {
|
|
14
|
-
spineItemHeight?: number;
|
|
15
|
-
spineItemWidth?: number;
|
|
16
|
-
spineItemTop?: number;
|
|
17
|
-
spineItemLeft?: number;
|
|
18
|
-
spineItemIsReady?: boolean;
|
|
19
|
-
spineItemIsUsingVerticalWriting?: boolean;
|
|
20
|
-
paginationBeginCfi?: string;
|
|
21
|
-
positionInSpineItem?: SpineItemPosition;
|
|
22
|
-
directionFromLastNavigation?: "forward" | "backward" | "anchor";
|
|
23
|
-
};
|
|
24
|
-
export type InternalNavigationEntry = {
|
|
25
|
-
position: SpinePosition | DeprecatedViewportPosition;
|
|
26
|
-
id: symbol;
|
|
27
|
-
meta: {
|
|
28
|
-
triggeredBy: `user` | `restoration` | `pagination`;
|
|
29
|
-
};
|
|
30
|
-
type: `api` | `scroll`;
|
|
31
|
-
animation?: boolean | `turn` | `snap`;
|
|
32
|
-
url?: string | URL;
|
|
33
|
-
spineItem?: string | number;
|
|
34
|
-
cfi?: string;
|
|
35
|
-
} & NavigationConsolidation;
|
|
36
|
-
export type InternalNavigationInput = Omit<InternalNavigationEntry, "position"> & {
|
|
37
|
-
position?: SpinePosition | DeprecatedViewportPosition;
|
|
38
|
-
};
|
|
39
|
-
export type Navigation = Pick<InternalNavigationEntry, "position" | "id">;
|
|
11
|
+
import { InternalNavigationEntry, UserNavigationEntry } from './types';
|
|
40
12
|
export declare class InternalNavigator extends DestroyableClass {
|
|
41
13
|
protected settings: ReaderSettingsManager;
|
|
42
14
|
protected context: Context;
|
|
@@ -48,7 +20,7 @@ export declare class InternalNavigator extends DestroyableClass {
|
|
|
48
20
|
protected isUserLocked$: Observable<boolean>;
|
|
49
21
|
navigationSubject: BehaviorSubject<InternalNavigationEntry>;
|
|
50
22
|
navigated$: Observable<{
|
|
51
|
-
position: SpinePosition | DeprecatedViewportPosition;
|
|
23
|
+
position: SpinePosition | import('./types').DeprecatedViewportPosition;
|
|
52
24
|
id: symbol;
|
|
53
25
|
meta: {
|
|
54
26
|
triggeredBy: `user` | `restoration` | `pagination`;
|
|
@@ -58,7 +30,7 @@ export declare class InternalNavigator extends DestroyableClass {
|
|
|
58
30
|
url?: string | URL;
|
|
59
31
|
spineItem?: string | number;
|
|
60
32
|
cfi?: string;
|
|
61
|
-
} & NavigationConsolidation>;
|
|
33
|
+
} & import('./types').NavigationConsolidation>;
|
|
62
34
|
navigation$: Observable<{
|
|
63
35
|
position: SpinePosition;
|
|
64
36
|
id: symbol;
|
|
@@ -18,7 +18,7 @@ export declare const createNavigator: ({ spineItemsManager, context, hookManager
|
|
|
18
18
|
viewport: Viewport;
|
|
19
19
|
}) => {
|
|
20
20
|
destroy: () => void;
|
|
21
|
-
getNavigation: () => import('./
|
|
21
|
+
getNavigation: () => import('./types').InternalNavigationEntry;
|
|
22
22
|
internalNavigator: InternalNavigator;
|
|
23
23
|
scrollNavigationController: ScrollNavigationController;
|
|
24
24
|
controlledNavigationController: ControlledNavigationController;
|
|
@@ -28,7 +28,7 @@ export declare const createNavigator: ({ spineItemsManager, context, hookManager
|
|
|
28
28
|
lock(): () => void;
|
|
29
29
|
navigationResolver: {
|
|
30
30
|
getNavigationForUrl: (url: string | URL) => {
|
|
31
|
-
position: import('./
|
|
31
|
+
position: import('./types').DeprecatedViewportPosition;
|
|
32
32
|
spineItemId: string;
|
|
33
33
|
} | undefined;
|
|
34
34
|
getNavigationForSpineItemPage: (params: Omit<Parameters<typeof import('./resolvers/getNavigationForSpineItemPage').getNavigationForSpineItemPage>[0], "context" | "spineItemsManager" | "spineItemNavigationResolver" | "spineLocator">) => import('../spine/types').SpinePosition;
|
|
@@ -36,13 +36,13 @@ export declare const createNavigator: ({ spineItemsManager, context, hookManager
|
|
|
36
36
|
spineItemPosition: import('../spineItem/types').SpineItemPosition;
|
|
37
37
|
spineItem: import('..').SpineItem;
|
|
38
38
|
}) => import('../spine/types').SpinePosition;
|
|
39
|
-
getNavigationForCfi: (cfi: string) => import('./
|
|
40
|
-
getNavigationForLastPage: (spineItem: import('..').SpineItem) => import('./
|
|
41
|
-
getNavigationForSpineIndexOrId: (indexOrId: number | string | import('..').SpineItem) => import('./
|
|
42
|
-
getNavigationForPosition: (viewportPosition: import('./
|
|
43
|
-
getMostPredominantNavigationForPosition: (viewportPosition: import('./
|
|
44
|
-
getAdjustedPositionWithSafeEdge: (position: import('./
|
|
45
|
-
isNavigationGoingForwardFrom: (to: import('./
|
|
39
|
+
getNavigationForCfi: (cfi: string) => import('./types').DeprecatedViewportPosition | undefined;
|
|
40
|
+
getNavigationForLastPage: (spineItem: import('..').SpineItem) => import('./types').DeprecatedViewportPosition;
|
|
41
|
+
getNavigationForSpineIndexOrId: (indexOrId: number | string | import('..').SpineItem) => import('./types').DeprecatedViewportPosition;
|
|
42
|
+
getNavigationForPosition: (viewportPosition: import('./types').DeprecatedViewportPosition | import('../spine/types').SpinePosition) => import('../spine/types').SpinePosition;
|
|
43
|
+
getMostPredominantNavigationForPosition: (viewportPosition: import('./types').DeprecatedViewportPosition) => import('./types').DeprecatedViewportPosition;
|
|
44
|
+
getAdjustedPositionWithSafeEdge: (position: import('./types').DeprecatedViewportPosition | import('../spine/types').SpinePosition) => import('../spine/types').SpinePosition;
|
|
45
|
+
isNavigationGoingForwardFrom: (to: import('./types').DeprecatedViewportPosition, from: import('./types').DeprecatedViewportPosition) => boolean;
|
|
46
46
|
arePositionsDifferent: (a: {
|
|
47
47
|
x: number;
|
|
48
48
|
y: number;
|
|
@@ -50,7 +50,7 @@ export declare const createNavigator: ({ spineItemsManager, context, hookManager
|
|
|
50
50
|
x: number;
|
|
51
51
|
y: number;
|
|
52
52
|
}) => boolean;
|
|
53
|
-
getAdjustedPositionForSpread: (position: import('./
|
|
53
|
+
getAdjustedPositionForSpread: (position: import('./types').DeprecatedViewportPosition | import('../spine/types').SpinePosition) => import('../spine/types').SpinePosition;
|
|
54
54
|
spineItemNavigator: {
|
|
55
55
|
getNavigationForLastPage: (spineItem: import('..').SpineItem) => import('../spineItem/types').SpineItemPosition;
|
|
56
56
|
getNavigationForPosition: (spineItem: import('..').SpineItem, position: import('../spineItem/types').SpineItemPosition) => import('../spineItem/types').SpineItemPosition;
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { Context } from '../../context/Context';
|
|
3
|
-
import { InternalNavigationEntry } from '../InternalNavigator';
|
|
4
3
|
import { Spine } from '../../spine/Spine';
|
|
4
|
+
import { InternalNavigationEntry } from '../types';
|
|
5
5
|
export declare const consolidateWithPagination: (context: Context, navigation$: Observable<InternalNavigationEntry>, spine: Spine) => Observable<{
|
|
6
6
|
meta: {
|
|
7
7
|
triggeredBy: "pagination";
|
|
8
8
|
};
|
|
9
|
-
position: import('../../spine/types').SpinePosition | import('../
|
|
9
|
+
position: import('../../spine/types').SpinePosition | import('../types').DeprecatedViewportPosition;
|
|
10
10
|
id: symbol;
|
|
11
11
|
type: `api` | `scroll`;
|
|
12
12
|
animation?: boolean | `turn` | `snap`;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { InternalNavigationEntry, InternalNavigationInput } from '../
|
|
3
|
-
import { UserNavigationEntry } from '../types';
|
|
2
|
+
import { InternalNavigationEntry, InternalNavigationInput, UserNavigationEntry } from '../types';
|
|
4
3
|
export declare const mapUserNavigationToInternal: (stream: Observable<[UserNavigationEntry, InternalNavigationEntry]>) => Observable<{
|
|
5
4
|
navigation: InternalNavigationInput;
|
|
6
5
|
previousNavigation: InternalNavigationEntry;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { InternalNavigationInput } from '../InternalNavigator';
|
|
3
2
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
3
|
+
import { InternalNavigationInput } from '../types';
|
|
4
4
|
type Navigation = {
|
|
5
5
|
navigation: InternalNavigationInput;
|
|
6
6
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { InternalNavigationEntry, InternalNavigationInput } from '../InternalNavigator';
|
|
3
2
|
import { Context } from '../../context/Context';
|
|
4
3
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
4
|
+
import { InternalNavigationEntry, InternalNavigationInput } from '../types';
|
|
5
5
|
type Navigation = {
|
|
6
6
|
navigation: InternalNavigationInput;
|
|
7
7
|
previousNavigation: InternalNavigationEntry;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
3
|
-
import { InternalNavigationEntry, InternalNavigationInput } from '../InternalNavigator';
|
|
4
3
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
4
|
+
import { InternalNavigationEntry, InternalNavigationInput } from '../types';
|
|
5
5
|
export declare const withFallbackPosition: ({ spineItemsManager, navigationResolver, }: {
|
|
6
6
|
spineItemsManager: SpineItemsManager;
|
|
7
7
|
navigationResolver: NavigationResolver;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { PaginationInfo } from '../../pagination';
|
|
3
|
+
import { InternalNavigationEntry } from '../types';
|
|
4
4
|
type Navigation = {
|
|
5
5
|
navigation: InternalNavigationEntry;
|
|
6
6
|
pagination: PaginationInfo;
|
|
@@ -3,8 +3,8 @@ import { Context } from '../../context/Context';
|
|
|
3
3
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
4
4
|
import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
5
5
|
import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
6
|
-
import { InternalNavigationInput } from '../InternalNavigator';
|
|
7
6
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
7
|
+
import { InternalNavigationInput } from '../types';
|
|
8
8
|
type Navigation = {
|
|
9
9
|
navigation: InternalNavigationInput;
|
|
10
10
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
2
|
import { Spine } from '../../spine/Spine';
|
|
3
|
-
import { InternalNavigationEntry, InternalNavigationInput } from '../
|
|
3
|
+
import { InternalNavigationEntry, InternalNavigationInput } from '../types';
|
|
4
4
|
type Navigation = {
|
|
5
5
|
navigation: InternalNavigationInput | InternalNavigationEntry;
|
|
6
6
|
};
|
|
@@ -2,8 +2,8 @@ import { Observable } from 'rxjs';
|
|
|
2
2
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
3
3
|
import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
4
4
|
import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
5
|
-
import { InternalNavigationEntry, InternalNavigationInput } from '../InternalNavigator';
|
|
6
5
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
6
|
+
import { InternalNavigationEntry, InternalNavigationInput } from '../types';
|
|
7
7
|
type Navigation = {
|
|
8
8
|
navigation: InternalNavigationEntry | InternalNavigationInput;
|
|
9
9
|
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Observable } from 'rxjs';
|
|
2
|
-
import { InternalNavigationInput } from '../InternalNavigator';
|
|
3
2
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
3
|
+
import { InternalNavigationInput } from '../types';
|
|
4
4
|
type Navigation = {
|
|
5
5
|
navigation: InternalNavigationInput;
|
|
6
6
|
};
|
|
@@ -6,7 +6,6 @@ import { Spine } from '../../spine/Spine';
|
|
|
6
6
|
import { SpinePosition } from '../../spine/types';
|
|
7
7
|
import { DestroyableClass } from '../../utils/DestroyableClass';
|
|
8
8
|
import { Viewport } from '../../viewport/Viewport';
|
|
9
|
-
export type DeprecatedViewportPosition = SpinePosition;
|
|
10
9
|
export type ViewportNavigationEntry = {
|
|
11
10
|
position: SpinePosition;
|
|
12
11
|
animation?: boolean | "turn" | "snap";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SpinePosition } from '../../spine/types';
|
|
2
|
-
import { DeprecatedViewportPosition } from '
|
|
2
|
+
import { DeprecatedViewportPosition } from '../types';
|
|
3
3
|
export declare const getScaledDownPosition: ({ position: { x, y }, spineElement, element, }: {
|
|
4
4
|
position: DeprecatedViewportPosition;
|
|
5
5
|
spineElement: HTMLElement;
|
|
@@ -6,7 +6,7 @@ import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
|
6
6
|
import { SpinePosition } from '../../spine/types';
|
|
7
7
|
import { SpineItem } from '../../spineItem/SpineItem';
|
|
8
8
|
import { SpineItemPosition } from '../../spineItem/types';
|
|
9
|
-
import { DeprecatedViewportPosition } from '../
|
|
9
|
+
import { DeprecatedViewportPosition } from '../types';
|
|
10
10
|
import { getNavigationForSpineItemPage } from './getNavigationForSpineItemPage';
|
|
11
11
|
export declare const NAMESPACE = "spineNavigator";
|
|
12
12
|
export type NavigationResolver = ReturnType<typeof createNavigationResolver>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SpinePosition } from '../../spine/types';
|
|
2
|
-
import { DeprecatedViewportPosition } from '../
|
|
2
|
+
import { DeprecatedViewportPosition } from '../types';
|
|
3
3
|
export declare const getAdjustedPositionForSpread: ({ position: { x, y }, pageSizeWidth, visibleAreaRectWidth, }: {
|
|
4
4
|
position: DeprecatedViewportPosition | SpinePosition;
|
|
5
5
|
pageSizeWidth: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
2
2
|
import { SpineLayout } from '../../spine/SpineLayout';
|
|
3
3
|
import { SpinePosition } from '../../spine/types';
|
|
4
|
-
import { DeprecatedViewportPosition } from '../
|
|
4
|
+
import { DeprecatedViewportPosition } from '../types';
|
|
5
5
|
export declare const NAMESPACE = "spineNavigator";
|
|
6
6
|
export declare const getAdjustedPositionWithSafeEdge: ({ position, isRTL, pageSizeHeight, spineItemsManager, visibleAreaRectWidth, spineLayout, }: {
|
|
7
7
|
position: DeprecatedViewportPosition | SpinePosition;
|
|
@@ -2,7 +2,7 @@ import { Context } from '../../context/Context';
|
|
|
2
2
|
import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
3
3
|
import { SpinePosition } from '../../spine/types';
|
|
4
4
|
import { SpineItemNavigationResolver } from '../../spineItem/navigationResolver';
|
|
5
|
-
import { DeprecatedViewportPosition } from '../
|
|
5
|
+
import { DeprecatedViewportPosition } from '../types';
|
|
6
6
|
export declare const getNavigationForPosition: ({ viewportPosition, spineLocator, context, spineItemNavigationResolver, }: {
|
|
7
7
|
viewportPosition: DeprecatedViewportPosition | SpinePosition;
|
|
8
8
|
spineLocator: SpineLocator;
|
|
@@ -3,7 +3,7 @@ import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
|
3
3
|
import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
4
4
|
import { SpineItem } from '../../spineItem/SpineItem';
|
|
5
5
|
import { SpineItemNavigationResolver } from '../../spineItem/navigationResolver';
|
|
6
|
-
import { DeprecatedViewportPosition } from '../
|
|
6
|
+
import { DeprecatedViewportPosition } from '../types';
|
|
7
7
|
export declare const getNavigationForSpineItemPage: ({ pageIndex, spineItemsManager, spineItemId, context, spineLocator, spineItemNavigationResolver, }: {
|
|
8
8
|
pageIndex: number;
|
|
9
9
|
spineItemId: SpineItem | number | string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Context } from '../../context/Context';
|
|
2
2
|
import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
3
3
|
import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
4
|
-
import { DeprecatedViewportPosition } from '../
|
|
4
|
+
import { DeprecatedViewportPosition } from '../types';
|
|
5
5
|
export declare const getNavigationForUrl: ({ context, spineItemsManager, spineLocator, url, pageSizeWidth, visibleAreaRectWidth, }: {
|
|
6
6
|
url: string | URL;
|
|
7
7
|
spineItemsManager: SpineItemsManager;
|
|
@@ -3,8 +3,8 @@ import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
|
3
3
|
import { SpineLayout } from '../../spine/SpineLayout';
|
|
4
4
|
import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
5
5
|
import { SpinePosition } from '../../spine/types';
|
|
6
|
-
import { InternalNavigationEntry } from '../InternalNavigator';
|
|
7
6
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
7
|
+
import { InternalNavigationEntry } from '../types';
|
|
8
8
|
export declare const restoreNavigationForControlledPageTurnMode: ({ spineLocator, navigation, navigationResolver, spineItemsManager, spineLayout, }: {
|
|
9
9
|
navigation: InternalNavigationEntry;
|
|
10
10
|
spineLocator: SpineLocator;
|
|
@@ -6,9 +6,8 @@ import { SpineLayout } from '../../spine/SpineLayout';
|
|
|
6
6
|
import { SpineLocator } from '../../spine/locator/SpineLocator';
|
|
7
7
|
import { SpinePosition } from '../../spine/types';
|
|
8
8
|
import { SpineItemLocator } from '../../spineItem/locationResolver';
|
|
9
|
-
import { InternalNavigationEntry } from '../InternalNavigator';
|
|
10
|
-
import { DeprecatedViewportPosition } from '../controllers/ControlledNavigationController';
|
|
11
9
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
10
|
+
import { DeprecatedViewportPosition, InternalNavigationEntry } from '../types';
|
|
12
11
|
export declare const restorePosition: ({ navigation, spineItemsManager, settings, spineLocator, navigationResolver, spineLayout, }: {
|
|
13
12
|
spineLocator: SpineLocator;
|
|
14
13
|
settings: ReaderSettingsManager;
|
|
@@ -2,8 +2,8 @@ import { Observable } from 'rxjs';
|
|
|
2
2
|
import { Context } from '../../context/Context';
|
|
3
3
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
4
4
|
import { Spine } from '../../spine/Spine';
|
|
5
|
-
import { InternalNavigationEntry } from '../InternalNavigator';
|
|
6
5
|
import { NavigationResolver } from '../resolvers/NavigationResolver';
|
|
6
|
+
import { InternalNavigationEntry } from '../types';
|
|
7
7
|
type Navigation = {
|
|
8
8
|
navigation: InternalNavigationEntry;
|
|
9
9
|
};
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { SpinePosition } from '../spine/types';
|
|
2
|
-
import {
|
|
2
|
+
import { SpineItemPosition } from '../spineItem/types';
|
|
3
|
+
export type DeprecatedViewportPosition = SpinePosition;
|
|
3
4
|
export type UserNavigationEntry = {
|
|
4
5
|
position?: DeprecatedViewportPosition | SpinePosition;
|
|
5
6
|
spineItem?: number | string;
|
|
@@ -9,3 +10,30 @@ export type UserNavigationEntry = {
|
|
|
9
10
|
type?: "api" | "scroll";
|
|
10
11
|
direction?: "left" | "right" | "top" | "bottom";
|
|
11
12
|
};
|
|
13
|
+
export type NavigationConsolidation = {
|
|
14
|
+
spineItemHeight?: number;
|
|
15
|
+
spineItemWidth?: number;
|
|
16
|
+
spineItemTop?: number;
|
|
17
|
+
spineItemLeft?: number;
|
|
18
|
+
spineItemIsReady?: boolean;
|
|
19
|
+
spineItemIsUsingVerticalWriting?: boolean;
|
|
20
|
+
paginationBeginCfi?: string;
|
|
21
|
+
positionInSpineItem?: SpineItemPosition;
|
|
22
|
+
directionFromLastNavigation?: "forward" | "backward" | "anchor";
|
|
23
|
+
};
|
|
24
|
+
export type InternalNavigationEntry = {
|
|
25
|
+
position: SpinePosition | DeprecatedViewportPosition;
|
|
26
|
+
id: symbol;
|
|
27
|
+
meta: {
|
|
28
|
+
triggeredBy: `user` | `restoration` | `pagination`;
|
|
29
|
+
};
|
|
30
|
+
type: `api` | `scroll`;
|
|
31
|
+
animation?: boolean | `turn` | `snap`;
|
|
32
|
+
url?: string | URL;
|
|
33
|
+
spineItem?: string | number;
|
|
34
|
+
cfi?: string;
|
|
35
|
+
} & NavigationConsolidation;
|
|
36
|
+
export type InternalNavigationInput = Omit<InternalNavigationEntry, "position"> & {
|
|
37
|
+
position?: SpinePosition | DeprecatedViewportPosition;
|
|
38
|
+
};
|
|
39
|
+
export type Navigation = Pick<InternalNavigationEntry, "position" | "id">;
|
|
@@ -1,17 +1,7 @@
|
|
|
1
1
|
import { Context } from '../context/Context';
|
|
2
2
|
import { SpineItemsManager } from '../spine/SpineItemsManager';
|
|
3
3
|
import { ReactiveEntity } from '../utils/ReactiveEntity';
|
|
4
|
-
|
|
5
|
-
beginPageIndexInSpineItem: number | undefined;
|
|
6
|
-
beginNumberOfPagesInSpineItem: number;
|
|
7
|
-
beginCfi: string | undefined;
|
|
8
|
-
beginSpineItemIndex: number | undefined;
|
|
9
|
-
endPageIndexInSpineItem: number | undefined;
|
|
10
|
-
endNumberOfPagesInSpineItem: number;
|
|
11
|
-
endCfi: string | undefined;
|
|
12
|
-
endSpineItemIndex: number | undefined;
|
|
13
|
-
navigationId?: symbol;
|
|
14
|
-
};
|
|
4
|
+
import { PaginationInfo } from './types';
|
|
15
5
|
export declare class Pagination extends ReactiveEntity<PaginationInfo> {
|
|
16
6
|
protected context: Context;
|
|
17
7
|
protected spineItemsManager: SpineItemsManager;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export type PaginationInfo = {
|
|
2
|
+
beginPageIndexInSpineItem: number | undefined;
|
|
3
|
+
beginNumberOfPagesInSpineItem: number;
|
|
4
|
+
beginCfi: string | undefined;
|
|
5
|
+
beginSpineItemIndex: number | undefined;
|
|
6
|
+
endPageIndexInSpineItem: number | undefined;
|
|
7
|
+
endNumberOfPagesInSpineItem: number;
|
|
8
|
+
endCfi: string | undefined;
|
|
9
|
+
endSpineItemIndex: number | undefined;
|
|
10
|
+
navigationId?: symbol;
|
|
11
|
+
};
|
package/dist/reader.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Observable, ObservedValueOf, Subject } from 'rxjs';
|
|
2
|
-
import { resolveCfi } from './cfi/
|
|
2
|
+
import { resolveCfi } from './cfi/resolve';
|
|
3
3
|
import { Context, ContextState } from './context/Context';
|
|
4
4
|
import { Features } from './features/Features';
|
|
5
5
|
import { HookManager } from './hooks/HookManager';
|
|
@@ -40,7 +40,7 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
|
|
|
40
40
|
spineItem: SpineItem;
|
|
41
41
|
}) => string;
|
|
42
42
|
resolveCfi: (params: Omit<Parameters<typeof resolveCfi>[0], "spineItemsManager">) => {
|
|
43
|
-
node: Node | undefined;
|
|
43
|
+
node: Node | null | undefined;
|
|
44
44
|
offset: number | undefined;
|
|
45
45
|
spineItem: SpineItem;
|
|
46
46
|
} | {
|
|
@@ -51,7 +51,7 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
|
|
|
51
51
|
};
|
|
52
52
|
navigation: {
|
|
53
53
|
destroy: () => void;
|
|
54
|
-
getNavigation: () => import('./navigation/
|
|
54
|
+
getNavigation: () => import('./navigation/types').InternalNavigationEntry;
|
|
55
55
|
internalNavigator: import('./navigation/InternalNavigator').InternalNavigator;
|
|
56
56
|
scrollNavigationController: import('./navigation/controllers/ScrollNavigationController').ScrollNavigationController;
|
|
57
57
|
controlledNavigationController: import('./navigation/controllers/ControlledNavigationController').ControlledNavigationController;
|
|
@@ -61,7 +61,7 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
|
|
|
61
61
|
lock(): () => void;
|
|
62
62
|
navigationResolver: {
|
|
63
63
|
getNavigationForUrl: (url: string | URL) => {
|
|
64
|
-
position: import('./navigation/
|
|
64
|
+
position: import('./navigation/types').DeprecatedViewportPosition;
|
|
65
65
|
spineItemId: string;
|
|
66
66
|
} | undefined;
|
|
67
67
|
getNavigationForSpineItemPage: (params: Omit<Parameters<typeof import('./navigation/resolvers/getNavigationForSpineItemPage').getNavigationForSpineItemPage>[0], "context" | "spineItemsManager" | "spineItemNavigationResolver" | "spineLocator">) => import('./spine/types').SpinePosition;
|
|
@@ -69,13 +69,13 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
|
|
|
69
69
|
spineItemPosition: import('./spineItem/types').SpineItemPosition;
|
|
70
70
|
spineItem: SpineItem;
|
|
71
71
|
}) => import('./spine/types').SpinePosition;
|
|
72
|
-
getNavigationForCfi: (cfi: string) => import('./navigation/
|
|
73
|
-
getNavigationForLastPage: (spineItem: SpineItem) => import('./navigation/
|
|
74
|
-
getNavigationForSpineIndexOrId: (indexOrId: number | string | SpineItem) => import('./navigation/
|
|
75
|
-
getNavigationForPosition: (viewportPosition: import('./navigation/
|
|
76
|
-
getMostPredominantNavigationForPosition: (viewportPosition: import('./navigation/
|
|
77
|
-
getAdjustedPositionWithSafeEdge: (position: import('./navigation/
|
|
78
|
-
isNavigationGoingForwardFrom: (to: import('./navigation/
|
|
72
|
+
getNavigationForCfi: (cfi: string) => import('./navigation/types').DeprecatedViewportPosition | undefined;
|
|
73
|
+
getNavigationForLastPage: (spineItem: SpineItem) => import('./navigation/types').DeprecatedViewportPosition;
|
|
74
|
+
getNavigationForSpineIndexOrId: (indexOrId: number | string | SpineItem) => import('./navigation/types').DeprecatedViewportPosition;
|
|
75
|
+
getNavigationForPosition: (viewportPosition: import('./navigation/types').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
|
|
76
|
+
getMostPredominantNavigationForPosition: (viewportPosition: import('./navigation/types').DeprecatedViewportPosition) => import('./navigation/types').DeprecatedViewportPosition;
|
|
77
|
+
getAdjustedPositionWithSafeEdge: (position: import('./navigation/types').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
|
|
78
|
+
isNavigationGoingForwardFrom: (to: import('./navigation/types').DeprecatedViewportPosition, from: import('./navigation/types').DeprecatedViewportPosition) => boolean;
|
|
79
79
|
arePositionsDifferent: (a: {
|
|
80
80
|
x: number;
|
|
81
81
|
y: number;
|
|
@@ -83,7 +83,7 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
|
|
|
83
83
|
x: number;
|
|
84
84
|
y: number;
|
|
85
85
|
}) => boolean;
|
|
86
|
-
getAdjustedPositionForSpread: (position: import('./navigation/
|
|
86
|
+
getAdjustedPositionForSpread: (position: import('./navigation/types').DeprecatedViewportPosition | import('./spine/types').SpinePosition) => import('./spine/types').SpinePosition;
|
|
87
87
|
spineItemNavigator: {
|
|
88
88
|
getNavigationForLastPage: (spineItem: SpineItem) => import('./spineItem/types').SpineItemPosition;
|
|
89
89
|
getNavigationForPosition: (spineItem: SpineItem, position: import('./spineItem/types').SpineItemPosition) => import('./spineItem/types').SpineItemPosition;
|
|
@@ -101,7 +101,7 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
|
|
|
101
101
|
load: (options: Required<Pick<ContextState, "manifest" | "containerElement">>) => void;
|
|
102
102
|
destroy: () => void;
|
|
103
103
|
pagination: {
|
|
104
|
-
readonly state: import('./pagination
|
|
104
|
+
readonly state: import('./pagination').PaginationInfo;
|
|
105
105
|
readonly state$: Observable<ObservedValueOf<Pagination>>;
|
|
106
106
|
};
|
|
107
107
|
settings: SettingsInterface<NonNullable<CoreInputSettings>, NonNullable<import('./settings/types').CoreOutputSettings | undefined>>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SpineItem } from '../..';
|
|
2
1
|
import { Context } from '../../context/Context';
|
|
3
2
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
3
|
+
import { SpineItem } from '../../spineItem/SpineItem';
|
|
4
4
|
import { DestroyableClass } from '../../utils/DestroyableClass';
|
|
5
5
|
import { SpineItemsManager } from '../SpineItemsManager';
|
|
6
6
|
import { SpineLayout } from '../SpineLayout';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DeprecatedViewportPosition } from '../../navigation/
|
|
1
|
+
import { DeprecatedViewportPosition } from '../../navigation/types';
|
|
2
2
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
3
3
|
import { SpineItemsManager } from '../SpineItemsManager';
|
|
4
4
|
import { SpineLayout } from '../SpineLayout';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DeprecatedViewportPosition } from '../../navigation/
|
|
1
|
+
import { DeprecatedViewportPosition } from '../../navigation/types';
|
|
2
2
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
3
3
|
import { Viewport } from '../../viewport/Viewport';
|
|
4
4
|
import { SpineItemsManager } from '../SpineItemsManager';
|
|
@@ -27,7 +27,7 @@ export declare class SpineItem extends DestroyableClass {
|
|
|
27
27
|
unload: () => void;
|
|
28
28
|
destroy: () => void;
|
|
29
29
|
get element(): HTMLElement;
|
|
30
|
-
get readingDirection(): "
|
|
30
|
+
get readingDirection(): "ltr" | "rtl" | undefined;
|
|
31
31
|
isUsingVerticalWriting: () => boolean;
|
|
32
32
|
get loaded$(): Observable<"loaded">;
|
|
33
33
|
get unloaded$(): Observable<"idle">;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { DeprecatedViewportPosition } from '../navigation/
|
|
1
|
+
import { DeprecatedViewportPosition } from '../navigation/types';
|
|
2
2
|
import { SpinePosition, UnsafeSpinePosition } from '../spine/types';
|
|
3
3
|
import { AbsoluteViewport, RelativeViewport } from './types';
|
|
4
4
|
export declare const translateSpinePositionToRelativeViewport: (absolutePosition: DeprecatedViewportPosition | SpinePosition, absoluteViewport: AbsoluteViewport, relativeViewport: RelativeViewport | AbsoluteViewport) => UnsafeSpinePosition;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prose-reader/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.210.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.umd.cjs",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -23,7 +23,8 @@
|
|
|
23
23
|
"tsc": "tsc"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@prose-reader/
|
|
26
|
+
"@prose-reader/cfi": "^1.210.0",
|
|
27
|
+
"@prose-reader/shared": "^1.210.0"
|
|
27
28
|
},
|
|
28
29
|
"peerDependencies": {
|
|
29
30
|
"rxjs": "*"
|
|
@@ -31,5 +32,12 @@
|
|
|
31
32
|
"devDependencies": {
|
|
32
33
|
"happy-dom": "^17.1.0"
|
|
33
34
|
},
|
|
34
|
-
"
|
|
35
|
+
"madge": {
|
|
36
|
+
"detectiveOptions": {
|
|
37
|
+
"ts": {
|
|
38
|
+
"skipTypeImports": true
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
},
|
|
42
|
+
"gitHead": "d4d195dfe67e1e5797f05848f6d7363178f605db"
|
|
35
43
|
}
|