@netless/fastboard-core 0.3.6 → 0.3.7
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 +25 -20
- package/dist/index.js +167 -144
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +114 -68
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -4
- package/src/behaviors/index.ts +1 -1
- package/src/helpers/index.ts +37 -0
- package/src/impl/FastboardApp.ts +4 -4
- package/src/impl/FastboardPlayer.ts +5 -3
- package/src/index.ts +1 -0
- package/src/utils/misc.ts +5 -7
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Size, SceneDefinition, ConvertedFile, RoomPhase as RoomPhase$1, ApplianceNames, ShapeType, MemberState, RoomState, Camera, AnimationMode, Rectangle, Color, ConversionResponse, WhiteWebSdkConfiguration, JoinRoomParams, RoomCallbacks, WhiteWebSdk, Room, HotKeys, ViewCallbacks, PlayerPhase as PlayerPhase$1, PlayerState, PlayerSeekingResult, ReplayRoomParams, PlayerCallbacks, Player } from 'white-web-sdk';
|
|
1
|
+
import { Size, SceneDefinition, ConvertedFile, RoomPhase as RoomPhase$1, ApplianceNames, ShapeType, MemberState, RoomState, Camera, AnimationMode, Rectangle, Color, ConversionResponse, WhiteWebSdkConfiguration, JoinRoomParams, RoomCallbacks, WhiteWebSdk, Room, HotKeys, ViewCallbacks, PlayerPhase as PlayerPhase$1, PlayerState, PlayerSeekingResult, ReplayRoomParams, PlayerCallbacks, Player, View } from 'white-web-sdk';
|
|
2
2
|
export { AnimationMode, ApplianceNames, Camera, Color, ConversionResponse, HotKey, HotKeys, JoinRoomParams, MemberState, PlayerSeekingResult, Rectangle, Room, RoomCallbacks, RoomState, SceneDefinition, ShapeType, ViewCallbacks, WhiteWebSdk, WhiteWebSdkConfiguration } from 'white-web-sdk';
|
|
3
3
|
import { AddPageParams, MountParams, NetlessApp, WindowManager, PublicEvent, RegisterParams } from '@netless/window-manager';
|
|
4
4
|
export { AddPageParams, MountParams, NetlessApp, PublicEvent, WindowManager } from '@netless/window-manager';
|
|
@@ -6,10 +6,10 @@ import { SyncedStore } from '@netless/synced-store';
|
|
|
6
6
|
export { Diff, DiffOne, Storage, SyncedStore } from '@netless/synced-store';
|
|
7
7
|
export { PreviewParams, default as SlideApp, Controller as SlideController, AppOptions as SlideOptions, SlidePreviewer, addHooks as addSlideHooks, previewSlide, apps as slideApps } from '@netless/app-slide';
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
type Subscriber<T> = (value: T) => void;
|
|
10
|
+
type Unsubscriber = () => void;
|
|
11
|
+
type Updater<T> = (value: T) => T;
|
|
12
|
+
type StartStopNotifier<T> = (set: Subscriber<T>) => Unsubscriber | void;
|
|
13
13
|
interface Readable<T> {
|
|
14
14
|
readonly value: T;
|
|
15
15
|
subscribe(this: void, run: Subscriber<T>): Unsubscriber;
|
|
@@ -37,7 +37,7 @@ declare const warnings: {
|
|
|
37
37
|
};
|
|
38
38
|
declare function warn(id: keyof typeof warnings): void;
|
|
39
39
|
|
|
40
|
-
declare class FastboardAppBase<TEventData = any> {
|
|
40
|
+
declare class FastboardAppBase<TEventData extends Record<string, any> = any> {
|
|
41
41
|
readonly sdk: WhiteWebSdk;
|
|
42
42
|
readonly room: Room;
|
|
43
43
|
readonly manager: WindowManager;
|
|
@@ -54,12 +54,12 @@ declare class FastboardAppBase<TEventData = any> {
|
|
|
54
54
|
*/
|
|
55
55
|
destroy(): Promise<void>;
|
|
56
56
|
}
|
|
57
|
-
|
|
57
|
+
type RoomPhase = `${RoomPhase$1}`;
|
|
58
58
|
|
|
59
59
|
/** pencil, eraser, rectangle... */
|
|
60
|
-
|
|
60
|
+
type Appliance = `${ApplianceNames}`;
|
|
61
61
|
/** triangle, star... */
|
|
62
|
-
|
|
62
|
+
type Shape = `${ShapeType}`;
|
|
63
63
|
/** Params for static docs, they are rendered as many images. */
|
|
64
64
|
interface InsertDocsStatic {
|
|
65
65
|
readonly fileType: "pdf";
|
|
@@ -84,9 +84,9 @@ interface InsertDocsDynamic {
|
|
|
84
84
|
/** @example [{ name: '1' }, { name: '2' }, { name: '3' }] */
|
|
85
85
|
readonly scenes?: SceneDefinition[];
|
|
86
86
|
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
type InsertDocsParams = InsertDocsStatic | InsertDocsDynamic;
|
|
88
|
+
type SetMemberStateFn = (partialMemberState: Partial<MemberState>) => void;
|
|
89
|
+
type RoomStateChanged = (diff: Partial<RoomState>) => void;
|
|
90
90
|
/** App download progress. */
|
|
91
91
|
interface AppsStatus {
|
|
92
92
|
[kind: string]: {
|
|
@@ -95,7 +95,7 @@ interface AppsStatus {
|
|
|
95
95
|
reason?: string;
|
|
96
96
|
};
|
|
97
97
|
}
|
|
98
|
-
declare class FastboardApp<TEventData = any> extends FastboardAppBase<TEventData> {
|
|
98
|
+
declare class FastboardApp<TEventData extends Record<string, any> = any> extends FastboardAppBase<TEventData> {
|
|
99
99
|
/**
|
|
100
100
|
* Render this app to some DOM.
|
|
101
101
|
*/
|
|
@@ -275,7 +275,7 @@ interface FastboardOptions {
|
|
|
275
275
|
region: NonNullable<WhiteWebSdkConfiguration["region"]>;
|
|
276
276
|
};
|
|
277
277
|
joinRoom: Omit<JoinRoomParams, "useMultiViews" | "disableNewPencil" | "disableMagixEventDispatchLimit"> & {
|
|
278
|
-
callbacks?: Partial<RoomCallbacks
|
|
278
|
+
callbacks?: Partial<Omit<RoomCallbacks, "onCanRedoStepsUpdate" | "onCanUndoStepsUpdate">>;
|
|
279
279
|
};
|
|
280
280
|
managerConfig?: Omit<MountParams, "room">;
|
|
281
281
|
netlessApps?: NetlessApp[];
|
|
@@ -295,9 +295,9 @@ interface FastboardOptions {
|
|
|
295
295
|
* },
|
|
296
296
|
* })
|
|
297
297
|
*/
|
|
298
|
-
declare function createFastboard<TEventData = any>({ sdkConfig, joinRoom: { callbacks, ...joinRoomParams }, managerConfig, netlessApps, }: FastboardOptions): Promise<FastboardApp<TEventData>>;
|
|
298
|
+
declare function createFastboard<TEventData extends Record<string, any> = any>({ sdkConfig, joinRoom: { callbacks, ...joinRoomParams }, managerConfig, netlessApps, }: FastboardOptions): Promise<FastboardApp<TEventData>>;
|
|
299
299
|
|
|
300
|
-
declare class FastboardPlayerBase<TEventData = any> {
|
|
300
|
+
declare class FastboardPlayerBase<TEventData extends Record<string, any> = any> {
|
|
301
301
|
readonly sdk: WhiteWebSdk;
|
|
302
302
|
readonly player: Player;
|
|
303
303
|
readonly manager: WindowManager;
|
|
@@ -310,9 +310,9 @@ declare class FastboardPlayerBase<TEventData = any> {
|
|
|
310
310
|
protected _addMainViewListener<K extends keyof ViewCallbacks>(name: K, listener: ViewCallbacks[K]): () => void;
|
|
311
311
|
destroy(): void;
|
|
312
312
|
}
|
|
313
|
-
|
|
313
|
+
type PlayerPhase = `${PlayerPhase$1}`;
|
|
314
314
|
|
|
315
|
-
declare class FastboardPlayer<TEventData = any> extends FastboardPlayerBase<TEventData> {
|
|
315
|
+
declare class FastboardPlayer<TEventData extends Record<string, any> = any> extends FastboardPlayerBase<TEventData> {
|
|
316
316
|
/**
|
|
317
317
|
* Render this player to some DOM.
|
|
318
318
|
*/
|
|
@@ -393,7 +393,7 @@ interface FastboardReplayOptions {
|
|
|
393
393
|
* },
|
|
394
394
|
* })
|
|
395
395
|
*/
|
|
396
|
-
declare function replayFastboard<TEventData = any>({ sdkConfig, replayRoom: { callbacks, ...replayRoomParams }, managerConfig, netlessApps, }: FastboardReplayOptions): Promise<FastboardPlayer<TEventData>>;
|
|
396
|
+
declare function replayFastboard<TEventData extends Record<string, any> = any>({ sdkConfig, replayRoom: { callbacks, ...replayRoomParams }, managerConfig, netlessApps, }: FastboardReplayOptions): Promise<FastboardPlayer<TEventData>>;
|
|
397
397
|
|
|
398
398
|
interface AppsConfig {
|
|
399
399
|
[kind: string]: Omit<RegisterParams, "kind">;
|
|
@@ -401,4 +401,9 @@ interface AppsConfig {
|
|
|
401
401
|
declare const register: typeof WindowManager.register;
|
|
402
402
|
declare const version: string;
|
|
403
403
|
|
|
404
|
-
|
|
404
|
+
declare function addRoomListener<K extends keyof RoomCallbacks>(room: Room, name: K, listener: RoomCallbacks[K]): () => void;
|
|
405
|
+
declare function addPlayerListener<K extends keyof PlayerCallbacks>(player: Player, name: K, listener: PlayerCallbacks[K]): () => void;
|
|
406
|
+
declare function addViewListener<K extends keyof ViewCallbacks>(view: View, name: K, listener: (value: ViewCallbacks[K]) => void): () => void;
|
|
407
|
+
declare function addManagerListener<K extends keyof PublicEvent>(manager: WindowManager, name: K, listener: (value: PublicEvent[K]) => void): () => void;
|
|
408
|
+
|
|
409
|
+
export { Appliance, AppsConfig, AppsStatus, FastboardApp, FastboardOptions, FastboardPlayer, FastboardReplayOptions, InsertDocsDynamic, InsertDocsParams, InsertDocsStatic, PlayerPhase, Readable, RoomPhase, RoomStateChanged, SetMemberStateFn, Shape, StartStopNotifier, Subscriber, Unsubscriber, Updater, Writable, addManagerListener, addPlayerListener, addRoomListener, addViewListener, convertedFileToScene, createFastboard, genUID, getImageSize, makeSlideParams, readable, register, replayFastboard, version, warn, writable };
|
package/dist/index.js
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var whiteWebSdk = require('white-web-sdk');
|
|
4
|
+
var windowManager = require('@netless/window-manager');
|
|
5
|
+
var syncedStore = require('@netless/synced-store');
|
|
6
|
+
var SlideApp = require('@netless/app-slide');
|
|
7
|
+
|
|
4
8
|
var __defProp = Object.defineProperty;
|
|
5
9
|
var __defProps = Object.defineProperties;
|
|
6
|
-
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
7
10
|
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
8
|
-
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
9
11
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
10
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
11
12
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
12
13
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
13
14
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
@@ -35,43 +36,10 @@ var __objRest = (source, exclude) => {
|
|
|
35
36
|
}
|
|
36
37
|
return target;
|
|
37
38
|
};
|
|
38
|
-
var
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
};
|
|
42
|
-
var __copyProps = (to, from, except, desc) => {
|
|
43
|
-
if (from && typeof from === "object" || typeof from === "function") {
|
|
44
|
-
for (let key of __getOwnPropNames(from))
|
|
45
|
-
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
46
|
-
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
47
|
-
}
|
|
48
|
-
return to;
|
|
39
|
+
var __publicField = (obj, key, value) => {
|
|
40
|
+
__defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
41
|
+
return value;
|
|
49
42
|
};
|
|
50
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
|
|
51
|
-
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
52
|
-
|
|
53
|
-
// src/index.ts
|
|
54
|
-
var src_exports = {};
|
|
55
|
-
__export(src_exports, {
|
|
56
|
-
FastboardApp: () => FastboardApp,
|
|
57
|
-
FastboardPlayer: () => FastboardPlayer,
|
|
58
|
-
SlideApp: () => import_app_slide.default,
|
|
59
|
-
addSlideHooks: () => import_app_slide.addHooks,
|
|
60
|
-
convertedFileToScene: () => convertedFileToScene,
|
|
61
|
-
createFastboard: () => createFastboard,
|
|
62
|
-
genUID: () => genUID,
|
|
63
|
-
getImageSize: () => getImageSize,
|
|
64
|
-
makeSlideParams: () => makeSlideParams,
|
|
65
|
-
previewSlide: () => import_app_slide.previewSlide,
|
|
66
|
-
readable: () => readable,
|
|
67
|
-
register: () => register,
|
|
68
|
-
replayFastboard: () => replayFastboard,
|
|
69
|
-
slideApps: () => import_app_slide.apps,
|
|
70
|
-
version: () => version,
|
|
71
|
-
warn: () => warn,
|
|
72
|
-
writable: () => writable
|
|
73
|
-
});
|
|
74
|
-
module.exports = __toCommonJS(src_exports);
|
|
75
43
|
|
|
76
44
|
// src/utils/store.ts
|
|
77
45
|
function noop() {
|
|
@@ -158,15 +126,13 @@ function makeSlideParams(scenes) {
|
|
|
158
126
|
const pptSrcRE = new RegExp("^pptx?(?<prefix>:\\/\\/\\S+?dynamicConvert)\\/(?<taskId>\\w+)\\/");
|
|
159
127
|
for (const { name, ppt } of scenes) {
|
|
160
128
|
emptyScenes.push({ name });
|
|
161
|
-
if (!ppt || !ppt.src.startsWith("ppt"))
|
|
129
|
+
if (!ppt || !ppt.src.startsWith("ppt"))
|
|
162
130
|
continue;
|
|
163
|
-
}
|
|
164
131
|
const match = pptSrcRE.exec(ppt.src);
|
|
165
|
-
if (!match || !match.groups)
|
|
132
|
+
if (!match || !match.groups)
|
|
166
133
|
continue;
|
|
167
|
-
}
|
|
168
134
|
taskId = match.groups.taskId;
|
|
169
|
-
url =
|
|
135
|
+
url = `https${match.groups.prefix}`;
|
|
170
136
|
break;
|
|
171
137
|
}
|
|
172
138
|
return { scenes: emptyScenes, taskId, url };
|
|
@@ -206,32 +172,19 @@ function warn(id) {
|
|
|
206
172
|
warned.add(id);
|
|
207
173
|
console.warn(warnings[id]);
|
|
208
174
|
}
|
|
209
|
-
|
|
210
|
-
// src/impl/FastboardApp.ts
|
|
211
|
-
var import_white_web_sdk = require("white-web-sdk");
|
|
212
|
-
var import_window_manager3 = require("@netless/window-manager");
|
|
213
|
-
var import_synced_store2 = require("@netless/synced-store");
|
|
214
|
-
|
|
215
|
-
// src/internal.ts
|
|
216
|
-
var import_window_manager = require("@netless/window-manager");
|
|
217
|
-
var import_synced_store = require("@netless/synced-store");
|
|
218
175
|
function ensure_official_plugins(joinRoom) {
|
|
219
176
|
const plugins = new Set(joinRoom.invisiblePlugins || []);
|
|
220
|
-
plugins.add(
|
|
221
|
-
plugins.add(
|
|
177
|
+
plugins.add(windowManager.WindowManager);
|
|
178
|
+
plugins.add(syncedStore.SyncedStorePlugin);
|
|
222
179
|
joinRoom.invisiblePlugins = [...plugins];
|
|
223
180
|
return joinRoom;
|
|
224
181
|
}
|
|
225
182
|
function transform_app_status(status) {
|
|
226
183
|
return status === "start" ? "loading" : status === "failed" ? "failed" : "idle";
|
|
227
184
|
}
|
|
228
|
-
|
|
229
|
-
// src/behaviors/index.ts
|
|
230
|
-
var import_window_manager2 = require("@netless/window-manager");
|
|
231
|
-
var import_app_slide = __toESM(require("@netless/app-slide"));
|
|
232
185
|
var DefaultApps = {
|
|
233
186
|
Monaco: {
|
|
234
|
-
src: "https://netless-app.oss-cn-hangzhou.aliyuncs.com/@netless/app-monaco/0.1.
|
|
187
|
+
src: "https://netless-app.oss-cn-hangzhou.aliyuncs.com/@netless/app-monaco/0.1.14-beta.1/dist/main.iife.js"
|
|
235
188
|
},
|
|
236
189
|
Countdown: {
|
|
237
190
|
src: "https://netless-app.oss-cn-hangzhou.aliyuncs.com/@netless/app-countdown/0.0.2/dist/main.iife.js"
|
|
@@ -249,20 +202,20 @@ var DefaultApps = {
|
|
|
249
202
|
src: "https://netless-app.oss-cn-hangzhou.aliyuncs.com/@netless/app-plyr/0.1.3/dist/main.iife.js"
|
|
250
203
|
}
|
|
251
204
|
};
|
|
252
|
-
|
|
205
|
+
windowManager.WindowManager.register({
|
|
253
206
|
kind: "Slide",
|
|
254
207
|
appOptions: { debug: false },
|
|
255
|
-
src:
|
|
256
|
-
addHooks:
|
|
208
|
+
src: SlideApp,
|
|
209
|
+
addHooks: SlideApp.addHooks
|
|
257
210
|
});
|
|
258
211
|
for (const kind in DefaultApps) {
|
|
259
212
|
if (Object.prototype.hasOwnProperty.call(DefaultApps, kind)) {
|
|
260
213
|
const options = DefaultApps[kind];
|
|
261
|
-
|
|
214
|
+
windowManager.WindowManager.register(__spreadValues({ kind }, options));
|
|
262
215
|
}
|
|
263
216
|
}
|
|
264
|
-
var register =
|
|
265
|
-
var version = "0.3.
|
|
217
|
+
var register = windowManager.WindowManager.register.bind(windowManager.WindowManager);
|
|
218
|
+
var version = "0.3.7";
|
|
266
219
|
if (typeof window !== "undefined") {
|
|
267
220
|
let str = window.__netlessUA || "";
|
|
268
221
|
str += ` ${"@netless/fastboard"}@${version} `;
|
|
@@ -277,7 +230,7 @@ var FastboardAppBase = class {
|
|
|
277
230
|
this.manager = manager;
|
|
278
231
|
this.hotKeys = hotKeys;
|
|
279
232
|
this.syncedStore = syncedStore;
|
|
280
|
-
this
|
|
233
|
+
__publicField(this, "_destroyed", false);
|
|
281
234
|
}
|
|
282
235
|
_assertNotDestroyed() {
|
|
283
236
|
if (this._destroyed) {
|
|
@@ -308,51 +261,62 @@ var FastboardAppBase = class {
|
|
|
308
261
|
var FastboardApp = class extends FastboardAppBase {
|
|
309
262
|
constructor() {
|
|
310
263
|
super(...arguments);
|
|
311
|
-
this
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
264
|
+
__publicField(this, "writable", writable(
|
|
265
|
+
this.room.isWritable,
|
|
266
|
+
(set) => {
|
|
267
|
+
set(this.room.isWritable);
|
|
268
|
+
return this._addRoomListener("onEnableWriteNowChanged", () => set(this.room.isWritable));
|
|
269
|
+
},
|
|
270
|
+
this.room.setWritable.bind(this.room)
|
|
271
|
+
));
|
|
272
|
+
__publicField(this, "phase", readable(this.room.phase, (set) => {
|
|
316
273
|
set(this.room.phase);
|
|
317
274
|
return this._addRoomListener("onPhaseChanged", set);
|
|
318
|
-
});
|
|
319
|
-
this
|
|
275
|
+
}));
|
|
276
|
+
__publicField(this, "boxState", readable(this.manager.boxState, (set) => {
|
|
320
277
|
set(this.manager.boxState);
|
|
321
278
|
return this._addManagerListener("boxStateChange", set);
|
|
322
|
-
});
|
|
323
|
-
this
|
|
279
|
+
}));
|
|
280
|
+
__publicField(this, "focusedApp", readable(this.manager.focused, (set) => {
|
|
324
281
|
set(this.manager.focused);
|
|
325
282
|
return this._addManagerListener("focusedChange", set);
|
|
326
|
-
});
|
|
327
|
-
this
|
|
283
|
+
}));
|
|
284
|
+
__publicField(this, "canRedoSteps", readable(this.manager.canRedoSteps, (set) => {
|
|
328
285
|
set(this.manager.canRedoSteps);
|
|
329
286
|
return this._addManagerListener("canRedoStepsChange", set);
|
|
330
|
-
});
|
|
331
|
-
this
|
|
287
|
+
}));
|
|
288
|
+
__publicField(this, "canUndoSteps", readable(this.manager.canUndoSteps, (set) => {
|
|
332
289
|
set(this.manager.canUndoSteps);
|
|
333
290
|
return this._addManagerListener("canUndoStepsChange", set);
|
|
334
|
-
});
|
|
335
|
-
this
|
|
291
|
+
}));
|
|
292
|
+
__publicField(this, "camera", readable(this.manager.camera, (set) => {
|
|
336
293
|
set(this.manager.camera);
|
|
337
294
|
return this._addMainViewListener("onCameraUpdated", set);
|
|
338
|
-
});
|
|
339
|
-
this
|
|
295
|
+
}));
|
|
296
|
+
__publicField(this, "memberState", readable(this.room.state.memberState, (set) => {
|
|
340
297
|
set(this.room.state.memberState);
|
|
341
298
|
return this._addRoomListener("onRoomStateChanged", ({ memberState: m }) => m && set(m));
|
|
342
|
-
});
|
|
343
|
-
this
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
299
|
+
}));
|
|
300
|
+
__publicField(this, "sceneIndex", writable(
|
|
301
|
+
this.manager.mainViewSceneIndex,
|
|
302
|
+
(set) => {
|
|
303
|
+
set(this.manager.mainViewSceneIndex);
|
|
304
|
+
return this._addManagerListener("mainViewSceneIndexChange", set);
|
|
305
|
+
},
|
|
306
|
+
this.manager.setMainViewSceneIndex.bind(this.manager)
|
|
307
|
+
));
|
|
308
|
+
__publicField(this, "sceneLength", readable(this.manager.mainViewScenesLength, (set) => {
|
|
348
309
|
set(this.manager.mainViewScenesLength);
|
|
349
310
|
return this._addManagerListener("mainViewScenesLengthChange", set);
|
|
350
|
-
});
|
|
351
|
-
this._appsStatus = {};
|
|
352
|
-
this.appsStatus = readable({}, (set) => this._addManagerListener("loadApp", ({ kind, status, reason }) => {
|
|
353
|
-
this._appsStatus[kind] = { status: transform_app_status(status), reason };
|
|
354
|
-
set(this._appsStatus);
|
|
355
311
|
}));
|
|
312
|
+
__publicField(this, "_appsStatus", {});
|
|
313
|
+
__publicField(this, "appsStatus", readable(
|
|
314
|
+
{},
|
|
315
|
+
(set) => this._addManagerListener("loadApp", ({ kind, status, reason }) => {
|
|
316
|
+
this._appsStatus[kind] = { status: transform_app_status(status), reason };
|
|
317
|
+
set(this._appsStatus);
|
|
318
|
+
})
|
|
319
|
+
));
|
|
356
320
|
}
|
|
357
321
|
bindContainer(container) {
|
|
358
322
|
this._assertNotDestroyed();
|
|
@@ -485,7 +449,7 @@ var FastboardApp = class extends FastboardAppBase {
|
|
|
485
449
|
insertMedia(title, src) {
|
|
486
450
|
this._assertNotDestroyed();
|
|
487
451
|
return this.manager.addApp({
|
|
488
|
-
kind:
|
|
452
|
+
kind: windowManager.BuiltinApps.MediaPlayer,
|
|
489
453
|
options: { title },
|
|
490
454
|
attributes: { src }
|
|
491
455
|
});
|
|
@@ -520,10 +484,10 @@ async function createFastboard(_a) {
|
|
|
520
484
|
managerConfig,
|
|
521
485
|
netlessApps
|
|
522
486
|
} = _b;
|
|
523
|
-
const sdk = new
|
|
487
|
+
const sdk = new whiteWebSdk.WhiteWebSdk(__spreadProps(__spreadValues({}, sdkConfig), {
|
|
524
488
|
useMobXState: true
|
|
525
489
|
}));
|
|
526
|
-
const hotKeys = joinRoomParams.hotKeys || __spreadProps(__spreadValues({},
|
|
490
|
+
const hotKeys = joinRoomParams.hotKeys || __spreadProps(__spreadValues({}, whiteWebSdk.DefaultHotKeys), {
|
|
527
491
|
changeToSelector: "s",
|
|
528
492
|
changeToLaserPointer: "z",
|
|
529
493
|
changeToPencil: "p",
|
|
@@ -540,38 +504,36 @@ async function createFastboard(_a) {
|
|
|
540
504
|
register({ kind: app.kind, src: app });
|
|
541
505
|
});
|
|
542
506
|
}
|
|
543
|
-
const room = await sdk.joinRoom(
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
507
|
+
const room = await sdk.joinRoom(
|
|
508
|
+
__spreadProps(__spreadValues({
|
|
509
|
+
floatBar: true,
|
|
510
|
+
hotKeys
|
|
511
|
+
}, ensure_official_plugins(joinRoomParams)), {
|
|
512
|
+
useMultiViews: true,
|
|
513
|
+
disableNewPencil: false,
|
|
514
|
+
disableMagixEventDispatchLimit: true
|
|
515
|
+
}),
|
|
516
|
+
callbacks
|
|
517
|
+
);
|
|
518
|
+
const syncedStore$1 = await syncedStore.SyncedStorePlugin.init(room);
|
|
519
|
+
const manager = await windowManager.WindowManager.mount(__spreadProps(__spreadValues({
|
|
553
520
|
cursor: true
|
|
554
521
|
}, managerConfig), {
|
|
555
522
|
room
|
|
556
523
|
}));
|
|
557
524
|
manager.mainView.setCameraBound({
|
|
558
|
-
minContentMode:
|
|
559
|
-
maxContentMode:
|
|
525
|
+
minContentMode: whiteWebSdk.contentModeScale(0.3),
|
|
526
|
+
maxContentMode: whiteWebSdk.contentModeScale(3)
|
|
560
527
|
});
|
|
561
|
-
return new FastboardApp(sdk, room, manager, hotKeys, syncedStore);
|
|
528
|
+
return new FastboardApp(sdk, room, manager, hotKeys, syncedStore$1);
|
|
562
529
|
}
|
|
563
|
-
|
|
564
|
-
// src/impl/FastboardPlayer.ts
|
|
565
|
-
var import_white_web_sdk2 = require("white-web-sdk");
|
|
566
|
-
var import_window_manager4 = require("@netless/window-manager");
|
|
567
|
-
var import_synced_store3 = require("@netless/synced-store");
|
|
568
530
|
var FastboardPlayerBase = class {
|
|
569
531
|
constructor(sdk, player, manager, syncedStore) {
|
|
570
532
|
this.sdk = sdk;
|
|
571
533
|
this.player = player;
|
|
572
534
|
this.manager = manager;
|
|
573
535
|
this.syncedStore = syncedStore;
|
|
574
|
-
this
|
|
536
|
+
__publicField(this, "_destroyed", false);
|
|
575
537
|
}
|
|
576
538
|
_assertNotDestroyed() {
|
|
577
539
|
if (this._destroyed) {
|
|
@@ -602,32 +564,41 @@ var FastboardPlayerBase = class {
|
|
|
602
564
|
var FastboardPlayer = class extends FastboardPlayerBase {
|
|
603
565
|
constructor() {
|
|
604
566
|
super(...arguments);
|
|
605
|
-
this
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
609
|
-
|
|
567
|
+
__publicField(this, "currentTime", writable(
|
|
568
|
+
this.player.progressTime,
|
|
569
|
+
(set) => {
|
|
570
|
+
set(this.player.progressTime);
|
|
571
|
+
return this._addPlayerListener("onProgressTimeChanged", set);
|
|
572
|
+
},
|
|
573
|
+
this.player.seekToProgressTime.bind(this.player)
|
|
574
|
+
));
|
|
575
|
+
__publicField(this, "phase", readable(this.player.phase, (set) => {
|
|
610
576
|
set(this.player.phase);
|
|
611
577
|
return this._addPlayerListener("onPhaseChanged", set);
|
|
612
|
-
});
|
|
613
|
-
this
|
|
578
|
+
}));
|
|
579
|
+
__publicField(this, "canplay", readable(this.player.isPlayable, (set) => {
|
|
614
580
|
set(this.player.isPlayable);
|
|
615
581
|
return this._addPlayerListener("onIsPlayableChanged", set);
|
|
616
|
-
});
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
582
|
+
}));
|
|
583
|
+
__publicField(this, "_setPlaybackRate");
|
|
584
|
+
__publicField(this, "playbackRate", writable(
|
|
585
|
+
this.player.playbackSpeed,
|
|
586
|
+
(set) => {
|
|
587
|
+
this._setPlaybackRate = set;
|
|
588
|
+
set(this.player.playbackSpeed);
|
|
589
|
+
},
|
|
590
|
+
(value) => {
|
|
591
|
+
this.player.playbackSpeed = value;
|
|
592
|
+
this._setPlaybackRate(value);
|
|
593
|
+
}
|
|
594
|
+
));
|
|
595
|
+
__publicField(this, "duration", readable(this.player.timeDuration, (set) => {
|
|
625
596
|
set(this.player.timeDuration);
|
|
626
|
-
});
|
|
627
|
-
this
|
|
597
|
+
}));
|
|
598
|
+
__publicField(this, "state", readable(this.player.state, (set) => {
|
|
628
599
|
set(this.player.state);
|
|
629
600
|
return this._addPlayerListener("onPlayerStateChanged", () => set(this.player.state));
|
|
630
|
-
});
|
|
601
|
+
}));
|
|
631
602
|
}
|
|
632
603
|
bindContainer(container) {
|
|
633
604
|
this._assertNotDestroyed();
|
|
@@ -666,7 +637,7 @@ async function replayFastboard(_a) {
|
|
|
666
637
|
managerConfig,
|
|
667
638
|
netlessApps
|
|
668
639
|
} = _b;
|
|
669
|
-
const sdk = new
|
|
640
|
+
const sdk = new whiteWebSdk.WhiteWebSdk(__spreadProps(__spreadValues({}, sdkConfig), {
|
|
670
641
|
useMobXState: true
|
|
671
642
|
}));
|
|
672
643
|
if (netlessApps) {
|
|
@@ -674,11 +645,14 @@ async function replayFastboard(_a) {
|
|
|
674
645
|
register({ kind: app.kind, src: app });
|
|
675
646
|
});
|
|
676
647
|
}
|
|
677
|
-
const player = await sdk.replayRoom(
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
648
|
+
const player = await sdk.replayRoom(
|
|
649
|
+
__spreadProps(__spreadValues({}, ensure_official_plugins(replayRoomParams)), {
|
|
650
|
+
useMultiViews: true
|
|
651
|
+
}),
|
|
652
|
+
callbacks
|
|
653
|
+
);
|
|
654
|
+
const syncedStore$1 = await syncedStore.SyncedStorePlugin.init(player);
|
|
655
|
+
const managerPromise = windowManager.WindowManager.mount(__spreadProps(__spreadValues({
|
|
682
656
|
cursor: true
|
|
683
657
|
}, managerConfig), {
|
|
684
658
|
room: player
|
|
@@ -687,6 +661,55 @@ async function replayFastboard(_a) {
|
|
|
687
661
|
const manager = await managerPromise;
|
|
688
662
|
player.pause();
|
|
689
663
|
await player.seekToProgressTime(0);
|
|
690
|
-
return new FastboardPlayer(sdk, player, manager, syncedStore);
|
|
664
|
+
return new FastboardPlayer(sdk, player, manager, syncedStore$1);
|
|
665
|
+
}
|
|
666
|
+
|
|
667
|
+
// src/helpers/index.ts
|
|
668
|
+
function addRoomListener(room, name, listener) {
|
|
669
|
+
room.callbacks.on(name, listener);
|
|
670
|
+
return () => room.callbacks.off(name, listener);
|
|
671
|
+
}
|
|
672
|
+
function addPlayerListener(player, name, listener) {
|
|
673
|
+
player.callbacks.on(name, listener);
|
|
674
|
+
return () => player.callbacks.off(name, listener);
|
|
675
|
+
}
|
|
676
|
+
function addViewListener(view, name, listener) {
|
|
677
|
+
view.callbacks.on(name, listener);
|
|
678
|
+
return () => view.callbacks.off(name, listener);
|
|
691
679
|
}
|
|
680
|
+
function addManagerListener(manager, name, listener) {
|
|
681
|
+
return manager.emitter.on(name, listener);
|
|
682
|
+
}
|
|
683
|
+
|
|
684
|
+
exports.SlideApp = SlideApp;
|
|
685
|
+
Object.defineProperty(exports, 'addSlideHooks', {
|
|
686
|
+
enumerable: true,
|
|
687
|
+
get: function () { return SlideApp.addHooks; }
|
|
688
|
+
});
|
|
689
|
+
Object.defineProperty(exports, 'previewSlide', {
|
|
690
|
+
enumerable: true,
|
|
691
|
+
get: function () { return SlideApp.previewSlide; }
|
|
692
|
+
});
|
|
693
|
+
Object.defineProperty(exports, 'slideApps', {
|
|
694
|
+
enumerable: true,
|
|
695
|
+
get: function () { return SlideApp.apps; }
|
|
696
|
+
});
|
|
697
|
+
exports.FastboardApp = FastboardApp;
|
|
698
|
+
exports.FastboardPlayer = FastboardPlayer;
|
|
699
|
+
exports.addManagerListener = addManagerListener;
|
|
700
|
+
exports.addPlayerListener = addPlayerListener;
|
|
701
|
+
exports.addRoomListener = addRoomListener;
|
|
702
|
+
exports.addViewListener = addViewListener;
|
|
703
|
+
exports.convertedFileToScene = convertedFileToScene;
|
|
704
|
+
exports.createFastboard = createFastboard;
|
|
705
|
+
exports.genUID = genUID;
|
|
706
|
+
exports.getImageSize = getImageSize;
|
|
707
|
+
exports.makeSlideParams = makeSlideParams;
|
|
708
|
+
exports.readable = readable;
|
|
709
|
+
exports.register = register;
|
|
710
|
+
exports.replayFastboard = replayFastboard;
|
|
711
|
+
exports.version = version;
|
|
712
|
+
exports.warn = warn;
|
|
713
|
+
exports.writable = writable;
|
|
714
|
+
//# sourceMappingURL=out.js.map
|
|
692
715
|
//# sourceMappingURL=index.js.map
|