@prose-reader/core 1.124.0 → 1.126.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/reader.d.ts CHANGED
@@ -25,6 +25,18 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
25
25
  start: string;
26
26
  end: string;
27
27
  };
28
+ generateCfiFromSelection: ({ item, selection, }: {
29
+ selection: Selection;
30
+ item: import('@prose-reader/shared').Manifest["spineItems"][number];
31
+ }) => {
32
+ anchorCfi: string | undefined;
33
+ focusCfi: string | undefined;
34
+ };
35
+ parseCfi: (cfi: string) => {
36
+ cleanedCfi: string;
37
+ itemIndex?: number;
38
+ offset?: number;
39
+ };
28
40
  generateCfiForSpineItemPage: (params: {
29
41
  pageIndex: number;
30
42
  spineItem: SpineItem;
@@ -32,17 +44,14 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
32
44
  resolveCfi: (params: Omit<Parameters<typeof resolveCfi>[0], "spineItemsManager">) => {
33
45
  node: Node | undefined;
34
46
  offset: number | undefined;
35
- spineItemIndex: number;
36
47
  spineItem: SpineItem;
37
48
  } | {
38
- spineItemIndex: number;
39
49
  spineItem: SpineItem;
40
50
  node?: undefined;
41
51
  offset?: undefined;
42
52
  } | undefined;
43
53
  };
44
54
  navigation: {
45
- viewportFree$: import('rxjs').Observable<"free">;
46
55
  viewportBusy$: import('rxjs').Observable<"busy">;
47
56
  getViewportPosition: () => {
48
57
  x: number;
@@ -106,6 +115,7 @@ export declare const createReader: (inputSettings: CreateReaderOptions) => {
106
115
  pages: import('./spine/SpineLayout').PageLayoutInformation[];
107
116
  }>;
108
117
  viewportState$: import('rxjs').Observable<"free" | "busy">;
118
+ viewportFree$: import('rxjs').Observable<"free">;
109
119
  state$: import('rxjs').Observable<"idle" | "ready">;
110
120
  $: {
111
121
  state$: import('rxjs').Observable<{
@@ -1,5 +1,5 @@
1
1
  import { Manifest } from '@prose-reader/shared';
2
- import { DocumentRenderer } from '../spineItem/DocumentRenderer';
2
+ import { DocumentRenderer, DocumentRendererParams } from '../spineItem/DocumentRenderer';
3
3
  import { Observable } from 'rxjs';
4
4
  export type CoreInputSettings = {
5
5
  forceSinglePageMode: boolean;
@@ -10,13 +10,11 @@ export type CoreInputSettings = {
10
10
  snapAnimationDuration: number;
11
11
  navigationSnapThreshold: number;
12
12
  numberOfAdjacentSpineItemToPreLoad: number;
13
- getResource?: (item: Manifest["spineItems"][number]) => Observable<URL | Response | {
13
+ getResource?: (item: Manifest["items"][number]) => Observable<URL | Response | {
14
14
  custom: true;
15
15
  data: unknown;
16
16
  } | undefined> | undefined;
17
- getRenderer?: (item: Manifest["spineItems"][number]) => {
18
- new (...args: any[]): DocumentRenderer;
19
- };
17
+ getRenderer?: (item: Manifest["spineItems"][number]) => undefined | ((props: DocumentRendererParams) => DocumentRenderer);
20
18
  };
21
19
  export type ComputedCoreSettings = {
22
20
  computedPageTurnMode: CoreInputSettings[`pageTurnMode`];
@@ -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(spineItem: SpineItem | undefined): number | undefined;
14
+ getSpineItemIndex(spineItemOrId: SpineItem | string | undefined): number | undefined;
15
15
  addMany(spineItems: SpineItem[]): void;
16
16
  getSpineItemFromCfi(cfi: string): SpineItem | undefined;
17
17
  get items(): SpineItem[];
@@ -7,7 +7,16 @@ import { ResourceHandler } from './ResourceHandler';
7
7
  type Layer = {
8
8
  element: HTMLElement;
9
9
  };
10
+ export type DocumentRendererParams = {
11
+ context: Context;
12
+ settings: ReaderSettingsManager;
13
+ hookManager: HookManager;
14
+ item: Manifest[`spineItems`][number];
15
+ containerElement: HTMLElement;
16
+ resourcesHandler: ResourceHandler;
17
+ };
10
18
  export declare abstract class DocumentRenderer {
19
+ private triggerSubject;
11
20
  protected context: Context;
12
21
  protected settings: ReaderSettingsManager;
13
22
  protected hookManager: HookManager;
@@ -15,11 +24,17 @@ export declare abstract class DocumentRenderer {
15
24
  protected containerElement: HTMLElement;
16
25
  protected resourcesHandler: ResourceHandler;
17
26
  protected stateSubject: BehaviorSubject<"idle" | "loading" | "loaded" | "unloading" | "ready">;
18
- private triggerSubject;
19
- layers: Layer[];
20
27
  protected unload$: Observable<undefined>;
21
28
  protected load$: Observable<undefined>;
22
- constructor(context: Context, settings: ReaderSettingsManager, hookManager: HookManager, item: Manifest[`spineItems`][number], containerElement: HTMLElement, resourcesHandler: ResourceHandler);
29
+ layers: Layer[];
30
+ constructor(params: {
31
+ context: Context;
32
+ settings: ReaderSettingsManager;
33
+ hookManager: HookManager;
34
+ item: Manifest[`spineItems`][number];
35
+ containerElement: HTMLElement;
36
+ resourcesHandler: ResourceHandler;
37
+ });
23
38
  protected destroy$: Observable<"destroy">;
24
39
  get state$(): BehaviorSubject<"idle" | "loading" | "loaded" | "unloading" | "ready">;
25
40
  load(): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prose-reader/core",
3
- "version": "1.124.0",
3
+ "version": "1.126.0",
4
4
  "type": "module",
5
5
  "main": "./dist/index.umd.cjs",
6
6
  "module": "./dist/index.js",
@@ -25,10 +25,10 @@
25
25
  "tsc": "tsc"
26
26
  },
27
27
  "dependencies": {
28
- "@prose-reader/shared": "^1.124.0"
28
+ "@prose-reader/shared": "^1.126.0"
29
29
  },
30
30
  "peerDependencies": {
31
31
  "rxjs": "*"
32
32
  },
33
- "gitHead": "8d9f9991a83dd1d21270a58d3aef48379e8f5e57"
33
+ "gitHead": "f17c8db176c5f917d91776aeb1e6f31f99abd0b7"
34
34
  }
@@ -1,5 +0,0 @@
1
- export declare const extractProseMetadataFromCfi: (cfi: string) => {
2
- cleanedCfi: string;
3
- itemId?: string;
4
- offset?: number;
5
- };