@netless/window-manager 0.4.73-beta.0 → 0.4.73-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.
Files changed (75) hide show
  1. package/dist/index.d.ts +1087 -38
  2. package/dist/index.js +14 -14
  3. package/dist/index.js.map +1 -1
  4. package/dist/index.mjs +130 -40
  5. package/dist/index.mjs.map +1 -1
  6. package/package.json +7 -7
  7. package/src/App/AppContext.ts +13 -5
  8. package/src/App/AppProxy.ts +2 -2
  9. package/src/App/MagixEvent/index.ts +38 -38
  10. package/src/App/Storage/StorageEvent.ts +13 -13
  11. package/src/App/Storage/index.ts +265 -242
  12. package/src/App/Storage/typings.ts +4 -2
  13. package/src/App/Storage/utils.ts +3 -3
  14. package/src/AppListener.ts +5 -5
  15. package/src/AttributesDelegate.ts +5 -7
  16. package/src/BoxEmitter.ts +12 -6
  17. package/src/BoxManager.ts +1 -1
  18. package/src/ContainerResizeObserver.ts +1 -1
  19. package/src/Helper.ts +67 -15
  20. package/src/InternalEmitter.ts +4 -3
  21. package/src/Page/index.ts +1 -1
  22. package/src/Register/index.ts +5 -7
  23. package/src/Register/loader.ts +1 -1
  24. package/src/Register/storage.ts +13 -13
  25. package/src/Utils/Common.ts +10 -5
  26. package/src/Utils/Reactive.ts +26 -25
  27. package/src/Utils/RoomHacker.ts +1 -1
  28. package/src/Utils/error.ts +0 -1
  29. package/src/View/IframeBridge.ts +627 -583
  30. package/src/View/MainView.ts +7 -2
  31. package/src/callback.ts +7 -1
  32. package/src/index.ts +8 -21
  33. package/src/typings.ts +11 -6
  34. package/dist/App/AppContext.d.ts +0 -79
  35. package/dist/App/AppPageStateImpl.d.ts +0 -17
  36. package/dist/App/AppProxy.d.ts +0 -67
  37. package/dist/App/MagixEvent/index.d.ts +0 -29
  38. package/dist/App/Storage/StorageEvent.d.ts +0 -8
  39. package/dist/App/Storage/index.d.ts +0 -39
  40. package/dist/App/Storage/typings.d.ts +0 -22
  41. package/dist/App/Storage/utils.d.ts +0 -5
  42. package/dist/App/index.d.ts +0 -2
  43. package/dist/AppListener.d.ts +0 -21
  44. package/dist/AppManager.d.ts +0 -110
  45. package/dist/AttributesDelegate.d.ts +0 -91
  46. package/dist/BoxEmitter.d.ts +0 -34
  47. package/dist/BoxManager.d.ts +0 -98
  48. package/dist/BuiltinApps.d.ts +0 -5
  49. package/dist/ContainerResizeObserver.d.ts +0 -11
  50. package/dist/Cursor/Cursor.d.ts +0 -43
  51. package/dist/Cursor/icons.d.ts +0 -3
  52. package/dist/Cursor/icons2.d.ts +0 -4
  53. package/dist/Cursor/index.d.ts +0 -55
  54. package/dist/Helper.d.ts +0 -11
  55. package/dist/InternalEmitter.d.ts +0 -34
  56. package/dist/Page/PageController.d.ts +0 -21
  57. package/dist/Page/index.d.ts +0 -3
  58. package/dist/PageState.d.ts +0 -9
  59. package/dist/ReconnectRefresher.d.ts +0 -24
  60. package/dist/RedoUndo.d.ts +0 -18
  61. package/dist/Register/index.d.ts +0 -28
  62. package/dist/Register/loader.d.ts +0 -4
  63. package/dist/Register/storage.d.ts +0 -8
  64. package/dist/Utils/AppCreateQueue.d.ts +0 -15
  65. package/dist/Utils/Common.d.ts +0 -22
  66. package/dist/Utils/Reactive.d.ts +0 -6
  67. package/dist/Utils/RoomHacker.d.ts +0 -3
  68. package/dist/Utils/error.d.ts +0 -27
  69. package/dist/Utils/log.d.ts +0 -1
  70. package/dist/View/IframeBridge.d.ts +0 -146
  71. package/dist/View/MainView.d.ts +0 -58
  72. package/dist/View/ViewManager.d.ts +0 -13
  73. package/dist/callback.d.ts +0 -38
  74. package/dist/constants.d.ts +0 -48
  75. package/dist/typings.d.ts +0 -84
