@eclipse-glsp/client 0.9.0-next.f54fd689 → 0.9.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 (625) hide show
  1. package/LICENSE +642 -277
  2. package/README.md +4 -2
  3. package/css/command-palette.css +9 -5
  4. package/css/decoration.css +3 -2
  5. package/css/glsp-sprotty.css +20 -7
  6. package/css/tool-palette.css +44 -27
  7. package/lib/base/action-dispatcher.d.ts +18 -2
  8. package/lib/base/action-dispatcher.d.ts.map +1 -1
  9. package/lib/base/action-dispatcher.js +41 -61
  10. package/lib/base/action-dispatcher.js.map +1 -1
  11. package/lib/{features/model-source-watcher/model-source-changed-action.d.ts → base/actions/focus-change-action.d.ts} +7 -7
  12. package/lib/base/actions/focus-change-action.d.ts.map +1 -0
  13. package/lib/base/actions/focus-change-action.js +16 -0
  14. package/lib/base/actions/focus-change-action.js.map +1 -0
  15. package/lib/base/argumentable.d.ts +22 -0
  16. package/lib/base/argumentable.d.ts.map +1 -0
  17. package/lib/base/argumentable.js +8 -0
  18. package/lib/base/argumentable.js.map +1 -0
  19. package/lib/base/auto-complete/auto-complete-actions.d.ts +1 -1
  20. package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
  21. package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
  22. package/lib/base/auto-complete/auto-complete-widget.d.ts +12 -12
  23. package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
  24. package/lib/base/auto-complete/auto-complete-widget.js +121 -152
  25. package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
  26. package/lib/base/auto-complete/validation-decorator.d.ts +3 -18
  27. package/lib/base/auto-complete/validation-decorator.d.ts.map +1 -1
  28. package/lib/base/auto-complete/validation-decorator.js +49 -65
  29. package/lib/base/auto-complete/validation-decorator.js.map +1 -1
  30. package/lib/base/command-stack.d.ts +1 -1
  31. package/lib/base/command-stack.d.ts.map +1 -1
  32. package/lib/base/command-stack.js +19 -37
  33. package/lib/base/command-stack.js.map +1 -1
  34. package/lib/base/container-modules.d.ts +40 -0
  35. package/lib/base/container-modules.d.ts.map +1 -0
  36. package/lib/base/container-modules.js +100 -0
  37. package/lib/base/container-modules.js.map +1 -0
  38. package/lib/base/di.config.d.ts +13 -3
  39. package/lib/base/di.config.d.ts.map +1 -1
  40. package/lib/base/di.config.js +52 -31
  41. package/lib/base/di.config.js.map +1 -1
  42. package/lib/base/drag-aware-mouse-listener.d.ts +3 -2
  43. package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
  44. package/lib/base/drag-aware-mouse-listener.js +23 -62
  45. package/lib/base/drag-aware-mouse-listener.js.map +1 -1
  46. package/lib/base/editor-context-service.d.ts +42 -0
  47. package/lib/base/editor-context-service.d.ts.map +1 -0
  48. package/lib/base/editor-context-service.js +109 -0
  49. package/lib/base/editor-context-service.js.map +1 -0
  50. package/lib/{features/undo-redo/model.d.ts → base/focus-tracker.d.ts} +10 -12
  51. package/lib/base/focus-tracker.d.ts.map +1 -0
  52. package/lib/base/focus-tracker.js +50 -0
  53. package/lib/base/focus-tracker.js.map +1 -0
  54. package/lib/base/model/model-registry.d.ts +5 -0
  55. package/lib/base/model/model-registry.d.ts.map +1 -0
  56. package/lib/base/model/model-registry.js +43 -0
  57. package/lib/base/model/model-registry.js.map +1 -0
  58. package/lib/base/model/update-model-command.d.ts +20 -6
  59. package/lib/base/model/update-model-command.d.ts.map +1 -1
  60. package/lib/base/model/update-model-command.js +69 -94
  61. package/lib/base/model/update-model-command.js.map +1 -1
  62. package/lib/base/model-initialization-constraint.d.ts +17 -2
  63. package/lib/base/model-initialization-constraint.d.ts.map +1 -1
  64. package/lib/base/model-initialization-constraint.js +34 -54
  65. package/lib/base/model-initialization-constraint.js.map +1 -1
  66. package/lib/base/selection-clearing-mouse-listener.d.ts +1 -1
  67. package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -1
  68. package/lib/base/selection-clearing-mouse-listener.js +11 -28
  69. package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
  70. package/lib/base/source-uri-aware.js +2 -5
  71. package/lib/base/source-uri-aware.js.map +1 -1
  72. package/lib/base/tool-manager/glsp-tool-manager.d.ts +2 -2
  73. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
  74. package/lib/base/tool-manager/glsp-tool-manager.js +59 -141
  75. package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
  76. package/lib/base/types.d.ts +3 -1
  77. package/lib/base/types.d.ts.map +1 -1
  78. package/lib/base/types.js +23 -21
  79. package/lib/base/types.js.map +1 -1
  80. package/lib/base/view/view-registry.d.ts +5 -0
  81. package/lib/base/view/view-registry.d.ts.map +1 -0
  82. package/lib/base/view/view-registry.js +43 -0
  83. package/lib/base/view/view-registry.js.map +1 -0
  84. package/lib/features/change-bounds/model.d.ts +4 -2
  85. package/lib/features/change-bounds/model.d.ts.map +1 -1
  86. package/lib/features/change-bounds/model.js +21 -32
  87. package/lib/features/change-bounds/model.js.map +1 -1
  88. package/lib/features/change-bounds/movement-restrictor.d.ts +18 -2
  89. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
  90. package/lib/features/change-bounds/movement-restrictor.js +34 -46
  91. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  92. package/lib/features/change-bounds/snap.d.ts +17 -1
  93. package/lib/features/change-bounds/snap.d.ts.map +1 -1
  94. package/lib/features/change-bounds/snap.js +13 -39
  95. package/lib/features/change-bounds/snap.js.map +1 -1
  96. package/lib/features/command-palette/command-palette-tool.d.ts +1 -1
  97. package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -1
  98. package/lib/features/command-palette/command-palette-tool.js +30 -38
  99. package/lib/features/command-palette/command-palette-tool.js.map +1 -1
  100. package/lib/features/command-palette/di.config.d.ts +2 -2
  101. package/lib/features/command-palette/di.config.js +6 -6
  102. package/lib/features/command-palette/di.config.js.map +1 -1
  103. package/lib/features/command-palette/server-command-palette-provider.d.ts +19 -3
  104. package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
  105. package/lib/features/command-palette/server-command-palette-provider.js +31 -36
  106. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
  107. package/lib/features/context-menu/delete-element-context-menu.d.ts +2 -2
  108. package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
  109. package/lib/features/context-menu/delete-element-context-menu.js +24 -72
  110. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
  111. package/lib/features/context-menu/di.config.d.ts +2 -2
  112. package/lib/features/context-menu/di.config.d.ts.map +1 -1
  113. package/lib/features/context-menu/di.config.js +14 -18
  114. package/lib/features/context-menu/di.config.js.map +1 -1
  115. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +2 -2
  116. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
  117. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +29 -67
  118. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
  119. package/lib/features/context-menu/server-context-menu-provider.d.ts +19 -3
  120. package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
  121. package/lib/features/context-menu/server-context-menu-provider.js +31 -32
  122. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  123. package/lib/features/copy-paste/copy-paste-context-menu.d.ts +22 -2
  124. package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
  125. package/lib/features/copy-paste/copy-paste-context-menu.js +99 -72
  126. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  127. package/lib/features/copy-paste/copy-paste-handler.d.ts +21 -4
  128. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
  129. package/lib/features/copy-paste/copy-paste-handler.js +70 -70
  130. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  131. package/lib/features/copy-paste/di.config.d.ts +2 -2
  132. package/lib/features/copy-paste/di.config.d.ts.map +1 -1
  133. package/lib/features/copy-paste/di.config.js +11 -11
  134. package/lib/features/copy-paste/di.config.js.map +1 -1
  135. package/lib/features/decoration/decoration-placer.d.ts +17 -1
  136. package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
  137. package/lib/features/decoration/decoration-placer.js +14 -47
  138. package/lib/features/decoration/decoration-placer.js.map +1 -1
  139. package/lib/features/decoration/di.config.d.ts +2 -2
  140. package/lib/features/decoration/di.config.d.ts.map +1 -1
  141. package/lib/features/decoration/di.config.js +4 -6
  142. package/lib/features/decoration/di.config.js.map +1 -1
  143. package/lib/features/edit-label/di.config.d.ts +1 -1
  144. package/lib/features/edit-label/di.config.js +7 -7
  145. package/lib/features/edit-label/di.config.js.map +1 -1
  146. package/lib/features/edit-label/edit-label-tool.d.ts +2 -2
  147. package/lib/features/edit-label/edit-label-tool.js +20 -43
  148. package/lib/features/edit-label/edit-label-tool.js.map +1 -1
  149. package/lib/features/edit-label/edit-label-validator.d.ts +18 -3
  150. package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
  151. package/lib/features/edit-label/edit-label-validator.js +40 -62
  152. package/lib/features/edit-label/edit-label-validator.js.map +1 -1
  153. package/lib/features/hints/di.config.d.ts +1 -16
  154. package/lib/features/hints/di.config.d.ts.map +1 -1
  155. package/lib/features/hints/di.config.js +9 -9
  156. package/lib/features/hints/di.config.js.map +1 -1
  157. package/lib/features/hints/model.d.ts +3 -2
  158. package/lib/features/hints/model.d.ts.map +1 -1
  159. package/lib/features/hints/model.js +2 -2
  160. package/lib/features/hints/model.js.map +1 -1
  161. package/lib/features/hints/type-hints.d.ts +21 -49
  162. package/lib/features/hints/type-hints.d.ts.map +1 -1
  163. package/lib/features/hints/type-hints.js +83 -142
  164. package/lib/features/hints/type-hints.js.map +1 -1
  165. package/lib/features/hover/di.config.d.ts +2 -2
  166. package/lib/features/hover/di.config.d.ts.map +1 -1
  167. package/lib/features/hover/di.config.js +9 -7
  168. package/lib/features/hover/di.config.js.map +1 -1
  169. package/lib/features/hover/hover.d.ts +18 -2
  170. package/lib/features/hover/hover.d.ts.map +1 -1
  171. package/lib/features/hover/hover.js +37 -75
  172. package/lib/features/hover/hover.js.map +1 -1
  173. package/lib/features/layout/di.config.d.ts +2 -2
  174. package/lib/features/layout/di.config.d.ts.map +1 -1
  175. package/lib/features/layout/di.config.js +11 -7
  176. package/lib/features/layout/di.config.js.map +1 -1
  177. package/lib/features/layout/freeform-layout.d.ts +16 -0
  178. package/lib/features/layout/freeform-layout.d.ts.map +1 -0
  179. package/lib/features/layout/freeform-layout.js +107 -0
  180. package/lib/features/layout/freeform-layout.js.map +1 -0
  181. package/lib/features/layout/layout-commands.d.ts +26 -10
  182. package/lib/features/layout/layout-commands.d.ts.map +1 -1
  183. package/lib/features/layout/layout-commands.js +189 -264
  184. package/lib/features/layout/layout-commands.js.map +1 -1
  185. package/lib/features/layout/layout-commands.spec.d.ts +2 -17
  186. package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
  187. package/lib/features/layout/layout-commands.spec.js +124 -117
  188. package/lib/features/layout/layout-commands.spec.js.map +1 -1
  189. package/lib/features/layout/vbox-layout.d.ts +25 -0
  190. package/lib/features/layout/vbox-layout.d.ts.map +1 -0
  191. package/lib/features/layout/vbox-layout.js +188 -0
  192. package/lib/features/layout/vbox-layout.js.map +1 -0
  193. package/lib/features/model-source-watcher/di.config.d.ts +1 -16
  194. package/lib/features/model-source-watcher/di.config.d.ts.map +1 -1
  195. package/lib/features/model-source-watcher/di.config.js +7 -7
  196. package/lib/features/model-source-watcher/di.config.js.map +1 -1
  197. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +17 -2
  198. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -1
  199. package/lib/features/model-source-watcher/model-source-changed-action-handler.js +38 -46
  200. package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -1
  201. package/lib/features/mouse-tool/di.config.d.ts +1 -1
  202. package/lib/features/mouse-tool/di.config.js +5 -5
  203. package/lib/features/mouse-tool/di.config.js.map +1 -1
  204. package/lib/features/mouse-tool/mouse-tool.d.ts +3 -2
  205. package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
  206. package/lib/features/mouse-tool/mouse-tool.js +74 -217
  207. package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
  208. package/lib/features/navigation/di.config.d.ts +1 -16
  209. package/lib/features/navigation/di.config.d.ts.map +1 -1
  210. package/lib/features/navigation/di.config.js +11 -10
  211. package/lib/features/navigation/di.config.js.map +1 -1
  212. package/lib/features/navigation/navigation-action-handler.d.ts +19 -39
  213. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
  214. package/lib/features/navigation/navigation-action-handler.js +118 -255
  215. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  216. package/lib/features/navigation/navigation-target-resolver.d.ts +18 -40
  217. package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
  218. package/lib/features/navigation/navigation-target-resolver.js +46 -188
  219. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  220. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +2 -17
  221. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
  222. package/lib/features/navigation/navigation-target-resolver.spec.js +27 -26
  223. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
  224. package/lib/features/rank/model.d.ts +2 -2
  225. package/lib/features/rank/model.d.ts.map +1 -1
  226. package/lib/features/rank/model.js +2 -2
  227. package/lib/features/rank/model.js.map +1 -1
  228. package/lib/features/reconnect/model.d.ts +2 -2
  229. package/lib/features/reconnect/model.d.ts.map +1 -1
  230. package/lib/features/reconnect/model.js +10 -28
  231. package/lib/features/reconnect/model.js.map +1 -1
  232. package/lib/features/save/di.config.d.ts +2 -2
  233. package/lib/features/save/di.config.d.ts.map +1 -1
  234. package/lib/features/save/di.config.js +6 -6
  235. package/lib/features/save/di.config.js.map +1 -1
  236. package/lib/features/save/model.d.ts +1 -1
  237. package/lib/features/save/{save.d.ts → save-keylistener.d.ts} +4 -8
  238. package/lib/features/save/save-keylistener.d.ts.map +1 -0
  239. package/lib/{utils/array-utils.js → features/save/save-keylistener.js} +14 -19
  240. package/lib/features/save/save-keylistener.js.map +1 -0
  241. package/lib/features/select/di.config.d.ts +1 -1
  242. package/lib/features/select/di.config.js +11 -11
  243. package/lib/features/select/di.config.js.map +1 -1
  244. package/lib/features/select/select-feedback-action.d.ts +1 -1
  245. package/lib/features/select/select-feedback-action.d.ts.map +1 -1
  246. package/lib/features/select/select-feedback-action.js +45 -71
  247. package/lib/features/select/select-feedback-action.js.map +1 -1
  248. package/lib/features/select/select-mouse-listener.d.ts +2 -2
  249. package/lib/features/select/select-mouse-listener.js +7 -23
  250. package/lib/features/select/select-mouse-listener.js.map +1 -1
  251. package/lib/features/select/selection-service.d.ts +19 -3
  252. package/lib/features/select/selection-service.d.ts.map +1 -1
  253. package/lib/features/select/selection-service.js +134 -236
  254. package/lib/features/select/selection-service.js.map +1 -1
  255. package/lib/features/select/selection-service.spec.js +96 -138
  256. package/lib/features/select/selection-service.spec.js.map +1 -1
  257. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +21 -4
  258. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
  259. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +117 -149
  260. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
  261. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +19 -2
  262. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
  263. package/lib/features/tool-feedback/creation-tool-feedback.js +81 -115
  264. package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
  265. package/lib/features/tool-feedback/css-feedback.d.ts +24 -5
  266. package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
  267. package/lib/features/tool-feedback/css-feedback.js +40 -82
  268. package/lib/features/tool-feedback/css-feedback.js.map +1 -1
  269. package/lib/features/tool-feedback/di.config.d.ts +2 -2
  270. package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
  271. package/lib/features/tool-feedback/di.config.js +27 -24
  272. package/lib/features/tool-feedback/di.config.js.map +1 -1
  273. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +21 -4
  274. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
  275. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +160 -204
  276. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
  277. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +19 -3
  278. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
  279. package/lib/features/tool-feedback/feedback-action-dispatcher.js +35 -72
  280. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
  281. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +48 -0
  282. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -0
  283. package/lib/features/tool-feedback/marquee-tool-feedback.js +96 -0
  284. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -0
  285. package/lib/features/tool-feedback/model.d.ts +2 -2
  286. package/lib/features/tool-feedback/model.js +11 -27
  287. package/lib/features/tool-feedback/model.js.map +1 -1
  288. package/lib/features/tool-feedback/view.d.ts +22 -6
  289. package/lib/features/tool-feedback/view.d.ts.map +1 -1
  290. package/lib/features/tool-feedback/view.js +30 -51
  291. package/lib/features/tool-feedback/view.js.map +1 -1
  292. package/lib/features/tool-palette/di.config.d.ts +2 -2
  293. package/lib/features/tool-palette/di.config.d.ts.map +1 -1
  294. package/lib/features/tool-palette/di.config.js +6 -6
  295. package/lib/features/tool-palette/di.config.js.map +1 -1
  296. package/lib/features/tool-palette/palette-item.d.ts +2 -3
  297. package/lib/features/tool-palette/palette-item.d.ts.map +1 -1
  298. package/lib/features/tool-palette/palette-item.js +6 -6
  299. package/lib/features/tool-palette/palette-item.js.map +1 -1
  300. package/lib/features/tool-palette/tool-palette.d.ts +23 -6
  301. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  302. package/lib/features/tool-palette/tool-palette.js +229 -286
  303. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  304. package/lib/features/tools/base-glsp-tool.d.ts +21 -5
  305. package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
  306. package/lib/features/tools/base-glsp-tool.js +37 -59
  307. package/lib/features/tools/base-glsp-tool.js.map +1 -1
  308. package/lib/features/tools/change-bounds-tool.d.ts +26 -9
  309. package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
  310. package/lib/features/tools/change-bounds-tool.js +192 -241
  311. package/lib/features/tools/change-bounds-tool.js.map +1 -1
  312. package/lib/features/tools/delete-tool.d.ts +20 -4
  313. package/lib/features/tools/delete-tool.d.ts.map +1 -1
  314. package/lib/features/tools/delete-tool.js +71 -104
  315. package/lib/features/tools/delete-tool.js.map +1 -1
  316. package/lib/features/tools/di.config.d.ts +5 -16
  317. package/lib/features/tools/di.config.d.ts.map +1 -1
  318. package/lib/features/tools/di.config.js +26 -13
  319. package/lib/features/tools/di.config.js.map +1 -1
  320. package/lib/features/tools/edge-creation-tool.d.ts +20 -5
  321. package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
  322. package/lib/features/tools/edge-creation-tool.js +64 -89
  323. package/lib/features/tools/edge-creation-tool.js.map +1 -1
  324. package/lib/features/tools/edge-edit-tool.d.ts +22 -6
  325. package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
  326. package/lib/features/tools/edge-edit-tool.js +125 -189
  327. package/lib/features/tools/edge-edit-tool.js.map +1 -1
  328. package/lib/features/tools/marquee-behavior.d.ts +42 -0
  329. package/lib/features/tools/marquee-behavior.d.ts.map +1 -0
  330. package/lib/features/tools/marquee-behavior.js +128 -0
  331. package/lib/features/tools/marquee-behavior.js.map +1 -0
  332. package/{src/base/args.ts → lib/features/tools/marquee-behavior.spec.d.ts} +3 -2
  333. package/lib/features/tools/marquee-behavior.spec.d.ts.map +1 -0
  334. package/lib/features/tools/marquee-behavior.spec.js +165 -0
  335. package/lib/features/tools/marquee-behavior.spec.js.map +1 -0
  336. package/lib/features/tools/marquee-mouse-tool.d.ts +48 -0
  337. package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -0
  338. package/lib/features/tools/marquee-mouse-tool.js +148 -0
  339. package/lib/features/tools/marquee-mouse-tool.js.map +1 -0
  340. package/lib/features/tools/marquee-tool.d.ts +30 -0
  341. package/lib/features/tools/marquee-tool.d.ts.map +1 -0
  342. package/lib/features/tools/marquee-tool.js +54 -0
  343. package/lib/features/tools/marquee-tool.js.map +1 -0
  344. package/lib/features/tools/model.d.ts +22 -0
  345. package/lib/features/tools/model.d.ts.map +1 -0
  346. package/lib/features/tools/model.js +24 -0
  347. package/lib/features/tools/model.js.map +1 -0
  348. package/lib/features/tools/node-creation-tool.d.ts +20 -5
  349. package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
  350. package/lib/features/tools/node-creation-tool.js +60 -90
  351. package/lib/features/tools/node-creation-tool.js.map +1 -1
  352. package/lib/features/tools/view.d.ts +7 -0
  353. package/lib/features/tools/view.d.ts.map +1 -0
  354. package/lib/features/tools/view.js +40 -0
  355. package/lib/features/tools/view.js.map +1 -0
  356. package/lib/features/validation/di.config.d.ts +1 -1
  357. package/lib/features/validation/di.config.js +12 -12
  358. package/lib/features/validation/di.config.js.map +1 -1
  359. package/lib/features/validation/issue-marker.d.ts +3 -3
  360. package/lib/features/validation/issue-marker.d.ts.map +1 -1
  361. package/lib/features/validation/issue-marker.js +18 -56
  362. package/lib/features/validation/issue-marker.js.map +1 -1
  363. package/lib/features/validation/marker-navigator.d.ts +19 -3
  364. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  365. package/lib/features/validation/marker-navigator.js +131 -164
  366. package/lib/features/validation/marker-navigator.js.map +1 -1
  367. package/lib/features/validation/marker-navigator.spec.d.ts +2 -17
  368. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
  369. package/lib/features/validation/marker-navigator.spec.js +84 -77
  370. package/lib/features/validation/marker-navigator.spec.js.map +1 -1
  371. package/lib/features/validation/validate.d.ts +20 -31
  372. package/lib/features/validation/validate.d.ts.map +1 -1
  373. package/lib/features/validation/validate.js +148 -299
  374. package/lib/features/validation/validate.js.map +1 -1
  375. package/lib/{base/args.d.ts → features/viewport/di.config.d.ts} +5 -5
  376. package/lib/features/viewport/di.config.d.ts.map +1 -0
  377. package/lib/features/viewport/di.config.js +34 -0
  378. package/lib/features/viewport/di.config.js.map +1 -0
  379. package/{src/features/model-source-watcher/model-source-changed-action.ts → lib/features/viewport/glsp-scroll-mouse-listener.d.ts} +8 -11
  380. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -0
  381. package/lib/features/viewport/glsp-scroll-mouse-listener.js +39 -0
  382. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -0
  383. package/lib/index.d.ts +37 -35
  384. package/lib/index.d.ts.map +1 -1
  385. package/lib/index.js +39 -35
  386. package/lib/index.js.map +1 -1
  387. package/lib/lib/model.d.ts +3 -3
  388. package/lib/lib/model.d.ts.map +1 -1
  389. package/lib/lib/model.js +11 -27
  390. package/lib/lib/model.js.map +1 -1
  391. package/lib/model-source/glsp-diagram-server.d.ts +4 -6
  392. package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
  393. package/lib/model-source/glsp-diagram-server.js +63 -122
  394. package/lib/model-source/glsp-diagram-server.js.map +1 -1
  395. package/lib/protocol-reexport.d.ts +45 -0
  396. package/lib/protocol-reexport.d.ts.map +1 -0
  397. package/lib/protocol-reexport.js +75 -0
  398. package/lib/protocol-reexport.js.map +1 -0
  399. package/lib/utils/argument-utils.d.ts +50 -0
  400. package/lib/utils/argument-utils.d.ts.map +1 -0
  401. package/lib/utils/argument-utils.js +110 -0
  402. package/lib/utils/argument-utils.js.map +1 -0
  403. package/lib/utils/html-utils.js +2 -2
  404. package/lib/utils/html-utils.js.map +1 -1
  405. package/lib/utils/layout-utils.d.ts +4 -3
  406. package/lib/utils/layout-utils.d.ts.map +1 -1
  407. package/lib/utils/layout-utils.js +5 -5
  408. package/lib/utils/layout-utils.js.map +1 -1
  409. package/lib/utils/marker.d.ts +1 -39
  410. package/lib/utils/marker.d.ts.map +1 -1
  411. package/lib/utils/marker.js +14 -61
  412. package/lib/utils/marker.js.map +1 -1
  413. package/lib/utils/smodel-util.d.ts +7 -17
  414. package/lib/utils/smodel-util.d.ts.map +1 -1
  415. package/lib/utils/smodel-util.js +18 -67
  416. package/lib/utils/smodel-util.js.map +1 -1
  417. package/lib/utils/viewpoint-util.d.ts +3 -2
  418. package/lib/utils/viewpoint-util.d.ts.map +1 -1
  419. package/lib/utils/viewpoint-util.js +15 -30
  420. package/lib/utils/viewpoint-util.js.map +1 -1
  421. package/lib/views/base-view-module.d.ts +9 -0
  422. package/lib/views/base-view-module.d.ts.map +1 -0
  423. package/lib/views/base-view-module.js +59 -0
  424. package/lib/views/base-view-module.js.map +1 -0
  425. package/lib/views/compartments.d.ts +6 -0
  426. package/lib/views/compartments.d.ts.map +1 -0
  427. package/lib/views/compartments.js +43 -0
  428. package/lib/views/compartments.js.map +1 -0
  429. package/lib/views/glsp-edge-view.d.ts +27 -0
  430. package/lib/views/glsp-edge-view.d.ts.map +1 -0
  431. package/lib/views/glsp-edge-view.js +55 -0
  432. package/lib/views/glsp-edge-view.js.map +1 -0
  433. package/lib/views/index.d.ts +22 -0
  434. package/lib/views/index.d.ts.map +1 -0
  435. package/lib/views/index.js +34 -0
  436. package/lib/views/index.js.map +1 -0
  437. package/lib/views/issue-marker-view.d.ts +9 -0
  438. package/lib/views/issue-marker-view.d.ts.map +1 -0
  439. package/lib/views/issue-marker-view.js +68 -0
  440. package/lib/views/issue-marker-view.js.map +1 -0
  441. package/lib/views/rounded-corner-view.d.ts +13 -0
  442. package/lib/views/rounded-corner-view.d.ts.map +1 -0
  443. package/lib/views/rounded-corner-view.js +82 -0
  444. package/lib/views/rounded-corner-view.js.map +1 -0
  445. package/lib/views/rounded-corner.d.ts +38 -0
  446. package/lib/views/rounded-corner.d.ts.map +1 -0
  447. package/lib/views/rounded-corner.js +62 -0
  448. package/lib/views/rounded-corner.js.map +1 -0
  449. package/package.json +27 -34
  450. package/src/base/action-dispatcher.ts +7 -8
  451. package/src/{utils/array-utils.ts → base/actions/focus-change-action.ts} +8 -16
  452. package/src/{features/undo-redo/model.ts → base/argumentable.ts} +7 -8
  453. package/src/base/auto-complete/auto-complete-actions.ts +2 -2
  454. package/src/base/auto-complete/auto-complete-widget.ts +73 -57
  455. package/src/base/auto-complete/validation-decorator.ts +21 -15
  456. package/src/base/command-stack.ts +4 -7
  457. package/src/base/container-modules.ts +112 -0
  458. package/src/base/di.config.ts +47 -25
  459. package/src/base/drag-aware-mouse-listener.ts +7 -8
  460. package/src/base/{editor-context.ts → editor-context-service.ts} +13 -40
  461. package/src/base/focus-tracker.ts +48 -0
  462. package/src/base/model/model-registry.ts +31 -0
  463. package/src/base/model/update-model-command.ts +14 -22
  464. package/src/base/model-initialization-constraint.ts +16 -11
  465. package/src/base/selection-clearing-mouse-listener.ts +4 -3
  466. package/src/base/tool-manager/glsp-tool-manager.ts +12 -14
  467. package/src/base/types.ts +23 -21
  468. package/src/base/view/view-registry.ts +31 -0
  469. package/src/features/change-bounds/model.ts +23 -13
  470. package/src/features/change-bounds/movement-restrictor.ts +28 -18
  471. package/src/features/change-bounds/snap.ts +6 -5
  472. package/src/features/command-palette/command-palette-tool.ts +4 -4
  473. package/src/features/command-palette/di.config.ts +7 -7
  474. package/src/features/command-palette/server-command-palette-provider.ts +16 -14
  475. package/src/features/context-menu/delete-element-context-menu.ts +10 -11
  476. package/src/features/context-menu/di.config.ts +10 -12
  477. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +8 -7
  478. package/src/features/context-menu/server-context-menu-provider.ts +13 -10
  479. package/src/features/copy-paste/copy-paste-context-menu.ts +66 -37
  480. package/src/features/copy-paste/copy-paste-handler.ts +30 -20
  481. package/src/features/copy-paste/di.config.ts +6 -7
  482. package/src/features/decoration/decoration-placer.ts +6 -15
  483. package/src/features/decoration/di.config.ts +4 -6
  484. package/src/features/edit-label/di.config.ts +5 -5
  485. package/src/features/edit-label/edit-label-tool.ts +4 -4
  486. package/src/features/edit-label/edit-label-validator.ts +18 -19
  487. package/src/features/hints/di.config.ts +6 -7
  488. package/src/features/hints/model.ts +7 -6
  489. package/src/features/hints/type-hints.ts +46 -113
  490. package/src/features/hover/di.config.ts +7 -7
  491. package/src/features/hover/hover.ts +11 -14
  492. package/src/features/layout/di.config.ts +10 -6
  493. package/src/features/layout/freeform-layout.ts +133 -0
  494. package/src/features/layout/layout-commands.spec.ts +104 -85
  495. package/src/features/layout/layout-commands.ts +65 -54
  496. package/src/features/layout/vbox-layout.ts +256 -0
  497. package/src/features/model-source-watcher/di.config.ts +5 -6
  498. package/src/features/model-source-watcher/model-source-changed-action-handler.ts +16 -12
  499. package/src/features/mouse-tool/di.config.ts +4 -4
  500. package/src/features/mouse-tool/mouse-tool.ts +44 -32
  501. package/src/features/navigation/di.config.ts +6 -12
  502. package/src/features/navigation/navigation-action-handler.ts +46 -78
  503. package/src/features/navigation/navigation-target-resolver.spec.ts +6 -9
  504. package/src/features/navigation/navigation-target-resolver.ts +16 -94
  505. package/src/features/rank/model.ts +3 -3
  506. package/src/features/reconnect/model.ts +9 -11
  507. package/src/features/save/di.config.ts +4 -5
  508. package/src/features/save/model.ts +1 -1
  509. package/src/features/save/{save.ts → save-keylistener.ts} +4 -8
  510. package/src/features/select/di.config.ts +6 -6
  511. package/src/features/select/select-feedback-action.ts +6 -8
  512. package/src/features/select/select-mouse-listener.ts +2 -2
  513. package/src/features/select/selection-service.spec.ts +25 -19
  514. package/src/features/select/selection-service.ts +25 -22
  515. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +56 -39
  516. package/src/features/tool-feedback/creation-tool-feedback.ts +49 -24
  517. package/src/features/tool-feedback/css-feedback.ts +19 -14
  518. package/src/features/tool-feedback/di.config.ts +15 -14
  519. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +56 -35
  520. package/src/features/tool-feedback/feedback-action-dispatcher.ts +13 -14
  521. package/src/features/tool-feedback/marquee-tool-feedback.ts +103 -0
  522. package/src/features/tool-feedback/model.ts +2 -3
  523. package/src/features/tool-feedback/view.tsx +20 -13
  524. package/src/features/tool-palette/di.config.ts +5 -7
  525. package/src/features/tool-palette/palette-item.ts +5 -7
  526. package/src/features/tool-palette/tool-palette.ts +126 -107
  527. package/src/features/tools/base-glsp-tool.ts +12 -12
  528. package/src/features/tools/change-bounds-tool.ts +83 -53
  529. package/src/features/tools/delete-tool.ts +23 -20
  530. package/src/features/tools/di.config.ts +22 -11
  531. package/src/features/tools/edge-creation-tool.ts +20 -25
  532. package/src/features/tools/edge-edit-tool.ts +43 -46
  533. package/src/features/tools/marquee-behavior.spec.ts +175 -0
  534. package/src/features/tools/marquee-behavior.ts +158 -0
  535. package/src/features/tools/marquee-mouse-tool.ts +153 -0
  536. package/src/features/tools/marquee-tool.ts +51 -0
  537. package/src/features/tools/model.ts +22 -0
  538. package/src/features/tools/node-creation-tool.ts +18 -22
  539. package/src/features/tools/view.tsx +44 -0
  540. package/src/features/validation/di.config.ts +5 -5
  541. package/src/features/validation/issue-marker.ts +4 -5
  542. package/src/features/validation/marker-navigator.spec.ts +38 -33
  543. package/src/features/validation/marker-navigator.ts +39 -26
  544. package/src/features/validation/validate.ts +25 -59
  545. package/src/features/viewport/di.config.ts +47 -0
  546. package/src/features/viewport/glsp-scroll-mouse-listener.ts +41 -0
  547. package/src/index.ts +57 -37
  548. package/src/lib/model.ts +4 -4
  549. package/src/model-source/glsp-diagram-server.ts +19 -33
  550. package/src/protocol-reexport.ts +64 -0
  551. package/src/utils/argument-utils.ts +130 -0
  552. package/src/utils/layout-utils.ts +19 -11
  553. package/src/utils/marker.ts +8 -32
  554. package/src/utils/smodel-util.ts +28 -22
  555. package/src/utils/viewpoint-util.ts +5 -6
  556. package/src/views/base-view-module.ts +97 -0
  557. package/src/views/compartments.tsx +37 -0
  558. package/src/views/glsp-edge-view.tsx +79 -0
  559. package/{lib/utils/array-utils.d.ts → src/views/index.ts} +7 -4
  560. package/src/views/issue-marker-view.tsx +65 -0
  561. package/src/views/rounded-corner-view.tsx +103 -0
  562. package/src/views/rounded-corner.ts +87 -0
  563. package/lib/base/actions/context-actions.d.ts +0 -36
  564. package/lib/base/actions/context-actions.d.ts.map +0 -1
  565. package/lib/base/actions/context-actions.js +0 -51
  566. package/lib/base/actions/context-actions.js.map +0 -1
  567. package/lib/base/actions/edit-mode-action.d.ts +0 -13
  568. package/lib/base/actions/edit-mode-action.d.ts.map +0 -1
  569. package/lib/base/actions/edit-mode-action.js +0 -56
  570. package/lib/base/actions/edit-mode-action.js.map +0 -1
  571. package/lib/base/actions/edit-validation-actions.d.ts +0 -78
  572. package/lib/base/actions/edit-validation-actions.d.ts.map +0 -1
  573. package/lib/base/actions/edit-validation-actions.js +0 -82
  574. package/lib/base/actions/edit-validation-actions.js.map +0 -1
  575. package/lib/base/actions/protocol-actions.d.ts +0 -41
  576. package/lib/base/actions/protocol-actions.d.ts.map +0 -1
  577. package/lib/base/actions/protocol-actions.js +0 -151
  578. package/lib/base/actions/protocol-actions.js.map +0 -1
  579. package/lib/base/args.d.ts.map +0 -1
  580. package/lib/base/args.js +0 -3
  581. package/lib/base/args.js.map +0 -1
  582. package/lib/base/editor-context.d.ts +0 -46
  583. package/lib/base/editor-context.d.ts.map +0 -1
  584. package/lib/base/editor-context.js +0 -174
  585. package/lib/base/editor-context.js.map +0 -1
  586. package/lib/base/operations/operation.d.ts +0 -129
  587. package/lib/base/operations/operation.d.ts.map +0 -1
  588. package/lib/base/operations/operation.js +0 -201
  589. package/lib/base/operations/operation.js.map +0 -1
  590. package/lib/features/copy-paste/copy-paste-actions.d.ts +0 -50
  591. package/lib/features/copy-paste/copy-paste-actions.d.ts.map +0 -1
  592. package/lib/features/copy-paste/copy-paste-actions.js +0 -68
  593. package/lib/features/copy-paste/copy-paste-actions.js.map +0 -1
  594. package/lib/features/decoration/view.d.ts +0 -8
  595. package/lib/features/decoration/view.d.ts.map +0 -1
  596. package/lib/features/decoration/view.js +0 -80
  597. package/lib/features/decoration/view.js.map +0 -1
  598. package/lib/features/hints/request-type-hints-action.d.ts +0 -32
  599. package/lib/features/hints/request-type-hints-action.d.ts.map +0 -1
  600. package/lib/features/hints/request-type-hints-action.js +0 -30
  601. package/lib/features/hints/request-type-hints-action.js.map +0 -1
  602. package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +0 -1
  603. package/lib/features/model-source-watcher/model-source-changed-action.js +0 -17
  604. package/lib/features/model-source-watcher/model-source-changed-action.js.map +0 -1
  605. package/lib/features/save/save.d.ts.map +0 -1
  606. package/lib/features/save/save.js +0 -57
  607. package/lib/features/save/save.js.map +0 -1
  608. package/lib/features/undo-redo/model.d.ts.map +0 -1
  609. package/lib/features/undo-redo/model.js +0 -22
  610. package/lib/features/undo-redo/model.js.map +0 -1
  611. package/lib/model-source/glsp-server-status.d.ts +0 -30
  612. package/lib/model-source/glsp-server-status.d.ts.map +0 -1
  613. package/lib/model-source/glsp-server-status.js +0 -61
  614. package/lib/model-source/glsp-server-status.js.map +0 -1
  615. package/lib/utils/array-utils.d.ts.map +0 -1
  616. package/lib/utils/array-utils.js.map +0 -1
  617. package/src/base/actions/context-actions.ts +0 -43
  618. package/src/base/actions/edit-mode-action.ts +0 -33
  619. package/src/base/actions/edit-validation-actions.ts +0 -102
  620. package/src/base/actions/protocol-actions.ts +0 -82
  621. package/src/base/operations/operation.ts +0 -148
  622. package/src/features/copy-paste/copy-paste-actions.ts +0 -60
  623. package/src/features/decoration/view.tsx +0 -54
  624. package/src/features/hints/request-type-hints-action.ts +0 -36
  625. package/src/model-source/glsp-server-status.ts +0 -38
