@prose-reader/react-native 1.323.0 → 1.325.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/shared/index.d.ts +1 -1
- package/dist/web/index.cjs +1 -1
- package/dist/web/index.d.ts +160 -4
- package/dist/web/index.js +16 -14
- package/package.json +2 -2
package/dist/shared/index.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { ContextState, createReader, EnhancerPaginationInto, Manifest } from '@p
|
|
|
2
2
|
import { Bridge, BridgeStore } from '@webview-bridge/react-native';
|
|
3
3
|
type ReaderOptions = Parameters<typeof createReader>[0];
|
|
4
4
|
type RnPaginationState = Omit<EnhancerPaginationInto, "navigationId">;
|
|
5
|
-
type RnContextState = Omit<ContextState, "
|
|
5
|
+
type RnContextState = Omit<ContextState, "rootElement">;
|
|
6
6
|
export interface BridgeState extends Bridge {
|
|
7
7
|
pagination: RnPaginationState | undefined;
|
|
8
8
|
setPagination: (pagination: RnPaginationState) => Promise<void>;
|
package/dist/web/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@webview-bridge/web");var t=()=>(0,e.linkBridge)({onReady:async()=>{}}),n=({bridge:e,
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("@webview-bridge/web");var t=()=>(0,e.linkBridge)({onReady:async()=>{}}),n=({bridge:e,createReader:t,containerElement:n})=>{let r;return e.addEventListener(`load`,i=>{r?.destroy();let a=t(i.manifest);r=a,a.pagination.state$.subscribe(t=>{e.setPagination(t)}),a.context.subscribe(({rootElement:t,...n})=>{e.setContext(n)}),a.mount(n)}),e.addEventListener(`turnRight`,()=>{r?.navigation.turnRight()}),e.addEventListener(`turnLeft`,()=>{r?.navigation.turnLeft()}),{getReader:()=>r}};exports.bridgeReader=n,exports.createReaderBridge=t;
|
package/dist/web/index.d.ts
CHANGED
|
@@ -1,10 +1,166 @@
|
|
|
1
|
-
import { createReader as createReaderCore } from '@prose-reader/core';
|
|
1
|
+
import { createReader as createReaderCore, Manifest } from '@prose-reader/core';
|
|
2
2
|
import { ProseBridgeStore, ProsePostMessageSchema } from '../shared';
|
|
3
3
|
type Reader = ReturnType<typeof createReaderCore>;
|
|
4
4
|
export declare const createReaderBridge: () => import('@webview-bridge/web').LinkBridge<import('@webview-bridge/types').ExcludePrimitive<import('../shared').BridgeMethods & import('../shared').BridgeState>, Omit<ProseBridgeStore, "setState">, ProsePostMessageSchema>;
|
|
5
|
-
export declare const bridgeReader: ({ bridge,
|
|
6
|
-
|
|
5
|
+
export declare const bridgeReader: ({ bridge, createReader, containerElement, }: {
|
|
6
|
+
/**
|
|
7
|
+
* Factory invoked for every `load` event coming from the native side.
|
|
8
|
+
* A reader renders a single book: a subsequent `load` destroys the
|
|
9
|
+
* previous reader and creates a fresh one from the new manifest.
|
|
10
|
+
*/
|
|
11
|
+
createReader: (manifest: Manifest) => Reader;
|
|
7
12
|
bridge: ReturnType<typeof createReaderBridge>;
|
|
8
13
|
containerElement: HTMLElement;
|
|
9
|
-
}) =>
|
|
14
|
+
}) => {
|
|
15
|
+
getReader: () => (Omit<Omit<Omit<{
|
|
16
|
+
id: `${string}-${string}-${string}-${string}-${string}`;
|
|
17
|
+
context: import('@prose-reader/core').Context;
|
|
18
|
+
spine: import('@prose-reader/core').Spine;
|
|
19
|
+
hookManager: import('@prose-reader/core').HookManager<import('@prose-reader/core').CoreHook>;
|
|
20
|
+
cfi: import('@prose-reader/core').CfiManager;
|
|
21
|
+
navigation: {
|
|
22
|
+
destroy: () => void;
|
|
23
|
+
getNavigation: () => import('@prose-reader/core').InternalNavigationEntry;
|
|
24
|
+
internalNavigator: import('@prose-reader/core').InternalNavigator;
|
|
25
|
+
scrollNavigationController: import('@prose-reader/core').ScrollNavigationController;
|
|
26
|
+
controlledNavigationController: import('@prose-reader/core').ControlledNavigationController;
|
|
27
|
+
navigationState$: import('rxjs').Observable<"free" | "busy">;
|
|
28
|
+
navigate: (to: import('@prose-reader/core').UserNavigationEntry) => void;
|
|
29
|
+
lock: () => () => void;
|
|
30
|
+
isLocked$: import('rxjs').Observable<boolean>;
|
|
31
|
+
navigationResolver: {
|
|
32
|
+
getNavigationForUrl: (url: string | URL) => {
|
|
33
|
+
position: import('@prose-reader/core').SpinePosition;
|
|
34
|
+
spineItemId: string;
|
|
35
|
+
} | undefined;
|
|
36
|
+
getNavigationForSpineItemPage: (params: Omit<Parameters<getNavigationForSpineItemPage>[0], "spineItemsManager" | "spineItemNavigationResolver" | "spineLocator" | "viewport">) => import('@prose-reader/core').SpinePosition;
|
|
37
|
+
getNavigationFromSpineItemPosition: (params: {
|
|
38
|
+
spineItemPosition: import('@prose-reader/core').SpineItemPosition;
|
|
39
|
+
spineItem: import('@prose-reader/core').SpineItem;
|
|
40
|
+
}) => import('@prose-reader/core').SpinePosition;
|
|
41
|
+
getNavigationForCfi: (cfi: string) => import('@prose-reader/core').SpinePosition | undefined;
|
|
42
|
+
getNavigationForLastPage: (spineItem: import('@prose-reader/core').SpineItem) => import('@prose-reader/core').SpinePosition;
|
|
43
|
+
getNavigationForSpineIndexOrId: (indexOrId: number | string | import('@prose-reader/core').SpineItem) => import('@prose-reader/core').SpinePosition;
|
|
44
|
+
getNavigationForPosition: (viewportPosition: import('@prose-reader/core').SpinePosition | import('@prose-reader/core').UnboundSpinePosition) => import('@prose-reader/core').SpinePosition;
|
|
45
|
+
getMostPredominantNavigationForPosition: (viewportPosition: import('@prose-reader/core').SpinePosition) => import('@prose-reader/core').SpinePosition;
|
|
46
|
+
clampPositionInSpine: (position: import('@prose-reader/core').SpinePosition | import('@prose-reader/core').UnboundSpinePosition, size: import('@prose-reader/core').NavigationVisibleArea) => import('@prose-reader/core').UnboundSpinePosition;
|
|
47
|
+
getBoundaryForPosition: (position: import('@prose-reader/core').SpinePosition | import('@prose-reader/core').UnboundSpinePosition, size?: import('@prose-reader/core').NavigationVisibleArea) => import('@prose-reader/core').SpineBoundary | undefined;
|
|
48
|
+
isNavigationGoingForwardFrom: (to: import('@prose-reader/core').SpinePosition, from: import('@prose-reader/core').SpinePosition) => boolean;
|
|
49
|
+
arePositionsDifferent: (a: {
|
|
50
|
+
x: number;
|
|
51
|
+
y: number;
|
|
52
|
+
}, b: {
|
|
53
|
+
x: number;
|
|
54
|
+
y: number;
|
|
55
|
+
}) => boolean;
|
|
56
|
+
getAdjustedPositionForSpread: (position: import('@prose-reader/core').SpinePosition | import('@prose-reader/core').UnboundSpinePosition) => import('@prose-reader/core').SpinePosition | import('@prose-reader/core').UnboundSpinePosition;
|
|
57
|
+
spineItemNavigator: {
|
|
58
|
+
getNavigationForLastPage: (spineItem: import('@prose-reader/core').SpineItem) => import('@prose-reader/core').SpineItemPosition;
|
|
59
|
+
getNavigationForPosition: (spineItem: import('@prose-reader/core').SpineItem, position: import('@prose-reader/core').SpineItemPosition) => import('@prose-reader/core').SpineItemPosition;
|
|
60
|
+
getNavigationFromNode: (spineItem: import('@prose-reader/core').SpineItem, node: Node, offset: number) => import('@prose-reader/core').SpineItemPosition;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
navigation$: import('rxjs').Observable<Pick<import('@prose-reader/core').InternalNavigationEntry, "id" | "position" | "requestedPosition" | "requestedVisibleArea"> & {
|
|
64
|
+
triggeredBy: import('@prose-reader/core').InternalNavigationEntry["meta"]["triggeredBy"];
|
|
65
|
+
}>;
|
|
66
|
+
position$: import('rxjs').Observable<import('@prose-reader/core').SpinePosition | import('@prose-reader/core').UnboundSpinePosition>;
|
|
67
|
+
};
|
|
68
|
+
spineItemsObserver: import('@prose-reader/core').SpineItemsObserver;
|
|
69
|
+
spineItemsManager: import('@prose-reader/core').SpineItemsManager;
|
|
70
|
+
layout: (options?: {
|
|
71
|
+
immediate?: boolean;
|
|
72
|
+
}) => void;
|
|
73
|
+
mount: (containerElement: HTMLElement) => void;
|
|
74
|
+
destroy: () => void;
|
|
75
|
+
pagination: {
|
|
76
|
+
readonly state: import('@prose-reader/core').PaginationInfo;
|
|
77
|
+
readonly state$: import('rxjs').Observable<import('rxjs').ObservedValueOf<import('@prose-reader/core').Pagination>>;
|
|
78
|
+
};
|
|
79
|
+
settings: import('@prose-reader/core').SettingsInterface<NonNullable<import('@prose-reader/core').CoreInputSettings>, NonNullable<import('@prose-reader/core').CoreOutputSettings | undefined>>;
|
|
80
|
+
renderHeadless: (spineItem: import('@prose-reader/core').SpineItemReference) => import('rxjs').Observable<{
|
|
81
|
+
doc: Document;
|
|
82
|
+
release: () => void;
|
|
83
|
+
} | undefined>;
|
|
84
|
+
viewport: import('@prose-reader/core').Viewport;
|
|
85
|
+
viewportState$: import('rxjs').Observable<"free" | "busy">;
|
|
86
|
+
viewportFree$: import('rxjs').Observable<"free">;
|
|
87
|
+
mounted$: import('rxjs').Observable<boolean>;
|
|
88
|
+
features: import('@prose-reader/core').Features;
|
|
89
|
+
$: {
|
|
90
|
+
destroy$: import('rxjs').Subject<void>;
|
|
91
|
+
};
|
|
92
|
+
} & {
|
|
93
|
+
theme: import('@prose-reader/core').ThemeEnhancerOutput;
|
|
94
|
+
}, "settings"> & import('@prose-reader/core').LayoutEnhancerOutput & {
|
|
95
|
+
settings: import('@prose-reader/core').SettingsInterface<import('@prose-reader/core').CoreInputSettings & import('@prose-reader/core').EnhancerLayoutInputSettings, import('@prose-reader/core').EnhancerLayoutInputSettings & import('@prose-reader/core').CoreInputSettings & import('@prose-reader/core').ComputedCoreSettings>;
|
|
96
|
+
}, "pagination"> & {
|
|
97
|
+
pagination: Omit<{
|
|
98
|
+
readonly state: import('@prose-reader/core').PaginationInfo;
|
|
99
|
+
readonly state$: import('rxjs').Observable<import('rxjs').ObservedValueOf<import('@prose-reader/core').Pagination>>;
|
|
100
|
+
}, "state" | "state$"> & {
|
|
101
|
+
state$: import('rxjs').Observable<import('@prose-reader/core').PaginationInfo & import('@prose-reader/core').ExtraPaginationInfo>;
|
|
102
|
+
state: import('@prose-reader/core').PaginationInfo & import('@prose-reader/core').ExtraPaginationInfo;
|
|
103
|
+
};
|
|
104
|
+
locateResource: import('@prose-reader/core').ResourcesLocator["locateResource"];
|
|
105
|
+
} & {
|
|
106
|
+
links$: import('rxjs').Observable<MouseEvent>;
|
|
107
|
+
} & import('@prose-reader/core').NavigationEnhancerOutput & import('@prose-reader/core').ZoomEnhancerOutput & {
|
|
108
|
+
utils: {
|
|
109
|
+
isOrIsWithinValidLink: (target: Event[`target`]) => boolean;
|
|
110
|
+
injectScopedCSS: (doc: Document, scope: string, styleTemplate: string) => () => void;
|
|
111
|
+
};
|
|
112
|
+
}, "settings"> & {
|
|
113
|
+
settings: import('@prose-reader/core').SettingsInterface<import('@prose-reader/core').CoreInputSettings & import('@prose-reader/core').EnhancerLayoutInputSettings & import('@prose-reader/core').EnhancerFontsInputSettings, import('@prose-reader/core').EnhancerFontsInputSettings & import('@prose-reader/core').EnhancerLayoutInputSettings & import('@prose-reader/core').CoreInputSettings & import('@prose-reader/core').ComputedCoreSettings>;
|
|
114
|
+
} & {
|
|
115
|
+
selection: {
|
|
116
|
+
selection$: import('rxjs').Observable<{
|
|
117
|
+
itemIndex: number;
|
|
118
|
+
type: "change";
|
|
119
|
+
selection: Selection;
|
|
120
|
+
} | {
|
|
121
|
+
itemIndex: number;
|
|
122
|
+
type: "over";
|
|
123
|
+
event: Event;
|
|
124
|
+
selection: Selection;
|
|
125
|
+
} | undefined>;
|
|
126
|
+
selectionStart$: import('rxjs').Observable<boolean>;
|
|
127
|
+
selectionEnd$: import('rxjs').Observable<void>;
|
|
128
|
+
selectionOver$: import('rxjs').Observable<{
|
|
129
|
+
itemIndex: number;
|
|
130
|
+
type: "over";
|
|
131
|
+
event: Event;
|
|
132
|
+
selection: Selection;
|
|
133
|
+
}>;
|
|
134
|
+
lastSelectionOnPointerdown$: import('rxjs').Observable<{
|
|
135
|
+
itemIndex: number;
|
|
136
|
+
type: "change";
|
|
137
|
+
selection: Selection;
|
|
138
|
+
} | {
|
|
139
|
+
itemIndex: number;
|
|
140
|
+
type: "over";
|
|
141
|
+
event: Event;
|
|
142
|
+
selection: Selection;
|
|
143
|
+
} | undefined>;
|
|
144
|
+
getSelection: () => {
|
|
145
|
+
itemIndex: number;
|
|
146
|
+
type: "change";
|
|
147
|
+
selection: Selection;
|
|
148
|
+
} | {
|
|
149
|
+
itemIndex: number;
|
|
150
|
+
type: "over";
|
|
151
|
+
event: Event;
|
|
152
|
+
selection: Selection;
|
|
153
|
+
} | undefined;
|
|
154
|
+
createOrderedRangeFromSelection: (params: {
|
|
155
|
+
selection: {
|
|
156
|
+
anchorNode?: Node | null;
|
|
157
|
+
anchorOffset?: number;
|
|
158
|
+
focusNode?: Node | null;
|
|
159
|
+
focusOffset?: number;
|
|
160
|
+
};
|
|
161
|
+
spineItem: import('@prose-reader/core').SpineItem;
|
|
162
|
+
}) => Range | undefined;
|
|
163
|
+
};
|
|
164
|
+
}) | undefined;
|
|
165
|
+
};
|
|
10
166
|
export {};
|
package/dist/web/index.js
CHANGED
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import { linkBridge as e } from "@webview-bridge/web";
|
|
2
2
|
//#region src/web/index.ts
|
|
3
|
-
var t = () => e({ onReady: async () => {} }), n = ({ bridge: e,
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
}),
|
|
11
|
-
|
|
12
|
-
}),
|
|
13
|
-
e.
|
|
14
|
-
|
|
15
|
-
e.
|
|
16
|
-
|
|
3
|
+
var t = () => e({ onReady: async () => {} }), n = ({ bridge: e, createReader: t, containerElement: n }) => {
|
|
4
|
+
let r;
|
|
5
|
+
return e.addEventListener("load", (i) => {
|
|
6
|
+
r?.destroy();
|
|
7
|
+
let a = t(i.manifest);
|
|
8
|
+
r = a, a.pagination.state$.subscribe((t) => {
|
|
9
|
+
e.setPagination(t);
|
|
10
|
+
}), a.context.subscribe(({ rootElement: t, ...n }) => {
|
|
11
|
+
e.setContext(n);
|
|
12
|
+
}), a.mount(n);
|
|
13
|
+
}), e.addEventListener("turnRight", () => {
|
|
14
|
+
r?.navigation.turnRight();
|
|
15
|
+
}), e.addEventListener("turnLeft", () => {
|
|
16
|
+
r?.navigation.turnLeft();
|
|
17
|
+
}), { getReader: () => r };
|
|
18
|
+
};
|
|
17
19
|
//#endregion
|
|
18
20
|
export { n as bridgeReader, t as createReaderBridge };
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prose-reader/react-native",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.325.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/native/index.cjs",
|
|
6
6
|
"module": "./dist/native/index.js",
|
|
@@ -42,5 +42,5 @@
|
|
|
42
42
|
"react": "19.x",
|
|
43
43
|
"rxjs": "*"
|
|
44
44
|
},
|
|
45
|
-
"gitHead": "
|
|
45
|
+
"gitHead": "b450baa3343e03a2d6adb584124325fe9f54ca68"
|
|
46
46
|
}
|