@eclipse-glsp/client 0.9.0-next.6d10f92e → 0.9.0-next.75608185

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 (620) hide show
  1. package/README.md +2 -1
  2. package/css/command-palette.css +9 -5
  3. package/css/decoration.css +3 -2
  4. package/css/glsp-sprotty.css +16 -7
  5. package/css/tool-palette.css +44 -27
  6. package/lib/base/action-dispatcher.d.ts +18 -2
  7. package/lib/base/action-dispatcher.d.ts.map +1 -1
  8. package/lib/base/action-dispatcher.js +41 -61
  9. package/lib/base/action-dispatcher.js.map +1 -1
  10. package/lib/base/actions/focus-change-action.d.ts +1 -1
  11. package/lib/base/actions/focus-change-action.d.ts.map +1 -1
  12. package/lib/base/actions/focus-change-action.js +4 -5
  13. package/lib/base/actions/focus-change-action.js.map +1 -1
  14. package/lib/base/{args.d.ts → argumentable.d.ts} +4 -6
  15. package/lib/base/argumentable.d.ts.map +1 -0
  16. package/lib/base/{args.js → argumentable.js} +1 -1
  17. package/lib/base/argumentable.js.map +1 -0
  18. package/lib/base/auto-complete/auto-complete-actions.d.ts +1 -1
  19. package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
  20. package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
  21. package/lib/base/auto-complete/auto-complete-widget.d.ts +5 -5
  22. package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
  23. package/lib/base/auto-complete/auto-complete-widget.js +121 -152
  24. package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
  25. package/lib/base/auto-complete/validation-decorator.d.ts +3 -18
  26. package/lib/base/auto-complete/validation-decorator.d.ts.map +1 -1
  27. package/lib/base/auto-complete/validation-decorator.js +49 -65
  28. package/lib/base/auto-complete/validation-decorator.js.map +1 -1
  29. package/lib/base/command-stack.d.ts +1 -1
  30. package/lib/base/command-stack.d.ts.map +1 -1
  31. package/lib/base/command-stack.js +19 -37
  32. package/lib/base/command-stack.js.map +1 -1
  33. package/lib/base/container-modules.d.ts +40 -0
  34. package/lib/base/container-modules.d.ts.map +1 -0
  35. package/lib/base/container-modules.js +84 -0
  36. package/lib/base/container-modules.js.map +1 -0
  37. package/lib/base/di.config.d.ts +13 -3
  38. package/lib/base/di.config.d.ts.map +1 -1
  39. package/lib/base/di.config.js +50 -33
  40. package/lib/base/di.config.js.map +1 -1
  41. package/lib/base/drag-aware-mouse-listener.d.ts +3 -2
  42. package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
  43. package/lib/base/drag-aware-mouse-listener.js +23 -62
  44. package/lib/base/drag-aware-mouse-listener.js.map +1 -1
  45. package/lib/base/editor-context-service.d.ts +42 -0
  46. package/lib/base/editor-context-service.d.ts.map +1 -0
  47. package/lib/base/editor-context-service.js +109 -0
  48. package/lib/base/editor-context-service.js.map +1 -0
  49. package/lib/base/focus-tracker.d.ts +17 -1
  50. package/lib/base/focus-tracker.d.ts.map +1 -1
  51. package/lib/base/focus-tracker.js +19 -39
  52. package/lib/base/focus-tracker.js.map +1 -1
  53. package/lib/base/model/model-registry.d.ts +5 -0
  54. package/lib/base/model/model-registry.d.ts.map +1 -0
  55. package/lib/base/model/model-registry.js +43 -0
  56. package/lib/base/model/model-registry.js.map +1 -0
  57. package/lib/base/model/update-model-command.d.ts +20 -6
  58. package/lib/base/model/update-model-command.d.ts.map +1 -1
  59. package/lib/base/model/update-model-command.js +69 -94
  60. package/lib/base/model/update-model-command.js.map +1 -1
  61. package/lib/base/model-initialization-constraint.d.ts +17 -2
  62. package/lib/base/model-initialization-constraint.d.ts.map +1 -1
  63. package/lib/base/model-initialization-constraint.js +34 -54
  64. package/lib/base/model-initialization-constraint.js.map +1 -1
  65. package/lib/base/selection-clearing-mouse-listener.d.ts +1 -1
  66. package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -1
  67. package/lib/base/selection-clearing-mouse-listener.js +11 -28
  68. package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
  69. package/lib/base/source-uri-aware.js +2 -5
  70. package/lib/base/source-uri-aware.js.map +1 -1
  71. package/lib/base/tool-manager/glsp-tool-manager.d.ts +2 -2
  72. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
  73. package/lib/base/tool-manager/glsp-tool-manager.js +59 -141
  74. package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
  75. package/lib/base/types.d.ts +2 -1
  76. package/lib/base/types.d.ts.map +1 -1
  77. package/lib/base/types.js +22 -21
  78. package/lib/base/types.js.map +1 -1
  79. package/lib/base/view/view-registry.d.ts +5 -0
  80. package/lib/base/view/view-registry.d.ts.map +1 -0
  81. package/lib/base/view/view-registry.js +43 -0
  82. package/lib/base/view/view-registry.js.map +1 -0
  83. package/lib/features/change-bounds/model.d.ts +4 -2
  84. package/lib/features/change-bounds/model.d.ts.map +1 -1
  85. package/lib/features/change-bounds/model.js +21 -32
  86. package/lib/features/change-bounds/model.js.map +1 -1
  87. package/lib/features/change-bounds/movement-restrictor.d.ts +18 -2
  88. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
  89. package/lib/features/change-bounds/movement-restrictor.js +34 -46
  90. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  91. package/lib/features/change-bounds/snap.d.ts +17 -1
  92. package/lib/features/change-bounds/snap.d.ts.map +1 -1
  93. package/lib/features/change-bounds/snap.js +13 -39
  94. package/lib/features/change-bounds/snap.js.map +1 -1
  95. package/lib/features/command-palette/command-palette-tool.d.ts +1 -1
  96. package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -1
  97. package/lib/features/command-palette/command-palette-tool.js +30 -38
  98. package/lib/features/command-palette/command-palette-tool.js.map +1 -1
  99. package/lib/features/command-palette/di.config.d.ts +2 -2
  100. package/lib/features/command-palette/di.config.js +6 -6
  101. package/lib/features/command-palette/di.config.js.map +1 -1
  102. package/lib/features/command-palette/server-command-palette-provider.d.ts +19 -3
  103. package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
  104. package/lib/features/command-palette/server-command-palette-provider.js +31 -36
  105. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
  106. package/lib/features/context-menu/delete-element-context-menu.d.ts +2 -2
  107. package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
  108. package/lib/features/context-menu/delete-element-context-menu.js +24 -72
  109. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
  110. package/lib/features/context-menu/di.config.d.ts +2 -2
  111. package/lib/features/context-menu/di.config.d.ts.map +1 -1
  112. package/lib/features/context-menu/di.config.js +14 -18
  113. package/lib/features/context-menu/di.config.js.map +1 -1
  114. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +2 -2
  115. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
  116. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +29 -67
  117. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
  118. package/lib/features/context-menu/server-context-menu-provider.d.ts +19 -3
  119. package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
  120. package/lib/features/context-menu/server-context-menu-provider.js +31 -32
  121. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  122. package/lib/features/copy-paste/copy-paste-context-menu.d.ts +22 -2
  123. package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
  124. package/lib/features/copy-paste/copy-paste-context-menu.js +99 -72
  125. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  126. package/lib/features/copy-paste/copy-paste-handler.d.ts +21 -4
  127. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
  128. package/lib/features/copy-paste/copy-paste-handler.js +70 -70
  129. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  130. package/lib/features/copy-paste/di.config.d.ts +2 -2
  131. package/lib/features/copy-paste/di.config.d.ts.map +1 -1
  132. package/lib/features/copy-paste/di.config.js +11 -11
  133. package/lib/features/copy-paste/di.config.js.map +1 -1
  134. package/lib/features/decoration/decoration-placer.d.ts +17 -1
  135. package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
  136. package/lib/features/decoration/decoration-placer.js +14 -47
  137. package/lib/features/decoration/decoration-placer.js.map +1 -1
  138. package/lib/features/decoration/di.config.d.ts +2 -2
  139. package/lib/features/decoration/di.config.d.ts.map +1 -1
  140. package/lib/features/decoration/di.config.js +4 -6
  141. package/lib/features/decoration/di.config.js.map +1 -1
  142. package/lib/features/edit-label/di.config.d.ts +1 -1
  143. package/lib/features/edit-label/di.config.js +7 -7
  144. package/lib/features/edit-label/di.config.js.map +1 -1
  145. package/lib/features/edit-label/edit-label-tool.d.ts +2 -2
  146. package/lib/features/edit-label/edit-label-tool.js +20 -43
  147. package/lib/features/edit-label/edit-label-tool.js.map +1 -1
  148. package/lib/features/edit-label/edit-label-validator.d.ts +18 -3
  149. package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
  150. package/lib/features/edit-label/edit-label-validator.js +40 -62
  151. package/lib/features/edit-label/edit-label-validator.js.map +1 -1
  152. package/lib/features/hints/di.config.d.ts +1 -16
  153. package/lib/features/hints/di.config.d.ts.map +1 -1
  154. package/lib/features/hints/di.config.js +9 -9
  155. package/lib/features/hints/di.config.js.map +1 -1
  156. package/lib/features/hints/model.d.ts +3 -2
  157. package/lib/features/hints/model.d.ts.map +1 -1
  158. package/lib/features/hints/model.js +2 -2
  159. package/lib/features/hints/model.js.map +1 -1
  160. package/lib/features/hints/type-hints.d.ts +21 -49
  161. package/lib/features/hints/type-hints.d.ts.map +1 -1
  162. package/lib/features/hints/type-hints.js +83 -142
  163. package/lib/features/hints/type-hints.js.map +1 -1
  164. package/lib/features/hover/di.config.d.ts +2 -2
  165. package/lib/features/hover/di.config.d.ts.map +1 -1
  166. package/lib/features/hover/di.config.js +8 -8
  167. package/lib/features/hover/di.config.js.map +1 -1
  168. package/lib/features/hover/hover.d.ts +18 -2
  169. package/lib/features/hover/hover.d.ts.map +1 -1
  170. package/lib/features/hover/hover.js +37 -75
  171. package/lib/features/hover/hover.js.map +1 -1
  172. package/lib/features/layout/di.config.d.ts +6 -2
  173. package/lib/features/layout/di.config.d.ts.map +1 -1
  174. package/lib/features/layout/di.config.js +47 -7
  175. package/lib/features/layout/di.config.js.map +1 -1
  176. package/lib/features/layout/freeform-layout.d.ts +16 -0
  177. package/lib/features/layout/freeform-layout.d.ts.map +1 -0
  178. package/lib/features/layout/freeform-layout.js +107 -0
  179. package/lib/features/layout/freeform-layout.js.map +1 -0
  180. package/lib/features/layout/layout-commands.d.ts +26 -10
  181. package/lib/features/layout/layout-commands.d.ts.map +1 -1
  182. package/lib/features/layout/layout-commands.js +189 -264
  183. package/lib/features/layout/layout-commands.js.map +1 -1
  184. package/lib/features/layout/layout-commands.spec.d.ts +2 -17
  185. package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
  186. package/lib/features/layout/layout-commands.spec.js +124 -117
  187. package/lib/features/layout/layout-commands.spec.js.map +1 -1
  188. package/lib/features/layout/vbox-layout.d.ts +25 -0
  189. package/lib/features/layout/vbox-layout.d.ts.map +1 -0
  190. package/lib/features/layout/vbox-layout.js +188 -0
  191. package/lib/features/layout/vbox-layout.js.map +1 -0
  192. package/lib/features/model-source-watcher/di.config.d.ts +1 -16
  193. package/lib/features/model-source-watcher/di.config.d.ts.map +1 -1
  194. package/lib/features/model-source-watcher/di.config.js +7 -7
  195. package/lib/features/model-source-watcher/di.config.js.map +1 -1
  196. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +17 -2
  197. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -1
  198. package/lib/features/model-source-watcher/model-source-changed-action-handler.js +38 -46
  199. package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -1
  200. package/lib/features/mouse-tool/di.config.d.ts +1 -1
  201. package/lib/features/mouse-tool/di.config.js +5 -5
  202. package/lib/features/mouse-tool/di.config.js.map +1 -1
  203. package/lib/features/mouse-tool/mouse-tool.d.ts +3 -2
  204. package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
  205. package/lib/features/mouse-tool/mouse-tool.js +74 -217
  206. package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
  207. package/lib/features/navigation/di.config.d.ts +1 -16
  208. package/lib/features/navigation/di.config.d.ts.map +1 -1
  209. package/lib/features/navigation/di.config.js +11 -10
  210. package/lib/features/navigation/di.config.js.map +1 -1
  211. package/lib/features/navigation/navigation-action-handler.d.ts +19 -39
  212. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
  213. package/lib/features/navigation/navigation-action-handler.js +118 -255
  214. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  215. package/lib/features/navigation/navigation-target-resolver.d.ts +18 -40
  216. package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
  217. package/lib/features/navigation/navigation-target-resolver.js +46 -188
  218. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  219. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +2 -17
  220. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
  221. package/lib/features/navigation/navigation-target-resolver.spec.js +27 -26
  222. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
  223. package/lib/features/rank/model.d.ts +2 -2
  224. package/lib/features/rank/model.d.ts.map +1 -1
  225. package/lib/features/rank/model.js +2 -2
  226. package/lib/features/rank/model.js.map +1 -1
  227. package/lib/features/reconnect/model.d.ts +2 -2
  228. package/lib/features/reconnect/model.d.ts.map +1 -1
  229. package/lib/features/reconnect/model.js +10 -28
  230. package/lib/features/reconnect/model.js.map +1 -1
  231. package/lib/features/save/di.config.d.ts +2 -2
  232. package/lib/features/save/di.config.d.ts.map +1 -1
  233. package/lib/features/save/di.config.js +6 -6
  234. package/lib/features/save/di.config.js.map +1 -1
  235. package/lib/features/save/model.d.ts +1 -1
  236. package/lib/features/save/{save.d.ts → save-keylistener.d.ts} +4 -10
  237. package/lib/features/save/save-keylistener.d.ts.map +1 -0
  238. package/lib/features/{undo-redo/model.d.ts → save/save-keylistener.js} +16 -12
  239. package/lib/features/save/save-keylistener.js.map +1 -0
  240. package/lib/features/select/di.config.d.ts +1 -1
  241. package/lib/features/select/di.config.js +11 -11
  242. package/lib/features/select/di.config.js.map +1 -1
  243. package/lib/features/select/select-feedback-action.d.ts +1 -1
  244. package/lib/features/select/select-feedback-action.d.ts.map +1 -1
  245. package/lib/features/select/select-feedback-action.js +45 -71
  246. package/lib/features/select/select-feedback-action.js.map +1 -1
  247. package/lib/features/select/select-mouse-listener.d.ts +2 -2
  248. package/lib/features/select/select-mouse-listener.js +7 -23
  249. package/lib/features/select/select-mouse-listener.js.map +1 -1
  250. package/lib/features/select/selection-service.d.ts +19 -3
  251. package/lib/features/select/selection-service.d.ts.map +1 -1
  252. package/lib/features/select/selection-service.js +134 -236
  253. package/lib/features/select/selection-service.js.map +1 -1
  254. package/lib/features/select/selection-service.spec.js +96 -138
  255. package/lib/features/select/selection-service.spec.js.map +1 -1
  256. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +21 -4
  257. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
  258. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +117 -149
  259. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
  260. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +19 -2
  261. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
  262. package/lib/features/tool-feedback/creation-tool-feedback.js +81 -115
  263. package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
  264. package/lib/features/tool-feedback/css-feedback.d.ts +21 -3
  265. package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
  266. package/lib/features/tool-feedback/css-feedback.js +37 -81
  267. package/lib/features/tool-feedback/css-feedback.js.map +1 -1
  268. package/lib/features/tool-feedback/di.config.d.ts +2 -2
  269. package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
  270. package/lib/features/tool-feedback/di.config.js +27 -27
  271. package/lib/features/tool-feedback/di.config.js.map +1 -1
  272. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +21 -4
  273. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
  274. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +160 -204
  275. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
  276. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +19 -3
  277. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
  278. package/lib/features/tool-feedback/feedback-action-dispatcher.js +35 -72
  279. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
  280. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +18 -2
  281. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
  282. package/lib/features/tool-feedback/marquee-tool-feedback.js +44 -86
  283. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
  284. package/lib/features/tool-feedback/model.d.ts +2 -2
  285. package/lib/features/tool-feedback/model.js +11 -27
  286. package/lib/features/tool-feedback/model.js.map +1 -1
  287. package/lib/features/tool-feedback/view.d.ts +22 -6
  288. package/lib/features/tool-feedback/view.d.ts.map +1 -1
  289. package/lib/features/tool-feedback/view.js +30 -51
  290. package/lib/features/tool-feedback/view.js.map +1 -1
  291. package/lib/features/tool-palette/di.config.d.ts +2 -2
  292. package/lib/features/tool-palette/di.config.js +6 -6
  293. package/lib/features/tool-palette/di.config.js.map +1 -1
  294. package/lib/features/tool-palette/palette-item.d.ts +2 -3
  295. package/lib/features/tool-palette/palette-item.d.ts.map +1 -1
  296. package/lib/features/tool-palette/palette-item.js +6 -6
  297. package/lib/features/tool-palette/palette-item.js.map +1 -1
  298. package/lib/features/tool-palette/tool-palette.d.ts +22 -6
  299. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  300. package/lib/features/tool-palette/tool-palette.js +225 -291
  301. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  302. package/lib/features/tools/base-glsp-tool.d.ts +21 -5
  303. package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
  304. package/lib/features/tools/base-glsp-tool.js +37 -59
  305. package/lib/features/tools/base-glsp-tool.js.map +1 -1
  306. package/lib/features/tools/change-bounds-tool.d.ts +26 -9
  307. package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
  308. package/lib/features/tools/change-bounds-tool.js +192 -241
  309. package/lib/features/tools/change-bounds-tool.js.map +1 -1
  310. package/lib/features/tools/delete-tool.d.ts +20 -4
  311. package/lib/features/tools/delete-tool.d.ts.map +1 -1
  312. package/lib/features/tools/delete-tool.js +71 -104
  313. package/lib/features/tools/delete-tool.js.map +1 -1
  314. package/lib/features/tools/di.config.d.ts +1 -16
  315. package/lib/features/tools/di.config.d.ts.map +1 -1
  316. package/lib/features/tools/di.config.js +19 -19
  317. package/lib/features/tools/di.config.js.map +1 -1
  318. package/lib/features/tools/edge-creation-tool.d.ts +20 -5
  319. package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
  320. package/lib/features/tools/edge-creation-tool.js +64 -89
  321. package/lib/features/tools/edge-creation-tool.js.map +1 -1
  322. package/lib/features/tools/edge-edit-tool.d.ts +22 -6
  323. package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
  324. package/lib/features/tools/edge-edit-tool.js +125 -189
  325. package/lib/features/tools/edge-edit-tool.js.map +1 -1
  326. package/lib/features/tools/marquee-mouse-tool.d.ts +21 -4
  327. package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
  328. package/lib/features/tools/marquee-mouse-tool.js +155 -160
  329. package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
  330. package/lib/features/tools/marquee-tool.d.ts +18 -2
  331. package/lib/features/tools/marquee-tool.d.ts.map +1 -1
  332. package/lib/features/tools/marquee-tool.js +32 -73
  333. package/lib/features/tools/marquee-tool.js.map +1 -1
  334. package/lib/features/tools/model.d.ts +1 -1
  335. package/lib/features/tools/model.d.ts.map +1 -1
  336. package/lib/features/tools/model.js +6 -24
  337. package/lib/features/tools/model.js.map +1 -1
  338. package/lib/features/tools/node-creation-tool.d.ts +20 -5
  339. package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
  340. package/lib/features/tools/node-creation-tool.js +60 -90
  341. package/lib/features/tools/node-creation-tool.js.map +1 -1
  342. package/lib/features/tools/view.d.ts +3 -18
  343. package/lib/features/tools/view.d.ts.map +1 -1
  344. package/lib/features/tools/view.js +21 -39
  345. package/lib/features/tools/view.js.map +1 -1
  346. package/lib/features/validation/di.config.d.ts +1 -1
  347. package/lib/features/validation/di.config.js +12 -12
  348. package/lib/features/validation/di.config.js.map +1 -1
  349. package/lib/features/validation/issue-marker.d.ts +3 -3
  350. package/lib/features/validation/issue-marker.d.ts.map +1 -1
  351. package/lib/features/validation/issue-marker.js +18 -56
  352. package/lib/features/validation/issue-marker.js.map +1 -1
  353. package/lib/features/validation/marker-navigator.d.ts +19 -3
  354. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  355. package/lib/features/validation/marker-navigator.js +131 -164
  356. package/lib/features/validation/marker-navigator.js.map +1 -1
  357. package/lib/features/validation/marker-navigator.spec.d.ts +2 -17
  358. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
  359. package/lib/features/validation/marker-navigator.spec.js +84 -77
  360. package/lib/features/validation/marker-navigator.spec.js.map +1 -1
  361. package/lib/features/validation/validate.d.ts +20 -31
  362. package/lib/features/validation/validate.d.ts.map +1 -1
  363. package/lib/features/validation/validate.js +148 -299
  364. package/lib/features/validation/validate.js.map +1 -1
  365. package/lib/features/viewport/di.config.d.ts +16 -1
  366. package/lib/features/viewport/di.config.d.ts.map +1 -1
  367. package/lib/features/viewport/di.config.js +10 -10
  368. package/lib/features/viewport/di.config.js.map +1 -1
  369. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +3 -2
  370. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
  371. package/lib/features/viewport/glsp-scroll-mouse-listener.js +16 -47
  372. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
  373. package/lib/index.d.ts +31 -35
  374. package/lib/index.d.ts.map +1 -1
  375. package/lib/index.js +32 -35
  376. package/lib/index.js.map +1 -1
  377. package/lib/lib/model.d.ts +3 -3
  378. package/lib/lib/model.d.ts.map +1 -1
  379. package/lib/lib/model.js +11 -27
  380. package/lib/lib/model.js.map +1 -1
  381. package/lib/model-source/glsp-diagram-server.d.ts +4 -6
  382. package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
  383. package/lib/model-source/glsp-diagram-server.js +63 -122
  384. package/lib/model-source/glsp-diagram-server.js.map +1 -1
  385. package/lib/protocol-reexport.d.ts +45 -0
  386. package/lib/protocol-reexport.d.ts.map +1 -0
  387. package/lib/protocol-reexport.js +75 -0
  388. package/lib/protocol-reexport.js.map +1 -0
  389. package/lib/utils/argument-utils.d.ts +50 -0
  390. package/lib/utils/argument-utils.d.ts.map +1 -0
  391. package/lib/utils/argument-utils.js +110 -0
  392. package/lib/utils/argument-utils.js.map +1 -0
  393. package/lib/utils/html-utils.js +2 -2
  394. package/lib/utils/html-utils.js.map +1 -1
  395. package/lib/utils/layout-utils.d.ts +4 -3
  396. package/lib/utils/layout-utils.d.ts.map +1 -1
  397. package/lib/utils/layout-utils.js +5 -5
  398. package/lib/utils/layout-utils.js.map +1 -1
  399. package/lib/utils/marker.d.ts +1 -39
  400. package/lib/utils/marker.d.ts.map +1 -1
  401. package/lib/utils/marker.js +14 -61
  402. package/lib/utils/marker.js.map +1 -1
  403. package/lib/utils/smodel-util.d.ts +7 -17
  404. package/lib/utils/smodel-util.d.ts.map +1 -1
  405. package/lib/utils/smodel-util.js +18 -67
  406. package/lib/utils/smodel-util.js.map +1 -1
  407. package/lib/utils/viewpoint-util.d.ts +3 -2
  408. package/lib/utils/viewpoint-util.d.ts.map +1 -1
  409. package/lib/utils/viewpoint-util.js +15 -30
  410. package/lib/utils/viewpoint-util.js.map +1 -1
  411. package/{src/features/undo-redo/model.ts → lib/views/base-view-module.d.ts} +9 -11
  412. package/lib/views/base-view-module.d.ts.map +1 -0
  413. package/lib/views/base-view-module.js +59 -0
  414. package/lib/views/base-view-module.js.map +1 -0
  415. package/lib/views/compartments.d.ts +6 -0
  416. package/lib/views/compartments.d.ts.map +1 -0
  417. package/lib/views/compartments.js +43 -0
  418. package/lib/views/compartments.js.map +1 -0
  419. package/lib/views/default-types.d.ts +37 -0
  420. package/lib/views/default-types.d.ts.map +1 -0
  421. package/lib/views/default-types.js +47 -0
  422. package/lib/views/default-types.js.map +1 -0
  423. package/lib/views/glsp-edge-view.d.ts +27 -0
  424. package/lib/views/glsp-edge-view.d.ts.map +1 -0
  425. package/lib/views/glsp-edge-view.js +55 -0
  426. package/lib/views/glsp-edge-view.js.map +1 -0
  427. package/lib/{features/model-source-watcher/model-source-changed-action.d.ts → views/index.d.ts} +9 -10
  428. package/lib/views/index.d.ts.map +1 -0
  429. package/lib/views/index.js +35 -0
  430. package/lib/views/index.js.map +1 -0
  431. package/lib/views/issue-marker-view.d.ts +9 -0
  432. package/lib/views/issue-marker-view.d.ts.map +1 -0
  433. package/lib/views/issue-marker-view.js +68 -0
  434. package/lib/views/issue-marker-view.js.map +1 -0
  435. package/lib/views/rounded-corner-view.d.ts +13 -0
  436. package/lib/views/rounded-corner-view.d.ts.map +1 -0
  437. package/lib/views/rounded-corner-view.js +82 -0
  438. package/lib/views/rounded-corner-view.js.map +1 -0
  439. package/lib/views/rounded-corner.d.ts +38 -0
  440. package/lib/views/rounded-corner.d.ts.map +1 -0
  441. package/lib/views/rounded-corner.js +62 -0
  442. package/lib/views/rounded-corner.js.map +1 -0
  443. package/package.json +24 -32
  444. package/src/base/action-dispatcher.ts +7 -8
  445. package/src/base/actions/focus-change-action.ts +2 -2
  446. package/src/base/{args.ts → argumentable.ts} +3 -4
  447. package/src/base/auto-complete/auto-complete-actions.ts +2 -2
  448. package/src/base/auto-complete/auto-complete-widget.ts +66 -48
  449. package/src/base/auto-complete/validation-decorator.ts +21 -15
  450. package/src/base/command-stack.ts +4 -7
  451. package/src/base/container-modules.ts +113 -0
  452. package/src/base/di.config.ts +44 -27
  453. package/src/base/drag-aware-mouse-listener.ts +7 -8
  454. package/src/base/{editor-context.ts → editor-context-service.ts} +13 -40
  455. package/src/base/focus-tracker.ts +4 -6
  456. package/src/base/model/model-registry.ts +31 -0
  457. package/src/base/model/update-model-command.ts +14 -22
  458. package/src/base/model-initialization-constraint.ts +16 -11
  459. package/src/base/selection-clearing-mouse-listener.ts +4 -3
  460. package/src/base/tool-manager/glsp-tool-manager.ts +12 -14
  461. package/src/base/types.ts +22 -21
  462. package/src/{features/model-source-watcher/model-source-changed-action.ts → base/view/view-registry.ts} +15 -10
  463. package/src/features/change-bounds/model.ts +23 -13
  464. package/src/features/change-bounds/movement-restrictor.ts +28 -18
  465. package/src/features/change-bounds/snap.ts +6 -5
  466. package/src/features/command-palette/command-palette-tool.ts +4 -4
  467. package/src/features/command-palette/di.config.ts +7 -7
  468. package/src/features/command-palette/server-command-palette-provider.ts +16 -14
  469. package/src/features/context-menu/delete-element-context-menu.ts +10 -11
  470. package/src/features/context-menu/di.config.ts +10 -12
  471. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +8 -7
  472. package/src/features/context-menu/server-context-menu-provider.ts +13 -10
  473. package/src/features/copy-paste/copy-paste-context-menu.ts +66 -37
  474. package/src/features/copy-paste/copy-paste-handler.ts +30 -20
  475. package/src/features/copy-paste/di.config.ts +6 -7
  476. package/src/features/decoration/decoration-placer.ts +6 -15
  477. package/src/features/decoration/di.config.ts +4 -6
  478. package/src/features/edit-label/di.config.ts +5 -5
  479. package/src/features/edit-label/edit-label-tool.ts +4 -4
  480. package/src/features/edit-label/edit-label-validator.ts +18 -19
  481. package/src/features/hints/di.config.ts +6 -7
  482. package/src/features/hints/model.ts +7 -6
  483. package/src/features/hints/type-hints.ts +46 -113
  484. package/src/features/hover/di.config.ts +6 -7
  485. package/src/features/hover/hover.ts +11 -14
  486. package/src/features/layout/di.config.ts +32 -6
  487. package/src/features/layout/freeform-layout.ts +133 -0
  488. package/src/features/layout/layout-commands.spec.ts +104 -85
  489. package/src/features/layout/layout-commands.ts +65 -54
  490. package/src/features/layout/vbox-layout.ts +256 -0
  491. package/src/features/model-source-watcher/di.config.ts +5 -6
  492. package/src/features/model-source-watcher/model-source-changed-action-handler.ts +16 -12
  493. package/src/features/mouse-tool/di.config.ts +4 -4
  494. package/src/features/mouse-tool/mouse-tool.ts +44 -32
  495. package/src/features/navigation/di.config.ts +6 -12
  496. package/src/features/navigation/navigation-action-handler.ts +46 -78
  497. package/src/features/navigation/navigation-target-resolver.spec.ts +6 -9
  498. package/src/features/navigation/navigation-target-resolver.ts +16 -94
  499. package/src/features/rank/model.ts +3 -3
  500. package/src/features/reconnect/model.ts +9 -11
  501. package/src/features/save/di.config.ts +4 -5
  502. package/src/features/save/model.ts +1 -1
  503. package/src/features/save/{save.ts → save-keylistener.ts} +4 -12
  504. package/src/features/select/di.config.ts +6 -6
  505. package/src/features/select/select-feedback-action.ts +6 -8
  506. package/src/features/select/select-mouse-listener.ts +2 -2
  507. package/src/features/select/selection-service.spec.ts +25 -19
  508. package/src/features/select/selection-service.ts +25 -22
  509. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +56 -39
  510. package/src/features/tool-feedback/creation-tool-feedback.ts +49 -24
  511. package/src/features/tool-feedback/css-feedback.ts +16 -13
  512. package/src/features/tool-feedback/di.config.ts +12 -15
  513. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +56 -35
  514. package/src/features/tool-feedback/feedback-action-dispatcher.ts +13 -14
  515. package/src/features/tool-feedback/marquee-tool-feedback.ts +12 -12
  516. package/src/features/tool-feedback/model.ts +2 -3
  517. package/src/features/tool-feedback/view.tsx +20 -13
  518. package/src/features/tool-palette/di.config.ts +5 -5
  519. package/src/features/tool-palette/palette-item.ts +5 -7
  520. package/src/features/tool-palette/tool-palette.ts +118 -110
  521. package/src/features/tools/base-glsp-tool.ts +12 -12
  522. package/src/features/tools/change-bounds-tool.ts +83 -53
  523. package/src/features/tools/delete-tool.ts +23 -20
  524. package/src/features/tools/di.config.ts +16 -17
  525. package/src/features/tools/edge-creation-tool.ts +20 -25
  526. package/src/features/tools/edge-edit-tool.ts +43 -46
  527. package/src/features/tools/marquee-mouse-tool.ts +109 -62
  528. package/src/features/tools/marquee-tool.ts +6 -6
  529. package/src/features/tools/model.ts +1 -2
  530. package/src/features/tools/node-creation-tool.ts +16 -23
  531. package/src/features/tools/view.tsx +21 -15
  532. package/src/features/validation/di.config.ts +5 -5
  533. package/src/features/validation/issue-marker.ts +4 -5
  534. package/src/features/validation/marker-navigator.spec.ts +38 -33
  535. package/src/features/validation/marker-navigator.ts +39 -26
  536. package/src/features/validation/validate.ts +25 -59
  537. package/src/features/viewport/di.config.ts +4 -4
  538. package/src/features/viewport/glsp-scroll-mouse-listener.ts +5 -5
  539. package/src/index.ts +52 -38
  540. package/src/lib/model.ts +4 -4
  541. package/src/model-source/glsp-diagram-server.ts +19 -33
  542. package/src/protocol-reexport.ts +64 -0
  543. package/src/utils/argument-utils.ts +130 -0
  544. package/src/utils/layout-utils.ts +19 -11
  545. package/src/utils/marker.ts +8 -32
  546. package/src/utils/smodel-util.ts +28 -22
  547. package/src/utils/viewpoint-util.ts +5 -6
  548. package/src/views/base-view-module.ts +98 -0
  549. package/src/views/compartments.tsx +37 -0
  550. package/src/views/default-types.ts +48 -0
  551. package/src/views/glsp-edge-view.tsx +79 -0
  552. package/src/views/index.ts +22 -0
  553. package/src/views/issue-marker-view.tsx +65 -0
  554. package/src/views/rounded-corner-view.tsx +103 -0
  555. package/src/views/rounded-corner.ts +87 -0
  556. package/lib/base/actions/context-actions.d.ts +0 -36
  557. package/lib/base/actions/context-actions.d.ts.map +0 -1
  558. package/lib/base/actions/context-actions.js +0 -51
  559. package/lib/base/actions/context-actions.js.map +0 -1
  560. package/lib/base/actions/edit-mode-action.d.ts +0 -13
  561. package/lib/base/actions/edit-mode-action.d.ts.map +0 -1
  562. package/lib/base/actions/edit-mode-action.js +0 -56
  563. package/lib/base/actions/edit-mode-action.js.map +0 -1
  564. package/lib/base/actions/edit-validation-actions.d.ts +0 -78
  565. package/lib/base/actions/edit-validation-actions.d.ts.map +0 -1
  566. package/lib/base/actions/edit-validation-actions.js +0 -82
  567. package/lib/base/actions/edit-validation-actions.js.map +0 -1
  568. package/lib/base/actions/protocol-actions.d.ts +0 -41
  569. package/lib/base/actions/protocol-actions.d.ts.map +0 -1
  570. package/lib/base/actions/protocol-actions.js +0 -151
  571. package/lib/base/actions/protocol-actions.js.map +0 -1
  572. package/lib/base/args.d.ts.map +0 -1
  573. package/lib/base/args.js.map +0 -1
  574. package/lib/base/editor-context.d.ts +0 -46
  575. package/lib/base/editor-context.d.ts.map +0 -1
  576. package/lib/base/editor-context.js +0 -174
  577. package/lib/base/editor-context.js.map +0 -1
  578. package/lib/base/operations/operation.d.ts +0 -129
  579. package/lib/base/operations/operation.d.ts.map +0 -1
  580. package/lib/base/operations/operation.js +0 -201
  581. package/lib/base/operations/operation.js.map +0 -1
  582. package/lib/features/copy-paste/copy-paste-actions.d.ts +0 -50
  583. package/lib/features/copy-paste/copy-paste-actions.d.ts.map +0 -1
  584. package/lib/features/copy-paste/copy-paste-actions.js +0 -68
  585. package/lib/features/copy-paste/copy-paste-actions.js.map +0 -1
  586. package/lib/features/decoration/view.d.ts +0 -8
  587. package/lib/features/decoration/view.d.ts.map +0 -1
  588. package/lib/features/decoration/view.js +0 -80
  589. package/lib/features/decoration/view.js.map +0 -1
  590. package/lib/features/hints/request-type-hints-action.d.ts +0 -32
  591. package/lib/features/hints/request-type-hints-action.d.ts.map +0 -1
  592. package/lib/features/hints/request-type-hints-action.js +0 -30
  593. package/lib/features/hints/request-type-hints-action.js.map +0 -1
  594. package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +0 -1
  595. package/lib/features/model-source-watcher/model-source-changed-action.js +0 -17
  596. package/lib/features/model-source-watcher/model-source-changed-action.js.map +0 -1
  597. package/lib/features/save/save.d.ts.map +0 -1
  598. package/lib/features/save/save.js +0 -62
  599. package/lib/features/save/save.js.map +0 -1
  600. package/lib/features/undo-redo/model.d.ts.map +0 -1
  601. package/lib/features/undo-redo/model.js +0 -22
  602. package/lib/features/undo-redo/model.js.map +0 -1
  603. package/lib/model-source/glsp-server-status.d.ts +0 -30
  604. package/lib/model-source/glsp-server-status.d.ts.map +0 -1
  605. package/lib/model-source/glsp-server-status.js +0 -61
  606. package/lib/model-source/glsp-server-status.js.map +0 -1
  607. package/lib/utils/array-utils.d.ts +0 -28
  608. package/lib/utils/array-utils.d.ts.map +0 -1
  609. package/lib/utils/array-utils.js +0 -61
  610. package/lib/utils/array-utils.js.map +0 -1
  611. package/src/base/actions/context-actions.ts +0 -43
  612. package/src/base/actions/edit-mode-action.ts +0 -33
  613. package/src/base/actions/edit-validation-actions.ts +0 -102
  614. package/src/base/actions/protocol-actions.ts +0 -82
  615. package/src/base/operations/operation.ts +0 -148
  616. package/src/features/copy-paste/copy-paste-actions.ts +0 -60
  617. package/src/features/decoration/view.tsx +0 -54
  618. package/src/features/hints/request-type-hints-action.ts +0 -36
  619. package/src/model-source/glsp-server-status.ts +0 -38
  620. package/src/utils/array-utils.ts +0 -55
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2021 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,26 +13,23 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { ContainerModule } from "inversify";
17
- import { configureCommand, configureView, LocationPostprocessor, MoveCommand, TYPES } from "sprotty";
16
+ import { ContainerModule } from 'inversify';
17
+ import { configureCommand, configureView, LocationPostprocessor, MoveCommand, TYPES } from 'sprotty';
18
18
 
