@netless/app-slide 0.2.79 → 0.2.81-beta.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/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { ReadonlyTeleBox, RegisterParams, AppContext, View, NetlessApp } from '@netless/window-manager';
1
+ import { ReadonlyTeleBox, RegisterParams, Room, Player, AppContext, View, NetlessApp } from '@netless/window-manager';
2
2
  import { VolumeAdjuster, SlideError } from '@netless/ppt-player';
3
3
  import { IPlugin } from '@netless/plugin-system';
4
4
 
@@ -8,11 +8,22 @@ declare class AliTrackLogger {
8
8
  private config;
9
9
  private retryTimes;
10
10
  private enable;
11
+ private db;
12
+ private useIndexedDB;
13
+ private readonly DB_NAME;
14
+ private readonly STORE_NAME;
15
+ private readonly BATCH_SIZE;
11
16
  constructor();
17
+ private initIndexedDB;
18
+ private storeLogInIndexedDB;
19
+ private getLogsFromIndexedDB;
20
+ private deleteLogsFromIndexedDB;
12
21
  private uploadLoggerGlobalEvent;
13
22
  start(): Promise<void>;
14
23
  pause(): void;
15
- addLog(message: string, level: Level, taskId: string, randomId: string): void;
24
+ addLog(message: string, level: Level, taskId: string, randomId: string): Promise<void>;
25
+ private isDatabaseHealthy;
26
+ private recreateDatabase;
16
27
  destroy(): void;
17
28
  uploadLog(focus?: boolean): Promise<void>;
18
29
  setEnable(enable: boolean): void;
@@ -918,51 +929,52 @@ interface SlideControllerOptions {
918
929
  showRenderError?: boolean;
919
930
  invisibleBehavior?: "frozen" | "pause";
920
931
  }
932
+ type MagixEventListener = Parameters<AppContext<Attributes, MagixEvents>["addMagixEventListener"]>[1];
921
933
  declare class SlideController {
922
934
  readonly context: SlideControllerOptions["context"];
923
935
  readonly slide: Slide;
924
936
  readonly showRenderError: boolean;
925
937
  readonly onRenderError?: (error: Error, pageIndex: number) => void;
926
938
  readonly onNavigate: (index: number, origin?: string) => void;
927
- private readonly room?;
928
- private readonly player?;
929
- private readonly sideEffect;
930
- private readonly onRenderStart;
931
- private readonly onPageChanged;
932
- private readonly onTransitionStart;
933
- private readonly onTransitionEnd;
934
- private readonly onError;
935
- private syncStateOnceFlag;
936
- private visible;
937
- private savedIsFrozen;
938
- private invisibleBehavior;
939
+ protected readonly room?: Room;
940
+ protected readonly player?: Player;
941
+ protected readonly sideEffect: SideEffectManager;
942
+ protected readonly onRenderStart: SlideControllerOptions["onRenderStart"];
943
+ protected readonly onPageChanged: SlideControllerOptions["onPageChanged"];
944
+ protected readonly onTransitionStart: SlideControllerOptions["onTransitionStart"];
945
+ protected readonly onTransitionEnd: SlideControllerOptions["onTransitionEnd"];
946
+ protected readonly onError: SlideControllerOptions["onError"];
947
+ protected syncStateOnceFlag: boolean;
948
+ protected visible: boolean;
949
+ protected savedIsFrozen: boolean;
950
+ protected invisibleBehavior: "frozen" | "pause";
939
951
  previewList: string[];
940
952
  constructor({ context, anchor, onRenderStart, onPageChanged, onTransitionStart, onTransitionEnd, onNavigate, onError, onRenderError, showRenderError, invisibleBehavior, }: SlideControllerOptions);
941
953
  ready: boolean;
942
- private resolveReady;
954
+ protected resolveReady: (index: number) => void;
943
955
  readonly readyPromise: Promise<void>;
944
956
  jumpToPage(page: number, origin?: string): void;
945
- private initialize;
946
- private kickStart;
947
- private registerEventListeners;
948
- private onSyncDispatch;
949
- private magixEventListener;
950
- private syncStateOnce;
951
- private onStateChange;
952
- private pollCount;
953
- private pollReadyState;
954
- private _pageCount;
957
+ protected initialize(): void;
958
+ protected kickStart(): void;
959
+ protected registerEventListeners(): void;
960
+ protected onSyncDispatch: (event: SyncEvent) => void;
961
+ protected magixEventListener: MagixEventListener;
962
+ protected syncStateOnce(): void;
963
+ protected onStateChange: (state: SlideState) => void;
964
+ protected pollCount: number;
965
+ protected pollReadyState: () => void;
966
+ protected _pageCount: number;
955
967
  get pageCount(): number;
956
968
  get page(): number;
957
- private createSlide;
958
- private destroyed;
969
+ protected createSlide(anchor: HTMLDivElement, defaults?: Partial<ISlideConfig>): Slide;
970
+ protected destroyed: boolean;
959
971
  destroy(): void;
960
972
  timestamp: () => number;
961
973
  isFrozen: boolean;
962
- private _toFreeze;
974
+ protected _toFreeze: -1 | 0 | 1;
963
975
  freeze: () => void;
964
976
  unfreeze: () => Promise<void>;
965
- private onVisibilityChange;
977
+ protected onVisibilityChange: () => Promise<void>;
966
978
  }
967
979
 
968
980
  type MountSlideOptions = Omit<SlideControllerOptions, "context" | "onPageChanged"> & {
@@ -989,10 +1001,10 @@ declare class SlideDocsViewer {
989
1001
  protected readonly mountSlideController: SlideDocsViewerConfig["mountSlideController"];
990
1002
  protected readonly mountWhiteboard: SlideDocsViewerConfig["mountWhiteboard"];
991
1003
  protected readonly onNavigate: (index: number, origin?: string) => void;
992
- private readonly baseScenePath;
993
- private readonly appId;
994
- private isViewMounted;
995
- private justSildeReadonly;
1004
+ protected readonly baseScenePath: string;
1005
+ protected readonly appId: string;
1006
+ protected isViewMounted: boolean;
1007
+ protected justSildeReadonly: boolean;
996
1008
  constructor({ context, box, view, mountSlideController, mountWhiteboard, baseScenePath, appId, urlInterrupter, onPagesReady, onNavigate, }: SlideDocsViewerConfig);
997
1009
  $slide: HTMLDivElement;
998
1010
  $whiteboardView: HTMLDivElement;
@@ -1010,8 +1022,8 @@ declare class SlideDocsViewer {
1010
1022
  protected onRenderStart: () => void;
1011
1023
  protected onRenderEnd: () => void;
1012
1024
  onPageChanged: () => void;
1013
- private _onPageChangedTimer;
1014
- private _onPageChanged;
1025
+ protected _onPageChangedTimer: number;
1026
+ protected _onPageChanged: () => void;
1015
1027
  protected refreshPages: () => void;
1016
1028
  protected getPageIndex(page: number): number;
1017
1029
  unmount(): this;
@@ -1024,9 +1036,12 @@ declare class SlideDocsViewer {
1024
1036
  protected sideEffect: SideEffectManager;
1025
1037
  protected wrapClassName(className: string): string;
1026
1038
  protected namespace: string;
1027
- private getWhiteSnapshot;
1028
- private reportProgress;
1029
- private toPdf;
1039
+ protected getWhiteSnapshot(pageIndex: number, canvas: HTMLCanvasElement, ctx: CanvasRenderingContext2D, slideWidth: number, slideHeight: number): Promise<void>;
1040
+ protected reportProgress(progress: number, result: {
1041
+ pdf: ArrayBuffer;
1042
+ title: string;
1043
+ } | null): void;
1044
+ protected toPdf: () => Promise<null | undefined>;
1030
1045
  }
1031
1046
 
1032
1047
  interface PreviewParams {
@@ -1044,10 +1059,10 @@ declare class SlidePreviewer {
1044
1059
  slide: Slide | null;
1045
1060
  debug: boolean;
1046
1061
  $slide: HTMLDivElement;
1047
- private previewList;
1048
- private readonly sideEffect;
1062
+ protected previewList: string[];
1063
+ protected readonly sideEffect: SideEffectManager;
1049
1064
  ready: boolean;
1050
- private resolveReady;
1065
+ protected resolveReady: () => void;
1051
1066
  readonly readyPromise: Promise<void>;
1052
1067
  constructor(config: {
1053
1068
  target: HTMLElement;
@@ -1061,7 +1076,7 @@ declare class SlidePreviewer {
1061
1076
  * previewer.registerHotKeys(windowLike)
1062
1077
  */
1063
1078
  registerHotKeys(windowLike: Window): void;
1064
- private hotkeyListener;
1079
+ protected hotkeyListener: (ev: KeyboardEvent) => void;
1065
1080
  mount(taskId: string, url: string, resourceList: string[], previewList?: string[]): void;
1066
1081
  protected renderStyle(): HTMLElement;
1067
1082
  protected registerEventListeners(): void;
@@ -1071,7 +1086,7 @@ declare class SlidePreviewer {
1071
1086
  protected onError: ({ error }: {
1072
1087
  error: Error;
1073
1088
  }) => void;
1074
- private destroyed;
1089
+ protected destroyed: boolean;
1075
1090
  destroy(): void;
1076
1091
  protected refreshPages: () => void;
1077
1092
  protected getPageIndex(page: number): number;
@@ -1085,7 +1100,7 @@ declare class SlidePreviewer {
1085
1100
  declare const usePlugin: (plugin: any) => any;
1086
1101
  declare const version: string;
1087
1102
 
1088
- interface AppOptions extends Pick<ISlideConfig, "rtcAudio" | "useLocalCache" | "resourceTimeout" | "loaderDelegate" | "urlInterrupter" | "navigatorDelegate" | "fixedFrameSize" | "logger" | "enableGlobalClick"> {
1103
+ interface AppOptions extends Pick<ISlideConfig, "rtcAudio" | "useLocalCache" | "resourceTimeout" | "loaderDelegate" | "urlInterrupter" | "navigatorDelegate" | "fixedFrameSize" | "logger" | "enableGlobalClick" | "skipActionWhenFrozen"> {
1089
1104
  /** show debug controller */
1090
1105
  debug?: boolean;
1091
1106
  /** scale */