@prose-reader/core 1.58.0 → 1.60.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.
Files changed (38) hide show
  1. package/dist/createReaderWithEnhancer.d.ts +4 -48
  2. package/dist/enhancers/fonts/SettingsManager.d.ts +10 -0
  3. package/dist/enhancers/fonts/fonts.d.ts +7 -0
  4. package/dist/enhancers/fonts/types.d.ts +9 -0
  5. package/dist/enhancers/layoutEnhancer/SettingsManager.d.ts +10 -0
  6. package/dist/enhancers/layoutEnhancer/layoutEnhancer.d.ts +5 -8
  7. package/dist/enhancers/layoutEnhancer/types.d.ts +5 -7
  8. package/dist/index.js +290 -212
  9. package/dist/index.js.map +1 -1
  10. package/dist/index.umd.cjs +223 -145
  11. package/dist/index.umd.cjs.map +1 -1
  12. package/dist/reader.d.ts +2 -2
  13. package/dist/settings/ReaderSettingsManager.d.ts +32 -0
  14. package/dist/settings/SettingsInterface.d.ts +13 -0
  15. package/dist/settings/SettingsManagerOverload.d.ts +23 -0
  16. package/dist/settings/types.d.ts +7 -6
  17. package/dist/spine/createSpine.d.ts +2 -2
  18. package/dist/spine/locationResolver.d.ts +2 -2
  19. package/dist/spine/navigationResolver.d.ts +2 -2
  20. package/dist/spineItem/commonSpineItem.d.ts +2 -2
  21. package/dist/spineItem/createSpineItem.d.ts +2 -2
  22. package/dist/spineItem/frameItem/frameItem.d.ts +2 -2
  23. package/dist/spineItem/frameItem/loader.d.ts +2 -2
  24. package/dist/spineItem/navigationResolver.d.ts +2 -2
  25. package/dist/spineItem/prePaginatedSpineItem.d.ts +2 -2
  26. package/dist/spineItem/reflowableSpineItem.d.ts +2 -2
  27. package/dist/spineItemManager.d.ts +2 -2
  28. package/dist/types/reader.d.ts +4 -4
  29. package/dist/utils/objects.d.ts +1 -0
  30. package/dist/viewportNavigator/panViewportNavigator.d.ts +2 -2
  31. package/dist/viewportNavigator/scrollViewportNavigator.d.ts +2 -2
  32. package/dist/viewportNavigator/viewportNavigator.d.ts +2 -2
  33. package/package.json +3 -3
  34. package/dist/enhancers/fonts.d.ts +0 -19
  35. package/dist/settings/SettingsManager.d.ts +0 -14
  36. package/dist/settings/defaultSettings.d.ts +0 -3
  37. package/dist/settings/getComputedSettings.d.ts +0 -4
  38. package/dist/utils/compose.d.ts +0 -8
