@eclipse-glsp/client 1.1.0-next.fe0b297.182 → 2.0.0

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 (1338) hide show
  1. package/README.md +2 -2
  2. package/css/autocomplete-palette.css +22 -0
  3. package/css/decoration.css +1 -8
  4. package/css/glsp-sprotty.css +45 -22
  5. package/css/key-shortcut.css +111 -0
  6. package/css/keyboard-tool-palette.css +66 -0
  7. package/css/keyboard.css +50 -0
  8. package/css/navigation.css +26 -0
  9. package/css/status-overlay.css +75 -0
  10. package/css/toast.css +45 -0
  11. package/lib/base/action-dispatcher.d.ts +10 -19
  12. package/lib/base/action-dispatcher.d.ts.map +1 -1
  13. package/lib/base/action-dispatcher.js +29 -16
  14. package/lib/base/action-dispatcher.js.map +1 -1
  15. package/lib/base/action-dispatcher.spec.d.ts +2 -0
  16. package/lib/base/action-dispatcher.spec.d.ts.map +1 -0
  17. package/lib/base/action-dispatcher.spec.js +78 -0
  18. package/lib/base/action-dispatcher.spec.js.map +1 -0
  19. package/lib/base/action-handler-registry.d.ts +25 -0
  20. package/lib/base/action-handler-registry.d.ts.map +1 -0
  21. package/lib/base/action-handler-registry.js +41 -0
  22. package/lib/base/action-handler-registry.js.map +1 -0
  23. package/lib/base/args-feature.d.ts +30 -0
  24. package/lib/base/args-feature.d.ts.map +1 -0
  25. package/lib/base/args-feature.js +13 -0
  26. package/lib/base/args-feature.js.map +1 -0
  27. package/lib/base/auto-complete/auto-complete-actions.d.ts +3 -2
  28. package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
  29. package/lib/base/auto-complete/auto-complete-actions.js +4 -4
  30. package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
  31. package/lib/base/auto-complete/auto-complete-widget.d.ts +17 -12
  32. package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
  33. package/lib/base/auto-complete/auto-complete-widget.js +35 -34
  34. package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
  35. package/lib/base/auto-complete/autocomplete-suggestion-providers.d.ts +35 -0
  36. package/lib/base/auto-complete/autocomplete-suggestion-providers.d.ts.map +1 -0
  37. package/lib/base/auto-complete/autocomplete-suggestion-providers.js +18 -0
  38. package/lib/base/auto-complete/autocomplete-suggestion-providers.js.map +1 -0
  39. package/lib/base/auto-complete/base-autocomplete-palette.d.ts +45 -0
  40. package/lib/base/auto-complete/base-autocomplete-palette.d.ts.map +1 -0
  41. package/lib/base/auto-complete/base-autocomplete-palette.js +88 -0
  42. package/lib/base/auto-complete/base-autocomplete-palette.js.map +1 -0
  43. package/lib/base/auto-complete/validation-decorator.d.ts +16 -1
  44. package/lib/base/auto-complete/validation-decorator.d.ts.map +1 -1
  45. package/lib/base/auto-complete/validation-decorator.js +7 -8
  46. package/lib/base/auto-complete/validation-decorator.js.map +1 -1
  47. package/lib/base/command-stack.d.ts +19 -5
  48. package/lib/base/command-stack.d.ts.map +1 -1
  49. package/lib/base/command-stack.js +45 -13
  50. package/lib/base/command-stack.js.map +1 -1
  51. package/lib/base/default.module.d.ts +24 -0
  52. package/lib/base/default.module.d.ts.map +1 -0
  53. package/lib/base/default.module.js +92 -0
  54. package/lib/base/default.module.js.map +1 -0
  55. package/lib/base/drag-aware-mouse-listener.d.ts +9 -10
  56. package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
  57. package/lib/base/drag-aware-mouse-listener.js +16 -1
  58. package/lib/base/drag-aware-mouse-listener.js.map +1 -1
  59. package/lib/base/editor-context-service.d.ts +29 -30
  60. package/lib/base/editor-context-service.d.ts.map +1 -1
  61. package/lib/base/editor-context-service.js +72 -29
  62. package/lib/base/editor-context-service.js.map +1 -1
  63. package/lib/base/feedback/css-feedback.d.ts +42 -0
  64. package/lib/base/feedback/css-feedback.d.ts.map +1 -0
  65. package/lib/base/feedback/css-feedback.js +117 -0
  66. package/lib/base/feedback/css-feedback.js.map +1 -0
  67. package/lib/base/feedback/feedback-action-dispatcher.d.ts +52 -0
  68. package/lib/base/feedback/feedback-action-dispatcher.d.ts.map +1 -0
  69. package/lib/base/feedback/feedback-action-dispatcher.js +84 -0
  70. package/lib/base/feedback/feedback-action-dispatcher.js.map +1 -0
  71. package/lib/base/feedback/feedback-command.d.ts +22 -0
  72. package/lib/base/feedback/feedback-command.d.ts.map +1 -0
  73. package/lib/base/feedback/feedback-command.js +34 -0
  74. package/lib/base/feedback/feedback-command.js.map +1 -0
  75. package/lib/base/feedback/update-model-command.d.ts +19 -0
  76. package/lib/base/feedback/update-model-command.d.ts.map +1 -0
  77. package/lib/base/feedback/update-model-command.js +92 -0
  78. package/lib/base/feedback/update-model-command.js.map +1 -0
  79. package/lib/base/focus/focus-state-change-action.d.ts +33 -0
  80. package/lib/base/focus/focus-state-change-action.d.ts.map +1 -0
  81. package/lib/base/focus/focus-state-change-action.js +35 -0
  82. package/lib/base/focus/focus-state-change-action.js.map +1 -0
  83. package/lib/base/focus/focus-tracker.d.ts +13 -0
  84. package/lib/base/focus/focus-tracker.d.ts.map +1 -0
  85. package/lib/base/focus/focus-tracker.js +72 -0
  86. package/lib/base/focus/focus-tracker.js.map +1 -0
  87. package/lib/base/model/diagram-loader.d.ts +116 -0
  88. package/lib/base/model/diagram-loader.d.ts.map +1 -0
  89. package/lib/base/model/diagram-loader.js +131 -0
  90. package/lib/base/model/diagram-loader.js.map +1 -0
  91. package/lib/base/model/glsp-model-source.d.ts +74 -0
  92. package/lib/base/model/glsp-model-source.d.ts.map +1 -0
  93. package/lib/base/model/glsp-model-source.js +179 -0
  94. package/lib/base/model/glsp-model-source.js.map +1 -0
  95. package/lib/base/model/model-initialization-constraint.d.ts +59 -0
  96. package/lib/base/model/model-initialization-constraint.d.ts.map +1 -0
  97. package/lib/base/model/model-initialization-constraint.js +114 -0
  98. package/lib/base/model/model-initialization-constraint.js.map +1 -0
  99. package/lib/base/model/model-initialization-constraint.spec.d.ts +2 -0
  100. package/lib/base/model/model-initialization-constraint.spec.d.ts.map +1 -0
  101. package/lib/base/model/model-initialization-constraint.spec.js +97 -0
  102. package/lib/base/model/model-initialization-constraint.spec.js.map +1 -0
  103. package/lib/base/model/model-registry.d.ts +24 -3
  104. package/lib/base/model/model-registry.d.ts.map +1 -1
  105. package/lib/base/model/model-registry.js +24 -7
  106. package/lib/base/model/model-registry.js.map +1 -1
  107. package/lib/base/ranked.d.ts +34 -0
  108. package/lib/base/ranked.d.ts.map +1 -0
  109. package/lib/base/ranked.js +38 -0
  110. package/lib/base/ranked.js.map +1 -0
  111. package/lib/base/selection-clearing-mouse-listener.d.ts +2 -2
  112. package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -1
  113. package/lib/base/selection-clearing-mouse-listener.js +4 -4
  114. package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
  115. package/lib/base/selection-service.d.ts +82 -0
  116. package/lib/base/selection-service.d.ts.map +1 -0
  117. package/lib/base/selection-service.js +269 -0
  118. package/lib/base/selection-service.js.map +1 -0
  119. package/lib/base/selection-service.spec.d.ts.map +1 -0
  120. package/lib/base/selection-service.spec.js +281 -0
  121. package/lib/base/selection-service.spec.js.map +1 -0
  122. package/lib/base/tool-manager/tool-manager.d.ts +82 -0
  123. package/lib/base/tool-manager/tool-manager.d.ts.map +1 -0
  124. package/lib/base/tool-manager/tool-manager.js +143 -0
  125. package/lib/base/tool-manager/tool-manager.js.map +1 -0
  126. package/lib/base/tool-manager/tool.d.ts +54 -0
  127. package/lib/base/tool-manager/tool.d.ts.map +1 -0
  128. package/lib/base/tool-manager/tool.js +60 -0
  129. package/lib/base/tool-manager/tool.js.map +1 -0
  130. package/lib/base/view/key-tool.d.ts +5 -0
  131. package/lib/base/view/key-tool.d.ts.map +1 -0
  132. package/lib/base/view/key-tool.js +37 -0
  133. package/lib/base/view/key-tool.js.map +1 -0
  134. package/lib/base/view/mouse-tool.d.ts +19 -0
  135. package/lib/base/view/mouse-tool.d.ts.map +1 -0
  136. package/lib/base/view/mouse-tool.js +105 -0
  137. package/lib/base/view/mouse-tool.js.map +1 -0
  138. package/lib/base/view/view-registry.d.ts +20 -2
  139. package/lib/base/view/view-registry.d.ts.map +1 -1
  140. package/lib/base/view/view-registry.js +12 -7
  141. package/lib/base/view/view-registry.js.map +1 -1
  142. package/lib/default-modules.d.ts +65 -0
  143. package/lib/default-modules.d.ts.map +1 -0
  144. package/lib/default-modules.js +152 -0
  145. package/lib/default-modules.js.map +1 -0
  146. package/lib/features/accessibility/accessibility-module.d.ts +21 -0
  147. package/lib/features/accessibility/accessibility-module.d.ts.map +1 -0
  148. package/lib/features/accessibility/accessibility-module.js +46 -0
  149. package/lib/features/accessibility/accessibility-module.js.map +1 -0
  150. package/lib/features/accessibility/actions.d.ts +26 -0
  151. package/lib/features/accessibility/actions.d.ts.map +1 -0
  152. package/lib/features/accessibility/actions.js +32 -0
  153. package/lib/features/accessibility/actions.js.map +1 -0
  154. package/lib/features/accessibility/edge-autocomplete/action.d.ts +27 -0
  155. package/lib/features/accessibility/edge-autocomplete/action.d.ts.map +1 -0
  156. package/lib/features/accessibility/edge-autocomplete/action.js +32 -0
  157. package/lib/features/accessibility/edge-autocomplete/action.js.map +1 -0
  158. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-context.d.ts +23 -0
  159. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-context.d.ts.map +1 -0
  160. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-context.js +18 -0
  161. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-context.js.map +1 -0
  162. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-palette.d.ts +28 -0
  163. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-palette.d.ts.map +1 -0
  164. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-palette.js +137 -0
  165. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-palette.js.map +1 -0
  166. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-tool.d.ts +14 -0
  167. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-tool.d.ts.map +1 -0
  168. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-tool.js +71 -0
  169. package/lib/features/accessibility/edge-autocomplete/edge-autocomplete-tool.js.map +1 -0
  170. package/lib/features/accessibility/element-navigation/diagram-navigation-tool.d.ts +65 -0
  171. package/lib/features/accessibility/element-navigation/diagram-navigation-tool.d.ts.map +1 -0
  172. package/lib/features/accessibility/element-navigation/diagram-navigation-tool.js +292 -0
  173. package/lib/features/accessibility/element-navigation/diagram-navigation-tool.js.map +1 -0
  174. package/lib/features/accessibility/element-navigation/element-navigation-module.d.ts +24 -0
  175. package/lib/features/accessibility/element-navigation/element-navigation-module.d.ts.map +1 -0
  176. package/lib/features/accessibility/element-navigation/element-navigation-module.js +38 -0
  177. package/lib/features/accessibility/element-navigation/element-navigation-module.js.map +1 -0
  178. package/lib/features/accessibility/element-navigation/element-navigator.d.ts +26 -0
  179. package/lib/features/accessibility/element-navigation/element-navigator.d.ts.map +1 -0
  180. package/lib/features/accessibility/element-navigation/element-navigator.js +18 -0
  181. package/lib/features/accessibility/element-navigation/element-navigator.js.map +1 -0
  182. package/lib/features/accessibility/element-navigation/left-right-top-bottom-navigator.d.ts +28 -0
  183. package/lib/features/accessibility/element-navigation/left-right-top-bottom-navigator.d.ts.map +1 -0
  184. package/lib/features/accessibility/element-navigation/left-right-top-bottom-navigator.js +106 -0
  185. package/lib/features/accessibility/element-navigation/left-right-top-bottom-navigator.js.map +1 -0
  186. package/lib/features/accessibility/element-navigation/local-element-navigator.d.ts +35 -0
  187. package/lib/features/accessibility/element-navigation/local-element-navigator.d.ts.map +1 -0
  188. package/lib/features/accessibility/element-navigation/local-element-navigator.js +119 -0
  189. package/lib/features/accessibility/element-navigation/local-element-navigator.js.map +1 -0
  190. package/lib/features/accessibility/element-navigation/position-navigator.d.ts +32 -0
  191. package/lib/features/accessibility/element-navigation/position-navigator.d.ts.map +1 -0
  192. package/lib/features/accessibility/element-navigation/position-navigator.js +81 -0
  193. package/lib/features/accessibility/element-navigation/position-navigator.js.map +1 -0
  194. package/lib/features/accessibility/focus-tracker/focus-tracker-module.d.ts +23 -0
  195. package/lib/features/accessibility/focus-tracker/focus-tracker-module.d.ts.map +1 -0
  196. package/lib/features/accessibility/focus-tracker/focus-tracker-module.js +33 -0
  197. package/lib/features/accessibility/focus-tracker/focus-tracker-module.js.map +1 -0
  198. package/lib/features/accessibility/focus-tracker/focus-tracker-tool.d.ts +37 -0
  199. package/lib/features/accessibility/focus-tracker/focus-tracker-tool.d.ts.map +1 -0
  200. package/lib/features/accessibility/focus-tracker/focus-tracker-tool.js +134 -0
  201. package/lib/features/accessibility/focus-tracker/focus-tracker-tool.js.map +1 -0
  202. package/lib/features/accessibility/global-keylistener-tool.d.ts +20 -0
  203. package/lib/features/accessibility/global-keylistener-tool.d.ts.map +1 -0
  204. package/lib/features/accessibility/global-keylistener-tool.js +110 -0
  205. package/lib/features/accessibility/global-keylistener-tool.js.map +1 -0
  206. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.d.ts +31 -0
  207. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.d.ts.map +1 -0
  208. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.js +73 -0
  209. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.js.map +1 -0
  210. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts +54 -0
  211. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts.map +1 -0
  212. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js +162 -0
  213. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js.map +1 -0
  214. package/lib/features/accessibility/key-shortcut/di.config.d.ts +24 -0
  215. package/lib/features/accessibility/key-shortcut/di.config.d.ts.map +1 -0
  216. package/lib/features/accessibility/key-shortcut/di.config.js +37 -0
  217. package/lib/features/accessibility/key-shortcut/di.config.js.map +1 -0
  218. package/lib/features/accessibility/keyboard-grid/action.d.ts +57 -0
  219. package/lib/features/accessibility/keyboard-grid/action.d.ts.map +1 -0
  220. package/lib/features/accessibility/keyboard-grid/action.js +65 -0
  221. package/lib/features/accessibility/keyboard-grid/action.js.map +1 -0
  222. package/lib/features/accessibility/keyboard-grid/constants.d.ts +23 -0
  223. package/lib/features/accessibility/keyboard-grid/constants.d.ts.map +1 -0
  224. package/lib/features/accessibility/keyboard-grid/constants.js +28 -0
  225. package/lib/features/accessibility/keyboard-grid/constants.js.map +1 -0
  226. package/lib/features/accessibility/keyboard-grid/keyboard-grid-search-palette.d.ts +34 -0
  227. package/lib/features/accessibility/keyboard-grid/keyboard-grid-search-palette.d.ts.map +1 -0
  228. package/lib/features/accessibility/keyboard-grid/keyboard-grid-search-palette.js +70 -0
  229. package/lib/features/accessibility/keyboard-grid/keyboard-grid-search-palette.js.map +1 -0
  230. package/lib/features/accessibility/keyboard-grid/keyboard-grid.d.ts +38 -0
  231. package/lib/features/accessibility/keyboard-grid/keyboard-grid.d.ts.map +1 -0
  232. package/lib/features/accessibility/keyboard-grid/keyboard-grid.js +174 -0
  233. package/lib/features/accessibility/keyboard-grid/keyboard-grid.js.map +1 -0
  234. package/lib/features/accessibility/keyboard-grid/keyboard-node-grid.d.ts +29 -0
  235. package/lib/features/accessibility/keyboard-grid/keyboard-node-grid.d.ts.map +1 -0
  236. package/lib/features/accessibility/keyboard-grid/keyboard-node-grid.js +75 -0
  237. package/lib/features/accessibility/keyboard-grid/keyboard-node-grid.js.map +1 -0
  238. package/lib/features/accessibility/keyboard-pointer/actions.d.ts +27 -0
  239. package/lib/features/accessibility/keyboard-pointer/actions.d.ts.map +1 -0
  240. package/lib/features/accessibility/keyboard-pointer/actions.js +32 -0
  241. package/lib/features/accessibility/keyboard-pointer/actions.js.map +1 -0
  242. package/lib/features/accessibility/keyboard-pointer/constants.d.ts +22 -0
  243. package/lib/features/accessibility/keyboard-pointer/constants.d.ts.map +1 -0
  244. package/lib/features/accessibility/keyboard-pointer/constants.js +26 -0
  245. package/lib/features/accessibility/keyboard-pointer/constants.js.map +1 -0
  246. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.d.ts +39 -0
  247. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.d.ts.map +1 -0
  248. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.js +118 -0
  249. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-listener.js.map +1 -0
  250. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.d.ts +22 -0
  251. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.d.ts.map +1 -0
  252. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.js +53 -0
  253. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-module.js.map +1 -0
  254. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-position.d.ts +35 -0
  255. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-position.d.ts.map +1 -0
  256. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-position.js +67 -0
  257. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer-position.js.map +1 -0
  258. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.d.ts +23 -0
  259. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.d.ts.map +1 -0
  260. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.js +123 -0
  261. package/lib/features/accessibility/keyboard-pointer/keyboard-pointer.js.map +1 -0
  262. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.d.ts +20 -0
  263. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.d.ts.map +1 -0
  264. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.js +37 -0
  265. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.js.map +1 -0
  266. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.d.ts +37 -0
  267. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.d.ts.map +1 -0
  268. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.js +461 -0
  269. package/lib/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.js.map +1 -0
  270. package/lib/features/accessibility/move-zoom/move-handler.d.ts +80 -0
  271. package/lib/features/accessibility/move-zoom/move-handler.d.ts.map +1 -0
  272. package/lib/features/accessibility/move-zoom/move-handler.js +171 -0
  273. package/lib/features/accessibility/move-zoom/move-handler.js.map +1 -0
  274. package/lib/features/accessibility/move-zoom/move-zoom-module.d.ts +22 -0
  275. package/lib/features/accessibility/move-zoom/move-zoom-module.d.ts.map +1 -0
  276. package/lib/features/accessibility/move-zoom/move-zoom-module.js +40 -0
  277. package/lib/features/accessibility/move-zoom/move-zoom-module.js.map +1 -0
  278. package/lib/features/accessibility/move-zoom/zoom-handler.d.ts +73 -0
  279. package/lib/features/accessibility/move-zoom/zoom-handler.d.ts.map +1 -0
  280. package/lib/features/accessibility/move-zoom/zoom-handler.js +157 -0
  281. package/lib/features/accessibility/move-zoom/zoom-handler.js.map +1 -0
  282. package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts +54 -0
  283. package/lib/features/accessibility/resize-key-tool/resize-key-handler.d.ts.map +1 -0
  284. package/lib/features/accessibility/resize-key-tool/resize-key-handler.js +124 -0
  285. package/lib/features/accessibility/resize-key-tool/resize-key-handler.js.map +1 -0
  286. package/lib/features/accessibility/resize-key-tool/resize-key-module.d.ts +22 -0
  287. package/lib/features/accessibility/resize-key-tool/resize-key-module.d.ts.map +1 -0
  288. package/lib/features/accessibility/resize-key-tool/resize-key-module.js +35 -0
  289. package/lib/features/accessibility/resize-key-tool/resize-key-module.js.map +1 -0
  290. package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts +48 -0
  291. package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts.map +1 -0
  292. package/lib/features/accessibility/resize-key-tool/resize-key-tool.js +156 -0
  293. package/lib/features/accessibility/resize-key-tool/resize-key-tool.js.map +1 -0
  294. package/lib/features/accessibility/search/search-palette-module.d.ts +19 -0
  295. package/lib/features/accessibility/search/search-palette-module.d.ts.map +1 -0
  296. package/lib/features/accessibility/search/search-palette-module.js +31 -0
  297. package/lib/features/accessibility/search/search-palette-module.js.map +1 -0
  298. package/lib/features/accessibility/search/search-palette.d.ts +51 -0
  299. package/lib/features/accessibility/search/search-palette.d.ts.map +1 -0
  300. package/lib/features/accessibility/search/search-palette.js +186 -0
  301. package/lib/features/accessibility/search/search-palette.js.map +1 -0
  302. package/lib/features/accessibility/search/search-tool.d.ts +37 -0
  303. package/lib/features/accessibility/search/search-tool.d.ts.map +1 -0
  304. package/lib/features/accessibility/search/search-tool.js +91 -0
  305. package/lib/features/accessibility/search/search-tool.js.map +1 -0
  306. package/lib/features/accessibility/toast/messages.json +18 -0
  307. package/lib/features/accessibility/toast/toast-handler.d.ts +45 -0
  308. package/lib/features/accessibility/toast/toast-handler.d.ts.map +1 -0
  309. package/lib/features/accessibility/toast/toast-handler.js +54 -0
  310. package/lib/features/accessibility/toast/toast-handler.js.map +1 -0
  311. package/lib/features/accessibility/toast/toast-module.d.ts +24 -0
  312. package/lib/features/accessibility/toast/toast-module.d.ts.map +1 -0
  313. package/lib/features/accessibility/toast/toast-module.js +38 -0
  314. package/lib/features/accessibility/toast/toast-module.js.map +1 -0
  315. package/lib/features/accessibility/toast/toast-tool.d.ts +43 -0
  316. package/lib/features/accessibility/toast/toast-tool.d.ts.map +1 -0
  317. package/lib/features/accessibility/toast/toast-tool.js +116 -0
  318. package/lib/features/accessibility/toast/toast-tool.js.map +1 -0
  319. package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts +34 -0
  320. package/lib/features/accessibility/view-key-tools/deselect-key-tool.d.ts.map +1 -0
  321. package/lib/features/accessibility/view-key-tools/deselect-key-tool.js +86 -0
  322. package/lib/features/accessibility/view-key-tools/deselect-key-tool.js.map +1 -0
  323. package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts +53 -0
  324. package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts.map +1 -0
  325. package/lib/features/accessibility/view-key-tools/movement-key-tool.js +144 -0
  326. package/lib/features/accessibility/view-key-tools/movement-key-tool.js.map +1 -0
  327. package/lib/features/accessibility/view-key-tools/view-key-tools-module.d.ts +19 -0
  328. package/lib/features/accessibility/view-key-tools/view-key-tools-module.d.ts.map +1 -0
  329. package/lib/features/accessibility/view-key-tools/view-key-tools-module.js +36 -0
  330. package/lib/features/accessibility/view-key-tools/view-key-tools-module.js.map +1 -0
  331. package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts +51 -0
  332. package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts.map +1 -0
  333. package/lib/features/accessibility/view-key-tools/zoom-key-tool.js +193 -0
  334. package/lib/features/accessibility/view-key-tools/zoom-key-tool.js.map +1 -0
  335. package/lib/features/bounds/bounds-module.d.ts +18 -0
  336. package/lib/features/bounds/bounds-module.d.ts.map +1 -0
  337. package/lib/features/bounds/bounds-module.js +37 -0
  338. package/lib/features/bounds/bounds-module.js.map +1 -0
  339. package/lib/features/bounds/freeform-layout.d.ts +14 -0
  340. package/lib/features/bounds/freeform-layout.d.ts.map +1 -0
  341. package/lib/features/bounds/freeform-layout.js +106 -0
  342. package/lib/features/bounds/freeform-layout.js.map +1 -0
  343. package/lib/features/bounds/freeform-layout.spec.d.ts +3 -0
  344. package/lib/features/bounds/freeform-layout.spec.d.ts.map +1 -0
  345. package/lib/features/bounds/freeform-layout.spec.js +201 -0
  346. package/lib/features/bounds/freeform-layout.spec.js.map +1 -0
  347. package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts +33 -0
  348. package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts.map +1 -0
  349. package/lib/features/bounds/glsp-hidden-bounds-updater.js +98 -0
  350. package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -0
  351. package/lib/features/bounds/hbox-layout.d.ts +25 -0
  352. package/lib/features/bounds/hbox-layout.d.ts.map +1 -0
  353. package/lib/features/bounds/hbox-layout.js +200 -0
  354. package/lib/features/bounds/hbox-layout.js.map +1 -0
  355. package/lib/features/bounds/hbox-layout.spec.d.ts +3 -0
  356. package/lib/features/bounds/hbox-layout.spec.d.ts.map +1 -0
  357. package/lib/features/bounds/hbox-layout.spec.js +160 -0
  358. package/lib/features/bounds/hbox-layout.spec.js.map +1 -0
  359. package/lib/features/bounds/layouter-test-util.spec.d.ts +32 -0
  360. package/lib/features/bounds/layouter-test-util.spec.d.ts.map +1 -0
  361. package/lib/features/bounds/layouter-test-util.spec.js +96 -0
  362. package/lib/features/bounds/layouter-test-util.spec.js.map +1 -0
  363. package/lib/features/bounds/layouter.d.ts +21 -0
  364. package/lib/features/bounds/layouter.d.ts.map +1 -0
  365. package/lib/features/bounds/layouter.js +130 -0
  366. package/lib/features/bounds/layouter.js.map +1 -0
  367. package/lib/features/bounds/vbox-layout.d.ts +25 -0
  368. package/lib/features/bounds/vbox-layout.d.ts.map +1 -0
  369. package/lib/features/bounds/vbox-layout.js +200 -0
  370. package/lib/features/bounds/vbox-layout.js.map +1 -0
  371. package/lib/features/bounds/vbox-layout.spec.d.ts +3 -0
  372. package/lib/features/bounds/vbox-layout.spec.d.ts.map +1 -0
  373. package/lib/features/bounds/vbox-layout.spec.js +160 -0
  374. package/lib/features/bounds/vbox-layout.spec.js.map +1 -0
  375. package/lib/features/change-bounds/model.d.ts +7 -7
  376. package/lib/features/change-bounds/model.d.ts.map +1 -1
  377. package/lib/features/change-bounds/model.js +5 -5
  378. package/lib/features/change-bounds/model.js.map +1 -1
  379. package/lib/features/change-bounds/movement-restrictor.d.ts +7 -23
  380. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
  381. package/lib/features/change-bounds/movement-restrictor.js +22 -7
  382. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  383. package/lib/features/change-bounds/snap.d.ts +4 -20
  384. package/lib/features/change-bounds/snap.d.ts.map +1 -1
  385. package/lib/features/change-bounds/snap.js +18 -3
  386. package/lib/features/change-bounds/snap.js.map +1 -1
  387. package/lib/features/change-bounds/snap.spec.d.ts +1 -1
  388. package/lib/features/change-bounds/snap.spec.js +6 -6
  389. package/lib/features/change-bounds/snap.spec.js.map +1 -1
  390. package/lib/features/command-palette/command-palette-module.d.ts +19 -0
  391. package/lib/features/command-palette/command-palette-module.d.ts.map +1 -0
  392. package/lib/features/command-palette/command-palette-module.js +29 -0
  393. package/lib/features/command-palette/command-palette-module.js.map +1 -0
  394. package/lib/features/command-palette/command-palette-tool.d.ts +3 -2
  395. package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -1
  396. package/lib/features/command-palette/command-palette-tool.js +6 -6
  397. package/lib/features/command-palette/command-palette-tool.js.map +1 -1
  398. package/lib/features/command-palette/server-command-palette-provider.d.ts +2 -18
  399. package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
  400. package/lib/features/command-palette/server-command-palette-provider.js +11 -11
  401. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
  402. package/lib/features/context-menu/context-menu-module.d.ts +18 -0
  403. package/lib/features/context-menu/context-menu-module.d.ts.map +1 -0
  404. package/lib/features/context-menu/context-menu-module.js +35 -0
  405. package/lib/features/context-menu/context-menu-module.js.map +1 -0
  406. package/lib/features/context-menu/delete-element-context-menu.d.ts +2 -18
  407. package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
  408. package/lib/features/context-menu/delete-element-context-menu.js +6 -7
  409. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
  410. package/lib/features/context-menu/glsp-context-menu-mouse-listener.d.ts +43 -0
  411. package/lib/features/context-menu/glsp-context-menu-mouse-listener.d.ts.map +1 -0
  412. package/lib/features/context-menu/glsp-context-menu-mouse-listener.js +110 -0
  413. package/lib/features/context-menu/glsp-context-menu-mouse-listener.js.map +1 -0
  414. package/lib/features/context-menu/server-context-menu-provider.d.ts +2 -18
  415. package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
  416. package/lib/features/context-menu/server-context-menu-provider.js +11 -12
  417. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  418. package/lib/features/copy-paste/copy-paste-context-menu.d.ts +2 -18
  419. package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
  420. package/lib/features/copy-paste/copy-paste-context-menu.js +10 -15
  421. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  422. package/lib/features/copy-paste/copy-paste-handler.d.ts +4 -20
  423. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
  424. package/lib/features/copy-paste/copy-paste-handler.js +18 -20
  425. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  426. package/lib/features/copy-paste/copy-paste-modules.d.ts +24 -0
  427. package/lib/features/copy-paste/copy-paste-modules.d.ts.map +1 -0
  428. package/lib/features/copy-paste/copy-paste-modules.js +34 -0
  429. package/lib/features/copy-paste/copy-paste-modules.js.map +1 -0
  430. package/lib/features/copy-paste/copy-paste-standalone.d.ts +28 -0
  431. package/lib/features/copy-paste/copy-paste-standalone.d.ts.map +1 -0
  432. package/lib/features/copy-paste/copy-paste-standalone.js +84 -0
  433. package/lib/features/copy-paste/copy-paste-standalone.js.map +1 -0
  434. package/lib/features/decoration/decoration-module.d.ts +19 -0
  435. package/lib/features/decoration/decoration-module.d.ts.map +1 -0
  436. package/lib/features/decoration/decoration-module.js +25 -0
  437. package/lib/features/decoration/decoration-module.js.map +1 -0
  438. package/lib/features/decoration/decoration-placer.d.ts +2 -18
  439. package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
  440. package/lib/features/decoration/decoration-placer.js +6 -7
  441. package/lib/features/decoration/decoration-placer.js.map +1 -1
  442. package/lib/features/export/export-modules.d.ts +24 -0
  443. package/lib/features/export/export-modules.d.ts.map +1 -0
  444. package/lib/features/export/export-modules.js +39 -0
  445. package/lib/features/export/export-modules.js.map +1 -0
  446. package/lib/features/export/export-svg-action-handler.d.ts +11 -0
  447. package/lib/features/export/export-svg-action-handler.d.ts.map +1 -0
  448. package/lib/features/export/export-svg-action-handler.js +43 -0
  449. package/lib/features/export/export-svg-action-handler.js.map +1 -0
  450. package/lib/features/export/glsp-svg-exporter.d.ts +6 -0
  451. package/lib/features/export/glsp-svg-exporter.d.ts.map +1 -0
  452. package/lib/features/export/glsp-svg-exporter.js +59 -0
  453. package/lib/features/export/glsp-svg-exporter.js.map +1 -0
  454. package/lib/features/hints/model.d.ts +13 -8
  455. package/lib/features/hints/model.d.ts.map +1 -1
  456. package/lib/features/hints/model.js.map +1 -1
  457. package/lib/features/hints/type-hint-provider.d.ts +81 -0
  458. package/lib/features/hints/type-hint-provider.d.ts.map +1 -0
  459. package/lib/features/hints/type-hint-provider.js +200 -0
  460. package/lib/features/hints/type-hint-provider.js.map +1 -0
  461. package/lib/features/hints/type-hint-provider.spec.d.ts +2 -0
  462. package/lib/features/hints/type-hint-provider.spec.d.ts.map +1 -0
  463. package/lib/features/hints/type-hint-provider.spec.js +333 -0
  464. package/lib/features/hints/type-hint-provider.spec.js.map +1 -0
  465. package/lib/features/hints/type-hints-module.d.ts +18 -0
  466. package/lib/features/hints/type-hints-module.d.ts.map +1 -0
  467. package/lib/features/hints/type-hints-module.js +28 -0
  468. package/lib/features/hints/type-hints-module.js.map +1 -0
  469. package/lib/features/hover/hover-module.d.ts +18 -0
  470. package/lib/features/hover/hover-module.d.ts.map +1 -0
  471. package/lib/features/hover/hover-module.js +48 -0
  472. package/lib/features/hover/hover-module.js.map +1 -0
  473. package/lib/features/hover/hover.d.ts +5 -21
  474. package/lib/features/hover/hover.d.ts.map +1 -1
  475. package/lib/features/hover/hover.js +12 -13
  476. package/lib/features/hover/hover.js.map +1 -1
  477. package/lib/features/label-edit/edit-label-tool.d.ts +10 -0
  478. package/lib/features/label-edit/edit-label-tool.d.ts.map +1 -0
  479. package/lib/features/label-edit/edit-label-tool.js +48 -0
  480. package/lib/features/label-edit/edit-label-tool.js.map +1 -0
  481. package/lib/features/label-edit/edit-label-validator.d.ts +17 -0
  482. package/lib/features/label-edit/edit-label-validator.d.ts.map +1 -0
  483. package/lib/features/label-edit/edit-label-validator.js +109 -0
  484. package/lib/features/label-edit/edit-label-validator.js.map +1 -0
  485. package/lib/features/label-edit/label-edit-module.d.ts +18 -0
  486. package/lib/features/label-edit/label-edit-module.d.ts.map +1 -0
  487. package/lib/features/label-edit/label-edit-module.js +28 -0
  488. package/lib/features/label-edit/label-edit-module.js.map +1 -0
  489. package/lib/features/layout/layout-elements-action.d.ts +10 -26
  490. package/lib/features/layout/layout-elements-action.d.ts.map +1 -1
  491. package/lib/features/layout/layout-elements-action.js +30 -34
  492. package/lib/features/layout/layout-elements-action.js.map +1 -1
  493. package/lib/features/layout/layout-elements-action.spec.d.ts.map +1 -1
  494. package/lib/features/layout/layout-elements-action.spec.js +24 -20
  495. package/lib/features/layout/layout-elements-action.spec.js.map +1 -1
  496. package/lib/features/layout/layout-module.d.ts +18 -0
  497. package/lib/features/layout/layout-module.d.ts.map +1 -0
  498. package/lib/features/layout/layout-module.js +26 -0
  499. package/lib/features/layout/layout-module.js.map +1 -0
  500. package/lib/features/navigation/navigation-action-handler.d.ts +2 -18
  501. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
  502. package/lib/features/navigation/navigation-action-handler.js +24 -28
  503. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  504. package/lib/features/navigation/navigation-module.d.ts +18 -0
  505. package/lib/features/navigation/navigation-module.d.ts.map +1 -0
  506. package/lib/features/navigation/navigation-module.js +30 -0
  507. package/lib/features/navigation/navigation-module.js.map +1 -0
  508. package/lib/features/navigation/navigation-target-resolver.d.ts +4 -20
  509. package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
  510. package/lib/features/navigation/navigation-target-resolver.js +15 -18
  511. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  512. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
  513. package/lib/features/navigation/navigation-target-resolver.spec.js +16 -17
  514. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
  515. package/lib/features/reconnect/model.d.ts +14 -11
  516. package/lib/features/reconnect/model.d.ts.map +1 -1
  517. package/lib/features/reconnect/model.js +9 -9
  518. package/lib/features/reconnect/model.js.map +1 -1
  519. package/lib/features/routing/glsp-manhattan-edge-router.d.ts +20 -0
  520. package/lib/features/routing/glsp-manhattan-edge-router.d.ts.map +1 -0
  521. package/lib/features/routing/glsp-manhattan-edge-router.js +68 -0
  522. package/lib/features/routing/glsp-manhattan-edge-router.js.map +1 -0
  523. package/lib/features/routing/routing-module.d.ts +18 -0
  524. package/lib/features/routing/routing-module.d.ts.map +1 -0
  525. package/lib/features/routing/routing-module.js +39 -0
  526. package/lib/features/routing/routing-module.js.map +1 -0
  527. package/lib/features/save/save-keylistener.d.ts +3 -4
  528. package/lib/features/save/save-keylistener.d.ts.map +1 -1
  529. package/lib/features/save/save-keylistener.js +4 -6
  530. package/lib/features/save/save-keylistener.js.map +1 -1
  531. package/lib/features/save/save-module.d.ts +23 -0
  532. package/lib/features/save/save-module.d.ts.map +1 -0
  533. package/lib/features/save/save-module.js +29 -0
  534. package/lib/features/save/save-module.js.map +1 -0
  535. package/lib/features/select/select-feedback-command.d.ts +12 -0
  536. package/lib/features/select/select-feedback-command.d.ts.map +1 -0
  537. package/lib/features/select/select-feedback-command.js +57 -0
  538. package/lib/features/select/select-feedback-command.js.map +1 -0
  539. package/lib/features/select/select-module.d.ts +24 -0
  540. package/lib/features/select/select-module.d.ts.map +1 -0
  541. package/lib/features/select/select-module.js +38 -0
  542. package/lib/features/select/select-module.js.map +1 -0
  543. package/lib/features/select/select-mouse-listener.d.ts +6 -5
  544. package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
  545. package/lib/features/select/select-mouse-listener.js +20 -63
  546. package/lib/features/select/select-mouse-listener.js.map +1 -1
  547. package/lib/features/source-model-watcher/source-model-changed-action-handler.d.ts +1 -17
  548. package/lib/features/source-model-watcher/source-model-changed-action-handler.d.ts.map +1 -1
  549. package/lib/features/source-model-watcher/source-model-changed-action-handler.js +10 -14
  550. package/lib/features/source-model-watcher/source-model-changed-action-handler.js.map +1 -1
  551. package/lib/features/source-model-watcher/source-model-wacher-module.d.ts +18 -0
  552. package/lib/features/source-model-watcher/source-model-wacher-module.d.ts.map +1 -0
  553. package/lib/features/source-model-watcher/source-model-wacher-module.js +24 -0
  554. package/lib/features/source-model-watcher/source-model-wacher-module.js.map +1 -0
  555. package/lib/features/status/status-module.d.ts +19 -0
  556. package/lib/features/status/status-module.d.ts.map +1 -0
  557. package/lib/features/status/status-module.js +28 -0
  558. package/lib/features/status/status-module.js.map +1 -0
  559. package/lib/features/status/status-overlay.d.ts +25 -0
  560. package/lib/features/status/status-overlay.d.ts.map +1 -0
  561. package/lib/features/status/status-overlay.js +125 -0
  562. package/lib/features/status/status-overlay.js.map +1 -0
  563. package/lib/features/svg-metadata/metadata-placer.d.ts +23 -0
  564. package/lib/features/svg-metadata/metadata-placer.d.ts.map +1 -0
  565. package/lib/features/svg-metadata/metadata-placer.js +62 -0
  566. package/lib/features/svg-metadata/metadata-placer.js.map +1 -0
  567. package/lib/features/svg-metadata/svg-metadata-module.d.ts +18 -0
  568. package/lib/features/svg-metadata/svg-metadata-module.d.ts.map +1 -0
  569. package/lib/features/svg-metadata/svg-metadata-module.js +25 -0
  570. package/lib/features/svg-metadata/svg-metadata-module.js.map +1 -0
  571. package/lib/features/tool-palette/tool-palette-module.d.ts +19 -0
  572. package/lib/features/tool-palette/tool-palette-module.d.ts.map +1 -0
  573. package/lib/features/tool-palette/tool-palette-module.js +28 -0
  574. package/lib/features/tool-palette/tool-palette-module.js.map +1 -0
  575. package/lib/features/tool-palette/tool-palette.d.ts +16 -28
  576. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  577. package/lib/features/tool-palette/tool-palette.js +64 -52
  578. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  579. package/lib/features/tools/base-tools.d.ts +49 -0
  580. package/lib/features/tools/base-tools.d.ts.map +1 -0
  581. package/lib/features/tools/base-tools.js +116 -0
  582. package/lib/features/tools/base-tools.js.map +1 -0
  583. package/lib/features/tools/change-bounds/change-boounds-tool-module.d.ts +18 -0
  584. package/lib/features/tools/change-bounds/change-boounds-tool-module.d.ts.map +1 -0
  585. package/lib/features/tools/change-bounds/change-boounds-tool-module.js +31 -0
  586. package/lib/features/tools/change-bounds/change-boounds-tool-module.js.map +1 -0
  587. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts +63 -0
  588. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts.map +1 -0
  589. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js +277 -0
  590. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js.map +1 -0
  591. package/lib/features/tools/change-bounds/change-bounds-tool.d.ts +69 -0
  592. package/lib/features/tools/change-bounds/change-bounds-tool.d.ts.map +1 -0
  593. package/lib/features/tools/change-bounds/change-bounds-tool.js +386 -0
  594. package/lib/features/tools/change-bounds/change-bounds-tool.js.map +1 -0
  595. package/lib/features/tools/change-bounds/view.d.ts +9 -0
  596. package/lib/features/tools/change-bounds/view.d.ts.map +1 -0
  597. package/lib/features/tools/change-bounds/view.js +67 -0
  598. package/lib/features/tools/change-bounds/view.js.map +1 -0
  599. package/lib/features/tools/deletion/delete-tool.d.ts +31 -0
  600. package/lib/features/tools/deletion/delete-tool.d.ts.map +1 -0
  601. package/lib/features/tools/deletion/delete-tool.js +118 -0
  602. package/lib/features/tools/deletion/delete-tool.js.map +1 -0
  603. package/lib/features/tools/deletion/deletion-tool-module.d.ts +18 -0
  604. package/lib/features/tools/deletion/deletion-tool-module.d.ts.map +1 -0
  605. package/lib/features/tools/deletion/deletion-tool-module.js +26 -0
  606. package/lib/features/tools/deletion/deletion-tool-module.js.map +1 -0
  607. package/lib/features/tools/edge-creation/dangling-edge-feedback.d.ts +50 -0
  608. package/lib/features/tools/edge-creation/dangling-edge-feedback.d.ts.map +1 -0
  609. package/lib/features/tools/edge-creation/dangling-edge-feedback.js +153 -0
  610. package/lib/features/tools/edge-creation/dangling-edge-feedback.js.map +1 -0
  611. package/lib/features/tools/edge-creation/edege-creation-module.d.ts +18 -0
  612. package/lib/features/tools/edge-creation/edege-creation-module.d.ts.map +1 -0
  613. package/lib/features/tools/edge-creation/edege-creation-module.js +28 -0
  614. package/lib/features/tools/edge-creation/edege-creation-module.js.map +1 -0
  615. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts +26 -0
  616. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts.map +1 -0
  617. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js +74 -0
  618. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js.map +1 -0
  619. package/lib/features/tools/edge-creation/edge-creation-tool.d.ts +39 -0
  620. package/lib/features/tools/edge-creation/edge-creation-tool.d.ts.map +1 -0
  621. package/lib/features/tools/edge-creation/edge-creation-tool.js +200 -0
  622. package/lib/features/tools/edge-creation/edge-creation-tool.js.map +1 -0
  623. package/lib/features/tools/edge-creation/view.d.ts +10 -0
  624. package/lib/features/tools/edge-creation/view.d.ts.map +1 -0
  625. package/lib/features/tools/edge-creation/view.js +44 -0
  626. package/lib/features/tools/edge-creation/view.js.map +1 -0
  627. package/lib/features/tools/edge-edit/edge-edit-module.d.ts +18 -0
  628. package/lib/features/tools/edge-edit/edge-edit-module.d.ts.map +1 -0
  629. package/lib/features/tools/edge-edit/edge-edit-module.js +34 -0
  630. package/lib/features/tools/edge-edit/edge-edit-module.js.map +1 -0
  631. package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts +110 -0
  632. package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts.map +1 -0
  633. package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js +335 -0
  634. package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js.map +1 -0
  635. package/lib/features/tools/edge-edit/edge-edit-tool.d.ts +49 -0
  636. package/lib/features/tools/edge-edit/edge-edit-tool.d.ts.map +1 -0
  637. package/lib/features/tools/edge-edit/edge-edit-tool.js +278 -0
  638. package/lib/features/tools/edge-edit/edge-edit-tool.js.map +1 -0
  639. package/lib/features/tools/marquee-selection/marquee-behavior.d.ts +42 -0
  640. package/lib/features/tools/marquee-selection/marquee-behavior.d.ts.map +1 -0
  641. package/lib/features/tools/marquee-selection/marquee-behavior.js +128 -0
  642. package/lib/features/tools/marquee-selection/marquee-behavior.js.map +1 -0
  643. package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts.map +1 -0
  644. package/lib/features/tools/marquee-selection/marquee-behavior.spec.js.map +1 -0
  645. package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts +44 -0
  646. package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts.map +1 -0
  647. package/lib/features/tools/marquee-selection/marquee-mouse-tool.js +135 -0
  648. package/lib/features/tools/marquee-selection/marquee-mouse-tool.js.map +1 -0
  649. package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts +18 -0
  650. package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts.map +1 -0
  651. package/lib/features/tools/marquee-selection/marquee-selection-module.js +33 -0
  652. package/lib/features/tools/marquee-selection/marquee-selection-module.js.map +1 -0
  653. package/lib/features/tools/marquee-selection/marquee-tool-feedback.d.ts +43 -0
  654. package/lib/features/tools/marquee-selection/marquee-tool-feedback.d.ts.map +1 -0
  655. package/lib/features/tools/marquee-selection/marquee-tool-feedback.js +121 -0
  656. package/lib/features/tools/marquee-selection/marquee-tool-feedback.js.map +1 -0
  657. package/lib/features/tools/marquee-selection/marquee-tool.d.ts +12 -0
  658. package/lib/features/tools/marquee-selection/marquee-tool.d.ts.map +1 -0
  659. package/lib/features/tools/marquee-selection/marquee-tool.js +60 -0
  660. package/lib/features/tools/marquee-selection/marquee-tool.js.map +1 -0
  661. package/lib/features/tools/marquee-selection/model.d.ts +22 -0
  662. package/lib/features/tools/marquee-selection/model.d.ts.map +1 -0
  663. package/lib/features/tools/marquee-selection/model.js +24 -0
  664. package/lib/features/tools/marquee-selection/model.js.map +1 -0
  665. package/lib/features/tools/marquee-selection/view.d.ts +7 -0
  666. package/lib/features/tools/marquee-selection/view.d.ts.map +1 -0
  667. package/lib/features/tools/marquee-selection/view.js +40 -0
  668. package/lib/features/tools/marquee-selection/view.js.map +1 -0
  669. package/lib/features/tools/node-creation/node-creation-module.d.ts +18 -0
  670. package/lib/features/tools/node-creation/node-creation-module.d.ts.map +1 -0
  671. package/lib/features/tools/node-creation/node-creation-module.js +26 -0
  672. package/lib/features/tools/node-creation/node-creation-module.js.map +1 -0
  673. package/lib/features/tools/node-creation/node-creation-tool.d.ts +22 -0
  674. package/lib/features/tools/node-creation/node-creation-tool.d.ts.map +1 -0
  675. package/lib/features/tools/node-creation/node-creation-tool.js +109 -0
  676. package/lib/features/tools/node-creation/node-creation-tool.js.map +1 -0
  677. package/lib/features/tools/tool-focus-loss-module.d.ts +13 -0
  678. package/lib/features/tools/tool-focus-loss-module.d.ts.map +1 -0
  679. package/lib/features/tools/tool-focus-loss-module.js +50 -0
  680. package/lib/features/tools/tool-focus-loss-module.js.map +1 -0
  681. package/lib/features/undo-redo/undo-redo-key-listener.d.ts +23 -0
  682. package/lib/features/undo-redo/undo-redo-key-listener.d.ts.map +1 -0
  683. package/lib/features/undo-redo/undo-redo-key-listener.js +35 -0
  684. package/lib/features/undo-redo/undo-redo-key-listener.js.map +1 -0
  685. package/lib/features/undo-redo/undo-redo-module.d.ts +23 -0
  686. package/lib/features/undo-redo/undo-redo-module.d.ts.map +1 -0
  687. package/lib/features/undo-redo/undo-redo-module.js +30 -0
  688. package/lib/features/undo-redo/undo-redo-module.js.map +1 -0
  689. package/lib/features/validation/issue-marker.d.ts +19 -20
  690. package/lib/features/validation/issue-marker.d.ts.map +1 -1
  691. package/lib/features/validation/issue-marker.js +27 -28
  692. package/lib/features/validation/issue-marker.js.map +1 -1
  693. package/lib/features/validation/marker-navigator.d.ts +25 -24
  694. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  695. package/lib/features/validation/marker-navigator.js +35 -37
  696. package/lib/features/validation/marker-navigator.js.map +1 -1
  697. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
  698. package/lib/features/validation/marker-navigator.spec.js +41 -44
  699. package/lib/features/validation/marker-navigator.spec.js.map +1 -1
  700. package/lib/features/validation/validate.d.ts +9 -25
  701. package/lib/features/validation/validate.d.ts.map +1 -1
  702. package/lib/features/validation/validate.js +49 -50
  703. package/lib/features/validation/validate.js.map +1 -1
  704. package/lib/features/validation/validation-modules.d.ts +25 -0
  705. package/lib/features/validation/validation-modules.d.ts.map +1 -0
  706. package/lib/features/validation/validation-modules.js +43 -0
  707. package/lib/features/validation/validation-modules.js.map +1 -0
  708. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +2 -18
  709. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
  710. package/lib/features/viewport/glsp-scroll-mouse-listener.js +22 -6
  711. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
  712. package/lib/features/viewport/reposition.d.ts +38 -0
  713. package/lib/features/viewport/reposition.d.ts.map +1 -0
  714. package/lib/features/viewport/reposition.js +111 -0
  715. package/lib/features/viewport/reposition.js.map +1 -0
  716. package/lib/features/viewport/viewport-handler.d.ts +31 -0
  717. package/lib/features/viewport/viewport-handler.d.ts.map +1 -0
  718. package/lib/features/viewport/viewport-handler.js +87 -0
  719. package/lib/features/viewport/viewport-handler.js.map +1 -0
  720. package/lib/features/viewport/viewport-modules.d.ts +24 -0
  721. package/lib/features/viewport/viewport-modules.d.ts.map +1 -0
  722. package/lib/features/viewport/viewport-modules.js +49 -0
  723. package/lib/features/viewport/viewport-modules.js.map +1 -0
  724. package/lib/index.d.ts +105 -54
  725. package/lib/index.d.ts.map +1 -1
  726. package/lib/index.js +123 -91
  727. package/lib/index.js.map +1 -1
  728. package/lib/model.d.ts +30 -0
  729. package/lib/model.d.ts.map +1 -0
  730. package/lib/model.js +61 -0
  731. package/lib/model.js.map +1 -0
  732. package/lib/standalone-modules.d.ts +41 -0
  733. package/lib/standalone-modules.d.ts.map +1 -0
  734. package/lib/standalone-modules.js +98 -0
  735. package/lib/standalone-modules.js.map +1 -0
  736. package/lib/tsconfig.tsbuildinfo +1 -0
  737. package/lib/utils/argument-utils.d.ts +12 -12
  738. package/lib/utils/argument-utils.d.ts.map +1 -1
  739. package/lib/utils/argument-utils.js +8 -8
  740. package/lib/utils/argument-utils.js.map +1 -1
  741. package/lib/utils/gmodel-util.d.ts +173 -0
  742. package/lib/utils/gmodel-util.d.ts.map +1 -0
  743. package/lib/utils/gmodel-util.js +278 -0
  744. package/lib/utils/gmodel-util.js.map +1 -0
  745. package/lib/utils/gmodel-util.spec.d.ts +2 -0
  746. package/lib/utils/gmodel-util.spec.d.ts.map +1 -0
  747. package/lib/utils/gmodel-util.spec.js +186 -0
  748. package/lib/utils/gmodel-util.spec.js.map +1 -0
  749. package/lib/utils/html-utils.d.ts +1 -1
  750. package/lib/utils/html-utils.js +1 -1
  751. package/lib/utils/layout-utils.d.ts +9 -10
  752. package/lib/utils/layout-utils.d.ts.map +1 -1
  753. package/lib/utils/layout-utils.js.map +1 -1
  754. package/lib/utils/marker.d.ts +22 -6
  755. package/lib/utils/marker.d.ts.map +1 -1
  756. package/lib/utils/marker.js +8 -8
  757. package/lib/utils/marker.js.map +1 -1
  758. package/lib/utils/viewpoint-util.d.ts +26 -7
  759. package/lib/utils/viewpoint-util.d.ts.map +1 -1
  760. package/lib/utils/viewpoint-util.js +40 -8
  761. package/lib/utils/viewpoint-util.js.map +1 -1
  762. package/lib/views/base-view-module.d.ts +18 -8
  763. package/lib/views/base-view-module.d.ts.map +1 -1
  764. package/lib/views/base-view-module.js +26 -28
  765. package/lib/views/base-view-module.js.map +1 -1
  766. package/lib/views/compartments.d.ts +2 -2
  767. package/lib/views/compartments.d.ts.map +1 -1
  768. package/lib/views/compartments.js +7 -7
  769. package/lib/views/compartments.js.map +1 -1
  770. package/lib/views/gedge-view.d.ts +27 -0
  771. package/lib/views/gedge-view.d.ts.map +1 -0
  772. package/lib/views/gedge-view.js +70 -0
  773. package/lib/views/gedge-view.js.map +1 -0
  774. package/lib/views/glsp-projection-view.d.ts +8 -9
  775. package/lib/views/glsp-projection-view.d.ts.map +1 -1
  776. package/lib/views/glsp-projection-view.js +27 -10
  777. package/lib/views/glsp-projection-view.js.map +1 -1
  778. package/lib/views/index.d.ts +2 -2
  779. package/lib/views/index.d.ts.map +1 -1
  780. package/lib/views/index.js +2 -2
  781. package/lib/views/index.js.map +1 -1
  782. package/lib/views/issue-marker-view.d.ts +20 -4
  783. package/lib/views/issue-marker-view.d.ts.map +1 -1
  784. package/lib/views/issue-marker-view.js +4 -4
  785. package/lib/views/issue-marker-view.js.map +1 -1
  786. package/lib/views/rounded-corner-view.d.ts +5 -5
  787. package/lib/views/rounded-corner-view.d.ts.map +1 -1
  788. package/lib/views/rounded-corner-view.js +6 -6
  789. package/lib/views/rounded-corner-view.js.map +1 -1
  790. package/lib/views/rounded-corner.d.ts +4 -5
  791. package/lib/views/rounded-corner.d.ts.map +1 -1
  792. package/lib/views/rounded-corner.js +1 -1
  793. package/lib/views/rounded-corner.js.map +1 -1
  794. package/package.json +26 -24
  795. package/src/base/action-dispatcher.spec.ts +87 -0
  796. package/src/base/action-dispatcher.ts +33 -14
  797. package/src/base/action-handler-registry.ts +30 -0
  798. package/src/base/args-feature.ts +37 -0
  799. package/src/base/auto-complete/auto-complete-actions.ts +3 -2
  800. package/src/base/auto-complete/auto-complete-widget.ts +57 -22
  801. package/src/base/auto-complete/autocomplete-suggestion-providers.ts +37 -0
  802. package/src/base/auto-complete/base-autocomplete-palette.ts +92 -0
  803. package/src/base/auto-complete/validation-decorator.ts +2 -3
  804. package/src/base/command-stack.ts +67 -13
  805. package/src/base/default.module.ts +117 -0
  806. package/src/base/drag-aware-mouse-listener.ts +9 -10
  807. package/src/base/editor-context-service.ts +91 -31
  808. package/src/base/feedback/css-feedback.ts +102 -0
  809. package/src/base/feedback/feedback-action-dispatcher.ts +109 -0
  810. package/src/base/feedback/feedback-command.ts +29 -0
  811. package/src/base/feedback/update-model-command.ts +100 -0
  812. package/src/base/focus/focus-state-change-action.ts +43 -0
  813. package/src/base/focus/focus-tracker.ts +58 -0
  814. package/src/base/model/diagram-loader.ts +215 -0
  815. package/src/base/model/glsp-model-source.ts +199 -0
  816. package/src/base/model/model-initialization-constraint.spec.ts +95 -0
  817. package/src/base/model/model-initialization-constraint.ts +133 -0
  818. package/src/base/model/model-registry.ts +21 -4
  819. package/src/base/ranked.ts +42 -0
  820. package/src/base/selection-clearing-mouse-listener.ts +3 -3
  821. package/src/base/selection-service.spec.ts +297 -0
  822. package/src/base/selection-service.ts +293 -0
  823. package/src/base/tool-manager/tool-manager.ts +183 -0
  824. package/src/base/tool-manager/tool.ts +85 -0
  825. package/src/base/view/key-tool.ts +25 -0
  826. package/src/base/view/mouse-tool.ts +105 -0
  827. package/src/base/view/view-registry.ts +8 -3
  828. package/src/default-modules.ts +171 -0
  829. package/src/features/accessibility/README.md +143 -0
  830. package/src/features/accessibility/accessibility-module.ts +44 -0
  831. package/src/features/accessibility/actions.ts +33 -0
  832. package/src/features/accessibility/edge-autocomplete/action.ts +34 -0
  833. package/src/features/accessibility/edge-autocomplete/edge-autocomplete-context.ts +24 -0
  834. package/src/features/accessibility/edge-autocomplete/edge-autocomplete-palette.ts +147 -0
  835. package/src/features/accessibility/edge-autocomplete/edge-autocomplete-tool.ts +56 -0
  836. package/src/features/accessibility/element-navigation/diagram-navigation-tool.ts +307 -0
  837. package/src/features/accessibility/element-navigation/element-navigation-module.ts +36 -0
  838. package/src/features/accessibility/element-navigation/element-navigator.ts +57 -0
  839. package/src/features/accessibility/element-navigation/left-right-top-bottom-navigator.ts +114 -0
  840. package/src/features/accessibility/element-navigation/local-element-navigator.ts +148 -0
  841. package/src/features/accessibility/element-navigation/position-navigator.ts +102 -0
  842. package/src/features/accessibility/focus-tracker/focus-tracker-module.ts +32 -0
  843. package/src/features/accessibility/focus-tracker/focus-tracker-tool.ts +129 -0
  844. package/src/features/accessibility/global-keylistener-tool.ts +98 -0
  845. package/src/features/accessibility/key-shortcut/accessible-key-shortcut-tool.ts +55 -0
  846. package/src/features/accessibility/key-shortcut/accessible-key-shortcut.ts +197 -0
  847. package/src/features/accessibility/key-shortcut/di.config.ts +35 -0
  848. package/src/features/accessibility/keyboard-grid/action.ts +93 -0
  849. package/src/features/accessibility/keyboard-grid/constants.ts +24 -0
  850. package/src/features/accessibility/keyboard-grid/keyboard-grid-search-palette.ts +65 -0
  851. package/src/features/accessibility/keyboard-grid/keyboard-grid.ts +192 -0
  852. package/src/features/accessibility/keyboard-grid/keyboard-node-grid.ts +63 -0
  853. package/src/features/accessibility/keyboard-pointer/actions.ts +34 -0
  854. package/src/features/accessibility/keyboard-pointer/constants.ts +22 -0
  855. package/src/features/accessibility/keyboard-pointer/keyboard-pointer-listener.ts +125 -0
  856. package/src/features/accessibility/keyboard-pointer/keyboard-pointer-module.ts +63 -0
  857. package/src/features/accessibility/keyboard-pointer/keyboard-pointer-position.ts +78 -0
  858. package/src/features/accessibility/keyboard-pointer/keyboard-pointer.ts +120 -0
  859. package/src/features/accessibility/keyboard-tool-palette/keyboard-tool-palette-module.ts +35 -0
  860. package/src/features/accessibility/keyboard-tool-palette/keyboard-tool-palette.ts +505 -0
  861. package/src/features/accessibility/move-zoom/move-handler.ts +209 -0
  862. package/src/features/accessibility/move-zoom/move-zoom-module.ts +41 -0
  863. package/src/features/accessibility/move-zoom/zoom-handler.ts +182 -0
  864. package/src/features/accessibility/resize-key-tool/resize-key-handler.ts +129 -0
  865. package/src/features/accessibility/resize-key-tool/resize-key-module.ts +34 -0
  866. package/src/features/accessibility/resize-key-tool/resize-key-tool.ts +141 -0
  867. package/src/features/accessibility/search/search-palette-module.ts +29 -0
  868. package/src/features/accessibility/search/search-palette.ts +217 -0
  869. package/src/features/accessibility/search/search-tool.ts +77 -0
  870. package/src/features/accessibility/toast/messages.json +18 -0
  871. package/src/features/accessibility/toast/toast-handler.ts +69 -0
  872. package/src/features/accessibility/toast/toast-module.ts +36 -0
  873. package/src/features/accessibility/toast/toast-tool.ts +108 -0
  874. package/src/features/accessibility/view-key-tools/deselect-key-tool.ts +88 -0
  875. package/src/features/accessibility/view-key-tools/movement-key-tool.ts +127 -0
  876. package/src/features/accessibility/view-key-tools/view-key-tools-module.ts +34 -0
  877. package/src/features/accessibility/view-key-tools/zoom-key-tool.ts +197 -0
  878. package/src/features/bounds/bounds-module.ts +47 -0
  879. package/src/features/bounds/freeform-layout.spec.ts +216 -0
  880. package/src/features/bounds/freeform-layout.ts +132 -0
  881. package/src/features/bounds/glsp-hidden-bounds-updater.ts +96 -0
  882. package/src/features/bounds/hbox-layout.spec.ts +170 -0
  883. package/src/features/bounds/hbox-layout.ts +275 -0
  884. package/src/features/bounds/layouter-test-util.spec.ts +127 -0
  885. package/src/features/bounds/layouter.ts +137 -0
  886. package/src/features/bounds/vbox-layout.spec.ts +170 -0
  887. package/src/features/bounds/vbox-layout.ts +275 -0
  888. package/src/features/change-bounds/model.ts +14 -14
  889. package/src/features/change-bounds/movement-restrictor.ts +16 -17
  890. package/src/features/change-bounds/snap.spec.ts +6 -6
  891. package/src/features/change-bounds/snap.ts +5 -6
  892. package/src/features/command-palette/command-palette-module.ts +26 -0
  893. package/src/features/command-palette/command-palette-tool.ts +5 -4
  894. package/src/features/command-palette/server-command-palette-provider.ts +14 -6
  895. package/src/features/context-menu/context-menu-module.ts +33 -0
  896. package/src/features/context-menu/delete-element-context-menu.ts +3 -5
  897. package/src/features/context-menu/glsp-context-menu-mouse-listener.ts +106 -0
  898. package/src/features/context-menu/server-context-menu-provider.ts +15 -6
  899. package/src/features/copy-paste/copy-paste-context-menu.ts +17 -9
  900. package/src/features/copy-paste/copy-paste-handler.ts +18 -16
  901. package/src/features/copy-paste/copy-paste-modules.ts +35 -0
  902. package/src/features/copy-paste/copy-paste-standalone.ts +65 -0
  903. package/src/features/decoration/decoration-module.ts +22 -0
  904. package/src/features/decoration/decoration-placer.ts +4 -5
  905. package/src/features/export/export-modules.ts +50 -0
  906. package/src/features/export/export-svg-action-handler.ts +32 -0
  907. package/src/features/export/glsp-svg-exporter.ts +50 -0
  908. package/src/features/hints/model.ts +13 -8
  909. package/src/features/hints/type-hint-provider.spec.ts +355 -0
  910. package/src/features/hints/type-hint-provider.ts +249 -0
  911. package/src/features/hints/type-hints-module.ts +25 -0
  912. package/src/features/hover/hover-module.ts +64 -0
  913. package/src/features/hover/hover.ts +24 -18
  914. package/src/features/label-edit/edit-label-tool.ts +42 -0
  915. package/src/features/label-edit/edit-label-validator.ts +103 -0
  916. package/src/features/label-edit/label-edit-module.ts +25 -0
  917. package/src/features/layout/layout-elements-action.spec.ts +44 -38
  918. package/src/features/layout/layout-elements-action.ts +19 -16
  919. package/src/features/layout/layout-module.ts +28 -0
  920. package/src/features/navigation/navigation-action-handler.ts +18 -17
  921. package/src/features/navigation/navigation-module.ts +27 -0
  922. package/src/features/navigation/navigation-target-resolver.spec.ts +2 -3
  923. package/src/features/navigation/navigation-target-resolver.ts +20 -11
  924. package/src/features/reconnect/model.ts +23 -21
  925. package/src/features/routing/glsp-manhattan-edge-router.ts +59 -0
  926. package/src/features/routing/routing-module.ts +59 -0
  927. package/src/features/save/save-keylistener.ts +3 -5
  928. package/src/features/save/save-module.ts +26 -0
  929. package/src/features/select/select-feedback-command.ts +41 -0
  930. package/src/features/select/select-module.ts +39 -0
  931. package/src/features/select/select-mouse-listener.ts +29 -80
  932. package/src/features/source-model-watcher/source-model-changed-action-handler.ts +12 -8
  933. package/src/features/source-model-watcher/source-model-wacher-module.ts +21 -0
  934. package/src/features/status/status-module.ts +26 -0
  935. package/src/features/status/status-overlay.ts +121 -0
  936. package/src/features/svg-metadata/metadata-placer.ts +50 -0
  937. package/src/features/svg-metadata/svg-metadata-module.ts +23 -0
  938. package/src/features/tool-palette/tool-palette-module.ts +25 -0
  939. package/src/features/tool-palette/tool-palette.ts +71 -50
  940. package/src/features/tools/base-tools.ts +99 -0
  941. package/src/features/tools/change-bounds/change-boounds-tool-module.ts +28 -0
  942. package/src/features/tools/change-bounds/change-bounds-tool-feedback.ts +314 -0
  943. package/src/features/tools/change-bounds/change-bounds-tool.ts +475 -0
  944. package/src/features/tools/change-bounds/view.tsx +64 -0
  945. package/src/features/tools/deletion/delete-tool.ts +113 -0
  946. package/src/features/tools/deletion/deletion-tool-module.ts +23 -0
  947. package/src/features/tools/edge-creation/dangling-edge-feedback.ts +185 -0
  948. package/src/features/tools/edge-creation/edege-creation-module.ts +25 -0
  949. package/src/features/tools/edge-creation/edge-creation-tool-feedback.ts +89 -0
  950. package/src/features/tools/edge-creation/edge-creation-tool.ts +206 -0
  951. package/src/features/tools/edge-creation/view.tsx +33 -0
  952. package/src/features/tools/edge-edit/edge-edit-module.ts +38 -0
  953. package/src/features/tools/edge-edit/edge-edit-tool-feedback.ts +387 -0
  954. package/src/features/tools/edge-edit/edge-edit-tool.ts +322 -0
  955. package/src/features/tools/marquee-selection/marquee-behavior.ts +157 -0
  956. package/src/features/tools/marquee-selection/marquee-mouse-tool.ts +143 -0
  957. package/src/features/tools/marquee-selection/marquee-selection-module.ts +32 -0
  958. package/src/features/tools/marquee-selection/marquee-tool-feedback.ts +130 -0
  959. package/src/features/tools/marquee-selection/marquee-tool.ts +45 -0
  960. package/src/features/tools/marquee-selection/model.ts +22 -0
  961. package/src/features/tools/marquee-selection/view.tsx +43 -0
  962. package/src/features/tools/node-creation/node-creation-module.ts +23 -0
  963. package/src/features/tools/node-creation/node-creation-tool.ts +105 -0
  964. package/src/features/tools/tool-focus-loss-module.ts +39 -0
  965. package/src/features/undo-redo/undo-redo-key-listener.ts +32 -0
  966. package/src/features/undo-redo/undo-redo-module.ts +28 -0
  967. package/src/features/validation/issue-marker.ts +34 -24
  968. package/src/features/validation/marker-navigator.spec.ts +39 -69
  969. package/src/features/validation/marker-navigator.ts +51 -46
  970. package/src/features/validation/validate.ts +43 -35
  971. package/src/features/validation/validation-modules.ts +53 -0
  972. package/src/features/viewport/glsp-scroll-mouse-listener.ts +5 -5
  973. package/src/features/viewport/reposition.ts +119 -0
  974. package/src/features/viewport/viewport-handler.ts +74 -0
  975. package/src/features/viewport/viewport-modules.ts +65 -0
  976. package/src/index.ts +112 -77
  977. package/src/model.ts +72 -0
  978. package/src/standalone-modules.ts +103 -0
  979. package/src/utils/argument-utils.ts +18 -18
  980. package/src/utils/gmodel-util.spec.ts +221 -0
  981. package/src/utils/gmodel-util.ts +321 -0
  982. package/src/utils/html-utils.ts +1 -1
  983. package/src/utils/layout-utils.ts +18 -10
  984. package/src/utils/marker.ts +9 -9
  985. package/src/utils/viewpoint-util.ts +54 -9
  986. package/src/views/base-view-module.ts +44 -51
  987. package/src/views/compartments.tsx +4 -4
  988. package/src/views/gedge-view.tsx +79 -0
  989. package/src/views/glsp-projection-view.tsx +42 -20
  990. package/src/views/index.ts +2 -3
  991. package/src/views/issue-marker-view.tsx +6 -5
  992. package/src/views/rounded-corner-view.tsx +9 -9
  993. package/src/views/rounded-corner.ts +4 -5
  994. package/lib/base/actions/focus-change-action.d.ts +0 -33
  995. package/lib/base/actions/focus-change-action.d.ts.map +0 -1
  996. package/lib/base/actions/focus-change-action.js +0 -35
  997. package/lib/base/actions/focus-change-action.js.map +0 -1
  998. package/lib/base/actions/sprotty-actions.d.ts +0 -7
  999. package/lib/base/actions/sprotty-actions.d.ts.map +0 -1
  1000. package/lib/base/actions/sprotty-actions.js +0 -21
  1001. package/lib/base/actions/sprotty-actions.js.map +0 -1
  1002. package/lib/base/argumentable.d.ts +0 -22
  1003. package/lib/base/argumentable.d.ts.map +0 -1
  1004. package/lib/base/argumentable.js +0 -8
  1005. package/lib/base/argumentable.js.map +0 -1
  1006. package/lib/base/container-modules.d.ts +0 -40
  1007. package/lib/base/container-modules.d.ts.map +0 -1
  1008. package/lib/base/container-modules.js +0 -101
  1009. package/lib/base/container-modules.js.map +0 -1
  1010. package/lib/base/di.config.d.ts +0 -30
  1011. package/lib/base/di.config.d.ts.map +0 -1
  1012. package/lib/base/di.config.js +0 -82
  1013. package/lib/base/di.config.js.map +0 -1
  1014. package/lib/base/focus-tracker.d.ts +0 -25
  1015. package/lib/base/focus-tracker.d.ts.map +0 -1
  1016. package/lib/base/focus-tracker.js +0 -50
  1017. package/lib/base/focus-tracker.js.map +0 -1
  1018. package/lib/base/model/update-model-command.d.ts +0 -47
  1019. package/lib/base/model/update-model-command.d.ts.map +0 -1
  1020. package/lib/base/model/update-model-command.js +0 -117
  1021. package/lib/base/model/update-model-command.js.map +0 -1
  1022. package/lib/base/model-initialization-constraint.d.ts +0 -53
  1023. package/lib/base/model-initialization-constraint.d.ts.map +0 -1
  1024. package/lib/base/model-initialization-constraint.js +0 -105
  1025. package/lib/base/model-initialization-constraint.js.map +0 -1
  1026. package/lib/base/source-uri-aware.d.ts +0 -5
  1027. package/lib/base/source-uri-aware.d.ts.map +0 -1
  1028. package/lib/base/source-uri-aware.js +0 -24
  1029. package/lib/base/source-uri-aware.js.map +0 -1
  1030. package/lib/base/tool-manager/glsp-tool-manager.d.ts +0 -22
  1031. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +0 -1
  1032. package/lib/base/tool-manager/glsp-tool-manager.js +0 -109
  1033. package/lib/base/tool-manager/glsp-tool-manager.js.map +0 -1
  1034. package/lib/base/tool-manager/tool-actions.d.ts +0 -14
  1035. package/lib/base/tool-manager/tool-actions.d.ts.map +0 -1
  1036. package/lib/base/tool-manager/tool-actions.js +0 -25
  1037. package/lib/base/tool-manager/tool-actions.js.map +0 -1
  1038. package/lib/base/types.d.ts +0 -164
  1039. package/lib/base/types.d.ts.map +0 -1
  1040. package/lib/base/types.js +0 -31
  1041. package/lib/base/types.js.map +0 -1
  1042. package/lib/features/command-palette/di.config.d.ts +0 -20
  1043. package/lib/features/command-palette/di.config.d.ts.map +0 -1
  1044. package/lib/features/command-palette/di.config.js +0 -33
  1045. package/lib/features/command-palette/di.config.js.map +0 -1
  1046. package/lib/features/context-menu/di.config.d.ts +0 -19
  1047. package/lib/features/context-menu/di.config.d.ts.map +0 -1
  1048. package/lib/features/context-menu/di.config.js +0 -37
  1049. package/lib/features/context-menu/di.config.js.map +0 -1
  1050. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +0 -39
  1051. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +0 -1
  1052. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +0 -70
  1053. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +0 -1
  1054. package/lib/features/copy-paste/di.config.d.ts +0 -24
  1055. package/lib/features/copy-paste/di.config.d.ts.map +0 -1
  1056. package/lib/features/copy-paste/di.config.js +0 -38
  1057. package/lib/features/copy-paste/di.config.js.map +0 -1
  1058. package/lib/features/decoration/di.config.d.ts +0 -20
  1059. package/lib/features/decoration/di.config.d.ts.map +0 -1
  1060. package/lib/features/decoration/di.config.js +0 -27
  1061. package/lib/features/decoration/di.config.js.map +0 -1
  1062. package/lib/features/edit-label/di.config.d.ts +0 -19
  1063. package/lib/features/edit-label/di.config.d.ts.map +0 -1
  1064. package/lib/features/edit-label/di.config.js +0 -30
  1065. package/lib/features/edit-label/di.config.js.map +0 -1
  1066. package/lib/features/edit-label/edit-label-tool.d.ts +0 -13
  1067. package/lib/features/edit-label/edit-label-tool.d.ts.map +0 -1
  1068. package/lib/features/edit-label/edit-label-tool.js +0 -55
  1069. package/lib/features/edit-label/edit-label-tool.js.map +0 -1
  1070. package/lib/features/edit-label/edit-label-validator.d.ts +0 -33
  1071. package/lib/features/edit-label/edit-label-validator.d.ts.map +0 -1
  1072. package/lib/features/edit-label/edit-label-validator.js +0 -109
  1073. package/lib/features/edit-label/edit-label-validator.js.map +0 -1
  1074. package/lib/features/hints/di.config.d.ts +0 -4
  1075. package/lib/features/hints/di.config.d.ts.map +0 -1
  1076. package/lib/features/hints/di.config.js +0 -30
  1077. package/lib/features/hints/di.config.js.map +0 -1
  1078. package/lib/features/hints/type-hints.d.ts +0 -57
  1079. package/lib/features/hints/type-hints.d.ts.map +0 -1
  1080. package/lib/features/hints/type-hints.js +0 -180
  1081. package/lib/features/hints/type-hints.js.map +0 -1
  1082. package/lib/features/hover/di.config.d.ts +0 -19
  1083. package/lib/features/hover/di.config.d.ts.map +0 -1
  1084. package/lib/features/hover/di.config.js +0 -50
  1085. package/lib/features/hover/di.config.js.map +0 -1
  1086. package/lib/features/layout/di.config.d.ts +0 -19
  1087. package/lib/features/layout/di.config.d.ts.map +0 -1
  1088. package/lib/features/layout/di.config.js +0 -33
  1089. package/lib/features/layout/di.config.js.map +0 -1
  1090. package/lib/features/layout/freeform-layout.d.ts +0 -32
  1091. package/lib/features/layout/freeform-layout.d.ts.map +0 -1
  1092. package/lib/features/layout/freeform-layout.js +0 -107
  1093. package/lib/features/layout/freeform-layout.js.map +0 -1
  1094. package/lib/features/layout/hbox-layout.d.ts +0 -41
  1095. package/lib/features/layout/hbox-layout.d.ts.map +0 -1
  1096. package/lib/features/layout/hbox-layout.js +0 -189
  1097. package/lib/features/layout/hbox-layout.js.map +0 -1
  1098. package/lib/features/layout/vbox-layout.d.ts +0 -41
  1099. package/lib/features/layout/vbox-layout.d.ts.map +0 -1
  1100. package/lib/features/layout/vbox-layout.js +0 -189
  1101. package/lib/features/layout/vbox-layout.js.map +0 -1
  1102. package/lib/features/mouse-tool/di.config.d.ts +0 -19
  1103. package/lib/features/mouse-tool/di.config.d.ts.map +0 -1
  1104. package/lib/features/mouse-tool/di.config.js +0 -28
  1105. package/lib/features/mouse-tool/di.config.js.map +0 -1
  1106. package/lib/features/mouse-tool/mouse-tool.d.ts +0 -22
  1107. package/lib/features/mouse-tool/mouse-tool.d.ts.map +0 -1
  1108. package/lib/features/mouse-tool/mouse-tool.js +0 -103
  1109. package/lib/features/mouse-tool/mouse-tool.js.map +0 -1
  1110. package/lib/features/navigation/di.config.d.ts +0 -3
  1111. package/lib/features/navigation/di.config.d.ts.map +0 -1
  1112. package/lib/features/navigation/di.config.js +0 -32
  1113. package/lib/features/navigation/di.config.js.map +0 -1
  1114. package/lib/features/rank/model.d.ts +0 -22
  1115. package/lib/features/rank/model.d.ts.map +0 -1
  1116. package/lib/features/rank/model.js +0 -28
  1117. package/lib/features/rank/model.js.map +0 -1
  1118. package/lib/features/save/di.config.d.ts +0 -23
  1119. package/lib/features/save/di.config.d.ts.map +0 -1
  1120. package/lib/features/save/di.config.js +0 -29
  1121. package/lib/features/save/di.config.js.map +0 -1
  1122. package/lib/features/save/model.d.ts +0 -22
  1123. package/lib/features/save/model.d.ts.map +0 -1
  1124. package/lib/features/save/model.js +0 -9
  1125. package/lib/features/save/model.js.map +0 -1
  1126. package/lib/features/select/di.config.d.ts +0 -19
  1127. package/lib/features/select/di.config.d.ts.map +0 -1
  1128. package/lib/features/select/di.config.js +0 -34
  1129. package/lib/features/select/di.config.js.map +0 -1
  1130. package/lib/features/select/select-feedback-action.d.ts +0 -38
  1131. package/lib/features/select/select-feedback-action.d.ts.map +0 -1
  1132. package/lib/features/select/select-feedback-action.js +0 -70
  1133. package/lib/features/select/select-feedback-action.js.map +0 -1
  1134. package/lib/features/select/selection-service.d.ts +0 -77
  1135. package/lib/features/select/selection-service.d.ts.map +0 -1
  1136. package/lib/features/select/selection-service.js +0 -222
  1137. package/lib/features/select/selection-service.js.map +0 -1
  1138. package/lib/features/select/selection-service.spec.d.ts.map +0 -1
  1139. package/lib/features/select/selection-service.spec.js +0 -347
  1140. package/lib/features/select/selection-service.spec.js.map +0 -1
  1141. package/lib/features/source-model-watcher/di.config.d.ts +0 -4
  1142. package/lib/features/source-model-watcher/di.config.d.ts.map +0 -1
  1143. package/lib/features/source-model-watcher/di.config.js +0 -26
  1144. package/lib/features/source-model-watcher/di.config.js.map +0 -1
  1145. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +0 -72
  1146. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +0 -1
  1147. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +0 -258
  1148. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +0 -1
  1149. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +0 -71
  1150. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +0 -1
  1151. package/lib/features/tool-feedback/creation-tool-feedback.js +0 -218
  1152. package/lib/features/tool-feedback/creation-tool-feedback.js.map +0 -1
  1153. package/lib/features/tool-feedback/css-feedback.d.ts +0 -57
  1154. package/lib/features/tool-feedback/css-feedback.d.ts.map +0 -1
  1155. package/lib/features/tool-feedback/css-feedback.js +0 -118
  1156. package/lib/features/tool-feedback/css-feedback.js.map +0 -1
  1157. package/lib/features/tool-feedback/di.config.d.ts +0 -19
  1158. package/lib/features/tool-feedback/di.config.d.ts.map +0 -1
  1159. package/lib/features/tool-feedback/di.config.js +0 -53
  1160. package/lib/features/tool-feedback/di.config.js.map +0 -1
  1161. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +0 -121
  1162. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +0 -1
  1163. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +0 -333
  1164. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +0 -1
  1165. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +0 -66
  1166. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +0 -1
  1167. package/lib/features/tool-feedback/feedback-action-dispatcher.js +0 -60
  1168. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +0 -1
  1169. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +0 -59
  1170. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +0 -1
  1171. package/lib/features/tool-feedback/marquee-tool-feedback.js +0 -122
  1172. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +0 -1
  1173. package/lib/features/tool-feedback/model.d.ts +0 -22
  1174. package/lib/features/tool-feedback/model.d.ts.map +0 -1
  1175. package/lib/features/tool-feedback/model.js +0 -34
  1176. package/lib/features/tool-feedback/model.js.map +0 -1
  1177. package/lib/features/tool-feedback/view.d.ts +0 -32
  1178. package/lib/features/tool-feedback/view.d.ts.map +0 -1
  1179. package/lib/features/tool-feedback/view.js +0 -83
  1180. package/lib/features/tool-feedback/view.js.map +0 -1
  1181. package/lib/features/tool-palette/di.config.d.ts +0 -20
  1182. package/lib/features/tool-palette/di.config.d.ts.map +0 -1
  1183. package/lib/features/tool-palette/di.config.js +0 -30
  1184. package/lib/features/tool-palette/di.config.js.map +0 -1
  1185. package/lib/features/tools/base-glsp-tool.d.ts +0 -36
  1186. package/lib/features/tools/base-glsp-tool.d.ts.map +0 -1
  1187. package/lib/features/tools/base-glsp-tool.js +0 -55
  1188. package/lib/features/tools/base-glsp-tool.js.map +0 -1
  1189. package/lib/features/tools/change-bounds-tool.d.ts +0 -86
  1190. package/lib/features/tools/change-bounds-tool.d.ts.map +0 -1
  1191. package/lib/features/tools/change-bounds-tool.js +0 -369
  1192. package/lib/features/tools/change-bounds-tool.js.map +0 -1
  1193. package/lib/features/tools/delete-tool.d.ts +0 -52
  1194. package/lib/features/tools/delete-tool.d.ts.map +0 -1
  1195. package/lib/features/tools/delete-tool.js +0 -132
  1196. package/lib/features/tools/delete-tool.js.map +0 -1
  1197. package/lib/features/tools/di.config.d.ts +0 -15
  1198. package/lib/features/tools/di.config.d.ts.map +0 -1
  1199. package/lib/features/tools/di.config.js +0 -66
  1200. package/lib/features/tools/di.config.js.map +0 -1
  1201. package/lib/features/tools/edge-creation-tool.d.ts +0 -52
  1202. package/lib/features/tools/edge-creation-tool.d.ts.map +0 -1
  1203. package/lib/features/tools/edge-creation-tool.js +0 -166
  1204. package/lib/features/tools/edge-creation-tool.js.map +0 -1
  1205. package/lib/features/tools/edge-edit-tool.d.ts +0 -67
  1206. package/lib/features/tools/edge-edit-tool.d.ts.map +0 -1
  1207. package/lib/features/tools/edge-edit-tool.js +0 -283
  1208. package/lib/features/tools/edge-edit-tool.js.map +0 -1
  1209. package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts +0 -26
  1210. package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts.map +0 -1
  1211. package/lib/features/tools/enable-default-tools-on-focus-loss.js +0 -29
  1212. package/lib/features/tools/enable-default-tools-on-focus-loss.js.map +0 -1
  1213. package/lib/features/tools/marquee-behavior.d.ts +0 -42
  1214. package/lib/features/tools/marquee-behavior.d.ts.map +0 -1
  1215. package/lib/features/tools/marquee-behavior.js +0 -128
  1216. package/lib/features/tools/marquee-behavior.js.map +0 -1
  1217. package/lib/features/tools/marquee-behavior.spec.d.ts.map +0 -1
  1218. package/lib/features/tools/marquee-behavior.spec.js.map +0 -1
  1219. package/lib/features/tools/marquee-mouse-tool.d.ts +0 -48
  1220. package/lib/features/tools/marquee-mouse-tool.d.ts.map +0 -1
  1221. package/lib/features/tools/marquee-mouse-tool.js +0 -148
  1222. package/lib/features/tools/marquee-mouse-tool.js.map +0 -1
  1223. package/lib/features/tools/marquee-tool.d.ts +0 -30
  1224. package/lib/features/tools/marquee-tool.d.ts.map +0 -1
  1225. package/lib/features/tools/marquee-tool.js +0 -54
  1226. package/lib/features/tools/marquee-tool.js.map +0 -1
  1227. package/lib/features/tools/model.d.ts +0 -23
  1228. package/lib/features/tools/model.d.ts.map +0 -1
  1229. package/lib/features/tools/model.js +0 -9
  1230. package/lib/features/tools/model.js.map +0 -1
  1231. package/lib/features/tools/node-creation-tool.d.ts +0 -41
  1232. package/lib/features/tools/node-creation-tool.d.ts.map +0 -1
  1233. package/lib/features/tools/node-creation-tool.js +0 -117
  1234. package/lib/features/tools/node-creation-tool.js.map +0 -1
  1235. package/lib/features/tools/view.d.ts +0 -7
  1236. package/lib/features/tools/view.d.ts.map +0 -1
  1237. package/lib/features/tools/view.js +0 -40
  1238. package/lib/features/tools/view.js.map +0 -1
  1239. package/lib/features/validation/di.config.d.ts +0 -10
  1240. package/lib/features/validation/di.config.d.ts.map +0 -1
  1241. package/lib/features/validation/di.config.js +0 -46
  1242. package/lib/features/validation/di.config.js.map +0 -1
  1243. package/lib/features/viewport/di.config.d.ts +0 -19
  1244. package/lib/features/viewport/di.config.d.ts.map +0 -1
  1245. package/lib/features/viewport/di.config.js +0 -34
  1246. package/lib/features/viewport/di.config.js.map +0 -1
  1247. package/lib/lib/model.d.ts +0 -25
  1248. package/lib/lib/model.d.ts.map +0 -1
  1249. package/lib/lib/model.js +0 -18
  1250. package/lib/lib/model.js.map +0 -1
  1251. package/lib/model-source/glsp-diagram-server.d.ts +0 -36
  1252. package/lib/model-source/glsp-diagram-server.d.ts.map +0 -1
  1253. package/lib/model-source/glsp-diagram-server.js +0 -103
  1254. package/lib/model-source/glsp-diagram-server.js.map +0 -1
  1255. package/lib/sprotty-reexport.d.ts +0 -174
  1256. package/lib/sprotty-reexport.d.ts.map +0 -1
  1257. package/lib/sprotty-reexport.js +0 -299
  1258. package/lib/sprotty-reexport.js.map +0 -1
  1259. package/lib/utils/smodel-util.d.ts +0 -147
  1260. package/lib/utils/smodel-util.d.ts.map +0 -1
  1261. package/lib/utils/smodel-util.js +0 -223
  1262. package/lib/utils/smodel-util.js.map +0 -1
  1263. package/lib/views/glsp-edge-view.d.ts +0 -27
  1264. package/lib/views/glsp-edge-view.d.ts.map +0 -1
  1265. package/lib/views/glsp-edge-view.js +0 -55
  1266. package/lib/views/glsp-edge-view.js.map +0 -1
  1267. package/src/base/actions/focus-change-action.ts +0 -43
  1268. package/src/base/actions/sprotty-actions.ts +0 -26
  1269. package/src/base/argumentable.ts +0 -25
  1270. package/src/base/container-modules.ts +0 -113
  1271. package/src/base/di.config.ts +0 -89
  1272. package/src/base/focus-tracker.ts +0 -49
  1273. package/src/base/model/update-model-command.ts +0 -123
  1274. package/src/base/model-initialization-constraint.ts +0 -93
  1275. package/src/base/source-uri-aware.ts +0 -23
  1276. package/src/base/tool-manager/glsp-tool-manager.ts +0 -95
  1277. package/src/base/tool-manager/tool-actions.ts +0 -37
  1278. package/src/base/types.ts +0 -46
  1279. package/src/features/command-palette/di.config.ts +0 -32
  1280. package/src/features/context-menu/di.config.ts +0 -38
  1281. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +0 -73
  1282. package/src/features/copy-paste/di.config.ts +0 -36
  1283. package/src/features/decoration/di.config.ts +0 -26
  1284. package/src/features/edit-label/di.config.ts +0 -29
  1285. package/src/features/edit-label/edit-label-tool.ts +0 -50
  1286. package/src/features/edit-label/edit-label-validator.ts +0 -99
  1287. package/src/features/hints/di.config.ts +0 -29
  1288. package/src/features/hints/type-hints.ts +0 -205
  1289. package/src/features/hover/di.config.ts +0 -66
  1290. package/src/features/layout/di.config.ts +0 -38
  1291. package/src/features/layout/freeform-layout.ts +0 -124
  1292. package/src/features/layout/hbox-layout.ts +0 -256
  1293. package/src/features/layout/vbox-layout.ts +0 -256
  1294. package/src/features/mouse-tool/di.config.ts +0 -27
  1295. package/src/features/mouse-tool/mouse-tool.ts +0 -108
  1296. package/src/features/navigation/di.config.ts +0 -29
  1297. package/src/features/rank/model.ts +0 -29
  1298. package/src/features/save/di.config.ts +0 -28
  1299. package/src/features/save/model.ts +0 -26
  1300. package/src/features/select/di.config.ts +0 -33
  1301. package/src/features/select/select-feedback-action.ts +0 -57
  1302. package/src/features/select/selection-service.spec.ts +0 -380
  1303. package/src/features/select/selection-service.ts +0 -235
  1304. package/src/features/source-model-watcher/di.config.ts +0 -25
  1305. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +0 -280
  1306. package/src/features/tool-feedback/creation-tool-feedback.ts +0 -246
  1307. package/src/features/tool-feedback/css-feedback.ts +0 -104
  1308. package/src/features/tool-feedback/di.config.ts +0 -65
  1309. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +0 -380
  1310. package/src/features/tool-feedback/feedback-action-dispatcher.ts +0 -101
  1311. package/src/features/tool-feedback/marquee-tool-feedback.ts +0 -128
  1312. package/src/features/tool-feedback/model.ts +0 -29
  1313. package/src/features/tool-feedback/view.tsx +0 -77
  1314. package/src/features/tool-palette/di.config.ts +0 -29
  1315. package/src/features/tools/base-glsp-tool.ts +0 -53
  1316. package/src/features/tools/change-bounds-tool.ts +0 -445
  1317. package/src/features/tools/delete-tool.ts +0 -123
  1318. package/src/features/tools/di.config.ts +0 -66
  1319. package/src/features/tools/edge-creation-tool.ts +0 -175
  1320. package/src/features/tools/edge-edit-tool.ts +0 -319
  1321. package/src/features/tools/enable-default-tools-on-focus-loss.ts +0 -33
  1322. package/src/features/tools/marquee-behavior.ts +0 -158
  1323. package/src/features/tools/marquee-mouse-tool.ts +0 -152
  1324. package/src/features/tools/marquee-tool.ts +0 -51
  1325. package/src/features/tools/model.ts +0 -23
  1326. package/src/features/tools/node-creation-tool.ts +0 -116
  1327. package/src/features/tools/view.tsx +0 -43
  1328. package/src/features/validation/di.config.ts +0 -53
  1329. package/src/features/viewport/di.config.ts +0 -46
  1330. package/src/lib/model.ts +0 -27
  1331. package/src/model-source/glsp-diagram-server.ts +0 -110
  1332. package/src/sprotty-reexport.ts +0 -283
  1333. package/src/utils/smodel-util.ts +0 -249
  1334. package/src/views/glsp-edge-view.tsx +0 -79
  1335. /package/lib/{features/select → base}/selection-service.spec.d.ts +0 -0
  1336. /package/lib/features/tools/{marquee-behavior.spec.d.ts → marquee-selection/marquee-behavior.spec.d.ts} +0 -0
  1337. /package/lib/features/tools/{marquee-behavior.spec.js → marquee-selection/marquee-behavior.spec.js} +0 -0
  1338. /package/src/features/tools/{marquee-behavior.spec.ts → marquee-selection/marquee-behavior.spec.ts} +0 -0
