@eclipse-glsp/client 0.9.0-rc-01 → 0.10.0-next.146a812.165

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 (599) hide show
  1. package/LICENSE +642 -277
  2. package/README.md +4 -2
  3. package/css/command-palette.css +9 -5
  4. package/css/decoration.css +3 -2
  5. package/css/glsp-sprotty.css +125 -14
  6. package/css/tool-palette.css +44 -27
  7. package/lib/base/action-dispatcher.d.ts +19 -3
  8. package/lib/base/action-dispatcher.d.ts.map +1 -1
  9. package/lib/base/action-dispatcher.js +47 -65
  10. package/lib/base/action-dispatcher.js.map +1 -1
  11. package/lib/base/actions/focus-change-action.d.ts +1 -1
  12. package/lib/base/actions/focus-change-action.d.ts.map +1 -1
  13. package/lib/base/actions/focus-change-action.js +4 -5
  14. package/lib/base/actions/focus-change-action.js.map +1 -1
  15. package/lib/base/{args.d.ts → argumentable.d.ts} +3 -5
  16. package/lib/base/argumentable.d.ts.map +1 -0
  17. package/lib/base/{args.js → argumentable.js} +1 -1
  18. package/lib/base/argumentable.js.map +1 -0
  19. package/lib/base/auto-complete/auto-complete-actions.d.ts +1 -1
  20. package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -1
  21. package/lib/base/auto-complete/auto-complete-widget.d.ts +3 -3
  22. package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
  23. package/lib/base/auto-complete/auto-complete-widget.js +123 -157
  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 +44 -65
  28. package/lib/base/auto-complete/validation-decorator.js.map +1 -1
  29. package/lib/base/command-stack.d.ts.map +1 -1
  30. package/lib/base/command-stack.js +19 -37
  31. package/lib/base/command-stack.js.map +1 -1
  32. package/lib/base/container-modules.d.ts +40 -0
  33. package/lib/base/container-modules.d.ts.map +1 -0
  34. package/lib/base/container-modules.js +100 -0
  35. package/lib/base/container-modules.js.map +1 -0
  36. package/lib/base/di.config.d.ts +12 -2
  37. package/lib/base/di.config.d.ts.map +1 -1
  38. package/lib/base/di.config.js +46 -30
  39. package/lib/base/di.config.js.map +1 -1
  40. package/lib/base/drag-aware-mouse-listener.d.ts +3 -2
  41. package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
  42. package/lib/base/drag-aware-mouse-listener.js +23 -62
  43. package/lib/base/drag-aware-mouse-listener.js.map +1 -1
  44. package/lib/base/{editor-context.d.ts → editor-context-service.d.ts} +18 -22
  45. package/lib/base/editor-context-service.d.ts.map +1 -0
  46. package/lib/base/editor-context-service.js +110 -0
  47. package/lib/base/editor-context-service.js.map +1 -0
  48. package/lib/base/focus-tracker.d.ts +17 -1
  49. package/lib/base/focus-tracker.d.ts.map +1 -1
  50. package/lib/base/focus-tracker.js +20 -40
  51. package/lib/base/focus-tracker.js.map +1 -1
  52. package/lib/base/model/model-registry.d.ts.map +1 -1
  53. package/lib/base/model/model-registry.js +11 -29
  54. package/lib/base/model/model-registry.js.map +1 -1
  55. package/lib/base/model/update-model-command.d.ts +19 -5
  56. package/lib/base/model/update-model-command.d.ts.map +1 -1
  57. package/lib/base/model/update-model-command.js +69 -94
  58. package/lib/base/model/update-model-command.js.map +1 -1
  59. package/lib/base/model-initialization-constraint.d.ts +18 -3
  60. package/lib/base/model-initialization-constraint.d.ts.map +1 -1
  61. package/lib/base/model-initialization-constraint.js +37 -58
  62. package/lib/base/model-initialization-constraint.js.map +1 -1
  63. package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -1
  64. package/lib/base/selection-clearing-mouse-listener.js +10 -28
  65. package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
  66. package/lib/base/source-uri-aware.js +2 -5
  67. package/lib/base/source-uri-aware.js.map +1 -1
  68. package/lib/base/tool-manager/glsp-tool-manager.d.ts +2 -2
  69. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
  70. package/lib/base/tool-manager/glsp-tool-manager.js +58 -140
  71. package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
  72. package/lib/base/types.d.ts +3 -1
  73. package/lib/base/types.d.ts.map +1 -1
  74. package/lib/base/types.js +4 -2
  75. package/lib/base/types.js.map +1 -1
  76. package/lib/base/view/view-registry.d.ts.map +1 -1
  77. package/lib/base/view/view-registry.js +11 -29
  78. package/lib/base/view/view-registry.js.map +1 -1
  79. package/lib/features/change-bounds/model.d.ts +3 -1
  80. package/lib/features/change-bounds/model.d.ts.map +1 -1
  81. package/lib/features/change-bounds/model.js +22 -33
  82. package/lib/features/change-bounds/model.js.map +1 -1
  83. package/lib/features/change-bounds/movement-restrictor.d.ts +17 -1
  84. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
  85. package/lib/features/change-bounds/movement-restrictor.js +29 -43
  86. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  87. package/lib/features/change-bounds/snap.d.ts +58 -1
  88. package/lib/features/change-bounds/snap.d.ts.map +1 -1
  89. package/lib/features/change-bounds/snap.js +91 -41
  90. package/lib/features/change-bounds/snap.js.map +1 -1
  91. package/{src/features/undo-redo/model.ts → lib/features/change-bounds/snap.spec.d.ts} +3 -12
  92. package/lib/features/change-bounds/snap.spec.d.ts.map +1 -0
  93. package/lib/features/change-bounds/snap.spec.js +82 -0
  94. package/lib/features/change-bounds/snap.spec.js.map +1 -0
  95. package/lib/features/command-palette/command-palette-tool.js +30 -38
  96. package/lib/features/command-palette/command-palette-tool.js.map +1 -1
  97. package/lib/features/command-palette/di.config.js +6 -6
  98. package/lib/features/command-palette/di.config.js.map +1 -1
  99. package/lib/features/command-palette/server-command-palette-provider.d.ts +18 -2
  100. package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
  101. package/lib/features/command-palette/server-command-palette-provider.js +28 -33
  102. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
  103. package/lib/features/context-menu/delete-element-context-menu.d.ts +1 -1
  104. package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
  105. package/lib/features/context-menu/delete-element-context-menu.js +20 -68
  106. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
  107. package/lib/features/context-menu/di.config.d.ts +1 -1
  108. package/lib/features/context-menu/di.config.d.ts.map +1 -1
  109. package/lib/features/context-menu/di.config.js +8 -8
  110. package/lib/features/context-menu/di.config.js.map +1 -1
  111. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +16 -0
  112. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
  113. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +61 -71
  114. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
  115. package/lib/features/context-menu/server-context-menu-provider.d.ts +18 -2
  116. package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
  117. package/lib/features/context-menu/server-context-menu-provider.js +30 -31
  118. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  119. package/lib/features/copy-paste/copy-paste-context-menu.d.ts +22 -2
  120. package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
  121. package/lib/features/copy-paste/copy-paste-context-menu.js +99 -72
  122. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  123. package/lib/features/copy-paste/copy-paste-handler.d.ts +19 -2
  124. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
  125. package/lib/features/copy-paste/copy-paste-handler.js +70 -70
  126. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  127. package/lib/features/copy-paste/di.config.d.ts +1 -1
  128. package/lib/features/copy-paste/di.config.d.ts.map +1 -1
  129. package/lib/features/copy-paste/di.config.js +11 -11
  130. package/lib/features/copy-paste/di.config.js.map +1 -1
  131. package/lib/features/decoration/decoration-placer.d.ts +17 -1
  132. package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
  133. package/lib/features/decoration/decoration-placer.js +13 -47
  134. package/lib/features/decoration/decoration-placer.js.map +1 -1
  135. package/lib/features/decoration/di.config.js +4 -4
  136. package/lib/features/decoration/di.config.js.map +1 -1
  137. package/lib/features/edit-label/di.config.js +7 -7
  138. package/lib/features/edit-label/di.config.js.map +1 -1
  139. package/lib/features/edit-label/edit-label-tool.js +20 -43
  140. package/lib/features/edit-label/edit-label-tool.js.map +1 -1
  141. package/lib/features/edit-label/edit-label-validator.d.ts +16 -1
  142. package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
  143. package/lib/features/edit-label/edit-label-validator.js +40 -62
  144. package/lib/features/edit-label/edit-label-validator.js.map +1 -1
  145. package/lib/features/hints/di.config.d.ts +0 -15
  146. package/lib/features/hints/di.config.d.ts.map +1 -1
  147. package/lib/features/hints/di.config.js +9 -9
  148. package/lib/features/hints/di.config.js.map +1 -1
  149. package/lib/features/hints/model.d.ts +3 -2
  150. package/lib/features/hints/model.d.ts.map +1 -1
  151. package/lib/features/hints/model.js.map +1 -1
  152. package/lib/features/hints/type-hints.d.ts +17 -45
  153. package/lib/features/hints/type-hints.d.ts.map +1 -1
  154. package/lib/features/hints/type-hints.js +81 -140
  155. package/lib/features/hints/type-hints.js.map +1 -1
  156. package/lib/features/hover/di.config.d.ts +1 -1
  157. package/lib/features/hover/di.config.d.ts.map +1 -1
  158. package/lib/features/hover/di.config.js +19 -17
  159. package/lib/features/hover/di.config.js.map +1 -1
  160. package/lib/features/hover/hover.d.ts +28 -2
  161. package/lib/features/hover/hover.d.ts.map +1 -1
  162. package/lib/features/hover/hover.js +56 -76
  163. package/lib/features/hover/hover.js.map +1 -1
  164. package/lib/features/layout/di.config.d.ts +1 -1
  165. package/lib/features/layout/di.config.d.ts.map +1 -1
  166. package/lib/features/layout/di.config.js +11 -7
  167. package/lib/features/layout/di.config.js.map +1 -1
  168. package/lib/features/layout/freeform-layout.d.ts +16 -0
  169. package/lib/features/layout/freeform-layout.d.ts.map +1 -0
  170. package/lib/features/layout/freeform-layout.js +107 -0
  171. package/lib/features/layout/freeform-layout.js.map +1 -0
  172. package/lib/features/layout/layout-commands.d.ts +19 -3
  173. package/lib/features/layout/layout-commands.d.ts.map +1 -1
  174. package/lib/features/layout/layout-commands.js +196 -269
  175. package/lib/features/layout/layout-commands.js.map +1 -1
  176. package/lib/features/layout/layout-commands.spec.d.ts +0 -15
  177. package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
  178. package/lib/features/layout/layout-commands.spec.js +101 -95
  179. package/lib/features/layout/layout-commands.spec.js.map +1 -1
  180. package/lib/features/layout/vbox-layout.d.ts +25 -0
  181. package/lib/features/layout/vbox-layout.d.ts.map +1 -0
  182. package/lib/features/layout/vbox-layout.js +188 -0
  183. package/lib/features/layout/vbox-layout.js.map +1 -0
  184. package/lib/features/model-source-watcher/di.config.d.ts +0 -15
  185. package/lib/features/model-source-watcher/di.config.d.ts.map +1 -1
  186. package/lib/features/model-source-watcher/di.config.js +7 -7
  187. package/lib/features/model-source-watcher/di.config.js.map +1 -1
  188. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +17 -2
  189. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -1
  190. package/lib/features/model-source-watcher/model-source-changed-action-handler.js +38 -46
  191. package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -1
  192. package/lib/features/mouse-tool/di.config.js +5 -5
  193. package/lib/features/mouse-tool/di.config.js.map +1 -1
  194. package/lib/features/mouse-tool/mouse-tool.d.ts +10 -5
  195. package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
  196. package/lib/features/mouse-tool/mouse-tool.js +54 -235
  197. package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
  198. package/lib/features/navigation/di.config.d.ts +0 -15
  199. package/lib/features/navigation/di.config.d.ts.map +1 -1
  200. package/lib/features/navigation/di.config.js +11 -10
  201. package/lib/features/navigation/di.config.js.map +1 -1
  202. package/lib/features/navigation/navigation-action-handler.d.ts +19 -38
  203. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
  204. package/lib/features/navigation/navigation-action-handler.js +118 -254
  205. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  206. package/lib/features/navigation/navigation-target-resolver.d.ts +18 -40
  207. package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
  208. package/lib/features/navigation/navigation-target-resolver.js +46 -188
  209. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  210. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +0 -15
  211. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
  212. package/lib/features/navigation/navigation-target-resolver.spec.js +27 -27
  213. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
  214. package/lib/features/rank/model.d.ts +1 -1
  215. package/lib/features/rank/model.js +2 -2
  216. package/lib/features/rank/model.js.map +1 -1
  217. package/lib/features/reconnect/model.d.ts +1 -1
  218. package/lib/features/reconnect/model.d.ts.map +1 -1
  219. package/lib/features/reconnect/model.js +9 -27
  220. package/lib/features/reconnect/model.js.map +1 -1
  221. package/lib/features/save/di.config.d.ts +1 -1
  222. package/lib/features/save/di.config.d.ts.map +1 -1
  223. package/lib/features/save/di.config.js +6 -6
  224. package/lib/features/save/di.config.js.map +1 -1
  225. package/lib/features/save/{save.d.ts → save-keylistener.d.ts} +4 -10
  226. package/lib/features/save/save-keylistener.d.ts.map +1 -0
  227. package/lib/features/{undo-redo/model.d.ts → save/save-keylistener.js} +16 -12
  228. package/lib/features/save/save-keylistener.js.map +1 -0
  229. package/lib/features/select/di.config.js +11 -11
  230. package/lib/features/select/di.config.js.map +1 -1
  231. package/lib/features/select/select-feedback-action.d.ts.map +1 -1
  232. package/lib/features/select/select-feedback-action.js +45 -71
  233. package/lib/features/select/select-feedback-action.js.map +1 -1
  234. package/lib/features/select/select-mouse-listener.js +7 -23
  235. package/lib/features/select/select-mouse-listener.js.map +1 -1
  236. package/lib/features/select/selection-service.d.ts +18 -2
  237. package/lib/features/select/selection-service.d.ts.map +1 -1
  238. package/lib/features/select/selection-service.js +140 -240
  239. package/lib/features/select/selection-service.js.map +1 -1
  240. package/lib/features/select/selection-service.spec.js +111 -154
  241. package/lib/features/select/selection-service.spec.js.map +1 -1
  242. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +19 -2
  243. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
  244. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +110 -150
  245. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
  246. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +18 -2
  247. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
  248. package/lib/features/tool-feedback/creation-tool-feedback.js +103 -124
  249. package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
  250. package/lib/features/tool-feedback/css-feedback.d.ts +20 -2
  251. package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
  252. package/lib/features/tool-feedback/css-feedback.js +37 -81
  253. package/lib/features/tool-feedback/css-feedback.js.map +1 -1
  254. package/lib/features/tool-feedback/di.config.d.ts +1 -1
  255. package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
  256. package/lib/features/tool-feedback/di.config.js +27 -27
  257. package/lib/features/tool-feedback/di.config.js.map +1 -1
  258. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +24 -5
  259. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
  260. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +185 -239
  261. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
  262. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +20 -4
  263. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
  264. package/lib/features/tool-feedback/feedback-action-dispatcher.js +35 -72
  265. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
  266. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +17 -1
  267. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
  268. package/lib/features/tool-feedback/marquee-tool-feedback.js +41 -84
  269. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
  270. package/lib/features/tool-feedback/model.d.ts +1 -2
  271. package/lib/features/tool-feedback/model.d.ts.map +1 -1
  272. package/lib/features/tool-feedback/model.js +11 -27
  273. package/lib/features/tool-feedback/model.js.map +1 -1
  274. package/lib/features/tool-feedback/view.d.ts +21 -5
  275. package/lib/features/tool-feedback/view.d.ts.map +1 -1
  276. package/lib/features/tool-feedback/view.js +31 -53
  277. package/lib/features/tool-feedback/view.js.map +1 -1
  278. package/lib/features/tool-palette/di.config.d.ts +1 -1
  279. package/lib/features/tool-palette/di.config.d.ts.map +1 -1
  280. package/lib/features/tool-palette/di.config.js +6 -6
  281. package/lib/features/tool-palette/di.config.js.map +1 -1
  282. package/lib/features/tool-palette/palette-item.d.ts +2 -3
  283. package/lib/features/tool-palette/palette-item.d.ts.map +1 -1
  284. package/lib/features/tool-palette/palette-item.js +6 -6
  285. package/lib/features/tool-palette/palette-item.js.map +1 -1
  286. package/lib/features/tool-palette/tool-palette.d.ts +19 -3
  287. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  288. package/lib/features/tool-palette/tool-palette.js +203 -271
  289. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  290. package/lib/features/tools/base-glsp-tool.d.ts +20 -4
  291. package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
  292. package/lib/features/tools/base-glsp-tool.js +39 -61
  293. package/lib/features/tools/base-glsp-tool.js.map +1 -1
  294. package/lib/features/tools/change-bounds-tool.d.ts +22 -7
  295. package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
  296. package/lib/features/tools/change-bounds-tool.js +196 -270
  297. package/lib/features/tools/change-bounds-tool.js.map +1 -1
  298. package/lib/features/tools/delete-tool.d.ts +17 -1
  299. package/lib/features/tools/delete-tool.d.ts.map +1 -1
  300. package/lib/features/tools/delete-tool.js +75 -108
  301. package/lib/features/tools/delete-tool.js.map +1 -1
  302. package/lib/features/tools/di.config.d.ts +0 -15
  303. package/lib/features/tools/di.config.d.ts.map +1 -1
  304. package/lib/features/tools/di.config.js +20 -20
  305. package/lib/features/tools/di.config.js.map +1 -1
  306. package/lib/features/tools/edge-creation-tool.d.ts +17 -2
  307. package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
  308. package/lib/features/tools/edge-creation-tool.js +68 -93
  309. package/lib/features/tools/edge-creation-tool.js.map +1 -1
  310. package/lib/features/tools/edge-edit-tool.d.ts +18 -1
  311. package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
  312. package/lib/features/tools/edge-edit-tool.js +129 -195
  313. package/lib/features/tools/edge-edit-tool.js.map +1 -1
  314. package/lib/features/tools/marquee-behavior.d.ts +42 -0
  315. package/lib/features/tools/marquee-behavior.d.ts.map +1 -0
  316. package/lib/features/tools/marquee-behavior.js +128 -0
  317. package/lib/features/tools/marquee-behavior.js.map +1 -0
  318. package/lib/features/{model-source-watcher/model-source-changed-action.d.ts → tools/marquee-behavior.spec.d.ts} +3 -10
  319. package/lib/features/tools/marquee-behavior.spec.d.ts.map +1 -0
  320. package/lib/features/tools/marquee-behavior.spec.js +165 -0
  321. package/lib/features/tools/marquee-behavior.spec.js.map +1 -0
  322. package/lib/features/tools/marquee-mouse-tool.d.ts +24 -13
  323. package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
  324. package/lib/features/tools/marquee-mouse-tool.js +89 -198
  325. package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
  326. package/lib/features/tools/marquee-tool.d.ts +17 -1
  327. package/lib/features/tools/marquee-tool.d.ts.map +1 -1
  328. package/lib/features/tools/marquee-tool.js +32 -73
  329. package/lib/features/tools/marquee-tool.js.map +1 -1
  330. package/lib/features/tools/model.d.ts +1 -1
  331. package/lib/features/tools/model.d.ts.map +1 -1
  332. package/lib/features/tools/model.js +5 -23
  333. package/lib/features/tools/model.js.map +1 -1
  334. package/lib/features/tools/node-creation-tool.d.ts +17 -2
  335. package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
  336. package/lib/features/tools/node-creation-tool.js +63 -93
  337. package/lib/features/tools/node-creation-tool.js.map +1 -1
  338. package/lib/features/tools/view.d.ts +1 -1
  339. package/lib/features/tools/view.d.ts.map +1 -1
  340. package/lib/features/tools/view.js +13 -32
  341. package/lib/features/tools/view.js.map +1 -1
  342. package/lib/features/validation/di.config.js +12 -12
  343. package/lib/features/validation/di.config.js.map +1 -1
  344. package/lib/features/validation/issue-marker.d.ts +2 -2
  345. package/lib/features/validation/issue-marker.d.ts.map +1 -1
  346. package/lib/features/validation/issue-marker.js +17 -55
  347. package/lib/features/validation/issue-marker.js.map +1 -1
  348. package/lib/features/validation/marker-navigator.d.ts +17 -1
  349. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  350. package/lib/features/validation/marker-navigator.js +134 -167
  351. package/lib/features/validation/marker-navigator.js.map +1 -1
  352. package/lib/features/validation/marker-navigator.spec.d.ts +0 -15
  353. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
  354. package/lib/features/validation/marker-navigator.spec.js +104 -98
  355. package/lib/features/validation/marker-navigator.spec.js.map +1 -1
  356. package/lib/features/validation/validate.d.ts +18 -29
  357. package/lib/features/validation/validate.d.ts.map +1 -1
  358. package/lib/features/validation/validate.js +148 -301
  359. package/lib/features/validation/validate.js.map +1 -1
  360. package/lib/features/viewport/di.config.js +10 -10
  361. package/lib/features/viewport/di.config.js.map +1 -1
  362. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +18 -2
  363. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
  364. package/lib/features/viewport/glsp-scroll-mouse-listener.js +16 -47
  365. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
  366. package/lib/index.d.ts +9 -15
  367. package/lib/index.d.ts.map +1 -1
  368. package/lib/index.js +36 -37
  369. package/lib/index.js.map +1 -1
  370. package/lib/lib/model.d.ts +1 -1
  371. package/lib/lib/model.d.ts.map +1 -1
  372. package/lib/lib/model.js +12 -28
  373. package/lib/lib/model.js.map +1 -1
  374. package/lib/model-source/glsp-diagram-server.d.ts +3 -5
  375. package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
  376. package/lib/model-source/glsp-diagram-server.js +61 -121
  377. package/lib/model-source/glsp-diagram-server.js.map +1 -1
  378. package/lib/protocol-reexport.d.ts +45 -0
  379. package/lib/protocol-reexport.d.ts.map +1 -0
  380. package/lib/protocol-reexport.js +80 -0
  381. package/lib/protocol-reexport.js.map +1 -0
  382. package/lib/utils/argument-utils.d.ts +3 -3
  383. package/lib/utils/argument-utils.d.ts.map +1 -1
  384. package/lib/utils/argument-utils.js +32 -97
  385. package/lib/utils/argument-utils.js.map +1 -1
  386. package/lib/utils/html-utils.js +2 -2
  387. package/lib/utils/html-utils.js.map +1 -1
  388. package/lib/utils/layout-utils.d.ts +3 -2
  389. package/lib/utils/layout-utils.d.ts.map +1 -1
  390. package/lib/utils/layout-utils.js +5 -5
  391. package/lib/utils/layout-utils.js.map +1 -1
  392. package/lib/utils/marker.d.ts +0 -38
  393. package/lib/utils/marker.d.ts.map +1 -1
  394. package/lib/utils/marker.js +14 -61
  395. package/lib/utils/marker.js.map +1 -1
  396. package/lib/utils/smodel-util.d.ts +116 -10
  397. package/lib/utils/smodel-util.d.ts.map +1 -1
  398. package/lib/utils/smodel-util.js +131 -75
  399. package/lib/utils/smodel-util.js.map +1 -1
  400. package/lib/utils/viewpoint-util.d.ts +3 -2
  401. package/lib/utils/viewpoint-util.d.ts.map +1 -1
  402. package/lib/utils/viewpoint-util.js +15 -30
  403. package/lib/utils/viewpoint-util.js.map +1 -1
  404. package/lib/views/base-view-module.d.ts +0 -15
  405. package/lib/views/base-view-module.d.ts.map +1 -1
  406. package/lib/views/base-view-module.js +28 -28
  407. package/lib/views/base-view-module.js.map +1 -1
  408. package/lib/views/compartments.d.ts +6 -0
  409. package/lib/views/compartments.d.ts.map +1 -0
  410. package/lib/views/compartments.js +43 -0
  411. package/lib/views/compartments.js.map +1 -0
  412. package/lib/views/glsp-edge-view.d.ts +18 -3
  413. package/lib/views/glsp-edge-view.d.ts.map +1 -1
  414. package/lib/views/glsp-edge-view.js +32 -77
  415. package/lib/views/glsp-edge-view.js.map +1 -1
  416. package/lib/views/index.d.ts +1 -1
  417. package/lib/views/index.d.ts.map +1 -1
  418. package/lib/views/index.js +7 -3
  419. package/lib/views/index.js.map +1 -1
  420. package/lib/views/issue-marker-view.d.ts +2 -1
  421. package/lib/views/issue-marker-view.d.ts.map +1 -1
  422. package/lib/views/issue-marker-view.js +37 -51
  423. package/lib/views/issue-marker-view.js.map +1 -1
  424. package/lib/views/rounded-corner-view.d.ts +2 -3
  425. package/lib/views/rounded-corner-view.d.ts.map +1 -1
  426. package/lib/views/rounded-corner-view.js +41 -71
  427. package/lib/views/rounded-corner-view.js.map +1 -1
  428. package/lib/views/rounded-corner.d.ts +2 -1
  429. package/lib/views/rounded-corner.d.ts.map +1 -1
  430. package/lib/views/rounded-corner.js +44 -65
  431. package/lib/views/rounded-corner.js.map +1 -1
  432. package/package.json +13 -31
  433. package/src/base/action-dispatcher.ts +15 -15
  434. package/src/base/actions/focus-change-action.ts +2 -2
  435. package/src/base/{args.ts → argumentable.ts} +2 -3
  436. package/src/base/auto-complete/auto-complete-actions.ts +1 -1
  437. package/src/base/auto-complete/auto-complete-widget.ts +37 -25
  438. package/src/base/auto-complete/validation-decorator.ts +12 -11
  439. package/src/base/command-stack.ts +4 -7
  440. package/src/base/container-modules.ts +112 -0
  441. package/src/base/di.config.ts +33 -18
  442. package/src/base/drag-aware-mouse-listener.ts +6 -7
  443. package/src/base/{editor-context.ts → editor-context-service.ts} +4 -31
  444. package/src/base/focus-tracker.ts +2 -4
  445. package/src/base/model/model-registry.ts +2 -2
  446. package/src/base/model/update-model-command.ts +9 -17
  447. package/src/base/model-initialization-constraint.ts +10 -10
  448. package/src/base/selection-clearing-mouse-listener.ts +1 -1
  449. package/src/base/tool-manager/glsp-tool-manager.ts +9 -11
  450. package/src/base/types.ts +4 -2
  451. package/src/base/view/view-registry.ts +2 -2
  452. package/src/features/change-bounds/model.ts +17 -7
  453. package/src/features/change-bounds/movement-restrictor.ts +17 -9
  454. package/src/features/change-bounds/snap.spec.ts +89 -0
  455. package/src/features/change-bounds/snap.ts +87 -2
  456. package/src/features/command-palette/server-command-palette-provider.ts +11 -9
  457. package/src/features/context-menu/delete-element-context-menu.ts +3 -4
  458. package/src/features/context-menu/di.config.ts +11 -9
  459. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +41 -11
  460. package/src/features/context-menu/server-context-menu-provider.ts +10 -7
  461. package/src/features/copy-paste/copy-paste-context-menu.ts +59 -30
  462. package/src/features/copy-paste/copy-paste-handler.ts +18 -10
  463. package/src/features/copy-paste/di.config.ts +2 -3
  464. package/src/features/decoration/decoration-placer.ts +4 -14
  465. package/src/features/edit-label/edit-label-validator.ts +11 -12
  466. package/src/features/hints/di.config.ts +2 -3
  467. package/src/features/hints/model.ts +4 -3
  468. package/src/features/hints/type-hints.ts +24 -91
  469. package/src/features/hover/di.config.ts +4 -3
  470. package/src/features/hover/hover.ts +27 -8
  471. package/src/features/layout/di.config.ts +8 -4
  472. package/src/features/layout/freeform-layout.ts +133 -0
  473. package/src/features/layout/layout-commands.spec.ts +82 -64
  474. package/src/features/layout/layout-commands.ts +47 -38
  475. package/src/features/layout/vbox-layout.ts +260 -0
  476. package/src/features/model-source-watcher/di.config.ts +3 -4
  477. package/src/features/model-source-watcher/model-source-changed-action-handler.ts +11 -7
  478. package/src/features/mouse-tool/mouse-tool.ts +28 -54
  479. package/src/features/navigation/di.config.ts +4 -10
  480. package/src/features/navigation/navigation-action-handler.ts +33 -69
  481. package/src/features/navigation/navigation-target-resolver.spec.ts +3 -7
  482. package/src/features/navigation/navigation-target-resolver.ts +13 -91
  483. package/src/features/rank/model.ts +2 -2
  484. package/src/features/reconnect/model.ts +3 -4
  485. package/src/features/save/di.config.ts +2 -3
  486. package/src/features/save/{save.ts → save-keylistener.ts} +4 -12
  487. package/src/features/select/select-feedback-action.ts +4 -6
  488. package/src/features/select/selection-service.spec.ts +11 -6
  489. package/src/features/select/selection-service.ts +18 -13
  490. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +33 -26
  491. package/src/features/tool-feedback/creation-tool-feedback.ts +49 -14
  492. package/src/features/tool-feedback/css-feedback.ts +9 -6
  493. package/src/features/tool-feedback/di.config.ts +2 -5
  494. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +78 -68
  495. package/src/features/tool-feedback/feedback-action-dispatcher.ts +9 -10
  496. package/src/features/tool-feedback/marquee-tool-feedback.ts +6 -7
  497. package/src/features/tool-feedback/model.ts +1 -4
  498. package/src/features/tool-feedback/view.tsx +17 -11
  499. package/src/features/tool-palette/di.config.ts +2 -4
  500. package/src/features/tool-palette/palette-item.ts +4 -6
  501. package/src/features/tool-palette/tool-palette.ts +48 -42
  502. package/src/features/tools/base-glsp-tool.ts +10 -10
  503. package/src/features/tools/change-bounds-tool.ts +73 -74
  504. package/src/features/tools/delete-tool.ts +11 -8
  505. package/src/features/tools/di.config.ts +2 -3
  506. package/src/features/tools/edge-creation-tool.ts +7 -12
  507. package/src/features/tools/edge-edit-tool.ts +19 -26
  508. package/src/features/tools/marquee-behavior.spec.ts +175 -0
  509. package/src/features/tools/marquee-behavior.ts +158 -0
  510. package/src/features/tools/marquee-mouse-tool.ts +48 -139
  511. package/src/features/tools/marquee-tool.ts +4 -5
  512. package/src/features/tools/model.ts +2 -2
  513. package/src/features/tools/node-creation-tool.ts +6 -13
  514. package/src/features/tools/view.tsx +19 -15
  515. package/src/features/validation/issue-marker.ts +2 -3
  516. package/src/features/validation/marker-navigator.spec.ts +18 -14
  517. package/src/features/validation/marker-navigator.ts +29 -15
  518. package/src/features/validation/validate.ts +10 -43
  519. package/src/features/viewport/glsp-scroll-mouse-listener.ts +4 -13
  520. package/src/index.ts +30 -19
  521. package/src/lib/model.ts +2 -3
  522. package/src/model-source/glsp-diagram-server.ts +18 -32
  523. package/src/protocol-reexport.ts +64 -0
  524. package/src/utils/argument-utils.ts +14 -11
  525. package/src/utils/layout-utils.ts +13 -7
  526. package/src/utils/marker.ts +2 -26
  527. package/src/utils/smodel-util.ts +140 -38
  528. package/src/utils/viewpoint-util.ts +4 -4
  529. package/src/views/base-view-module.ts +1 -2
  530. package/src/{base/actions/edit-mode-action.ts → views/compartments.tsx} +18 -14
  531. package/src/views/glsp-edge-view.tsx +25 -18
  532. package/src/views/index.ts +1 -1
  533. package/src/views/issue-marker-view.tsx +29 -20
  534. package/src/views/rounded-corner-view.tsx +40 -28
  535. package/src/views/rounded-corner.ts +5 -6
  536. package/lib/base/actions/context-actions.d.ts +0 -36
  537. package/lib/base/actions/context-actions.d.ts.map +0 -1
  538. package/lib/base/actions/context-actions.js +0 -51
  539. package/lib/base/actions/context-actions.js.map +0 -1
  540. package/lib/base/actions/edit-mode-action.d.ts +0 -13
  541. package/lib/base/actions/edit-mode-action.d.ts.map +0 -1
  542. package/lib/base/actions/edit-mode-action.js +0 -56
  543. package/lib/base/actions/edit-mode-action.js.map +0 -1
  544. package/lib/base/actions/edit-validation-actions.d.ts +0 -78
  545. package/lib/base/actions/edit-validation-actions.d.ts.map +0 -1
  546. package/lib/base/actions/edit-validation-actions.js +0 -83
  547. package/lib/base/actions/edit-validation-actions.js.map +0 -1
  548. package/lib/base/actions/protocol-actions.d.ts +0 -41
  549. package/lib/base/actions/protocol-actions.d.ts.map +0 -1
  550. package/lib/base/actions/protocol-actions.js +0 -151
  551. package/lib/base/actions/protocol-actions.js.map +0 -1
  552. package/lib/base/args.d.ts.map +0 -1
  553. package/lib/base/args.js.map +0 -1
  554. package/lib/base/editor-context.d.ts.map +0 -1
  555. package/lib/base/editor-context.js +0 -174
  556. package/lib/base/editor-context.js.map +0 -1
  557. package/lib/base/operations/operation.d.ts +0 -135
  558. package/lib/base/operations/operation.d.ts.map +0 -1
  559. package/lib/base/operations/operation.js +0 -231
  560. package/lib/base/operations/operation.js.map +0 -1
  561. package/lib/features/copy-paste/copy-paste-actions.d.ts +0 -50
  562. package/lib/features/copy-paste/copy-paste-actions.d.ts.map +0 -1
  563. package/lib/features/copy-paste/copy-paste-actions.js +0 -68
  564. package/lib/features/copy-paste/copy-paste-actions.js.map +0 -1
  565. package/lib/features/hints/request-type-hints-action.d.ts +0 -32
  566. package/lib/features/hints/request-type-hints-action.d.ts.map +0 -1
  567. package/lib/features/hints/request-type-hints-action.js +0 -30
  568. package/lib/features/hints/request-type-hints-action.js.map +0 -1
  569. package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +0 -1
  570. package/lib/features/model-source-watcher/model-source-changed-action.js +0 -17
  571. package/lib/features/model-source-watcher/model-source-changed-action.js.map +0 -1
  572. package/lib/features/save/save.d.ts.map +0 -1
  573. package/lib/features/save/save.js +0 -62
  574. package/lib/features/save/save.js.map +0 -1
  575. package/lib/features/undo-redo/model.d.ts.map +0 -1
  576. package/lib/features/undo-redo/model.js +0 -22
  577. package/lib/features/undo-redo/model.js.map +0 -1
  578. package/lib/model-source/glsp-server-status.d.ts +0 -30
  579. package/lib/model-source/glsp-server-status.d.ts.map +0 -1
  580. package/lib/model-source/glsp-server-status.js +0 -61
  581. package/lib/model-source/glsp-server-status.js.map +0 -1
  582. package/lib/utils/array-utils.d.ts +0 -28
  583. package/lib/utils/array-utils.d.ts.map +0 -1
  584. package/lib/utils/array-utils.js +0 -61
  585. package/lib/utils/array-utils.js.map +0 -1
  586. package/lib/views/default-types.d.ts +0 -37
  587. package/lib/views/default-types.d.ts.map +0 -1
  588. package/lib/views/default-types.js +0 -47
  589. package/lib/views/default-types.js.map +0 -1
  590. package/src/base/actions/context-actions.ts +0 -43
  591. package/src/base/actions/edit-validation-actions.ts +0 -103
  592. package/src/base/actions/protocol-actions.ts +0 -82
  593. package/src/base/operations/operation.ts +0 -178
  594. package/src/features/copy-paste/copy-paste-actions.ts +0 -60
  595. package/src/features/hints/request-type-hints-action.ts +0 -36
  596. package/src/features/model-source-watcher/model-source-changed-action.ts +0 -26
  597. package/src/model-source/glsp-server-status.ts +0 -38
  598. package/src/utils/array-utils.ts +0 -55
  599. package/src/views/default-types.ts +0 -48
