@netless/forge-whiteboard 0.1.14 → 0.1.16

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 (96) hide show
  1. package/changelog.md +11 -1
  2. package/dist/Camera.d.ts +7 -5
  3. package/dist/Camera.d.ts.map +1 -1
  4. package/dist/Gesture.d.ts +1 -1
  5. package/dist/Gesture.d.ts.map +1 -1
  6. package/dist/IndexedNavigation.d.ts +31 -29
  7. package/dist/IndexedNavigation.d.ts.map +1 -1
  8. package/dist/SequenceExecutor.d.ts +7 -0
  9. package/dist/SequenceExecutor.d.ts.map +1 -0
  10. package/dist/WhitePermissions.d.ts +7 -46
  11. package/dist/WhitePermissions.d.ts.map +1 -1
  12. package/dist/Whiteboard.d.ts +120 -108
  13. package/dist/Whiteboard.d.ts.map +1 -1
  14. package/dist/WhiteboardApplication.d.ts +7 -4
  15. package/dist/WhiteboardApplication.d.ts.map +1 -1
  16. package/dist/edit/Editor.d.ts +5 -5
  17. package/dist/edit/Editor.d.ts.map +1 -1
  18. package/dist/edit/EditorConfig.d.ts +1 -1
  19. package/dist/edit/EditorConfig.d.ts.map +1 -1
  20. package/dist/edit/TextEditor.d.ts +2 -2
  21. package/dist/edit/TextEditor.d.ts.map +1 -1
  22. package/dist/index.d.ts +6 -6
  23. package/dist/model/PageModel.d.ts +5 -4
  24. package/dist/model/PageModel.d.ts.map +1 -1
  25. package/dist/model/RenderableModel.d.ts +22 -20
  26. package/dist/model/RenderableModel.d.ts.map +1 -1
  27. package/dist/model/SelectElementsModel.d.ts +4 -4
  28. package/dist/model/SelectElementsModel.d.ts.map +1 -1
  29. package/dist/model/ToolbarModel.d.ts +4 -3
  30. package/dist/model/ToolbarModel.d.ts.map +1 -1
  31. package/dist/model/TrashedElementsModel.d.ts +4 -4
  32. package/dist/model/TrashedElementsModel.d.ts.map +1 -1
  33. package/dist/model/renderable/CurveModel.d.ts +7 -4
  34. package/dist/model/renderable/CurveModel.d.ts.map +1 -1
  35. package/dist/model/renderable/CurveModel_old.d.ts +28 -0
  36. package/dist/model/renderable/CurveModel_old.d.ts.map +1 -0
  37. package/dist/model/renderable/ElementModel.d.ts +5 -3
  38. package/dist/model/renderable/ElementModel.d.ts.map +1 -1
  39. package/dist/model/renderable/EraserModel.d.ts +5 -4
  40. package/dist/model/renderable/EraserModel.d.ts.map +1 -1
  41. package/dist/model/renderable/ImageModel.d.ts +20 -0
  42. package/dist/model/renderable/ImageModel.d.ts.map +1 -0
  43. package/dist/model/renderable/LaserPointerModel.d.ts +5 -4
  44. package/dist/model/renderable/LaserPointerModel.d.ts.map +1 -1
  45. package/dist/model/renderable/LineModel.d.ts +9 -8
  46. package/dist/model/renderable/LineModel.d.ts.map +1 -1
  47. package/dist/model/renderable/PointTextModel.d.ts +4 -3
  48. package/dist/model/renderable/PointTextModel.d.ts.map +1 -1
  49. package/dist/model/renderable/RectangleModel.d.ts +5 -4
  50. package/dist/model/renderable/RectangleModel.d.ts.map +1 -1
  51. package/dist/model/renderable/SegmentsModel.d.ts +6 -5
  52. package/dist/model/renderable/SegmentsModel.d.ts.map +1 -1
  53. package/dist/model/renderable/SelectorModel.d.ts +5 -4
  54. package/dist/model/renderable/SelectorModel.d.ts.map +1 -1
  55. package/dist/model/renderable/StraightLineModel.d.ts +5 -4
  56. package/dist/model/renderable/StraightLineModel.d.ts.map +1 -1
  57. package/dist/model/renderable/TriangleModel.d.ts +5 -4
  58. package/dist/model/renderable/TriangleModel.d.ts.map +1 -1
  59. package/dist/tool/CurveTool.d.ts +4 -4
  60. package/dist/tool/CurveTool.d.ts.map +1 -1
  61. package/dist/tool/EllipseTool.d.ts +4 -4
  62. package/dist/tool/EllipseTool.d.ts.map +1 -1
  63. package/dist/tool/EraserTool.d.ts +6 -6
  64. package/dist/tool/EraserTool.d.ts.map +1 -1
  65. package/dist/tool/GrabTool.d.ts +4 -4
  66. package/dist/tool/GrabTool.d.ts.map +1 -1
  67. package/dist/tool/LaserPointerTool.d.ts +5 -5
  68. package/dist/tool/LaserPointerTool.d.ts.map +1 -1
  69. package/dist/tool/LineTool.d.ts +4 -4
  70. package/dist/tool/LineTool.d.ts.map +1 -1
  71. package/dist/tool/PointerTool.d.ts +10 -0
  72. package/dist/tool/PointerTool.d.ts.map +1 -0
  73. package/dist/tool/RectangleTool.d.ts +4 -4
  74. package/dist/tool/RectangleTool.d.ts.map +1 -1
  75. package/dist/tool/SelectorTool.d.ts +5 -5
  76. package/dist/tool/SelectorTool.d.ts.map +1 -1
  77. package/dist/tool/StraightLineTool.d.ts +4 -4
  78. package/dist/tool/StraightLineTool.d.ts.map +1 -1
  79. package/dist/tool/TextTool.d.ts +6 -6
  80. package/dist/tool/TextTool.d.ts.map +1 -1
  81. package/dist/tool/TriangleTool.d.ts +4 -4
  82. package/dist/tool/TriangleTool.d.ts.map +1 -1
  83. package/dist/tool/WhiteboardTool.d.ts +2 -2
  84. package/dist/tool/WhiteboardTool.d.ts.map +1 -1
  85. package/dist/utils/FPS.d.ts +15 -0
  86. package/dist/utils/FPS.d.ts.map +1 -0
  87. package/dist/utils/Recognizer.d.ts +1 -1
  88. package/dist/utils/Recognizer.d.ts.map +1 -1
  89. package/dist/utils/ShadowEmitter.d.ts +2 -2
  90. package/dist/utils/ShadowEmitter.d.ts.map +1 -1
  91. package/dist/utils/async.d.ts.map +1 -1
  92. package/dist/whiteboard.esm.js +599 -337
  93. package/dist/whiteboard.esm.js.map +4 -4
  94. package/dist/whiteboard.js +600 -338
  95. package/dist/whiteboard.js.map +4 -4
  96. package/package.json +4 -3
