@prose-reader/core 1.195.0 → 1.197.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.
@@ -26,5 +26,5 @@ export declare class SpineItemsManagerMock {
26
26
  getAll(): Item[];
27
27
  getLength(): number;
28
28
  getSpineItemIndex(item: Item): number;
29
- getAbsolutePositionOf(spineItem: any): Item;
29
+ getSpineItemRelativeLayoutInfo(spineItem: any): Item;
30
30
  }
@@ -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
- export type LayoutPosition = {
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 './types';
18
8
  export type PageLayoutInformation = {
19
9
  absolutePageIndex: number;
20
10
  itemIndex: number;
21
- absolutePosition: LayoutPosition;
11
+ absolutePosition: SpineItemRelativeLayout;
22
12
  };
23
13
  export type LayoutInfo = {
24
- spineItemsAbsolutePositions: LayoutPosition[];
25
- spineItemsPagesAbsolutePositions: LayoutPosition[][];
26
14
  pages: PageLayoutInformation[];
27
15
  };
28
- export type Layout = LayoutInfo;
29
16
  export declare class SpineLayout extends DestroyableClass {
30
17
  protected spineItemsManager: SpineItemsManager;
31
18
  protected context: Context;
32
19
  protected settings: ReaderSettingsManager;
33
20
  protected layoutSubject: Subject<unknown>;
34
- readonly layout$: Observable<Layout>;
21
+ protected spineItemsRelativeLayouts: SpineItemRelativeLayout[];
22
+ readonly layout$: Observable<LayoutInfo>;
35
23
  readonly info$: Observable<LayoutInfo>;
36
24
  constructor(spineItemsManager: SpineItemsManager, context: Context, settings: ReaderSettingsManager);
37
25
  layout(): void;
38
- getAbsolutePositionOf(spineItemOrIndex: SpineItem | number | string | undefined): {
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
- };
26
+ getSpineItemRelativeLayoutInfo(spineItemOrIndex: SpineItem | number | string | undefined): SpineItemRelativeLayout;
27
+ get numberOfPages(): number;
48
28
  destroy(): void;
49
29
  }
@@ -1,9 +1,9 @@
1
1
  import { ViewportPosition } from '../../navigation/viewport/ViewportNavigator';
2
- import { LayoutPosition } from '../SpineLayout';
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
- }) => LayoutPosition;
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
  }>;
@@ -78,11 +78,6 @@ export declare const createSpineLocator: ({ spineItemsManager, context, spineIte
78
78
  getSpineItemPagesPosition: ({ item }: {
79
79
  item: SpineItem;
80
80
  }) => SafeSpineItemPosition[];
81
- getSpineItemNumberOfPages: (params: {
82
- itemWidth: number;
83
- itemHeight: number;
84
- isUsingVerticalWriting: boolean;
85
- }) => number;
86
81
  };
87
82
  getSafeSpineItemPositionFromUnsafeSpineItemPosition: (unsafePosition: UnsafeSpineItemPosition, spineItem: SpineItem) => SafeSpineItemPosition;
88
83
  };
@@ -3,7 +3,7 @@ import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
3
3
  import { SpineItem } from '../../spineItem/SpineItem';
4
4
  import { SpineItemsManager } from '../SpineItemsManager';
5
5
  import { SpineLayout } from '../SpineLayout';
6
- export declare const getAbsolutePageIndexFromPageIndex: ({ pageIndex, spineItemOrId, spineLayout, spineItemsManager, context, settings, }: {
6
+ export declare const getAbsolutePageIndexFromPageIndex: ({ pageIndex, spineItemOrId, spineItemsManager, }: {
7
7
  pageIndex: number;
8
8
  spineItemOrId: number | SpineItem | string;
9
9
  spineLayout: SpineLayout;
@@ -3,7 +3,7 @@ import { ReaderSettingsManager } from '../../settings/ReaderSettingsManager';
3
3
  import { SpineItem } from '../../spineItem/SpineItem';
4
4
  import { SpineItemsManager } from '../SpineItemsManager';
5
5
  import { SpineLayout } from '../SpineLayout';
6
- export declare const getSpineInfoFromAbsolutePageIndex: ({ absolutePageIndex, spineLayout, spineItemsManager, context, settings, }: {
6
+ export declare const getSpineInfoFromAbsolutePageIndex: ({ absolutePageIndex, spineItemsManager, }: {
7
7
  absolutePageIndex: number;
8
8
  spineLayout: SpineLayout;
9
9
  spineItemsManager: SpineItemsManager;
@@ -0,0 +1,16 @@
1
+ export type SpineItemRelativeLayout = {
2
+ left: number;
3
+ right: number;
4
+ top: number;
5
+ bottom: number;
6
+ width: number;
7
+ height: number;
8
+ x: number;
9
+ y: number;
10
+ __symbol?: `SpineItemRelativeLayout`;
11
+ };
12
+ export type SpinePosition = {
13
+ x: number;
14
+ y: number;
15
+ __symbol?: `SpinePosition` | SpineItemRelativeLayout["__symbol"];
16
+ };
@@ -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$: SpineItemLayout["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,18 +27,9 @@ 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">;
46
33
  get renditionLayout(): "reflowable" | "pre-paginated";
34
+ get numberOfPages(): number;
47
35
  }
@@ -37,13 +37,7 @@ export declare class SpineItemLayout extends DestroyableClass {
37
37
  left?: number;
38
38
  top?: number;
39
39
  }) => void;
40
- get layoutPosition(): {
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
  };
@@ -37,9 +37,4 @@ export declare const createSpineItemLocator: ({ context, settings, }: {
37
37
  getSpineItemPagesPosition: ({ item }: {
38
38
  item: SpineItem;
39
39
  }) => SafeSpineItemPosition[];
40
- getSpineItemNumberOfPages: (params: {
41
- itemWidth: number;
42
- itemHeight: number;
43
- isUsingVerticalWriting: boolean;
44
- }) => number;
45
40
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prose-reader/core",
3
- "version": "1.195.0",
3
+ "version": "1.197.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.195.0"
26
+ "@prose-reader/shared": "^1.197.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": "25b15357887d35277e9fdfe13893ee52ae960d84"
34
+ "gitHead": "9b789edab470b534ad96ef03e0c42e36182ac61e"
35
35
  }