@eclipse-glsp/client 0.9.0-next.d9bed812 → 0.9.0-next.eb280175

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