@netless/app-slide 0.0.52 → 0.0.56
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/SlidePreviewer/index.d.ts +9 -0
- package/dist/index.d.ts +1 -1
- package/dist/main.cjs.js +176 -180
- package/dist/main.cjs.js.map +1 -1
- package/dist/main.es.js +2919 -2950
- package/dist/main.es.js.map +1 -1
- package/dist/main.iife.js +172 -176
- package/dist/main.iife.js.map +1 -1
- package/package.json +2 -2
- package/src/DocsViewer/index.ts +3 -0
- package/src/DocsViewer/style.scss +1 -1
- package/src/SlideController/index.ts +1 -0
- package/src/SlidePreviewer/index.ts +38 -18
- package/src/index.ts +10 -2
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@netless/app-slide",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.56",
|
|
4
4
|
"main": "dist/main.cjs.js",
|
|
5
5
|
"module": "dist/main.es.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
],
|
|
12
12
|
"devDependencies": {
|
|
13
13
|
"@netless/app-shared": "^0.1.1",
|
|
14
|
-
"@netless/slide": "^0.
|
|
14
|
+
"@netless/slide": "^0.2.3",
|
|
15
15
|
"@types/color-string": "^1.5.2",
|
|
16
16
|
"color-string": "^1.9.0",
|
|
17
17
|
"side-effect-manager": "^0.1.5",
|
package/src/DocsViewer/index.ts
CHANGED
|
@@ -298,6 +298,9 @@ export class DocsViewer {
|
|
|
298
298
|
$pageNumberInput.disabled = true;
|
|
299
299
|
}
|
|
300
300
|
this.$pageNumberInput = $pageNumberInput;
|
|
301
|
+
this.sideEffect.addEventListener($pageNumberInput, "focus", () => {
|
|
302
|
+
$pageNumberInput.select();
|
|
303
|
+
});
|
|
301
304
|
this.sideEffect.addEventListener($pageNumberInput, "change", () => {
|
|
302
305
|
if (this.readonly) {
|
|
303
306
|
return;
|
|
@@ -71,26 +71,45 @@ export class SlidePreviewer {
|
|
|
71
71
|
|
|
72
72
|
public render() {
|
|
73
73
|
this.viewer.$content.appendChild(this.renderSlideContainer());
|
|
74
|
-
this.
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
74
|
+
this.registerHotKeys(window);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* In case you have a different window -- for example, in electron.
|
|
79
|
+
* Use this method to re-register hotkeys.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* previewer.registerHotKeys(windowLike)
|
|
83
|
+
*/
|
|
84
|
+
public registerHotKeys(windowLike: Window) {
|
|
85
|
+
this.sideEffect.addEventListener(
|
|
86
|
+
windowLike,
|
|
87
|
+
"keydown",
|
|
88
|
+
this.hotkeyListener,
|
|
89
|
+
undefined,
|
|
90
|
+
"hotkey"
|
|
91
|
+
);
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
private hotkeyListener = (ev: KeyboardEvent) => {
|
|
95
|
+
if (this.slide) {
|
|
96
|
+
switch (ev.key) {
|
|
97
|
+
case "ArrowUp":
|
|
98
|
+
case "ArrowLeft": {
|
|
99
|
+
this.slide.prevStep();
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
case "ArrowRight":
|
|
103
|
+
case "ArrowDown": {
|
|
104
|
+
this.slide.nextStep();
|
|
105
|
+
break;
|
|
106
|
+
}
|
|
107
|
+
default: {
|
|
108
|
+
break;
|
|
90
109
|
}
|
|
91
110
|
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
111
|
+
}
|
|
112
|
+
};
|
|
94
113
|
|
|
95
114
|
public mount(taskId: string, url: string) {
|
|
96
115
|
this.target.appendChild(this.renderStyle());
|
|
@@ -103,6 +122,7 @@ export class SlidePreviewer {
|
|
|
103
122
|
mode: "local",
|
|
104
123
|
resize: true,
|
|
105
124
|
controller: this.debug,
|
|
125
|
+
enableGlobalClick: true,
|
|
106
126
|
renderOptions: {
|
|
107
127
|
minFPS: 25,
|
|
108
128
|
maxFPS: 30,
|
package/src/index.ts
CHANGED
|
@@ -23,7 +23,7 @@ export { SlidePreviewer, default as previewSlide } from "./SlidePreviewer";
|
|
|
23
23
|
|
|
24
24
|
export type { Attributes, AddHooks, FreezableSlide };
|
|
25
25
|
|
|
26
|
-
export const version =
|
|
26
|
+
export const version = __APP_VERSION__;
|
|
27
27
|
|
|
28
28
|
export { DefaultUrl, apps, FreezerLength, addHooks };
|
|
29
29
|
|
|
@@ -85,7 +85,15 @@ const SlideApp: NetlessApp<Attributes> = {
|
|
|
85
85
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
86
86
|
(window as any).slideController = slideController;
|
|
87
87
|
}
|
|
88
|
-
slideController.readyPromise.then(options.onReady)
|
|
88
|
+
slideController.readyPromise.then(options.onReady).then(() => {
|
|
89
|
+
const room = context.getRoom();
|
|
90
|
+
let synced = false;
|
|
91
|
+
if (room && context.getIsWritable()) {
|
|
92
|
+
syncSceneWithSlide(room, context, slideController.slide, baseScenePath);
|
|
93
|
+
synced = true;
|
|
94
|
+
}
|
|
95
|
+
log("[Slide] page to", slideController.slide.slideState.currentSlideIndex, synced);
|
|
96
|
+
});
|
|
89
97
|
return slideController;
|
|
90
98
|
};
|
|
91
99
|
|