@netless/app-slide 0.2.105-beta.0 → 0.2.105-beta.1
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 -0
- package/dist/main.cjs.js +106 -106
- package/dist/main.cjs.js.map +1 -1
- package/dist/main.es.js +44 -4
- package/dist/main.es.js.map +1 -1
- package/dist/main.iife.js +130 -130
- package/dist/main.iife.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +57 -2
package/dist/main.es.js
CHANGED
|
@@ -42853,11 +42853,12 @@ class SlidePreviewer {
|
|
|
42853
42853
|
}
|
|
42854
42854
|
}
|
|
42855
42855
|
const usePlugin = /* @__PURE__ */ Slide.Slide.usePlugin.bind(Slide.Slide);
|
|
42856
|
-
const version = "0.2.105-beta.
|
|
42856
|
+
const version = "0.2.105-beta.1";
|
|
42857
|
+
const DEFAULT_SLIDE_SETUP_READY_TIMEOUT = 5e3;
|
|
42857
42858
|
const SlideApp = {
|
|
42858
42859
|
kind: "Slide",
|
|
42859
42860
|
setup(context) {
|
|
42860
|
-
var _a, _b, _c, _d, _e;
|
|
42861
|
+
var _a, _b, _c, _d, _e, _f;
|
|
42861
42862
|
console.log("[Slide] setup @ " + version);
|
|
42862
42863
|
if (context.getIsWritable()) {
|
|
42863
42864
|
context.storage.ensureState(EmptyAttributes);
|
|
@@ -42878,6 +42879,8 @@ const SlideApp = {
|
|
|
42878
42879
|
}
|
|
42879
42880
|
const baseScenePath = context.getInitScenePath();
|
|
42880
42881
|
let docsViewer = null;
|
|
42882
|
+
let slideControllerRef;
|
|
42883
|
+
let firstRenderFailed = false;
|
|
42881
42884
|
const onPageChanged = (page) => {
|
|
42882
42885
|
const room2 = context.getRoom();
|
|
42883
42886
|
if (docsViewer && docsViewer.slideController) {
|
|
@@ -42903,10 +42906,15 @@ const SlideApp = {
|
|
|
42903
42906
|
...options,
|
|
42904
42907
|
onPageChanged,
|
|
42905
42908
|
onNavigate: options.onNavigate,
|
|
42906
|
-
onRenderError:
|
|
42909
|
+
onRenderError: (error, pageIndex) => {
|
|
42910
|
+
var _a2;
|
|
42911
|
+
firstRenderFailed = true;
|
|
42912
|
+
(_a2 = appOptions2.onRenderError) == null ? void 0 : _a2.call(appOptions2, error, pageIndex);
|
|
42913
|
+
},
|
|
42907
42914
|
showRenderError: appOptions2.showRenderError,
|
|
42908
42915
|
invisibleBehavior: appOptions2.invisibleBehavior
|
|
42909
42916
|
});
|
|
42917
|
+
slideControllerRef = slideController;
|
|
42910
42918
|
if (useFreezer)
|
|
42911
42919
|
apps.set(context.appId, slideController, box);
|
|
42912
42920
|
logger.setAppController(context.appId, slideController);
|
|
@@ -42987,7 +42995,29 @@ const SlideApp = {
|
|
|
42987
42995
|
docsViewer.mount();
|
|
42988
42996
|
SlideApp.__teardownByContext || (SlideApp.__teardownByContext = /* @__PURE__ */ new WeakMap());
|
|
42989
42997
|
SlideApp.__teardownByContext.set(context, teardown);
|
|
42990
|
-
|
|
42998
|
+
const waitForFirstRender = (timeoutMs) => new Promise((resolve) => {
|
|
42999
|
+
let settled = false;
|
|
43000
|
+
let pollTimer;
|
|
43001
|
+
const settle = (loaded) => {
|
|
43002
|
+
if (settled)
|
|
43003
|
+
return;
|
|
43004
|
+
settled = true;
|
|
43005
|
+
window.clearTimeout(timeoutTimer);
|
|
43006
|
+
if (pollTimer !== void 0)
|
|
43007
|
+
window.clearInterval(pollTimer);
|
|
43008
|
+
resolve(loaded);
|
|
43009
|
+
};
|
|
43010
|
+
const timeoutTimer = window.setTimeout(() => settle(false), timeoutMs);
|
|
43011
|
+
slideControllerRef == null ? void 0 : slideControllerRef.readyPromise.then(
|
|
43012
|
+
() => settle(!firstRenderFailed),
|
|
43013
|
+
() => settle(false)
|
|
43014
|
+
);
|
|
43015
|
+
pollTimer = window.setInterval(() => {
|
|
43016
|
+
if (disposed || firstRenderFailed)
|
|
43017
|
+
settle(false);
|
|
43018
|
+
}, 100);
|
|
43019
|
+
});
|
|
43020
|
+
const appResult = {
|
|
42991
43021
|
onScaleChanged: (cb) => {
|
|
42992
43022
|
if (!docsViewer) {
|
|
42993
43023
|
return () => void 0;
|
|
@@ -43106,6 +43136,16 @@ const SlideApp = {
|
|
|
43106
43136
|
return false;
|
|
43107
43137
|
}
|
|
43108
43138
|
};
|
|
43139
|
+
const setupReadyTimeout = (_f = appOptions == null ? void 0 : appOptions.setupReadyTimeout) != null ? _f : DEFAULT_SLIDE_SETUP_READY_TIMEOUT;
|
|
43140
|
+
return waitForFirstRender(setupReadyTimeout).then(() => {
|
|
43141
|
+
if (firstRenderFailed) {
|
|
43142
|
+
throw new Error("[Slide] first render failed before ready");
|
|
43143
|
+
}
|
|
43144
|
+
if (!disposed && !(slideControllerRef == null ? void 0 : slideControllerRef.ready)) {
|
|
43145
|
+
log("[Slide] setup ready wait timed out, slide keeps loading in background");
|
|
43146
|
+
}
|
|
43147
|
+
return appResult;
|
|
43148
|
+
});
|
|
43109
43149
|
},
|
|
43110
43150
|
teardown(context) {
|
|
43111
43151
|
var _a, _b, _c;
|