@netless/app-slide 0.2.44 → 0.2.45-alpha.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/dist/index.d.ts +5 -1
- package/dist/main.cjs.js +33 -33
- package/dist/main.cjs.js.map +1 -1
- package/dist/main.es.js +13 -3
- package/dist/main.es.js.map +1 -1
- package/dist/main.iife.js +33 -33
- package/dist/main.iife.js.map +1 -1
- package/package.json +1 -1
- package/src/SlideController/index.ts +5 -1
- package/src/SlideDocsViewer/index.ts +12 -0
- package/src/SlideDocsViewer/style.scss +5 -0
- package/src/index.ts +1 -0
package/package.json
CHANGED
|
@@ -31,6 +31,7 @@ export const EmptyAttributes: Attributes = {
|
|
|
31
31
|
export interface SlideControllerOptions {
|
|
32
32
|
context: AppContext<Attributes, MagixEvents, AppOptions>;
|
|
33
33
|
anchor: HTMLDivElement;
|
|
34
|
+
onRenderStart: () => void;
|
|
34
35
|
onRenderEnd: () => void;
|
|
35
36
|
onPageChanged: (page: number) => void;
|
|
36
37
|
onTransitionStart: () => void;
|
|
@@ -54,6 +55,7 @@ export class SlideController {
|
|
|
54
55
|
private readonly player?: Player;
|
|
55
56
|
private readonly sideEffect = new SideEffectManager();
|
|
56
57
|
|
|
58
|
+
private readonly onRenderStart: SlideControllerOptions["onRenderStart"];
|
|
57
59
|
private readonly onPageChanged: SlideControllerOptions["onPageChanged"];
|
|
58
60
|
private readonly onTransitionStart: SlideControllerOptions["onTransitionStart"];
|
|
59
61
|
private readonly onTransitionEnd: SlideControllerOptions["onTransitionEnd"];
|
|
@@ -67,6 +69,7 @@ export class SlideController {
|
|
|
67
69
|
public constructor({
|
|
68
70
|
context,
|
|
69
71
|
anchor,
|
|
72
|
+
onRenderStart,
|
|
70
73
|
onPageChanged,
|
|
71
74
|
onTransitionStart,
|
|
72
75
|
onTransitionEnd,
|
|
@@ -74,6 +77,7 @@ export class SlideController {
|
|
|
74
77
|
onRenderError,
|
|
75
78
|
showRenderError,
|
|
76
79
|
}: SlideControllerOptions) {
|
|
80
|
+
this.onRenderStart = onRenderStart
|
|
77
81
|
this.onPageChanged = onPageChanged;
|
|
78
82
|
this.onTransitionStart = onTransitionStart;
|
|
79
83
|
this.onTransitionEnd = onTransitionEnd;
|
|
@@ -165,8 +169,8 @@ export class SlideController {
|
|
|
165
169
|
})
|
|
166
170
|
);
|
|
167
171
|
|
|
172
|
+
slide.on(SLIDE_EVENTS.renderStart, this.onRenderStart);
|
|
168
173
|
slide.on(SLIDE_EVENTS.slideChange, this.onPageChanged);
|
|
169
|
-
slide.on(SLIDE_EVENTS.renderStart, this.onTransitionStart);
|
|
170
174
|
slide.on(SLIDE_EVENTS.renderEnd, this.onTransitionEnd);
|
|
171
175
|
slide.on(SLIDE_EVENTS.mainSeqStepStart, this.onTransitionStart);
|
|
172
176
|
slide.on(SLIDE_EVENTS.mainSeqStepEnd, this.onTransitionEnd);
|
|
@@ -146,6 +146,7 @@ export class SlideDocsViewer {
|
|
|
146
146
|
|
|
147
147
|
this.slideController = this.mountSlideController({
|
|
148
148
|
anchor: this.$slide,
|
|
149
|
+
onRenderStart: this.onRenderStart,
|
|
149
150
|
onRenderEnd: this.onRenderEnd,
|
|
150
151
|
onTransitionStart: this.viewer.setPlaying,
|
|
151
152
|
onTransitionEnd: this.viewer.setPaused,
|
|
@@ -174,8 +175,19 @@ export class SlideDocsViewer {
|
|
|
174
175
|
logger.warn("[Slide] render error", error);
|
|
175
176
|
};
|
|
176
177
|
|
|
178
|
+
protected onRenderStart = () => {
|
|
179
|
+
this.$whiteboardView.classList.add(this.wrapClassName("wb-view-hidden"));
|
|
180
|
+
};
|
|
181
|
+
|
|
177
182
|
protected onRenderEnd = () => {
|
|
183
|
+
// 1. There's no render end event on initial render.
|
|
184
|
+
// 2. The end event is fired before the page changed event.
|
|
185
|
+
// So in this callback we will do nothing and we do all "end" works in onPageChanged.
|
|
186
|
+
};
|
|
187
|
+
|
|
188
|
+
public onPageChanged = () => {
|
|
178
189
|
this.$overlay.style.opacity = "";
|
|
190
|
+
this.$whiteboardView.classList.remove(this.wrapClassName("wb-view-hidden"));
|
|
179
191
|
};
|
|
180
192
|
|
|
181
193
|
protected refreshPages = () => {
|
package/src/index.ts
CHANGED