package/dist/index.mjs CHANGED
@@ -22,7 +22,6 @@ import Emittery from "emittery";
22
22
  import { debounce as debounce$1, isEqual, omit, isObject as isObject$1, has, get, size as size$1, mapValues, noop as noop$2, pick, isEmpty, isInteger, orderBy, isFunction, isNumber, isNull } from "lodash";
23
23
  import { ScenePathType, UpdateEventKind, listenUpdated, unlistenUpdated, reaction, autorun, toJS, listenDisposed, unlistenDisposed, ViewMode, AnimationMode, isPlayer, isRoom, WhiteVersion, ApplianceNames, RoomPhase, PlayerPhase, InvisiblePlugin } from "white-web-sdk";
24
24
  import { v4 } from "uuid";
25
- import { genUID as genUID$1, SideEffectManager as SideEffectManager$1 } from "side-effect-manager";
26
25
  import { ResizeObserver as ResizeObserver$3 } from "@juggle/resize-observer";
27
26
  import videojs from "video.js";
28
27
  var Events = /* @__PURE__ */ ((Events2) => {
@@ -624,6 +623,61 @@ class BindContainerRoomPhaseInvalidError extends Error {
624
623
  this.message = "[WindowManager]: room phase only Connected can be bindContainer";
625
624
  }
626
625
  }
626
+ const e$2 = "!#%()*+,-./:;=?@[]^_`{|}~ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789", s$2 = e$2.length, t$3 = Array(20), r$4 = () => {
627
+ for (let r2 = 0; r2 < 20; r2++)
628
+ t$3[r2] = e$2.charAt(Math.random() * s$2);
629
+ return t$3.join("");
630
+ };
631
+ class o$1 {
632
+ constructor() {
633
+ this.disposers = /* @__PURE__ */ new Map();
634
+ }
635
+ add(e2, s2 = r$4()) {
636
+ return this.flush(s2), this.disposers.set(s2, e2()), s2;
637
+ }
638
+ addDisposer(e2, s2 = r$4()) {
639
+ return this.flush(s2), this.disposers.set(s2, e2), s2;
640
+ }
641
+ addEventListener(e2, s2, t2, o2, i2 = r$4()) {
642
+ return this.add(() => (e2.addEventListener(s2, t2, o2), () => e2.removeEventListener(s2, t2, o2)), i2), i2;
643
+ }
644
+ setTimeout(e2, s2, t2 = r$4()) {
645
+ return this.add(() => {
646
+ const r2 = window.setTimeout(() => {
647
+ this.remove(t2), e2();
648
+ }, s2);
649
+ return () => window.clearTimeout(r2);
650
+ }, t2);
651
+ }
652
+ setInterval(e2, s2, t2 = r$4()) {
653
+ return this.add(() => {
654
+ const t3 = window.setInterval(e2, s2);
655
+ return () => window.clearInterval(t3);
656
+ }, t2);
657
+ }
658
+ remove(e2) {
659
+ const s2 = this.disposers.get(e2);
660
+ return this.disposers.delete(e2), s2;
661
+ }
662
+ flush(e2) {
663
+ const s2 = this.remove(e2);
664
+ if (s2)
665
+ try {
666
+ s2();
667
+ } catch (t2) {
668
+ console.error(t2);
669
+ }
670
+ }
671
+ flushAll() {
672
+ this.disposers.forEach((e2) => {
673
+ try {
674
+ e2();
675
+ } catch (s2) {
676
+ console.error(s2);
677
+ }
678
+ }), this.disposers.clear();
679
+ }
680
+ }
627
681
  const onObjectByEvent = (event) => {
628
682
  return (object, func) => {
629
683
  if (object === void 0)
@@ -691,12 +745,12 @@ function isRef(e2) {
691
745
  return Boolean(has(e2, "__isRef"));
692
746
  }
693
747
  function makeRef(v2) {
694
- return { k: genUID$1(), v: v2, __isRef: true };
748
+ return { k: r$4(), v: v2, __isRef: true };
695
749
  }
696
750
  const STORAGE_NS = "_WM-STORAGE_";
697
751
  class Storage {
698
752
  constructor(context, id2, defaultState) {
699
- this._sideEffect = new SideEffectManager$1();
753
+ this._sideEffect = new o$1();
700
754
  this._destroyed = false;
701
755
  this._refMap = /* @__PURE__ */ new WeakMap();
702
756
  this._lastValue = /* @__PURE__ */ new Map();
@@ -1080,7 +1134,12 @@ class AppContext {
1080
1134
  return this.appProxy.kind;
1081
1135
  }
1082
1136
  dispatchAppEvent(type, value) {
1083
- internalEmitter.emit(`custom-${this.kind}`, { kind: this.kind, appId: this.appId, type, value });
1137
+ internalEmitter.emit(`custom-${this.kind}`, {
1138
+ kind: this.kind,
1139
+ appId: this.appId,
1140
+ type,
1141
+ value
1142
+ });
1084
1143
  }
1085
1144
  }
1086
1145
  class AppPageStateImpl {
@@ -1803,7 +1862,7 @@ class MainViewProxy {
1803
1862
  this.mainViewIsAddListener = false;
1804
1863
  this.store = this.manager.store;
1805
1864
  this.viewMode = this.manager.windowManger.viewMode;
1806
- this.sideEffectManager = new SideEffectManager$1();
1865
+ this.sideEffectManager = new o$1();
1807
1866
  this.syncCamera = () => {
1808
1867
  if (!this.polling || this.viewMode !== ViewMode.Broadcaster)
1809
1868
  return;
@@ -2127,7 +2186,7 @@ class AppManager {
2127
2186
  this.mainViewScenesLength = 0;
2128
2187
  this.callbacksNode = null;
2129
2188
  this.appCreateQueue = new AppCreateQueue();
2130
- this.sideEffectManager = new SideEffectManager$1();
2189
+ this.sideEffectManager = new o$1();
2131
2190
  this.sceneState = null;
2132
2191
  this.rootDirRemoving = false;
2133
2192
  this.onRemoveScenes = async (params) => {
@@ -2853,16 +2912,59 @@ const findMemberByUid = (room, uid) => {
2853
2912
  return result;
2854
2913
  };
2855
2914
  const createInvisiblePlugin = async (room) => {
2856
- try {
2857
- const manager = await room.createInvisiblePlugin(WindowManager, {});
2915
+ let manager = room.getInvisiblePlugin(WindowManager.kind);
2916
+ if (manager)
2858
2917
  return manager;
2859
- } catch (error) {
2860
- if (error.message === `invisible plugin "WindowManager" exits`) {
2861
- await wait(200);
2862
- return room.getInvisiblePlugin(WindowManager.kind);
2863
- } else {
2864
- log("createInvisiblePlugin failed", error);
2918
+ let resolve;
2919
+ const promise = new Promise((r2) => {
2920
+ WindowManager._resolve = resolve = r2;
2921
+ });
2922
+ let wasReadonly = false;
2923
+ const canOperate = isRoomTokenWritable(room);
2924
+ if (!room.isWritable && canOperate) {
2925
+ wasReadonly = true;
2926
+ await pRetry(async (count) => {
2927
+ log(`switching to writable (x${count})`);
2928
+ await room.setWritable(true);
2929
+ }, { retries: 10, maxTimeout: 5e3 });
2930
+ }
2931
+ if (room.isWritable) {
2932
+ log("creating InvisiblePlugin...");
2933
+ room.createInvisiblePlugin(WindowManager, {}).catch(console.warn);
2934
+ } else {
2935
+ if (canOperate)
2936
+ console.warn("[WindowManager]: failed to switch to writable");
2937
+ console.warn("[WindowManager]: waiting for others to create the plugin...");
2938
+ }
2939
+ const timeout = setTimeout(() => {
2940
+ console.warn("[WindowManager]: no one called createInvisiblePlugin() after 20 seconds");
2941
+ }, 2e4);
2942
+ const abort = setTimeout(() => {
2943
+ throw new Error("[WindowManager]: no one called createInvisiblePlugin() after 60 seconds");
2944
+ }, 6e4);
2945
+ const interval = setInterval(() => {
2946
+ manager = room.getInvisiblePlugin(WindowManager.kind);
2947
+ if (manager) {
2948
+ clearTimeout(abort);
2949
+ clearTimeout(timeout);
2950
+ clearInterval(interval);
2951
+ resolve(manager);
2952
+ if (wasReadonly && room.isWritable) {
2953
+ setTimeout(() => room.setWritable(false).catch(console.warn), 500);
2954
+ }
2865
2955
  }
2956
+ }, 200);
2957
+ return promise;
2958
+ };
2959
+ const isRoomTokenWritable = (room) => {
2960
+ try {
2961
+ const str = atob(room.roomToken.slice("NETLESSROOM_".length));
2962
+ const index2 = str.indexOf("&role=");
2963
+ const role = +str[index2 + "&role=".length];
2964
+ return role < 2;
2965
+ } catch (error) {
2966
+ console.error(error);
2967
+ return false;
2866
2968
  }
2867
2969
  };
2868
2970
  const ResizeObserver$2 = window.ResizeObserver || ResizeObserver$3;
@@ -7459,7 +7561,7 @@ class CursorManager {
7459
7561
  this.enableCursor = enableCursor;
7460
7562
  this.cursorInstances = /* @__PURE__ */ new Map();
7461
7563
  this.userApplianceIcons = {};
7462
- this.sideEffectManager = new SideEffectManager$1();
7564
+ this.sideEffectManager = new o$1();
7463
7565
  this.store = this.manager.store;
7464
7566
  this.leaveFlag = true;
7465
7567
  this._style = "default";
@@ -17970,7 +18072,7 @@ const _IframeBridge = class {
17970
18072
  this.allowAppliances = ["clicker"];
17971
18073
  this.bridgeDisposer = noop$2;
17972
18074
  this.rootRect = null;
17973
- this.sideEffectManager = new SideEffectManager$1();
18075
+ this.sideEffectManager = new o$1();
17974
18076
  this.execListenIframe = debounce$1((options2) => {
17975
18077
  this.listenIframe(options2);
17976
18078
  }, 50);
@@ -18140,7 +18242,9 @@ const _IframeBridge = class {
18140
18242
  const room = this.displayer;
18141
18243
  const scenes = room.entireScenes()[this.attributes.displaySceneDir];
18142
18244
  if (!scenes || scenes.length !== page) {
18143
- const genScenes = times(page, (index2) => ({ name: String(index2 + 1) }));
18245
+ const genScenes = times(page, (index2) => ({
18246
+ name: String(index2 + 1)
18247
+ }));
18144
18248
  room.putScenes(this.attributes.displaySceneDir, genScenes);
18145
18249
  this.manager.setMainViewScenePath(this.attributes.displaySceneDir);
18146
18250
  }
@@ -18429,14 +18533,17 @@ const reconnectRefresher = new ReconnectRefresher({ emitter: internalEmitter });
18429
18533
  const _WindowManager = class extends InvisiblePlugin {
18430
18534
  constructor(context) {
18431
18535
  super(context);
18432
- this.version = "0.4.73-beta.0";
18433
- this.dependencies = { "dependencies": { "@juggle/resize-observer": "^3.3.1", "@netless/telebox-insider": "0.2.28", "emittery": "^0.9.2", "lodash": "^4.17.21", "p-retry": "^4.6.1", "side-effect-manager": "0.1.5", "uuid": "^7.0.3", "video.js": ">=7" }, "peerDependencies": { "jspdf": "2.5.1", "white-web-sdk": "^2.16.0" }, "devDependencies": { "@netless/app-docs-viewer": "^0.2.17", "@netless/app-media-player": "0.1.0-beta.6", "@rollup/plugin-commonjs": "^20.0.0", "@rollup/plugin-node-resolve": "^13.0.4", "@rollup/plugin-url": "^6.1.0", "@sveltejs/vite-plugin-svelte": "^1.0.0-next.22", "@tsconfig/svelte": "^2.0.1", "@types/debug": "^4.1.7", "@types/lodash": "^4.14.182", "@types/lodash-es": "^4.17.4", "@types/uuid": "^8.3.1", "@typescript-eslint/eslint-plugin": "^4.30.0", "@typescript-eslint/parser": "^4.30.0", "@vitest/ui": "^0.14.1", "cypress": "^8.7.0", "dotenv": "^10.0.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-svelte3": "^3.2.0", "jsdom": "^19.0.0", "jspdf": "^2.5.1", "less": "^4.1.1", "prettier": "^2.3.2", "prettier-plugin-svelte": "^2.4.0", "rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-styles": "^3.14.1", "svelte": "^3.42.4", "typescript": "^4.5.5", "vite": "^2.5.3", "vitest": "^0.14.1", "white-web-sdk": "2.16.43" } };
18536
+ this.version = "0.4.73-beta.1";
18537
+ this.dependencies = { "dependencies": { "@juggle/resize-observer": "^3.3.1", "@netless/telebox-insider": "0.2.28", "emittery": "^0.9.2", "lodash": "^4.17.21", "p-retry": "^4.6.1", "uuid": "^7.0.3", "video.js": ">=7" }, "peerDependencies": { "jspdf": "2.5.1", "white-web-sdk": "^2.16.0" }, "devDependencies": { "@hyrious/dts": "^0.2.2", "@netless/app-docs-viewer": "^0.2.17", "@netless/app-media-player": "0.1.0-beta.6", "@rollup/plugin-commonjs": "^20.0.0", "@rollup/plugin-node-resolve": "^13.0.4", "@rollup/plugin-url": "^6.1.0", "@sveltejs/vite-plugin-svelte": "^1.0.0-next.22", "@tsconfig/svelte": "^2.0.1", "@types/debug": "^4.1.7", "@types/lodash": "^4.14.182", "@types/lodash-es": "^4.17.4", "@types/uuid": "^8.3.1", "@typescript-eslint/eslint-plugin": "^4.30.0", "@typescript-eslint/parser": "^4.30.0", "@vitest/ui": "^0.14.1", "cypress": "^8.7.0", "dotenv": "^10.0.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-svelte3": "^3.2.0", "jsdom": "^19.0.0", "jspdf": "^2.5.1", "less": "^4.1.1", "prettier": "^2.3.2", "prettier-plugin-svelte": "^2.4.0", "rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-styles": "^3.14.1", "side-effect-manager": "0.1.5", "svelte": "^3.42.4", "typescript": "^4.5.5", "vite": "^2.9.9", "vitest": "^0.14.1", "white-web-sdk": "2.16.43" } };
18434
18538
  this.emitter = callbacks$1;
18435
18539
  this.viewMode = ViewMode.Broadcaster;
18436
18540
  this.isReplay = isPlayer(this.displayer);
18437
18541
  this.containerSizeRatio = _WindowManager.containerSizeRatio;
18438
18542
  _WindowManager.displayer = context.displayer;
18439
- window.NETLESS_DEPS = { "dependencies": { "@juggle/resize-observer": "^3.3.1", "@netless/telebox-insider": "0.2.28", "emittery": "^0.9.2", "lodash": "^4.17.21", "p-retry": "^4.6.1", "side-effect-manager": "0.1.5", "uuid": "^7.0.3", "video.js": ">=7" }, "peerDependencies": { "jspdf": "2.5.1", "white-web-sdk": "^2.16.0" }, "devDependencies": { "@netless/app-docs-viewer": "^0.2.17", "@netless/app-media-player": "0.1.0-beta.6", "@rollup/plugin-commonjs": "^20.0.0", "@rollup/plugin-node-resolve": "^13.0.4", "@rollup/plugin-url": "^6.1.0", "@sveltejs/vite-plugin-svelte": "^1.0.0-next.22", "@tsconfig/svelte": "^2.0.1", "@types/debug": "^4.1.7", "@types/lodash": "^4.14.182", "@types/lodash-es": "^4.17.4", "@types/uuid": "^8.3.1", "@typescript-eslint/eslint-plugin": "^4.30.0", "@typescript-eslint/parser": "^4.30.0", "@vitest/ui": "^0.14.1", "cypress": "^8.7.0", "dotenv": "^10.0.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-svelte3": "^3.2.0", "jsdom": "^19.0.0", "jspdf": "^2.5.1", "less": "^4.1.1", "prettier": "^2.3.2", "prettier-plugin-svelte": "^2.4.0", "rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-styles": "^3.14.1", "svelte": "^3.42.4", "typescript": "^4.5.5", "vite": "^2.5.3", "vitest": "^0.14.1", "white-web-sdk": "2.16.43" } };
18543
+ window.NETLESS_DEPS = { "dependencies": { "@juggle/resize-observer": "^3.3.1", "@netless/telebox-insider": "0.2.28", "emittery": "^0.9.2", "lodash": "^4.17.21", "p-retry": "^4.6.1", "uuid": "^7.0.3", "video.js": ">=7" }, "peerDependencies": { "jspdf": "2.5.1", "white-web-sdk": "^2.16.0" }, "devDependencies": { "@hyrious/dts": "^0.2.2", "@netless/app-docs-viewer": "^0.2.17", "@netless/app-media-player": "0.1.0-beta.6", "@rollup/plugin-commonjs": "^20.0.0", "@rollup/plugin-node-resolve": "^13.0.4", "@rollup/plugin-url": "^6.1.0", "@sveltejs/vite-plugin-svelte": "^1.0.0-next.22", "@tsconfig/svelte": "^2.0.1", "@types/debug": "^4.1.7", "@types/lodash": "^4.14.182", "@types/lodash-es": "^4.17.4", "@types/uuid": "^8.3.1", "@typescript-eslint/eslint-plugin": "^4.30.0", "@typescript-eslint/parser": "^4.30.0", "@vitest/ui": "^0.14.1", "cypress": "^8.7.0", "dotenv": "^10.0.0", "eslint": "^7.32.0", "eslint-config-prettier": "^8.3.0", "eslint-plugin-svelte3": "^3.2.0", "jsdom": "^19.0.0", "jspdf": "^2.5.1", "less": "^4.1.1", "prettier": "^2.3.2", "prettier-plugin-svelte": "^2.4.0", "rollup-plugin-analyzer": "^4.0.0", "rollup-plugin-styles": "^3.14.1", "side-effect-manager": "0.1.5", "svelte": "^3.42.4", "typescript": "^4.5.5", "vite": "^2.9.9", "vitest": "^0.14.1", "white-web-sdk": "2.16.43" } };
18544
+ }
18545
+ static onCreate(manager) {
18546
+ _WindowManager._resolve(manager);
18440
18547
  }
18441
18548
  static async mount(params) {
18442
18549
  const room = params.room;
@@ -18508,26 +18615,8 @@ const _WindowManager = class extends InvisiblePlugin {
18508
18615
  }
18509
18616
  return manager;
18510
18617
  }
18511
- static async initManager(room) {
18512
- let manager = room.getInvisiblePlugin(_WindowManager.kind);
18513
- if (!manager) {
18514
- if (isRoom(room)) {
18515
- if (room.isWritable === false) {
18516
- try {
18517
- await room.setWritable(true);
18518
- } catch (error) {
18519
- throw new Error("[WindowManger]: room must be switched to be writable");
18520
- }
18521
- manager = await createInvisiblePlugin(room);
18522
- manager == null ? void 0 : manager.ensureAttributes();
18523
- await wait(500);
18524
- await room.setWritable(false);
18525
- } else {
18526
- manager = await createInvisiblePlugin(room);
18527
- }
18528
- }
18529
- }
18530
- return manager;
18618
+ static initManager(room) {
18619
+ return createInvisiblePlugin(room);
18531
18620
  }
18532
18621
  static initContainer(manager, container, params) {
18533
18622
  const { chessboard, overwriteStyles, fullscreen } = params;
@@ -19178,6 +19267,7 @@ WindowManager.kind = "WindowManager";
19178
19267
  WindowManager.debug = false;
19179
19268
  WindowManager.containerSizeRatio = DEFAULT_CONTAINER_RATIO;
19180
19269
  WindowManager.isCreated = false;
19270
+ WindowManager._resolve = (_manager) => void 0;
19181
19271
  setupBuiltin();
19182
19272
  export { AppCreateError, AppManagerNotInitError, AppNotRegisterError, BindContainerRoomPhaseInvalidError, BoxManagerNotFoundError, BoxNotCreatedError, BuiltinApps, DomEvents, IframeBridge, IframeEvents, InvalidScenePath, ParamsInvalidError, WhiteWebSDKInvalidError, WindowManager, calculateNextIndex, reconnectRefresher };
19183
19273
  //# sourceMappingURL=index.mjs.map