@netless/forge-whiteboard 0.1.11 → 0.1.13

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/changelog.md CHANGED
@@ -36,4 +36,8 @@
36
36
 
37
37
  ### 0.1.11
38
38
 
39
- - 支持低版本浏览器 > 0.25%
39
+ - 支持低版本浏览器 > 0.25%
40
+
41
+ ### 0.1.13
42
+
43
+ - whiteboard terminate 时不清理 ydoc 数据
@@ -50,12 +50,12 @@ export declare class WhiteboardApplication extends AbstractApplication<Whiteboar
50
50
  private resizeObserver;
51
51
  private option;
52
52
  private permissions;
53
- private linkTarget;
54
53
  private inputType;
55
54
  private isPenEvent;
56
55
  private hasPenInput;
57
56
  private disableViewModelUpdate;
58
57
  private internalResizeObserver;
58
+ private linkTarget;
59
59
  private get undoManager();
60
60
  constructor();
61
61
  private userMap;
@@ -81,8 +81,7 @@ export declare class WhiteboardApplication extends AbstractApplication<Whiteboar
81
81
  disableViewModel(): void;
82
82
  linkToWhiteboard(targetId: string): void;
83
83
  unlink(): void;
84
- private onLinkTargetToolbarChange;
85
- private onLinkTargetPermissionChange;
84
+ private handleLinkedMapChange;
86
85
  adjustByOutFrame: (frameWidth: number, frameHeight: number) => void;
87
86
  setViewSize(width: number, height: number): void;
88
87
  getViewSize(): [number, number];
@@ -1 +1 @@
1
- {"version":3,"file":"WhiteboardApplication.d.ts","sourceRoot":"","sources":["../src/WhiteboardApplication.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WhiteboardApplication.d.ts","sourceRoot":"","sources":["../src/WhiteboardApplication.ts"],"names":[],"mappings":"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"}
@@ -30700,12 +30700,12 @@ var WhiteboardApplication = class extends AbstractApplication {
30700
30700
  _defineProperty40(this, "resizeObserver", void 0);
30701
30701
  _defineProperty40(this, "option", void 0);
30702
30702
  _defineProperty40(this, "permissions", void 0);
30703
- _defineProperty40(this, "linkTarget", null);
30704
30703
  _defineProperty40(this, "inputType", "any");
30705
30704
  _defineProperty40(this, "isPenEvent", false);
30706
30705
  _defineProperty40(this, "hasPenInput", null);
30707
30706
  _defineProperty40(this, "disableViewModelUpdate", false);
30708
30707
  _defineProperty40(this, "internalResizeObserver", true);
30708
+ _defineProperty40(this, "linkTarget", null);
30709
30709
  _defineProperty40(this, "enableToolEvent", () => {
30710
30710
  return !(this.inputType === "pen" && !this.isPenEvent);
30711
30711
  });
@@ -30887,20 +30887,20 @@ var WhiteboardApplication = class extends AbstractApplication {
30887
30887
  this.emitter.emit("elementDeselected", userId);
30888
30888
  }
30889
30889
  });