@@ -5,94 +5,57 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
7
7
  };
8
- var __read = (this && this.__read) || function (o, n) {
9
- var m = typeof Symbol === "function" && o[Symbol.iterator];
10
- if (!m) return o;
11
- var i = m.call(o), r, ar = [], e;
12
- try {
13
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
14
- }
15
- catch (error) { e = { error: error }; }
16
- finally {
17
- try {
18
- if (r && !r.done && (m = i["return"])) m.call(i);
19
- }
20
- finally { if (e) throw e.error; }
21
- }
22
- return ar;
23
- };
24
- var __spread = (this && this.__spread) || function () {
25
- for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
26
- return ar;
27
- };
28
8
  Object.defineProperty(exports, "__esModule", { value: true });
29
- /********************************************************************************
30
- * Copyright (c) 2020 EclipseSource and others.
31
- *
32
- * This program and the accompanying materials are made available under the
33
- * terms of the Eclipse Public License v. 2.0 which is available at
34
- * http://www.eclipse.org/legal/epl-2.0.
35
- *
36
- * This Source Code may also be made available under the following Secondary
37
- * Licenses when the conditions for such availability set forth in the Eclipse
38
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
39
- * with the GNU Classpath Exception which is available at
40
- * https://www.gnu.org/software/classpath/license.html.
41
- *
42
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
43
- ********************************************************************************/
44
- var chai_1 = require("chai");
45
- var inversify_1 = require("inversify");
46
- var sprotty_1 = require("sprotty");
47
- var types_1 = require("../../base/types");
48
- var selection_service_1 = require("./selection-service");
49
- var MockFeedbackActionDispatcher = /** @class */ (function () {
50
- function MockFeedbackActionDispatcher() {
51
- this.feedbackEmitters = new Map;
9
+ const chai_1 = require("chai");
10
+ const inversify_1 = require("inversify");
11
+ const sprotty_1 = require("sprotty");
12
+ const types_1 = require("../../base/types");
13
+ const selection_service_1 = require("./selection-service");
14
+ let MockFeedbackActionDispatcher = class MockFeedbackActionDispatcher {
15
+ constructor() {
16
+ this.feedbackEmitters = new Map();
52
17
  }
53
- MockFeedbackActionDispatcher.prototype.registerFeedback = function (feedbackEmitter, actions) {
18
+ registerFeedback(feedbackEmitter, actions) {
54
19
  this.feedbackEmitters.set(feedbackEmitter, actions);
55
- };
56
- MockFeedbackActionDispatcher.prototype.deregisterFeedback = function (feedbackEmitter, actions) {
20
+ }
21
+ deregisterFeedback(feedbackEmitter, actions) {
57
22
  this.feedbackEmitters.delete(feedbackEmitter);
58
- };
59
- MockFeedbackActionDispatcher.prototype.getRegisteredFeedback = function () {
60
- var result = [];
61
- this.feedbackEmitters.forEach(function (value, key) { return result.push.apply(result, __spread(value)); });
23
+ }
24
+ getRegisteredFeedback() {
25
+ const result = [];
26
+ this.feedbackEmitters.forEach((value, key) => result.push(...value));
62
27
  return result;
63
- };
64
- MockFeedbackActionDispatcher.prototype.getSingleFeedbackAction = function () {
65
- var actions = this.getRegisteredFeedback();
28
+ }
29
+ getSingleFeedbackAction() {
30
+ const actions = this.getRegisteredFeedback();
66
31
  return actions.length === 1 ? actions[0] : undefined;
67
- };
68
- MockFeedbackActionDispatcher = __decorate([
69
- inversify_1.injectable()
70
- ], MockFeedbackActionDispatcher);
71
- return MockFeedbackActionDispatcher;
72
- }());
73
- var MockSelectionListener = /** @class */ (function () {
74
- function MockSelectionListener() {
32
+ }
33
+ };
34
+ MockFeedbackActionDispatcher = __decorate([
35
+ inversify_1.injectable()
36
+ ], MockFeedbackActionDispatcher);
37
+ class MockSelectionListener {
38
+ constructor() {
75
39
  this.called = 0;
76
40
  this.selectedElements = [];
77
41
  }
78
- MockSelectionListener.prototype.selectionChanged = function (newRoot, selectedElements) {
42
+ selectionChanged(newRoot, selectedElements) {
79
43
  this.called++;
80
44
  this.root = newRoot;
81
45
  this.selectedElements = selectedElements;
82
- };
83
- MockSelectionListener.prototype.getRoot = function () {
46
+ }
47
+ getRoot() {
84
48
  return this.root;
85
- };
86
- MockSelectionListener.prototype.getSelectedElements = function () {
49
+ }
50
+ getSelectedElements() {
87
51
  return this.selectedElements;
88
- };
89
- MockSelectionListener.prototype.getCalled = function () {
52
+ }
53
+ getCalled() {
90
54
  return this.called;
91
- };
92
- return MockSelectionListener;
93
- }());
55
+ }
56
+ }
94
57
  function createContainer() {
95
- var container = new inversify_1.Container();
58
+ const container = new inversify_1.Container();
96
59
  container.load(sprotty_1.defaultModule);
97
60
  container.rebind(sprotty_1.TYPES.IModelFactory).to(sprotty_1.SGraphFactory).inSingletonScope();
98
61
  container.bind(types_1.GLSP_TYPES.IFeedbackActionDispatcher).to(MockFeedbackActionDispatcher).inSingletonScope();
@@ -100,46 +63,46 @@ function createContainer() {
100
63
  container.bind(types_1.GLSP_TYPES.SelectionService).toService(selection_service_1.SelectionService);
101
64
  return container;
102
65
  }
103
- describe('SelectionService', function () {
104
- var graphFactory;
105
- var root;
106
- var selectionService;
107
- var feedbackDispatcher;
108
- beforeEach(function () {
109
- var container = createContainer();
66
+ describe('SelectionService', () => {
67
+ let graphFactory;
68
+ let root;
69
+ let selectionService;
70
+ let feedbackDispatcher;
71
+ beforeEach(() => {
72
+ const container = createContainer();
110
73
  graphFactory = container.get(sprotty_1.TYPES.IModelFactory);
111
74
  root = createRoot('node1', 'node2', 'node3', 'node4', 'node5');
112
75
  selectionService = container.get(types_1.GLSP_TYPES.SelectionService);
113
76
  feedbackDispatcher = container.get(types_1.GLSP_TYPES.IFeedbackActionDispatcher);
114
77
  });
115
- describe('Initial State', function () {
116
- it('On creation nothing should be selected and no feedback should be dispatched.', function () {
78
+ describe('Initial State', () => {
79
+ it('On creation nothing should be selected and no feedback should be dispatched.', () => {
117
80
  assertSelectionAndFeedback([], []);
118
81
  });
119
82
  });
120
- describe('Single Selection', function () {
121
- it('Selecting a single element should be tracked correctly and trigger feedback.', function () {
83
+ describe('Single Selection', () => {
84
+ it('Selecting a single element should be tracked correctly and trigger feedback.', () => {
122
85
  assertSelectionAndFeedback([], []);
123
86
  selectionService.updateSelection(root, ['node1'], []);
124
87
  assertSelectionAndFeedback(['node1'], []);
125
88
  });
126
- it('Selecting the same element twice in one operation should not make a difference.', function () {
89
+ it('Selecting the same element twice in one operation should not make a difference.', () => {
127
90
  assertSelectionAndFeedback([], []);
128
91
  selectionService.updateSelection(root, ['node1', 'node1'], []);
129
92
  assertSelectionAndFeedback(['node1'], []);
130
93
  });
131
- it('Selecting and then deselecting the same element should result in an empty selection.', function () {
94
+ it('Selecting and then deselecting the same element should result in an empty selection.', () => {
132
95
  assertSelectionAndFeedback([], []);
133
96
  selectionService.updateSelection(root, ['node1'], []);
134
97
  selectionService.updateSelection(root, [], ['node1']);
135
98
  assertSelectionAndFeedback([], ['node1']);
136
99
  });
137
- it('Selecting and deselecting the same element in the same operation should have no effect.', function () {
100
+ it('Selecting and deselecting the same element in the same operation should have no effect.', () => {
138
101
  assertSelectionAndFeedback([], []);
139
102
  selectionService.updateSelection(root, ['node1'], ['node1']);
140
103
  assertSelectionAndFeedback([], []);
141
104
  });
142
- it('Selecting and deselecting not-existing nodes should have no effect.', function () {
105
+ it('Selecting and deselecting not-existing nodes should have no effect.', () => {
143
106
  assertSelectionAndFeedback([], []);
144
107
  selectionService.updateSelection(root, ['not-existing'], []);
145
108
  assertSelectionAndFeedback([], []);
@@ -147,43 +110,43 @@ describe('SelectionService', function () {
147
110
  assertSelectionAndFeedback([], []);
148
111
  });
149
112
  });
150
- describe('Multi Selection', function () {
151
- it('Selecting multiple elements should be tracked correctly and trigger feedback.', function () {
113
+ describe('Multi Selection', () => {
114
+ it('Selecting multiple elements should be tracked correctly and trigger feedback.', () => {
152
115
  assertSelectionAndFeedback([], []);
153
116
  selectionService.updateSelection(root, ['node1', 'node2'], []);
154
117
  assertSelectionAndFeedback(['node1', 'node2'], []);
155
118
  });
156
- it('Selecting multiple elements should have the selection order in the dispatched feedback.', function () {
119
+ it('Selecting multiple elements should have the selection order in the dispatched feedback.', () => {
157
120
  assertSelectionAndFeedback([], []);
158
121
  selectionService.updateSelection(root, ['node2', 'node1'], []);
159
- chai_1.expect(function () { return assertSelectionAndFeedback(['node1', 'node2'], []); }).to.throw(chai_1.AssertionError, 'ordered members');
122
+ chai_1.expect(() => assertSelectionAndFeedback(['node1', 'node2'], [])).to.throw(chai_1.AssertionError, 'ordered members');
160
123
  });
161
- it('Selecting the same elements twice in one operation should not make a difference.', function () {
124
+ it('Selecting the same elements twice in one operation should not make a difference.', () => {
162
125
  assertSelectionAndFeedback([], []);
163
126
  selectionService.updateSelection(root, ['node1', 'node1', 'node2', 'node2'], []);
164
127
  assertSelectionAndFeedback(['node1', 'node2'], []);
165
128
  });
166
- it('Selecting and then deselecting the same elements should result in an empty selection.', function () {
129
+ it('Selecting and then deselecting the same elements should result in an empty selection.', () => {
167
130
  assertSelectionAndFeedback([], []);
168
131
  selectionService.updateSelection(root, ['node1', 'node2'], []);
169
132
  selectionService.updateSelection(root, [], ['node1', 'node2']);
170
133
  assertSelectionAndFeedback([], ['node1', 'node2']);
171
134
  });
172
- it('Selecting and deselecting the same elements in one operation should have no effect.', function () {
135
+ it('Selecting and deselecting the same elements in one operation should have no effect.', () => {
173
136
  assertSelectionAndFeedback([], []);
174
137
  selectionService.updateSelection(root, ['node1', 'node2'], ['node1', 'node2']);
175
138
  assertSelectionAndFeedback([], []);
176
139
  selectionService.updateSelection(root, ['node1', 'node2', 'node3'], ['node1', 'node2']);
177
140
  assertSelectionAndFeedback(['node3'], []);
178
141
  });
179
- it('Selecting three elements and deselecting one should result in two selected and one deselected element.', function () {
142
+ it('Selecting three elements and deselecting one should result in two selected and one deselected element.', () => {
180
143
  assertSelectionAndFeedback([], []);
181
144
  selectionService.updateSelection(root, ['node1', 'node2', 'node3'], []);
182
145
  assertSelectionAndFeedback(['node1', 'node2', 'node3'], []);
183
146
  selectionService.updateSelection(root, [], ['node2']);
184
147
  assertSelectionAndFeedback(['node1', 'node3'], ['node2']);
185
148
  });
186
- it('A series of selection and deselection operations should be tracked correctly.', function () {
149
+ it('A series of selection and deselection operations should be tracked correctly.', () => {
187
150
  assertSelectionAndFeedback([], []);
188
151
  selectionService.updateSelection(root, ['node1', 'node2', 'node3'], []);
189
152
  assertSelectionAndFeedback(['node1', 'node2', 'node3'], []);
@@ -195,49 +158,49 @@ describe('SelectionService', function () {
195
158
  assertSelectionAndFeedback(['node1', 'node3'], ['node4']);
196
159
  });
197
160
  });
198
- describe('Changing Root', function () {
199
- it('Changing root deselects all selected elements if there are no matching elements.', function () {
161
+ describe('Changing Root', () => {
162
+ it('Changing root deselects all selected elements if there are no matching elements.', () => {
200
163
  assertSelectionAndFeedback([], []);
201
164
  selectionService.updateSelection(root, ['node1'], []);
202
165
  assertSelectionAndFeedback(['node1'], []);
203
- var newRoot = createRoot('newNode1', 'newNode2', 'newNode3');
166
+ const newRoot = createRoot('newNode1', 'newNode2', 'newNode3');
204
167
  selectionService.modelRootChanged(newRoot);
205
168
  assertSelectionAndFeedback([], ['node1']);
206
169
  });
207
- it('Changing root keeps selected elements if there are matching elements.', function () {
170
+ it('Changing root keeps selected elements if there are matching elements.', () => {
208
171
  assertSelectionAndFeedback([], []);
209
172
  selectionService.updateSelection(root, ['node1', 'node2'], []);
210
173
  assertSelectionAndFeedback(['node1', 'node2'], []);
211
- var newRoot = createRoot('node1', 'newNode2', 'newNode3');
174
+ const newRoot = createRoot('node1', 'newNode2', 'newNode3');
212
175
  selectionService.modelRootChanged(newRoot);
213
176
  assertSelectionAndFeedback(['node1'], ['node2']);
214
177
  });
215
- it('Changing root with new selection correctly selects matchting elements and deselects not matching elements.', function () {
178
+ it('Changing root with new selection correctly selects matchting elements and deselects not matching elements.', () => {
216
179
  assertSelectionAndFeedback([], []);
217
180
  selectionService.updateSelection(root, ['node1', 'node2'], []);
218
181
  assertSelectionAndFeedback(['node1', 'node2'], []);
219
- var newRoot = createRoot('newNode1', 'newNode2', 'newNode3');
182
+ const newRoot = createRoot('newNode1', 'newNode2', 'newNode3');
220
183
  selectionService.updateSelection(newRoot, ['newNode1'], []);
221
184
  assertSelectionAndFeedback(['newNode1'], ['node1', 'node2']);
222
185
  });
223
186
  });
224
- describe('Listeners', function () {
225
- it('A registered listener should be notified of a single selection change.', function () {
226
- var listener = new MockSelectionListener();
187
+ describe('Listeners', () => {
188
+ it('A registered listener should be notified of a single selection change.', () => {
189
+ const listener = new MockSelectionListener();
227
190
  selectionService.register(listener);
228
191
  assertListener(listener, undefined, [], 0);
229
192
  selectionService.updateSelection(root, ['node1', 'node1'], []);
230
193
  assertListener(listener, root, ['node1'], 1);
231
194
  });
232
- it('A registered listener should be notified of a multi-selection change.', function () {
233
- var listener = new MockSelectionListener();
195
+ it('A registered listener should be notified of a multi-selection change.', () => {
196
+ const listener = new MockSelectionListener();
234
197
  selectionService.register(listener);
235
198
  assertListener(listener, undefined, [], 0);
236
199
  selectionService.updateSelection(root, ['node1', 'node2', 'node3'], []);
237
200
  assertListener(listener, root, ['node1', 'node2', 'node3'], 1);
238
201
  });
239
- it('A registered listener should be notified of series of selection changes.', function () {
240
- var listener = new MockSelectionListener();
202
+ it('A registered listener should be notified of series of selection changes.', () => {
203
+ const listener = new MockSelectionListener();
241
204
  selectionService.register(listener);
242
205
  assertListener(listener, undefined, [], 0);
243
206
  selectionService.updateSelection(root, ['node1'], []);
@@ -249,25 +212,25 @@ describe('SelectionService', function () {
249
212
  selectionService.updateSelection(root, [], ['node4']);
250
213
  assertListener(listener, root, ['node2', 'node3'], 4);
251
214
  });
252
- it('A registered listener should receive the selected elements in the right order.', function () {
253
- var listener = new MockSelectionListener();
215
+ it('A registered listener should receive the selected elements in the right order.', () => {
216
+ const listener = new MockSelectionListener();
254
217
  selectionService.register(listener);
255
218
  assertListener(listener, undefined, [], 0);
256
219
  selectionService.updateSelection(root, ['node2', 'node1'], []);
257
- chai_1.expect(function () { return assertListener(listener, root, ['node1', 'node2'], 1); }).to.throw(chai_1.AssertionError, 'ordered members');
220
+ chai_1.expect(() => assertListener(listener, root, ['node1', 'node2'], 1)).to.throw(chai_1.AssertionError, 'ordered members');
258
221
  });
259
- it('A registered listener should be notified of root changes.', function () {
260
- var listener = new MockSelectionListener();
222
+ it('A registered listener should be notified of root changes.', () => {
223
+ const listener = new MockSelectionListener();
261
224
  selectionService.register(listener);
262
225
  assertListener(listener, undefined, [], 0);
263
226
  selectionService.updateSelection(root, [], []);
264
227
  assertListener(listener, root, [], 1);
265
- var newRoot = createRoot('node1', 'newNode2', 'newNode3');
228
+ const newRoot = createRoot('node1', 'newNode2', 'newNode3');
266
229
  selectionService.updateSelection(newRoot, [], []);
267
230
  assertListener(listener, newRoot, [], 2);
268
231
  });
269
- it('Registering an already registered listener should have no effect.', function () {
270
- var listener = new MockSelectionListener();
232
+ it('Registering an already registered listener should have no effect.', () => {
233
+ const listener = new MockSelectionListener();
271
234
  selectionService.register(listener);
272
235
  selectionService.register(listener);
273
236
  selectionService.register(listener);
@@ -278,8 +241,8 @@ describe('SelectionService', function () {
278
241
  selectionService.updateSelection(root, [], ['node2']);
279
242
  assertListener(listener, root, ['node1', 'node3'], 2);
280
243
  });
281
- it('Selecting the same elements consecutively should not trigger a listener update.', function () {
282
- var listener = new MockSelectionListener();
244
+ it('Selecting the same elements consecutively should not trigger a listener update.', () => {
245
+ const listener = new MockSelectionListener();
283
246
  selectionService.register(listener);
284
247
  assertListener(listener, undefined, [], 0);
285
248
  selectionService.updateSelection(root, ['node1'], []);
@@ -287,8 +250,8 @@ describe('SelectionService', function () {
287
250
  selectionService.updateSelection(root, ['node1'], []);
288
251
  assertListener(listener, root, ['node1'], 1);
289
252
  });
290
- it('Selecting a not-existing elements should not trigger a listener update.', function () {
291
- var listener = new MockSelectionListener();
253
+ it('Selecting a not-existing elements should not trigger a listener update.', () => {
254
+ const listener = new MockSelectionListener();
292
255
  selectionService.register(listener);
293
256
  assertListener(listener, undefined, [], 0);
294
257
  selectionService.updateSelection(root, ['node1'], []);
@@ -296,9 +259,9 @@ describe('SelectionService', function () {
296
259
  selectionService.updateSelection(root, ['not-existing'], []);
297
260
  assertListener(listener, root, ['node1'], 1);
298
261
  });
299
- it('All registered listeners should be called on selection changes.', function () {
300
- var listener = new MockSelectionListener();
301
- var listener2 = new MockSelectionListener();
262
+ it('All registered listeners should be called on selection changes.', () => {
263
+ const listener = new MockSelectionListener();
264
+ const listener2 = new MockSelectionListener();
302
265
  selectionService.register(listener);
303
266
  selectionService.register(listener2);
304
267
  assertListener(listener, undefined, [], 0);
@@ -316,8 +279,8 @@ describe('SelectionService', function () {
316
279
  assertListener(listener, root, ['node2', 'node3'], 4);
317
280
  assertListener(listener2, root, ['node2', 'node3'], 4);
318
281
  });
319
- it('A deregistered listener should not receive further updates.', function () {
320
- var listener = new MockSelectionListener();
282
+ it('A deregistered listener should not receive further updates.', () => {
283
+ const listener = new MockSelectionListener();
321
284
  selectionService.register(listener);
322
285
  assertListener(listener, undefined, [], 0);
323
286
  selectionService.updateSelection(root, ['node1'], []);
@@ -329,18 +292,14 @@ describe('SelectionService', function () {
329
292
  assertListener(listener, root, ['node1'], 1);
330
293
  selectionService.updateSelection(root, [], ['node4']);
331
294
  assertListener(listener, root, ['node1'], 1);
332
- var newRoot = createRoot('node1', 'newNode2', 'newNode3');
295
+ const newRoot = createRoot('node1', 'newNode2', 'newNode3');
333
296
  selectionService.updateSelection(newRoot, [], []);
334
297
  assertListener(listener, root, ['node1'], 1);
335
298
  });
336
299
  });
337
- function createRoot() {
338
- var nodes = [];
339
- for (var _i = 0; _i < arguments.length; _i++) {
340
- nodes[_i] = arguments[_i];
341
- }
342
- var children = [];
343
- nodes.forEach(function (node) { return children.push({ id: node, type: 'node:circle' }); });
300
+ function createRoot(...nodes) {
301
+ const children = [];
302
+ nodes.forEach(node => children.push({ id: node, type: 'node:circle' }));
344
303
  return graphFactory.createRoot({
345
304
  id: 'selection-service-spec',
346
305
  type: 'graph',
@@ -352,18 +311,17 @@ describe('SelectionService', function () {
352
311
  assertDispatchedFeedback(expectedSelection, expectedDeselection);
353
312
  }
354
313
  function assertSelectionService(expectedSelection) {
355
- var _a;
356
314
  chai_1.expect(selectionService.isSingleSelection()).to.equal(expectedSelection.length === 1);
357
315
  chai_1.expect(selectionService.isMultiSelection()).to.equal(expectedSelection.length > 1);
358
316
  chai_1.expect(selectionService.hasSelectedElements()).to.equal(expectedSelection.length > 0);
359
317
  chai_1.expect(selectionService.getSelectedElementIDs()).to.have.lengthOf(expectedSelection.length);
360
318
  if (expectedSelection.length > 0) {
361
- (_a = chai_1.expect(selectionService.getSelectedElementIDs()).to.have.all).keys.apply(_a, __spread(expectedSelection));
319
+ chai_1.expect(selectionService.getSelectedElementIDs()).to.have.all.keys(...expectedSelection);
362
320
  }
363
321
  }
364
322
  function assertDispatchedFeedback(expectedSelection, expectedDeselection) {
365
323
  // a single feedback action reflects aggregated selection/deselection
366
- var hasFeedback = expectedSelection.length > 0 || expectedDeselection.length > 0;
324
+ const hasFeedback = expectedSelection.length > 0 || expectedDeselection.length > 0;
367
325
  if (hasFeedback) {
368
326
  chai_1.expect(feedbackDispatcher.getRegisteredFeedback()).to.have.lengthOf(1);
369
327
  chai_1.expect(feedbackDispatcher.getSingleFeedbackAction().selectedElementsIDs).to.have.lengthOf(expectedSelection.length);
@@ -1 +1 @@
1
- {"version":3,"file":"selection-service.spec.js","sourceRoot":"","sources":["../../../src/features/select/selection-service.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selection-service.spec.js","sourceRoot":"","sources":["../../../src/features/select/selection-service.spec.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,23 @@
1
- import { VNode } from "snabbdom/vnode";
2
- import { Action, CommandExecutionContext, CommandReturn, MouseListener, MoveAction, Point, SModelElement, SModelRoot } from "sprotty";
3
- import { ChangeBoundsTool } from "../tools/change-bounds-tool";
4
- import { FeedbackCommand } from "./model";
1
+ /********************************************************************************
2
+ * Copyright (c) 2019-2021 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 { Action, Point } from '@eclipse-glsp/protocol';
17
+ import { VNode } from 'snabbdom';
18
+ import { CommandExecutionContext, CommandReturn, MouseListener, MoveAction, SModelElement, SModelRoot } from 'sprotty';
19
+ import { ChangeBoundsTool } from '../tools/change-bounds-tool';
20
+ import { FeedbackCommand } from './model';
5
21
  export declare class ShowChangeBoundsToolResizeFeedbackAction implements Action {
6
22
  readonly elementId?: string | undefined;
7
23
  readonly kind: string;
@@ -37,6 +53,7 @@ export declare class FeedbackMoveMouseListener extends MouseListener {
37
53
  mouseDown(target: SModelElement, event: MouseEvent): Action[];
38
54
  mouseMove(target: SModelElement, event: MouseEvent): Action[];
39
55
  protected collectStartPositions(root: SModelRoot): void;
56
+ protected isChildOfSelected(selectedElements: Set<SModelElement>, element: SModelElement): boolean;
40
57
  protected getElementMoves(target: SModelElement, event: MouseEvent, isFinished: boolean): MoveAction | undefined;
41
58
  protected validateMove(startPostion: Point, toPosition: Point, element: SModelElement, isFinished: boolean): Point;
42
59
  protected snap(position: Point, element: SModelElement, isSnap: boolean): Point;
@@ -1 +1 @@
1
- {"version":3,"file":"change-bounds-tool-feedback.d.ts","sourceRoot":"","sources":["../../../src/features/tool-feedback/change-bounds-tool-feedback.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACH,MAAM,EACN,uBAAuB,EACvB,aAAa,EAMb,aAAa,EACb,UAAU,EACV,KAAK,EACL,aAAa,EACb,UAAU,EAEb,MAAM,SAAS,CAAC;AAKjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,qBAAa,wCAAyC,YAAW,MAAM;IACvD,QAAQ,CAAC,SAAS,CAAC;aAA0B,IAAI,EAAE,MAAM;gBAAhD,SAAS,CAAC,oBAAQ,EAAkB,IAAI,GAAE,MAAuD;CACzH;AAED,qBAAa,wCAAyC,YAAW,MAAM;aACvC,IAAI,EAAE,MAAM;gBAAZ,IAAI,GAAE,MAAuD;CAC5F;AAED,qBACa,yCAA0C,SAAQ,eAAe;IAC1E,MAAM,CAAC,QAAQ,CAAC,IAAI,wCAAwC;IAEtC,SAAS,CAAC,MAAM,EAAE,wCAAwC,CAAC;IAEjF,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAe3D;AAED,qBACa,yCAA0C,SAAQ,eAAe;IAC1E,MAAM,CAAC,QAAQ,CAAC,IAAI,wCAAwC;IAEtC,SAAS,CAAC,MAAM,EAAE,wCAAwC,CAAC;IAEjF,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAQ3D;AAED;;;;;;GAMG;AACH,qBAAa,yBAA0B,SAAQ,aAAa;IAK5C,SAAS,CAAC,IAAI,EAAE,gBAAgB;IAJ5C,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,iBAAiB,EAAE,KAAK,GAAG,SAAS,CAAC;IAC/C,SAAS,CAAC,kBAAkB,qBAA4B;gBAElC,IAAI,EAAE,gBAAgB;IAI5C,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAa7D,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAc7D,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,UAAU;IAWhD,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS;IAuChH,SAAS,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO;IAoB1G,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK;IAK/E,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAM9D,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAkB3D,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,GAAG,KAAK;CAGzD"}
1
+ {"version":3,"file":"change-bounds-tool-feedback.d.ts","sourceRoot":"","sources":["../../../src/features/tool-feedback/change-bounds-tool-feedback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AACjC,OAAO,EACH,uBAAuB,EACvB,aAAa,EAMb,aAAa,EACb,UAAU,EAEV,aAAa,EACb,UAAU,EAEb,MAAM,SAAS,CAAC;AAKjB,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C,qBAAa,wCAAyC,YAAW,MAAM;IACvD,QAAQ,CAAC,SAAS,CAAC;aAA0B,IAAI,EAAE,MAAM;gBAAhD,SAAS,CAAC,oBAAQ,EAAkB,IAAI,GAAE,MAAuD;CACzH;AAED,qBAAa,wCAAyC,YAAW,MAAM;aACvC,IAAI,EAAE,MAAM;gBAAZ,IAAI,GAAE,MAAuD;CAC5F;AAED,qBACa,yCAA0C,SAAQ,eAAe;IAC1E,MAAM,CAAC,QAAQ,CAAC,IAAI,wCAAwC;IAEtC,SAAS,CAAC,MAAM,EAAE,wCAAwC,CAAC;IAEjF,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAY3D;AAED,qBACa,yCAA0C,SAAQ,eAAe;IAC1E,MAAM,CAAC,QAAQ,CAAC,IAAI,wCAAwC;IAEtC,SAAS,CAAC,MAAM,EAAE,wCAAwC,CAAC;IAEjF,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAK3D;AAED;;;;;;GAMG;AACH,qBAAa,yBAA0B,SAAQ,aAAa;IAK5C,SAAS,CAAC,IAAI,EAAE,gBAAgB;IAJ5C,SAAS,CAAC,UAAU,UAAS;IAC7B,SAAS,CAAC,iBAAiB,EAAE,KAAK,GAAG,SAAS,CAAC;IAC/C,SAAS,CAAC,kBAAkB,qBAA4B;gBAElC,IAAI,EAAE,gBAAgB;IAI5C,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAa7D,SAAS,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAkB7D,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAYvD,SAAS,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,GAAG,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO;IAUlG,SAAS,CAAC,eAAe,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,OAAO,GAAG,UAAU,GAAG,SAAS;IA2ChH,SAAS,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,GAAG,KAAK;IAoBlH,SAAS,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,GAAG,KAAK;IAQ/E,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAO9D,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,MAAM,EAAE;IAkB3D,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,aAAa,GAAG,KAAK;CAGzD"}