19
- import { GLSP_TYPES } from "../../base/types";
20
- import { SResizeHandle } from "../change-bounds/model";
21
- import {
22
- HideChangeBoundsToolResizeFeedbackCommand,
23
- ShowChangeBoundsToolResizeFeedbackCommand
24
- } from "./change-bounds-tool-feedback";
25
- import { DrawFeedbackEdgeCommand, FeedbackEdgeEnd, RemoveFeedbackEdgeCommand } from "./creation-tool-feedback";
26
- import { ModifyCssFeedbackCommand } from "./css-feedback";
19
+ import { GLSP_TYPES } from '../../base/types';
20
+ import { SResizeHandle } from '../change-bounds/model';
21
+ import { HideChangeBoundsToolResizeFeedbackCommand, ShowChangeBoundsToolResizeFeedbackCommand } from './change-bounds-tool-feedback';
22
+ import { DrawFeedbackEdgeCommand, FeedbackEdgeEnd, RemoveFeedbackEdgeCommand } from './creation-tool-feedback';
23
+ import { ModifyCssFeedbackCommand } from './css-feedback';
27
24
  import {
28
25
  DrawFeedbackEdgeSourceCommand,
29
26
  HideEdgeReconnectHandlesFeedbackCommand,
30
27
  ShowEdgeReconnectHandlesFeedbackCommand,
31
28
  SwitchRoutingModeCommand
32
- } from "./edge-edit-tool-feedback";
33
- import { FeedbackActionDispatcher } from "./feedback-action-dispatcher";
34
- import { DrawMarqueeCommand, RemoveMarqueeCommand } from "./marquee-tool-feedback";
35
- import { FeedbackEdgeEndView, SResizeHandleView } from "./view";
29
+ } from './edge-edit-tool-feedback';
30
+ import { FeedbackActionDispatcher } from './feedback-action-dispatcher';
31
+ import { DrawMarqueeCommand, RemoveMarqueeCommand } from './marquee-tool-feedback';
32
+ import { FeedbackEdgeEndView, SResizeHandleView } from './view';
36
33
 
