@netless/window-manager 1.0.13-bate.0 → 1.0.13-bate.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as lodash from 'lodash';
2
2
  import * as white_web_sdk from 'white-web-sdk';
3
- import { SceneDefinition, SceneState, DisplayerState, View, ApplianceNames, ViewVisionMode, CameraState, RoomMember, Camera, Size, Event as Event$1, Scope, EventPhase, MagixEventListenerOptions as MagixEventListenerOptions$1, toJS, listenUpdated, unlistenUpdated, listenDisposed, unlistenDisposed, Room, ViewMode, Displayer, MemberState, AnimationMode, InvisiblePlugin, Logger, InvisiblePluginContext, Player, Rectangle, Point, CameraBound, ImageInformation } from 'white-web-sdk';
3
+ import { SceneDefinition, SceneState, DisplayerState, View, ApplianceNames, ViewVisionMode, CameraState, RoomMember, Camera, Size, Event as Event$1, Scope, EventPhase, MagixEventListenerOptions as MagixEventListenerOptions$1, toJS, listenUpdated, unlistenUpdated, listenDisposed, unlistenDisposed, Room, ViewMode, Displayer, MemberState, Logger, AnimationMode, InvisiblePlugin, InvisiblePluginContext, Player, Rectangle, Point, CameraBound, ImageInformation } from 'white-web-sdk';
4
4
  export { AnimationMode, Displayer, Player, Room, SceneDefinition, SceneState, View } from 'white-web-sdk';
5
5
  import { TELE_BOX_STATE, TeleBoxRect, TeleBoxState, TeleBoxColorScheme, NotMinimizedBoxState, TeleBoxManager, TeleBoxCollector, ReadonlyTeleBox, TeleBoxManagerUpdateConfig, TeleBoxConfig } from '@netless/telebox-insider';
6
6
  export { ReadonlyTeleBox, TeleBoxCollector, TeleBoxManager, TeleBoxRect } from '@netless/telebox-insider';
@@ -440,7 +440,6 @@ type ISize = Size & {
440
440
  declare class AttributesDelegate {
441
441
  private context;
442
442
  static readonly kind = "AttributesDelegate";
443
- private setMainViewCameraConsole;
444
443
  constructor(context: StoreContext);
445
444
  setContext(context: StoreContext): void;
446
445
  get attributes(): any;
@@ -784,6 +783,7 @@ declare class MainViewProxy {
784
783
  private playgroundSizeChangeListenerLocalConsole;
785
784
  private sizeUpdatedLocalConsole;
786
785
  private cameraUpdatedLocalConsole;
786
+ private cameraReactionLocalConsole;
787
787
  constructor(manager: AppManager);
788
788
  private syncCamera;
789
789
  private startListenWritableChange;
@@ -983,6 +983,48 @@ declare class AppManager {
983
983
  destroy(): void;
984
984
  }
985
985
 
986
+ /**
987
+ * 按 `[WindowManager][tagName]` 前缀输出。
988
+ * 若传入 `debounceTime`(毫秒):窗口内多次 `log` 不立即输出,只在连续停止调用满 `debounceTime` 后输出**最后一次**的参数(尾部 debounce)。
989
+ */
990
+ declare class ArgusLog {
991
+ private readonly logger;
992
+ private readonly name;
993
+ private readonly debounceTime?;
994
+ private pendingArgs;
995
+ private flushTimer;
996
+ /** debounce 窗口内按一层 key 合并;同 key 后者覆盖;非普通对象则整段待输出被本次值替换 */
997
+ private pendingShallowMerge;
998
+ private shallowMergeTimer;
999
+ /** debounce 窗口内 safeUpdateAttributes:同 keys 数组则只更新 value,否则追加一段,flush 时拼成一条 */
1000
+ private pendingUpdateSegments;
1001
+ private updateMergeTimer;
1002
+ constructor(logger: Logger, name: string, debounceTime?: number | undefined);
1003
+ private emitInfo;
1004
+ private flush;
1005
+ private flushShallowMerge;
1006
+ log(...args: unknown[]): void;
1007
+ /**
1008
+ * 带 debounce 时:窗口内多次调用会把「一层 key」合并进同一条日志(不同 key 并存,同 key 取最后一次)。
1009
+ * `payload` 为普通对象时做浅合并;否则视为原子值,覆盖当前待合并状态(丢弃此前累积的对象 key)。
1010
+ * 无 debounce 或时间为 0 时立即输出。
1011
+ */
1012
+ logDebouncedShallowMerge(label: string, payload: unknown): void;
1013
+ private flushUpdateAttributesMerge;
1014
+ /**
1015
+ * 带 debounce 时:连续调用若 `keys` 与上一段完全相同则覆盖该段的 `value`;否则追加一段。
1016
+ * flush 时输出一条日志,多段用 ` | ` 连接。
1017
+ */
1018
+ logDebouncedUpdateAttributes(keys: string[], value: unknown): void;
1019
+ /**
1020
+ * 销毁:清除所有 `setTimeout` debounce 定时器,并丢弃尚未输出的暂存日志(不补打日志)。
1021
+ * WindowManager 销毁时应调用,避免泄漏与销毁后仍触发 `logger.info`。
1022
+ */
1023
+ destroy(): void;
1024
+ /** 与 `destroy()` 相同,保留旧名以兼容 */
1025
+ dispose(): void;
1026
+ }
1027
+
986
1028
  declare class AppListeners {
987
1029
  private manager;
988
1030
  private displayer;
@@ -1327,6 +1369,7 @@ declare class WindowManager extends InvisiblePlugin<WindowMangerAttributes, any>
1327
1369
  containerSizeRatio: number;
1328
1370
  private extendPluginManager?;
1329
1371
  private _roomLogger?;
1372
+ attributesDeboundceLog?: ArgusLog;
1330
1373
  get Logger(): Logger | undefined;
1331
1374
  constructor(context: InvisiblePluginContext);
1332
1375
  static onCreate(manager: WindowManager): void;