@prose-reader/core 1.239.0 → 1.241.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/context/Context.d.ts +1 -21
- package/dist/createReaderWithEnhancer.d.ts +11 -12
- package/dist/enhancers/events/normalizeEventForViewport.d.ts +2 -2
- package/dist/enhancers/hotkeys.d.ts +1 -1
- package/dist/enhancers/layout/coordinates.d.ts +3 -3
- package/dist/enhancers/layout/updateSpreadMode.d.ts +12 -0
- package/dist/enhancers/layout/viewportMode.d.ts +4 -0
- package/dist/enhancers/loading/createLoadingElement.d.ts +2 -2
- package/dist/enhancers/navigation/navigators/UserScrollNavigation.d.ts +12 -0
- package/dist/enhancers/navigation/resolvers/getNavigationForLeftOrTopPage.d.ts +10 -6
- package/dist/enhancers/navigation/resolvers/getNavigationForLeftSinglePage.d.ts +7 -8
- package/dist/enhancers/navigation/resolvers/getNavigationForRightOrBottomPage.d.ts +10 -6
- package/dist/enhancers/navigation/resolvers/getNavigationForRightSinglePage.d.ts +7 -8
- package/dist/enhancers/zoom/ControllableZoomer.d.ts +2 -2
- package/dist/enhancers/zoom/ScrollableZoomer.d.ts +2 -2
- package/dist/enhancers/zoom/{Zoomer.d.ts → ZoomController.d.ts} +1 -1
- package/dist/index.js +2175 -2171
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +37 -38
- package/dist/index.umd.cjs.map +1 -1
- package/dist/navigation/InternalNavigator.d.ts +6 -5
- package/dist/navigation/Navigator.d.ts +14 -14
- package/dist/navigation/consolidation/consolidateWithPagination.d.ts +4 -4
- package/dist/navigation/consolidation/withFallbackPosition.d.ts +4 -1
- package/dist/navigation/consolidation/withSpineItem.d.ts +1 -1
- package/dist/navigation/consolidation/withSpineItemPosition.d.ts +1 -1
- package/dist/navigation/controllers/ScrollNavigationController.d.ts +13 -6
- package/dist/navigation/resolvers/NavigationResolver.d.ts +13 -12
- package/dist/navigation/resolvers/{getAdjustedPositionWithSafeEdge.d.ts → fromUnboundSpinePosition.d.ts} +3 -4
- package/dist/navigation/resolvers/getAdjustedPositionForSpread.d.ts +3 -4
- package/dist/navigation/resolvers/getNavigationForPosition.d.ts +5 -6
- package/dist/navigation/resolvers/getNavigationForSpineItemPage.d.ts +7 -7
- package/dist/navigation/resolvers/getNavigationFromSpineItemPosition.d.ts +4 -4
- package/dist/navigation/restoration/restorePosition.d.ts +4 -4
- package/dist/navigation/tests/utils.d.ts +2 -2
- package/dist/navigation/types.d.ts +6 -7
- package/dist/reader.d.ts +11 -12
- package/dist/settings/ReaderSettingsManager.d.ts +1 -1
- package/dist/settings/computeSpreadMode.d.ts +5 -0
- package/dist/settings/types.d.ts +2 -1
- package/dist/spine/Spine.d.ts +1 -2
- package/dist/spine/SpineItemsObserver.d.ts +2 -3
- package/dist/spine/loader/SpineItemsLoader.d.ts +1 -1
- package/dist/spine/locator/SpineLocator.d.ts +11 -11
- package/dist/spine/locator/getSpineItemFromPosition.d.ts +2 -3
- package/dist/spine/locator/getVisibleSpineItemsFromPosition.d.ts +2 -3
- package/dist/spine/types.d.ts +3 -3
- package/dist/spineItem/SpineItem.d.ts +3 -1
- package/dist/spineItem/SpineItemLayout.d.ts +3 -1
- package/dist/spineItem/layout/getSpineItemPositionFromPageIndex.d.ts +3 -1
- package/dist/spineItem/locationResolver.d.ts +5 -3
- package/dist/spineItem/navigationResolver.d.ts +3 -1
- package/dist/spineItem/renderer/DocumentRenderer.d.ts +4 -0
- package/dist/spineItem/types.d.ts +1 -1
- package/dist/types/index.d.ts +10 -0
- package/dist/utils/ReactiveEntity.d.ts +2 -1
- package/dist/viewport/Viewport.d.ts +14 -2
- package/dist/viewport/translateSpinePositionToRelativeViewport.d.ts +2 -3
- package/dist/viewport/types.d.ts +2 -2
- package/package.json +4 -4
- package/dist/context/isUsingSpreadMode.d.ts +0 -9
- package/dist/navigation/UserScrollNavigation.d.ts +0 -19
- package/dist/spine/locator/getSpinePositionFromSpineItemPageIndex.d.ts +0 -13
- package/dist/utils/layout.d.ts +0 -7
- package/dist/utils/layout.test.d.ts +0 -1
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { Context } from '../../context/Context';
|
|
2
2
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
3
|
-
import { SpineItem } from '../../spineItem/SpineItem';
|
|
4
3
|
import { createSpineItemLocator } from '../../spineItem/locationResolver';
|
|
4
|
+
import { SpineItem } from '../../spineItem/SpineItem';
|
|
5
5
|
import { SpineItemPosition } from '../../spineItem/types';
|
|
6
|
-
import { Viewport } from '../../viewport/Viewport';
|
|
7
6
|
import { ViewportSlicePosition } from '../../viewport/types';
|
|
7
|
+
import { Viewport } from '../../viewport/Viewport';
|
|
8
8
|
import { SpineItemsManager } from '../SpineItemsManager';
|
|
9
9
|
import { SpineLayout } from '../SpineLayout';
|
|
10
|
-
import { SpinePosition,
|
|
10
|
+
import { SpinePosition, UnboundSpinePosition } from '../types';
|
|
11
11
|
import { getAbsolutePageIndexFromPageIndex } from './getAbsolutePageIndexFromPageIndex';
|
|
12
12
|
import { getVisibleSpineItemsFromPosition } from './getVisibleSpineItemsFromPosition';
|
|
13
|
-
import {
|
|
13
|
+
import { UnboundSpineItemPagePosition } from '../..';
|
|
14
14
|
export type SpineLocator = ReturnType<typeof createSpineLocator>;
|
|
15
15
|
export declare const createSpineLocator: ({ spineItemsManager, context, spineItemLocator, settings, spineLayout, viewport, }: {
|
|
16
16
|
spineItemsManager: SpineItemsManager;
|
|
@@ -25,18 +25,18 @@ export declare const createSpineLocator: ({ spineItemsManager, context, spineIte
|
|
|
25
25
|
spineItem: SpineItem;
|
|
26
26
|
}) => SpinePosition;
|
|
27
27
|
_getAbsolutePageIndexFromPageIndex: (params: Omit<Parameters<typeof getAbsolutePageIndexFromPageIndex>[0], "context" | "settings" | "spineLayout" | "spineItemsManager">) => number | undefined;
|
|
28
|
-
getSpineItemPagePositionFromSpinePosition: (spinePosition:
|
|
28
|
+
getSpineItemPagePositionFromSpinePosition: (spinePosition: UnboundSpinePosition | SpinePosition) => {
|
|
29
29
|
spineItem: SpineItem;
|
|
30
30
|
spineItemPageIndex: number;
|
|
31
|
-
spineItemPagePosition:
|
|
31
|
+
spineItemPagePosition: UnboundSpineItemPagePosition;
|
|
32
32
|
pageSize: {
|
|
33
33
|
width: number;
|
|
34
34
|
height: number;
|
|
35
35
|
};
|
|
36
36
|
} | undefined;
|
|
37
37
|
getSpinePositionFromSpineItem: (spineItem: SpineItem) => SpinePosition;
|
|
38
|
-
getSpineItemPositionFromSpinePosition: (position: SpinePosition |
|
|
39
|
-
getSpineItemFromPosition: (position: SpinePosition) => SpineItem | undefined;
|
|
38
|
+
getSpineItemPositionFromSpinePosition: (position: SpinePosition | UnboundSpinePosition, spineItem: SpineItem) => SpineItemPosition;
|
|
39
|
+
getSpineItemFromPosition: (position: SpinePosition | UnboundSpinePosition) => SpineItem | undefined;
|
|
40
40
|
getSpineItemFromIframe: (iframe: Element) => SpineItem | undefined;
|
|
41
41
|
getSpineItemPageIndexFromNode: (node: Node, offset: number | undefined, spineItemOrIndex: SpineItem | number) => number | undefined;
|
|
42
42
|
getVisibleSpineItemsFromPosition: (params: Omit<Parameters<typeof getVisibleSpineItemsFromPosition>[0], "spineItemsManager" | "settings" | "spineLayout" | "viewport">) => {
|
|
@@ -44,7 +44,7 @@ export declare const createSpineLocator: ({ spineItemsManager, context, spineIte
|
|
|
44
44
|
endIndex: number;
|
|
45
45
|
} | undefined;
|
|
46
46
|
getVisiblePagesFromViewportPosition: (params: Omit<Parameters<({ position, threshold, spineItem, restrictToScreen, useAbsoluteViewport, viewport, }: {
|
|
47
|
-
position: SpinePosition;
|
|
47
|
+
position: SpinePosition | UnboundSpinePosition;
|
|
48
48
|
threshold: {
|
|
49
49
|
type: "percentage";
|
|
50
50
|
value: number;
|
|
@@ -63,7 +63,7 @@ export declare const createSpineLocator: ({ spineItemsManager, context, spineIte
|
|
|
63
63
|
beginPageIndex: number;
|
|
64
64
|
endPageIndex: number;
|
|
65
65
|
} | undefined;
|
|
66
|
-
isPositionWithinSpineItem: (position: ViewportSlicePosition | SpinePosition, spineItem: SpineItem) => boolean;
|
|
66
|
+
isPositionWithinSpineItem: (position: ViewportSlicePosition | SpinePosition | UnboundSpinePosition, spineItem: SpineItem) => boolean;
|
|
67
67
|
spineItemLocator: {
|
|
68
68
|
getSpineItemPositionFromNode: (node: Node, offset: number, spineItem: SpineItem) => SpineItemPosition | undefined;
|
|
69
69
|
getSpineItemPositionFromPageIndex: ({ pageIndex, spineItem, }: {
|
|
@@ -78,7 +78,7 @@ export declare const createSpineLocator: ({ spineItemsManager, context, spineIte
|
|
|
78
78
|
}) => number;
|
|
79
79
|
getSpineItemPageIndexFromNode: (node: Node, offset: number, spineItem: SpineItem) => number | undefined;
|
|
80
80
|
getSpineItemClosestPositionFromUnsafePosition: (unsafePosition: SpineItemPosition, spineItem: SpineItem) => SpineItemPosition;
|
|
81
|
-
getSpineItemPagePositionFromSpineItemPosition: (position: SpineItemPosition, pageIndex: number, spineItem: SpineItem) =>
|
|
81
|
+
getSpineItemPagePositionFromSpineItemPosition: (position: SpineItemPosition, pageIndex: number, spineItem: SpineItem) => UnboundSpineItemPagePosition;
|
|
82
82
|
};
|
|
83
83
|
getSafeSpineItemPositionFromUnsafeSpineItemPosition: (unsafePosition: SpineItemPosition, spineItem: SpineItem) => SpineItemPosition;
|
|
84
84
|
};
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { DeprecatedViewportPosition } from '../../navigation/types';
|
|
2
1
|
import { SpineItemsManager } from '../SpineItemsManager';
|
|
3
2
|
import { SpineLayout } from '../SpineLayout';
|
|
4
|
-
import { SpinePosition,
|
|
3
|
+
import { SpinePosition, UnboundSpinePosition } from '../types';
|
|
5
4
|
import { SpineItem } from '../..';
|
|
6
5
|
export declare const getSpineItemFromPosition: ({ position, spineItemsManager, spineLayout, }: {
|
|
7
|
-
position:
|
|
6
|
+
position: SpinePosition | SpinePosition | UnboundSpinePosition;
|
|
8
7
|
spineItemsManager: SpineItemsManager;
|
|
9
8
|
spineLayout: SpineLayout;
|
|
10
9
|
}) => SpineItem | undefined;
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { DeprecatedViewportPosition } from '../../navigation/types';
|
|
2
1
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
3
2
|
import { Viewport } from '../../viewport/Viewport';
|
|
4
3
|
import { SpineItemsManager } from '../SpineItemsManager';
|
|
5
4
|
import { SpineLayout } from '../SpineLayout';
|
|
6
|
-
import { SpinePosition } from '../types';
|
|
5
|
+
import { SpinePosition, UnboundSpinePosition } from '../types';
|
|
7
6
|
export declare const getVisibleSpineItemsFromPosition: ({ position, threshold, restrictToScreen, spineItemsManager, spineLayout, useAbsoluteViewport, viewport, }: {
|
|
8
|
-
position:
|
|
7
|
+
position: SpinePosition | UnboundSpinePosition;
|
|
9
8
|
threshold: {
|
|
10
9
|
type: "percentage";
|
|
11
10
|
value: number;
|
package/dist/spine/types.d.ts
CHANGED
|
@@ -15,9 +15,9 @@ export declare class AbstractSpinePosition {
|
|
|
15
15
|
}
|
|
16
16
|
export declare class SpinePosition extends AbstractSpinePosition {
|
|
17
17
|
readonly __symbol = "SpinePosition";
|
|
18
|
-
static from(position:
|
|
18
|
+
static from(position: UnboundSpinePosition | SpinePosition): SpinePosition;
|
|
19
19
|
}
|
|
20
|
-
export declare class
|
|
20
|
+
export declare class UnboundSpinePosition extends AbstractSpinePosition {
|
|
21
21
|
readonly __symbol = "UnsafeSpinePosition";
|
|
22
|
-
static from(position: SpinePosition):
|
|
22
|
+
static from(position: SpinePosition): UnboundSpinePosition;
|
|
23
23
|
}
|
|
@@ -4,6 +4,7 @@ import { Context } from '../context/Context';
|
|
|
4
4
|
import { HookManager } from '../hooks/HookManager';
|
|
5
5
|
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
6
6
|
import { ReactiveEntity } from '../utils/ReactiveEntity';
|
|
7
|
+
import { Viewport } from '../viewport/Viewport';
|
|
7
8
|
import { DocumentRenderer } from './renderer/DocumentRenderer';
|
|
8
9
|
import { ResourceHandler } from './resources/ResourceHandler';
|
|
9
10
|
import { SpineItemLayout } from './SpineItemLayout';
|
|
@@ -20,12 +21,13 @@ export declare class SpineItem extends ReactiveEntity<SpineItemState> {
|
|
|
20
21
|
settings: ReaderSettingsManager;
|
|
21
22
|
hookManager: HookManager;
|
|
22
23
|
index: number;
|
|
24
|
+
viewport: Viewport;
|
|
23
25
|
readonly containerElement: HTMLElement;
|
|
24
26
|
readonly needsLayout$: Observable<unknown>;
|
|
25
27
|
readonly renderer: DocumentRenderer;
|
|
26
28
|
readonly resourcesHandler: ResourceHandler;
|
|
27
29
|
readonly layout: SpineItemLayout;
|
|
28
|
-
constructor(item: Manifest[`spineItems`][number], parentElement: HTMLElement, context: Context, settings: ReaderSettingsManager, hookManager: HookManager, index: number);
|
|
30
|
+
constructor(item: Manifest[`spineItems`][number], parentElement: HTMLElement, context: Context, settings: ReaderSettingsManager, hookManager: HookManager, index: number, viewport: Viewport);
|
|
29
31
|
load: () => void;
|
|
30
32
|
unload: () => void;
|
|
31
33
|
markDirty: () => void;
|
|
@@ -4,6 +4,7 @@ import { Context } from '../context/Context';
|
|
|
4
4
|
import { HookManager } from '../hooks/HookManager';
|
|
5
5
|
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
6
6
|
import { DestroyableClass } from '../utils/DestroyableClass';
|
|
7
|
+
import { Viewport } from '../viewport/Viewport';
|
|
7
8
|
import { DocumentRenderer } from './renderer/DocumentRenderer';
|
|
8
9
|
export declare class SpineItemLayout extends DestroyableClass {
|
|
9
10
|
item: Manifest[`spineItems`][number];
|
|
@@ -12,6 +13,7 @@ export declare class SpineItemLayout extends DestroyableClass {
|
|
|
12
13
|
hookManager: HookManager;
|
|
13
14
|
renderer: DocumentRenderer;
|
|
14
15
|
settings: ReaderSettingsManager;
|
|
16
|
+
viewport: Viewport;
|
|
15
17
|
private layoutTriggerSubject;
|
|
16
18
|
private lastLayout;
|
|
17
19
|
readonly layout$: Observable<{
|
|
@@ -27,7 +29,7 @@ export declare class SpineItemLayout extends DestroyableClass {
|
|
|
27
29
|
height: number;
|
|
28
30
|
};
|
|
29
31
|
}>;
|
|
30
|
-
constructor(item: Manifest[`spineItems`][number], containerElement: HTMLElement, context: Context, hookManager: HookManager, renderer: DocumentRenderer, settings: ReaderSettingsManager);
|
|
32
|
+
constructor(item: Manifest[`spineItems`][number], containerElement: HTMLElement, context: Context, hookManager: HookManager, renderer: DocumentRenderer, settings: ReaderSettingsManager, viewport: Viewport);
|
|
31
33
|
private validateDimension;
|
|
32
34
|
private applyDimsAfterLayout;
|
|
33
35
|
layout: (params: ObservedValueOf<typeof this.layoutTriggerSubject>) => Observable<{
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Context } from '../../context/Context';
|
|
2
|
+
import { Viewport } from '../../viewport/Viewport';
|
|
2
3
|
import { SpineItemPosition } from '../types';
|
|
3
|
-
export declare const getSpineItemPositionFromPageIndex: ({ pageIndex, itemLayout, context, isUsingVerticalWriting, }: {
|
|
4
|
+
export declare const getSpineItemPositionFromPageIndex: ({ pageIndex, itemLayout, context, isUsingVerticalWriting, viewport, }: {
|
|
4
5
|
pageIndex: number;
|
|
5
6
|
itemLayout: {
|
|
6
7
|
width: number;
|
|
@@ -8,4 +9,5 @@ export declare const getSpineItemPositionFromPageIndex: ({ pageIndex, itemLayout
|
|
|
8
9
|
};
|
|
9
10
|
context: Context;
|
|
10
11
|
isUsingVerticalWriting: boolean;
|
|
12
|
+
viewport: Viewport;
|
|
11
13
|
}) => SpineItemPosition;
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { Context } from '../context/Context';
|
|
2
2
|
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
3
|
+
import { Viewport } from '../viewport/Viewport';
|
|
3
4
|
import { SpineItem } from './SpineItem';
|
|
4
|
-
import { SpineItemPosition,
|
|
5
|
+
import { SpineItemPosition, UnboundSpineItemPagePosition } from './types';
|
|
5
6
|
export type SpineItemLocator = ReturnType<typeof createSpineItemLocator>;
|
|
6
|
-
export declare const createSpineItemLocator: ({ context, settings, }: {
|
|
7
|
+
export declare const createSpineItemLocator: ({ context, settings, viewport, }: {
|
|
7
8
|
context: Context;
|
|
8
9
|
settings: ReaderSettingsManager;
|
|
10
|
+
viewport: Viewport;
|
|
9
11
|
}) => {
|
|
10
12
|
getSpineItemPositionFromNode: (node: Node, offset: number, spineItem: SpineItem) => SpineItemPosition | undefined;
|
|
11
13
|
getSpineItemPositionFromPageIndex: ({ pageIndex, spineItem, }: {
|
|
@@ -20,5 +22,5 @@ export declare const createSpineItemLocator: ({ context, settings, }: {
|
|
|
20
22
|
}) => number;
|
|
21
23
|
getSpineItemPageIndexFromNode: (node: Node, offset: number, spineItem: SpineItem) => number | undefined;
|
|
22
24
|
getSpineItemClosestPositionFromUnsafePosition: (unsafePosition: SpineItemPosition, spineItem: SpineItem) => SpineItemPosition;
|
|
23
|
-
getSpineItemPagePositionFromSpineItemPosition: (position: SpineItemPosition, pageIndex: number, spineItem: SpineItem) =>
|
|
25
|
+
getSpineItemPagePositionFromSpineItemPosition: (position: SpineItemPosition, pageIndex: number, spineItem: SpineItem) => UnboundSpineItemPagePosition;
|
|
24
26
|
};
|
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
import { Context } from '../context/Context';
|
|
2
2
|
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
3
|
+
import { Viewport } from '../viewport/Viewport';
|
|
3
4
|
import { SpineItem } from './SpineItem';
|
|
4
5
|
import { SpineItemPosition } from './types';
|
|
5
6
|
export type SpineItemNavigationResolver = ReturnType<typeof createNavigationResolver>;
|
|
6
|
-
export declare const createNavigationResolver: ({ context, settings, }: {
|
|
7
|
+
export declare const createNavigationResolver: ({ context, settings, viewport, }: {
|
|
7
8
|
context: Context;
|
|
8
9
|
settings: ReaderSettingsManager;
|
|
10
|
+
viewport: Viewport;
|
|
9
11
|
}) => {
|
|
10
12
|
getNavigationForLastPage: (spineItem: SpineItem) => SpineItemPosition;
|
|
11
13
|
getNavigationForPosition: (spineItem: SpineItem, position: SpineItemPosition) => SpineItemPosition;
|
|
@@ -4,6 +4,7 @@ import { Context } from '../../context/Context';
|
|
|
4
4
|
import { HookManager } from '../../hooks/HookManager';
|
|
5
5
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
6
6
|
import { DestroyableClass } from '../../utils/DestroyableClass';
|
|
7
|
+
import { Viewport } from '../../viewport/Viewport';
|
|
7
8
|
import { ResourceHandler } from '../resources/ResourceHandler';
|
|
8
9
|
export type DocumentRendererParams = {
|
|
9
10
|
context: Context;
|
|
@@ -12,6 +13,7 @@ export type DocumentRendererParams = {
|
|
|
12
13
|
item: Manifest[`spineItems`][number];
|
|
13
14
|
containerElement: HTMLElement;
|
|
14
15
|
resourcesHandler: ResourceHandler;
|
|
16
|
+
viewport: Viewport;
|
|
15
17
|
};
|
|
16
18
|
type LayoutParams = {
|
|
17
19
|
minPageSpread: number;
|
|
@@ -22,6 +24,7 @@ type LayoutParams = {
|
|
|
22
24
|
export declare abstract class DocumentRenderer extends DestroyableClass {
|
|
23
25
|
static readonly DOCUMENT_CONTAINER_CLASS_NAME = "prose-reader-document-container";
|
|
24
26
|
private triggerSubject;
|
|
27
|
+
protected viewport: Viewport;
|
|
25
28
|
protected context: Context;
|
|
26
29
|
protected settings: ReaderSettingsManager;
|
|
27
30
|
protected hookManager: HookManager;
|
|
@@ -40,6 +43,7 @@ export declare abstract class DocumentRenderer extends DestroyableClass {
|
|
|
40
43
|
item: Manifest[`spineItems`][number];
|
|
41
44
|
containerElement: HTMLElement;
|
|
42
45
|
resourcesHandler: ResourceHandler;
|
|
46
|
+
viewport: Viewport;
|
|
43
47
|
});
|
|
44
48
|
protected setDocumentContainer(element: HTMLElement): void;
|
|
45
49
|
protected attach(): void;
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { BehaviorSubject, Observable, Subject } from 'rxjs';
|
|
2
2
|
export declare class ReactiveEntity<T extends Record<string, unknown>> extends Observable<T> {
|
|
3
3
|
protected stateSubject: BehaviorSubject<T>;
|
|
4
|
-
protected
|
|
4
|
+
protected _destroy$: Subject<void>;
|
|
5
5
|
constructor(initialState: T);
|
|
6
6
|
protected next(value: T): void;
|
|
7
7
|
protected mergeCompare(pagination: Partial<T>): void;
|
|
8
8
|
watch<K extends keyof T>(key: K): Observable<T[K]>;
|
|
9
9
|
watch<K extends keyof T>(keys: K[]): Observable<Pick<T, K>>;
|
|
10
10
|
get value(): T;
|
|
11
|
+
destroy$: Observable<void>;
|
|
11
12
|
destroy(): void;
|
|
12
13
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Context } from '../context/Context';
|
|
2
|
+
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
2
3
|
import { ReactiveEntity } from '../utils/ReactiveEntity';
|
|
3
4
|
import { AbsoluteViewport, RelativeViewport } from './types';
|
|
4
5
|
type State = {
|
|
@@ -7,15 +8,26 @@ type State = {
|
|
|
7
8
|
width: number;
|
|
8
9
|
height: number;
|
|
9
10
|
};
|
|
11
|
+
width: number;
|
|
12
|
+
height: number;
|
|
10
13
|
};
|
|
11
14
|
export declare class Viewport extends ReactiveEntity<State> {
|
|
12
15
|
protected context: Context;
|
|
13
|
-
|
|
14
|
-
|
|
16
|
+
protected settingsManager: ReaderSettingsManager;
|
|
17
|
+
constructor(context: Context, settingsManager: ReaderSettingsManager);
|
|
18
|
+
protected calculatePageSize(layout: {
|
|
19
|
+
width: number;
|
|
20
|
+
height: number;
|
|
21
|
+
}): {
|
|
15
22
|
width: number;
|
|
16
23
|
height: number;
|
|
17
24
|
};
|
|
25
|
+
layout(): void;
|
|
18
26
|
get absoluteViewport(): AbsoluteViewport;
|
|
27
|
+
get pageSize(): {
|
|
28
|
+
width: number;
|
|
29
|
+
height: number;
|
|
30
|
+
};
|
|
19
31
|
get scaleFactor(): number;
|
|
20
32
|
get relativeViewport(): RelativeViewport;
|
|
21
33
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { SpinePosition, UnsafeSpinePosition } from '../spine/types';
|
|
1
|
+
import { SpinePosition, UnboundSpinePosition } from '../spine/types';
|
|
3
2
|
import { AbsoluteViewport, RelativeViewport } from './types';
|
|
4
|
-
export declare const translateSpinePositionToRelativeViewport: (absolutePosition:
|
|
3
|
+
export declare const translateSpinePositionToRelativeViewport: (absolutePosition: SpinePosition | UnboundSpinePosition, absoluteViewport: AbsoluteViewport, relativeViewport: RelativeViewport | AbsoluteViewport) => UnboundSpinePosition;
|
package/dist/viewport/types.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { SpinePosition,
|
|
1
|
+
import { SpinePosition, UnboundSpinePosition } from '../spine/types';
|
|
2
2
|
export declare class ViewportSlicePosition extends DOMRect {
|
|
3
3
|
readonly __symbol: symbol;
|
|
4
4
|
static from(rect: {
|
|
@@ -7,7 +7,7 @@ export declare class ViewportSlicePosition extends DOMRect {
|
|
|
7
7
|
width: number;
|
|
8
8
|
height: number;
|
|
9
9
|
}): ViewportSlicePosition;
|
|
10
|
-
static from(position: SpinePosition |
|
|
10
|
+
static from(position: SpinePosition | UnboundSpinePosition, viewport: AbsoluteViewport | RelativeViewport): ViewportSlicePosition;
|
|
11
11
|
}
|
|
12
12
|
export declare class AbsoluteViewport {
|
|
13
13
|
width: number;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prose-reader/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.241.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.umd.cjs",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -23,8 +23,8 @@
|
|
|
23
23
|
"tsc": "tsc"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@prose-reader/cfi": "^1.
|
|
27
|
-
"@prose-reader/shared": "^1.
|
|
26
|
+
"@prose-reader/cfi": "^1.241.0",
|
|
27
|
+
"@prose-reader/shared": "^1.241.0"
|
|
28
28
|
},
|
|
29
29
|
"peerDependencies": {
|
|
30
30
|
"rxjs": "*"
|
|
@@ -39,5 +39,5 @@
|
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
},
|
|
42
|
-
"gitHead": "
|
|
42
|
+
"gitHead": "d3dd23d2c43b059c2a254e396800739160083720"
|
|
43
43
|
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Manifest } from '@prose-reader/shared';
|
|
2
|
-
export declare const isUsingSpreadMode: ({ manifest, visibleAreaRect, forceSinglePageMode, }: {
|
|
3
|
-
manifest?: Manifest;
|
|
4
|
-
visibleAreaRect: {
|
|
5
|
-
height: number;
|
|
6
|
-
width: number;
|
|
7
|
-
};
|
|
8
|
-
forceSinglePageMode?: boolean;
|
|
9
|
-
}) => boolean;
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Subject, Observable } from 'rxjs';
|
|
2
|
-
import { Context } from '../context/Context';
|
|
3
|
-
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
4
|
-
import { Spine } from '../spine/Spine';
|
|
5
|
-
import { DestroyableClass } from '../utils/DestroyableClass';
|
|
6
|
-
import { Viewport } from '../viewport/Viewport';
|
|
7
|
-
import { Locker } from './Locker';
|
|
8
|
-
import { ScrollNavigationController } from './controllers/ScrollNavigationController';
|
|
9
|
-
import { UserNavigationEntry } from './types';
|
|
10
|
-
export declare class UserScrollNavigation extends DestroyableClass {
|
|
11
|
-
protected settings: ReaderSettingsManager;
|
|
12
|
-
protected context: Context;
|
|
13
|
-
protected spine: Spine;
|
|
14
|
-
protected scrollNavigationController: ScrollNavigationController;
|
|
15
|
-
protected locker: Locker;
|
|
16
|
-
protected navigationSubject: Subject<UserNavigationEntry>;
|
|
17
|
-
navigation$: Observable<UserNavigationEntry>;
|
|
18
|
-
constructor(settings: ReaderSettingsManager, context: Context, spine: Spine, scrollNavigationController: ScrollNavigationController, locker: Locker, viewport: Viewport);
|
|
19
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { Context } from '../../context/Context';
|
|
2
|
-
import { SpinePosition } from '../types';
|
|
3
|
-
export declare const getSpinePositionFromSpineItemPageIndex: ({ pageIndex, context, isUsingVerticalWriting, itemLayout, }: {
|
|
4
|
-
pageIndex: number;
|
|
5
|
-
isUsingVerticalWriting: boolean;
|
|
6
|
-
context: Context;
|
|
7
|
-
itemLayout: {
|
|
8
|
-
left: number;
|
|
9
|
-
top: number;
|
|
10
|
-
width: number;
|
|
11
|
-
height: number;
|
|
12
|
-
};
|
|
13
|
-
}) => SpinePosition;
|
package/dist/utils/layout.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export {};
|