@@ -0,0 +1,321 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import {
17
+ BoundsAware,
18
+ distinctAdd,
19
+ EdgeRouterRegistry,
20
+ ElementAndBounds,
21
+ ElementAndRoutingPoints,
22
+ FluentIterable,
23
+ isBoundsAware,
24
+ isMoveable,
25
+ isSelectable,
26
+ isSelected,
27
+ ModelIndexImpl,
28
+ Point,
29
+ remove,
30
+ RoutedPoint,
31
+ Selectable,
32
+ GModelElement,
33
+ GRoutableElement,
34
+ GRoutingHandle,
35
+ TypeGuard,
36
+ GModelElementSchema
37
+ } from '@eclipse-glsp/sprotty';
38
+
39
+ /**
40
+ * Helper type to represent a filter predicate for {@link GModelElement}s. This is used to retrieve
41
+ * elements from the {@link ModelIndexImpl} that also conform to a second type `T`. Its mainly used for
42
+ * retrieving elements that also implement a certain model features (e.g. selectable)
43
+ */
44
+ export type ModelFilterPredicate<T> = (modelElement: GModelElement) => modelElement is GModelElement & T;
45
+
46
+ /**
47
+ * Retrieves all elements from the given {@link ModelIndexImpl} that match the given {@link ModelFilterPredicate}
48
+ * @param index The {@link ModelIndexImpl}.
49
+ * @param predicate The {@link ModelFilterPredicate} that should be used.
50
+ * @returns A {@link FluentIterable} of all indexed element that match the predicate
51
+ * (correctly casted to also include the additional type of the predicate).
52
+ */
53
+ export function filter<T>(index: ModelIndexImpl, predicate: ModelFilterPredicate<T>): FluentIterable<GModelElement & T> {
54
+ return index.all().filter(predicate) as FluentIterable<GModelElement & T>;
55
+ }
56
+
57
+ /**
58
+ * Retrieves all elements from the given {@link ModelIndexImpl} that match the given {@link ModelFilterPredicate} and executes
59
+ * the given runnable for each element of the result set.
60
+ * @param index The {@link ModelIndexImpl}.
61
+ * @param predicate The {@link ModelFilterPredicate} that should be used.
62
+ * @param runnable The runnable that should be executed for each matching element.
63
+ */
64
+ export function forEachElement<T>(
65
+ index: ModelIndexImpl,
66
+ predicate: ModelFilterPredicate<T>,
67
+ runnable: (modelElement: GModelElement & T) => void
68
+ ): void {
69
+ filter(index, predicate).forEach(runnable);
70
+ }
71
+
72
+ /**
73
+ * Retrieves an array of all elements that match the given {@link ModelFilterPredicate} from the given {@link ModelIndexImpl}.
74
+ * @param index The {@link ModelIndexImpl}.
75
+ * @param predicate The {@link ModelFilterPredicate} that should be used.
76
+ * @returns An array of all indexed element that match the predicate
77
+ * (correctly casted to also include the additional type of the predicate).
78
+ */
79
+ export function getMatchingElements<T>(index: ModelIndexImpl, predicate: ModelFilterPredicate<T>): (GModelElement & T)[] {
80
+ return Array.from(filter(index, predicate));
81
+ }
82
+
83
+ /**
84
+ * Invokes the given model index to retrieve the corresponding model elements for the given set of ids. Ids that
85
+ * have no corresponding element in the index will be ignored.
86
+ * @param index THe model index.
87
+ * @param elementsIDs The element ids.
88
+ * @param guard Optional typeguard. If defined only elements that match the guard will be returned.
89
+ * @returns An array of the model elements that correspond to the given ids and filter predicate.
90
+ */
91
+ export function getElements<S extends GModelElement>(index: ModelIndexImpl, elementsIDs: string[], guard?: TypeGuard<S>): S[] {
92
+ // Internal filter function that filters out undefined model elements and runs an optional typeguard check.
93
+ const filterFn = (element?: GModelElement): element is S => {
94
+ if (element !== undefined) {
95
+ return guard ? guard(element) : true;
96
+ }
97
+ return false;
98
+ };
99
+ return elementsIDs.map(id => index.getById(id)).filter(filterFn);
100
+ }
101
+ /**
102
+ * Retrieves the amount of currently selected elements in the given {@link ModelIndexImpl}.
103
+ * @param index The {@link ModelIndexImpl}.
104
+ * @returns The amount of selected elements.
105
+ */
106
+ export function getSelectedElementCount(index: ModelIndexImpl): number {
107
+ let selected = 0;
108
+ forEachElement(index, isSelected, element => selected++);
109
+ return selected;
110
+ }
111
+
112
+ /**
113
+ * Helper function to check wether an any element is selected in the given {@link ModelIndexImpl}.
114
+ * @param index The {@link ModelIndexImpl}.
115
+ * @returns `true` if at least one element is selected, `false` otherwise.
116
+ */
117
+ export function hasSelectedElements(index: ModelIndexImpl): boolean {
118
+ return getSelectedElementCount(index) > 0;
119
+ }
120
+
121
+ /**
122
+ * Helper function to check wether an element is defined. Can be used as {@link ModelFilterPredicate}.
123
+ * @param element The element that should be checked.
124
+ * @returns the type predicate for `T`
125
+ */
126
+ export function isNotUndefined<T>(element: T | undefined): element is T {
127
+ return element !== undefined;
128
+ }
129
+
130
+ /**
131
+ * Adds a set of css classes to the given {@link GModelElement}.
132
+ * @param element The element to which the css classes should be added.
133
+ * @param cssClasses The set of css classes as string array.
134
+ */
135
+ export function addCssClasses(element: GModelElement, cssClasses: string[]): void {
136
+ const elementCssClasses: string[] = element.cssClasses ?? [];
137
+ distinctAdd(elementCssClasses, ...cssClasses);
138
+ element.cssClasses = elementCssClasses;
139
+ }
140
+
141
+ /**
142
+ * Removes a set of css classes from the given {@link GModelElement}.
143
+ * @param element The element from which the css classes should be removed.
144
+ * @param cssClasses The set of css classes as string array.
145
+ */
146
+ export function removeCssClasses(root: GModelElement, cssClasses: string[]): void {
147
+ if (!root.cssClasses || root.cssClasses.length === 0) {
148
+ return;
149
+ }
150
+ remove(root.cssClasses, ...cssClasses);
151
+ }
152
+
153
+ export function isNonRoutableSelectedMovableBoundsAware(element: GModelElement): element is SelectableBoundsAware {
154
+ return isNonRoutableSelectedBoundsAware(element) && isMoveable(element);
155
+ }
156
+
157
+ /**
158
+ * A typeguard function to check wether a given {@link GModelElement} implements the {@link BoundsAware} model feature,
159
+ * the {@link Selectable} model feature and is actually selected. In addition, the element must not be a {@link GRoutableElement}.
160
+ * @param element The element to check.
161
+ * @returns A type predicate indicating wether the element is of type {@link SelectableBoundsAware}.
162
+ */
163
+ export function isNonRoutableSelectedBoundsAware(element: GModelElement): element is SelectableBoundsAware {
164
+ return isBoundsAware(element) && isSelected(element) && !isRoutable(element);
165
+ }
166
+
167
+ /**
168
+ * A type guard function to check wether a given {@link GModelElement} is a {@link GRoutableElement}.
169
+ * @param element The element to check.
170
+ * @returns A type predicate indicating wether the element is a {@link GRoutableElement}.
171
+ */
172
+ export function isRoutable<T extends GModelElement>(element: T): element is T & GRoutableElement {
173
+ return element instanceof GRoutableElement && (element as any).routingPoints !== undefined;
174
+ }
175
+
176
+ /**
177
+ * A typeguard function to check wether a given {@link GModelElement} is a {@link SRoutingHandle}.
178
+ * @param element The element to check.
179
+ * @returns A type predicate indicating wether the element is a {@link SRoutingHandle}
180
+ */
181
+ export function isRoutingHandle(element: GModelElement | undefined): element is GRoutingHandle {
182
+ return element !== undefined && element instanceof GRoutingHandle;
183
+ }
184
+
185
+ /**
186
+ * A typeguard function to check wether a given {@link GModelElement} implements the {@link Selectable} model feature and
187
+ * the {@link BoundsAware} model feature.
188
+ * @returns A type predicate indicating wether the element is of type {@link SelectableBoundsAware}.
189
+ */
190
+ export function isSelectableAndBoundsAware(element: GModelElement): element is SelectableBoundsAware {
191
+ return isSelectable(element) && isBoundsAware(element);
192
+ }
193
+
194
+ /**
195
+ * Union type to describe {@link GModelElement}s that implement the {@link Selectable} and {@link BoundsAware} feature.
196
+ */
197
+ export type SelectableBoundsAware = GModelElement & BoundsAware & Selectable;
198
+
199
+ /**
200
+ * Union type to describe {@link GModelElement}s that implement the {@link BoundsAware} feature.
201
+ */
202
+ export type BoundsAwareModelElement = GModelElement & BoundsAware;
203
+
204
+ /**
205
+ * Helper function to translate a given {@link GModelElement} into its corresponding {@link ElementAndBounds} representation.
206
+ * @param element The element to translate.
207
+ * @returns The corresponding {@link ElementAndBounds} for the given element.
208
+ */
209
+ export function toElementAndBounds(element: BoundsAwareModelElement): ElementAndBounds {
210
+ return {
211
+ elementId: element.id,
212
+ newPosition: {
213
+ x: element.bounds.x,
214
+ y: element.bounds.y
215
+ },
216
+ newSize: {
217
+ width: element.bounds.width,
218
+ height: element.bounds.height
219
+ }
220
+ };
221
+ }
222
+
223
+ /**
224
+ * Helper function to translate a given {@link GRoutableElement} into its corresponding
225
+ * {@link ElementAndRoutingPoints} representation.
226
+ * @param element The element to translate.
227
+ * @returns The corresponding {@link ElementAndRoutingPoints} for the given element.
228
+ */
229
+ export function toElementAndRoutingPoints(element: GRoutableElement): ElementAndRoutingPoints {
230
+ return {
231
+ elementId: element.id,
232
+ newRoutingPoints: element.routingPoints
233
+ };
234
+ }
235
+ /** All routing points. */
236
+ export const ALL_ROUTING_POINTS = undefined;
237
+
238
+ /** Pure routing point data kinds. */
239
+ export const ROUTING_POINT_KINDS = ['linear', 'bezier-junction'];
240
+
241
+ /** Pure route data kinds. */
242
+ export const ROUTE_KINDS = [...ROUTING_POINT_KINDS, 'source', 'target'];
243
+
244
+ /**
245
+ * Helper function to calculate the {@link ElementAndRoutingPoints} for a given {@link GRoutableElement}.
246
+ * If client layout is activated, i.e., the edge routing registry is given and has a router for the element, then the routing
247
+ * points from the calculated route are used, otherwise we use the already specified routing points of the {@link GRoutableElement}.
248
+ * @param element The element to translate.
249
+ * @param routerRegistry the edge router registry.
250
+ * @returns The corresponding {@link ElementAndRoutingPoints} for the given element.
251
+ */
252
+ export function calcElementAndRoutingPoints(element: GRoutableElement, routerRegistry?: EdgeRouterRegistry): ElementAndRoutingPoints {
253
+ const newRoutingPoints = routerRegistry ? calcRoute(element, routerRegistry, ROUTING_POINT_KINDS) : element.routingPoints;
254
+ return { elementId: element.id, newRoutingPoints };
255
+ }
256
+
257
+ /**
258
+ * Helper function to calculate the route for a given {@link GRoutableElement}.
259
+ * If client layout is activated, i.e., the edge routing registry is given and has a router for the element, then the points
260
+ * from the calculated route are used, otherwise we use the already specified routing points of the {@link GRoutableElement}.
261
+ * @param element The element to translate.
262
+ * @param routerRegistry the edge router registry.
263
+ * @returns The corresponding route for the given element.
264
+ */
265
+ export function calcElementAndRoute(element: GRoutableElement, routerRegistry?: EdgeRouterRegistry): ElementAndRoutingPoints {
266
+ let route: Point[] | undefined = routerRegistry ? calcRoute(element, routerRegistry, ROUTE_KINDS) : undefined;
267
+ if (!route) {
268
+ // add source and target to the routing points
269
+ route = [...element.routingPoints];
270
+ route.splice(0, 0, element.source?.position || Point.ORIGIN);
271
+ route.push(element.target?.position || Point.ORIGIN);
272
+ }
273
+ return { elementId: element.id, newRoutingPoints: route };
274
+ }
275
+
276
+ /**
277
+ * Helper function to calculate the route for a given {@link GRoutableElement} by filtering duplicate points.
278
+ * @param element The element to translate.
279
+ * @param routerRegistry the edge router registry.
280
+ * @param pointKinds the routing point kinds that should be considered.
281
+ * @param tolerance the tolerance applied to a point's coordinates to determine duplicates.
282
+ * @returns The corresponding route for the given element.
283
+ */
284
+ export function calcRoute(
285
+ element: GRoutableElement,
286
+ routerRegistry: EdgeRouterRegistry,
287
+ pointKinds: string[] | undefined = ALL_ROUTING_POINTS,
288
+ tolerance = Number.EPSILON
289
+ ): RoutedPoint[] | undefined {
290
+ const route = routerRegistry.get(element.routerKind).route(element);
291
+ const calculatedRoute: RoutedPoint[] = [];
292
+ for (const point of route) {
293
+ // only include points we are actually interested in
294
+ if (pointKinds && !pointKinds.includes(point.kind)) {
295
+ continue;
296
+ }
297
+ // check if we are a duplicate based on coordinates in the already calculated route
298
+ if (
299
+ ROUTING_POINT_KINDS.includes(point.kind) &&
300
+ calculatedRoute.find(calculatedPoint => Point.maxDistance(point, calculatedPoint) < tolerance)
301
+ ) {
302
+ continue;
303
+ }
304
+ calculatedRoute.push(point);
305
+ }
306
+ return calculatedRoute;
307
+ }
308
+
309
+ /**
310
+ * Convenience function to retrieve the model element type from a given input. The input
311
+ * can either be a {@link GModelElement}, {@link GModelElementSchema} or a string.
312
+ * @param input The type input.
313
+ * @returns The corresponding model type as string.
314
+ */
315
+ export function getElementTypeId(input: GModelElement | GModelElementSchema | string): string {
316
+ if (typeof input === 'string') {
317
+ return input;
318
+ } else {
319
+ return input.type;
320
+ }
321
+ }
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2020 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2020-2022 EclipseSource and others.
2
+ * Copyright (c) 2020-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -13,11 +13,19 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Dimension, ElementAndBounds, Point, Writable } from '@eclipse-glsp/protocol';
17
- import { BoundsAware, ElementMove, ModelLayoutOptions, SModelElement } from 'sprotty';
16
+ import {
17
+ BoundsAware,
18
+ Dimension,
19
+ ElementAndBounds,
20
+ ElementMove,
21
+ ModelLayoutOptions,
22
+ Point,
23
+ GModelElement,
24
+ Writable
25
+ } from '@eclipse-glsp/sprotty';
18
26
  import { IMovementRestrictor } from '../features/change-bounds/movement-restrictor';
