@mlightcad/cad-simple-viewer 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +296 -2
  2. package/dist/index.js +1347 -122
  3. package/dist/index.umd.cjs +2 -2
  4. package/lib/app/AcApContext.d.ts +45 -3
  5. package/lib/app/AcApContext.d.ts.map +1 -1
  6. package/lib/app/AcApContext.js +43 -3
  7. package/lib/app/AcApContext.js.map +1 -1
  8. package/lib/app/AcApDocCreator.d.ts +68 -2
  9. package/lib/app/AcApDocCreator.d.ts.map +1 -1
  10. package/lib/app/AcApDocCreator.js +67 -2
  11. package/lib/app/AcApDocCreator.js.map +1 -1
  12. package/lib/app/AcApDocManager.d.ts +227 -12
  13. package/lib/app/AcApDocManager.d.ts.map +1 -1
  14. package/lib/app/AcApDocManager.js +228 -17
  15. package/lib/app/AcApDocManager.js.map +1 -1
  16. package/lib/app/AcApDocument.d.ts +77 -3
  17. package/lib/app/AcApDocument.d.ts.map +1 -1
  18. package/lib/app/AcApDocument.js +75 -3
  19. package/lib/app/AcApDocument.js.map +1 -1
  20. package/lib/app/AcApFontLoader.d.ts +32 -0
  21. package/lib/app/AcApFontLoader.d.ts.map +1 -1
  22. package/lib/app/AcApFontLoader.js +30 -0
  23. package/lib/app/AcApFontLoader.js.map +1 -1
  24. package/lib/app/AcApSettingManager.d.ts +191 -3
  25. package/lib/app/AcApSettingManager.d.ts.map +1 -1
  26. package/lib/app/AcApSettingManager.js +161 -0
  27. package/lib/app/AcApSettingManager.js.map +1 -1
  28. package/lib/command/AcApConvertToSvgCmd.d.ts +26 -0
  29. package/lib/command/AcApConvertToSvgCmd.d.ts.map +1 -1
  30. package/lib/command/AcApConvertToSvgCmd.js +26 -0
  31. package/lib/command/AcApConvertToSvgCmd.js.map +1 -1
  32. package/lib/command/AcApOpenCmd.d.ts +31 -0
  33. package/lib/command/AcApOpenCmd.d.ts.map +1 -1
  34. package/lib/command/AcApOpenCmd.js +31 -0
  35. package/lib/command/AcApOpenCmd.js.map +1 -1
  36. package/lib/command/AcApPanCmd.d.ts +25 -0
  37. package/lib/command/AcApPanCmd.d.ts.map +1 -1
  38. package/lib/command/AcApPanCmd.js +25 -0
  39. package/lib/command/AcApPanCmd.js.map +1 -1
  40. package/lib/command/AcApQNewCmd.d.ts +26 -0
  41. package/lib/command/AcApQNewCmd.d.ts.map +1 -1
  42. package/lib/command/AcApQNewCmd.js +26 -0
  43. package/lib/command/AcApQNewCmd.js.map +1 -1
  44. package/lib/command/AcApSelectCmd.d.ts +26 -0
  45. package/lib/command/AcApSelectCmd.d.ts.map +1 -1
  46. package/lib/command/AcApSelectCmd.js +26 -0
  47. package/lib/command/AcApSelectCmd.js.map +1 -1
  48. package/lib/command/AcApSvgConvertor.d.ts +48 -0
  49. package/lib/command/AcApSvgConvertor.d.ts.map +1 -1
  50. package/lib/command/AcApSvgConvertor.js +48 -0
  51. package/lib/command/AcApSvgConvertor.js.map +1 -1
  52. package/lib/command/AcApZoomCmd.d.ts +29 -0
  53. package/lib/command/AcApZoomCmd.d.ts.map +1 -1
  54. package/lib/command/AcApZoomCmd.js +29 -0
  55. package/lib/command/AcApZoomCmd.js.map +1 -1
  56. package/lib/command/AcApZoomToBoxCmd.d.ts +57 -0
  57. package/lib/command/AcApZoomToBoxCmd.d.ts.map +1 -1
  58. package/lib/command/AcApZoomToBoxCmd.js +57 -0
  59. package/lib/command/AcApZoomToBoxCmd.js.map +1 -1
  60. package/lib/editor/command/AcEdCommand.d.ts +118 -9
  61. package/lib/editor/command/AcEdCommand.d.ts.map +1 -1
  62. package/lib/editor/command/AcEdCommand.js +113 -9
  63. package/lib/editor/command/AcEdCommand.js.map +1 -1
  64. package/lib/editor/command/AcEdCommandStack.d.ts +59 -5
  65. package/lib/editor/command/AcEdCommandStack.d.ts.map +1 -1
  66. package/lib/editor/command/AcEdCommandStack.js +48 -5
  67. package/lib/editor/command/AcEdCommandStack.js.map +1 -1
  68. package/lib/editor/global/eventBus.d.ts +69 -1
  69. package/lib/editor/global/eventBus.d.ts.map +1 -1
  70. package/lib/editor/global/eventBus.js +37 -0
  71. package/lib/editor/global/eventBus.js.map +1 -1
  72. package/lib/editor/input/AcEdBaseInput.d.ts +65 -1
  73. package/lib/editor/input/AcEdBaseInput.d.ts.map +1 -1
  74. package/lib/editor/input/AcEdBaseInput.js +62 -1
  75. package/lib/editor/input/AcEdBaseInput.js.map +1 -1
  76. package/lib/editor/input/AcEdBoxSelector.d.ts +81 -0
  77. package/lib/editor/input/AcEdBoxSelector.d.ts.map +1 -1
  78. package/lib/editor/input/AcEdBoxSelector.js +80 -0
  79. package/lib/editor/input/AcEdBoxSelector.js.map +1 -1
  80. package/lib/editor/input/AcEdCursorManager.d.ts +95 -8
  81. package/lib/editor/input/AcEdCursorManager.d.ts.map +1 -1
  82. package/lib/editor/input/AcEdCursorManager.js +95 -11
  83. package/lib/editor/input/AcEdCursorManager.js.map +1 -1
  84. package/lib/editor/input/AcEdInputPoint.d.ts +38 -1
  85. package/lib/editor/input/AcEdInputPoint.d.ts.map +1 -1
  86. package/lib/editor/input/AcEdInputPoint.js +38 -1
  87. package/lib/editor/input/AcEdInputPoint.js.map +1 -1
  88. package/lib/editor/input/AcEdJig.d.ts +166 -0
  89. package/lib/editor/input/AcEdJig.d.ts.map +1 -1
  90. package/lib/editor/input/AcEdJig.js +164 -0
  91. package/lib/editor/input/AcEdJig.js.map +1 -1
  92. package/lib/editor/input/AcEdJigLoop.d.ts +49 -0
  93. package/lib/editor/input/AcEdJigLoop.d.ts.map +1 -1
  94. package/lib/editor/input/AcEdJigLoop.js +48 -0
  95. package/lib/editor/input/AcEdJigLoop.js.map +1 -1
  96. package/lib/editor/input/AcEdSelectionSet.d.ts +122 -2
  97. package/lib/editor/input/AcEdSelectionSet.d.ts.map +1 -1
  98. package/lib/editor/input/AcEdSelectionSet.js +117 -1
  99. package/lib/editor/input/AcEdSelectionSet.js.map +1 -1
  100. package/lib/editor/input/AcEditor.d.ts +90 -6
  101. package/lib/editor/input/AcEditor.d.ts.map +1 -1
  102. package/lib/editor/input/AcEditor.js +86 -6
  103. package/lib/editor/input/AcEditor.js.map +1 -1
  104. package/lib/editor/view/AcEdBaseView.d.ts +163 -16
  105. package/lib/editor/view/AcEdBaseView.d.ts.map +1 -1
  106. package/lib/editor/view/AcEdBaseView.js +94 -5
  107. package/lib/editor/view/AcEdBaseView.js.map +1 -1
  108. package/lib/util/AcTrGeometryUtil.d.ts +65 -0
  109. package/lib/util/AcTrGeometryUtil.d.ts.map +1 -1
  110. package/lib/util/AcTrGeometryUtil.js +65 -0
  111. package/lib/util/AcTrGeometryUtil.js.map +1 -1
  112. package/lib/view/AcTrLayer.d.ts +40 -5
  113. package/lib/view/AcTrLayer.d.ts.map +1 -1
  114. package/lib/view/AcTrLayer.js +34 -5
  115. package/lib/view/AcTrLayer.js.map +1 -1
  116. package/lib/view/AcTrLayout.d.ts +122 -23
  117. package/lib/view/AcTrLayout.d.ts.map +1 -1
  118. package/lib/view/AcTrLayout.js +103 -23
  119. package/lib/view/AcTrLayout.js.map +1 -1
  120. package/lib/view/AcTrLayoutView.d.ts +74 -16
  121. package/lib/view/AcTrLayoutView.d.ts.map +1 -1
  122. package/lib/view/AcTrLayoutView.js +65 -16
  123. package/lib/view/AcTrLayoutView.js.map +1 -1
  124. package/lib/view/AcTrLayoutViewManager.d.ts +58 -12
  125. package/lib/view/AcTrLayoutViewManager.d.ts.map +1 -1
  126. package/lib/view/AcTrLayoutViewManager.js +56 -12
  127. package/lib/view/AcTrLayoutViewManager.js.map +1 -1
  128. package/lib/view/AcTrScene.d.ts +48 -4
  129. package/lib/view/AcTrScene.d.ts.map +1 -1
  130. package/lib/view/AcTrScene.js +44 -4
  131. package/lib/view/AcTrScene.js.map +1 -1
  132. package/lib/view/AcTrView2d.d.ts +71 -0
  133. package/lib/view/AcTrView2d.d.ts.map +1 -1
  134. package/lib/view/AcTrView2d.js +65 -0
  135. package/lib/view/AcTrView2d.js.map +1 -1
  136. package/package.json +8 -4
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdSelectionSet.js","sourceRoot":"","sources":["../../../src/editor/input/AcEdSelectionSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAUxD;;GAEG;AACH;IAQE,0BAAY,GAAwB;QAAxB,oBAAA,EAAA,QAAwB;QALpB,WAAM,GAAG;YACvB,cAAc,EAAE,IAAI,gBAAgB,EAA0B;YAC9D,gBAAgB,EAAE,IAAI,gBAAgB,EAA0B;SACjE,CAAA;QAGC,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAe,GAAG,CAAC,CAAA;IACxC,CAAC;IAED,sBAAI,iCAAG;aAAP;YACE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;;;OAAA;IAED,sBAAI,mCAAK;aAAT;YACE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;QACvB,CAAC;;;OAAA;IAED,8BAAG,GAAH,UAAI,KAAoC;QAAxC,iBAQC;QAPC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAnB,CAAmB,CAAC,CAAA;YAC1C,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACrD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IAED,iCAAM,GAAN,UAAO,KAAoC;QAA3C,iBAQC;QAPC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAtB,CAAsB,CAAC,CAAA;YAC7C,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACvD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACvB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED,8BAAG,GAAH,UAAI,EAAgB;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC1B,CAAC;IAED,gCAAK,GAAL;QACE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvB,IAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YACjB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAA,EAAE,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IACH,uBAAC;AAAD,CAAC,AAnDD,IAmDC"}
1
+ {"version":3,"file":"AcEdSelectionSet.js","sourceRoot":"","sources":["../../../src/editor/input/AcEdSelectionSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAaxD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH;IAYE;;;;;;;;;;;;;OAaG;IACH,0BAAY,GAAwB;QAAxB,oBAAA,EAAA,QAAwB;QAtBpC,0CAA0C;QAC1B,WAAM,GAAG;YACvB,qDAAqD;YACrD,cAAc,EAAE,IAAI,gBAAgB,EAA0B;YAC9D,yDAAyD;YACzD,gBAAgB,EAAE,IAAI,gBAAgB,EAA0B;SACjE,CAAA;QAiBC,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAe,GAAG,CAAC,CAAA;IACxC,CAAC;IAOD,sBAAI,iCAAG;QALP;;;;WAIG;aACH;YACE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9B,CAAC;;;OAAA;IAOD,sBAAI,mCAAK;QALT;;;;WAIG;aACH;YACE,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAA;QACvB,CAAC;;;OAAA;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,8BAAG,GAAH,UAAI,KAAoC;QAAxC,iBAQC;QAPC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAnB,CAAmB,CAAC,CAAA;YAC1C,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACrD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACpB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACvD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,iCAAM,GAAN,UAAO,KAAoC;QAA3C,iBAQC;QAPC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACzB,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI,IAAI,OAAA,KAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAtB,CAAsB,CAAC,CAAA;YAC7C,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACvD,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;YACvB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,8BAAG,GAAH,UAAI,EAAgB;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC1B,CAAC;IAED;;;;;;;;;OASG;IACH,gCAAK,GAAL;QACE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACvB,IAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YACjC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAA;YACjB,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAA,EAAE,CAAC,CAAA;QAChD,CAAC;IACH,CAAC;IACH,uBAAC;AAAD,CAAC,AAxID,IAwIC"}
@@ -1,26 +1,110 @@
1
1
  import { AcEdBaseView } from '../view/AcEdBaseView';
2
2
  import { AcEdCorsorType } from './AcEdCursorManager';
3
3
  /**
4
- * This class is one advanced wrapper for all kinds of inputs such as inputting string, number, angle,
5
- * distance, point, selection and so on. The mouse events and keyborad events are hidden for API users.
6
- * It means API users should never listen mouse events and keyborad events. They should always use methods
7
- * provided by this classes to get user inputs.
4
+ * Advanced input handler for CAD operations providing high-level user interaction methods.
5
+ *
6
+ * This class serves as a wrapper for all types of user input including:
7
+ * - Point input (mouse clicks, coordinates)
8
+ * - Entity selection (single or multiple entities)
9
+ * - String, number, angle, and distance input
10
+ * - Cursor management and visual feedback
11
+ *
12
+ * The editor abstracts away low-level mouse and keyboard events, providing a clean API
13
+ * for command implementations. Instead of listening to raw DOM events, commands should
14
+ * use the methods provided by this class.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * // Get user input for a point
19
+ * const point = await editor.getPoint();
20
+ * console.log('User clicked at:', point);
21
+ *
22
+ * // Get entity selection
23
+ * const selection = await editor.getSelection();
24
+ * console.log('Selected entities:', selection.ids);
25
+ *
26
+ * // Change cursor appearance
27
+ * editor.setCursor(AcEdCorsorType.Crosshair);
28
+ * ```
8
29
  */
9
30
  export declare class AcEditor {
31
+ /** Previously set cursor type for restoration */
10
32
  private _previousCursor?;
33
+ /** Currently active cursor type */
11
34
  private _currentCursor?;
35
+ /** Manager for cursor appearance and behavior */
12
36
  private _cursorManager;
37
+ /** The view this editor is associated with */
13
38
  protected _view: AcEdBaseView;
39
+ /**
40
+ * Creates a new editor instance for the specified view.
41
+ *
42
+ * @param view - The view that this editor will handle input for
43
+ */
14
44
  constructor(view: AcEdBaseView);
45
+ /**
46
+ * Gets the currently active cursor type.
47
+ *
48
+ * @returns The current cursor type, or undefined if none is set
49
+ */
15
50
  get currentCursor(): AcEdCorsorType | undefined;
51
+ /**
52
+ * Restores the previously set cursor.
53
+ *
54
+ * This is useful for temporarily changing the cursor and then reverting
55
+ * to the previous state.
56
+ */
16
57
  restoreCursor(): void;
58
+ /**
59
+ * Sets the cursor appearance for the view.
60
+ *
61
+ * The previous cursor type is stored for potential restoration.
62
+ *
63
+ * @param cursorType - The cursor type to set
64
+ *
65
+ * @example
66
+ * ```typescript
67
+ * editor.setCursor(AcEdCorsorType.Crosshair); // For precise point input
68
+ * editor.setCursor(AcEdCorsorType.Grab); // For pan operations
69
+ * ```
70
+ */
17
71
  setCursor(cursorType: AcEdCorsorType): void;
18
72
  /**
19
- * Get user input for a point.
73
+ * Prompts the user to input a point by clicking on the view.
74
+ *
75
+ * This method returns a promise that resolves when the user clicks
76
+ * on the view, providing the world coordinates of the click point.
77
+ *
78
+ * @returns Promise that resolves to the input point coordinates
79
+ *
80
+ * @example
81
+ * ```typescript
82
+ * const startPoint = await editor.getPoint();
83
+ * const endPoint = await editor.getPoint();
84
+ * // Now you can create a line from startPoint to endPoint
85
+ * ```
20
86
  */
21
87
  getPoint(): Promise<import("@mlightcad/geometry-engine").AcGePoint2d>;
22
88
  /**
23
- * Get the selection set obtained.
89
+ * Prompts the user to select entities using box selection.
90
+ *
91
+ * This method allows the user to drag a selection box to select
92
+ * multiple entities at once. The selection behavior follows CAD
93
+ * conventions (left-to-right for crossing, right-to-left for window).
94
+ *
95
+ * @returns Promise that resolves to the selection set containing selected entity IDs
96
+ *
97
+ * @example
98
+ * ```typescript
99
+ * const selection = await editor.getSelection();
100
+ * if (selection.count > 0) {
101
+ * console.log(`Selected ${selection.count} entities`);
102
+ * // Process the selected entities
103
+ * for (const id of selection.ids) {
104
+ * // Do something with each selected entity
105
+ * }
106
+ * }
107
+ * ```
24
108
  */
25
109
  getSelection(): Promise<import("@mlightcad/geometry-engine").AcGeBox2d>;
26
110
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AcEditor.d.ts","sourceRoot":"","sources":["../../../src/editor/input/AcEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,EAAE,cAAc,EAAqB,MAAM,qBAAqB,CAAA;AAGvE;;;;;GAKG;AACH,qBAAa,QAAQ;IACnB,OAAO,CAAC,eAAe,CAAC,CAAgB;IACxC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,OAAO,CAAC,cAAc,CAAmB;IACzC,SAAS,CAAC,KAAK,EAAE,YAAY,CAAA;gBAEjB,IAAI,EAAE,YAAY;IAK9B,IAAI,aAAa,+BAEhB;IAED,aAAa;IAMb,SAAS,CAAC,UAAU,EAAE,cAAc;IAMpC;;OAEG;IACG,QAAQ;IAKd;;OAEG;IACG,YAAY;CAInB"}
1
+ {"version":3,"file":"AcEditor.d.ts","sourceRoot":"","sources":["../../../src/editor/input/AcEditor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAA;AAEnD,OAAO,EAAE,cAAc,EAAqB,MAAM,qBAAqB,CAAA;AAGvE;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,qBAAa,QAAQ;IACnB,iDAAiD;IACjD,OAAO,CAAC,eAAe,CAAC,CAAgB;IACxC,mCAAmC;IACnC,OAAO,CAAC,cAAc,CAAC,CAAgB;IACvC,iDAAiD;IACjD,OAAO,CAAC,cAAc,CAAmB;IACzC,8CAA8C;IAC9C,SAAS,CAAC,KAAK,EAAE,YAAY,CAAA;IAE7B;;;;OAIG;gBACS,IAAI,EAAE,YAAY;IAK9B;;;;OAIG;IACH,IAAI,aAAa,+BAEhB;IAED;;;;;OAKG;IACH,aAAa;IAMb;;;;;;;;;;;;OAYG;IACH,SAAS,CAAC,UAAU,EAAE,cAAc;IAMpC;;;;;;;;;;;;;;OAcG;IACG,QAAQ;IAKd;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,YAAY;CAInB"}
@@ -38,35 +38,97 @@ import { AcEdBoxSelector } from './AcEdBoxSelector';
38
38
  import { AcEdCursorManager } from './AcEdCursorManager';
39
39
  import { AcEdInputPoint } from './AcEdInputPoint';
40
40
  /**
41
- * This class is one advanced wrapper for all kinds of inputs such as inputting string, number, angle,
42
- * distance, point, selection and so on. The mouse events and keyborad events are hidden for API users.
43
- * It means API users should never listen mouse events and keyborad events. They should always use methods
44
- * provided by this classes to get user inputs.
41
+ * Advanced input handler for CAD operations providing high-level user interaction methods.
42
+ *
43
+ * This class serves as a wrapper for all types of user input including:
44
+ * - Point input (mouse clicks, coordinates)
45
+ * - Entity selection (single or multiple entities)
46
+ * - String, number, angle, and distance input
47
+ * - Cursor management and visual feedback
48
+ *
49
+ * The editor abstracts away low-level mouse and keyboard events, providing a clean API
50
+ * for command implementations. Instead of listening to raw DOM events, commands should
51
+ * use the methods provided by this class.
52
+ *
53
+ * @example
54
+ * ```typescript
55
+ * // Get user input for a point
56
+ * const point = await editor.getPoint();
57
+ * console.log('User clicked at:', point);
58
+ *
59
+ * // Get entity selection
60
+ * const selection = await editor.getSelection();
61
+ * console.log('Selected entities:', selection.ids);
62
+ *
63
+ * // Change cursor appearance
64
+ * editor.setCursor(AcEdCorsorType.Crosshair);
65
+ * ```
45
66
  */
46
67
  var AcEditor = /** @class */ (function () {
68
+ /**
69
+ * Creates a new editor instance for the specified view.
70
+ *
71
+ * @param view - The view that this editor will handle input for
72
+ */
47
73
  function AcEditor(view) {
48
74
  this._view = view;
49
75
  this._cursorManager = new AcEdCursorManager();
50
76
  }
51
77
  Object.defineProperty(AcEditor.prototype, "currentCursor", {
78
+ /**
79
+ * Gets the currently active cursor type.
80
+ *
81
+ * @returns The current cursor type, or undefined if none is set
82
+ */
52
83
  get: function () {
53
84
  return this._currentCursor;
54
85
  },
55
86
  enumerable: false,
56
87
  configurable: true
57
88
  });
89
+ /**
90
+ * Restores the previously set cursor.
91
+ *
92
+ * This is useful for temporarily changing the cursor and then reverting
93
+ * to the previous state.
94
+ */
58
95
  AcEditor.prototype.restoreCursor = function () {
59
96
  if (this._previousCursor != null) {
60
97
  this.setCursor(this._previousCursor);
61
98
  }
62
99
  };
100
+ /**
101
+ * Sets the cursor appearance for the view.
102
+ *
103
+ * The previous cursor type is stored for potential restoration.
104
+ *
105
+ * @param cursorType - The cursor type to set
106
+ *
107
+ * @example
108
+ * ```typescript
109
+ * editor.setCursor(AcEdCorsorType.Crosshair); // For precise point input
110
+ * editor.setCursor(AcEdCorsorType.Grab); // For pan operations
111
+ * ```
112
+ */
63
113
  AcEditor.prototype.setCursor = function (cursorType) {
64
114
  this._cursorManager.setCursor(cursorType, this._view.canvas);
65
115
  this._previousCursor = this._currentCursor;
66
116
  this._currentCursor = cursorType;
67
117
  };
68
118
  /**
69
- * Get user input for a point.
119
+ * Prompts the user to input a point by clicking on the view.
120
+ *
121
+ * This method returns a promise that resolves when the user clicks
122
+ * on the view, providing the world coordinates of the click point.
123
+ *
124
+ * @returns Promise that resolves to the input point coordinates
125
+ *
126
+ * @example
127
+ * ```typescript
128
+ * const startPoint = await editor.getPoint();
129
+ * const endPoint = await editor.getPoint();
130
+ * // Now you can create a line from startPoint to endPoint
131
+ * ```
70
132
  */
71
133
  AcEditor.prototype.getPoint = function () {
72
134
  return __awaiter(this, void 0, void 0, function () {
@@ -82,7 +144,25 @@ var AcEditor = /** @class */ (function () {
82
144
  });
83
145
  };
84
146
  /**
85
- * Get the selection set obtained.
147
+ * Prompts the user to select entities using box selection.
148
+ *
149
+ * This method allows the user to drag a selection box to select
150
+ * multiple entities at once. The selection behavior follows CAD
151
+ * conventions (left-to-right for crossing, right-to-left for window).
152
+ *
153
+ * @returns Promise that resolves to the selection set containing selected entity IDs
154
+ *
155
+ * @example
156
+ * ```typescript
157
+ * const selection = await editor.getSelection();
158
+ * if (selection.count > 0) {
159
+ * console.log(`Selected ${selection.count} entities`);
160
+ * // Process the selected entities
161
+ * for (const id of selection.ids) {
162
+ * // Do something with each selected entity
163
+ * }
164
+ * }
165
+ * ```
86
166
  */
87
167
  AcEditor.prototype.getSelection = function () {
88
168
  return __awaiter(this, void 0, void 0, function () {
@@ -1 +1 @@
1
- {"version":3,"file":"AcEditor.js","sourceRoot":"","sources":["../../../src/editor/input/AcEditor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAkB,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;;;;GAKG;AACH;IAME,kBAAY,IAAkB;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,IAAI,CAAC,cAAc,GAAG,IAAI,iBAAiB,EAAE,CAAA;IAC/C,CAAC;IAED,sBAAI,mCAAa;aAAjB;YACE,OAAO,IAAI,CAAC,cAAc,CAAA;QAC5B,CAAC;;;OAAA;IAED,gCAAa,GAAb;QACE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED,4BAAS,GAAT,UAAU,UAA0B;QAClC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC5D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAA;QAC1C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAA;IAClC,CAAC;IAED;;OAEG;IACG,2BAAQ,GAAd;;;;;;wBACQ,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wBACxC,qBAAM,QAAQ,CAAC,KAAK,EAAE,EAAA;4BAA7B,sBAAO,SAAsB,EAAA;;;;KAC9B;IAED;;OAEG;IACG,+BAAY,GAAlB;;;;;;wBACQ,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wBACzC,qBAAM,QAAQ,CAAC,KAAK,EAAE,EAAA;4BAA7B,sBAAO,SAAsB,EAAA;;;;KAC9B;IACH,eAAC;AAAD,CAAC,AA1CD,IA0CC"}
1
+ {"version":3,"file":"AcEditor.js","sourceRoot":"","sources":["../../../src/editor/input/AcEditor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAkB,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH;IAUE;;;;OAIG;IACH,kBAAY,IAAkB;QAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;QACjB,IAAI,CAAC,cAAc,GAAG,IAAI,iBAAiB,EAAE,CAAA;IAC/C,CAAC;IAOD,sBAAI,mCAAa;QALjB;;;;WAIG;aACH;YACE,OAAO,IAAI,CAAC,cAAc,CAAA;QAC5B,CAAC;;;OAAA;IAED;;;;;OAKG;IACH,gCAAa,GAAb;QACE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAA;QACtC,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,4BAAS,GAAT,UAAU,UAA0B;QAClC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;QAC5D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,cAAc,CAAA;QAC1C,IAAI,CAAC,cAAc,GAAG,UAAU,CAAA;IAClC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACG,2BAAQ,GAAd;;;;;;wBACQ,QAAQ,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wBACxC,qBAAM,QAAQ,CAAC,KAAK,EAAE,EAAA;4BAA7B,sBAAO,SAAsB,EAAA;;;;KAC9B;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACG,+BAAY,GAAlB;;;;;;wBACQ,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;wBACzC,qBAAM,QAAQ,CAAC,KAAK,EAAE,EAAA;4BAA7B,sBAAO,SAAsB,EAAA;;;;KAC9B;IACH,eAAC;AAAD,CAAC,AAzGD,IAyGC"}
@@ -55,15 +55,38 @@ export interface AcEdViewHoverEventArgs {
55
55
  id: AcDbObjectId;
56
56
  }
57
57
  /**
58
- * View mode
58
+ * Enumeration of view interaction modes.
59
+ *
60
+ * The view mode determines how the view responds to user mouse interactions:
61
+ * - In SELECTION mode, clicks select entities
62
+ * - In PAN mode, clicks and drags pan the view
63
+ *
64
+ * @example
65
+ * ```typescript
66
+ * // Set to selection mode for entity picking
67
+ * view.mode = AcEdViewMode.SELECTION;
68
+ *
69
+ * // Set to pan mode for view navigation
70
+ * view.mode = AcEdViewMode.PAN;
71
+ * ```
59
72
  */
60
73
  export declare enum AcEdViewMode {
61
74
  /**
62
- * Click to select
75
+ * Selection mode - mouse clicks select entities.
76
+ *
77
+ * In this mode:
78
+ * - Single clicks select individual entities
79
+ * - Drag operations can create selection boxes
80
+ * - Selected entities are highlighted with grip points
63
81
  */
64
82
  SELECTION = 0,
65
83
  /**
66
- * Click to move
84
+ * Pan mode - mouse interactions pan the view.
85
+ *
86
+ * In this mode:
87
+ * - Click and drag operations move the view
88
+ * - The cursor typically changes to indicate pan mode
89
+ * - Entity selection is disabled
67
90
  */
68
91
  PAN = 1
69
92
  }
@@ -81,62 +104,186 @@ export type AcEdCalculateSizeCallback = () => {
81
104
  width: number;
82
105
  height: number;
83
106
  };
107
+ /**
108
+ * Abstract base class for all CAD view implementations.
109
+ *
110
+ * This class provides the foundation for rendering and interacting with CAD drawings.
111
+ * It manages:
112
+ * - Canvas and viewport dimensions
113
+ * - Mouse event handling and coordinate conversion
114
+ * - Entity selection and highlighting
115
+ * - View modes (selection, pan, etc.)
116
+ * - Spatial queries for entity picking
117
+ * - Hover/unhover detection with timing
118
+ *
119
+ * Concrete implementations must provide specific rendering logic and coordinate
120
+ * transformations appropriate for their rendering technology (e.g., Three.js, SVG).
121
+ *
122
+ * ## Key Responsibilities
123
+ * - **Input Management**: Handles mouse events and user interactions
124
+ * - **Selection**: Manages selected entities and visual feedback
125
+ * - **Coordinate Systems**: Converts between screen and world coordinates
126
+ * - **Spatial Queries**: Finds entities at specific locations
127
+ * - **View State**: Tracks current position, zoom, and view mode
128
+ *
129
+ * @example
130
+ * ```typescript
131
+ * class MyView extends AcEdBaseView {
132
+ * // Implement required abstract methods
133
+ * get missedData() { return { fonts: {}, images: new Map() }; }
134
+ * get mode() { return this._mode; }
135
+ * set mode(value) { this._mode = value; }
136
+ * // ... other abstract methods
137
+ * }
138
+ *
139
+ * const view = new MyView(canvasElement);
140
+ * view.events.mouseMove.addEventListener(args => {
141
+ * console.log('Mouse at world coords:', args.x, args.y);
142
+ * });
143
+ * ```
144
+ */
84
145
  export declare abstract class AcEdBaseView {
146
+ /** Current viewport width in pixels */
85
147
  private _width;
148
+ /** Current viewport height in pixels */
86
149
  private _height;
150
+ /** Optional callback to calculate canvas size on resize */
87
151
  private _calculateSizeCallback?;
152
+ /** Bounding box of all entities in the view */
88
153
  private _bbox;
154
+ /** Current mouse position in world coordinates */
89
155
  private _curPos;
156
+ /** Current mouse position in screen coordinates */
90
157
  private _curScreenPos;
158
+ /** Set of currently selected entities */
91
159
  private _selectionSet;
160
+ /** Input manager for handling user interactions */
92
161
  private _editor;
162
+ /** Size of selection box in pixels for entity picking */
93
163
  private _selectionBoxSize;
164
+ /** Timer for hover detection delay */
94
165
  private _hoverTimer;
166
+ /** Timer for hover pause detection */
95
167
  private _pauseTimer;
168
+ /** ID of currently hovered entity */
96
169
  private _hoveredObjectId;
170
+ /** The HTML canvas element for rendering */
97
171
  protected _canvas: HTMLCanvasElement;
172
+ /** Events fired by the view for various interactions */
98
173
  readonly events: {
174
+ /** Fired when mouse moves over the view */
99
175
  mouseMove: AcCmEventManager<AcEdMouseEventArgs>;
176
+ /** Fired when the view is resized */
100
177
  viewResize: AcCmEventManager<AcEdViewResizedEventArgs>;
178
+ /** Fired when mouse hovers over an entity */
101
179
  hover: AcCmEventManager<AcEdViewHoverEventArgs>;
180
+ /** Fired when mouse stops hovering over an entity */
102
181
  unhover: AcCmEventManager<AcEdViewHoverEventArgs>;
103
182
  };
183
+ /**
184
+ * Creates a new base view instance.
185
+ *
186
+ * Sets up the canvas, initializes internal state, and registers event listeners
187
+ * for mouse interactions and window resize events.
188
+ *
189
+ * @param canvas - The HTML canvas element to render into
190
+ */
104
191
  constructor(canvas: HTMLCanvasElement);
105
192
  /**
106
- * The input manager
193
+ * Gets the input manager for handling user interactions.
194
+ *
195
+ * The editor provides high-level methods for getting user input like
196
+ * point selection, entity selection, and cursor management.
197
+ *
198
+ * @returns The editor instance
107
199
  */
108
200
  get editor(): AcEditor;
109
201
  /**
110
- * The size of selection box in pixel unit
202
+ * Gets the size of the selection box used for entity picking.
203
+ *
204
+ * This determines how close the mouse needs to be to an entity
205
+ * to select it, measured in screen pixels.
206
+ *
207
+ * @returns Selection box size in pixels
111
208
  */
112
209
  get selectionBoxSize(): number;
210
+ /**
211
+ * Sets the size of the selection box used for entity picking.
212
+ *
213
+ * @param value - Selection box size in pixels
214
+ */
113
215
  set selectionBoxSize(value: number);
114
216
  /**
115
- * The missed data such as fonts, images, and xrefs.
217
+ * Gets information about missing data during rendering.
218
+ *
219
+ * This includes fonts that couldn't be loaded and images that are
220
+ * missing or inaccessible. Implementations should track and report
221
+ * this information to help users understand rendering issues.
222
+ *
223
+ * @returns Object containing missing fonts and images
116
224
  */
117
225
  abstract get missedData(): AcEdMissedData;
118
226
  /**
119
- * The view mode of the current view
227
+ * Gets the current view mode.
228
+ *
229
+ * The view mode determines how the view responds to user interactions:
230
+ * - SELECTION: Click to select entities
231
+ * - PAN: Click and drag to pan the view
232
+ *
233
+ * @returns The current view mode
120
234
  */
121
235
  abstract get mode(): AcEdViewMode;
236
+ /**
237
+ * Sets the current view mode.
238
+ *
239
+ * @param value - The view mode to set
240
+ */
122
241
  abstract set mode(value: AcEdViewMode);
123
242
  /**
124
- * The center point of the current view
243
+ * Gets the center point of the current view in world coordinates.
244
+ *
245
+ * @returns The view center point
125
246
  */
126
247
  abstract get center(): AcGePoint2d;
248
+ /**
249
+ * Sets the center point of the current view in world coordinates.
250
+ *
251
+ * @param value - The new center point
252
+ */
127
253
  abstract set center(value: AcGePoint2d);
128
254
  /**
129
- * Convert point cooridinate from the client window coordinate system to the world coordinate system.
130
- * The origin of the client window coordinate system is the left-top corner of the client window.
131
- * @param point Input point to convert
132
- * @returns Return point coordinate in the world coordinate system
255
+ * Converts a point from client window coordinates to world coordinates.
256
+ *
257
+ * The client window coordinate system has its origin at the top-left corner
258
+ * of the canvas, with Y increasing downward. World coordinates use the
259
+ * CAD coordinate system with Y typically increasing upward.
260
+ *
261
+ * @param point - Point in client window coordinates
262
+ * @returns Point in world coordinates
263
+ *
264
+ * @example
265
+ * ```typescript
266
+ * const screenPoint = { x: 100, y: 200 }; // 100px right, 200px down
267
+ * const worldPoint = view.cwcs2Wcs(screenPoint);
268
+ * console.log('World coordinates:', worldPoint.x, worldPoint.y);
269
+ * ```
133
270
  */
134
271
  abstract cwcs2Wcs(point: AcGePoint2dLike): AcGePoint2d;
135
272
  /**
136
- * Convert point cooridinate from the world coordinate system to the client window coordinate system.
137
- * The origin of the client window coordinate system is the left-top corner of the client window.
138
- * @param point Input point to convert
139
- * @returns Return point coordinate in the client window coordinate system
273
+ * Converts a point from world coordinates to client window coordinates.
274
+ *
275
+ * This is the inverse of `cwcs2Wcs()`, converting from the CAD world
276
+ * coordinate system to screen pixel coordinates.
277
+ *
278
+ * @param point - Point in world coordinates
279
+ * @returns Point in client window coordinates
280
+ *
281
+ * @example
282
+ * ```typescript
283
+ * const worldPoint = new AcGePoint2d(10, 20); // CAD coordinates
284
+ * const screenPoint = view.wcs2Cwcs(worldPoint);
285
+ * console.log('Screen position:', screenPoint.x, screenPoint.y);
286
+ * ```
140
287
  */
141
288
  abstract wcs2Cwcs(point: AcGePoint2dLike): AcGePoint2d;
142
289
  abstract zoomTo(box: AcGeBox2d, margin: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"AcEdBaseView.d.ts","sourceRoot":"","sources":["../../../src/editor/view/AcEdBaseView.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,UAAU,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,WAAW,EACX,eAAe,EAChB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAE5C;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,EAAE,EAAE,YAAY,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,CAAC,EAAE,MAAM,CAAA;IACT;;OAEG;IACH,CAAC,EAAE,MAAM,CAAA;CACV;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAA;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,CAAC,EAAE,MAAM,CAAA;IACT;;OAEG;IACH,CAAC,EAAE,MAAM,CAAA;IACT;;OAEG;IACH,EAAE,EAAE,YAAY,CAAA;CACjB;AAED;;GAEG;AACH,oBAAY,YAAY;IACtB;;OAEG;IACH,SAAS,IAAI;IACb;;OAEG;IACH,GAAG,IAAI;CACR;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC7B,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG,MAAM;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAA;AAE/E,8BAAsB,YAAY;IAChC,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,sBAAsB,CAAC,CAA2B;IAC1D,OAAO,CAAC,KAAK,CAAW;IACxB,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,aAAa,CAAa;IAClC,OAAO,CAAC,aAAa,CAAkB;IACvC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,iBAAiB,CAAQ;IAGjC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,gBAAgB,CAAqB;IAE7C,SAAS,CAAC,OAAO,EAAE,iBAAiB,CAAA;IAEpC,SAAgB,MAAM;;;;;MAKrB;gBAEW,MAAM,EAAE,iBAAiB;IAgCrC;;OAEG;IACH,IAAI,MAAM,aAET;IAED;;OAEG;IACH,IAAI,gBAAgB,IAGQ,MAAM,CADjC;IACD,IAAI,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAEjC;IAED;;OAEG;IACH,QAAQ,KAAK,UAAU,IAAI,cAAc,CAAA;IAEzC;;OAEG;IACH,QAAQ,KAAK,IAAI,IAAI,YAAY,CAAA;IACjC,QAAQ,KAAK,IAAI,CAAC,KAAK,EAAE,YAAY,EAAC;IAEtC;;OAEG;IACH,QAAQ,KAAK,MAAM,IAAI,WAAW,CAAA;IAClC,QAAQ,KAAK,MAAM,CAAC,KAAK,EAAE,WAAW,EAAC;IAEvC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,WAAW;IACtD;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,CAAC,KAAK,EAAE,eAAe,GAAG,WAAW;IAEtD,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IACrD,QAAQ,CAAC,SAAS,IAAI,IAAI;IAE1B;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,GAAG,SAAS,GAAG,0BAA0B,EAAE;IAEzE;;;;;;OAMG;IACH,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,eAAe,GAAG,YAAY,EAAE;IAEtD;;;;;OAKG;IACH,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,SAAS,GAAG,IAAI;IAE1C;;;;OAIG;IACH,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,eAAe,GAAG,IAAI;IAE9C;;OAEG;IACH,QAAQ,CAAC,KAAK,IAAI,IAAI;IAEtB;;;OAGG;IACH,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAE5C;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAE/C;;OAEG;IACH,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,YAAY,EAAE,GAAG,IAAI;IAC7C;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,GAAG,EAAE,YAAY,EAAE,GAAG,IAAI;IAE/C;;;;OAIG;IACH,QAAQ,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAEtE;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI;IAElD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI;IAEpD;;;OAGG;IACH,SAAS,CAAC,UAAU,EAAE,cAAc;IAIpC;;;OAGG;IACH,wBAAwB,CAAC,KAAK,EAAE,yBAAyB;IAIzD;;OAEG;IACH,IAAI,KAAK,IAGQ,MAAM,CADtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAE,MAAM,EAEtB;IAED;;OAEG;IACH,IAAI,MAAM,IAGQ,MAAM,CADvB;IACD,IAAI,MAAM,CAAC,KAAK,EAAE,MAAM,EAEvB;IAED;;OAEG;IACH,IAAI,IAAI,cAEP;IAED;;OAEG;IACH,IAAI,MAAM,sBAET;IAED,IAAI,MAAM,WAET;IAED;;OAEG;IACH,IAAI,MAAM,gBAET;IAED;;OAEG;IACH,IAAI,YAAY,gBAEf;IAED;;OAEG;IACH,IAAI,YAAY,qBAEf;IAED,SAAS,CAAC,cAAc;IAexB;;;OAGG;IACH,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,kBAAkB;IAgB1B,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,eAAe;IAMvB,OAAO,CAAC,eAAe;IAOvB,OAAO,CAAC,eAAe;CASxB"}
1
+ {"version":3,"file":"AcEdBaseView.d.ts","sourceRoot":"","sources":["../../../src/editor/view/AcEdBaseView.ts"],"names":[],"mappings":"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"}