@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
@@ -13,10 +13,10 @@
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, TYPES } from "sprotty";
16
+ import { ContainerModule } from 'inversify';
17
+ import { configureCommand, TYPES } from 'sprotty';
18
18
 
19
- import { GLSP_TYPES } from "../../base/types";
19
+ import { GLSP_TYPES } from '../../base/types';
20
20
  import {
21
21
  LeftToRightTopToBottomComparator,
22
22
  MarkerNavigator,
@@ -24,8 +24,8 @@ import {
24
24
  MarkerNavigatorKeyListener,
25
25
  NavigateToMarkerCommand,
26
26
  SModelElementComparator
27
- } from "./marker-navigator";
28
- import { ApplyMarkersCommand, DeleteMarkersCommand, SetMarkersCommand, ValidationFeedbackEmitter } from "./validate";
27
+ } from './marker-navigator';
28
+ import { ApplyMarkersCommand, DeleteMarkersCommand, SetMarkersCommand, ValidationFeedbackEmitter } from './validate';
29
29
 
30
30
  export const validationModule = new ContainerModule((bind, _unbind, isBound) => {
31
31
  configureCommand({ bind, isBound }, SetMarkersCommand);
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2020 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,9 +13,8 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { SDecoration, SIssue, SIssueMarker, SParentElement } from "sprotty";
17
-
18
- import { Marker, MarkerKind } from "../../utils/marker";
16
+ import { Marker, MarkerKind } from '@eclipse-glsp/protocol';
17
+ import { SDecoration, SIssue, SIssueMarker, SParentElement } from 'sprotty';
19
18
 
20
19
  export class GIssueMarker extends SIssueMarker {
21
20
  constructor() {
@@ -38,7 +37,7 @@ export function getOrCreateSIssueMarker(modelElement: SParentElement): SIssueMar
38
37
 
39
38
  if (issueMarker === undefined) {
40
39
  issueMarker = new GIssueMarker();
41
- issueMarker.type = "marker";
40
+ issueMarker.type = 'marker';
42
41
  issueMarker.issues = new Array<SIssue>();
43
42
  modelElement.add(issueMarker);
44
43
  }
@@ -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,11 +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 "mocha";
17
- import "reflect-metadata";
18
-
19
- import { expect } from "chai";
20
- import { Container } from "inversify";
16
+ /* eslint-disable import/no-deprecated,no-unused-expressions */
17
+ import { expect } from 'chai';
18
+ import { Container } from 'inversify';
19
+ import 'mocha';
20
+ import 'reflect-metadata';
21
21
  import {
22
22
  BoundsAware,
23
23
  decorationModule,
@@ -29,12 +29,11 @@ import {
29
29
  SNodeSchema,
30
30
  SParentElement,
31
31
  TYPES
32
- } from "sprotty/lib";
33
- import defaultModule from "sprotty/lib/base/di.config";
34
- import { SGraphFactory } from "sprotty/lib/graph/sgraph-factory";
35
-
36
- import { markerNavigatorModule } from "./di.config";
37
- import { MarkerNavigator } from "./marker-navigator";
32
+ } from 'sprotty';
33
+ import defaultModule from 'sprotty/lib/base/di.config';
34
+ import { SGraphFactory } from 'sprotty/lib/graph/sgraph-factory';
35
+ import { markerNavigatorModule } from './di.config';
36
+ import { MarkerNavigator } from './marker-navigator';
38
37
 
39
38
  describe('MarkerNavigator', () => {
40
39
  const container = new Container();
@@ -44,28 +43,36 @@ describe('MarkerNavigator', () => {
44
43
  const markerNavigator = container.get<MarkerNavigator>(MarkerNavigator);
45
44
 
46
45
  const rootWithoutAnyMarkers = graphFactory.createRoot({
47
- id: 'root', type: 'graph', children: [
48
- <SNodeSchema>{
46
+ id: 'root',
47
+ type: 'graph',
48
+ children: [
49
+ {
49
50
  id: '1',
50
51
  type: 'node'
51
- }
52
+ } as SNodeSchema
52
53
  ]
53
54
  }) as SModelRoot;
54
55
 
55
56
  const rootWithMarkers = graphFactory.createRoot({
56
- id: 'root', type: 'graph', children: [
57
- <SNodeSchema>{
58
- id: 'bottom-right', type: 'node'
59
- },
60
- <SNodeSchema>{
61
- id: 'top-right', type: 'node'
62
- },
63
- <SNodeSchema>{
64
- id: 'top-left', type: 'node'
65
- },
66
- <SNodeSchema>{
67
- id: 'bottom-left', type: 'node'
68
- }
57
+ id: 'root',
58
+ type: 'graph',
59
+ children: [
60
+ {
61
+ id: 'bottom-right',
62
+ type: 'node'
63
+ } as SNodeSchema,
64
+ {
65
+ id: 'top-right',
66
+ type: 'node'
67
+ } as SNodeSchema,
68
+ {
69
+ id: 'top-left',
70
+ type: 'node'
71
+ } as SNodeSchema,
72
+ {
73
+ id: 'bottom-left',
74
+ type: 'node'
75
+ } as SNodeSchema
69
76
  ]
70
77
  }) as SModelRoot;
71
78
 
@@ -167,14 +174,13 @@ describe('MarkerNavigator', () => {
167
174
  expect(found4).to.eql(marker2);
168
175
  expect(found5).to.eql(marker1);
169
176
  });
170
-
171
177
  });
172
178
 
173
- function clearMarker(elem: SParentElement) {
179
+ function clearMarker(elem: SParentElement): void {
174
180
  elem.children.filter(isMarker).forEach(marker => elem.remove(marker));
175
181
  }
176
182
 
177
- function setIssues(elem: SParentElement, issues: SIssue[]) {
183
+ function setIssues(elem: SParentElement, issues: SIssue[]): SIssueMarker {
178
184
  const marker = getOrCreateMarker(elem);
179
185
  marker.issues = issues;
180
186
  return marker;
@@ -196,11 +202,10 @@ function isMarker(element: SModelElement): element is SIssueMarker {
196
202
  return element instanceof SIssueMarker;
197
203
  }
198
204
 
199
- function createMarker(elem: SParentElement) {
205
+ function createMarker(elem: SParentElement): SIssueMarker {
200
206
  const newMarker = new SIssueMarker();
201
207
  newMarker.type = 'marker';
202
208
  newMarker.id = `${elem.id}_marker`;
203
209
  elem.add(newMarker);
204
210
  return newMarker;
205
211
  }
206
-
@@ -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,11 +13,10 @@
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, CenterAction, Point } from '@eclipse-glsp/protocol';
17
+ import { inject, injectable } from 'inversify';
17
18
  import {
18
- Action,
19
19
  BoundsAware,
20
- CenterAction,
21
20
  CenterCommand,
22
21
  Command,
23
22
  CommandExecutionContext,
@@ -28,20 +27,19 @@ import {
28
27
  isSelectable,
29
28
  KeyListener,
30
29
  MenuItem,
31
- Point,
30
+ Selectable,
32
31
  SelectAction,
33
32
  SIssueMarker,
34
33
  SIssueSeverity,
35
34
  SModelElement,
36
35
  SModelRoot,
37
36
  TYPES
38
- } from "sprotty";
39
- import { matchesKeystroke } from "sprotty/lib/utils/keyboard";
40
-
41
- import { GLSP_TYPES } from "../../base/types";
42
- import { collectIssueMarkers, MarkerPredicates } from "../../utils/marker";
43
- import { isSelectableAndBoundsAware } from "../../utils/smodel-util";
44
- import { SelectCommand, SelectionService } from "../select/selection-service";
37
+ } from 'sprotty';
38
+ import { matchesKeystroke } from 'sprotty/lib/utils/keyboard';
39
+ import { GLSP_TYPES } from '../../base/types';
40
+ import { collectIssueMarkers, MarkerPredicates } from '../../utils/marker';
41
+ import { isSelectableAndBoundsAware } from '../../utils/smodel-util';
42
+ import { SelectCommand, SelectionService } from '../select/selection-service';
45
43
 
46
44
  export class NavigateToMarkerAction implements Action {
47
45
  static readonly KIND = 'navigateToMarker';
@@ -50,7 +48,8 @@ export class NavigateToMarkerAction implements Action {
50
48
  public readonly direction: 'next' | 'previous' = 'next',
51
49
  public readonly selectedElementIds?: string[],
52
50
  public readonly severities: SIssueSeverity[] = MarkerNavigator.ALL_SEVERITIES,
53
- public kind = NavigateToMarkerAction.KIND) { }
51
+ public kind = NavigateToMarkerAction.KIND
52
+ ) {}
54
53
  }
55
54
 
56
55
  export class SModelElementComparator {
@@ -89,7 +88,11 @@ export class MarkerNavigator {
89
88
  @inject(SModelElementComparator)
90
89
  protected markerComparator: SModelElementComparator;
91
90
 
92
- next(root: SModelRoot, current?: SModelElement & BoundsAware, predicate: (marker: SIssueMarker) => boolean = MarkerPredicates.ALL): SIssueMarker | undefined {
91
+ next(
92
+ root: SModelRoot,
93
+ current?: SModelElement & BoundsAware,
94
+ predicate: (marker: SIssueMarker) => boolean = MarkerPredicates.ALL
95
+ ): SIssueMarker | undefined {
93
96
  const markers = this.getMarkers(root, predicate);
94
97
  if (current === undefined) {
95
98
  return markers.length > 0 ? markers[0] : undefined;
@@ -97,7 +100,11 @@ export class MarkerNavigator {
97
100
  return markers[this.getNextIndex(current, markers) % markers.length];
98
101
  }
99
102
 
100
- previous(root: SModelRoot, current?: SModelElement & BoundsAware, predicate: (marker: SIssueMarker) => boolean = MarkerPredicates.ALL): SIssueMarker | undefined {
103
+ previous(
104
+ root: SModelRoot,
105
+ current?: SModelElement & BoundsAware,
106
+ predicate: (marker: SIssueMarker) => boolean = MarkerPredicates.ALL
107
+ ): SIssueMarker | undefined {
101
108
  const markers = this.getMarkers(root, predicate);
102
109
  if (current === undefined) {
103
110
  return markers.length > 0 ? markers[0] : undefined;
@@ -105,12 +112,12 @@ export class MarkerNavigator {
105
112
  return markers[this.getPreviousIndex(current, markers) % markers.length];
106
113
  }
107
114
 
108
- protected getMarkers(root: SModelRoot, predicate: (marker: SIssueMarker) => boolean) {
115
+ protected getMarkers(root: SModelRoot, predicate: (marker: SIssueMarker) => boolean): SIssueMarker[] {
109
116
  const markers = collectIssueMarkers(root);
110
117
  return markers.filter(predicate).sort(this.markerComparator.compare);
111
118
  }
112
119
 
113
- protected getNextIndex(current: SModelElement & BoundsAware, markers: SIssueMarker[]) {
120
+ protected getNextIndex(current: SModelElement & BoundsAware, markers: SIssueMarker[]): number {
114
121
  for (let index = 0; index < markers.length; index++) {
115
122
  if (this.markerComparator.compare(markers[index], current) > 0) {
116
123
  return index;
@@ -119,7 +126,7 @@ export class MarkerNavigator {
119
126
  return 0;
120
127
  }
121
128
 
122
- protected getPreviousIndex(current: SModelElement & BoundsAware, markers: SIssueMarker[]) {
129
+ protected getPreviousIndex(current: SModelElement & BoundsAware, markers: SIssueMarker[]): number {
123
130
  for (let index = markers.length - 1; index >= 0; index--) {
124
131
  if (this.markerComparator.compare(markers[index], current) < 0) {
125
132
  return index;
@@ -168,7 +175,7 @@ export class NavigateToMarkerCommand extends Command {
168
175
  return root;
169
176
  }
170
177
 
171
- protected getSelectedElements(root: SModelRoot) {
178
+ protected getSelectedElements(root: SModelRoot): (SModelElement & Selectable)[] {
172
179
  let selectedIds = [];
173
180
  if (this.action.selectedElementIds !== undefined && this.action.selectedElementIds.length > 0) {
174
181
  selectedIds = this.action.selectedElementIds;
@@ -178,13 +185,13 @@ export class NavigateToMarkerCommand extends Command {
178
185
  return selectedIds.map(id => root.index.getById(id)).filter(isSelectable);
179
186
  }
180
187
 
181
- protected getTarget(selected: SModelElement[], root: SModelRoot) {
188
+ protected getTarget(selected: SModelElement[], root: SModelRoot): SIssueMarker | undefined {
182
189
  const selectedBoundsAware = selected.filter(isBoundsAware).sort(this.markerComparator.compare);
183
190
  const currentTopmost = selectedBoundsAware.length > 0 ? selectedBoundsAware[0] : undefined;
184
191
  if (this.action.direction === 'previous') {
185
- return this.markerNavigator.previous(root, currentTopmost, (marker) => this.matchesSeverities(marker));
192
+ return this.markerNavigator.previous(root, currentTopmost, marker => this.matchesSeverities(marker));
186
193
  } else {
187
- return this.markerNavigator.next(root, currentTopmost, (marker) => this.matchesSeverities(marker));
194
+ return this.markerNavigator.next(root, currentTopmost, marker => this.matchesSeverities(marker));
188
195
  }
189
196
  }
190
197
 
@@ -205,7 +212,6 @@ export class NavigateToMarkerCommand extends Command {
205
212
  }
206
213
  return this.centerCommand ? this.centerCommand.redo(context) : context.root;
207
214
  }
208
-
209
215
  }
210
216
 
211
217
  @injectable()
@@ -217,15 +223,22 @@ export class MarkerNavigatorContextMenuItemProvider implements IContextMenuItemP
217
223
  const hasMarkers = collectIssueMarkers(root).length > 0;
218
224
  return Promise.resolve([
219
225
  {
220
- id: "navigate", label: "Go to", group: "navigate", actions: [],
226
+ id: 'navigate',
227
+ label: 'Go to',
228
+ group: 'navigate',
229
+ actions: [],
221
230
  children: [
222
231
  {
223
- id: "next-marker", label: "Next marker", group: "marker",
232
+ id: 'next-marker',
233
+ label: 'Next marker',
234
+ group: 'marker',
224
235
  actions: [new NavigateToMarkerAction('next', selectedElementIds)],
225
236
  isEnabled: () => hasMarkers
226
237
  },
227
238
  {
228
- id: "previous-marker", label: "Previous marker", group: "marker",
239
+ id: 'previous-marker',
240
+ label: 'Previous marker',
241
+ group: 'marker',
229
242
  actions: [new NavigateToMarkerAction('previous', selectedElementIds)],
230
243
  isEnabled: () => hasMarkers
231
244
  }
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019-2020 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,9 +13,9 @@
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, optional } from "inversify";
16
+ import { Action, DeleteMarkersAction, Marker, SetMarkersAction } from '@eclipse-glsp/protocol';
17
+ import { inject, injectable, optional } from 'inversify';
17
18
  import {
18
- Action,
19
19
  Command,
20
20
  CommandExecutionContext,
21
21
  CommandReturn,
@@ -26,17 +26,14 @@ import {
26
26
  SModelRoot,
27
27
  SParentElement,
28
28
  TYPES
29
- } from "sprotty";
30
-
31
- import { EditorContextService } from "../../base/editor-context";
32
- import { GLSP_TYPES } from "../../base/types";
33
- import { Marker } from "../../utils/marker";
34
- import { removeCssClasses } from "../../utils/smodel-util";
35
- import { getSeverity } from "../hover/hover";
36
- import { IFeedbackActionDispatcher, IFeedbackEmitter } from "../tool-feedback/feedback-action-dispatcher";
37
- import { FeedbackCommand } from "../tool-feedback/model";
38
- import { createSIssue, getOrCreateSIssueMarker, getSIssueMarker } from "./issue-marker";
39
-
29
+ } from 'sprotty';
30
+ import { EditorContextService } from '../../base/editor-context-service';
31
+ import { GLSP_TYPES } from '../../base/types';
32
+ import { removeCssClasses } from '../../utils/smodel-util';
33
+ import { getSeverity } from '../hover/hover';
34
+ import { IFeedbackActionDispatcher, IFeedbackEmitter } from '../tool-feedback/feedback-action-dispatcher';
35
+ import { FeedbackCommand } from '../tool-feedback/model';
36
+ import { createSIssue, getOrCreateSIssueMarker, getSIssueMarker } from './issue-marker';
40
37
 
41
38
  /**
42
39
  * Feedback emitter sending actions for visualizing model validation feedback and
@@ -44,20 +41,20 @@ import { createSIssue, getOrCreateSIssueMarker, getSIssueMarker } from "./issue-
44
41
  */
45
42
  @injectable()
46
43
  export class ValidationFeedbackEmitter implements IFeedbackEmitter {
47
-
48
44
  @inject(GLSP_TYPES.IFeedbackActionDispatcher) protected feedbackActionDispatcher: IFeedbackActionDispatcher;
49
45
 
50
46
  @inject(TYPES.IActionDispatcherProvider) protected actionDispatcher: () => Promise<IActionDispatcher>;
51
47
 
52
48
  private registeredAction: MarkersAction;
53
49
 
54
- private constructor() { }
50
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
51
+ private constructor() {}
55
52
 
56
53
  /**
57
54
  * Register the action that should be emitted for visualizing validation feedback.
58
55
  * @param action the action that should be emitted when the model is updated and that will visualize the model validation feedback.
59
56
  */
60
- registerValidationFeedbackAction(action: MarkersAction) {
57
+ registerValidationFeedbackAction(action: MarkersAction): void {
61
58
  // De-register old action responsible for applying markers and re-applying them when the model is updated
62
59
  this.feedbackActionDispatcher.deregisterFeedback(this, []);
63
60
 
@@ -73,17 +70,6 @@ export class ValidationFeedbackEmitter implements IFeedbackEmitter {
73
70
  }
74
71
  }
75
72
 
76
- /**
77
- * Action to set markers for a model
78
- */
79
- export class SetMarkersAction implements MarkersAction {
80
- constructor(public readonly markers: Marker[], public readonly kind = SetMarkersCommand.KIND) { }
81
- }
82
-
83
- export function isSetMarkersAction(action: Action): action is SetMarkersAction {
84
- return SetMarkersCommand.KIND === action.kind && ('markers' in action);
85
- }
86
-
87
73
  /**
88
74
  * Manages current markers for the outside of the GLSP.
89
75
  *
@@ -92,16 +78,15 @@ export function isSetMarkersAction(action: Action): action is SetMarkersAction {
92
78
  */
93
79
  @injectable()
94
80
  export abstract class ExternalMarkerManager {
95
-
96
81
  languageLabel: string;
97
82
 
98
83
  protected actionDispatcher?: IActionDispatcher;
99
84
 
100
- connect(actionDispatcher: IActionDispatcher) {
85
+ connect(actionDispatcher: IActionDispatcher): void {
101
86
  this.actionDispatcher = actionDispatcher;
102
87
  }
103
88
 
104
- removeMarkers(markers: Marker[]) {
89
+ removeMarkers(markers: Marker[]): void {
105
90
  if (this.actionDispatcher) {
106
91
  this.actionDispatcher.dispatch(new DeleteMarkersAction(markers));
107
92
  }
@@ -115,12 +100,11 @@ export abstract class ExternalMarkerManager {
115
100
  */
116
101
  @injectable()
117
102
  export class SetMarkersCommand extends Command {
118
-
119
103
  @inject(ValidationFeedbackEmitter) protected validationFeedbackEmitter: ValidationFeedbackEmitter;
120
104
  @inject(ExternalMarkerManager) @optional() protected externalMarkerManager?: ExternalMarkerManager;
121
105
  @inject(EditorContextService) protected editorContextService: EditorContextService;
122
106
 
123
- static readonly KIND = 'setMarkers';
107
+ static readonly KIND = SetMarkersAction.KIND;
124
108
 
125
109
  constructor(@inject(TYPES.Action) public action: SetMarkersAction) {
126
110
  super();
@@ -129,7 +113,9 @@ export class SetMarkersCommand extends Command {
129
113
  async execute(context: CommandExecutionContext): Promise<SModelRoot> {
130
114
  const markers: Marker[] = this.action.markers;
131
115
  const uri = await this.editorContextService.getSourceUri();
132
- if (this.externalMarkerManager) this.externalMarkerManager.setMarkers(markers, uri);
116
+ if (this.externalMarkerManager) {
117
+ this.externalMarkerManager.setMarkers(markers, uri);
118
+ }
133
119
  const applyMarkersAction: ApplyMarkersAction = new ApplyMarkersAction(markers);
134
120
  this.validationFeedbackEmitter.registerValidationFeedbackAction(applyMarkersAction);
135
121
  return context.root;
@@ -144,15 +130,6 @@ export class SetMarkersCommand extends Command {
144
130
  }
145
131
  }
146
132
 
147
-
148
- /**
149
- * Action to retrieve markers for a model
150
- */
151
- export class RequestMarkersAction implements Action {
152
- static readonly KIND = "requestMarkers";
153
- constructor(public readonly elementsIDs: string[] = [], public readonly kind = RequestMarkersAction.KIND) { }
154
- }
155
-
156
133
  /**
157
134
  * Interface for actions processing markers
158
135
  */
@@ -165,7 +142,7 @@ export interface MarkersAction extends Action {
165
142
  */
166
143
  @injectable()
167
144
  export class ApplyMarkersAction implements MarkersAction {
168
- constructor(public readonly markers: Marker[], public readonly kind = ApplyMarkersCommand.KIND) { }
145
+ constructor(public readonly markers: Marker[], public readonly kind = ApplyMarkersCommand.KIND) {}
169
146
  }
170
147
 
171
148
  /**
@@ -173,7 +150,7 @@ export class ApplyMarkersAction implements MarkersAction {
173
150
  */
174
151
  @injectable()
175
152
  export class ApplyMarkersCommand extends FeedbackCommand {
176
- static KIND = "applyMarkers";
153
+ static KIND = 'applyMarkers';
177
154
  readonly priority = 0;
178
155
 
179
156
  constructor(@inject(TYPES.Action) protected action: ApplyMarkersAction) {
@@ -203,7 +180,7 @@ export class ApplyMarkersCommand extends FeedbackCommand {
203
180
  }
204
181
  }
205
182
 
206
- function addMaxSeverityCSSClassToIssueParent(modelElement: SParentElement, issueMarker: SIssueMarker) {
183
+ function addMaxSeverityCSSClassToIssueParent(modelElement: SParentElement, issueMarker: SIssueMarker): void {
207
184
  const maxSeverityCSSClass = getSeverity(issueMarker);
208
185
 
209
186
  if (!modelElement.cssClasses) {
@@ -214,25 +191,16 @@ function addMaxSeverityCSSClassToIssueParent(modelElement: SParentElement, issue
214
191
  }
215
192
  }
216
193
 
217
- function removeCSSClassFromIssueParent(modelElement: SParentElement, issueMarker: SIssueMarker) {
194
+ function removeCSSClassFromIssueParent(modelElement: SParentElement, issueMarker: SIssueMarker): void {
218
195
  removeCssClasses(modelElement, [getSeverity(issueMarker)]);
219
196
  }
220
197
 
221
-
222
- /**
223
- * Action for clearing makers of a model
224
- */
225
- @injectable()
226
- export class DeleteMarkersAction implements MarkersAction {
227
- constructor(public readonly markers: Marker[], public readonly kind = DeleteMarkersCommand.KIND) { }
228
- }
229
-
230
198
  /**
231
199
  * Command for handling `DeleteMarkersAction`
232
200
  */
233
201
  @injectable()
234
202
  export class DeleteMarkersCommand extends Command {
235
- static KIND = "deleteMarkers";
203
+ static KIND = DeleteMarkersAction.KIND;
236
204
 
237
205
  constructor(@inject(TYPES.Action) protected action: DeleteMarkersAction) {
238
206
  super();
@@ -271,5 +239,3 @@ export class DeleteMarkersCommand extends Command {
271
239
  return this.execute(context);
272
240
  }
273
241
  }
274
-
275
-
@@ -13,6 +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 { ContainerModule } from 'inversify';
16
17
  import {
17
18
  CenterCommand,
18
19
  CenterKeyboardListener,
@@ -24,11 +25,10 @@ import {
24
25
  GetViewportCommand,
25
26
  SetViewportCommand,
26
27
  TYPES,
27
- ZoomMouseListener,
28
- } from "sprotty";
29
- import { ContainerModule } from "inversify";
28
+ ZoomMouseListener
29
+ } from 'sprotty';
30
30
 
31
- import { GLSPScrollMouseListener } from "./glsp-scroll-mouse-listener";
31
+ import { GLSPScrollMouseListener } from './glsp-scroll-mouse-listener';
32
32
 
33
33
  const glspViewportModule = new ContainerModule((bind, _unbind, isBound) => {
34
34
  configureCommand({ bind, isBound }, CenterCommand);
@@ -13,13 +13,13 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
- import { Action, EnableDefaultToolsAction, EnableToolsAction, IActionHandler, ICommand, ScrollMouseListener, SModelElement } from "sprotty";
17
- import { injectable } from "inversify";
18
- import { MarqueeMouseTool } from "../tools/marquee-mouse-tool";
16
+ import { Action } from '@eclipse-glsp/protocol';
17
+ import { injectable } from 'inversify';
18
+ import { EnableDefaultToolsAction, EnableToolsAction, IActionHandler, ICommand, ScrollMouseListener, SModelElement } from 'sprotty';
19
+ import { MarqueeMouseTool } from '../tools/marquee-mouse-tool';
19
20
 
20
21
  @injectable()
21
22
  export class GLSPScrollMouseListener extends ScrollMouseListener implements IActionHandler {
22
-
23
23
  preventScrolling = false;
24
24
 
25
25
  handle(action: Action): void | Action | ICommand {
@@ -32,7 +32,7 @@ export class GLSPScrollMouseListener extends ScrollMouseListener implements IAct
32
32
  }
33
33
  }
34
34
 
35
- mouseDown(target: SModelElement, event: MouseEvent): Action[] {
35
+ mouseDown(target: SModelElement, event: MouseEvent): (Action | Promise<Action>)[] {
36
36
  if (this.preventScrolling) {
37
37
  return [];
38
38
  }