30890
- _defineProperty40(this, "onLinkTargetToolbarChange", (style) => {
30891
- this.toolbarModel.currentTool = style.tool;
30892
- this.toolbarModel.strokeColor = style.strokeColor;
30893
- this.toolbarModel.fillColor = style.fillColor;
30894
- this.toolbarModel.fontSize = style.fontSize;
30895
- this.toolbarModel.fontFamily = style.fontFamily;
30896
- this.toolbarModel.strokeWidth = style.strokeWidth;
30897
- this.toolbarModel.dashArray = style.dashArray;
30898
- });
30899
- _defineProperty40(this, "onLinkTargetPermissionChange", (userId, flags) => {
30900
- if (userId == this.userId) {
30901
- flags.forEach((flag) => {
30902
- this.permissions.addPermission(flag, this.userId);
30903
- });
30890
+ _defineProperty40(this, "handleLinkedMapChange", (evt) => {
30891
+ for (const [key, value] of evt.changes.keys.entries()) {
30892
+ if (Object.keys(TOOLBAR_KEYS).indexOf(key) >= 0 && (value.action === "add" || value.action === "update")) {
30893
+ this.toolbarModel.currentTool = evt.target.get(TOOLBAR_KEYS.tool);
30894
+ this.toolbarModel.strokeColor = evt.target.get(TOOLBAR_KEYS.strokeColor);
30895
+ this.toolbarModel.fillColor = evt.target.get(TOOLBAR_KEYS.fillColor);
30896
+ this.toolbarModel.fontSize = evt.target.get(TOOLBAR_KEYS.fontSize);
30897
+ this.toolbarModel.fontFamily = evt.target.get(TOOLBAR_KEYS.fontFamily);
30898
+ this.toolbarModel.strokeWidth = evt.target.get(TOOLBAR_KEYS.strokeWidth);
30899
+ this.toolbarModel.dashArray = evt.target.get(TOOLBAR_KEYS.dashArray);
30900
+ }
30901
+ if (key === "permission" && (value.action === "add" || value.action === "update")) {
30902
+ this.permissions.addPermission(evt.target.get("permission"), this.userId);
30903
+ }
30904
30904
  }
30905
30905
  });
30906
30906
  _defineProperty40(this, "adjustByOutFrame", (frameWidth, frameHeight) => {
@@ -31490,22 +31490,26 @@ var WhiteboardApplication = class extends AbstractApplication {
31490
31490
  this.disableViewModelUpdate = true;
31491
31491
  }
31492
31492
  linkToWhiteboard(targetId) {
31493
- console.log("linkToWhiteboard, linkToWhiteboard, linkToWhiteboard");
31494
31493
  if (this.linkTarget) {
31495
31494
  this.unlink();
31496
31495
  }
31497
- this.linkTarget = this.applicationManager.getInstances(targetId);
31496
+ this.userMap(this.userId);
31497
+ this.linkTarget = this.roomDoc.getMap(`@app/${this.name}/${targetId}/user/${this.userId}`);
31498
31498
  if (this.linkTarget) {
31499
- this.linkTarget.toolbarModel.on("update", this.onLinkTargetToolbarChange);
31500
- this.linkTarget.permissions.on("change", this.onLinkTargetPermissionChange);
31501
- } else {
31502
- throw new Error(`[@netless/forge-whiteboard] link target ${targetId} not found`);
31499
+ this.toolbarModel.currentTool = this.linkTarget.get(TOOLBAR_KEYS.tool);
31500
+ this.toolbarModel.strokeColor = this.linkTarget.get(TOOLBAR_KEYS.strokeColor);
31501
+ this.toolbarModel.fillColor = this.linkTarget.get(TOOLBAR_KEYS.fillColor);
31502
+ this.toolbarModel.fontSize = this.linkTarget.get(TOOLBAR_KEYS.fontSize);
31503
+ this.toolbarModel.fontFamily = this.linkTarget.get(TOOLBAR_KEYS.fontFamily);
31504
+ this.toolbarModel.strokeWidth = this.linkTarget.get(TOOLBAR_KEYS.strokeWidth);
31505
+ this.toolbarModel.dashArray = this.linkTarget.get(TOOLBAR_KEYS.dashArray);
31506
+ this.permissions.addPermission(this.linkTarget.get("permission"), this.userId);
31507
+ this.linkTarget.observe(this.handleLinkedMapChange);
31503
31508
  }
31504
31509
  }
31505
31510
  unlink() {
31506
31511
  if (this.linkTarget) {
31507
- this.linkTarget.toolbarModel.off("update", this.onLinkTargetToolbarChange);
31508
- this.linkTarget.permissions.off("change", this.onLinkTargetPermissionChange);
31512
+ this.linkTarget.unobserve(this.handleLinkedMapChange);
31509
31513
  }
31510
31514
  }
31511
31515
  setViewSize(width, height) {
@@ -31527,9 +31531,6 @@ var WhiteboardApplication = class extends AbstractApplication {
31527
31531
  async dispose() {
31528
31532
  this.selectElementsModel.dispose();
31529
31533
  this.trashedElementsModel.dispose();
31530
- for (const key of this.layers.keys()) {
31531
- this.layers.get(key)?.dispose();
31532
- }
31533
31534
  this.paperScope.view.remove();
31534
31535
  this.shadowScope.view.remove();
31535
31536
  this.rootElement.removeChild(this.canvasElement);