@netless/fastboard 1.0.0-canary.2 → 1.0.0-canary.3
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 +3 -4
- package/dist/index.js +13 -0
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +14 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +4 -6
- package/src/create.ts +6 -2
- package/src/replay.ts +6 -2
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { FastboardOptions, FastboardReplayOptions } from '@netless/fastboard-core';
|
|
1
|
+
import { FastboardOptions, FastboardApp, FastboardReplayOptions, FastboardPlayer } from '@netless/fastboard-core';
|
|
3
2
|
export * from '@netless/fastboard-core';
|
|
4
3
|
export * from '@netless/fastboard-ui';
|
|
5
4
|
export { Attributes as NetlessAppSlideAttributes, Slide, SlideState, SlideViewer, SlideViewerOptions, previewSlide } from '@netless/app-slide';
|
|
@@ -19,7 +18,7 @@ export { Attributes as NetlessAppSlideAttributes, Slide, SlideState, SlideViewer
|
|
|
19
18
|
* },
|
|
20
19
|
* })
|
|
21
20
|
*/
|
|
22
|
-
declare function createFastboard<TEventData = any>(options: FastboardOptions): Promise<
|
|
21
|
+
declare function createFastboard<TEventData = any>(options: FastboardOptions): Promise<FastboardApp<TEventData>>;
|
|
23
22
|
|
|
24
23
|
/**
|
|
25
24
|
* Create a FastboardPlayer instance.
|
|
@@ -37,6 +36,6 @@ declare function createFastboard<TEventData = any>(options: FastboardOptions): P
|
|
|
37
36
|
* },
|
|
38
37
|
* })
|
|
39
38
|
*/
|
|
40
|
-
declare function replayFastboard<TEventData = any>(options: FastboardReplayOptions): Promise<
|
|
39
|
+
declare function replayFastboard<TEventData = any>(options: FastboardReplayOptions): Promise<FastboardPlayer<TEventData>>;
|
|
41
40
|
|
|
42
41
|
export { createFastboard, replayFastboard };
|
package/dist/index.js
CHANGED
|
@@ -44,12 +44,25 @@ function registerDefaultApps() {
|
|
|
44
44
|
windowManager.WindowManager.register({ kind, ...DefaultApps[kind] });
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
|
+
var injected = false;
|
|
48
|
+
function ensureNetlessUA() {
|
|
49
|
+
if (typeof window !== "undefined" && !injected) {
|
|
50
|
+
injected = true;
|
|
51
|
+
let str = window.__netlessUA || "";
|
|
52
|
+
str += ` ${fastboardCore.name}/${fastboardCore.version} `;
|
|
53
|
+
window.__netlessUA = str;
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
// src/create.ts
|
|
47
58
|
async function createFastboard(options) {
|
|
59
|
+
ensureNetlessUA();
|
|
48
60
|
registerSlide();
|
|
49
61
|
registerDefaultApps();
|
|
50
62
|
return fastboardCore.createFastboardCore(options);
|
|
51
63
|
}
|
|
52
64
|
async function replayFastboard(options) {
|
|
65
|
+
ensureNetlessUA();
|
|
53
66
|
registerSlide();
|
|
54
67
|
registerDefaultApps();
|
|
55
68
|
return fastboardCore.replayFastboardCore(options);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/behaviors/netless-app.ts","../src/create.ts","../src/replay.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,cAAc;AACd,cAAc;;;ACKd,SAAS,qBAAqB;AAE9B,OAAO,mBAAmB,UAAU,cAAc,OAAO,mBAAmB;AAKrE,SAAS,gBAAgB;AAC9B,MAAI,cAAc,WAAW,IAAI,gBAAgB,IAAI;AAAG;AACxD,gBAAc,SAAS;AAAA,IACrB,MAAM,gBAAgB;AAAA,IACtB,YAAY,EAAE,OAAO,MAAM;AAAA,IAC3B,KAAK;AAAA,IACL;AAAA,EACF,CAAC;AACH;AAEA,IAAM,cAEF,CAAC;AAEE,SAAS,sBAAsB;AACpC,SAAO,KAAK,WAAW,EAAE,QAAQ,UAAQ;AACvC,QAAI,cAAc,WAAW,IAAI,IAAI;AAAG;AACxC,kBAAc,SAAS,EAAE,MAAM,GAAG,YAAY,MAAM,CAAC;AAAA,EACvD,CAAC;AACH;;;AChCA,SAAS,2BAA2B;
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/behaviors/netless-app.ts","../src/create.ts","../src/behaviors/netless-ua.ts","../src/replay.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,cAAc;AACd,cAAc;;;ACKd,SAAS,qBAAqB;AAE9B,OAAO,mBAAmB,UAAU,cAAc,OAAO,mBAAmB;AAKrE,SAAS,gBAAgB;AAC9B,MAAI,cAAc,WAAW,IAAI,gBAAgB,IAAI;AAAG;AACxD,gBAAc,SAAS;AAAA,IACrB,MAAM,gBAAgB;AAAA,IACtB,YAAY,EAAE,OAAO,MAAM;AAAA,IAC3B,KAAK;AAAA,IACL;AAAA,EACF,CAAC;AACH;AAEA,IAAM,cAEF,CAAC;AAEE,SAAS,sBAAsB;AACpC,SAAO,KAAK,WAAW,EAAE,QAAQ,UAAQ;AACvC,QAAI,cAAc,WAAW,IAAI,IAAI;AAAG;AACxC,kBAAc,SAAS,EAAE,MAAM,GAAG,YAAY,MAAM,CAAC;AAAA,EACvD,CAAC;AACH;;;AChCA,SAAS,2BAA2B;;;ACFpC,SAAS,MAAM,eAAe;AAM9B,IAAI,WAAW;AACR,SAAS,kBAAkB;AAChC,MAAI,OAAO,WAAW,eAAe,CAAC,UAAU;AAC9C,eAAW;AACX,QAAI,MAAO,OAAwB,eAAe;AAClD,WAAO,IAAI,QAAQ;AACnB,IAAC,OAAwB,cAAc;AAAA,EACzC;AACF;;;ADOA,eAAsB,gBACpB,SACmC;AACnC,kBAAgB;AAChB,gBAAc;AACd,sBAAoB;AACpB,SAAO,oBAAgC,OAAO;AAChD;;;AE1BA,SAAS,2BAA2B;AAoBpC,eAAsB,gBACpB,SACsC;AACtC,kBAAgB;AAChB,gBAAc;AACd,sBAAoB;AACpB,SAAO,oBAAgC,OAAO;AAChD","sourcesContent":["import \"./style.scss\";\n\nexport * from \"@netless/fastboard-core\";\nexport * from \"@netless/fastboard-ui\";\n\nexport * from \"./behaviors\";\nexport * from \"./create\";\nexport * from \"./replay\";\n","import type {\n AppOptions as NetlessAppSlideAppOptions,\n Attributes as NetlessAppSlideAttributes,\n SlideState,\n SlideViewerOptions,\n} from \"@netless/app-slide\";\nimport type { RegisterParams } from \"@netless/window-manager\";\n\nimport { WindowManager } from \"@netless/window-manager\";\n\nimport NetlessAppSlide, { addHooks, previewSlide, Slide, SlideViewer } from \"@netless/app-slide\";\n\nexport { Slide, SlideViewer, previewSlide };\nexport type { NetlessAppSlideAttributes, SlideState, SlideViewerOptions };\n\nexport function registerSlide() {\n if (WindowManager.registered.has(NetlessAppSlide.kind)) return;\n WindowManager.register({\n kind: NetlessAppSlide.kind,\n appOptions: { debug: false } as NetlessAppSlideAppOptions,\n src: NetlessAppSlide,\n addHooks,\n });\n}\n\nconst DefaultApps: {\n [kind: string]: Omit<RegisterParams, \"kind\">;\n} = {};\n\nexport function registerDefaultApps() {\n Object.keys(DefaultApps).forEach(kind => {\n if (WindowManager.registered.has(kind)) return;\n WindowManager.register({ kind, ...DefaultApps[kind] });\n });\n}\n","import type { FastboardApp, FastboardOptions } from \"@netless/fastboard-core\";\n\nimport { createFastboardCore } from \"@netless/fastboard-core\";\nimport { registerDefaultApps, registerSlide } from \"./behaviors/netless-app\";\nimport { ensureNetlessUA } from \"./behaviors/netless-ua\";\n\n/**\n * Create a FastboardApp instance.\n * @example\n * let app = await createFastboard({\n * sdkConfig: {\n * appIdentifier: import.meta.env.VITE_APPID,\n * region: 'cn-hz',\n * },\n * joinRoom: {\n * uid: unique_id,\n * uuid: import.meta.env.VITE_ROOM_UUID,\n * roomToken: import.meta.env.VITE_ROOM_TOKEN,\n * },\n * })\n */\nexport async function createFastboard<TEventData = any>(\n options: FastboardOptions\n): Promise<FastboardApp<TEventData>> {\n ensureNetlessUA();\n registerSlide();\n registerDefaultApps();\n return createFastboardCore<TEventData>(options);\n}\n","import { name, version } from \"@netless/fastboard-core\";\n\ninterface InjectTarget {\n __netlessUA?: string;\n}\n\nlet injected = false;\nexport function ensureNetlessUA() {\n if (typeof window !== \"undefined\" && !injected) {\n injected = true;\n let str = (window as InjectTarget).__netlessUA || \"\";\n str += ` ${name}/${version} `;\n (window as InjectTarget).__netlessUA = str;\n }\n}\n","import type { FastboardPlayer, FastboardReplayOptions } from \"@netless/fastboard-core\";\n\nimport { replayFastboardCore } from \"@netless/fastboard-core\";\nimport { registerDefaultApps, registerSlide } from \"./behaviors/netless-app\";\nimport { ensureNetlessUA } from \"./behaviors/netless-ua\";\n\n/**\n * Create a FastboardPlayer instance.\n * @example\n * let player = await replayFastboard({\n * sdkConfig: {\n * appIdentifier: import.meta.env.VITE_APPID,\n * region: 'cn-hz',\n * },\n * replayRoom: {\n * room: \"room uuid\",\n * roomToken: \"NETLESSROOM_...\",\n * beginTimestamp: 1646619090394,\n * duration: 70448,\n * },\n * })\n */\nexport async function replayFastboard<TEventData = any>(\n options: FastboardReplayOptions\n): Promise<FastboardPlayer<TEventData>> {\n ensureNetlessUA();\n registerSlide();\n registerDefaultApps();\n return replayFastboardCore<TEventData>(options);\n}\n"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { createFastboardCore, replayFastboardCore } from '@netless/fastboard-core';
|
|
1
|
+
import { createFastboardCore, replayFastboardCore, name, version } from '@netless/fastboard-core';
|
|
2
2
|
export * from '@netless/fastboard-core';
|
|
3
3
|
export * from '@netless/fastboard-ui';
|
|
4
4
|
import { WindowManager } from '@netless/window-manager';
|
|
@@ -38,12 +38,25 @@ function registerDefaultApps() {
|
|
|
38
38
|
WindowManager.register({ kind, ...DefaultApps[kind] });
|
|
39
39
|
});
|
|
40
40
|
}
|
|
41
|
+
var injected = false;
|
|
42
|
+
function ensureNetlessUA() {
|
|
43
|
+
if (typeof window !== "undefined" && !injected) {
|
|
44
|
+
injected = true;
|
|
45
|
+
let str = window.__netlessUA || "";
|
|
46
|
+
str += ` ${name}/${version} `;
|
|
47
|
+
window.__netlessUA = str;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
// src/create.ts
|
|
41
52
|
async function createFastboard(options) {
|
|
53
|
+
ensureNetlessUA();
|
|
42
54
|
registerSlide();
|
|
43
55
|
registerDefaultApps();
|
|
44
56
|
return createFastboardCore(options);
|
|
45
57
|
}
|
|
46
58
|
async function replayFastboard(options) {
|
|
59
|
+
ensureNetlessUA();
|
|
47
60
|
registerSlide();
|
|
48
61
|
registerDefaultApps();
|
|
49
62
|
return replayFastboardCore(options);
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts","../src/behaviors/netless-app.ts","../src/create.ts","../src/replay.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,cAAc;AACd,cAAc;;;ACKd,SAAS,qBAAqB;AAE9B,OAAO,mBAAmB,UAAU,cAAc,OAAO,mBAAmB;AAKrE,SAAS,gBAAgB;AAC9B,MAAI,cAAc,WAAW,IAAI,gBAAgB,IAAI;AAAG;AACxD,gBAAc,SAAS;AAAA,IACrB,MAAM,gBAAgB;AAAA,IACtB,YAAY,EAAE,OAAO,MAAM;AAAA,IAC3B,KAAK;AAAA,IACL;AAAA,EACF,CAAC;AACH;AAEA,IAAM,cAEF,CAAC;AAEE,SAAS,sBAAsB;AACpC,SAAO,KAAK,WAAW,EAAE,QAAQ,UAAQ;AACvC,QAAI,cAAc,WAAW,IAAI,IAAI;AAAG;AACxC,kBAAc,SAAS,EAAE,MAAM,GAAG,YAAY,MAAM,CAAC;AAAA,EACvD,CAAC;AACH;;;AChCA,SAAS,2BAA2B;
|
|
1
|
+
{"version":3,"sources":["../src/index.ts","../src/behaviors/netless-app.ts","../src/create.ts","../src/behaviors/netless-ua.ts","../src/replay.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,cAAc;AACd,cAAc;;;ACKd,SAAS,qBAAqB;AAE9B,OAAO,mBAAmB,UAAU,cAAc,OAAO,mBAAmB;AAKrE,SAAS,gBAAgB;AAC9B,MAAI,cAAc,WAAW,IAAI,gBAAgB,IAAI;AAAG;AACxD,gBAAc,SAAS;AAAA,IACrB,MAAM,gBAAgB;AAAA,IACtB,YAAY,EAAE,OAAO,MAAM;AAAA,IAC3B,KAAK;AAAA,IACL;AAAA,EACF,CAAC;AACH;AAEA,IAAM,cAEF,CAAC;AAEE,SAAS,sBAAsB;AACpC,SAAO,KAAK,WAAW,EAAE,QAAQ,UAAQ;AACvC,QAAI,cAAc,WAAW,IAAI,IAAI;AAAG;AACxC,kBAAc,SAAS,EAAE,MAAM,GAAG,YAAY,MAAM,CAAC;AAAA,EACvD,CAAC;AACH;;;AChCA,SAAS,2BAA2B;;;ACFpC,SAAS,MAAM,eAAe;AAM9B,IAAI,WAAW;AACR,SAAS,kBAAkB;AAChC,MAAI,OAAO,WAAW,eAAe,CAAC,UAAU;AAC9C,eAAW;AACX,QAAI,MAAO,OAAwB,eAAe;AAClD,WAAO,IAAI,QAAQ;AACnB,IAAC,OAAwB,cAAc;AAAA,EACzC;AACF;;;ADOA,eAAsB,gBACpB,SACmC;AACnC,kBAAgB;AAChB,gBAAc;AACd,sBAAoB;AACpB,SAAO,oBAAgC,OAAO;AAChD;;;AE1BA,SAAS,2BAA2B;AAoBpC,eAAsB,gBACpB,SACsC;AACtC,kBAAgB;AAChB,gBAAc;AACd,sBAAoB;AACpB,SAAO,oBAAgC,OAAO;AAChD","sourcesContent":["import \"./style.scss\";\n\nexport * from \"@netless/fastboard-core\";\nexport * from \"@netless/fastboard-ui\";\n\nexport * from \"./behaviors\";\nexport * from \"./create\";\nexport * from \"./replay\";\n","import type {\n AppOptions as NetlessAppSlideAppOptions,\n Attributes as NetlessAppSlideAttributes,\n SlideState,\n SlideViewerOptions,\n} from \"@netless/app-slide\";\nimport type { RegisterParams } from \"@netless/window-manager\";\n\nimport { WindowManager } from \"@netless/window-manager\";\n\nimport NetlessAppSlide, { addHooks, previewSlide, Slide, SlideViewer } from \"@netless/app-slide\";\n\nexport { Slide, SlideViewer, previewSlide };\nexport type { NetlessAppSlideAttributes, SlideState, SlideViewerOptions };\n\nexport function registerSlide() {\n if (WindowManager.registered.has(NetlessAppSlide.kind)) return;\n WindowManager.register({\n kind: NetlessAppSlide.kind,\n appOptions: { debug: false } as NetlessAppSlideAppOptions,\n src: NetlessAppSlide,\n addHooks,\n });\n}\n\nconst DefaultApps: {\n [kind: string]: Omit<RegisterParams, \"kind\">;\n} = {};\n\nexport function registerDefaultApps() {\n Object.keys(DefaultApps).forEach(kind => {\n if (WindowManager.registered.has(kind)) return;\n WindowManager.register({ kind, ...DefaultApps[kind] });\n });\n}\n","import type { FastboardApp, FastboardOptions } from \"@netless/fastboard-core\";\n\nimport { createFastboardCore } from \"@netless/fastboard-core\";\nimport { registerDefaultApps, registerSlide } from \"./behaviors/netless-app\";\nimport { ensureNetlessUA } from \"./behaviors/netless-ua\";\n\n/**\n * Create a FastboardApp instance.\n * @example\n * let app = await createFastboard({\n * sdkConfig: {\n * appIdentifier: import.meta.env.VITE_APPID,\n * region: 'cn-hz',\n * },\n * joinRoom: {\n * uid: unique_id,\n * uuid: import.meta.env.VITE_ROOM_UUID,\n * roomToken: import.meta.env.VITE_ROOM_TOKEN,\n * },\n * })\n */\nexport async function createFastboard<TEventData = any>(\n options: FastboardOptions\n): Promise<FastboardApp<TEventData>> {\n ensureNetlessUA();\n registerSlide();\n registerDefaultApps();\n return createFastboardCore<TEventData>(options);\n}\n","import { name, version } from \"@netless/fastboard-core\";\n\ninterface InjectTarget {\n __netlessUA?: string;\n}\n\nlet injected = false;\nexport function ensureNetlessUA() {\n if (typeof window !== \"undefined\" && !injected) {\n injected = true;\n let str = (window as InjectTarget).__netlessUA || \"\";\n str += ` ${name}/${version} `;\n (window as InjectTarget).__netlessUA = str;\n }\n}\n","import type { FastboardPlayer, FastboardReplayOptions } from \"@netless/fastboard-core\";\n\nimport { replayFastboardCore } from \"@netless/fastboard-core\";\nimport { registerDefaultApps, registerSlide } from \"./behaviors/netless-app\";\nimport { ensureNetlessUA } from \"./behaviors/netless-ua\";\n\n/**\n * Create a FastboardPlayer instance.\n * @example\n * let player = await replayFastboard({\n * sdkConfig: {\n * appIdentifier: import.meta.env.VITE_APPID,\n * region: 'cn-hz',\n * },\n * replayRoom: {\n * room: \"room uuid\",\n * roomToken: \"NETLESSROOM_...\",\n * beginTimestamp: 1646619090394,\n * duration: 70448,\n * },\n * })\n */\nexport async function replayFastboard<TEventData = any>(\n options: FastboardReplayOptions\n): Promise<FastboardPlayer<TEventData>> {\n ensureNetlessUA();\n registerSlide();\n registerDefaultApps();\n return replayFastboardCore<TEventData>(options);\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@netless/fastboard",
|
|
3
|
-
"version": "1.0.0-canary.
|
|
3
|
+
"version": "1.0.0-canary.3",
|
|
4
4
|
"description": "A tiny wrapper of white-web-sdk and @netless/window-manager.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"files": [
|
|
@@ -14,13 +14,11 @@
|
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@netless/app-slide": "0.3.0-canary.7",
|
|
17
|
-
"@netless/fastboard-core": "1.0.0-canary.
|
|
18
|
-
"@netless/fastboard-ui": "1.0.0-canary.
|
|
19
|
-
"@netless/synced-store": "^2.0.6"
|
|
17
|
+
"@netless/fastboard-core": "1.0.0-canary.3",
|
|
18
|
+
"@netless/fastboard-ui": "1.0.0-canary.3"
|
|
20
19
|
},
|
|
21
20
|
"devDependencies": {
|
|
22
|
-
"@netless/esbuild-plugin-inline-sass": "0.1.0"
|
|
23
|
-
"white-web-sdk": "^2.16.33"
|
|
21
|
+
"@netless/esbuild-plugin-inline-sass": "0.1.0"
|
|
24
22
|
},
|
|
25
23
|
"scripts": {
|
|
26
24
|
"cleanup": "rimraf dist",
|
package/src/create.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { FastboardOptions } from "@netless/fastboard-core";
|
|
1
|
+
import type { FastboardApp, FastboardOptions } from "@netless/fastboard-core";
|
|
2
2
|
|
|
3
3
|
import { createFastboardCore } from "@netless/fastboard-core";
|
|
4
4
|
import { registerDefaultApps, registerSlide } from "./behaviors/netless-app";
|
|
5
|
+
import { ensureNetlessUA } from "./behaviors/netless-ua";
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Create a FastboardApp instance.
|
|
@@ -18,7 +19,10 @@ import { registerDefaultApps, registerSlide } from "./behaviors/netless-app";
|
|
|
18
19
|
* },
|
|
19
20
|
* })
|
|
20
21
|
*/
|
|
21
|
-
export async function createFastboard<TEventData = any>(
|
|
22
|
+
export async function createFastboard<TEventData = any>(
|
|
23
|
+
options: FastboardOptions
|
|
24
|
+
): Promise<FastboardApp<TEventData>> {
|
|
25
|
+
ensureNetlessUA();
|
|
22
26
|
registerSlide();
|
|
23
27
|
registerDefaultApps();
|
|
24
28
|
return createFastboardCore<TEventData>(options);
|
package/src/replay.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import type { FastboardReplayOptions } from "@netless/fastboard-core";
|
|
1
|
+
import type { FastboardPlayer, FastboardReplayOptions } from "@netless/fastboard-core";
|
|
2
2
|
|
|
3
3
|
import { replayFastboardCore } from "@netless/fastboard-core";
|
|
4
4
|
import { registerDefaultApps, registerSlide } from "./behaviors/netless-app";
|
|
5
|
+
import { ensureNetlessUA } from "./behaviors/netless-ua";
|
|
5
6
|
|
|
6
7
|
/**
|
|
7
8
|
* Create a FastboardPlayer instance.
|
|
@@ -19,7 +20,10 @@ import { registerDefaultApps, registerSlide } from "./behaviors/netless-app";
|
|
|
19
20
|
* },
|
|
20
21
|
* })
|
|
21
22
|
*/
|
|
22
|
-
export async function replayFastboard<TEventData = any>(
|
|
23
|
+
export async function replayFastboard<TEventData = any>(
|
|
24
|
+
options: FastboardReplayOptions
|
|
25
|
+
): Promise<FastboardPlayer<TEventData>> {
|
|
26
|
+
ensureNetlessUA();
|
|
23
27
|
registerSlide();
|
|
24
28
|
registerDefaultApps();
|
|
25
29
|
return replayFastboardCore<TEventData>(options);
|