package/changelog.md CHANGED
@@ -44,4 +44,14 @@
44
44
 
45
45
  ### 0.1.14
46
46
 
47
- - 添加 linkToWhiteboard api, 多窗口场景下使用
47
+ - 添加 linkToWhiteboard api, 多窗口场景下使用
48
+
49
+ ### 0.1.15
50
+
51
+ - 修复 ydoc 切页没有按顺序执行的问题
52
+ - 修复 indexed navigator 没有初始化页面的问题
53
+
54
+ ### 0.1.16
55
+
56
+ - 新增 whiteboard.removeElement api
57
+ - 新增 whiteboard.insertImage api
package/dist/Camera.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import EventEmitter from "eventemitter3";
2
- import * as Y from "yjs";
3
- import { UserManager } from "@netless/forge-room";
4
- import { WhiteboardPermissionFlag } from "./WhitePermissions";
1
+ import EventEmitter from 'eventemitter3';
2
+ import * as Y from 'yjs';
3
+ import { UserManager } from '@netless/forge-room';
4
+ import { WhiteboardPermissionFlag } from './WhitePermissions';
5
5
  interface CameraEvents {
6
6
  zoom: (matrix: paper.Matrix) => void;
7
7
  userPageChange: (userId: string, pageId: string) => void;
@@ -35,6 +35,7 @@ export declare class Camera extends EventEmitter<CameraEvents> {
35
35
  private highlightBound;
36
36
  updateInitSize(size: paper.Size): void;
37
37
  updateInherentScale(scale: number): void;
38
+ getInherentScale(): number;
38
39
  private getActiveMatrix;
39
40
  triggerZoom(): void;
40
41
  resetViewMatrixToFlow(userId: string): void;
@@ -47,9 +48,10 @@ export declare class Camera extends EventEmitter<CameraEvents> {
47
48
  private validNextMatrix;
48
49
  private updateViewMatrix;
49
50
  private handleWheel;
50
- scale(value: number, origin?: "center" | "top-left"): void;
51
+ scale(value: number, origin?: 'center' | 'top-left'): void;
51
52
  translate(offsetX: number, offsetY: number): void;
52
53
  reset(): void;
54
+ dispose(): void;
53
55
  }
54
56
  export {};
55
57
  //# sourceMappingURL=Camera.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Camera.d.ts","sourceRoot":"","sources":["../src/Camera.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,EAAgB,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAE/D,OAAO,EAAC,wBAAwB,EAAC,MAAM,oBAAoB,CAAC;AAI5D,UAAU,YAAY;IAClB,IAAI,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC;IACrC,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzD,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE;AAED,qBAAa,MAAO,SAAQ,YAAY,CAAC,YAAY,CAAC;IAElD,SAAgB,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC;IAExC,OAAO,CAAC,GAAG,CAAiB;IAC5B,OAAO,CAAC,eAAe,CAAa;IACpC,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,kBAAkB,CAAa;IACvC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,aAAa,CAA8C;IACnE,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAa;IAC7B,OAAO,CAAC,KAAK,CAAiB;IAC9B,OAAO,CAAC,cAAc,CAAM;IAErB,aAAa,EAAE,OAAO,CAAQ;IAC9B,aAAa,EAAE,OAAO,CAAQ;IAC9B,aAAa,EAAE,MAAM,CAAa;IAClC,uBAAuB,EAAE,OAAO,CAAQ;IAE/C,OAAO,KAAK,cAAc,GAIzB;IAED,OAAO,KAAK,cAAc,GAGzB;gBAGG,QAAQ,EAAE,KAAK,CAAC,IAAI,EACpB,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,cAAc,EACnB,WAAW,EAAE,WAAW,EACxB,KAAK,EAAE,KAAK,CAAC,UAAU,EACvB,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAC9B,aAAa,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO,EAC1D,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAE9C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAEjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAyDnC,OAAO,CAAC,cAAc;IAUf,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI;IAI/B,mBAAmB,CAAC,KAAK,EAAE,MAAM;IAIxC,OAAO,CAAC,eAAe;IAahB,WAAW;IAOX,qBAAqB,CAAC,MAAM,EAAE,MAAM;IAMpC,qBAAqB;IAM5B,OAAO,CAAC,sBAAsB,CAgB5B;IAEF,OAAO,CAAC,eAAe,CAKrB;IAEF,OAAO,CAAC,cAAc,CAMpB;IAEF,OAAO,CAAC,WAAW;IAUnB,OAAO,CAAC,sBAAsB,CA2B5B;IAEF,OAAO,CAAC,eAAe;IAwDvB,OAAO,CAAC,gBAAgB;IA6BxB,OAAO,CAAC,WAAW,CA4CjB;IAEK,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,GAAE,QAAQ,GAAG,UAAqB,GAAG,IAAI;IAUpE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAMjD,KAAK,IAAI,IAAI;CAIvB"}
1
+ {"version":3,"file":"Camera.d.ts","sourceRoot":"","sources":["../src/Camera.ts"],"names":[],"mappings":"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"}
package/dist/Gesture.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import EventEmitter from "eventemitter3";
1
+ import EventEmitter from 'eventemitter3';
2
2
  interface GestureEvent {
3
3
  offset: (x: number, y: number) => void;
4
4
  scale: (scale: number, center: paper.Point) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"Gesture.d.ts","sourceRoot":"","sources":["../src/Gesture.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,UAAU,YAAY;IAClB,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC;CACvD;AAED,qBAAa,OAAQ,SAAQ,YAAY,CAAC,YAAY,CAAC;IAEnD,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,SAAS,CAA4B;gBAE1B,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU;IAShE,OAAO,CAAC,YAAY,CAYlB;IAEF,OAAO,CAAC,WAAW,CAgCjB;IAEF,OAAO,CAAC,UAAU,CAGjB;CACJ"}
1
+ {"version":3,"file":"Gesture.d.ts","sourceRoot":"","sources":["../src/Gesture.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,UAAU,YAAY;IAClB,MAAM,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,KAAK,IAAI,CAAC;CACvD;AAED,qBAAa,OAAQ,SAAQ,YAAY,CAAC,YAAY,CAAC;IAErD,OAAO,CAAC,OAAO,CAAc;IAC7B,OAAO,CAAC,KAAK,CAAmB;IAChC,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,SAAS,CAA4B;gBAE1B,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,CAAC,UAAU;IAShE,OAAO,CAAC,YAAY,CAYlB;IAEF,OAAO,CAAC,WAAW,CAgCjB;IAEF,OAAO,CAAC,UAAU,CAGhB;CACH"}
@@ -1,7 +1,7 @@
1
- import * as Y from "yjs";
2
- import EventEmitter from "eventemitter3";
3
- import { PageModel } from "./model/PageModel";
4
- import { WhiteboardPermissionFlag } from "./WhitePermissions";
1
+ import * as Y from 'yjs';
2
+ import EventEmitter from 'eventemitter3';
3
+ import { PageModel } from './model/PageModel';
4
+ import { WhiteboardPermissionFlag } from './WhitePermissions';
5
5
  export interface IndexedNavigationEvents {
6
6
  /**
7
7
  * 当前页索引发生变化时触发
@@ -32,47 +32,49 @@ export declare class IndexedNavigation extends EventEmitter<IndexedNavigationEve
32
32
  initIndexed(): Promise<boolean>;
33
33
  private handleIndexedPageMapUpdate;
34
34
  /**
35
- * 获取总页数
36
- * @returns {number}
37
- */
35
+ * 获取总页数
36
+ * @returns {number}
37
+ */
38
38
  get pageCount(): number;
39
39
  /**
40
- * 获取当前页索引
41
- */
40
+ * 获取当前页索引
41
+ */
42
42
  get currentPageIndex(): number;
43
+ get currentPageId(): string;
43
44
  private getPageIndex;
44
45
  /**
45
- * 获取指定索引对应的 pageId
46
- * @param {number} index
47
- */
46
+ * 获取指定索引对应的 pageId
47
+ * @param {number} index
48
+ */
48
49
  getPageId(index: number): string | null;
49
50
  private modifyDetect;
50
51
  /**
51
- * 在尾部插入新页面
52
- * @param {boolean=} goto 是否跳转到新页面, 默认 true
53
- * @return 总页数
54
- */
52
+ * 在尾部插入新页面
53
+ * @param {boolean=} goto 是否跳转到新页面, 默认 true
54
+ * @return 总页数
55
+ */
55
56
  pushPage(goto?: boolean): number;
56
57
  /**
57
- * 在 after 之后插入新页面
58
- * @param {number} after 在此页之后插入
59
- * @param {boolean=} goto 是否跳转到新页面, 默认 true
60
- * @return 总页数
61
- */
62
- insertPage(after: number, goto?: Boolean): number;
58
+ * 在 after 之后插入新页面
59
+ * @param {number} after 在此页之后插入
60
+ * @param {boolean=} goto 是否跳转到新页面, 默认 true
61
+ * @return 总页数
62
+ */
63
+ insertPage(after: number, goto?: boolean): number;
63
64
  /**
64
- * 跳转至上一页, 并返回跳转后的页面索引.
65
- */
65
+ * 跳转至上一页, 并返回跳转后的页面索引.
66
+ */
66
67
  prevPage(): number;
67
68
  /**
68
- * 跳转至下一页, 并返回跳转后的页面索引.
69
- */
69
+ * 跳转至下一页, 并返回跳转后的页面索引.
70
+ */
70
71
  nextPage(): number;
71
72
  /**
72
- * 删除指定页面
73
- * @param {number} index
74
- */
73
+ * 删除指定页面
74
+ * @param {number} index
75
+ */
75
76
  removePage(index: number): number;
76
77
  gotoPage(index: number): void;
78
+ dispose(): void;
77
79
  }
78
80
  //# sourceMappingURL=IndexedNavigation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"IndexedNavigation.d.ts","sourceRoot":"","sources":["../src/IndexedNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,YAAY,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAC,wBAAwB,EAAC,MAAM,oBAAoB,CAAC;AAE5D,MAAM,WAAW,uBAAuB;IACpC;;;OAGG;IACH,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C;;;OAGG;IACH,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAED,qBAAa,iBAAkB,SAAQ,YAAY,CAAC,uBAAuB,CAAC;IAExE,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,cAAc,CAAa;IAEnC,OAAO,CAAC,IAAI,CAAwD;IACpE,OAAO,CAAC,aAAa,CAA8C;IAEnE,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,KAAK,IAAI,GAWf;IAED,OAAO,KAAK,UAAU,GAQrB;gBAGG,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EACnB,cAAc,EAAE,CAAC,CAAC,GAAG,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EACrD,aAAa,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO;IAgC9D,OAAO,CAAC,SAAS;IAcV,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAatC,OAAO,CAAC,0BAA0B,CAYhC;IAEF;;;OAGG;IACH,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED;;OAEG;IACH,IAAW,gBAAgB,IAAI,MAAM,CAGpC;IAED,OAAO,CAAC,YAAY;IAiBpB;;;OAGG;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAmB9C,OAAO,CAAC,YAAY;IAapB;;;;OAIG;IACI,QAAQ,CAAC,IAAI,GAAE,OAAc,GAAG,MAAM;IAgC7C;;;;;OAKG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,OAAc,GAAG,MAAM;IAuD9D;;OAEG;IACI,QAAQ,IAAI,MAAM;IAYzB;;OAEG;IACI,QAAQ,IAAI,MAAM;IAazB;;;OAGG;IACI,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IA2CjC,QAAQ,CAAC,KAAK,EAAE,MAAM;CAMhC"}
1
+ {"version":3,"file":"IndexedNavigation.d.ts","sourceRoot":"","sources":["../src/IndexedNavigation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AACzB,OAAO,YAAY,MAAM,eAAe,CAAC;AAGzC,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,oBAAoB,CAAC;AAG9D,MAAM,WAAW,uBAAuB;IACpC;;;OAGG;IACH,gBAAgB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C;;;OAGG;IACH,eAAe,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAChD;AAED,qBAAa,iBAAkB,SAAQ,YAAY,CAAC,uBAAuB,CAAC;IAE1E,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,cAAc,CAAa;IAEnC,OAAO,CAAC,IAAI,CAAwD;IACpE,OAAO,CAAC,aAAa,CAA8C;IAEnE,OAAO,KAAK,MAAM,GAEjB;IAED,OAAO,KAAK,IAAI,GAWf;IAED,OAAO,KAAK,UAAU,GAQrB;gBAGC,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EACnB,cAAc,EAAE,CAAC,CAAC,GAAG,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,EACrD,aAAa,EAAE,CAAC,IAAI,EAAE,wBAAwB,KAAK,OAAO;IAgC5D,OAAO,CAAC,SAAS;IAcV,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAatC,OAAO,CAAC,0BAA0B,CAYhC;IAEF;;;SAGK;IACL,IAAW,SAAS,IAAI,MAAM,CAE7B;IAED;;SAEK;IACL,IAAW,gBAAgB,IAAI,MAAM,CAGpC;IAED,IAAW,aAAa,IAAI,MAAM,CAEjC;IAED,OAAO,CAAC,YAAY;IAiBpB;;;SAGK;IACE,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAmB9C,OAAO,CAAC,YAAY;IAapB;;;;SAIK;IACE,QAAQ,CAAC,IAAI,GAAE,OAAc,GAAG,MAAM;IAgC7C;;;;;SAKK;IACE,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,GAAE,OAAc,GAAG,MAAM;IAuD9D;;SAEK;IACE,QAAQ,IAAI,MAAM;IAYzB;;SAEK;IACE,QAAQ,IAAI,MAAM;IAazB;;;SAGK;IACE,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAyCjC,QAAQ,CAAC,KAAK,EAAE,MAAM;IAOtB,OAAO;CAKf"}
@@ -0,0 +1,7 @@
1
+ export declare class SequenceExecutor {
2
+ private tasks;
3
+ private isRunning;
4
+ addTask(task: () => Promise<void>): void;
5
+ private execute;
6
+ }
7
+ //# sourceMappingURL=SequenceExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SequenceExecutor.d.ts","sourceRoot":"","sources":["../src/SequenceExecutor.ts"],"names":[],"mappings":"AAAA,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,KAAK,CAA+B;IAC5C,OAAO,CAAC,SAAS,CAAkB;IAE5B,OAAO,CAAC,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;YAOjC,OAAO;CAoBtB"}
@@ -1,6 +1,4 @@
1
- import { type UserManager } from "@netless/forge-room";
2
- import EventEmitter from "eventemitter3";
3
- import * as Y from "yjs";
1
+ import { AbstractApplicationPermissions, ApplicationPermissionEvents } from '@netless/forge-room';
4
2
  export declare enum WhiteboardPermissionFlag {
5
3
  /**
6
4
  * 没有任何权限, 只能同步的看他人绘制
@@ -39,7 +37,7 @@ export declare enum WhiteboardPermissionFlag {
39
37
  */
40
38
  all = 127
41
39
  }
42
- export interface WhitePermissionEvents {
40
+ export interface WhitePermissionEvents extends ApplicationPermissionEvents {
43
41
  /**
44
42
  * 当用户权限变更时触发
45
43
  * @param { string } userId 对应 userId
@@ -48,49 +46,12 @@ export interface WhitePermissionEvents {
48
46
  */
49
47
  change: (userId: string, flags: WhiteboardPermissionFlag[], value: number) => void;
50
48
  }
51
- export declare class WhiteboardPermissions extends EventEmitter<WhitePermissionEvents> {
52
- private requestUserMap;
53
- private userManager;
54
- private observers;
55
- constructor(userManager: UserManager, requestUserMap: (userId: string) => Y.Map<any>);
56
- private handleUserLeave;
57
- private handleUserJoin;
58
- private addObserve;
59
- private createModel;
60
- private handleUserPermissionChange;
49
+ export declare class WhiteboardPermissions extends AbstractApplicationPermissions<WhiteboardPermissionFlag, WhitePermissionEvents> {
61
50
  /**
62
- * 解析权限列表组合
63
- * @param {number} value - 权限数字值
64
- * @return {WhiteboardPermissionFlag[]} - 权限列表
65
- */
51
+ * 解析权限列表组合
52
+ * @param {number} value - 权限数字值
53
+ * @return {WhiteboardPermissionFlag[]} - 权限列表
54
+ */
66
55
  resolveFlags(value: number): WhiteboardPermissionFlag[];
67
- /**
68
- * 获取权限列表组合对应的数值
69
- * @param { string } userId 不传表示获取自己
70
- */
71
- getPermissionValue(userId?: string): number;
72
- /**
73
- * 获取权限列表
74
- * @param {string=} userId 可选, 不传表示获取自己
75
- */
76
- getPermissionFlags(userId?: string): WhiteboardPermissionFlag[];
77
- /**
78
- * 返回对应 userId 是否有相应权限
79
- * @param {string=} userId 可选, 不传表示返回自己是否有相应权限
80
- * @param {WhiteboardPermissionFlag} flag
81
- */
82
- hasPermission(flag: WhiteboardPermissionFlag, userId?: string): boolean;
83
- /**
84
- * 添加权限
85
- * @param {WhiteboardPermissionFlag} flag 权限标记
86
- * @param {string=} userId 可选, 为 userId 添加权限, 不传表示为自己添加权限
87
- */
88
- addPermission(flag: WhiteboardPermissionFlag, userId?: string): void;
89
- /**
90
- * 移除权限
91
- * @param {WhiteboardPermissionFlag} flag 权限标记
92
- * @param {string=} userId 可选, 为 userId 移除权限, 不传表示为自己移除权限
93
- */
94
- removePermission(flag: WhiteboardPermissionFlag, userId?: string): void;
95
56
  }
96
57
  //# sourceMappingURL=WhitePermissions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WhitePermissions.d.ts","sourceRoot":"","sources":["../src/WhitePermissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,KAAK,CAAC,MAAM,KAAK,CAAC;AAEzB,oBAAY,wBAAwB;IAChC;;OAEG;IACH,IAAI,IAAqB;IACzB;;OAEG;IACH,IAAI,IAAqB;IACzB;;OAEG;IACH,QAAQ,IAAqB;IAC7B;;OAEG;IACH,UAAU,IAAqB;IAC/B;;OAEG;IACH,UAAU,IAAqB;IAC/B;;OAEG;IACH,YAAY,KAAqB;IACjC;;OAEG;IACH,QAAQ,KAAqB;IAC7B;;OAEG;IACH,aAAa,KAAqB;IAClC;;OAEG;IACH,GAAG,MAMyC;CAC/C;AAED,MAAM,WAAW,qBAAqB;IAClC;;;;;OAKG;IACH,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACtF;AAED,qBAAa,qBAAsB,SAAQ,YAAY,CAAC,qBAAqB,CAAC;IAE1E,OAAO,CAAC,cAAc,CAAiC;IACvD,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,SAAS,CAA+B;gBAG5C,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;IAclD,OAAO,CAAC,eAAe,CAKrB;IAEF,OAAO,CAAC,cAAc,CAEpB;IAEF,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,0BAA0B;IAWlC;;;;OAIG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,wBAAwB,EAAE;IAY9D;;;OAGG;IACI,kBAAkB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM;IAIlD;;;OAGG;IACI,kBAAkB,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,wBAAwB,EAAE;IAKtE;;;;OAIG;IACI,aAAa,CAAC,IAAI,EAAE,wBAAwB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO;IAI9E;;;;OAIG;IACI,aAAa,CAAC,IAAI,EAAE,wBAAwB,EAAE,MAAM,CAAC,EAAE,MAAM;IAMpE;;;;OAIG;IACI,gBAAgB,CAAC,IAAI,EAAE,wBAAwB,EAAE,MAAM,CAAC,EAAE,MAAM;CAK1E"}
1
+ {"version":3,"file":"WhitePermissions.d.ts","sourceRoot":"","sources":["../src/WhitePermissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClG,oBAAY,wBAAwB;IAChC;;OAEG;IACH,IAAI,IAAqB;IACzB;;OAEG;IACH,IAAI,IAAqB;IACzB;;OAEG;IACH,QAAQ,IAAqB;IAC7B;;OAEG;IACH,UAAU,IAAqB;IAC/B;;OAEG;IACH,UAAU,IAAqB;IAC/B;;OAEG;IACH,YAAY,KAAqB;IACjC;;OAEG;IACH,QAAQ,KAAqB;IAC7B;;OAEG;IACH,aAAa,KAAqB;IAClC;;OAEG;IACH,GAAG,MAMyC;CAC/C;AAED,MAAM,WAAW,qBAAsB,SAAQ,2BAA2B;IACtE;;;;;OAKG;IACH,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,wBAAwB,EAAE,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACtF;AAED,qBAAa,qBAAsB,SAAQ,8BAA8B,CAAC,wBAAwB,EAAE,qBAAqB,CAAC;IAExH;;;;SAIK;IACE,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,wBAAwB,EAAE;CAY/D"}
@@ -1,9 +1,9 @@
1
- import EventEmitter from "eventemitter3";
2
- import { ApplicationInstanceType } from "@netless/forge-room";
3
- import { WhiteboardToolType } from "./WhiteboardApplication";
4
- import { IndexedNavigation } from "./IndexedNavigation";
5
- import { WhiteboardPermissions } from "./WhitePermissions";
6
- import { ToolbarStyle } from "./model/ToolbarModel";
1
+ import EventEmitter from 'eventemitter3';
2
+ import { ApplicationInstanceType } from '@netless/forge-room';
3
+ import { WhiteboardToolType } from './WhiteboardApplication';
4
+ import { IndexedNavigation } from './IndexedNavigation';
5
+ import { WhiteboardPermissions } from './WhitePermissions';
6
+ import { ToolbarStyle } from './model/ToolbarModel';
7
7
  export interface WhiteboardEvents {
8
8
  /**
9
9
  * 元素被选中后触发
@@ -40,12 +40,12 @@ export interface WhiteboardEvents {
40
40
  * @param {string} userId
41
41
  * @param {"free" | "main" | string} viewMode
42
42
  */
43
- userViewModeChange: (userId: string, viewMode: "free" | "main" | string) => void;
43
+ userViewModeChange: (userId: string, viewMode: 'free' | 'main' | string) => void;
44
44
  /**
45
45
  * 输入类型发生变化, "pen" 仅接受手写笔输入, "any" 接受任意输入
46
46
  * @param {"pen" | "any"} type
47
47
  */
48
- inputTypeChange: (type: "pen" | "any") => void;
48
+ inputTypeChange: (type: 'pen' | 'any') => void;
49
49
  /**
50
50
  * 撤销栈发生变化时触发
51
51
  * @param {number} length - 撤销栈长度
@@ -72,8 +72,8 @@ export type ElementAttributes = {
72
72
  strokeWidth: number;
73
73
  fontSize: number;
74
74
  dashArray: number[];
75
- headArrow: "normal" | "none";
76
- tailArrow: "normal" | "none";
75
+ headArrow: 'normal' | 'none';
76
+ tailArrow: 'normal' | 'none';
77
77
  };
78
78
  export type ElementAttributeKey = keyof ElementAttributes;
79
79
  export declare class Whiteboard extends EventEmitter<WhiteboardEvents> implements ApplicationInstanceType {
@@ -81,169 +81,181 @@ export declare class Whiteboard extends EventEmitter<WhiteboardEvents> implement
81
81
  readonly selfUserId: string;
82
82
  readonly permissions: WhiteboardPermissions;
83
83
  /**
84
- * 当前选中的工具
85
- */
84
+ * 当前选中的工具
85
+ */
86
86
  tool: WhiteboardToolType;
87
87
  /**
88
- * 字体大小
89
- */
88
+ * 字体大小
89
+ */
90
90
  fontSize: number;
91
91
  /**
92
- * 虚线配置
93
- */
92
+ * 虚线配置
93
+ */
94
94
  dashArray: number[];
95
95
  /**
96
- * 字体名称
97
- */
96
+ * 字体名称
97
+ */
98
98
  fontFamily: string;
99
99
  /**
100
- * 描边颜色
101
- */
100
+ * 描边颜色
101
+ */
102
102
  strokeColor: string;
103
103
  /**
104
- * 填充颜色
105
- */
104
+ * 填充颜色
105
+ */
106
106
  fillColor: string;
107
107
  /**
108
- * 描边宽度
109
- */
108
+ * 描边宽度
109
+ */
110
110
  strokeWidth: number;
111
111
  /**
112
- * 是否允许用鼠标/触控板进行缩放和拖动画布
113
- */
112
+ * 是否允许用鼠标/触控板进行缩放和拖动画布
113
+ */
114
114
  enableCameraByMouse: boolean;
115
115
  /**
116
- * 是否允许触摸屏上触摸事件进行缩放和拖动画布
117
- */
116
+ * 是否允许触摸屏上触摸事件进行缩放和拖动画布
117
+ */
118
118
  enableCameraByTouch: boolean;
119
119
  /**
120
- * 相机超出边界时, 警示阴影的颜色, 默认 "#F44336"
121
- */
120
+ * 相机超出边界时, 警示阴影的颜色, 默认 "#F44336"
121
+ */
122
122
  cameraBoundaryColor: string;
123
123
  /**
124
- * 是否允许相机超出边界时, 警示高亮阴影, 默认 true
125
- */
124
+ * 是否允许相机超出边界时, 警示高亮阴影, 默认 true
125
+ */
126
126
  enableCameraBoundaryHighlight: boolean;
127
- getElementAttribute: <K extends ElementAttributeKey>(sceneId: string, elementId: string, attribute: K) => ElementAttributes[K];
128
- setElementAttribute: <K extends keyof ElementAttributes>(sceneId: string, elementId: string, attribute: K, value: ElementAttributes[K]) => any;
127
+ getElementAttribute: <K extends ElementAttributeKey>(pageId: string, elementId: string, attribute: K) => ElementAttributes[K];
128
+ setElementAttribute: <K extends keyof ElementAttributes>(pageId: string, elementId: string, attribute: K, value: ElementAttributes[K]) => any;
129
+ /**
130
+ * 删除白板元素
131
+ * @param {string} pageId - 元素所属页面 id
132
+ * @param {string} elementId - 元素 id
133
+ */
134
+ removeElement: (pageId: string, elementId: string) => void;
129
135
  getCurrentTool: () => WhiteboardToolType;
130
136
  setCurrentTool: (tool: WhiteboardToolType) => void;
131
137
  /**
132
- * 设置画布区域背景色
133
- * @param {string} color - css 颜色值
134
- */
138
+ * 设置画布区域背景色
139
+ * @param {string} color - css 颜色值
140
+ */
135
141
  setCanvasBackgroundColor: (color: string) => void;
136
142
  /**
137
- * 设置主题色, 主题色影响选中框和昵称的背景色
138
- * @param {string} color - css 颜色值
139
- */
143
+ * 设置主题色, 主题色影响选中框和昵称的背景色
144
+ * @param {string} color - css 颜色值
145
+ */
140
146
  setThemeColor: (color: string) => void;
141
147
  /**
142
- * 切换到指定页面, 调用端需要有页面切换权限
143
- * @param {string} id - 指定要切换到的页面 id
144
- */
148
+ * 切换到指定页面, 调用端需要有页面切换权限
149
+ * @param {string} id - 指定要切换到的页面 id
150
+ */
145
151
  gotoPage: (id: string) => void;
146
152
  /**
147
- * 添加页面, 如果页面已经存在则不做任何修改
148
- * @param {string} id - 指定要添加到的页面 id
149
- */
153
+ * 添加页面, 如果页面已经存在则不做任何修改
154
+ * @param {string} id - 指定要添加到的页面 id
155
+ */
150
156
  addPage: (id: string) => void;
151
157
  deletePage: (id: string) => void;
152
158
  pageList: () => string[];
153
159
  /**
154
- * 获取当前页面 id
155
- * @param {string=} userId - 指定要获取对应用户的当前页面 id, 不传 userId 参数则获取自己的当前页面 id
156
- */
160
+ * 获取当前页面 id
161
+ * @param {string=} userId - 指定要获取对应用户的当前页面 id, 不传 userId 参数则获取自己的当前页面 id
162
+ */
157
163
  currentPageId: (userId?: string) => string;
158
164
  /**
159
- * 复制页面
160
- * @param {string} sourceId - 指定要复制的页面, string 类型指定 id
161
- * @param {string} targetId - 指定要复制到的页面, string 类型指定 id
162
- */
165
+ * 复制页面
166
+ * @param {string} sourceId - 指定要复制的页面, string 类型指定 id
167
+ * @param {string} targetId - 指定要复制到的页面, string 类型指定 id
168
+ */
163
169
  clonePage: (sourceId: string, targetId: string) => void;
164
170
  /**
165
- * 清空当前页面
166
- */
171
+ * 清空当前页面
172
+ */
167
173
  clearPage: () => void;
168
174
  /**
169
- * 平移画布
170
- * @param {number} offsetX - x 轴偏移量
171
- * @param {number} offsetY - y 轴偏移量
172
- */
175
+ * 平移画布
176
+ * @param {number} offsetX - x 轴偏移量
177
+ * @param {number} offsetY - y 轴偏移量
178
+ */
173
179
  translateCamera: (offsetX: number, offsetY: number) => void;
174
180
  /**
175
- * 以画布中心为固定点缩放画布
176
- * @param {number} scale - 缩放比例
177
- * @param {"center" | "top-left"} origin - 缩放原点, "center" 为画布中心, "top-left" 为画布左上角
178
- */
179
- scaleCamera: (scale: number, origin?: "center" | "top-left") => void;
181
+ * 以画布中心为固定点缩放画布
182
+ * @param {number} scale - 缩放比例
183
+ * @param {"center" | "top-left"} origin - 缩放原点, "center" 为画布中心, "top-left" 为画布左上角
184
+ */
185
+ scaleCamera: (scale: number, origin?: 'center' | 'top-left') => void;
180
186
  /**
181
- * 重置画布, 将画布缩放比例重置为 1, 平移量重置为 [0, 0]
182
- */
187
+ * 重置画布, 将画布缩放比例重置为 1, 平移量重置为 [0, 0]
188
+ */
183
189
  resetCamera: () => void;
184
190
  /**
185
- * 为 userId 指定的用户设置页面, 调用需要有 `WhiteboardPermissionFlag.setOthersView` 权限,
186
- * userId 指定的用户的视角模式应为 `free`, 否则调用无效
187
- */
191
+ * 为 userId 指定的用户设置页面, 调用需要有 `WhiteboardPermissionFlag.setOthersView` 权限,
192
+ * userId 指定的用户的视角模式应为 `free`, 否则调用无效
193
+ */
188
194
  setFreeModelUserPage: (id: string, userId: string) => void;
189
195
  indexedNavigation: IndexedNavigation;
190
196
  /**
191
- * 设置视角模式为自由模式, 可以修改自己或者他人视角, 修改他人视角需要 `WhiteboardPermissionFlag.setOthersView` 权限
192
- * @param {string=} userId 可选, 指定要修改视角的 userId, 默认修改自己的视角
193
- */
197
+ * 设置视角模式为自由模式, 可以修改自己或者他人视角, 修改他人视角需要 `WhiteboardPermissionFlag.setOthersView` 权限
198
+ * @param {string=} userId 可选, 指定要修改视角的 userId, 默认修改自己的视角
199
+ */
194
200
  setViewModeToFree: (userId?: string) => void;
195
201
  /**
196
- * 设置视角模式为跟随其他用户, 可以修改自己或者他人视角, 修改他人视角需要 `WhiteboardPermissionFlag.setOthersView` 权限
197
- * @param {string} flowId 指定要跟随的用户 id
198
- * @param {string=} userId 可选, 指定要修改视角的 userId, 默认修改自己的视角
199
- */
202
+ * 设置视角模式为跟随其他用户, 可以修改自己或者他人视角, 修改他人视角需要 `WhiteboardPermissionFlag.setOthersView` 权限
203
+ * @param {string} flowId 指定要跟随的用户 id
204
+ * @param {string=} userId 可选, 指定要修改视角的 userId, 默认修改自己的视角
205
+ */
200
206
  setViewModeToFlow: (flowId: string, userId?: string) => void;
201
207
  /**
202
- * 设置视角模式为跟随白板主视角, 可以修改自己或者他人视角, 修改他人视角需要 `WhiteboardPermissionFlag.setOthersView` 权限
203
- * @param {string=} userId 可选, 指定要修改视角的 userId, 默认修改自己的视角
204
- */
208
+ * 设置视角模式为跟随白板主视角, 可以修改自己或者他人视角, 修改他人视角需要 `WhiteboardPermissionFlag.setOthersView` 权限
209
+ * @param {string=} userId 可选, 指定要修改视角的 userId, 默认修改自己的视角
210
+ */
205
211
  setViewModeToMain: (userId?: string | undefined) => void;
206
212
  /**
207
- * 获取视角模式
208
- * @param {string=} userId 可选, 默认获取自己的视角模式
209
- * @return {'free' | 'main' | string} `free` 表示自由视角, `main` 表示主视角, 其他 string 类型代表跟随视角, string 值为跟随的 userId
210
- */
211
- getViewModel: (userId?: string) => "free" | "main" | string;
213
+ * 获取视角模式
214
+ * @param {string=} userId 可选, 默认获取自己的视角模式
215
+ * @return {'free' | 'main' | string} `free` 表示自由视角, `main` 表示主视角, 其他 string 类型代表跟随视角, string 值为跟随的 userId
216
+ */
217
+ getViewModel: (userId?: string) => 'free' | 'main' | string;
212
218
  /**
213
- * 撤销
214
- */
219
+ * 撤销
220
+ */
215
221
  undo: () => void;
216
222
  /**
217
- * 重做
218
- */
223
+ * 重做
224
+ */
219
225
  redo: () => void;
220
226
  /**
221
- * 光栅化指定页面的可视区域
222
- * @param {number} scale 缩放比例
223
- * @param {string=} page string 指示页码 id; number 指示 IndexedNavigation 页面索引; undefined 指示光栅化当前页
224
- * @return {Promise<string>} 异步返回光栅化结果, 图片 png 对应的 base64 url. 如果页面不存在返回 null
225
- */
227
+ * 光栅化指定页面的可视区域
228
+ * @param {number} scale 缩放比例
229
+ * @param {string=} page string 指示页码 id; number 指示 IndexedNavigation 页面索引; undefined 指示光栅化当前页
230
+ * @return {Promise<string>} 异步返回光栅化结果, 图片 png 对应的 base64 url. 如果页面不存在返回 null
231
+ */
226
232
  rasterizeViewport: (scale: number, page?: string | number | undefined) => Promise<string | null>;
227
233
  /**
228
- * 光栅化指定页面包含所有元素的包围盒
229
- * @param {number} outputMaxWidth 输出图片最大宽度, 在保证高宽比的情况下限值输出图片的宽度小于等于此值
230
- * @param {number} outputMaxHeight 输出图片最大高度, 在保证高宽比的情况下限值输出图片的高度小于等于此值
231
- * @param {string=} page string 指示页码 id; number 指示 IndexedNavigation 页面索引; undefined 指示光栅化当前页
232
- * @return {Promise<string>} 异步返回光栅化结果, 图片 png 对应的 base64 url. 如果页面不存在返回 null
233
- */
234
+ * 光栅化指定页面包含所有元素的包围盒
235
+ * @param {number} outputMaxWidth 输出图片最大宽度, 在保证高宽比的情况下限值输出图片的宽度小于等于此值
236
+ * @param {number} outputMaxHeight 输出图片最大高度, 在保证高宽比的情况下限值输出图片的高度小于等于此值
237
+ * @param {string=} page string 指示页码 id; number 指示 IndexedNavigation 页面索引; undefined 指示光栅化当前页
238
+ * @return {Promise<string>} 异步返回光栅化结果, 图片 png 对应的 base64 url. 如果页面不存在返回 null
239
+ */
234
240
  rasterizeElementsBounds: (outputMaxWidth: number, outputMaxHeight: number, page?: string | number | undefined) => Promise<string | null>;
235
241
  /**
236
- * 光栅化指定页面最大缩放区域, 如果没有指定 `WhiteboardOption.maxScaleRatio` 或者指定的值为 -1, 则按 `rasterizeViewport` 返回结果.
237
- * @param {number} scale 缩放比例
238
- * @param {string=} page string 指示页码 id; number 指示 IndexedNavigation 页面索引; undefined 指示光栅化当前页
239
- * @return {Promise<string>} 异步返回光栅化结果, 图片 png 对应的 base64 url. 如果页面不存在返回 null
240
- */
242
+ * 光栅化指定页面最大缩放区域, 如果没有指定 `WhiteboardOption.maxScaleRatio` 或者指定的值为 -1, 则按 `rasterizeViewport` 返回结果.
243
+ * @param {number} scale 缩放比例
244
+ * @param {string=} page string 指示页码 id; number 指示 IndexedNavigation 页面索引; undefined 指示光栅化当前页
245
+ * @return {Promise<string>} 异步返回光栅化结果, 图片 png 对应的 base64 url. 如果页面不存在返回 null
246
+ */
241
247
  rasterizeMaxBounds: (scale: number, page?: string | number | undefined) => Promise<string | null>;
242
248
  /**
243
- * 设置输入类型, "pen" 仅接受手写笔输入, "any" 接受任意输入, 当首次侦测到手写笔输入时, 将自动切换为 "pen"
244
- * @param {"pen" | "any"} type 输入类型
245
- */
246
- setInputType: (type: "pen" | "any") => void;
249
+ * 设置输入类型, "pen" 仅接受手写笔输入, "any" 接受任意输入, 当首次侦测到手写笔输入时, 将自动切换为 "pen"
250
+ * @param {"pen" | "any"} type 输入类型
251
+ */
252
+ setInputType: (type: 'pen' | 'any') => void;
253
+ /**
254
+ * 插入图片
255
+ * @param {string} src 图片的 url, 仅支持 https 协议, 同时需要确保不存在跨域问题
256
+ * @param {string=} pageId 可选, 指定要插入到的页面 id, 默认插入到当前页面
257
+ */
258
+ insertImage: (src: string, pageId?: string) => void;
247
259
  constructor(view: HTMLDivElement);
248
260
  }
249
261
  //# sourceMappingURL=Whiteboard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Whiteboard.d.ts","sourceRoot":"","sources":["../src/Whiteboard.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Whiteboard.d.ts","sourceRoot":"","sources":["../src/Whiteboard.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,MAAM,WAAW,gBAAgB;IAC7B;;;;;;;OAOG;IACH,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,EAAE,EAAE,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,CAAC;IAChK;;;OAGG;IACH,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C;;;OAGG;IACH,kBAAkB,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;IAClD;;;OAGG;IACH,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC1C;;;;OAIG;IACH,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC3D;;;;OAIG;IACH,kBAAkB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,KAAK,IAAI,CAAC;IACjF;;;OAGG;IACH,eAAe,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,KAAK,IAAI,CAAC;IAC/C;;;OAGG;IACH,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C;;;OAGG;IACH,eAAe,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C;;OAEG;IACH,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB;;OAEG;IACH,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;CACxD;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,SAAS,EAAE,QAAQ,GAAG,MAAM,CAAC;IAC7B,SAAS,EAAE,QAAQ,GAAG,MAAM,CAAC;CAChC,CAAA;AAED,MAAM,MAAM,mBAAmB,GAAG,MAAM,iBAAiB,CAAC;AAE1D,qBAAa,UAAW,SAAQ,YAAY,CAAC,gBAAgB,CAAE,YAAW,uBAAuB;IAE/F,SAAgB,IAAI,EAAE,cAAc,CAAC;IACrC,SAAgB,UAAU,EAAG,MAAM,CAAC;IAEpC,SAAgB,WAAW,EAAG,qBAAqB,CAAC;IAEpD;;SAEK;IACE,IAAI,EAAG,kBAAkB,CAAC;IACjC;;SAEK;IACE,QAAQ,EAAG,MAAM,CAAC;IACzB;;SAEK;IACE,SAAS,EAAG,MAAM,EAAE,CAAC;IAC5B;;SAEK;IACE,UAAU,EAAG,MAAM,CAAC;IAC3B;;SAEK;IACE,WAAW,EAAG,MAAM,CAAC;IAC5B;;SAEK;IACE,SAAS,EAAG,MAAM,CAAC;IAC1B;;SAEK;IACE,WAAW,EAAG,MAAM,CAAC;IAE5B;;SAEK;IACE,mBAAmB,EAAG,OAAO,CAAC;IAErC;;SAEK;IACE,mBAAmB,EAAG,OAAO,CAAC;IAErC;;SAEK;IACE,mBAAmB,EAAG,MAAM,CAAC;IAEpC;;SAEK;IACE,6BAA6B,EAAG,OAAO,CAAC;IAExC,mBAAmB,EAAG,CAAC,CAAC,SAAS,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,KAAK,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC/H,mBAAmB,EAAG,CAAC,CAAC,SAAS,MAAM,iBAAiB,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,KAAK,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC;IAEtJ;;;;OAIG;IACI,aAAa,EAAG,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAE5D,cAAc,EAAG,MAAM,kBAAkB,CAAC;IAC1C,cAAc,EAAG,CAAC,IAAI,EAAE,kBAAkB,KAAK,IAAI,CAAC;IAE3D;;;SAGK;IACE,wBAAwB,EAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAE1D;;;SAGK;IACE,aAAa,EAAG,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAE/C;;;SAGK;IACE,QAAQ,EAAG,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC;;;SAGK;IACE,OAAO,EAAG,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/B,UAAU,EAAG,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,QAAQ,EAAG,MAAM,MAAM,EAAE,CAAC;IAEjC;;;SAGK;IACE,aAAa,EAAG,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACnD;;;;SAIK;IACE,SAAS,EAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAChE;;SAEK;IACE,SAAS,EAAG,MAAM,IAAI,CAAC;IAE9B;;;;SAIK;IACE,eAAe,EAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAEpE;;;;SAIK;IACE,WAAW,EAAG,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,GAAG,UAAU,KAAK,IAAI,CAAC;IAE7E;;SAEK;IACE,WAAW,EAAG,MAAM,IAAI,CAAC;IAEhC;;;SAGK;IACE,oBAAoB,EAAG,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAE5D,iBAAiB,EAAG,iBAAiB,CAAC;IAC7C;;;SAGK;IACE,iBAAiB,EAAG,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrD;;;;SAIK;IACE,iBAAiB,EAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE;;;SAGK;IACE,iBAAiB,EAAG,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,KAAK,IAAI,CAAC;IAEjE;;;;SAIK;IACE,YAAY,EAAG,CAAC,MAAM,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAEpE;;SAEK;IACE,IAAI,EAAG,MAAM,IAAI,CAAC;IACzB;;SAEK;IACE,IAAI,EAAG,MAAM,IAAI,CAAC;IAEzB;;;;;SAKK;IACE,iBAAiB,EAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEzG;;;;;;SAMK;IACE,uBAAuB,EAAG,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEjJ;;;;;SAKK;IACE,kBAAkB,EAAG,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAE1G;;;SAGK;IACE,YAAY,EAAG,CAAC,IAAI,EAAE,KAAK,GAAG,KAAK,KAAK,IAAI,CAAC;IAEpD;;;;QAII;IACG,WAAW,EAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;gBAEzC,IAAI,EAAE,cAAc;CAIxC"}