@prose-reader/core 1.194.0 → 1.196.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/createReaderWithEnhancer.d.ts +2 -8
- package/dist/enhancers/html/enhancer.d.ts +7 -1
- package/dist/enhancers/html/links.d.ts +2 -0
- package/dist/enhancers/navigation/index.d.ts +2 -1
- package/dist/enhancers/navigation/links.d.ts +4 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.js +173 -151
- package/dist/index.js.map +1 -1
- package/dist/index.umd.cjs +172 -150
- package/dist/index.umd.cjs.map +1 -1
- package/dist/navigation/tests/SpineItemsManagerMock.d.ts +1 -1
- package/dist/navigation/tests/utils.d.ts +1 -1
- package/dist/spine/SpineItemsManager.d.ts +3 -3
- package/dist/spine/SpineLayout.d.ts +6 -26
- package/dist/spine/layout/convertViewportPositionToLayoutPosition.d.ts +2 -2
- package/dist/spine/layout/layoutItem.d.ts +2 -0
- package/dist/spine/layout/types.d.ts +11 -0
- package/dist/spineItem/SpineItem.d.ts +1 -14
- package/dist/spineItem/SpineItemLayout.d.ts +1 -7
- package/dist/utils/dom.d.ts +2 -1
- package/package.json +3 -3
- package/dist/enhancers/links.d.ts +0 -14
|
@@ -6,7 +6,7 @@ import { Spine } from '../../spine/Spine';
|
|
|
6
6
|
import { SpineItemsManager } from '../../spine/SpineItemsManager';
|
|
7
7
|
import { InternalNavigator } from '../InternalNavigator';
|
|
8
8
|
import { UserNavigator } from '../UserNavigator';
|
|
9
|
-
export declare const generateItems: (size: number, number: number, context: Context, settings: ReaderSettingsManager, hookManager: HookManager) => SpineItem[];
|
|
9
|
+
export declare const generateItems: (size: number, number: number, context: Context, settings: ReaderSettingsManager, hookManager: HookManager, spine: Spine, spineItemsManager: SpineItemsManager) => SpineItem[];
|
|
10
10
|
export declare const createNavigator: () => {
|
|
11
11
|
internalNavigator: InternalNavigator;
|
|
12
12
|
userNavigator: UserNavigator;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
+
import { BehaviorSubject } from 'rxjs';
|
|
1
2
|
import { Context } from '../context/Context';
|
|
2
3
|
import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
3
|
-
import { DestroyableClass } from '../utils/DestroyableClass';
|
|
4
|
-
import { BehaviorSubject } from 'rxjs';
|
|
5
4
|
import { SpineItem } from '../spineItem/SpineItem';
|
|
5
|
+
import { DestroyableClass } from '../utils/DestroyableClass';
|
|
6
6
|
export declare class SpineItemsManager extends DestroyableClass {
|
|
7
7
|
protected context: Context;
|
|
8
8
|
protected settings: ReaderSettingsManager;
|
|
@@ -11,7 +11,7 @@ export declare class SpineItemsManager extends DestroyableClass {
|
|
|
11
11
|
items$: import('rxjs').Observable<SpineItem[]>;
|
|
12
12
|
get(indexOrId: number | string | SpineItem | undefined): SpineItem | undefined;
|
|
13
13
|
comparePositionOf(toCompare: SpineItem, withItem: SpineItem): "before" | "after" | "same";
|
|
14
|
-
getSpineItemIndex(spineItemOrId: SpineItem | string | undefined): number | undefined;
|
|
14
|
+
getSpineItemIndex(spineItemOrId: SpineItem | string | number | undefined): number | undefined;
|
|
15
15
|
addMany(spineItems: SpineItem[]): void;
|
|
16
16
|
getSpineItemFromCfi(cfi: string): SpineItem | undefined;
|
|
17
17
|
get items(): SpineItem[];
|
|
@@ -4,46 +4,26 @@ import { ReaderSettingsManager } from '../settings/ReaderSettingsManager';
|
|
|
4
4
|
import { SpineItem } from '../spineItem/SpineItem';
|
|
5
5
|
import { DestroyableClass } from '../utils/DestroyableClass';
|
|
6
6
|
import { SpineItemsManager } from './SpineItemsManager';
|
|
7
|
-
|
|
8
|
-
left: number;
|
|
9
|
-
right: number;
|
|
10
|
-
top: number;
|
|
11
|
-
bottom: number;
|
|
12
|
-
width: number;
|
|
13
|
-
height: number;
|
|
14
|
-
x: number;
|
|
15
|
-
y: number;
|
|
16
|
-
__symbol?: `LayoutPosition`;
|
|
17
|
-
};
|
|
7
|
+
import { SpineItemRelativeLayout } from './layout/types';
|
|
18
8
|
export type PageLayoutInformation = {
|
|
19
9
|
absolutePageIndex: number;
|
|
20
10
|
itemIndex: number;
|
|
21
|
-
absolutePosition:
|
|
11
|
+
absolutePosition: SpineItemRelativeLayout;
|
|
22
12
|
};
|
|
23
13
|
export type LayoutInfo = {
|
|
24
|
-
spineItemsAbsolutePositions:
|
|
25
|
-
spineItemsPagesAbsolutePositions: LayoutPosition[][];
|
|
14
|
+
spineItemsAbsolutePositions: SpineItemRelativeLayout[];
|
|
26
15
|
pages: PageLayoutInformation[];
|
|
27
16
|
};
|
|
28
|
-
export type Layout = LayoutInfo;
|
|
29
17
|
export declare class SpineLayout extends DestroyableClass {
|
|
30
18
|
protected spineItemsManager: SpineItemsManager;
|
|
31
19
|
protected context: Context;
|
|
32
20
|
protected settings: ReaderSettingsManager;
|
|
33
21
|
protected layoutSubject: Subject<unknown>;
|
|
34
|
-
|
|
22
|
+
protected spineItemsRelativeLayouts: SpineItemRelativeLayout[];
|
|
23
|
+
readonly layout$: Observable<LayoutInfo>;
|
|
35
24
|
readonly info$: Observable<LayoutInfo>;
|
|
36
25
|
constructor(spineItemsManager: SpineItemsManager, context: Context, settings: ReaderSettingsManager);
|
|
37
26
|
layout(): void;
|
|
38
|
-
|
|
39
|
-
left: number;
|
|
40
|
-
top: number;
|
|
41
|
-
right: number;
|
|
42
|
-
bottom: number;
|
|
43
|
-
x: number;
|
|
44
|
-
y: number;
|
|
45
|
-
width: number;
|
|
46
|
-
height: number;
|
|
47
|
-
};
|
|
27
|
+
getSpineItemRelativeLayoutInfo(spineItemOrIndex: SpineItem | number | string | undefined): SpineItemRelativeLayout;
|
|
48
28
|
destroy(): void;
|
|
49
29
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ViewportPosition } from '../../navigation/viewport/ViewportNavigator';
|
|
2
|
-
import {
|
|
2
|
+
import { SpineItemRelativeLayout } from './types';
|
|
3
3
|
export declare const convertSpinePositionToLayoutPosition: ({ position, pageSize, }: {
|
|
4
4
|
position: ViewportPosition;
|
|
5
5
|
pageSize: {
|
|
6
6
|
height: number;
|
|
7
7
|
width: number;
|
|
8
8
|
};
|
|
9
|
-
}) =>
|
|
9
|
+
}) => SpineItemRelativeLayout;
|
|
@@ -3,6 +3,7 @@ import { SpineItem } from '../..';
|
|
|
3
3
|
import { Context } from '../../context/Context';
|
|
4
4
|
import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
|
|
5
5
|
import { SpineItemsManager } from '../SpineItemsManager';
|
|
6
|
+
import { SpineItemRelativeLayout } from './types';
|
|
6
7
|
export declare const layoutItem: ({ horizontalOffset, verticalOffset, context, spineItemsManager, isGloballyPrePaginated, settings, index, item, }: {
|
|
7
8
|
horizontalOffset: number;
|
|
8
9
|
verticalOffset: number;
|
|
@@ -15,4 +16,5 @@ export declare const layoutItem: ({ horizontalOffset, verticalOffset, context, s
|
|
|
15
16
|
}) => Observable<{
|
|
16
17
|
horizontalOffset: number;
|
|
17
18
|
verticalOffset: number;
|
|
19
|
+
layoutPosition: SpineItemRelativeLayout;
|
|
18
20
|
}>;
|
|
@@ -14,14 +14,11 @@ export declare class SpineItem extends DestroyableClass {
|
|
|
14
14
|
settings: ReaderSettingsManager;
|
|
15
15
|
hookManager: HookManager;
|
|
16
16
|
index: number;
|
|
17
|
-
private spineItemLayout;
|
|
18
17
|
readonly containerElement: HTMLElement;
|
|
19
18
|
readonly needsLayout$: Observable<unknown>;
|
|
20
19
|
readonly renderer: DocumentRenderer;
|
|
21
20
|
readonly resourcesHandler: ResourceHandler;
|
|
22
|
-
readonly layout
|
|
23
|
-
readonly layout: SpineItemLayout["layout"];
|
|
24
|
-
readonly adjustPositionOfElement: SpineItemLayout["adjustPositionOfElement"];
|
|
21
|
+
readonly layout: SpineItemLayout;
|
|
25
22
|
readonly isReady$: Observable<boolean>;
|
|
26
23
|
constructor(item: Manifest[`spineItems`][number], parentElement: HTMLElement, context: Context, settings: ReaderSettingsManager, hookManager: HookManager, index: number);
|
|
27
24
|
getBoundingRectOfElementFromSelector: (selector: string) => DOMRect | undefined;
|
|
@@ -30,16 +27,6 @@ export declare class SpineItem extends DestroyableClass {
|
|
|
30
27
|
destroy: () => void;
|
|
31
28
|
get element(): HTMLElement;
|
|
32
29
|
get readingDirection(): "rtl" | "ltr" | undefined;
|
|
33
|
-
get layoutPosition(): {
|
|
34
|
-
left: number;
|
|
35
|
-
top: number;
|
|
36
|
-
right: number;
|
|
37
|
-
bottom: number;
|
|
38
|
-
x: number;
|
|
39
|
-
y: number;
|
|
40
|
-
width: number;
|
|
41
|
-
height: number;
|
|
42
|
-
};
|
|
43
30
|
isUsingVerticalWriting: () => boolean;
|
|
44
31
|
get loaded$(): Observable<"loaded">;
|
|
45
32
|
get unloaded$(): Observable<"idle">;
|
|
@@ -37,13 +37,7 @@ export declare class SpineItemLayout extends DestroyableClass {
|
|
|
37
37
|
left?: number;
|
|
38
38
|
top?: number;
|
|
39
39
|
}) => void;
|
|
40
|
-
get
|
|
41
|
-
left: number;
|
|
42
|
-
top: number;
|
|
43
|
-
right: number;
|
|
44
|
-
bottom: number;
|
|
45
|
-
x: number;
|
|
46
|
-
y: number;
|
|
40
|
+
get layoutInfo(): {
|
|
47
41
|
width: number;
|
|
48
42
|
height: number;
|
|
49
43
|
};
|
package/dist/utils/dom.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export declare const isHtmlElement: (element?:
|
|
1
|
+
export declare const isHtmlElement: (element?: unknown) => element is HTMLElement;
|
|
2
2
|
type ViewPort = {
|
|
3
3
|
left: number;
|
|
4
4
|
right: number;
|
|
@@ -19,4 +19,5 @@ export declare const isTouchEvent: (event: Event) => event is TouchEvent;
|
|
|
19
19
|
export declare const noopElement: () => HTMLDivElement;
|
|
20
20
|
export declare const getElementsWithAssets: (_document: Document | null | undefined) => Element[];
|
|
21
21
|
export declare const revokeDocumentBlobs: (_document: Document | null | undefined) => void;
|
|
22
|
+
export declare function isHtmlTagElement<K extends keyof HTMLElementTagNameMap>(element: unknown, tagName: K): element is HTMLElementTagNameMap[K];
|
|
22
23
|
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prose-reader/core",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.196.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.umd.cjs",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"tsc": "tsc"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@prose-reader/shared": "^1.
|
|
26
|
+
"@prose-reader/shared": "^1.196.0"
|
|
27
27
|
},
|
|
28
28
|
"peerDependencies": {
|
|
29
29
|
"rxjs": "*"
|
|
@@ -31,5 +31,5 @@
|
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"happy-dom": "^17.1.0"
|
|
33
33
|
},
|
|
34
|
-
"gitHead": "
|
|
34
|
+
"gitHead": "caa683b8f6f4f2521fa23fb3c6bd94f683efbfd3"
|
|
35
35
|
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { Observable } from 'rxjs';
|
|
2
|
-
import { EnhancerOptions, EnhancerOutput, RootEnhancer } from './types/enhancer';
|
|
3
|
-
import { NavigationEnhancerOutput } from './navigation/types';
|
|
4
|
-
type SubjectData = {
|
|
5
|
-
event: `linkClicked`;
|
|
6
|
-
data: HTMLAnchorElement;
|
|
7
|
-
isNavigable: boolean;
|
|
8
|
-
};
|
|
9
|
-
export declare const linksEnhancer: <InheritOptions extends EnhancerOptions<RootEnhancer>, InheritOutput extends EnhancerOutput<RootEnhancer> & NavigationEnhancerOutput>(next: (options: InheritOptions) => InheritOutput) => (options: InheritOptions) => InheritOutput & {
|
|
10
|
-
$: {
|
|
11
|
-
links$: Observable<SubjectData>;
|
|
12
|
-
};
|
|
13
|
-
};
|
|
14
|
-
export {};
|