@prose-reader/core 1.130.0 → 1.132.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.
@@ -1,10 +1,5 @@
1
1
  import { Manifest } from '@prose-reader/shared';
2
- export declare const generateCfiFromRange: ({ startNode, start, end, endNode, }: {
3
- startNode: Node;
4
- start: number;
5
- endNode: Node;
6
- end: number;
7
- }, item: Manifest[`spineItems`][number]) => {
2
+ export declare const generateCfiFromRange: (range: Range, item: Manifest[`spineItems`][number]) => {
8
3
  start: string;
9
4
  end: string;
10
5
  };
@@ -19,12 +19,7 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
19
19
  spine: import('./spine/Spine').Spine;
20
20
  hookManager: import('.').HookManager<import('./hooks/types').CoreHook>;
21
21
  cfi: {
22
- generateCfiFromRange: ({ startNode, start, end, endNode, }: {
23
- startNode: Node;
24
- start: number;
25
- endNode: Node;
26
- end: number;
27
- }, item: import('@prose-reader/shared').Manifest[`spineItems`][number]) => {
22
+ generateCfiFromRange: (range: Range, item: import('@prose-reader/shared').Manifest[`spineItems`][number]) => {
28
23
  start: string;
29
24
  end: string;
30
25
  };
@@ -142,6 +137,11 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
142
137
  }, "state" | "state$"> & {
143
138
  state$: import('rxjs').Observable<import('./pagination/Pagination').PaginationInfo & import('./enhancers/pagination/types').ExtraPaginationInfo>;
144
139
  state: import('./pagination/Pagination').PaginationInfo & import('./enhancers/pagination/types').ExtraPaginationInfo;
140
+ } & {
141
+ locate: <T extends import('./enhancers/pagination/locate').LocatableResource>(resources: T[]) => import('rxjs').Observable<{
142
+ isStale: boolean;
143
+ data: (import('./enhancers/pagination/locate').ConsolidatedResource & T)[];
144
+ }>;
145
145
  };
146
146
  } & {
147
147
  theme: {
@@ -199,11 +199,11 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
199
199
  selection: Selection;
200
200
  itemIndex: number;
201
201
  } | undefined) | undefined;
202
- createRangeFromSelection: (params: {
202
+ createOrderedRangeFromSelection: (params: {
203
203
  selection: {
204
- anchorNode?: Node;
204
+ anchorNode?: Node | null;
205
205
  anchorOffset?: number;
206
- focusNode?: Node;
206
+ focusNode?: Node | null;
207
207
  focusOffset?: number;
208
208
  };
209
209
  spineItem: import('.').SpineItem;
@@ -12,6 +12,7 @@ export declare class HtmlRenderer extends DocumentRenderer {
12
12
  width: number;
13
13
  height: number;
14
14
  }>;
15
+ onRenderHeadless(): import('rxjs').Observable<Document | undefined>;
15
16
  private isImageType;
16
17
  private getFrameElement;
17
18
  getComputedStyleAfterLoad(): CSSStyleDeclaration | undefined;
@@ -1,7 +1,7 @@
1
1
  import { Observable } from 'rxjs';
2
2
  import { Manifest } from '@prose-reader/shared';
3
3
  import { ReaderSettingsManager } from '../../../settings/ReaderSettingsManager';
4
- import { ResourceHandler } from '../../../spineItem/ResourceHandler';
4
+ import { ResourceHandler } from '../../../spineItem/resources/ResourceHandler';
5
5
  export declare const attachFrameSrc: ({ item, resourcesHandler, }: {
6
6
  settings: ReaderSettingsManager;
7
7
  item: Manifest[`spineItems`][number];
@@ -0,0 +1,10 @@
1
+ import { Observable } from 'rxjs';
2
+ import { ReaderSettingsManager } from '../../../settings/ReaderSettingsManager';
3
+ import { Manifest } from '@prose-reader/shared';
4
+ import { Context } from '../../../context/Context';
5
+ export declare const loadMedias: ({ settings, item, context, }: {
6
+ settings: ReaderSettingsManager;
7
+ item: Manifest["items"][number];
8
+ context: Context;
9
+ }) => (stream: Observable<HTMLIFrameElement>) => Observable<HTMLIFrameElement>;
10
+ export declare const unloadMedias: (frameElement?: HTMLIFrameElement) => void;
@@ -2,5 +2,6 @@ export type InputSettings = {
2
2
  pageHorizontalMargin: number;
3
3
  pageVerticalMargin: number;
4
4
  layoutAutoResize: `container` | false;
5
+ layoutLayerTransition: boolean;
5
6
  };
6
7
  export type OutputSettings = InputSettings;
@@ -12,4 +12,5 @@ export declare class ImageRenderer extends DocumentRenderer {
12
12
  width: number;
13
13
  height: number;
14
14
  }>;
15
+ onRenderHeadless(): import('rxjs').Observable<never>;
15
16
  }
@@ -3,11 +3,17 @@ import { progressionEnhancer } from '../progression';
3
3
  import { EnhancerOutput } from '../types/enhancer';
4
4
  import { PaginationInfo } from '../../pagination/Pagination';
5
5
  import { ExtraPaginationInfo } from './types';
6
+ import { ConsolidatedResource, LocatableResource } from './locate';
6
7
  type ProgressionEnhancer = typeof progressionEnhancer;
7
8
  export declare const paginationEnhancer: <InheritOptions, InheritOutput extends EnhancerOutput<ProgressionEnhancer>, PaginationOutput extends Omit<InheritOutput["pagination"], "state$" | "state"> & {
8
9
  state$: Observable<PaginationInfo & ExtraPaginationInfo>;
9
10
  state: PaginationInfo & ExtraPaginationInfo;
10
11
  }>(next: (options: InheritOptions) => InheritOutput) => (options: InheritOptions) => Omit<InheritOutput, "pagination"> & {
11
- pagination: PaginationOutput;
12
+ pagination: PaginationOutput & {
13
+ locate: <T extends LocatableResource>(resources: T[]) => Observable<{
14
+ isStale: boolean;
15
+ data: (ConsolidatedResource & T)[];
16
+ }>;
17
+ };
12
18
  };
13
19
  export {};
@@ -0,0 +1,32 @@
1
+ import { Observable } from 'rxjs';
2
+ import { Reader } from '../../reader';
3
+ export type LocatableResource = {
4
+ cfi: string;
5
+ endCfi?: string;
6
+ };
7
+ export type ConsolidatedResource = LocatableResource & {
8
+ meta?: {
9
+ itemIndex?: number;
10
+ itemPageIndex?: number;
11
+ absolutePageIndex?: number;
12
+ startNode?: Node;
13
+ startOffset?: number;
14
+ range?: Range;
15
+ };
16
+ };
17
+ export declare const consolidate: (item: ConsolidatedResource, reader: Reader) => Observable<{
18
+ meta: {
19
+ itemIndex: number | undefined;
20
+ itemPageIndex?: number;
21
+ absolutePageIndex?: number;
22
+ startNode?: Node;
23
+ startOffset?: number;
24
+ range?: Range;
25
+ };
26
+ cfi: string;
27
+ endCfi?: string;
28
+ }>;
29
+ export declare const createLocator: (reader: Reader) => <T extends LocatableResource>(resources: T[]) => Observable<{
30
+ isStale: boolean;
31
+ data: T[];
32
+ }>;
@@ -6,11 +6,11 @@ export declare const getRangeFromSelection: (anchor: {
6
6
  node: Node;
7
7
  offset?: number;
8
8
  }) => Range | undefined;
9
- export declare const createRangeFromSelection: ({ selection, spineItem, }: {
9
+ export declare const createOrderedRangeFromSelection: ({ selection, spineItem, }: {
10
10
  selection: {
11
- anchorNode?: Node;
11
+ anchorNode?: Node | null;
12
12
  anchorOffset?: number;
13
- focusNode?: Node;
13
+ focusNode?: Node | null;
14
14
  focusOffset?: number;
15
15
  };
16
16
  spineItem: SpineItem;
@@ -14,11 +14,11 @@ export declare const selectionEnhancer: <InheritOptions, InheritOutput extends E
14
14
  selectionAfterPointerUp$: Observable<[Event, SelectionValue]>;
15
15
  lastSelectionOnPointerdown$: Observable<SelectionValue | undefined>;
16
16
  getSelection: () => SelectionValue | undefined;
17
- createRangeFromSelection: (params: {
17
+ createOrderedRangeFromSelection: (params: {
18
18
  selection: {
19
- anchorNode?: Node;
19
+ anchorNode?: Node | null;
20
20
  anchorOffset?: number;
21
- focusNode?: Node;
21
+ focusNode?: Node | null;
22
22
  focusOffset?: number;
23
23
  };
24
24
  spineItem: SpineItem;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { createReaderWithEnhancers as createReader } from './createReaderWithEnhancer';
2
2
  export type { Manifest } from '@prose-reader/shared';
3
3
  export { DocumentRenderer } from './spineItem/renderer/DocumentRenderer';
4
- export { ResourceHandler } from './spineItem/ResourceHandler';
4
+ export { ResourceHandler } from './spineItem/resources/ResourceHandler';
5
5
  export { HookManager } from './hooks/HookManager';
6
6
  export { SettingsManager } from './settings/SettingsManager';
7
7
  export type Reader = ReturnType<typeof createReader>;
@@ -13,3 +13,4 @@ export { waitForSwitch } from './utils/rxjs';
13
13
  export { SpineItem } from './spineItem/SpineItem';
14
14
  export * from './utils/DestroyableClass';
15
15
  export * from './utils/frames';
16
+ export * from './utils/rxjs';