@netless/app-slide 0.2.103 → 0.2.104

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/README-zh.md CHANGED
@@ -36,6 +36,7 @@ manager.addApp({
36
36
  attributes: {
37
37
  taskId: "1234567...", // [2]
38
38
  url: "https://convertcdn.netless.link/dynamicConvert", // [3]
39
+ originSize: manager.mainView.size, // [4]
39
40
  previewList: [
40
41
  "https://convertcdn.netless.group/test/dynamicConvert/8ed5cce449874494a9ca7894b39415fb/preview/1.png",
41
42
  "https://convertcdn.netless.group/test/dynamicConvert/8ed5cce449874494a9ca7894b39415fb/preview/2.png",
@@ -67,6 +68,10 @@ manager.addApp({
67
68
 
68
69
  PPT 转码后资源存储服务器链接前缀,默认为 `https://convertcdn.netless.link/dynamicConvert`。
69
70
 
71
+ 4. (可选) `originSize`
72
+
73
+ 用于匹配课件笔记的固定白板分辨率。添加 app 时传入主白板尺寸;传入 `null` 时使用 PPT 自身分辨率。
74
+
70
75
  ### 协议
71
76
 
72
77
  MIT @ [netless](https://github.com/netless-io)
package/README.md CHANGED
@@ -39,6 +39,7 @@ manager.addApp({
39
39
  attributes: {
40
40
  taskId: "1234567...", // [2]
41
41
  url: "https://convertcdn.netless.link/dynamicConvert", // [3]
42
+ originSize: manager.mainView.size, // [4]
42
43
  previewList: [
43
44
  "https://convertcdn.netless.group/test/dynamicConvert/8ed5cce449874494a9ca7894b39415fb/preview/1.png",
44
45
  "https://convertcdn.netless.group/test/dynamicConvert/8ed5cce449874494a9ca7894b39415fb/preview/2.png",
@@ -80,6 +81,10 @@ Parameters:
80
81
 
81
82
  The base url of ppt resources, `https://convertcdn.netless.link/dynamicConvert` by default.
82
83
 
84
+ 4. (optional) `originSize`
85
+
86
+ Fixed whiteboard resolution used to fit the slide notes. Pass the main view size when adding the app; use `null` to use the slide resolution.
87
+
83
88
  ### Preview
84
89
 
85
90
  ```ts
package/dist/index.d.ts CHANGED
@@ -206,10 +206,6 @@ interface ISlideRenderOptions {
206
206
  */
207
207
  transitionResolutionLevel?: number;
208
208
  antialias?: boolean;
209
- /** Maximum compressed bytes accepted for one client-decoded GIF. */
210
- localGifMaxCompressedBytes?: number;
211
- /** Maximum estimated GIF working set for one cached slide. */
212
- localGifMaxWorkingSetBytes?: number;
213
209
  }
214
210
  interface INavigatorDelegate {
215
211
  gotoPage?: (index: number) => void;
@@ -483,7 +479,6 @@ declare class Slide extends Slide_base {
483
479
  private isAnimating;
484
480
  private renderingTaskManager;
485
481
  private isLoading;
486
- private isReleasing;
487
482
  private interactive;
488
483
  private syncCatchUpInputBlocked;
489
484
  private anchor;
@@ -794,6 +789,10 @@ interface Attributes {
794
789
  slideScale: number;
795
790
  translateX: number;
796
791
  translateY: number;
792
+ originSize: {
793
+ width: number;
794
+ height: number;
795
+ } | null;
797
796
  }
798
797
  type MagixPayload = {
799
798
  type: typeof SLIDE_EVENTS.syncDispatch;
@@ -1044,8 +1043,10 @@ declare class ResizableContainer {
1044
1043
  private root;
1045
1044
  container: HTMLDivElement;
1046
1045
  private scrollContainer;
1046
+ /** @deprecated Use addScaleChangedListener() for multiple observers. */
1047
1047
  onScaleChanged: ((scale: number) => void) | null;
1048
1048
  onLayoutUpdated: (() => void) | null;
1049
+ private scaleChangedListeners;
1049
1050
  private parent;
1050
1051
  private whiteboardContainer;
1051
1052
  private slide;
@@ -1053,6 +1054,7 @@ declare class ResizableContainer {
1053
1054
  private slideWidth;
1054
1055
  private slideHeight;
1055
1056
  private scrollBar;
1057
+ private layoutFrameId;
1056
1058
  private context;
1057
1059
  private translateX;
1058
1060
  private translateY;
@@ -1063,6 +1065,7 @@ declare class ResizableContainer {
1063
1065
  y: number;
1064
1066
  };
1065
1067
  getScale(): number;
1068
+ addScaleChangedListener(listener: (scale: number) => void): () => void;
1066
1069
  private renderScrollBar;
1067
1070
  setSlideObject(slide: Slide): void;
1068
1071
  private updateSlideSize;
@@ -1072,6 +1075,7 @@ declare class ResizableContainer {
1072
1075
  triggerSync: boolean;
1073
1076
  }): void;
1074
1077
  scaleContainer(applyScale: number): void;
1078
+ private cancelScheduledLayoutUpdate;
1075
1079
  addSlideContainer(slideContainer: HTMLDivElement): void;
1076
1080
  addWhiteboardContainer(whiteboardContainer: HTMLDivElement): void;
1077
1081
  getCurrentScale(): number;
@@ -1307,7 +1311,7 @@ interface AppResult {
1307
1311
  jumpToPage: (page: number) => boolean;
1308
1312
  setSildeReadonly: (bol: boolean) => void;
1309
1313
  setSyncEventQueuePolicy: (policy: NonNullable<ISlideConfig["syncEventQueuePolicy"]>) => void;
1310
- onScaleChanged: (cb: (scale: number) => void) => void;
1314
+ onScaleChanged: (cb: (scale: number) => void) => () => void;
1311
1315
  scaleView: (to: number) => void;
1312
1316
  getViewScale: () => number | undefined;
1313
1317
  translateView: (offsetX: number, offsetY: number) => void;