@netless/app-slide 0.2.106-beta.1 → 0.2.106-beta.2
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 +11 -0
- package/README.md +11 -0
- package/dist/index.d.ts +9 -2
- package/dist/main.cjs.js +165 -165
- package/dist/main.cjs.js.map +1 -1
- package/dist/main.es.js +148 -89
- package/dist/main.es.js.map +1 -1
- package/dist/main.iife.js +158 -158
- package/dist/main.iife.js.map +1 -1
- package/package.json +3 -3
- package/src/SlideDocsViewer/index.ts +44 -18
- package/src/SlideDocsViewer/navigation.ts +33 -0
- package/src/index.ts +23 -13
package/README-zh.md
CHANGED
|
@@ -72,6 +72,17 @@ manager.addApp({
|
|
|
72
72
|
|
|
73
73
|
用于匹配课件笔记的固定白板分辨率。添加 app 时传入主白板尺寸;传入 `null` 时使用 PPT 自身分辨率。
|
|
74
74
|
|
|
75
|
+
5. (可选) `navigationButtonMode`
|
|
76
|
+
|
|
77
|
+
底部左右按钮的导航模式,默认值为 `"page"`。
|
|
78
|
+
|
|
79
|
+
```ts
|
|
80
|
+
appOptions: {
|
|
81
|
+
navigationButtonMode: "page", // 上一页/下一页
|
|
82
|
+
// navigationButtonMode: "step", // 上一步/下一步
|
|
83
|
+
}
|
|
84
|
+
```
|
|
85
|
+
|
|
75
86
|
### 协议
|
|
76
87
|
|
|
77
88
|
MIT @ [netless](https://github.com/netless-io)
|
package/README.md
CHANGED
|
@@ -85,6 +85,17 @@ Parameters:
|
|
|
85
85
|
|
|
86
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
87
|
|
|
88
|
+
5. (optional) `navigationButtonMode`
|
|
89
|
+
|
|
90
|
+
Controls the footer left/right buttons. It defaults to `"page"`.
|
|
91
|
+
|
|
92
|
+
```ts
|
|
93
|
+
appOptions: {
|
|
94
|
+
navigationButtonMode: "page", // previous/next page
|
|
95
|
+
// navigationButtonMode: "step", // previous/next animation step
|
|
96
|
+
}
|
|
97
|
+
```
|
|
98
|
+
|
|
88
99
|
### Preview
|
|
89
100
|
|
|
90
101
|
```ts
|
package/dist/index.d.ts
CHANGED
|
@@ -1130,6 +1130,7 @@ interface SlideDocsViewerConfig {
|
|
|
1130
1130
|
appId: string;
|
|
1131
1131
|
urlInterrupter?: (url: string) => Promise<string>;
|
|
1132
1132
|
enableScale?: boolean;
|
|
1133
|
+
navigationButtonMode?: NavigationButtonMode;
|
|
1133
1134
|
onPagesReady?: (pages: DocsViewerPage[]) => void;
|
|
1134
1135
|
onNavigate?: (index: number, origin?: string) => void;
|
|
1135
1136
|
}
|
|
@@ -1147,6 +1148,7 @@ declare class SlideDocsViewer {
|
|
|
1147
1148
|
protected isViewMounted: boolean;
|
|
1148
1149
|
protected justSildeReadonly: boolean;
|
|
1149
1150
|
protected syncEventQueuePolicy: SyncEventQueuePolicy;
|
|
1151
|
+
private readonly navigationButtonMode;
|
|
1150
1152
|
private enableScale;
|
|
1151
1153
|
private boxSizeEventCount;
|
|
1152
1154
|
private latestBoxSize;
|
|
@@ -1155,7 +1157,7 @@ declare class SlideDocsViewer {
|
|
|
1155
1157
|
private lastAppliedSource;
|
|
1156
1158
|
private offBoxSizeChange;
|
|
1157
1159
|
private contentResizeObserver;
|
|
1158
|
-
constructor({ context, box, view, mountSlideController, mountWhiteboard, baseScenePath, appId, urlInterrupter, enableScale, onPagesReady, onNavigate, }: SlideDocsViewerConfig);
|
|
1160
|
+
constructor({ context, box, view, mountSlideController, mountWhiteboard, baseScenePath, appId, urlInterrupter, enableScale, navigationButtonMode, onPagesReady, onNavigate, }: SlideDocsViewerConfig);
|
|
1159
1161
|
$slide: HTMLDivElement;
|
|
1160
1162
|
$whiteboardView: HTMLDivElement;
|
|
1161
1163
|
$overlay: HTMLDivElement;
|
|
@@ -1187,6 +1189,8 @@ declare class SlideDocsViewer {
|
|
|
1187
1189
|
protected _onPageChanged: () => void;
|
|
1188
1190
|
protected refreshPages: () => void;
|
|
1189
1191
|
protected getPageIndex(page: number): number;
|
|
1192
|
+
protected unmountPromise?: Promise<this>;
|
|
1193
|
+
protected destroyPromise?: Promise<void>;
|
|
1190
1194
|
unmount(): Promise<this>;
|
|
1191
1195
|
setReadonly(readonly: boolean): void;
|
|
1192
1196
|
destroy(): Promise<void>;
|
|
@@ -1297,6 +1301,7 @@ declare class SlidePreviewer {
|
|
|
1297
1301
|
declare const usePlugin: (plugin: any) => any;
|
|
1298
1302
|
declare const version: string;
|
|
1299
1303
|
|
|
1304
|
+
type NavigationButtonMode = "page" | "step";
|
|
1300
1305
|
interface AppOptions extends Pick<ISlideConfig, "rtcAudio" | "useLocalCache" | "resourceTimeout" | "loaderDelegate" | "urlInterrupter" | "navigatorDelegate" | "fixedFrameSize" | "logger" | "enableGlobalClick" | "skipActionWhenFrozen" | "syncEventQueuePolicy"> {
|
|
1301
1306
|
/** show debug controller */
|
|
1302
1307
|
debug?: boolean;
|
|
@@ -1326,6 +1331,8 @@ interface AppOptions extends Pick<ISlideConfig, "rtcAudio" | "useLocalCache" | "
|
|
|
1326
1331
|
invisibleBehavior?: "frozen" | "pause";
|
|
1327
1332
|
/** just readonly, no operate silder */
|
|
1328
1333
|
justSildeReadonly?: true;
|
|
1334
|
+
/** footer navigation button behavior @default 'page' */
|
|
1335
|
+
navigationButtonMode?: NavigationButtonMode;
|
|
1329
1336
|
enableScale?: boolean;
|
|
1330
1337
|
resourceMaxRetries?: number;
|
|
1331
1338
|
onResourceMaxRetries: (url: string, error: Error) => void;
|
|
@@ -1364,4 +1371,4 @@ declare const SlideApp: NetlessApp<Attributes, MagixEvents, AppOptions, AppResul
|
|
|
1364
1371
|
};
|
|
1365
1372
|
|
|
1366
1373
|
export { DefaultUrl, DocsViewer, FreezerLength, SideEffectManager, Slide, SlideController, SlideControllerBase, SlideDocsViewer, SlidePreviewer, addHooks, apps, SlideApp as default, getFreezerLength, log, logger, onCreated, onDestroyed, previewSlide, setFreezerLength, syncSceneWithSlide, useFreezer, usePlugin, version };
|
|
1367
|
-
export type { AddHooks, AppOptions, AppResult, Attributes, FreezableSlide, ILogger, PreviewParams };
|
|
1374
|
+
export type { AddHooks, AppOptions, AppResult, Attributes, FreezableSlide, ILogger, NavigationButtonMode, PreviewParams };
|