@netless/forge-whiteboard 1.1.3 → 1.1.5

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.
@@ -12,6 +12,7 @@ export declare class LiveCursor {
12
12
  private lastVisibleChangeTimes;
13
13
  constructor(canvasElement: HTMLCanvasElement, paperScope: paper.PaperScope, userManager: UserManager, requestUserMap: (userId: string) => Y.Map<any>);
14
14
  private createCursor;
15
+ private updateCursorLabel;
15
16
  private isOnSamePage;
16
17
  private detectEnable;
17
18
  updateCursorPosition(point: paper.Point, userId: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"LiveCursor.d.ts","sourceRoot":"","sources":["../src/LiveCursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAGzB,qBAAa,UAAU;IAEd,SAAS,iBAAiC;IAC1C,cAAc,EAAE,OAAO,CAAQ;IAC/B,WAAW,EAAE,WAAW,CAAC;IAChC,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,sBAAsB,CAA+B;gBAG3D,aAAa,EAAE,iBAAiB,EAChC,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAiBhD,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,YAAY;IAUb,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM;IAkCvD,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;CAc5D"}
1
+ {"version":3,"file":"LiveCursor.d.ts","sourceRoot":"","sources":["../src/LiveCursor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAGzB,qBAAa,UAAU;IAEd,SAAS,iBAAiC;IAC1C,cAAc,EAAE,OAAO,CAAQ;IAC/B,WAAW,EAAE,WAAW,CAAC;IAChC,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,UAAU,CAAmB;IACrC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAA+B;IACnD,OAAO,CAAC,sBAAsB,CAA+B;gBAG3D,aAAa,EAAE,iBAAiB,EAChC,UAAU,EAAE,KAAK,CAAC,UAAU,EAC5B,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAiBhD,OAAO,CAAC,YAAY;IAepB,OAAO,CAAC,iBAAiB;IAWzB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,YAAY;IAUb,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM;IAmCvD,mBAAmB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM;CAc5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"Editor.d.ts","sourceRoot":"","sources":["../../src/edit/Editor.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAIhE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AA8MvD,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,qBAAa,MAAO,SAAQ,YAAY,CAAC,YAAY,CAAC;IAE7C,QAAQ,EAAE,cAAc,CAAC;IAChC,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,OAAO,CAAiB;IAEhC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,WAAW,CAAmB;IACtC,OAAO,CAAC,eAAe,CAAc;IAErC,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,QAAQ,CAAiE;IACjF,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,aAAa,CAAyC;IAC9D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAsB;IAErC,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAAc;IAEjC,OAAO,CAAC,YAAY,CAAkB;IAEtC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,aAAa,CAAgB;gBAElB,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE;QACjK,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;KACxB;IAoDH,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,YAAY,CAWlB;IAEF,OAAO,CAAC,iBAAiB,CA2CvB;IAEF,OAAO,CAAC,iBAAiB,CA6CvB;IAEF,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe,CAgBrB;IAEF,OAAO,CAAC,kBAAkB,CAOxB;IAEF,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,WAAW;IAsBZ,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI;IAwBxC,oBAAoB;IAuBpB,YAAY,aA2BjB;IAEF,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,WAAW;IAYZ,MAAM;IAYN,IAAI;IAiBJ,OAAO;CAGf"}
1
+ {"version":3,"file":"Editor.d.ts","sourceRoot":"","sources":["../../src/edit/Editor.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAIhE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAEnC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AA8MvD,MAAM,WAAW,YAAY;IACzB,KAAK,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,qBAAa,MAAO,SAAQ,YAAY,CAAC,YAAY,CAAC;IAE7C,QAAQ,EAAE,cAAc,CAAC;IAChC,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,OAAO,CAAiB;IAEhC,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,WAAW,CAAmB;IACtC,OAAO,CAAC,eAAe,CAAc;IAErC,OAAO,CAAC,WAAW,CAAa;IAEhC,OAAO,CAAC,QAAQ,CAAS;IAEzB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,YAAY,CAAS;IAE7B,OAAO,CAAC,QAAQ,CAAiE;IACjF,OAAO,CAAC,YAAY,CAAuB;IAC3C,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,aAAa,CAAyC;IAC9D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAsB;IAErC,OAAO,CAAC,YAAY,CAA6B;IACjD,OAAO,CAAC,WAAW,CAAc;IAEjC,OAAO,CAAC,YAAY,CAAkB;IAEtC,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,aAAa,CAAoB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,aAAa,CAAgB;gBAElB,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE;QACjK,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACxB,YAAY,EAAE,MAAM,CAAC;KACxB;IAoDH,OAAO,CAAC,aAAa;IAMrB,OAAO,CAAC,YAAY,CAWlB;IAEF,OAAO,CAAC,iBAAiB,CA2CvB;IAEF,OAAO,CAAC,iBAAiB,CA6CvB;IAEF,OAAO,CAAC,gBAAgB;IASxB,OAAO,CAAC,eAAe,CAgBrB;IAEF,OAAO,CAAC,kBAAkB,CAOxB;IAEF,OAAO,CAAC,gBAAgB;IA8BxB,OAAO,CAAC,YAAY;IAWpB,OAAO,CAAC,mBAAmB;IAS3B,OAAO,CAAC,2BAA2B;IAcnC,OAAO,CAAC,kBAAkB;IAQ1B,OAAO,CAAC,sBAAsB;IAO9B,OAAO,CAAC,WAAW;IAsBZ,UAAU,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI;IAwBxC,oBAAoB;IAuBpB,YAAY,aA2BjB;IAEF,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,WAAW;IAYZ,MAAM;IAYN,IAAI;IAiBJ,OAAO;CAGf"}
@@ -1 +1 @@
1
- {"version":3,"file":"RenderableModel.d.ts","sourceRoot":"","sources":["../../src/model/RenderableModel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RenderableModel.d.ts","sourceRoot":"","sources":["../../src/model/RenderableModel.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,8 @@ export declare class CurveModel extends ElementModel<paper.Path> {
11
11
  constructor(root: Y.Map<any>, scope: paper.PaperScope, liveCursor: LiveCursor, isPerformanceMode: () => boolean);
12
12
  private average;
13
13
  private parsePoints;
14
+ private isPressureValue;
15
+ private pointStride;
14
16
  private matrixedPoints;
15
17
  private createPath;
16
18
  protected onVectorUpdate(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"CurveModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/CurveModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,qBAAa,UAAW,SAAQ,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;IAE/C,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAQ;IAEtC,OAAO,CAAC,KAAK,CAAkB;IAC/B,SAAS,CAAC,iCAAiC,UAAS;IACpD,SAAS,CAAC,oBAAoB,UAAQ;IACtC,SAAS,CAAC,eAAe,SAAK;gBAEX,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,OAAO;IAUtH,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,cAAc;IAatB,OAAO,CAAC,UAAU;IAkClB,SAAS,CAAC,cAAc;IA4BjB,eAAe,IAAI,IAAI;IAOvB,YAAY,IAAI,YAAY;IAInC,SAAS,CAAC,UAAU,IAAI,MAAM,EAAE;IAIhC,SAAS,CAAC,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAO/D,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI;IAU/C,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM;IAYtC,SAAS,CAAC,UAAU;CACrB"}
1
+ {"version":3,"file":"CurveModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/CurveModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAE9C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,qBAAa,UAAW,SAAQ,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;IAE/C,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAQ;IAEtC,OAAO,CAAC,KAAK,CAAkB;IAC/B,SAAS,CAAC,iCAAiC,UAAS;IACpD,SAAS,CAAC,oBAAoB,UAAQ;IACtC,SAAS,CAAC,eAAe,SAAK;gBAEX,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,OAAO;IAUtH,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,WAAW;IAgBnB,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,UAAU;IAkClB,SAAS,CAAC,cAAc;IA4BjB,eAAe,IAAI,IAAI;IAOvB,YAAY,IAAI,YAAY;IAInC,SAAS,CAAC,UAAU,IAAI,MAAM,EAAE;IAIhC,SAAS,CAAC,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAO/D,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI;IAY/C,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM;IAYtC,SAAS,CAAC,UAAU;CACrB"}
@@ -61,6 +61,8 @@ export declare abstract class ElementModel<ITEM extends paper.Item = paper.Item>
61
61
  set shadow(value: string);
62
62
  get isPerformanceEnvironment(): boolean;
63
63
  constructor(root: Y.Map<any>, scope: paper.PaperScope, liveCursor: LiveCursor, isPerformanceMode: () => boolean);
64
+ bindObserver(): void;
65
+ protected subBindObserver(): void;
64
66
  private handlePropChange;
65
67
  private handlePointsChangeDirect;
66
68
  private handlePointsChangePerformance;
@@ -76,5 +78,6 @@ export declare abstract class ElementModel<ITEM extends paper.Item = paper.Item>
76
78
  rotateByOffset(angle: number, centerX: number, centerY: number): number;
77
79
  getStyleKeys(): string[];
78
80
  dispose(): void;
81
+ disposeObserver(): void;
79
82
  }
80
83
  //# sourceMappingURL=ElementModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ElementModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/ElementModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,8BAAsB,YAAY,CAAC,IAAI,SAAS,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI;IAErE,MAAM,CAAC,IAAI;;;;;;;;;;;;MAYT;IAEK,aAAa,EAAE,aAAa,GAAG,IAAI,CAAQ;IAClD,SAAgB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACjC,SAAgB,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC;IAExC,SAAgB,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAElC,SAAS,CAAC,QAAQ,CAAC,iCAAiC,EAAE,OAAO,CAAC;IAC9D,SAAS,CAAC,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;IACjD,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IAE3C,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,cAAc,CAAuB;IAC7C,OAAO,CAAC,iBAAiB,CAAuB;IAChD,OAAO,CAAC,iBAAiB,CAAgB;IAEzC,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,CAAM;IAErC,SAAS,CAAC,QAAQ,CAAC,UAAU,IAAI,IAAI;IAErC,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,IAAI;IAG1C,SAAS,CAAC,QAAQ,CAAC,cAAc,IAAI,IAAI;IAGzC,SAAS,CAAC,QAAQ,CAAC,UAAU,IAAI,MAAM,EAAE;IAEzC,SAAS,CAAC,QAAQ,CAAC,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAExE,SAAS,CAAC,QAAQ,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI;IAExD,SAAS,CAAC,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;aAEtC,YAAY,IAAI,YAAY;IAE5C,IAAW,KAAK,IAAI,MAAM,CAEzB;IAED,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,IAAI,MAAM,GAAG,SAAS,CAEpC;IAED,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,WAAW,CAAC,CAAC,EAAE,MAAM,EAE/B;IAED,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,IAAW,WAAW,CAAC,KAAK,EAAE,MAAM,EAEnC;IAED,IAAW,SAAS,IAAI,MAAM,GAAG,IAAI,CAEpC;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAExC;IAED,IAAW,SAAS,IAAI,MAAM,EAAE,CAE/B;IAED,IAAW,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,EAEnC;IAED,IAAW,YAAY,IAAI,MAAM,EAAE,CAElC;IAED,IAAW,MAAM,IAAI,MAAM,EAAE,CAM5B;IAED,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAE9B;IAKD,IAAW,MAAM,IAAI,MAAM,CAE1B;IAED,IAAW,MAAM,CAAC,KAAK,EAAE,MAAM,EAE9B;IAED,IAAW,wBAAwB,IAAI,OAAO,CAE7C;gBAEkB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,OAAO;IAgBtH,OAAO,CAAC,gBAAgB,CA+CtB;IAEF,OAAO,CAAC,wBAAwB;IAShC,OAAO,CAAC,6BAA6B;IAsBrC,OAAO,CAAC,mBAAmB,CAUzB;IAEK,kBAAkB;IAYlB,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE;IAQpC,OAAO,CAAC,kBAAkB;IAI1B,OAAO,CAAC,uBAAuB;IAmBxB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE;IAQjC,OAAO,CAAC,eAAe;IAiBvB,OAAO,CAAC,oBAAoB;IAwBrB,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM;IAMvC,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM;IAkBvE,YAAY,IAAI,MAAM,EAAE;IAMxB,OAAO;CAIf"}
1
+ {"version":3,"file":"ElementModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/ElementModel.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,11 @@ export declare class LaserPointerModel extends ElementModel<paper.Path> {
11
11
  protected clearLocalPointsWhenYPointsChange: boolean;
12
12
  protected shouldUseLocalPoints: boolean;
13
13
  protected localPointsPick: number;
14
+ private removeElement;
14
15
  constructor(clientId: string, root: Y.Map<any>, scope: paper.PaperScope, liveCursor: LiveCursor, removeElement: (uuid: string) => void, isPerformanceMode: () => boolean);
16
+ private handleLaserPropChange;
17
+ protected subBindObserver(): void;
18
+ protected subDispose(): void;
15
19
  beginRemoveAnimate(): void;
16
20
  private average;
17
21
  private createPath;
@@ -27,7 +31,6 @@ export declare class LaserPointerModel extends ElementModel<paper.Path> {
27
31
  exclude: string[];
28
32
  };
29
33
  protected onStyleKeyUpdate(_key: string): void;
30
- protected subDispose(): void;
31
34
  protected liveCursorPoint(): paper.Point | null;
32
35
  }
33
36
  //# sourceMappingURL=LaserPointerModel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"LaserPointerModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/LaserPointerModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAGzB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,qBAAa,iBAAkB,SAAQ,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;IAEtD,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAQ;IAEtC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,YAAY,CAAyB;IAC7C,SAAS,CAAC,iCAAiC,UAAS;IACpD,SAAS,CAAC,oBAAoB,UAAS;IACvC,SAAS,CAAC,eAAe,SAAK;gBAEX,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAAE,iBAAiB,EAAE,MAAM,OAAO;IAwCxK,kBAAkB;IAIzB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,UAAU;IAkClB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,eAAe;IAMvB,SAAS,CAAC,cAAc;IAQjB,eAAe,IAAI,IAAI;IAUvB,YAAY,IAAI,YAAY;IAInC,SAAS,CAAC,UAAU,IAAI,MAAM,EAAE;IAIhC,SAAS,CAAC,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAO/D,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAIvC,SAAS,CAAC,UAAU;IAIpB,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI;CAShD"}
1
+ {"version":3,"file":"LaserPointerModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/LaserPointerModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAGzB,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAG9C,qBAAa,iBAAkB,SAAQ,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC;IAEtD,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAQ;IAEtC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,YAAY,CAAyB;IAC7C,SAAS,CAAC,iCAAiC,UAAS;IACpD,SAAS,CAAC,oBAAoB,UAAS;IACvC,SAAS,CAAC,eAAe,SAAK;IAE9B,OAAO,CAAC,aAAa,CAAyB;gBAE3B,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAAE,iBAAiB,EAAE,MAAM,OAAO;IAe/K,OAAO,CAAC,qBAAqB,CAwB3B;IAEF,SAAS,CAAC,eAAe;IAKzB,SAAS,CAAC,UAAU;IAIb,kBAAkB;IAIzB,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,UAAU;IAkClB,OAAO,CAAC,WAAW;IAkBnB,OAAO,CAAC,cAAc;IAStB,OAAO,CAAC,eAAe;IAMvB,SAAS,CAAC,cAAc;IAQjB,eAAe,IAAI,IAAI;IAUvB,YAAY,IAAI,YAAY;IAInC,SAAS,CAAC,UAAU,IAAI,MAAM,EAAE;IAIhC,SAAS,CAAC,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAO/D,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,MAAM;IAIvC,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI;CAShD"}
@@ -17,6 +17,7 @@ export declare class PointTextModel extends ElementModel<paper.PointText> {
17
17
  constructor(root: Y.Map<any>, scope: paper.PaperScope, liveCursor: LiveCursor, isPerformanceMode: () => boolean);
18
18
  private handleTextPropChange;
19
19
  protected subDispose(): void;
20
+ protected subBindObserver(): void;
20
21
  protected liveCursorPoint(): paper.Point | null;
21
22
  getInternalMeasurement(): {
22
23
  scaleX: number;
@@ -1 +1 @@
1
- {"version":3,"file":"PointTextModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/PointTextModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,qBAAa,cAAe,SAAQ,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;IAExD,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAQ;IAC3C,SAAS,CAAC,iCAAiC,UAAQ;IACnD,SAAS,CAAC,oBAAoB,UAAS;IACvC,SAAS,CAAC,eAAe,SAAK;IAE9B,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;IACD,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IACD,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAED,IAAW,UAAU,IAAI,MAAM,CAE9B;IACD,IAAW,UAAU,CAAC,KAAK,EAAE,MAAM,EAElC;IAED,OAAO,KAAK,UAAU,GAKrB;gBAEkB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,OAAO;IAkBtH,OAAO,CAAC,oBAAoB,CAe1B;IAEF,SAAS,CAAC,UAAU;IAIpB,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI;IAWxC,sBAAsB,IAAI;QAC3B,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;QACrB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;KAC3B,GAAG,IAAI;IAiBV,OAAO,CAAC,kBAAkB;IAcnB,YAAY,IAAI,YAAY;IAO5B,eAAe,IAAI,IAAI;IAW9B,SAAS,CAAC,cAAc,IAAI,IAAI;IAIhC,SAAS,CAAC,UAAU,IAAI,MAAM,EAAE;IAIhC,SAAS,CAAC,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAO/D,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM;CASvC"}
1
+ {"version":3,"file":"PointTextModel.d.ts","sourceRoot":"","sources":["../../../src/model/renderable/PointTextModel.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,qBAAa,cAAe,SAAQ,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;IAExD,IAAI,EAAE,KAAK,CAAC,SAAS,GAAG,IAAI,CAAQ;IAC3C,SAAS,CAAC,iCAAiC,UAAQ;IACnD,SAAS,CAAC,oBAAoB,UAAS;IACvC,SAAS,CAAC,eAAe,SAAK;IAE9B,IAAW,OAAO,CAAC,KAAK,EAAE,MAAM,EAE/B;IACD,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED,IAAW,QAAQ,IAAI,MAAM,CAE5B;IACD,IAAW,QAAQ,CAAC,KAAK,EAAE,MAAM,EAEhC;IAED,IAAW,UAAU,IAAI,MAAM,CAE9B;IACD,IAAW,UAAU,CAAC,KAAK,EAAE,MAAM,EAElC;IAED,OAAO,KAAK,UAAU,GAKrB;gBAEkB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,OAAO;IAkBtH,OAAO,CAAC,oBAAoB,CAe1B;IAEF,SAAS,CAAC,UAAU;IAIpB,SAAS,CAAC,eAAe;IAKzB,SAAS,CAAC,eAAe,IAAI,KAAK,CAAC,KAAK,GAAG,IAAI;IAWxC,sBAAsB,IAAI;QAC3B,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC;QACrB,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;QACtB,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,KAAK,CAAC,SAAS,CAAC;KAC3B,GAAG,IAAI;IAiBV,OAAO,CAAC,kBAAkB;IAcnB,YAAY,IAAI,YAAY;IAO5B,eAAe,IAAI,IAAI;IAW9B,SAAS,CAAC,cAAc,IAAI,IAAI;IAIhC,SAAS,CAAC,UAAU,IAAI,MAAM,EAAE;IAIhC,SAAS,CAAC,SAAS,IAAI;QAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE;IAO/D,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM;CASvC"}
@@ -25637,7 +25637,7 @@ import * as Y15 from "yjs";
25637
25637
  import * as Y12 from "yjs";
25638
25638
  import EventEmitter from "eventemitter3";
25639
25639
  import { v4 as uuidv4 } from "uuid";
25640
- import { log, removeObserver as removeObserver2 } from "@netless/forge-room";
25640
+ import { log, removeObserver as removeObserver3 } from "@netless/forge-room";
25641
25641
 
25642
25642
  // src/model/renderable/CurveModel.ts
25643
25643
  import * as Y2 from "yjs";
@@ -25963,7 +25963,20 @@ var ElementModel = class _ElementModel {
25963
25963
  } else {
25964
25964
  this.root.set(_ElementModel.KEYS.pointsMatrix, [1, 0, 0, 1, 0, 0]);
25965
25965
  }
25966
+ }
25967
+ bindObserver() {
25968
+ const beforeL = this.root._eH?.l?.length ?? -1;
25969
+ const beforeDL = this.root._dEH?.l?.length ?? -1;
25970
+ removeDeepObserver(this.root, this.handlePropChange);
25971
+ this.subBindObserver();
25972
+ const afterRemoveL = this.root._eH?.l?.length ?? -1;
25973
+ const afterRemoveDL = this.root._dEH?.l?.length ?? -1;
25966
25974
  this.root.observeDeep(this.handlePropChange);
25975
+ const afterAddL = this.root._eH?.l?.length ?? -1;
25976
+ const afterAddDL = this.root._dEH?.l?.length ?? -1;
25977
+ console.log(`[][][] bindObserver uuid=${this.uuid} doc=${!!this.root.doc} _eH: ${beforeL}->${afterRemoveL}->${afterAddL} _dEH: ${beforeDL}->${afterRemoveDL}->${afterAddDL}`);
25978
+ }
25979
+ subBindObserver() {
25967
25980
  }
25968
25981
  handlePointsChangeDirect() {
25969
25982
  this.onVectorUpdate();
@@ -26104,6 +26117,9 @@ var ElementModel = class _ElementModel {
26104
26117
  }
26105
26118
  dispose() {
26106
26119
  this.subDispose();
26120
+ }
26121
+ disposeObserver() {
26122
+ console.log(`[][][] disposeObserver uuid=${this.uuid}`);
26107
26123
  removeDeepObserver(this.root, this.handlePropChange);
26108
26124
  }
26109
26125
  };
@@ -26214,14 +26230,33 @@ var CurveModel = class extends ElementModel {
26214
26230
  }
26215
26231
  });
26216
26232
  }
26233
+ isPressureValue(value) {
26234
+ return typeof value === "number" && Number.isFinite(value) && value >= 0 && value <= 1;
26235
+ }
26236
+ pointStride(points) {
26237
+ if (points.length >= 3 && points.length % 3 === 0) {
26238
+ let hasPressureSlot = false;
26239
+ for (let i = 2; i < points.length; i += 3) {
26240
+ if (!this.isPressureValue(points[i])) {
26241
+ return 2;
26242
+ }
26243
+ hasPressureSlot = true;
26244
+ }
26245
+ if (hasPressureSlot) {
26246
+ return 3;
26247
+ }
26248
+ }
26249
+ return 2;
26250
+ }
26217
26251
  matrixedPoints() {
26218
26252
  const points = this.localPoints.length === 0 ? this.points : this.localPoints;
26219
26253
  const matrix = new this.scope.Matrix(this.pointsMatrix);
26220
26254
  const output = [];
26221
- for (let i = 0, len = points.length; i < len; i += 3) {
26255
+ const stride = this.pointStride(points);
26256
+ for (let i = 0, len = points.length; i + 1 < len; i += stride) {
26222
26257
  const p = new this.scope.Point(points[i], points[i + 1]);
26223
26258
  const tp = p.transform(matrix);
26224
- const pressure = points[i + 2] ?? 0;
26259
+ const pressure = stride === 3 ? points[i + 2] ?? 0 : 0;
26225
26260
  output.push([tp.x, tp.y, pressure]);
26226
26261
  }
26227
26262
  return output;
@@ -26297,11 +26332,13 @@ var CurveModel = class extends ElementModel {
26297
26332
  }
26298
26333
  liveCursorPoint() {
26299
26334
  const yArray = this.root.get(ElementModel.KEYS.points);
26300
- if (yArray.length < 3) {
26335
+ const points = yArray.toArray();
26336
+ const stride = this.pointStride(points);
26337
+ if (points.length < stride) {
26301
26338
  return null;
26302
26339
  }
26303
- const len = yArray.length;
26304
- const point = new this.scope.Point(yArray.get(len - 3), yArray.get(len - 2));
26340
+ const len = points.length;
26341
+ const point = new this.scope.Point(points[len - stride], points[len - stride + 1]);
26305
26342
  return point.transform(new this.scope.Matrix(this.pointsMatrix));
26306
26343
  }
26307
26344
  onStyleKeyUpdate(key) {
@@ -27038,6 +27075,10 @@ var PointTextModel = class extends ElementModel {
27038
27075
  subDispose() {
27039
27076
  removeObserver(this.root, this.handleTextPropChange);
27040
27077
  }
27078
+ subBindObserver() {
27079
+ removeObserver(this.root, this.handleTextPropChange);
27080
+ this.root.observe(this.handleTextPropChange);
27081
+ }
27041
27082
  liveCursorPoint() {
27042
27083
  const points = this.points;
27043
27084
  if (points.length < 1) {
@@ -27580,6 +27621,7 @@ var EraserModel = class extends ElementModel {
27580
27621
  // src/model/renderable/LaserPointerModel.ts
27581
27622
  var import_lodash5 = __toESM(require_lodash(), 1);
27582
27623
  import * as Y10 from "yjs";
27624
+ import { removeObserver as removeObserver2 } from "@netless/forge-room";
27583
27625
  function _defineProperty14(e, r, t) {
27584
27626
  return (r = _toPropertyKey14(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;
27585
27627
  }
@@ -27608,17 +27650,8 @@ var LaserPointerModel = class extends ElementModel {
27608
27650
  _defineProperty14(this, "clearLocalPointsWhenYPointsChange", false);
27609
27651
  _defineProperty14(this, "shouldUseLocalPoints", false);
27610
27652
  _defineProperty14(this, "localPointsPick", 4);
27611
- this.clientId = clientId;
27612
- if (this.root.doc && !this.root.has("type")) {
27613
- this.root.set("type", "laser");
27614
- }
27615
- if (this.root.doc && !this.root.has("points")) {
27616
- this.root.set("points", new Y10.Array());
27617
- }
27618
- if (this.root.doc && !this.root.has("removed")) {
27619
- this.root.set("removed", false);
27620
- }
27621
- this.root.observe((event) => {
27653
+ _defineProperty14(this, "removeElement", void 0);
27654
+ _defineProperty14(this, "handleLaserPropChange", (event) => {
27622
27655
  if (!this.item) {
27623
27656
  return;
27624
27657
  }
@@ -27636,13 +27669,31 @@ var LaserPointerModel = class extends ElementModel {
27636
27669
  this.onVectorUpdate();
27637
27670
  if (evt.count >= 30) {
27638
27671
  if (this.ownerId === this.clientId) {
27639
- removeElement(this.uuid);
27672
+ this.removeElement(this.uuid);
27640
27673
  }
27641
27674
  }
27642
27675
  };
27643
27676
  }
27644
27677
  }
27645
27678
  });
27679
+ this.clientId = clientId;
27680
+ this.removeElement = removeElement;
27681
+ if (this.root.doc && !this.root.has("type")) {
27682
+ this.root.set("type", "laser");
27683
+ }
27684
+ if (this.root.doc && !this.root.has("points")) {
27685
+ this.root.set("points", new Y10.Array());
27686
+ }
27687
+ if (this.root.doc && !this.root.has("removed")) {
27688
+ this.root.set("removed", false);
27689
+ }
27690
+ }
27691
+ subBindObserver() {
27692
+ removeObserver2(this.root, this.handleLaserPropChange);
27693
+ this.root.observe(this.handleLaserPropChange);
27694
+ }
27695
+ subDispose() {
27696
+ removeObserver2(this.root, this.handleLaserPropChange);
27646
27697
  }
27647
27698
  beginRemoveAnimate() {
27648
27699
  this.root.set("removed", true);
@@ -27738,8 +27789,6 @@ var LaserPointerModel = class extends ElementModel {
27738
27789
  onStyleKeyUpdate(_key) {
27739
27790
  return;
27740
27791
  }
27741
- subDispose() {
27742
- }
27743
27792
  liveCursorPoint() {
27744
27793
  const yArray = this.root.get(ElementModel.KEYS.points);
27745
27794
  if (yArray.length < 2) {
@@ -28100,6 +28149,7 @@ var RenderableModel = class extends EventEmitter {
28100
28149
  const existingModel = this.elementModels.get(uuid);
28101
28150
  if (existingModel) {
28102
28151
  existingModel.shadowEmitter = this.shadowEmitter;
28152
+ existingModel.bindObserver();
28103
28153
  return existingModel;
28104
28154
  }
28105
28155
  }
@@ -28130,6 +28180,7 @@ var RenderableModel = class extends EventEmitter {
28130
28180
  }
28131
28181
  if (model) {
28132
28182
  model.shadowEmitter = this.shadowEmitter;
28183
+ model.bindObserver();
28133
28184
  this.elementModels.set(model.uuid, model);
28134
28185
  }
28135
28186
  return model;
@@ -28161,6 +28212,7 @@ var RenderableModel = class extends EventEmitter {
28161
28212
  this.elements.set(uuid, yMap);
28162
28213
  }, elementsUndoOrigin);
28163
28214
  const model = new ImageModel(yMap, this.scope, this.imageSets, this.liveCursor, this.isPerformanceMode);
28215
+ model.bindObserver();
28164
28216
  model.root.set("src", src);
28165
28217
  const initMatrix = new this.scope.Matrix();
28166
28218
  const center = this.scope.project.view.center;
@@ -28193,6 +28245,7 @@ var RenderableModel = class extends EventEmitter {
28193
28245
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28194
28246
  this.elements.set(uuid, yMap);
28195
28247
  }, elementsUndoOrigin);
28248
+ curveModel.bindObserver();
28196
28249
  this.initElement(curveModel);
28197
28250
  return curveModel;
28198
28251
  }
@@ -28219,6 +28272,7 @@ var RenderableModel = class extends EventEmitter {
28219
28272
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28220
28273
  this.elements.set(uuid, yMap);
28221
28274
  }, elementsUndoOrigin);
28275
+ model.bindObserver();
28222
28276
  this.initElement(model);
28223
28277
  return model;
28224
28278
  }
@@ -28242,6 +28296,7 @@ var RenderableModel = class extends EventEmitter {
28242
28296
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28243
28297
  this.elements.set(uuid, yMap);
28244
28298
  }, elementsUndoOrigin);
28299
+ model.bindObserver();
28245
28300
  return model;
28246
28301
  }
28247
28302
  createTriangle(shadow) {
@@ -28266,6 +28321,7 @@ var RenderableModel = class extends EventEmitter {
28266
28321
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28267
28322
  this.elements.set(uuid, yMap);
28268
28323
  }, elementsUndoOrigin);
28324
+ triangleModel.bindObserver();
28269
28325
  this.initElement(triangleModel);
28270
28326
  triangleModel.dashArray = this.toolbarModel.dashArray;
28271
28327
  return triangleModel;
@@ -28295,6 +28351,7 @@ var RenderableModel = class extends EventEmitter {
28295
28351
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28296
28352
  this.elements.set(uuid, yMap);
28297
28353
  }, elementsUndoOrigin);
28354
+ rect.bindObserver();
28298
28355
  this.initElement(rect);
28299
28356
  rect.dashArray = this.toolbarModel.dashArray;
28300
28357
  return rect;
@@ -28321,6 +28378,7 @@ var RenderableModel = class extends EventEmitter {
28321
28378
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28322
28379
  this.elements.set(uuid, yMap);
28323
28380
  }, elementsUndoOrigin);
28381
+ segmentsModel.bindObserver();
28324
28382
  this.initElement(segmentsModel);
28325
28383
  segmentsModel.dashArray = this.toolbarModel.dashArray;
28326
28384
  return segmentsModel;
@@ -28345,6 +28403,7 @@ var RenderableModel = class extends EventEmitter {
28345
28403
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28346
28404
  this.elements.set(uuid, yMap);
28347
28405
  }, elementsUndoOrigin);
28406
+ selectorModel.bindObserver();
28348
28407
  selectorModel.shadow = "layer";
28349
28408
  return selectorModel;
28350
28409
  }
@@ -28370,6 +28429,7 @@ var RenderableModel = class extends EventEmitter {
28370
28429
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28371
28430
  this.elements.set(uuid, yMap);
28372
28431
  }, elementsUndoOrigin);
28432
+ straightLineModel.bindObserver();
28373
28433
  this.initElement(straightLineModel);
28374
28434
  straightLineModel.dashArray = this.toolbarModel.dashArray;
28375
28435
  return straightLineModel;
@@ -28398,6 +28458,7 @@ var RenderableModel = class extends EventEmitter {
28398
28458
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28399
28459
  this.elements.set(uuid, yMap);
28400
28460
  }, elementsUndoOrigin);
28461
+ lineModel.bindObserver();
28401
28462
  this.initElement(lineModel);
28402
28463
  lineModel.dashArray = this.toolbarModel.dashArray;
28403
28464
  return lineModel;
@@ -28424,6 +28485,7 @@ var RenderableModel = class extends EventEmitter {
28424
28485
  yMap.set(ElementModel.KEYS.ownerId, this.userManager.selfId);
28425
28486
  this.elements.set(uuid, yMap);
28426
28487
  }, elementsUndoOrigin);
28488
+ pointTextModel.bindObserver();
28427
28489
  pointTextModel.setPoints([x, y]);
28428
28490
  pointTextModel.fontSize = this.toolbarModel.fontSize;
28429
28491
  pointTextModel.fontFamily = this.toolbarModel.fontFamily;
@@ -28446,12 +28508,13 @@ var RenderableModel = class extends EventEmitter {
28446
28508
  });
28447
28509
  }
28448
28510
  dispose(clearElements) {
28449
- removeObserver2(this.elements, this.onElementsChange);
28511
+ removeObserver3(this.elements, this.onElementsChange);
28450
28512
  if (clearElements) {
28451
28513
  this.elements.clear();
28452
28514
  }
28453
28515
  Array.from(this.elementModels.values()).forEach((model) => {
28454
28516
  model.dispose();
28517
+ model.disposeObserver();
28455
28518
  });
28456
28519
  }
28457
28520
  };
@@ -28912,7 +28975,7 @@ var RectangleTool = class extends WhiteboardTool {
28912
28975
 
28913
28976
  // src/model/ToolbarModel.ts
28914
28977
  import EventEmitter2 from "eventemitter3";
28915
- import { removeObserver as removeObserver3 } from "@netless/forge-room";
28978
+ import { removeObserver as removeObserver4 } from "@netless/forge-room";
28916
28979
  function _defineProperty21(e, r, t) {
28917
28980
  return (r = _toPropertyKey21(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;
28918
28981
  }
@@ -29009,7 +29072,7 @@ var ToolbarModel = class extends EventEmitter2 {
29009
29072
  });
29010
29073
  }
29011
29074
  dispose() {
29012
- removeObserver3(this.root, this.handleRootUpdate);
29075
+ removeObserver4(this.root, this.handleRootUpdate);
29013
29076
  this.removeAllListeners();
29014
29077
  }
29015
29078
  };
@@ -29943,6 +30006,7 @@ var Editor = class extends EventEmitter5 {
29943
30006
  this.shadowContainer.remove();
29944
30007
  this.shadowScope.project.activeLayer.addChild(this.shadowContainer);
29945
30008
  this.targets.forEach((model) => {
30009
+ console.log("[][][] translateShadow model", model.root._dEH);
29946
30010
  model.shadow = this.shadowContainer.data.uuid;
29947
30011
  });
29948
30012
  }
@@ -30169,7 +30233,7 @@ var Gesture = class extends EventEmitter6 {
30169
30233
  };
30170
30234
 
30171
30235
  // src/Camera.ts
30172
- import { removeObserver as removeObserver4 } from "@netless/forge-room";
30236
+ import { removeObserver as removeObserver5 } from "@netless/forge-room";
30173
30237
  function _defineProperty28(e, r, t) {
30174
30238
  return (r = _toPropertyKey28(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;
30175
30239
  }
@@ -30246,14 +30310,14 @@ var Camera = class extends EventEmitter7 {
30246
30310
  }
30247
30311
  const cb = this.observers.get(user.id);
30248
30312
  if (cb) {
30249
- removeObserver4(this.requestUserMap(user.id), cb);
30313
+ removeObserver5(this.requestUserMap(user.id), cb);
30250
30314
  }
30251
30315
  });
30252
30316
  _defineProperty28(this, "handleUserJoin", (user) => {
30253
30317
  if (this.observers.has(user.id)) {
30254
30318
  const cb = this.observers.get(user.id);
30255
30319
  if (cb) {
30256
- removeObserver4(this.requestUserMap(user.id), cb);
30320
+ removeObserver5(this.requestUserMap(user.id), cb);
30257
30321
  this.observers.delete(user.id);
30258
30322
  }
30259
30323
  }
@@ -30365,7 +30429,7 @@ var Camera = class extends EventEmitter7 {
30365
30429
  this.handleViewMatrixUpdate(userId, evt);
30366
30430
  };
30367
30431
  if (this.observers.has(userId)) {
30368
- removeObserver4(this.requestUserMap(userId), observer);
30432
+ removeObserver5(this.requestUserMap(userId), observer);
30369
30433
  }
30370
30434
  this.requestUserMap(userId).observe(observer);
30371
30435
  this.observers.set(userId, observer);
@@ -30562,10 +30626,10 @@ var Camera = class extends EventEmitter7 {
30562
30626
  Array.from(this.observers.keys()).forEach((userId) => {
30563
30627
  const cb = this.observers.get(userId);
30564
30628
  if (cb) {
30565
- removeObserver4(this.requestUserMap(userId), cb);
30629
+ removeObserver5(this.requestUserMap(userId), cb);
30566
30630
  }
30567
30631
  });
30568
- removeObserver4(this.whiteboardAttrsMap, this.handleMainCameraChange);
30632
+ removeObserver5(this.whiteboardAttrsMap, this.handleMainCameraChange);
30569
30633
  this.userManager.off("join", this.handleUserJoin);
30570
30634
  this.userManager.off("leave", this.handleUserLeave);
30571
30635
  this.gesture.removeAllListeners();
@@ -31065,7 +31129,7 @@ var LaserPointerTool = class extends WhiteboardTool {
31065
31129
 
31066
31130
  // src/model/PageModel.ts
31067
31131
  import EventEmitter10 from "eventemitter3";
31068
- import { log as log2, removeObserver as removeObserver5 } from "@netless/forge-room";
31132
+ import { log as log2, removeObserver as removeObserver6 } from "@netless/forge-room";
31069
31133
  function _defineProperty35(e, r, t) {
31070
31134
  return (r = _toPropertyKey35(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;
31071
31135
  }
@@ -31098,7 +31162,7 @@ var PageModel = class extends EventEmitter10 {
31098
31162
  }
31099
31163
  const cb = this.observers.get(user.id);
31100
31164
  if (cb) {
31101
- removeObserver5(this.requestUserMap(user.id), cb);
31165
+ removeObserver6(this.requestUserMap(user.id), cb);
31102
31166
  }
31103
31167
  });
31104
31168
  _defineProperty35(this, "handleUserJoin", (user) => {
@@ -31159,7 +31223,7 @@ var PageModel = class extends EventEmitter10 {
31159
31223
  if (this.observers.has(userId)) {
31160
31224
  const cb = this.observers.get(userId);
31161
31225
  if (cb) {
31162
- removeObserver5(this.requestUserMap(userId), cb);
31226
+ removeObserver6(this.requestUserMap(userId), cb);
31163
31227
  this.observers.delete(userId);
31164
31228
  }
31165
31229
  }
@@ -31248,12 +31312,12 @@ var PageModel = class extends EventEmitter10 {
31248
31312
  dispose() {
31249
31313
  for (const entry of this.observers.entries()) {
31250
31314
  const [userId, observer] = entry;
31251
- removeObserver5(this.requestUserMap(userId), observer);
31315
+ removeObserver6(this.requestUserMap(userId), observer);
31252
31316
  }
31253
31317
  this.userManager.off("join", this.handleUserJoin);
31254
31318
  this.userManager.off("leave", this.handleUserLeave);
31255
- removeObserver5(this.whiteboardAttrsMap, this.handleMainPageChange);
31256
- removeObserver5(this.pageMap, this.handlePageMapChange);
31319
+ removeObserver6(this.whiteboardAttrsMap, this.handleMainPageChange);
31320
+ removeObserver6(this.pageMap, this.handlePageMapChange);
31257
31321
  }
31258
31322
  };
31259
31323
 
@@ -31269,7 +31333,7 @@ async function waitUntil(fn, timeout) {
31269
31333
  // src/IndexedNavigation.ts
31270
31334
  import EventEmitter11 from "eventemitter3";
31271
31335
  import { log as log3 } from "@netless/forge-room";
31272
- import { removeObserver as removeObserver6 } from "@netless/forge-room";
31336
+ import { removeObserver as removeObserver7 } from "@netless/forge-room";
31273
31337
  function _defineProperty36(e, r, t) {
31274
31338
  return (r = _toPropertyKey36(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: true, configurable: true, writable: true }) : e[r] = t, e;
31275
31339
  }
@@ -31612,7 +31676,7 @@ var IndexedNavigation = class extends EventEmitter11 {
31612
31676
  }
31613
31677
  }
31614
31678
  dispose() {
31615
- removeObserver6(this.indexedPageMap, this.handleIndexedPageMapUpdate);
31679
+ removeObserver7(this.indexedPageMap, this.handleIndexedPageMapUpdate);
31616
31680
  this.pageModel.off("switchPage");
31617
31681
  this.pageModel.off("pagesChange");
31618
31682
  }
@@ -31833,7 +31897,7 @@ var SequenceExecutor = class {
31833
31897
  };
31834
31898
 
31835
31899
  // src/WhiteboardApplication.ts
31836
- import { removeObserver as removeObserver7 } from "@netless/forge-room";
31900
+ import { removeObserver as removeObserver8 } from "@netless/forge-room";
31837
31901
 
31838
31902
  // src/LiveCursor.ts
31839
31903
  function _defineProperty42(e, r, t) {
@@ -31888,9 +31952,19 @@ var LiveCursor = class {
31888
31952
  cursor.style.fontSize = "12px";
31889
31953
  cursor.style.padding = "2px 4px";
31890
31954
  cursor.style.borderRadius = "4px";
31891
- cursor.textContent = this.userManager.getUser(userId)?.nickName ?? userId;
31955
+ this.updateCursorLabel(userId, cursor);
31892
31956
  return cursor;
31893
31957
  }
31958
+ updateCursorLabel(userId, cursor) {
31959
+ const target = cursor ?? this.cursors.get(userId);
31960
+ if (!target) {
31961
+ return;
31962
+ }
31963
+ if (target.textContent && target.textContent !== userId) {
31964
+ return;
31965
+ }
31966
+ target.textContent = this.userManager.getUser(userId)?.nickName ?? userId;
31967
+ }
31894
31968
  isOnSamePage(userId) {
31895
31969
  const otherPage = this.requestUserMap(userId).get(WhiteboardKeys.currentPage);
31896
31970
  const selfPage = this.requestUserMap(this.userManager.selfId).get(WhiteboardKeys.currentPage);
@@ -31926,6 +32000,7 @@ var LiveCursor = class {
31926
32000
  }
31927
32001
  const cursor = this.cursors.get(userId);
31928
32002
  if (cursor) {
32003
+ this.updateCursorLabel(userId, cursor);
31929
32004
  const viewPoint = this.paperScope.project.view.projectToView(point);
31930
32005
  cursor.style.left = viewPoint.x + "px";
31931
32006
  cursor.style.top = viewPoint.y + "px";
@@ -33135,7 +33210,7 @@ var WhiteboardApplication = class _WhiteboardApplication extends AbstractApplica
33135
33210
  this.toolbarModel.dispose();
33136
33211
  this.emitter.indexedNavigation.dispose();
33137
33212
  this.permissions.dispose();
33138
- removeObserver7(this.userMap(this.userId), this.handleSyncedWhiteboardStatusChange);
33213
+ removeObserver8(this.userMap(this.userId), this.handleSyncedWhiteboardStatusChange);
33139
33214
  log4(`whiteboard ${this.appId} disposed. instance count: ${_WhiteboardApplication.instanceCount.get(this.appId) ?? 0}`, {}, "info");
33140
33215
  }
33141
33216
  };