19
27
 
20
- export function minWidth(element: SModelElement & BoundsAware): number {
28
+ export function minWidth(element: GModelElement & BoundsAware): number {
21
29
  const layoutOptions = getLayoutOptions(element);
22
30
  if (layoutOptions !== undefined && typeof layoutOptions.minWidth === 'number') {
23
31
  return layoutOptions.minWidth;
@@ -25,7 +33,7 @@ export function minWidth(element: SModelElement & BoundsAware): number {
25
33
  return 1;
26
34
  }
27
35
 
28
- export function minHeight(element: SModelElement & BoundsAware): number {
36
+ export function minHeight(element: GModelElement & BoundsAware): number {
29
37
  const layoutOptions = getLayoutOptions(element);
30
38
  if (layoutOptions !== undefined && typeof layoutOptions.minHeight === 'number') {
31
39
  return layoutOptions.minHeight;
@@ -33,7 +41,7 @@ export function minHeight(element: SModelElement & BoundsAware): number {
33
41
  return 1;
34
42
  }
35
43
 
36
- export function getLayoutOptions(element: SModelElement): ModelLayoutOptions | undefined {
44
+ export function getLayoutOptions(element: GModelElement): ModelLayoutOptions | undefined {
37
45
  const layoutOptions = (element as any).layoutOptions;
38
46
  if (layoutOptions !== undefined) {
39
47
  return layoutOptions as ModelLayoutOptions;
@@ -41,11 +49,11 @@ export function getLayoutOptions(element: SModelElement): ModelLayoutOptions | u
41
49
  return undefined;
42
50
  }
43
51
 
44
- export function isValidSize(element: SModelElement & BoundsAware, size: Dimension): boolean {
52
+ export function isValidSize(element: GModelElement & BoundsAware, size: Dimension): boolean {
45
53
  return size.width >= minWidth(element) && size.height >= minHeight(element);
46
54
  }
47
55
 
48
- export function isValidMove(element: SModelElement & BoundsAware, newPosition?: Point, movementRestrictor?: IMovementRestrictor): boolean {
56
+ export function isValidMove(element: GModelElement & BoundsAware, newPosition?: Point, movementRestrictor?: IMovementRestrictor): boolean {
49
57
  if (movementRestrictor) {
50
58
  return movementRestrictor.validate(element, newPosition);
51
59
  }
@@ -53,7 +61,7 @@ export function isValidMove(element: SModelElement & BoundsAware, newPosition?:
53
61
  }
54
62
 
55
63
  export function toValidElementMove(
56
- element: SModelElement & BoundsAware,
64
+ element: GModelElement & BoundsAware,
57
65
  move: ElementMove,
58
66
  movementRestrictor?: IMovementRestrictor
59
67
  ): ElementMove | undefined {
@@ -64,7 +72,7 @@ export function toValidElementMove(
64
72
  }
65
73
 
66
74
  export function toValidElementAndBounds(
67
- element: SModelElement & BoundsAware,
75
+ element: GModelElement & BoundsAware,
68
76
  bounds: Writable<ElementAndBounds>,
69
77
  movementRestrictor?: IMovementRestrictor
70
78
  ): ElementAndBounds | undefined {
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2021 EclipseSource and others.
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -13,24 +13,24 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { MarkerKind } from '@eclipse-glsp/protocol';
17
- import { SIssueMarker, SParentElement } from 'sprotty';
16
+ import { GParentElement, MarkerKind } from '@eclipse-glsp/sprotty';
17
+ import { GIssueMarker } from '../features/validation/issue-marker';
18
18
 
19
19
  export namespace MarkerPredicates {
20
20
  export const ALL = (): boolean => true;
21
- export const ERRORS = (marker: SIssueMarker): boolean => hasIssueWithSeverity(marker, MarkerKind.ERROR);
22
- export const WARNINGS = (marker: SIssueMarker): boolean => hasIssueWithSeverity(marker, MarkerKind.WARNING);
23
- export const INFOS = (marker: SIssueMarker): boolean => hasIssueWithSeverity(marker, MarkerKind.INFO);
21
+ export const ERRORS = (marker: GIssueMarker): boolean => hasIssueWithSeverity(marker, MarkerKind.ERROR);
22
+ export const WARNINGS = (marker: GIssueMarker): boolean => hasIssueWithSeverity(marker, MarkerKind.WARNING);
23
+ export const INFOS = (marker: GIssueMarker): boolean => hasIssueWithSeverity(marker, MarkerKind.INFO);
24
24
 
25
- export function hasIssueWithSeverity(marker: SIssueMarker, severity: 'info' | 'warning' | 'error'): boolean {
25
+ export function hasIssueWithSeverity(marker: GIssueMarker, severity: 'info' | 'warning' | 'error'): boolean {
26
26
  return marker.issues.find(issue => issue.severity === severity) !== undefined;
27
27
  }
28
28
  }
29
29
 
30
- export function collectIssueMarkers(root: SParentElement): SIssueMarker[] {
30
+ export function collectIssueMarkers(root: GParentElement): GIssueMarker[] {
31
31
  const markers = [];
32
32
  for (const child of root.children) {
33
- if (child instanceof SIssueMarker) {
33
+ if (child instanceof GIssueMarker) {
34
34
  markers.push(child);
35
35
  }
36
36
  markers.push(...collectIssueMarkers(child));
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2022 EclipseSource and others.
2
+ * Copyright (c) 2019-2023 EclipseSource and others.
3
3
  *
4
4
  * This program and the accompanying materials are made available under the
5
5
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -14,8 +14,21 @@
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
16
 
17
- import { Bounds, Dimension, Point, Viewport } from '@eclipse-glsp/protocol';
18
- import { BoundsAware, findParentByFeature, isAlignable, isViewport, SModelElement, translateBounds } from 'sprotty';
17
+ import {
18
+ Bounds,
19
+ BoundsAware,
20
+ Dimension,
21
+ GChildElement,
22
+ Point,
23
+ GModelElement,
24
+ Viewport,
25
+ findParentByFeature,
26
+ isAlignable,
27
+ isBoundsAware,
28
+ isViewport,
29
+ translateBounds
30
+ } from '@eclipse-glsp/sprotty';
31
+ import { BoundsAwareModelElement } from './gmodel-util';
19
32
 
20
33
  /**
21
34
  * Return the position corresponding to this mouse event (Browser coordinates)
@@ -30,9 +43,12 @@ import { BoundsAware, findParentByFeature, isAlignable, isViewport, SModelElemen
30
43
  * @param mouseEvent
31
44
  * A mouseEvent
32
45
  */
33
- export function getAbsolutePosition(target: SModelElement, mouseEvent: MouseEvent): Point {
34
- let xPos = mouseEvent.pageX;
35
- let yPos = mouseEvent.pageY;
46
+ export function getAbsolutePosition(target: GModelElement, mouseEvent: MouseEvent): Point {
47
+ return getAbsolutePositionByPoint(target, { x: mouseEvent.pageX, y: mouseEvent.pageY });
48
+ }
49
+ export function getAbsolutePositionByPoint(target: GModelElement, point: Point): Point {
50
+ let xPos = point.x;
51
+ let yPos = point.y;
36
52
  const canvasBounds = target.root.canvasBounds;
37
53
  xPos -= canvasBounds.x;
38
54
  yPos -= canvasBounds.y;
@@ -60,7 +76,7 @@ export function getAbsolutePosition(target: SModelElement, mouseEvent: MouseEven
60
76
  *
61
77
  * @param target A bounds-aware element from the diagram
62
78
  */
63
- export function toAbsoluteBounds(element: SModelElement & BoundsAware): Bounds {
79
+ export function toAbsoluteBounds(element: GModelElement & BoundsAware): Bounds {
64
80
  const location = isAlignable(element) ? element.alignment : Point.ORIGIN;
65
81
  const x = location.x;
66
82
  const y = location.y;
@@ -75,7 +91,7 @@ export function toAbsoluteBounds(element: SModelElement & BoundsAware): Bounds {
75
91
  *
76
92
  * @param target A bounds-aware element from the diagram
77
93
  */
78
- export function toAbsolutePosition(target: SModelElement & BoundsAware): Point {
94
+ export function toAbsolutePosition(target: GModelElement & BoundsAware): Point {
79
95
  return toAbsoluteBounds(target);
80
96
  }
81
97
 
@@ -85,6 +101,35 @@ export function toAbsolutePosition(target: SModelElement & BoundsAware): Point {
85
101
  *
86
102
  * @param target A bounds-aware element from the diagram
87
103
  */
88
- export function toAbsoluteSize(target: SModelElement & BoundsAware): Dimension {
104
+ export function toAbsoluteSize(target: GModelElement & BoundsAware): Dimension {
89
105
  return toAbsoluteBounds(target);
90
106
  }
107
+
108
+ /**
109
+ * Convert a point, specified in absolute coordinates, to a point relative
110
+ * to the parent of the specified child element.
111
+ *
112
+ * @param element the child element
113
+ * @param absolutePoint a point in absolute coordinates
114
+ * @returns the equivalent point, relative to the element's parent coordinates
115
+ */
116
+ export function absoluteToParent(element: BoundsAwareModelElement & GChildElement, absolutePoint: Point): Point {
117
+ if (isBoundsAware(element.parent)) {
118
+ return absoluteToLocal(element.parent, absolutePoint);
119
+ }
120
+ // If the parent is not bounds-aware, assume it's at 0; 0 and proceed
121
+ return absoluteToLocal(element, absolutePoint);
122
+ }
123
+
124
+ /**
125
+ * Convert a point, specified in absolute coordinates, to a point relative
126
+ * to the specified element.
127
+ *
128
+ * @param element the element
129
+ * @param absolutePoint a point in absolute coordinates
130
+ * @returns the equivalent point, relative to the element's coordinates
131
+ */
132
+ export function absoluteToLocal(element: BoundsAwareModelElement, absolutePoint: Point): Point {
133
+ const absoluteElementBounds = toAbsoluteBounds(element);
134
+ return { x: absolutePoint.x - absoluteElementBounds.x, y: absolutePoint.y - absoluteElementBounds.y };
135
+ }