@@ -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,20 +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 { Point } from '@eclipse-glsp/protocol';
16
17
  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';
20
-
18
+ import { VNode } from 'snabbdom';
19
+ import { IView, ORIGIN_POINT, RenderingContext, setAttr, SModelElement, svg } from 'sprotty';
21
20
  import { isResizable, ResizeHandleLocation, SResizeHandle } from '../change-bounds/model';
22
21
 
23
22
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
24
- const JSX = { createElement: snabbdom.svg };
23
+ const JSX = { createElement: svg };
25
24
 
26
25
  /**
27
- * This view is used for the invisible end of the feedback edge.
28
- * A feedback edge is shown as a visual feedback when creating edges.
29
- */
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
+ */
30
29
  @injectable()
31
30
  export class FeedbackEdgeEndView implements IView {
32
31
  render(model: Readonly<SModelElement>, context: RenderingContext): VNode {
@@ -40,8 +39,15 @@ export class SResizeHandleView implements IView {
40
39
  render(handle: SResizeHandle, context: RenderingContext): VNode {
41
40
  const position = this.getPosition(handle);
42
41
  if (position !== undefined) {
43
- const node = <circle class-sprotty-resize-handle={true} class-mouseover={handle.hoverFeedback}
44
- 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
+ );
45
51
  setAttr(node, 'data-kind', handle.location);
46
52
  return node;
47
53
  }
@@ -13,14 +13,12 @@
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';
17
-
18
16
  import { ContainerModule } from 'inversify';
19
17
  import { configureActionHandler, EnableDefaultToolsAction, TYPES } from 'sprotty';
20
-
18
+ import '../../../css/tool-palette.css';
21
19
  import { EnableToolPaletteAction, ToolPalette } from './tool-palette';
22
20
 
23
- const toolPaletteModule = new ContainerModule((bind, _unbind, isBound) => {
21
+ const toolPaletteModule = new ContainerModule((bind, _unbind, isBound, rebind) => {
24
22
  bind(ToolPalette).toSelf().inSingletonScope();
25
23
  bind(TYPES.IUIExtension).toService(ToolPalette);
26
24
  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;
@@ -30,11 +28,11 @@ export function isPaletteItem(object?: any): object is PaletteItem {
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
-
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2019 EclipseSource and others.
2
+ * Copyright (c) 2019-2022 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,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 { isSetContextActionsAction, RequestContextActions, RequestMarkersAction, SetContextActions } from '@eclipse-glsp/protocol';
16
17
  import { inject, injectable, postConstruct } from 'inversify';
17
18
  import {
18
19
  AbstractUIExtension,
@@ -26,20 +27,18 @@ import {
26
27
  SModelRoot,
27
28
  TYPES
28
29
  } from 'sprotty';
30
+ import { codiconCSSClasses } from 'sprotty/lib/utils/codicon';
29
31
  import { matchesKeystroke } from 'sprotty/lib/utils/keyboard';
30
-
31
32
  import { GLSPActionDispatcher } from '../../base/action-dispatcher';
32
- import { isSetContextActionsAction, RequestContextActions, SetContextActions } from '../../base/actions/context-actions';
33
- import { EditModeListener, EditorContextService } from '../../base/editor-context';
33
+ import { EditModeListener, EditorContextService } from '../../base/editor-context-service';
34
34
  import { MouseDeleteTool } from '../tools/delete-tool';
35
35
  import { MarqueeMouseTool } from '../tools/marquee-mouse-tool';
36
- import { RequestMarkersAction } from '../validation/validate';
37
36
  import { PaletteItem } from './palette-item';
38
37
 
39
38
  const CLICKED_CSS_CLASS = 'clicked';
40
- const SEARCH_ICON = 'fa-search';
41
- const PALETTE_ICON = 'fa-palette';
42
- const CHEVRON_DOWN = 'fa-chevron-down';
39
+ const SEARCH_ICON_ID = 'search';
40
+ const PALETTE_ICON_ID = 'symbol-color';
41
+ const CHEVRON_DOWN_ICON_ID = 'chevron-right';
43
42
  const PALETTE_HEIGHT = '500px';
44
43
 
45
44
  @injectable()
@@ -76,7 +75,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
76
75
  this.editorContext.register(this);
77
76
  }
78
77
 
79
- initialize(): boolean {
78
+ override initialize(): boolean {
80
79
  if (!this.paletteItems) {
81
80
  return false;
82
81
  }
@@ -89,7 +88,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
89
88
  this.lastActivebutton = this.defaultToolsButton;
90
89
  }
91
90
 
92
- protected onBeforeShow(_containerElement: HTMLElement, root: Readonly<SModelRoot>): void {
91
+ protected override onBeforeShow(_containerElement: HTMLElement, root: Readonly<SModelRoot>): void {
93
92
  this.modelRootId = root.id;
94
93
  this.containerElement.style.maxHeight = PALETTE_HEIGHT;
95
94
  }
@@ -101,7 +100,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
101
100
  this.containerElement.classList.add('collapsible-palette');
102
101
  if (baseDiv) {
103
102
  const insertedDiv = baseDiv.insertBefore(minPaletteDiv, baseDiv.firstChild);
104
- const minimizeIcon = createIcon(['fas', CHEVRON_DOWN]);
103
+ const minimizeIcon = createIcon(CHEVRON_DOWN_ICON_ID);
105
104
  this.updateMinimizePaletteButtonTooltip(minPaletteDiv);
106
105
  minimizeIcon.onclick = _event => {
107
106
  if (this.isPaletteMaximized()) {
@@ -110,10 +109,8 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
110
109
  this.containerElement.style.maxHeight = PALETTE_HEIGHT;
111
110
  }
112
111
  this.updateMinimizePaletteButtonTooltip(minPaletteDiv);
113
- changeCSSClass(minimizeIcon, PALETTE_ICON);
114
- changeCSSClass(minimizeIcon, 'fa');
115
- changeCSSClass(minimizeIcon, 'fas');
116
- changeCSSClass(minimizeIcon, CHEVRON_DOWN);
112
+ changeCodiconClass(minimizeIcon, PALETTE_ICON_ID);
113
+ changeCodiconClass(minimizeIcon, CHEVRON_DOWN_ICON_ID);
117
114
  };
118
115
  insertedDiv.appendChild(minimizeIcon);
119
116
  }
@@ -135,16 +132,15 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
135
132
  const bodyDiv = document.createElement('div');
136
133
  bodyDiv.classList.add('palette-body');
137
134
  let tabIndex = 0;
138
- this.paletteItems.sort(compare)
139
- .forEach(item => {
140
- if (item.children) {
141
- const group = createToolGroup(item);
142
- item.children.sort(compare).forEach(child => group.appendChild(this.createToolButton(child, tabIndex++)));
143
- bodyDiv.appendChild(group);
144
- } else {
145
- bodyDiv.appendChild(this.createToolButton(item, tabIndex++));
146
- }
147
- });
135
+ this.paletteItems.sort(compare).forEach(item => {
136
+ if (item.children) {
137
+ const group = createToolGroup(item);
138
+ item.children.sort(compare).forEach(child => group.appendChild(this.createToolButton(child, tabIndex++)));
139
+ bodyDiv.appendChild(group);
140
+ } else {
141
+ bodyDiv.appendChild(this.createToolButton(item, tabIndex++));
142
+ }
143
+ });
148
144
  if (this.paletteItems.length === 0) {
149
145
  const noResultsDiv = document.createElement('div');
150
146
  noResultsDiv.innerText = 'No results found.';
@@ -165,7 +161,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
165
161
  headerCompartment.classList.add('palette-header');
166
162
  headerCompartment.append(this.createHeaderTitle());
167
163
  headerCompartment.appendChild(this.createHeaderTools());
168
- headerCompartment.appendChild(this.searchField = this.createHeaderSearchField());
164
+ headerCompartment.appendChild((this.searchField = this.createHeaderSearchField()));
169
165
  this.containerElement.appendChild(headerCompartment);
170
166
  }
171
167
 
@@ -193,7 +189,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
193
189
  }
194
190
 
195
191
  protected createDefaultToolButton(): HTMLElement {
196
- const button = createIcon(['fas', 'fa-mouse-pointer', 'fa-xs', 'clicked']);
192
+ const button = createIcon('inspect');
197
193
  button.id = 'btn_default_tools';
198
194
  button.title = 'Enable selection tool';
199
195
  button.onclick = this.onClickStaticToolButton(this.defaultToolsButton);
@@ -201,21 +197,21 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
201
197
  }
202
198
 
203
199
  protected createMouseDeleteToolButton(): HTMLElement {
204
- const deleteToolButton = createIcon(['fas', 'fa-eraser', 'fa-xs']);
200
+ const deleteToolButton = createIcon('chrome-close');
205
201
  deleteToolButton.title = 'Enable deletion tool';
206
202
  deleteToolButton.onclick = this.onClickStaticToolButton(deleteToolButton, MouseDeleteTool.ID);
207
203
  return deleteToolButton;
208
204
  }
209
205
 
210
206
  protected createMarqueeToolButton(): HTMLElement {
211
- const marqueeToolButton = createIcon(['far', 'fa-object-group', 'fa-xs']);
207
+ const marqueeToolButton = createIcon('screen-full');
212
208
  marqueeToolButton.title = 'Enable marquee tool';
213
209
  marqueeToolButton.onclick = this.onClickStaticToolButton(marqueeToolButton, MarqueeMouseTool.ID);
214
210
  return marqueeToolButton;
215
211
  }
216
212
 
217
213
  protected createValidateButton(): HTMLElement {
218
- const validateActionButton = createIcon(['fas', 'fa-check-square', 'fa-xs']);
214
+ const validateActionButton = createIcon('pass');
219
215
  validateActionButton.title = 'Validate model';
220
216
  validateActionButton.onclick = _event => {
221
217
  const modelIds: string[] = [this.modelRootId];
@@ -225,15 +221,15 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
225
221
  }
226
222
 
227
223
  protected createSearchButton(): HTMLElement {
228
- const searchIcon = createIcon(['fas', SEARCH_ICON, 'state-icon', 'fa-xs']);
224
+ const searchIcon = createIcon(SEARCH_ICON_ID);
229
225
  searchIcon.onclick = _ev => {
230
226
  const searchField = document.getElementById(this.containerElement.id + '_search_field');
231
227
  if (searchField) {
232
- if (searchField.style.display === 'inline') {
233
- searchField.style.display = 'none';
234
- } else {
235
- searchField.style.display = 'inline';
228
+ if (searchField.style.display === 'none') {
229
+ searchField.style.display = '';
236
230
  searchField.focus();
231
+ } else {
232
+ searchField.style.display = 'none';
237
233
  }
238
234
  }
239
235
  };
@@ -257,7 +253,7 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
257
253
  protected createHeaderTitle(): HTMLElement {
258
254
  const header = document.createElement('div');
259
255
  header.classList.add('header-icon');
260
- header.appendChild(createIcon(['fa', 'fa-palette']));
256
+ header.appendChild(createIcon(PALETTE_ICON_ID));
261
257
  header.insertAdjacentText('beforeend', 'Palette');
262
258
  return header;
263
259
  }
@@ -266,7 +262,10 @@ export class ToolPalette extends AbstractUIExtension implements IActionHandler,
266
262
  const button = document.createElement('div');
267
263
  button.tabIndex = index;
268
264
  button.classList.add('tool-button');
269
- button.innerHTML = item.label;
265
+ if (item.icon) {
266
+ button.appendChild(createIcon(item.icon));
267
+ }
268
+ button.insertAdjacentText('beforeend', item.label);
270
269
  button.onclick = this.onClickCreateToolButton(button, item);
271
270
  button.onkeydown = ev => this.clearToolOnEscape(ev);
272
271
  return button;
@@ -383,9 +382,9 @@ export function compare(a: PaletteItem, b: PaletteItem): number {
383
382
  return a.label.localeCompare(b.label);
384
383
  }
385
384
 
386
- export function createIcon(cssClasses: string[]): HTMLElement {
385
+ export function createIcon(codiconId: string): HTMLElement {
387
386
  const icon = document.createElement('i');
388
- icon.classList.add(...cssClasses);
387
+ icon.classList.add(...codiconCSSClasses(codiconId));
389
388
  return icon;
390
389
  }
391
390
 
@@ -396,7 +395,7 @@ export function createToolGroup(item: PaletteItem): HTMLElement {
396
395
  const header = document.createElement('div');
397
396
  header.classList.add('group-header');
398
397
  if (item.icon) {
399
- header.appendChild(createIcon(['fas', item.icon]));
398
+ header.appendChild(createIcon(item.icon));
400
399
  }
401
400
  header.insertAdjacentText('beforeend', item.label);
402
401
  header.ondblclick = _ev => {
@@ -411,6 +410,13 @@ export function createToolGroup(item: PaletteItem): HTMLElement {
411
410
  }
412
411
 
413
412
  export function changeCSSClass(element: Element, css: string): void {
414
- element.classList.contains(css) ? element.classList.remove(css) :
415
- element.classList.add(css);
413
+ // eslint-disable-next-line chai-friendly/no-unused-expressions
414
+ element.classList.contains(css) ? element.classList.remove(css) : element.classList.add(css);
415
+ }
416
+
417
+ export function changeCodiconClass(element: Element, codiconId: string): void {
418
+ // eslint-disable-next-line chai-friendly/no-unused-expressions
419
+ element.classList.contains(codiconCSSClasses(codiconId)[1])
420
+ ? element.classList.remove(codiconCSSClasses(codiconId)[1])
421
+ : element.classList.add(codiconCSSClasses(codiconId)[1]);
416
422
  }
@@ -1,5 +1,5 @@
1
1
  /********************************************************************************
2
- * Copyright (c) 2020 EclipseSource and others.
2
+ * Copyright (c) 2020-2022 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,10 @@
13
13
  *
14
14
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
15
  ********************************************************************************/
16
+ import { Action } from '@eclipse-glsp/protocol';
16
17
  import { inject, injectable } from 'inversify';
17
- import { Action, IActionDispatcher, KeyTool, TYPES } from 'sprotty';
18
-
19
- import { EditorContextService } from '../../base/editor-context';
18
+ import { IActionDispatcher, KeyTool, TYPES } from 'sprotty';
19
+ import { EditorContextService } from '../../base/editor-context-service';
20
20
  import { GLSPTool } from '../../base/tool-manager/glsp-tool-manager';
21
21
  import { GLSP_TYPES } from '../../base/types';
22
22
  import { IMouseTool } from '../mouse-tool/mouse-tool';
@@ -39,15 +39,15 @@ export abstract class BaseGLSPTool implements GLSPTool {
39
39
  return true;
40
40
  }
41
41
 
42
- dispatchFeedback(actions: Action[], feedbackeEmitter?: IFeedbackEmitter): void {
43
- this.feedbackDispatcher.registerFeedback(feedbackeEmitter ? feedbackeEmitter : this, actions);
44
- }
45
-
46
42
  dispatchActions(actions: Action[]): void {
47
43
  this.actionDispatcher.dispatchAll(actions);
48
44
  }
49
45
 
50
- deregisterFeedback(actions: Action[], feedbackeEmitter?: IFeedbackEmitter): void {
51
- this.feedbackDispatcher.deregisterFeedback(feedbackeEmitter ? feedbackeEmitter : this, actions);
46
+ dispatchFeedback(actions: Action[], feedbackEmitter?: IFeedbackEmitter): void {
47
+ this.feedbackDispatcher.registerFeedback(feedbackEmitter ?? this, actions);
48
+ }
49
+
50
+ deregisterFeedback(actions: Action[], feedbackEmitter?: IFeedbackEmitter): void {
51
+ this.feedbackDispatcher.deregisterFeedback(feedbackEmitter ?? this, actions);
52
52
  }
53
53
  }