37
34
  const toolFeedbackModule = new ContainerModule((bind, _unbind, isBound) => {
38
35
  bind(GLSP_TYPES.IFeedbackActionDispatcher).to(FeedbackActionDispatcher).inSingletonScope();
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2021 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,10 +13,11 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { inject, injectable } from "inversify";
17
- import { VNode } from "snabbdom/vnode";
16
+ import { Action, Point } from '@eclipse-glsp/protocol';
17
+ import { inject, injectable } from 'inversify';
18
+ import { VNode } from 'snabbdom';
18
19
  import {
19
- Action,
20
+ add,
20
21
  AnchorComputerRegistry,
21
22
  center,
22
23
  CommandExecutionContext,
@@ -32,7 +33,6 @@ import {
32
33
  isViewport,
33
34
  MouseListener,
34
35
  MoveAction,
35
- Point,
36
36
  PolylineEdgeRouter,
37
37
  SConnectableElement,
38
38
  SModelElement,
@@ -41,29 +41,23 @@ import {
41
41
  SwitchEditModeAction,
42
42
  SwitchEditModeCommand,
43
43
  TYPES
44
- } from "sprotty";
45
-
46
- import { isNotUndefined, isRoutable, isRoutingHandle } from "../../utils/smodel-util";
47
- import { getAbsolutePosition } from "../../utils/viewpoint-util";
48
- import { addReconnectHandles, removeReconnectHandles } from "../reconnect/model";
49
- import {
50
- FeedbackEdgeEnd,
51
- feedbackEdgeEndId,
52
- FeedbackEdgeEndMovingMouseListener,
53
- feedbackEdgeId
54
- } from "./creation-tool-feedback";
55
- import { FeedbackCommand } from "./model";
44
+ } from 'sprotty';
45
+ import { isNotUndefined, isRoutable, isRoutingHandle } from '../../utils/smodel-util';
46
+ import { getAbsolutePosition, toAbsoluteBounds } from '../../utils/viewpoint-util';
47
+ import { addReconnectHandles, removeReconnectHandles } from '../reconnect/model';
48
+ import { FeedbackEdgeEnd, feedbackEdgeEndId, FeedbackEdgeEndMovingMouseListener, feedbackEdgeId } from './creation-tool-feedback';
49
+ import { FeedbackCommand } from './model';
56
50
 
57
51
  /**
58
52
  * RECONNECT HANDLES FEEDBACK
59
53
  */
60
54
 
61
55
  export class ShowEdgeReconnectHandlesFeedbackAction implements Action {
62
- constructor(readonly elementId?: string, public readonly kind: string = ShowEdgeReconnectHandlesFeedbackCommand.KIND) { }
56
+ constructor(readonly elementId?: string, public readonly kind: string = ShowEdgeReconnectHandlesFeedbackCommand.KIND) {}
63
57
  }
64
58
 
65
59
  export class HideEdgeReconnectHandlesFeedbackAction implements Action {
66
- constructor(public readonly kind: string = HideEdgeReconnectHandlesFeedbackCommand.KIND) { }
60
+ constructor(public readonly kind: string = HideEdgeReconnectHandlesFeedbackCommand.KIND) {}
67
61
  }
68
62
 
69
63
  @injectable()
@@ -107,17 +101,21 @@ export class HideEdgeReconnectHandlesFeedbackCommand extends FeedbackCommand {
107
101
  */
108
102
 
109
103
  export class SwitchRoutingModeAction extends SwitchEditModeAction {
110
- constructor(public readonly elementsToActivate: string[] = [],
104
+ constructor(
105
+ public readonly elementsToActivate: string[] = [],
111
106
  public readonly elementsToDeactivate: string[] = [],
112
- public readonly kind: string = SwitchRoutingModeCommand.KIND) {
107
+ public readonly kind: string = SwitchRoutingModeCommand.KIND
108
+ ) {
113
109
  super(elementsToActivate, elementsToDeactivate);
114
110
  }
115
111
  }
116
112
 
117
113
  @injectable()
118
114
  export class SwitchRoutingModeCommand extends SwitchEditModeCommand {
119
- static KIND = "switchRoutingMode";
120
- constructor(@inject(TYPES.Action) action: SwitchRoutingModeAction) { super(action); }
115
+ static KIND = 'switchRoutingMode';
116
+ constructor(@inject(TYPES.Action) action: SwitchRoutingModeAction) {
117
+ super(action);
118
+ }
121
119
  }
122
120
 
123
121
  /**
@@ -125,7 +123,11 @@ export class SwitchRoutingModeCommand extends SwitchEditModeCommand {
125
123
  */
126
124
 
127
125
  export class DrawFeedbackEdgeSourceAction implements Action {
128
- constructor(readonly elementTypeId: string, readonly targetId: string, public readonly kind: string = DrawFeedbackEdgeSourceCommand.KIND) { }
126
+ constructor(
127
+ readonly elementTypeId: string,
128
+ readonly targetId: string,
129
+ public readonly kind: string = DrawFeedbackEdgeSourceCommand.KIND
130
+ ) {}
129
131
  }
130
132
 
131
133
  @injectable()
@@ -166,12 +168,12 @@ export class FeedbackEdgeSourceMovingMouseListener extends MouseListener {
166
168
 
167
169
  const edge = edgeEnd.feedbackEdge;
168
170
  const position = getAbsolutePosition(edgeEnd, event);
169
- const endAtMousePosition = findChildrenAtPosition(target.root, position)
170
- .find(e => isConnectable(e) && e.canConnect(edge, 'source'));
171
+ const endAtMousePosition = findChildrenAtPosition(target.root, position).find(
172
+ e => isConnectable(e) && e.canConnect(edge, 'source')
173
+ );
171
174
 
172
175
  if (endAtMousePosition instanceof SConnectableElement && edge.target && isBoundsAware(edge.target)) {
173
- const anchorComputer = this.anchorRegistry.get(PolylineEdgeRouter.KIND, endAtMousePosition.anchorKind);
174
- const anchor = anchorComputer.getAnchor(endAtMousePosition, center(edge.target.bounds));
176
+ const anchor = this.computeAbsoluteAnchor(endAtMousePosition, center(edge.target.bounds));
175
177
  if (euclideanDistance(anchor, edgeEnd.position) > 1) {
176
178
  return [new MoveAction([{ elementId: edgeEnd.id, toPosition: anchor }], false)];
177
179
  }
@@ -181,6 +183,21 @@ export class FeedbackEdgeSourceMovingMouseListener extends MouseListener {
181
183
 
182
184
  return [];
183
185
  }
186
+
187
+ protected computeAbsoluteAnchor(element: SConnectableElement, referencePoint: Point, offset?: number): Point {
188
+ const anchorComputer = this.anchorRegistry.get(PolylineEdgeRouter.KIND, element.anchorKind);
189
+ let anchor = anchorComputer.getAnchor(element, referencePoint, offset);
190
+ // The anchor is computed in the local coordinate system of the element.
191
+ // If the element is a nested child element we have to add the absolute position of its parent to the anchor.
192
+ if (element.parent !== element.root) {
193
+ const parent = findParentByFeature(element.parent, isBoundsAware);
194
+ if (parent) {
195
+ const absoluteParentPosition = toAbsoluteBounds(parent);
196
+ anchor = add(absoluteParentPosition, anchor);
197
+ }
198
+ }
199
+ return anchor;
200
+ }
184
201
  }
185
202
 
186
203
  export class FeedbackEdgeRouteMovingMouseListener extends MouseListener {
@@ -208,16 +225,17 @@ export class FeedbackEdgeRouteMovingMouseListener extends MouseListener {
208
225
 
209
226
  mouseMove(target: SModelElement, event: MouseEvent): Action[] {
210
227
  const result: Action[] = [];
211
- if (event.buttons === 0)
228
+ if (event.buttons === 0) {
212
229
  this.mouseUp(target, event);
213
- else if (this.lastDragPosition) {
230
+ } else if (this.lastDragPosition) {
214
231
  const viewport = findParentByFeature(target, isViewport);
215
232
  this.hasDragged = true;
216
233
  const zoom = viewport ? viewport.zoom : 1;
217
234
  const dx = (event.pageX - this.lastDragPosition.x) / zoom;
218
235
  const dy = (event.pageY - this.lastDragPosition.y) / zoom;
219
236
  const handleMoves: ElementMove[] = [];
220
- target.root.index.all()
237
+ target.root.index
238
+ .all()
221
239
  .filter(element => isSelected(element))
222
240
  .forEach(element => {
223
241
  if (isRoutingHandle(element)) {
@@ -235,8 +253,9 @@ export class FeedbackEdgeRouteMovingMouseListener extends MouseListener {
235
253
  }
236
254
  });
237
255
  this.lastDragPosition = { x: event.pageX, y: event.pageY };
238
- if (handleMoves.length > 0)
256
+ if (handleMoves.length > 0) {
239
257
  result.push(new MoveAction(handleMoves, false));
258
+ }
240
259
  }
241
260
  return result;
242
261
  }
@@ -244,8 +263,9 @@ export class FeedbackEdgeRouteMovingMouseListener extends MouseListener {
244
263
  protected getHandlePosition(handle: SRoutingHandle): Point | undefined {
245
264
  if (this.edgeRouterRegistry) {
246
265
  const parent = handle.parent;
247
- if (!isRoutable(parent))
266
+ if (!isRoutable(parent)) {
248
267
  return undefined;
268
+ }
249
269
  const router = this.edgeRouterRegistry.get(parent.routerKind);
250
270
  const route = router.route(parent);
251
271
  return router.getHandlePosition(parent, route, handle);
@@ -254,8 +274,9 @@ export class FeedbackEdgeRouteMovingMouseListener extends MouseListener {
254
274
  }
255
275
 
256
276
  mouseEnter(target: SModelElement, event: MouseEvent): Action[] {
257
- if (target instanceof SModelRoot && event.buttons === 0)
277
+ if (target instanceof SModelRoot && event.buttons === 0) {
258
278
  this.mouseUp(target, event);
279
+ }
259
280
  return [];
260
281
  }
261
282
 
@@ -274,7 +295,7 @@ export class FeedbackEdgeRouteMovingMouseListener extends MouseListener {
274
295
  * UTILITY FUNCTIONS
275
296
  */
276
297
 
277
- function drawFeedbackEdgeSource(context: CommandExecutionContext, targetId: string, elementTypeId: string) {
298
+ function drawFeedbackEdgeSource(context: CommandExecutionContext, targetId: string, elementTypeId: string): void {
278
299
  const root = context.root;
279
300
  const targetChild = root.index.getById(targetId);
280
301
  if (!targetChild) {
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2021 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,10 +13,11 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { inject, injectable } from "inversify";
17
- import { Action, IActionDispatcher, ILogger, TYPES } from "sprotty";
16
+ import { Action } from '@eclipse-glsp/protocol';
17
+ import { inject, injectable } from 'inversify';
18
+ import { IActionDispatcher, ILogger, TYPES } from 'sprotty';
18
19
 
19
- export interface IFeedbackEmitter { }
20
+ export interface IFeedbackEmitter {}
20
21
 
21
22
  /**
22
23
  * Dispatcher for actions that are meant to show visual feedback on
@@ -52,14 +53,14 @@ export interface IFeedbackActionDispatcher {
52
53
  deregisterFeedback(feedbackEmitter: IFeedbackEmitter, actions: Action[]): void;
53
54
 
54
55
  /**
55
- * Retrieve all `actions` sent out by currently registered `feedbackEmitter`.
56
- */
57
- getRegisteredFeedback(): Action[]
56
+ * Retrieve all `actions` sent out by currently registered `feedbackEmitter`.
57
+ */
58
+ getRegisteredFeedback(): Action[];
58
59
  }
59
60
 
60
61
  @injectable()
61
62
  export class FeedbackActionDispatcher implements IFeedbackActionDispatcher {
62
- protected feedbackEmitters: Map<IFeedbackEmitter, Action[]> = new Map;
63
+ protected feedbackEmitters: Map<IFeedbackEmitter, Action[]> = new Map();
63
64
 
64
65
  @inject(TYPES.IActionDispatcherProvider) protected actionDispatcher: () => Promise<IActionDispatcher>;
65
66
  @inject(TYPES.ILogger) protected logger: ILogger;
@@ -74,28 +75,26 @@ export class FeedbackActionDispatcher implements IFeedbackActionDispatcher {
74
75
  this.dispatch(actions, feedbackEmitter);
75
76
  }
76
77
 
77
- private dispatch(actions: Action[], feedbackEmitter: IFeedbackEmitter) {
78
+ private dispatch(actions: Action[], feedbackEmitter: IFeedbackEmitter): void {
78
79
  this.actionDispatcher()
79
80
  .then(dispatcher => dispatcher.dispatchAll(actions))
80
81
  .then(() => this.logger.info(this, `Dispatched feedback actions for ${feedbackEmitter}`))
81
82
  .catch(reason => this.logger.error(this, 'Failed to dispatch feedback actions', reason));
82
83
  }
83
84
 
84
- getRegisteredFeedback() {
85
+ getRegisteredFeedback(): Action[] {
85
86
  const result: Action[] = [];
86
87
  this.feedbackEmitters.forEach((value, key) => result.push(...value));
87
88
  return result;
88
89
  }
89
90
 
90
- getRegisteredFeedbackEmitters(action: Action) {
91
+ getRegisteredFeedbackEmitters(action: Action): IFeedbackEmitter[] {
91
92
  const result: IFeedbackEmitter[] = [];
92
93
  this.feedbackEmitters.forEach((value, key) => {
93
94
  if (value.find(a => a === action)) {
94
95
  result.push(key);
95
96
  }
96
- }
97
- );
97
+ });
98
98
  return result;
99
99
  }
100
-
101
100
  }
@@ -13,27 +13,26 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { inject, injectable } from "inversify";
16
+ import { Action, Point } from '@eclipse-glsp/protocol';
17
+ import { inject, injectable } from 'inversify';
17
18
  import {
18
- Action,
19
19
  AnchorComputerRegistry,
20
20
  CommandExecutionContext,
21
21
  CommandReturn,
22
22
  MouseListener,
23
- Point,
24
23
  SChildElement,
25
24
  SModelElement,
26
25
  SModelRoot,
27
26
  TYPES
28
- } from "sprotty";
29
-
30
- import { FeedbackCommand } from "./model";
27
+ } from 'sprotty';
28
+ import { FeedbackCommand } from './model';
31
29
 
32
30
  export class DrawMarqueeAction implements Action {
33
31
  constructor(
34
32
  public readonly startPoint: Point,
35
33
  public readonly endPoint: Point,
36
- public readonly kind: string = DrawMarqueeCommand.KIND) { }
34
+ public readonly kind: string = DrawMarqueeCommand.KIND
35
+ ) {}
37
36
  }
38
37
 
39
38
  @injectable()
@@ -51,7 +50,7 @@ export class DrawMarqueeCommand extends FeedbackCommand {
51
50
  }
52
51
 
53
52
  export class RemoveMarqueeAction implements Action {
54
- constructor(public readonly kind: string = RemoveMarqueeCommand.KIND) { }
53
+ constructor(public readonly kind: string = RemoveMarqueeCommand.KIND) {}
55
54
  }
56
55
 
57
56
  @injectable()
@@ -80,7 +79,7 @@ export function marqueeId(root: SModelRoot): string {
80
79
 
81
80
  export const MARQUEE = 'marquee';
82
81
 
83
- export function drawMarquee(context: CommandExecutionContext, startPoint: Point, endPoint: Point) {
82
+ export function drawMarquee(context: CommandExecutionContext, startPoint: Point, endPoint: Point): void {
84
83
  const root = context.root;
85
84
 
86
85
  removeMarquee(root);
@@ -89,15 +88,16 @@ export function drawMarquee(context: CommandExecutionContext, startPoint: Point,
89
88
  type: MARQUEE,
90
89
  id: marqueeId(root),
91
90
  startPoint: startPoint,
92
- endPoint: endPoint,
91
+ endPoint: endPoint
93
92
  };
94
93
 
95
94
  const marquee = context.modelFactory.createElement(marqueeSchema);
96
95
  root.add(marquee);
97
96
  }
98
97
 
99
- export function removeMarquee(root: SModelRoot) {
98
+ export function removeMarquee(root: SModelRoot): void {
100
99
  const marquee = root.index.getById(marqueeId(root));
101
- if (marquee instanceof SChildElement)
100
+ if (marquee instanceof SChildElement) {
102
101
  root.remove(marquee);
102
+ }
103
103
  }
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2021 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,7 +13,7 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Command, CommandExecutionContext, CommandReturn } from "sprotty";
16
+ import { Command, CommandExecutionContext, CommandReturn } from 'sprotty';
17
17
 
18
18
  export abstract class FeedbackCommand extends Command {
19
19
  // used by the `FeedbackAwareUpdateModelCommand`
@@ -29,4 +29,3 @@ export abstract class FeedbackCommand extends Command {
29
29
  return context.root;
30
30
  }
31
31
  }
32
-
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2021 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,19 +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 { injectable } from "inversify";
17
- import * as snabbdom from "snabbdom-jsx";
18
- import { VNode } from "snabbdom/vnode";
19
- import { IView, ORIGIN_POINT, Point, RenderingContext, setAttr, SModelElement } from "sprotty";
16
+ import { Point } from '@eclipse-glsp/protocol';
17
+ import { injectable } from 'inversify';
18
+ import { VNode } from 'snabbdom';
19
+ import { IView, ORIGIN_POINT, RenderingContext, setAttr, SModelElement, svg } from 'sprotty';
20
+ import { isResizable, ResizeHandleLocation, SResizeHandle } from '../change-bounds/model';
20
21
 
21
- import { isResizable, ResizeHandleLocation, SResizeHandle } from "../change-bounds/model";
22
-
23
- const JSX = { createElement: snabbdom.svg };
22
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
23
+ const JSX = { createElement: svg };
24
24
 
25
25
  /**
26
- * This view is used for the invisible end of the feedback edge.
27
- * A feedback edge is shown as a visual feedback when creating edges.
28
- */
26
+ * This view is used for the invisible end of the feedback edge.
27
+ * A feedback edge is shown as a visual feedback when creating edges.
28
+ */
29
29
  @injectable()
30
30
  export class FeedbackEdgeEndView implements IView {
31
31
  render(model: Readonly<SModelElement>, context: RenderingContext): VNode {
@@ -39,8 +39,15 @@ export class SResizeHandleView implements IView {
39
39
  render(handle: SResizeHandle, context: RenderingContext): VNode {
40
40
  const position = this.getPosition(handle);
41
41
  if (position !== undefined) {
42
- const node = <circle class-sprotty-resize-handle={true} class-mouseover={handle.hoverFeedback}
43
- cx={position.x} cy={position.y} r={this.getRadius()} />;
42
+ const node = (
43
+ <circle
44
+ class-sprotty-resize-handle={true}
45
+ class-mouseover={handle.hoverFeedback}
46
+ cx={position.x}
47
+ cy={position.y}
48
+ r={this.getRadius()}
49
+ />
50
+ );
44
51
  setAttr(node, 'data-kind', handle.location);
45
52
  return node;
46
53
  }
@@ -13,14 +13,14 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import "../../../css/tool-palette.css";
16
+ import '../../../css/tool-palette.css';
17
17
 
18
- import { ContainerModule } from "inversify";
19
- import { configureActionHandler, EnableDefaultToolsAction, TYPES } from "sprotty";
18
+ import { ContainerModule } from 'inversify';
19
+ import { configureActionHandler, EnableDefaultToolsAction, TYPES } from 'sprotty';
20
20
 
21
- import { EnableToolPaletteAction, ToolPalette } from "./tool-palette";
21
+ import { EnableToolPaletteAction, ToolPalette } from './tool-palette';
22
22
 
23
- const toolPaletteModule = new ContainerModule((bind, _unbind, isBound) => {
23
+ const toolPaletteModule = new ContainerModule((bind, _unbind, isBound, rebind) => {
24
24
  bind(ToolPalette).toSelf().inSingletonScope();
25
25
  bind(TYPES.IUIExtension).toService(ToolPalette);
26
26
  configureActionHandler({ bind, isBound }, EnableToolPaletteAction.KIND, ToolPalette);
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2020 EclipseSource and others.
2
+ * Copyright (c) 2020-2021 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,9 +13,7 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { isLabeledAction, LabeledAction } from "sprotty";
17
-
18
- import { isTriggerElementTypeCreationAction, TriggerElementCreationAction } from "../../base/operations/operation";
16
+ import { isLabeledAction, isTriggerElementTypeCreationAction, LabeledAction, TriggerElementCreationAction } from '@eclipse-glsp/protocol';
19
17
 
20
18
  export interface PaletteItem extends LabeledAction {
21
19
  readonly id: string;
@@ -24,17 +22,17 @@ export interface PaletteItem extends LabeledAction {
24
22
  }
25
23
 
26
24
  export function isPaletteItem(object?: any): object is PaletteItem {
27
- return isLabeledAction(object) && "id" in object && "sortString" in object;
25
+ return isLabeledAction(object) && 'id' in object && 'sortString' in object;
28
26
  }
29
27
 
30
28
  export namespace PaletteItem {
31
29
  export function getTriggerAction(item?: PaletteItem): TriggerElementCreationAction | undefined {
32
30
  if (item) {
33
- const initiAction = item.actions.filter(a => isTriggerElementTypeCreationAction(a))
31
+ const initiAction = item.actions
32
+ .filter(a => isTriggerElementTypeCreationAction(a))
34
33
  .map(action => action as TriggerElementCreationAction);
35
34
  return initiAction.length > 0 ? initiAction[0] : undefined;
36
35
  }
37
36
  return undefined;
38
37
  }
39
38
  }
40
-