@@ -1,13 +1,6 @@
1
- export declare const createReaderWithEnhancers: (options: Partial<import('./settings/types').Settings> & {
1
+ export declare const createReaderWithEnhancers: (options: Partial<import('./settings/types').CoreInputSettings> & {
2
2
  theme?: import('./enhancers/theme').Theme;
3
- } & import('./enhancers/layoutEnhancer/types').SettingsInput & {
4
- layoutAutoResize?: `container` | false;
5
- } & {
6
- fontScale?: number;
7
- lineHeight?: number | `publisher`;
8
- fontWeight?: (200 | 300 | 100 | 400 | 500 | 600 | 700 | 800 | 900) | `publisher`;
9
- fontJustification?: ("center" | "right" | "left" | "justify") | `publisher`;
10
- } & {
3
+ } & Partial<import('./enhancers/layoutEnhancer/types').InputSettings> & Partial<import('./enhancers/fonts/types').InputSettings> & {
11
4
  loadingElementCreate?: (options: {
12
5
  container: HTMLElement;
13
6
  item: {
@@ -128,16 +121,7 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
128
121
  state$: ReturnType<typeof import('./enhancers/navigation/state').createState>;
129
122
  };
130
123
  } & import('./enhancers/zoom/types').Api, "settings"> & {
131
- settings: Omit<import('./settings/SettingsManager').SettingsManager, "setSettings" | "settings$"> & {
132
- settings$: import('rxjs').Observable<import('./settings/types').Settings & {
133
- computedPageTurnMode: import('./settings/types').Settings[`pageTurnMode`];
134
- computedPageTurnDirection: import('./settings/types').Settings[`pageTurnDirection`];
135
- computedPageTurnAnimation: import('./settings/types').Settings[`pageTurnAnimation`];
136
- computedPageTurnAnimationDuration: number;
137
- computedSnapAnimationDuration: number;
138
- } & Required<import('./enhancers/layoutEnhancer/types').SettingsInput>>;
139
- setSettings: (settings: Partial<import('./settings/types').Settings> & import('./enhancers/layoutEnhancer/types').SettingsInput) => void;
140
- };
124
+ settings: import('./settings/SettingsInterface').SettingsInterface<import('./settings/types').CoreInputSettings & import('./enhancers/layoutEnhancer/types').InputSettings, import('./enhancers/layoutEnhancer/types').InputSettings & import('./settings/types').CoreInputSettings & import('./settings/types').ComputedCoreSettings>;
141
125
  } & {
142
126
  utils: {
143
127
  isOrIsWithinValidLink: (target: Event[`target`]) => boolean;
@@ -151,35 +135,7 @@ export declare const createReaderWithEnhancers: (options: Partial<import('./sett
151
135
  }>;
152
136
  };
153
137
  }, "settings"> & {
154
- settings: Omit<Omit<import('./settings/SettingsManager').SettingsManager, "setSettings" | "settings$"> & {
155
- settings$: import('rxjs').Observable<import('./settings/types').Settings & {
156
- computedPageTurnMode: import('./settings/types').Settings[`pageTurnMode`];
157
- computedPageTurnDirection: import('./settings/types').Settings[`pageTurnDirection`];
158
- computedPageTurnAnimation: import('./settings/types').Settings[`pageTurnAnimation`];
159
- computedPageTurnAnimationDuration: number;
160
- computedSnapAnimationDuration: number;
161
- } & Required<import('./enhancers/layoutEnhancer/types').SettingsInput>>;
162
- setSettings: (settings: Partial<import('./settings/types').Settings> & import('./enhancers/layoutEnhancer/types').SettingsInput) => void;
163
- }, "setSettings" | "settings$"> & {
164
- settings$: import('rxjs').Observable<import('./settings/types').Settings & {
165
- computedPageTurnMode: import('./settings/types').Settings[`pageTurnMode`];
166
- computedPageTurnDirection: import('./settings/types').Settings[`pageTurnDirection`];
167
- computedPageTurnAnimation: import('./settings/types').Settings[`pageTurnAnimation`];
168
- computedPageTurnAnimationDuration: number;
169
- computedSnapAnimationDuration: number;
170
- } & Required<import('./enhancers/layoutEnhancer/types').SettingsInput> & Required<{
171
- fontScale?: number;
172
- lineHeight?: number | `publisher`;
173
- fontWeight?: (200 | 300 | 100 | 400 | 500 | 600 | 700 | 800 | 900) | `publisher`;
174
- fontJustification?: ("center" | "right" | "left" | "justify") | `publisher`;
175
- }>>;
176
- setSettings: (settings: Partial<import('./settings/types').Settings> & import('./enhancers/layoutEnhancer/types').SettingsInput & {
177
- fontScale?: number;
178
- lineHeight?: number | `publisher`;
179
- fontWeight?: (200 | 300 | 100 | 400 | 500 | 600 | 700 | 800 | 900) | `publisher`;
180
- fontJustification?: ("center" | "right" | "left" | "justify") | `publisher`;
181
- }) => void;
182
- };
138
+ settings: import('./settings/SettingsInterface').SettingsInterface<import('./settings/types').CoreInputSettings & import('./enhancers/layoutEnhancer/types').InputSettings & import('./enhancers/fonts/types').InputSettings, import('./enhancers/fonts/types').InputSettings & import('./enhancers/layoutEnhancer/types').InputSettings & import('./settings/types').CoreInputSettings & import('./settings/types').ComputedCoreSettings>;
183
139
  } & {
184
140
  loading: {
185
141
  $: {
@@ -0,0 +1,10 @@
1
+ import { InputSettings } from './types';
2
+ import { SettingsManagerOverload } from '../../settings/SettingsManagerOverload';
3
+ import { CoreInputSettings, CoreOutputSettings } from '../../settings/types';
4
+
5
+ export declare class SettingsManager<ParentInputSettings extends CoreInputSettings, ParentOutputSettings extends CoreOutputSettings> extends SettingsManagerOverload<InputSettings, InputSettings, ParentInputSettings, ParentOutputSettings> {
6
+ computeOutputSettings(): InputSettings;
7
+ hasSettingsChanged(newOutputSettings: InputSettings): boolean;
8
+ getCleanedParentInputSettings(settings: Partial<InputSettings & ParentInputSettings>): ParentInputSettings;
9
+ getDefaultSettings(): InputSettings;
10
+ }
@@ -0,0 +1,7 @@
1
+ import { EnhancerOptions, EnhancerOutput, RootEnhancer } from '../types/enhancer';
2
+ import { InputSettings } from './types';
3
+ import { SettingsInterface } from '../../settings/SettingsInterface';
4
+
5
+ export declare const fontsEnhancer: <InheritOptions extends EnhancerOptions<RootEnhancer>, InheritOutput extends EnhancerOutput<RootEnhancer>, InheritSettings extends NonNullable<InheritOutput["settings"]["_inputSettings"]>, InheritComputedSettings extends NonNullable<InheritOutput["settings"]["_outputSettings"]>, Output extends Omit<InheritOutput, "settings"> & {
6
+ settings: SettingsInterface<InheritSettings & InputSettings, InputSettings & InheritComputedSettings>;
7
+ }>(next: (options: InheritOptions) => InheritOutput) => (options: InheritOptions & Partial<InputSettings>) => Output;
@@ -0,0 +1,9 @@
1
+ declare const FONT_WEIGHT: readonly [100, 200, 300, 400, 500, 600, 700, 800, 900];
2
+ declare const FONT_JUSTIFICATION: readonly ["center", "left", "right", "justify"];
3
+ export type InputSettings = {
4
+ fontScale: number;
5
+ lineHeight: number | `publisher`;
6
+ fontWeight: (typeof FONT_WEIGHT)[number] | `publisher`;
7
+ fontJustification: (typeof FONT_JUSTIFICATION)[number] | `publisher`;
8
+ };
9
+ export {};
@@ -0,0 +1,10 @@
1
+ import { InputSettings, OutputSettings } from './types';
2
+ import { SettingsManagerOverload } from '../../settings/SettingsManagerOverload';
3
+ import { CoreInputSettings, CoreOutputSettings } from '../../settings/types';
4
+
5
+ export declare class SettingsManager<ParentInputSettings extends CoreInputSettings, ParentOutputSettings extends CoreOutputSettings> extends SettingsManagerOverload<InputSettings, OutputSettings, ParentInputSettings, ParentOutputSettings> {
6
+ computeOutputSettings(): InputSettings;
7
+ hasSettingsChanged(newOutputSettings: InputSettings): boolean;
8
+ getCleanedParentInputSettings(settings: Partial<InputSettings & ParentInputSettings>): ParentInputSettings;
9
+ getDefaultSettings(): InputSettings;
10
+ }
@@ -1,10 +1,7 @@
1
- import { Observable, ObservedValueOf } from 'rxjs';
2
- import { Options, SettingsInput, SettingsOutput } from './types';
3
1
  import { EnhancerOptions, EnhancerOutput, RootEnhancer } from '../types/enhancer';
2
+ import { SettingsInterface } from '../../settings/SettingsInterface';
3
+ import { InputSettings, OutputSettings } from './types';
4
4
 
5
- export declare const layoutEnhancer: <InheritOptions extends EnhancerOptions<RootEnhancer>, InheritOutput extends EnhancerOutput<RootEnhancer>, Settings$ extends InheritOutput["settings"]["settings$"], SetSettings extends (settings: Parameters<InheritOutput["settings"]["setSettings"]>[0] & SettingsInput) => void, Output extends Omit<InheritOutput, "settings"> & {
6
- settings: Omit<InheritOutput["settings"], "setSettings" | "settings$"> & {
7
- settings$: Observable<ObservedValueOf<Settings$> & SettingsOutput>;
8
- setSettings: SetSettings;
9
- };
10
- }>(next: (options: InheritOptions) => InheritOutput) => (options: InheritOptions & Options) => Output;
5
+ export declare const layoutEnhancer: <InheritOptions extends EnhancerOptions<RootEnhancer>, InheritOutput extends EnhancerOutput<RootEnhancer>, InheritSettings extends NonNullable<InheritOutput["settings"]["_inputSettings"]>, InheritComputedSettings extends NonNullable<InheritOutput["settings"]["_outputSettings"]>, Output extends Omit<InheritOutput, "settings"> & {
6
+ settings: SettingsInterface<InheritSettings & InputSettings, OutputSettings & InheritComputedSettings>;
7
+ }>(next: (options: InheritOptions) => InheritOutput) => (options: InheritOptions & Partial<InputSettings>) => Output;
@@ -1,8 +1,6 @@
1
- export type SettingsInput = {
2
- pageHorizontalMargin?: number;
3
- pageVerticalMargin?: number;
4
- };
5
- export type SettingsOutput = Required<SettingsInput>;
6
- export type Options = SettingsInput & {
7
- layoutAutoResize?: `container` | false;
1
+ export type InputSettings = {
2
+ pageHorizontalMargin: number;
3
+ pageVerticalMargin: number;
4
+ layoutAutoResize: `container` | false;
8
5
  };
6
+ export type OutputSettings = InputSettings;