@eclipse-glsp/client 0.9.0-rc-01 → 0.10.0-next.bb1c2fd.157

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 (582) 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 +16 -7
  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 +119 -153
  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 +43 -27
  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 +109 -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 +19 -39
  51. package/lib/base/focus-tracker.js.map +1 -1
  52. package/lib/base/model/model-registry.js +10 -28
  53. package/lib/base/model/model-registry.js.map +1 -1
  54. package/lib/base/model/update-model-command.d.ts +19 -5
  55. package/lib/base/model/update-model-command.d.ts.map +1 -1
  56. package/lib/base/model/update-model-command.js +69 -94
  57. package/lib/base/model/update-model-command.js.map +1 -1
  58. package/lib/base/model-initialization-constraint.d.ts +16 -1
  59. package/lib/base/model-initialization-constraint.d.ts.map +1 -1
  60. package/lib/base/model-initialization-constraint.js +34 -54
  61. package/lib/base/model-initialization-constraint.js.map +1 -1
  62. package/lib/base/selection-clearing-mouse-listener.js +10 -28
  63. package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
  64. package/lib/base/source-uri-aware.js +2 -5
  65. package/lib/base/source-uri-aware.js.map +1 -1
  66. package/lib/base/tool-manager/glsp-tool-manager.d.ts +1 -1
  67. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
  68. package/lib/base/tool-manager/glsp-tool-manager.js +58 -140
  69. package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
  70. package/lib/base/types.d.ts +3 -1
  71. package/lib/base/types.d.ts.map +1 -1
  72. package/lib/base/types.js +4 -2
  73. package/lib/base/types.js.map +1 -1
  74. package/lib/base/view/view-registry.js +10 -28
  75. package/lib/base/view/view-registry.js.map +1 -1
  76. package/lib/features/change-bounds/model.d.ts +3 -1
  77. package/lib/features/change-bounds/model.d.ts.map +1 -1
  78. package/lib/features/change-bounds/model.js +20 -31
  79. package/lib/features/change-bounds/model.js.map +1 -1
  80. package/lib/features/change-bounds/movement-restrictor.d.ts +17 -1
  81. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
  82. package/lib/features/change-bounds/movement-restrictor.js +28 -42
  83. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  84. package/lib/features/change-bounds/snap.d.ts +17 -1
  85. package/lib/features/change-bounds/snap.d.ts.map +1 -1
  86. package/lib/features/change-bounds/snap.js +13 -39
  87. package/lib/features/change-bounds/snap.js.map +1 -1
  88. package/lib/features/command-palette/command-palette-tool.js +30 -38
  89. package/lib/features/command-palette/command-palette-tool.js.map +1 -1
  90. package/lib/features/command-palette/di.config.js +6 -6
  91. package/lib/features/command-palette/di.config.js.map +1 -1
  92. package/lib/features/command-palette/server-command-palette-provider.d.ts +18 -2
  93. package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -1
  94. package/lib/features/command-palette/server-command-palette-provider.js +28 -33
  95. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
  96. package/lib/features/context-menu/delete-element-context-menu.d.ts +1 -1
  97. package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -1
  98. package/lib/features/context-menu/delete-element-context-menu.js +20 -68
  99. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
  100. package/lib/features/context-menu/di.config.d.ts +1 -1
  101. package/lib/features/context-menu/di.config.d.ts.map +1 -1
  102. package/lib/features/context-menu/di.config.js +8 -8
  103. package/lib/features/context-menu/di.config.js.map +1 -1
  104. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +16 -0
  105. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
  106. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +61 -71
  107. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
  108. package/lib/features/context-menu/server-context-menu-provider.d.ts +18 -2
  109. package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
  110. package/lib/features/context-menu/server-context-menu-provider.js +30 -31
  111. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  112. package/lib/features/copy-paste/copy-paste-context-menu.d.ts +22 -2
  113. package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
  114. package/lib/features/copy-paste/copy-paste-context-menu.js +99 -72
  115. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  116. package/lib/features/copy-paste/copy-paste-handler.d.ts +19 -2
  117. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
  118. package/lib/features/copy-paste/copy-paste-handler.js +70 -70
  119. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  120. package/lib/features/copy-paste/di.config.d.ts +1 -1
  121. package/lib/features/copy-paste/di.config.d.ts.map +1 -1
  122. package/lib/features/copy-paste/di.config.js +11 -11
  123. package/lib/features/copy-paste/di.config.js.map +1 -1
  124. package/lib/features/decoration/decoration-placer.d.ts +17 -1
  125. package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
  126. package/lib/features/decoration/decoration-placer.js +12 -46
  127. package/lib/features/decoration/decoration-placer.js.map +1 -1
  128. package/lib/features/decoration/di.config.js +4 -4
  129. package/lib/features/decoration/di.config.js.map +1 -1
  130. package/lib/features/edit-label/di.config.js +7 -7
  131. package/lib/features/edit-label/di.config.js.map +1 -1
  132. package/lib/features/edit-label/edit-label-tool.js +20 -43
  133. package/lib/features/edit-label/edit-label-tool.js.map +1 -1
  134. package/lib/features/edit-label/edit-label-validator.d.ts +16 -1
  135. package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
  136. package/lib/features/edit-label/edit-label-validator.js +40 -62
  137. package/lib/features/edit-label/edit-label-validator.js.map +1 -1
  138. package/lib/features/hints/di.config.d.ts +0 -15
  139. package/lib/features/hints/di.config.d.ts.map +1 -1
  140. package/lib/features/hints/di.config.js +9 -9
  141. package/lib/features/hints/di.config.js.map +1 -1
  142. package/lib/features/hints/model.d.ts +3 -2
  143. package/lib/features/hints/model.d.ts.map +1 -1
  144. package/lib/features/hints/model.js.map +1 -1
  145. package/lib/features/hints/type-hints.d.ts +17 -45
  146. package/lib/features/hints/type-hints.d.ts.map +1 -1
  147. package/lib/features/hints/type-hints.js +81 -140
  148. package/lib/features/hints/type-hints.js.map +1 -1
  149. package/lib/features/hover/di.config.d.ts +1 -1
  150. package/lib/features/hover/di.config.d.ts.map +1 -1
  151. package/lib/features/hover/di.config.js +11 -9
  152. package/lib/features/hover/di.config.js.map +1 -1
  153. package/lib/features/hover/hover.d.ts +28 -2
  154. package/lib/features/hover/hover.d.ts.map +1 -1
  155. package/lib/features/hover/hover.js +56 -76
  156. package/lib/features/hover/hover.js.map +1 -1
  157. package/lib/features/layout/di.config.d.ts +1 -1
  158. package/lib/features/layout/di.config.d.ts.map +1 -1
  159. package/lib/features/layout/di.config.js +11 -7
  160. package/lib/features/layout/di.config.js.map +1 -1
  161. package/lib/features/layout/freeform-layout.d.ts +16 -0
  162. package/lib/features/layout/freeform-layout.d.ts.map +1 -0
  163. package/lib/features/layout/freeform-layout.js +107 -0
  164. package/lib/features/layout/freeform-layout.js.map +1 -0
  165. package/lib/features/layout/layout-commands.d.ts +19 -3
  166. package/lib/features/layout/layout-commands.d.ts.map +1 -1
  167. package/lib/features/layout/layout-commands.js +189 -265
  168. package/lib/features/layout/layout-commands.js.map +1 -1
  169. package/lib/features/layout/layout-commands.spec.d.ts +0 -15
  170. package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
  171. package/lib/features/layout/layout-commands.spec.js +95 -89
  172. package/lib/features/layout/layout-commands.spec.js.map +1 -1
  173. package/lib/features/layout/vbox-layout.d.ts +25 -0
  174. package/lib/features/layout/vbox-layout.d.ts.map +1 -0
  175. package/lib/features/layout/vbox-layout.js +188 -0
  176. package/lib/features/layout/vbox-layout.js.map +1 -0
  177. package/lib/features/model-source-watcher/di.config.d.ts +0 -15
  178. package/lib/features/model-source-watcher/di.config.d.ts.map +1 -1
  179. package/lib/features/model-source-watcher/di.config.js +7 -7
  180. package/lib/features/model-source-watcher/di.config.js.map +1 -1
  181. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +17 -2
  182. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -1
  183. package/lib/features/model-source-watcher/model-source-changed-action-handler.js +38 -46
  184. package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -1
  185. package/lib/features/mouse-tool/di.config.js +5 -5
  186. package/lib/features/mouse-tool/di.config.js.map +1 -1
  187. package/lib/features/mouse-tool/mouse-tool.d.ts +2 -1
  188. package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
  189. package/lib/features/mouse-tool/mouse-tool.js +70 -215
  190. package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
  191. package/lib/features/navigation/di.config.d.ts +0 -15
  192. package/lib/features/navigation/di.config.d.ts.map +1 -1
  193. package/lib/features/navigation/di.config.js +11 -10
  194. package/lib/features/navigation/di.config.js.map +1 -1
  195. package/lib/features/navigation/navigation-action-handler.d.ts +19 -38
  196. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
  197. package/lib/features/navigation/navigation-action-handler.js +118 -254
  198. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  199. package/lib/features/navigation/navigation-target-resolver.d.ts +18 -40
  200. package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
  201. package/lib/features/navigation/navigation-target-resolver.js +46 -188
  202. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  203. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +0 -15
  204. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
  205. package/lib/features/navigation/navigation-target-resolver.spec.js +26 -26
  206. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
  207. package/lib/features/rank/model.d.ts +1 -1
  208. package/lib/features/rank/model.js +2 -2
  209. package/lib/features/rank/model.js.map +1 -1
  210. package/lib/features/reconnect/model.d.ts +1 -1
  211. package/lib/features/reconnect/model.d.ts.map +1 -1
  212. package/lib/features/reconnect/model.js +9 -27
  213. package/lib/features/reconnect/model.js.map +1 -1
  214. package/lib/features/save/di.config.d.ts +1 -1
  215. package/lib/features/save/di.config.d.ts.map +1 -1
  216. package/lib/features/save/di.config.js +6 -6
  217. package/lib/features/save/di.config.js.map +1 -1
  218. package/lib/features/save/{save.d.ts → save-keylistener.d.ts} +4 -10
  219. package/lib/features/save/save-keylistener.d.ts.map +1 -0
  220. package/lib/features/{undo-redo/model.d.ts → save/save-keylistener.js} +16 -12
  221. package/lib/features/save/save-keylistener.js.map +1 -0
  222. package/lib/features/select/di.config.js +11 -11
  223. package/lib/features/select/di.config.js.map +1 -1
  224. package/lib/features/select/select-feedback-action.d.ts.map +1 -1
  225. package/lib/features/select/select-feedback-action.js +45 -71
  226. package/lib/features/select/select-feedback-action.js.map +1 -1
  227. package/lib/features/select/select-mouse-listener.js +7 -23
  228. package/lib/features/select/select-mouse-listener.js.map +1 -1
  229. package/lib/features/select/selection-service.d.ts +17 -1
  230. package/lib/features/select/selection-service.d.ts.map +1 -1
  231. package/lib/features/select/selection-service.js +134 -236
  232. package/lib/features/select/selection-service.js.map +1 -1
  233. package/lib/features/select/selection-service.spec.js +96 -139
  234. package/lib/features/select/selection-service.spec.js.map +1 -1
  235. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +19 -2
  236. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
  237. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +102 -142
  238. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
  239. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +18 -2
  240. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
  241. package/lib/features/tool-feedback/creation-tool-feedback.js +95 -118
  242. package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
  243. package/lib/features/tool-feedback/css-feedback.d.ts +20 -2
  244. package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
  245. package/lib/features/tool-feedback/css-feedback.js +37 -81
  246. package/lib/features/tool-feedback/css-feedback.js.map +1 -1
  247. package/lib/features/tool-feedback/di.config.d.ts +1 -1
  248. package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
  249. package/lib/features/tool-feedback/di.config.js +27 -27
  250. package/lib/features/tool-feedback/di.config.js.map +1 -1
  251. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +18 -2
  252. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
  253. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +147 -208
  254. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
  255. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +19 -3
  256. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
  257. package/lib/features/tool-feedback/feedback-action-dispatcher.js +35 -72
  258. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
  259. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +17 -1
  260. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
  261. package/lib/features/tool-feedback/marquee-tool-feedback.js +41 -84
  262. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
  263. package/lib/features/tool-feedback/model.d.ts +1 -1
  264. package/lib/features/tool-feedback/model.js +11 -27
  265. package/lib/features/tool-feedback/model.js.map +1 -1
  266. package/lib/features/tool-feedback/view.d.ts +21 -5
  267. package/lib/features/tool-feedback/view.d.ts.map +1 -1
  268. package/lib/features/tool-feedback/view.js +29 -51
  269. package/lib/features/tool-feedback/view.js.map +1 -1
  270. package/lib/features/tool-palette/di.config.d.ts +1 -1
  271. package/lib/features/tool-palette/di.config.d.ts.map +1 -1
  272. package/lib/features/tool-palette/di.config.js +6 -6
  273. package/lib/features/tool-palette/di.config.js.map +1 -1
  274. package/lib/features/tool-palette/palette-item.d.ts +2 -3
  275. package/lib/features/tool-palette/palette-item.d.ts.map +1 -1
  276. package/lib/features/tool-palette/palette-item.js +6 -6
  277. package/lib/features/tool-palette/palette-item.js.map +1 -1
  278. package/lib/features/tool-palette/tool-palette.d.ts +19 -3
  279. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  280. package/lib/features/tool-palette/tool-palette.js +199 -269
  281. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  282. package/lib/features/tools/base-glsp-tool.d.ts +18 -2
  283. package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
  284. package/lib/features/tools/base-glsp-tool.js +37 -59
  285. package/lib/features/tools/base-glsp-tool.js.map +1 -1
  286. package/lib/features/tools/change-bounds-tool.d.ts +20 -3
  287. package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
  288. package/lib/features/tools/change-bounds-tool.js +192 -241
  289. package/lib/features/tools/change-bounds-tool.js.map +1 -1
  290. package/lib/features/tools/delete-tool.d.ts +17 -1
  291. package/lib/features/tools/delete-tool.d.ts.map +1 -1
  292. package/lib/features/tools/delete-tool.js +71 -104
  293. package/lib/features/tools/delete-tool.js.map +1 -1
  294. package/lib/features/tools/di.config.d.ts +0 -15
  295. package/lib/features/tools/di.config.d.ts.map +1 -1
  296. package/lib/features/tools/di.config.js +19 -19
  297. package/lib/features/tools/di.config.js.map +1 -1
  298. package/lib/features/tools/edge-creation-tool.d.ts +17 -2
  299. package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
  300. package/lib/features/tools/edge-creation-tool.js +62 -87
  301. package/lib/features/tools/edge-creation-tool.js.map +1 -1
  302. package/lib/features/tools/edge-edit-tool.d.ts +17 -1
  303. package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
  304. package/lib/features/tools/edge-edit-tool.js +112 -183
  305. package/lib/features/tools/edge-edit-tool.js.map +1 -1
  306. package/lib/features/tools/marquee-behavior.d.ts +42 -0
  307. package/lib/features/tools/marquee-behavior.d.ts.map +1 -0
  308. package/lib/features/tools/marquee-behavior.js +128 -0
  309. package/lib/features/tools/marquee-behavior.js.map +1 -0
  310. package/{src/features/undo-redo/model.ts → lib/features/tools/marquee-behavior.spec.d.ts} +3 -12
  311. package/lib/features/tools/marquee-behavior.spec.d.ts.map +1 -0
  312. package/lib/features/tools/marquee-behavior.spec.js +165 -0
  313. package/lib/features/tools/marquee-behavior.spec.js.map +1 -0
  314. package/lib/features/tools/marquee-mouse-tool.d.ts +24 -13
  315. package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
  316. package/lib/features/tools/marquee-mouse-tool.js +86 -195
  317. package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
  318. package/lib/features/tools/marquee-tool.d.ts +17 -1
  319. package/lib/features/tools/marquee-tool.d.ts.map +1 -1
  320. package/lib/features/tools/marquee-tool.js +32 -73
  321. package/lib/features/tools/marquee-tool.js.map +1 -1
  322. package/lib/features/tools/model.js +4 -22
  323. package/lib/features/tools/model.js.map +1 -1
  324. package/lib/features/tools/node-creation-tool.d.ts +17 -2
  325. package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
  326. package/lib/features/tools/node-creation-tool.js +60 -90
  327. package/lib/features/tools/node-creation-tool.js.map +1 -1
  328. package/lib/features/tools/view.d.ts +1 -1
  329. package/lib/features/tools/view.d.ts.map +1 -1
  330. package/lib/features/tools/view.js +12 -31
  331. package/lib/features/tools/view.js.map +1 -1
  332. package/lib/features/validation/di.config.js +12 -12
  333. package/lib/features/validation/di.config.js.map +1 -1
  334. package/lib/features/validation/issue-marker.d.ts +2 -2
  335. package/lib/features/validation/issue-marker.d.ts.map +1 -1
  336. package/lib/features/validation/issue-marker.js +17 -55
  337. package/lib/features/validation/issue-marker.js.map +1 -1
  338. package/lib/features/validation/marker-navigator.d.ts +17 -1
  339. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  340. package/lib/features/validation/marker-navigator.js +131 -164
  341. package/lib/features/validation/marker-navigator.js.map +1 -1
  342. package/lib/features/validation/marker-navigator.spec.d.ts +0 -15
  343. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
  344. package/lib/features/validation/marker-navigator.spec.js +83 -77
  345. package/lib/features/validation/marker-navigator.spec.js.map +1 -1
  346. package/lib/features/validation/validate.d.ts +18 -29
  347. package/lib/features/validation/validate.d.ts.map +1 -1
  348. package/lib/features/validation/validate.js +147 -300
  349. package/lib/features/validation/validate.js.map +1 -1
  350. package/lib/features/viewport/di.config.js +10 -10
  351. package/lib/features/viewport/di.config.js.map +1 -1
  352. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +18 -2
  353. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
  354. package/lib/features/viewport/glsp-scroll-mouse-listener.js +16 -47
  355. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
  356. package/lib/index.d.ts +9 -15
  357. package/lib/index.d.ts.map +1 -1
  358. package/lib/index.js +29 -34
  359. package/lib/index.js.map +1 -1
  360. package/lib/lib/model.js +11 -27
  361. package/lib/lib/model.js.map +1 -1
  362. package/lib/model-source/glsp-diagram-server.d.ts +3 -5
  363. package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
  364. package/lib/model-source/glsp-diagram-server.js +60 -121
  365. package/lib/model-source/glsp-diagram-server.js.map +1 -1
  366. package/lib/protocol-reexport.d.ts +45 -0
  367. package/lib/protocol-reexport.d.ts.map +1 -0
  368. package/lib/protocol-reexport.js +75 -0
  369. package/lib/protocol-reexport.js.map +1 -0
  370. package/lib/utils/argument-utils.d.ts +3 -3
  371. package/lib/utils/argument-utils.d.ts.map +1 -1
  372. package/lib/utils/argument-utils.js +32 -97
  373. package/lib/utils/argument-utils.js.map +1 -1
  374. package/lib/utils/html-utils.js +2 -2
  375. package/lib/utils/html-utils.js.map +1 -1
  376. package/lib/utils/layout-utils.d.ts +3 -2
  377. package/lib/utils/layout-utils.d.ts.map +1 -1
  378. package/lib/utils/layout-utils.js +5 -5
  379. package/lib/utils/layout-utils.js.map +1 -1
  380. package/lib/utils/marker.d.ts +0 -38
  381. package/lib/utils/marker.d.ts.map +1 -1
  382. package/lib/utils/marker.js +14 -61
  383. package/lib/utils/marker.js.map +1 -1
  384. package/lib/utils/smodel-util.d.ts +4 -4
  385. package/lib/utils/smodel-util.d.ts.map +1 -1
  386. package/lib/utils/smodel-util.js +16 -65
  387. package/lib/utils/smodel-util.js.map +1 -1
  388. package/lib/utils/viewpoint-util.d.ts +3 -2
  389. package/lib/utils/viewpoint-util.d.ts.map +1 -1
  390. package/lib/utils/viewpoint-util.js +15 -30
  391. package/lib/utils/viewpoint-util.js.map +1 -1
  392. package/lib/views/base-view-module.d.ts +0 -15
  393. package/lib/views/base-view-module.d.ts.map +1 -1
  394. package/lib/views/base-view-module.js +28 -28
  395. package/lib/views/base-view-module.js.map +1 -1
  396. package/lib/views/compartments.d.ts +6 -0
  397. package/lib/views/compartments.d.ts.map +1 -0
  398. package/lib/views/compartments.js +43 -0
  399. package/lib/views/compartments.js.map +1 -0
  400. package/lib/views/glsp-edge-view.d.ts +18 -3
  401. package/lib/views/glsp-edge-view.d.ts.map +1 -1
  402. package/lib/views/glsp-edge-view.js +32 -77
  403. package/lib/views/glsp-edge-view.js.map +1 -1
  404. package/lib/views/index.d.ts +1 -1
  405. package/lib/views/index.d.ts.map +1 -1
  406. package/lib/views/index.js +1 -1
  407. package/lib/views/index.js.map +1 -1
  408. package/lib/views/issue-marker-view.d.ts +2 -1
  409. package/lib/views/issue-marker-view.d.ts.map +1 -1
  410. package/lib/views/issue-marker-view.js +36 -50
  411. package/lib/views/issue-marker-view.js.map +1 -1
  412. package/lib/views/rounded-corner-view.d.ts +2 -3
  413. package/lib/views/rounded-corner-view.d.ts.map +1 -1
  414. package/lib/views/rounded-corner-view.js +40 -70
  415. package/lib/views/rounded-corner-view.js.map +1 -1
  416. package/lib/views/rounded-corner.d.ts +2 -1
  417. package/lib/views/rounded-corner.d.ts.map +1 -1
  418. package/lib/views/rounded-corner.js +44 -65
  419. package/lib/views/rounded-corner.js.map +1 -1
  420. package/package.json +12 -19
  421. package/src/base/action-dispatcher.ts +12 -12
  422. package/src/base/actions/focus-change-action.ts +2 -2
  423. package/src/base/{args.ts → argumentable.ts} +2 -3
  424. package/src/base/auto-complete/auto-complete-actions.ts +1 -1
  425. package/src/base/auto-complete/auto-complete-widget.ts +37 -25
  426. package/src/base/auto-complete/validation-decorator.ts +12 -11
  427. package/src/base/command-stack.ts +2 -5
  428. package/src/base/container-modules.ts +112 -0
  429. package/src/base/di.config.ts +33 -18
  430. package/src/base/drag-aware-mouse-listener.ts +3 -4
  431. package/src/base/{editor-context.ts → editor-context-service.ts} +4 -31
  432. package/src/base/focus-tracker.ts +2 -4
  433. package/src/base/model/update-model-command.ts +8 -16
  434. package/src/base/model-initialization-constraint.ts +3 -2
  435. package/src/base/tool-manager/glsp-tool-manager.ts +3 -5
  436. package/src/base/types.ts +4 -2
  437. package/src/features/change-bounds/model.ts +15 -5
  438. package/src/features/change-bounds/movement-restrictor.ts +17 -9
  439. package/src/features/change-bounds/snap.ts +3 -2
  440. package/src/features/command-palette/server-command-palette-provider.ts +11 -9
  441. package/src/features/context-menu/delete-element-context-menu.ts +3 -4
  442. package/src/features/context-menu/di.config.ts +11 -9
  443. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +40 -10
  444. package/src/features/context-menu/server-context-menu-provider.ts +10 -7
  445. package/src/features/copy-paste/copy-paste-context-menu.ts +59 -30
  446. package/src/features/copy-paste/copy-paste-handler.ts +18 -10
  447. package/src/features/copy-paste/di.config.ts +2 -3
  448. package/src/features/decoration/decoration-placer.ts +3 -13
  449. package/src/features/edit-label/edit-label-validator.ts +11 -12
  450. package/src/features/hints/di.config.ts +2 -3
  451. package/src/features/hints/model.ts +4 -3
  452. package/src/features/hints/type-hints.ts +23 -90
  453. package/src/features/hover/di.config.ts +4 -3
  454. package/src/features/hover/hover.ts +26 -7
  455. package/src/features/layout/di.config.ts +8 -4
  456. package/src/features/layout/freeform-layout.ts +133 -0
  457. package/src/features/layout/layout-commands.spec.ts +82 -64
  458. package/src/features/layout/layout-commands.ts +43 -34
  459. package/src/features/layout/vbox-layout.ts +256 -0
  460. package/src/features/model-source-watcher/di.config.ts +3 -4
  461. package/src/features/model-source-watcher/model-source-changed-action-handler.ts +11 -7
  462. package/src/features/mouse-tool/mouse-tool.ts +33 -23
  463. package/src/features/navigation/di.config.ts +4 -10
  464. package/src/features/navigation/navigation-action-handler.ts +33 -69
  465. package/src/features/navigation/navigation-target-resolver.spec.ts +3 -7
  466. package/src/features/navigation/navigation-target-resolver.ts +13 -91
  467. package/src/features/rank/model.ts +2 -2
  468. package/src/features/reconnect/model.ts +2 -3
  469. package/src/features/save/di.config.ts +2 -3
  470. package/src/features/save/{save.ts → save-keylistener.ts} +3 -11
  471. package/src/features/select/select-feedback-action.ts +4 -6
  472. package/src/features/select/selection-service.spec.ts +11 -6
  473. package/src/features/select/selection-service.ts +14 -10
  474. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +26 -20
  475. package/src/features/tool-feedback/creation-tool-feedback.ts +49 -14
  476. package/src/features/tool-feedback/css-feedback.ts +9 -6
  477. package/src/features/tool-feedback/di.config.ts +2 -5
  478. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +19 -18
  479. package/src/features/tool-feedback/feedback-action-dispatcher.ts +8 -9
  480. package/src/features/tool-feedback/marquee-tool-feedback.ts +4 -5
  481. package/src/features/tool-feedback/model.ts +1 -2
  482. package/src/features/tool-feedback/view.tsx +17 -11
  483. package/src/features/tool-palette/di.config.ts +2 -4
  484. package/src/features/tool-palette/palette-item.ts +4 -6
  485. package/src/features/tool-palette/tool-palette.ts +44 -40
  486. package/src/features/tools/base-glsp-tool.ts +4 -4
  487. package/src/features/tools/change-bounds-tool.ts +64 -34
  488. package/src/features/tools/delete-tool.ts +9 -6
  489. package/src/features/tools/di.config.ts +2 -3
  490. package/src/features/tools/edge-creation-tool.ts +5 -10
  491. package/src/features/tools/edge-edit-tool.ts +10 -20
  492. package/src/features/tools/marquee-behavior.spec.ts +175 -0
  493. package/src/features/tools/marquee-behavior.ts +158 -0
  494. package/src/features/tools/marquee-mouse-tool.ts +43 -134
  495. package/src/features/tools/marquee-tool.ts +2 -3
  496. package/src/features/tools/node-creation-tool.ts +4 -11
  497. package/src/features/tools/view.tsx +17 -12
  498. package/src/features/validation/issue-marker.ts +2 -3
  499. package/src/features/validation/marker-navigator.spec.ts +18 -14
  500. package/src/features/validation/marker-navigator.ts +24 -12
  501. package/src/features/validation/validate.ts +7 -40
  502. package/src/features/viewport/glsp-scroll-mouse-listener.ts +3 -12
  503. package/src/index.ts +30 -19
  504. package/src/model-source/glsp-diagram-server.ts +12 -28
  505. package/src/protocol-reexport.ts +64 -0
  506. package/src/utils/argument-utils.ts +14 -11
  507. package/src/utils/layout-utils.ts +13 -7
  508. package/src/utils/marker.ts +2 -26
  509. package/src/utils/smodel-util.ts +15 -11
  510. package/src/utils/viewpoint-util.ts +4 -4
  511. package/src/views/base-view-module.ts +1 -2
  512. package/src/{base/actions/edit-mode-action.ts → views/compartments.tsx} +18 -14
  513. package/src/views/glsp-edge-view.tsx +21 -14
  514. package/src/views/index.ts +1 -1
  515. package/src/views/issue-marker-view.tsx +28 -19
  516. package/src/views/rounded-corner-view.tsx +38 -25
  517. package/src/views/rounded-corner.ts +5 -6
  518. package/lib/base/actions/context-actions.d.ts +0 -36
  519. package/lib/base/actions/context-actions.d.ts.map +0 -1
  520. package/lib/base/actions/context-actions.js +0 -51
  521. package/lib/base/actions/context-actions.js.map +0 -1
  522. package/lib/base/actions/edit-mode-action.d.ts +0 -13
  523. package/lib/base/actions/edit-mode-action.d.ts.map +0 -1
  524. package/lib/base/actions/edit-mode-action.js +0 -56
  525. package/lib/base/actions/edit-mode-action.js.map +0 -1
  526. package/lib/base/actions/edit-validation-actions.d.ts +0 -78
  527. package/lib/base/actions/edit-validation-actions.d.ts.map +0 -1
  528. package/lib/base/actions/edit-validation-actions.js +0 -83
  529. package/lib/base/actions/edit-validation-actions.js.map +0 -1
  530. package/lib/base/actions/protocol-actions.d.ts +0 -41
  531. package/lib/base/actions/protocol-actions.d.ts.map +0 -1
  532. package/lib/base/actions/protocol-actions.js +0 -151
  533. package/lib/base/actions/protocol-actions.js.map +0 -1
  534. package/lib/base/args.d.ts.map +0 -1
  535. package/lib/base/args.js.map +0 -1
  536. package/lib/base/editor-context.d.ts.map +0 -1
  537. package/lib/base/editor-context.js +0 -174
  538. package/lib/base/editor-context.js.map +0 -1
  539. package/lib/base/operations/operation.d.ts +0 -135
  540. package/lib/base/operations/operation.d.ts.map +0 -1
  541. package/lib/base/operations/operation.js +0 -231
  542. package/lib/base/operations/operation.js.map +0 -1
  543. package/lib/features/copy-paste/copy-paste-actions.d.ts +0 -50
  544. package/lib/features/copy-paste/copy-paste-actions.d.ts.map +0 -1
  545. package/lib/features/copy-paste/copy-paste-actions.js +0 -68
  546. package/lib/features/copy-paste/copy-paste-actions.js.map +0 -1
  547. package/lib/features/hints/request-type-hints-action.d.ts +0 -32
  548. package/lib/features/hints/request-type-hints-action.d.ts.map +0 -1
  549. package/lib/features/hints/request-type-hints-action.js +0 -30
  550. package/lib/features/hints/request-type-hints-action.js.map +0 -1
  551. package/lib/features/model-source-watcher/model-source-changed-action.d.ts +0 -24
  552. package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +0 -1
  553. package/lib/features/model-source-watcher/model-source-changed-action.js +0 -17
  554. package/lib/features/model-source-watcher/model-source-changed-action.js.map +0 -1
  555. package/lib/features/save/save.d.ts.map +0 -1
  556. package/lib/features/save/save.js +0 -62
  557. package/lib/features/save/save.js.map +0 -1
  558. package/lib/features/undo-redo/model.d.ts.map +0 -1
  559. package/lib/features/undo-redo/model.js +0 -22
  560. package/lib/features/undo-redo/model.js.map +0 -1
  561. package/lib/model-source/glsp-server-status.d.ts +0 -30
  562. package/lib/model-source/glsp-server-status.d.ts.map +0 -1
  563. package/lib/model-source/glsp-server-status.js +0 -61
  564. package/lib/model-source/glsp-server-status.js.map +0 -1
  565. package/lib/utils/array-utils.d.ts +0 -28
  566. package/lib/utils/array-utils.d.ts.map +0 -1
  567. package/lib/utils/array-utils.js +0 -61
  568. package/lib/utils/array-utils.js.map +0 -1
  569. package/lib/views/default-types.d.ts +0 -37
  570. package/lib/views/default-types.d.ts.map +0 -1
  571. package/lib/views/default-types.js +0 -47
  572. package/lib/views/default-types.js.map +0 -1
  573. package/src/base/actions/context-actions.ts +0 -43
  574. package/src/base/actions/edit-validation-actions.ts +0 -103
  575. package/src/base/actions/protocol-actions.ts +0 -82
  576. package/src/base/operations/operation.ts +0 -178
  577. package/src/features/copy-paste/copy-paste-actions.ts +0 -60
  578. package/src/features/hints/request-type-hints-action.ts +0 -36
  579. package/src/features/model-source-watcher/model-source-changed-action.ts +0 -26
  580. package/src/model-source/glsp-server-status.ts +0 -38
  581. package/src/utils/array-utils.ts +0 -55
  582. package/src/views/default-types.ts +0 -48
@@ -1,17 +1,4 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- extendStatics(d, b);
11
- function __() { this.constructor = d; }
12
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
- };
14
- })();
15
2
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
16
3
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17
4
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -25,9 +12,9 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
25
12
  return function (target, key) { decorator(target, key, paramIndex); }
26
13
  };
27
14
  Object.defineProperty(exports, "__esModule", { value: true });
28
- exports.TypeHintProvider = exports.ApplyTypeHintsCommand = exports.ApplyTypeHintsAction = exports.EdgeTypeHint = exports.ShapeTypeHint = exports.TypeHint = void 0;
15
+ exports.TypeHintProvider = exports.ApplyTypeHintsCommand = exports.ApplyTypeHintsAction = void 0;
29
16
  /********************************************************************************
30
- * Copyright (c) 2019 EclipseSource and others.
17
+ * Copyright (c) 2019-2021 EclipseSource and others.
31
18
  *
32
19
  * This program and the accompanying materials are made available under the
33
20
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -41,130 +28,86 @@ exports.TypeHintProvider = exports.ApplyTypeHintsCommand = exports.ApplyTypeHint
41
28
  *
42
29
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
43
30
  ********************************************************************************/
44
- var inversify_1 = require("inversify");
45
- var sprotty_1 = require("sprotty");
46
- var types_1 = require("../../base/types");
47
- var smodel_util_1 = require("../../utils/smodel-util");
48
- var model_1 = require("../change-bounds/model");
49
- var model_2 = require("../reconnect/model");
50
- var model_3 = require("../tool-feedback/model");
51
- var model_4 = require("./model");
52
- var request_type_hints_action_1 = require("./request-type-hints-action");
53
- var TypeHint = /** @class */ (function () {
54
- function TypeHint() {
55
- }
56
- return TypeHint;
57
- }());
58
- exports.TypeHint = TypeHint;
59
- var ShapeTypeHint = /** @class */ (function (_super) {
60
- __extends(ShapeTypeHint, _super);
61
- function ShapeTypeHint() {
62
- return _super !== null && _super.apply(this, arguments) || this;
63
- }
64
- return ShapeTypeHint;
65
- }(TypeHint));
66
- exports.ShapeTypeHint = ShapeTypeHint;
67
- var EdgeTypeHint = /** @class */ (function (_super) {
68
- __extends(EdgeTypeHint, _super);
69
- function EdgeTypeHint() {
70
- return _super !== null && _super.apply(this, arguments) || this;
71
- }
72
- EdgeTypeHint.prototype.isAllowedSource = function (input) {
73
- var type = smodel_util_1.getElementTypeId(input);
74
- return this.sourceElementTypeIds.includes(type);
75
- };
76
- EdgeTypeHint.prototype.isAllowedTarget = function (input) {
77
- var type = smodel_util_1.getElementTypeId(input);
78
- return this.targetElementTypeIds.includes(type);
79
- };
80
- return EdgeTypeHint;
81
- }(TypeHint));
82
- exports.EdgeTypeHint = EdgeTypeHint;
83
- var ApplyTypeHintsAction = /** @class */ (function () {
84
- function ApplyTypeHintsAction() {
31
+ const protocol_1 = require("@eclipse-glsp/protocol");
32
+ const inversify_1 = require("inversify");
33
+ const sprotty_1 = require("sprotty");
34
+ const types_1 = require("../../base/types");
35
+ const smodel_util_1 = require("../../utils/smodel-util");
36
+ const model_1 = require("../change-bounds/model");
37
+ const model_2 = require("../reconnect/model");
38
+ const model_3 = require("../tool-feedback/model");
39
+ const model_4 = require("./model");
40
+ let ApplyTypeHintsAction = class ApplyTypeHintsAction {
41
+ constructor() {
85
42
  this.kind = ApplyTypeHintsCommand.KIND;
86
43
  }
87
- ApplyTypeHintsAction = __decorate([
88
- inversify_1.injectable()
89
- ], ApplyTypeHintsAction);
90
- return ApplyTypeHintsAction;
91
- }());
44
+ };
45
+ ApplyTypeHintsAction = __decorate([
46
+ inversify_1.injectable()
47
+ ], ApplyTypeHintsAction);
92
48
  exports.ApplyTypeHintsAction = ApplyTypeHintsAction;
93
- var ApplyTypeHintsCommand = /** @class */ (function (_super) {
94
- __extends(ApplyTypeHintsCommand, _super);
95
- function ApplyTypeHintsCommand(action) {
96
- var _this = _super.call(this) || this;
97
- _this.action = action;
98
- _this.priority = 10;
99
- return _this;
49
+ let ApplyTypeHintsCommand = class ApplyTypeHintsCommand extends model_3.FeedbackCommand {
50
+ constructor(action) {
51
+ super();
52
+ this.action = action;
53
+ this.priority = 10;
100
54
  }
101
- ApplyTypeHintsCommand.prototype.execute = function (context) {
102
- var _this = this;
103
- context.root.index.all()
104
- .forEach(function (element) {
55
+ execute(context) {
56
+ context.root.index.all().forEach(element => {
105
57
  if (element instanceof sprotty_1.SShapeElement || element instanceof sprotty_1.SModelRoot) {
106
- _this.applyShapeTypeHint(element);
58
+ this.applyShapeTypeHint(element);
107
59
  }
108
60
  else if (element instanceof sprotty_1.SEdge) {
109
- return _this.applyEdgeTypeHint(element);
61
+ return this.applyEdgeTypeHint(element);
110
62
  }
111
63
  });
112
64
  return context.root;
113
- };
114
- ApplyTypeHintsCommand.prototype.applyEdgeTypeHint = function (element) {
115
- var hint = this.typeHintProvider.getEdgeTypeHint(element);
65
+ }
66
+ applyEdgeTypeHint(element) {
67
+ const hint = this.typeHintProvider.getEdgeTypeHint(element);
116
68
  if (hint && isModifiableFetureSet(element.features)) {
117
69
  addOrRemove(element.features, sprotty_1.deletableFeature, hint.deletable);
118
70
  addOrRemove(element.features, sprotty_1.editFeature, hint.routable);
119
71
  addOrRemove(element.features, model_2.reconnectFeature, hint.repositionable);
120
72
  }
121
- };
122
- ApplyTypeHintsCommand.prototype.applyShapeTypeHint = function (element) {
123
- var hint = this.typeHintProvider.getShapeTypeHint(element);
73
+ }
74
+ applyShapeTypeHint(element) {
75
+ const hint = this.typeHintProvider.getShapeTypeHint(element);
124
76
  if (hint && isModifiableFetureSet(element.features)) {
125
77
  addOrRemove(element.features, sprotty_1.deletableFeature, hint.deletable);
126
78
  addOrRemove(element.features, sprotty_1.moveFeature, hint.repositionable);
127
79
  addOrRemove(element.features, model_1.resizeFeature, hint.resizable);
128
80
  addOrRemove(element.features, model_4.reparentFeature, hint.reparentable);
129
81
  addOrRemove(element.features, model_4.containerFeature, true);
130
- var containable = createContainable(hint);
82
+ const containable = createContainable(hint);
131
83
  Object.assign(element, containable);
132
84
  addOrRemove(element.features, sprotty_1.connectableFeature, true);
133
- var validSourceEdges = this.typeHintProvider.getValidEdgeElementTypes(element, 'source');
134
- var validTargetEdges = this.typeHintProvider.getValidEdgeElementTypes(element, 'target');
135
- var connectable = createConnectable(validSourceEdges, validTargetEdges);
85
+ const validSourceEdges = this.typeHintProvider.getValidEdgeElementTypes(element, 'source');
86
+ const validTargetEdges = this.typeHintProvider.getValidEdgeElementTypes(element, 'target');
87
+ const connectable = createConnectable(validSourceEdges, validTargetEdges);
136
88
  Object.assign(element, connectable);
137
89
  }
138
- };
139
- ApplyTypeHintsCommand.KIND = 'applyTypeHints';
140
- __decorate([
141
- inversify_1.inject(types_1.GLSP_TYPES.ITypeHintProvider),
142
- __metadata("design:type", Object)
143
- ], ApplyTypeHintsCommand.prototype, "typeHintProvider", void 0);
144
- ApplyTypeHintsCommand = __decorate([
145
- inversify_1.injectable(),
146
- __param(0, inversify_1.inject(sprotty_1.TYPES.Action)),
147
- __metadata("design:paramtypes", [ApplyTypeHintsAction])
148
- ], ApplyTypeHintsCommand);
149
- return ApplyTypeHintsCommand;
150
- }(model_3.FeedbackCommand));
90
+ }
91
+ };
92
+ ApplyTypeHintsCommand.KIND = 'applyTypeHints';
93
+ __decorate([
94
+ inversify_1.inject(types_1.GLSP_TYPES.ITypeHintProvider),
95
+ __metadata("design:type", Object)
96
+ ], ApplyTypeHintsCommand.prototype, "typeHintProvider", void 0);
97
+ ApplyTypeHintsCommand = __decorate([
98
+ inversify_1.injectable(),
99
+ __param(0, inversify_1.inject(sprotty_1.TYPES.Action)),
100
+ __metadata("design:paramtypes", [ApplyTypeHintsAction])
101
+ ], ApplyTypeHintsCommand);
151
102
  exports.ApplyTypeHintsCommand = ApplyTypeHintsCommand;
152
103
  function createConnectable(validSourceEdges, validTargetEdges) {
153
104
  return {
154
- canConnect: function (routable, role) {
155
- return role === 'source' ?
156
- validSourceEdges.includes(routable.type) :
157
- validTargetEdges.includes(routable.type);
158
- }
105
+ canConnect: (routable, role) => role === 'source' ? validSourceEdges.includes(routable.type) : validTargetEdges.includes(routable.type)
159
106
  };
160
107
  }
161
108
  function createContainable(hint) {
162
109
  return {
163
- isContainableElement: function (element) {
164
- return hint.containableElementTypeIds ?
165
- hint.containableElementTypeIds.includes(smodel_util_1.getElementTypeId(element)) :
166
- false;
167
- }
110
+ isContainableElement: element => hint.containableElementTypeIds ? hint.containableElementTypeIds.includes(smodel_util_1.getElementTypeId(element)) : false
168
111
  };
169
112
  }
170
113
  function addOrRemove(features, feature, add) {
@@ -178,54 +121,52 @@ function addOrRemove(features, feature, add) {
178
121
  function isModifiableFetureSet(featureSet) {
179
122
  return featureSet !== undefined && featureSet instanceof Set;
180
123
  }
181
- var TypeHintProvider = /** @class */ (function () {
182
- function TypeHintProvider() {
183
- this.shapeHints = new Map;
184
- this.edgeHints = new Map;
124
+ let TypeHintProvider = class TypeHintProvider {
125
+ constructor() {
126
+ this.shapeHints = new Map();
127
+ this.edgeHints = new Map();
185
128
  }
186
- TypeHintProvider.prototype.handle = function (action) {
187
- var _this = this;
188
- if (request_type_hints_action_1.isSetTypeHintsAction(action)) {
189
- action.shapeHints.forEach(function (hint) { return _this.shapeHints.set(hint.elementTypeId, hint); });
190
- action.edgeHints.forEach(function (hint) { return _this.edgeHints.set(hint.elementTypeId, hint); });
129
+ handle(action) {
130
+ if (protocol_1.isSetTypeHintsAction(action)) {
131
+ action.shapeHints.forEach(hint => this.shapeHints.set(hint.elementTypeId, hint));
132
+ action.edgeHints.forEach(hint => this.edgeHints.set(hint.elementTypeId, hint));
191
133
  this.feedbackActionDispatcher.registerFeedback(this, [new ApplyTypeHintsAction()]);
192
134
  }
193
- };
194
- TypeHintProvider.prototype.getValidEdgeElementTypes = function (input, role) {
195
- var elementTypeId = smodel_util_1.getElementTypeId(input);
135
+ }
136
+ getValidEdgeElementTypes(input, role) {
137
+ const elementTypeId = smodel_util_1.getElementTypeId(input);
196
138
  if (role === 'source') {
197
139
  return Array.from(Array.from(this.edgeHints.values())
198
- .filter(function (hint) { return hint.sourceElementTypeIds.some(function (sourceElementTypeId) { return smodel_util_1.hasCompatibleType(elementTypeId, sourceElementTypeId); }); })
199
- .map(function (hint) { return hint.elementTypeId; }));
140
+ .filter(hint => hint.sourceElementTypeIds.some(sourceElementTypeId => smodel_util_1.hasCompatibleType(elementTypeId, sourceElementTypeId)))
141
+ .map(hint => hint.elementTypeId));
200
142
  }
201
143
  else {
202
144
  return Array.from(Array.from(this.edgeHints.values())
203
- .filter(function (hint) { return hint.targetElementTypeIds.some(function (targetElementTypeId) { return smodel_util_1.hasCompatibleType(elementTypeId, targetElementTypeId); }); })
204
- .map(function (hint) { return hint.elementTypeId; }));
145
+ .filter(hint => hint.targetElementTypeIds.some(targetElementTypeId => smodel_util_1.hasCompatibleType(elementTypeId, targetElementTypeId)))
146
+ .map(hint => hint.elementTypeId));
205
147
  }
206
- };
207
- TypeHintProvider.prototype.getShapeTypeHint = function (input) {
148
+ }
149
+ getShapeTypeHint(input) {
208
150
  return getTypeHint(input, this.shapeHints);
209
- };
210
- TypeHintProvider.prototype.getEdgeTypeHint = function (input) {
151
+ }
152
+ getEdgeTypeHint(input) {
211
153
  return getTypeHint(input, this.edgeHints);
212
- };
213
- __decorate([
214
- inversify_1.inject(types_1.GLSP_TYPES.IFeedbackActionDispatcher),
215
- __metadata("design:type", Object)
216
- ], TypeHintProvider.prototype, "feedbackActionDispatcher", void 0);
217
- TypeHintProvider = __decorate([
218
- inversify_1.injectable()
219
- ], TypeHintProvider);
220
- return TypeHintProvider;
221
- }());
154
+ }
155
+ };
156
+ __decorate([
157
+ inversify_1.inject(types_1.GLSP_TYPES.IFeedbackActionDispatcher),
158
+ __metadata("design:type", Object)
159
+ ], TypeHintProvider.prototype, "feedbackActionDispatcher", void 0);
160
+ TypeHintProvider = __decorate([
161
+ inversify_1.injectable()
162
+ ], TypeHintProvider);
222
163
  exports.TypeHintProvider = TypeHintProvider;
223
164
  function getTypeHint(input, hints) {
224
- var type = smodel_util_1.getElementTypeId(input);
225
- var hint = hints.get(type);
165
+ const type = smodel_util_1.getElementTypeId(input);
166
+ let hint = hints.get(type);
226
167
  // Check subtypes
227
168
  if (hint === undefined) {
228
- var subtypes = type.split(':');
169
+ const subtypes = type.split(':');
229
170
  while (hint === undefined && subtypes.length > 0) {
230
171
  subtypes.pop();
231
172
  hint = hints.get(subtypes.join(':'));
@@ -1 +1 @@
1
- {"version":3,"file":"type-hints.js","sourceRoot":"","sources":["../../../src/features/hints/type-hints.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-hints.js","sourceRoot":"","sources":["../../../src/features/hints/type-hints.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qDAA6G;AAC7G,yCAA+C;AAC/C,qCAgBiB;AACjB,4CAA8C;AAC9C,yDAA8E;AAC9E,kDAAuD;AACvD,8CAAsD;AAEtD,kDAAyD;AACzD,mCAAyE;AAGzE,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAAjC;QACa,SAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC;IAC/C,CAAC;CAAA,CAAA;AAFY,oBAAoB;IADhC,sBAAU,EAAE;GACA,oBAAoB,CAEhC;AAFY,oDAAoB;AAKjC,IAAa,qBAAqB,GAAlC,MAAa,qBAAsB,SAAQ,uBAAe;IAMtD,YAA4C,MAA4B;QACpE,KAAK,EAAE,CAAC;QADgC,WAAM,GAAN,MAAM,CAAsB;QAJxD,aAAQ,GAAG,EAAE,CAAC;IAM9B,CAAC;IAED,OAAO,CAAC,OAAgC;QACpC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YACvC,IAAI,OAAO,YAAY,uBAAa,IAAI,OAAO,YAAY,oBAAU,EAAE;gBACnE,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;aACpC;iBAAM,IAAI,OAAO,YAAY,eAAK,EAAE;gBACjC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;aAC1C;QACL,CAAC,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;IAES,iBAAiB,CAAC,OAAsB;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,IAAI,IAAI,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACjD,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,0BAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAChE,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,qBAAW,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1D,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAgB,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;SACxE;IACL,CAAC;IAES,kBAAkB,CAAC,OAAsB;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAI,IAAI,IAAI,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YACjD,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,0BAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAChE,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,qBAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;YAChE,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,qBAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7D,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,uBAAe,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YAElE,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAgB,EAAE,IAAI,CAAC,CAAC;YACtD,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC5C,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAEpC,WAAW,CAAC,OAAO,CAAC,QAAQ,EAAE,4BAAkB,EAAE,IAAI,CAAC,CAAC;YACxD,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC3F,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC,wBAAwB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC3F,MAAM,WAAW,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC;YAC1E,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;SACvC;IACL,CAAC;CACJ,CAAA;AAhDiB,0BAAI,GAAG,gBAAgB,CAAC;AAGA;IAArC,kBAAM,CAAC,kBAAU,CAAC,iBAAiB,CAAC;;+DAA+C;AAJ3E,qBAAqB;IADjC,sBAAU,EAAE;IAOI,WAAA,kBAAM,CAAC,eAAK,CAAC,MAAM,CAAC,CAAA;qCAAmB,oBAAoB;GAN/D,qBAAqB,CAiDjC;AAjDY,sDAAqB;AAmDlC,SAAS,iBAAiB,CAAC,gBAA0B,EAAE,gBAA0B;IAC7E,OAAO;QACH,UAAU,EAAE,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,CAC3B,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;KAC9G,CAAC;AACN,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAmB;IAC1C,OAAO;QACH,oBAAoB,EAAE,OAAO,CAAC,EAAE,CAC5B,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,QAAQ,CAAC,8BAAgB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK;KAClH,CAAC;AACN,CAAC;AAED,SAAS,WAAW,CAAC,QAAqB,EAAE,OAAe,EAAE,GAAY;IACrE,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QAC/B,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;KACzB;SAAM,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;QACtC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;KAC5B;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,UAAuB;IAClD,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,YAAY,GAAG,CAAC;AACjE,CAAC;AASD,IAAa,gBAAgB,GAA7B,MAAa,gBAAgB;IAA7B;QAIc,eAAU,GAA+B,IAAI,GAAG,EAAE,CAAC;QACnD,cAAS,GAA8B,IAAI,GAAG,EAAE,CAAC;IAsC/D,CAAC;IApCG,MAAM,CAAC,MAAc;QACjB,IAAI,+BAAoB,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;YACjF,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC,CAAC;YAC/E,IAAI,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC,CAAC;SACtF;IACL,CAAC;IAED,wBAAwB,CAAC,KAA6C,EAAE,IAAyB;QAC7F,MAAM,aAAa,GAAG,8BAAgB,CAAC,KAAK,CAAC,CAAC;QAC9C,IAAI,IAAI,KAAK,QAAQ,EAAE;YACnB,OAAO,KAAK,CAAC,IAAI,CACb,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;iBAC9B,MAAM,CAAC,IAAI,CAAC,EAAE,CACX,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,+BAAiB,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAC/G;iBACA,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CACvC,CAAC;SACL;aAAM;YACH,OAAO,KAAK,CAAC,IAAI,CACb,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;iBAC9B,MAAM,CAAC,IAAI,CAAC,EAAE,CACX,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC,+BAAiB,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,CAC/G;iBACA,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CACvC,CAAC;SACL;IACL,CAAC;IAED,gBAAgB,CAAC,KAA6C;QAC1D,OAAO,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,eAAe,CAAC,KAA6C;QACzD,OAAO,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;CACJ,CAAA;AAzCG;IADC,kBAAM,CAAC,kBAAU,CAAC,yBAAyB,CAAC;;kEACiB;AAFrD,gBAAgB;IAD5B,sBAAU,EAAE;GACA,gBAAgB,CA2C5B;AA3CY,4CAAgB;AA6C7B,SAAS,WAAW,CAAqB,KAA6C,EAAE,KAAqB;IACzG,MAAM,IAAI,GAAG,8BAAgB,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC3B,iBAAiB;IACjB,IAAI,IAAI,KAAK,SAAS,EAAE;QACpB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACjC,OAAO,IAAI,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YAC9C,QAAQ,CAAC,GAAG,EAAE,CAAC;YACf,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;SACxC;KACJ;IACD,OAAO,IAAI,CAAC;AAChB,CAAC"}
@@ -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
@@ -1 +1 @@
1
- {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../../../src/features/hover/di.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAqB5C,QAAA,MAAM,eAAe,iBAsBnB,CAAC;AAEH,eAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"di.config.d.ts","sourceRoot":"","sources":["../../../src/features/hover/di.config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAoB5C,QAAA,MAAM,eAAe,iBAwBnB,CAAC;AAEH,eAAe,eAAe,CAAC"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  /********************************************************************************
4
- * Copyright (c) 2020 EclipseSource and others.
4
+ * Copyright (c) 2020-2022 EclipseSource and others.
5
5
  *
6
6
  * This program and the accompanying materials are made available under the
7
7
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -15,14 +15,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
15
15
  *
16
16
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
17
17
  ********************************************************************************/
18
- var inversify_1 = require("inversify");
19
- var sprotty_1 = require("sprotty");
20
- var popup_position_updater_1 = require("sprotty/lib/features/hover/popup-position-updater");
21
- var focus_change_action_1 = require("../../base/actions/focus-change-action");
22
- var hover_1 = require("./hover");
23
- var glspHoverModule = new inversify_1.ContainerModule(function (bind, _unbind, isBound) {
18
+ const inversify_1 = require("inversify");
19
+ const sprotty_1 = require("sprotty");
20
+ const popup_position_updater_1 = require("sprotty/lib/features/hover/popup-position-updater");
21
+ const focus_change_action_1 = require("../../base/actions/focus-change-action");
22
+ const hover_1 = require("./hover");
23
+ const glspHoverModule = new inversify_1.ContainerModule((bind, _unbind, isBound) => {
24
24
  bind(sprotty_1.TYPES.PopupVNodePostprocessor).to(popup_position_updater_1.PopupPositionUpdater).inSingletonScope();
25
- bind(sprotty_1.TYPES.MouseListener).to(hover_1.GlspHoverMouseListener);
25
+ bind(hover_1.GlspHoverMouseListener).toSelf().inSingletonScope();
26
+ bind(sprotty_1.TYPES.MouseListener).toService(hover_1.GlspHoverMouseListener);
26
27
  bind(sprotty_1.TYPES.PopupMouseListener).to(sprotty_1.PopupHoverMouseListener);
27
28
  bind(sprotty_1.TYPES.KeyListener).to(sprotty_1.HoverKeyListener);
28
29
  bind(sprotty_1.TYPES.HoverState).toConstantValue({
@@ -32,7 +33,7 @@ var glspHoverModule = new inversify_1.ContainerModule(function (bind, _unbind, i
32
33
  previousPopupElement: undefined
33
34
  });
34
35
  bind(sprotty_1.ClosePopupActionHandler).toSelf().inSingletonScope();
35
- var context = { bind: bind, isBound: isBound };
36
+ const context = { bind, isBound };
36
37
  sprotty_1.configureCommand(context, sprotty_1.HoverFeedbackCommand);
37
38
  sprotty_1.configureCommand(context, sprotty_1.SetPopupModelCommand);
38
39
  sprotty_1.configureActionHandler(context, sprotty_1.SetPopupModelCommand.KIND, sprotty_1.ClosePopupActionHandler);
@@ -41,6 +42,7 @@ var glspHoverModule = new inversify_1.ContainerModule(function (bind, _unbind, i
41
42
  sprotty_1.configureActionHandler(context, sprotty_1.SetViewportCommand.KIND, sprotty_1.ClosePopupActionHandler);
42
43
  sprotty_1.configureActionHandler(context, sprotty_1.MoveCommand.KIND, sprotty_1.ClosePopupActionHandler);
43
44
  sprotty_1.configureActionHandler(context, focus_change_action_1.FocusStateChangedAction.KIND, sprotty_1.ClosePopupActionHandler);
45
+ sprotty_1.configureActionHandler(context, focus_change_action_1.FocusStateChangedAction.KIND, hover_1.GlspHoverMouseListener);
44
46
  });
45
47
  exports.default = glspHoverModule;
46
48
  //# sourceMappingURL=di.config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../../../src/features/hover/di.config.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,uCAA4C;AAC5C,mCAciB;AACjB,4FAAyF;AAEzF,8EAAiF;AACjF,iCAAiD;AAEjD,IAAM,eAAe,GAAG,IAAI,2BAAe,CAAC,UAAC,IAAI,EAAE,OAAO,EAAE,OAAO;IAC/D,IAAI,CAAC,eAAK,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,6CAAoB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAChF,IAAI,CAAC,eAAK,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,8BAAsB,CAAC,CAAC;IACrD,IAAI,CAAC,eAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,iCAAuB,CAAC,CAAC;IAC3D,IAAI,CAAC,eAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,0BAAgB,CAAC,CAAC;IAC7C,IAAI,CAAa,eAAK,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC;QAC/C,cAAc,EAAE,SAAS;QACzB,aAAa,EAAE,SAAS;QACxB,SAAS,EAAE,KAAK;QAChB,oBAAoB,EAAE,SAAS;KAClC,CAAC,CAAC;IACH,IAAI,CAAC,iCAAuB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAE1D,IAAM,OAAO,GAAG,EAAE,IAAI,MAAA,EAAE,OAAO,SAAA,EAAE,CAAC;IAClC,0BAAgB,CAAC,OAAO,EAAE,8BAAoB,CAAC,CAAC;IAChD,0BAAgB,CAAC,OAAO,EAAE,8BAAoB,CAAC,CAAC;IAChD,gCAAsB,CAAC,OAAO,EAAE,8BAAoB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IACpF,gCAAsB,CAAC,OAAO,EAAE,4BAAkB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAClF,gCAAsB,CAAC,OAAO,EAAE,uBAAa,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAC7E,gCAAsB,CAAC,OAAO,EAAE,4BAAkB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAClF,gCAAsB,CAAC,OAAO,EAAE,qBAAW,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAC3E,gCAAsB,CAAC,OAAO,EAAE,6CAAuB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;AAC3F,CAAC,CAAC,CAAC;AAEH,kBAAe,eAAe,CAAC"}
1
+ {"version":3,"file":"di.config.js","sourceRoot":"","sources":["../../../src/features/hover/di.config.ts"],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAA4C;AAC5C,qCAciB;AACjB,8FAAyF;AACzF,gFAAiF;AACjF,mCAAiD;AAEjD,MAAM,eAAe,GAAG,IAAI,2BAAe,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;IACnE,IAAI,CAAC,eAAK,CAAC,uBAAuB,CAAC,CAAC,EAAE,CAAC,6CAAoB,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAChF,IAAI,CAAC,8BAAsB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IACzD,IAAI,CAAC,eAAK,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,8BAAsB,CAAC,CAAC;IAC5D,IAAI,CAAC,eAAK,CAAC,kBAAkB,CAAC,CAAC,EAAE,CAAC,iCAAuB,CAAC,CAAC;IAC3D,IAAI,CAAC,eAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,0BAAgB,CAAC,CAAC;IAC7C,IAAI,CAAa,eAAK,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC;QAC/C,cAAc,EAAE,SAAS;QACzB,aAAa,EAAE,SAAS;QACxB,SAAS,EAAE,KAAK;QAChB,oBAAoB,EAAE,SAAS;KAClC,CAAC,CAAC;IACH,IAAI,CAAC,iCAAuB,CAAC,CAAC,MAAM,EAAE,CAAC,gBAAgB,EAAE,CAAC;IAE1D,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAClC,0BAAgB,CAAC,OAAO,EAAE,8BAAoB,CAAC,CAAC;IAChD,0BAAgB,CAAC,OAAO,EAAE,8BAAoB,CAAC,CAAC;IAChD,gCAAsB,CAAC,OAAO,EAAE,8BAAoB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IACpF,gCAAsB,CAAC,OAAO,EAAE,4BAAkB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAClF,gCAAsB,CAAC,OAAO,EAAE,uBAAa,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAC7E,gCAAsB,CAAC,OAAO,EAAE,4BAAkB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAClF,gCAAsB,CAAC,OAAO,EAAE,qBAAW,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IAC3E,gCAAsB,CAAC,OAAO,EAAE,6CAAuB,CAAC,IAAI,EAAE,iCAAuB,CAAC,CAAC;IACvF,gCAAsB,CAAC,OAAO,EAAE,6CAAuB,CAAC,IAAI,EAAE,8BAAsB,CAAC,CAAC;AAC1F,CAAC,CAAC,CAAC;AAEH,kBAAe,eAAe,CAAC"}
@@ -1,6 +1,32 @@
1
- import { Action, Bounds, HoverMouseListener, SIssueMarker, SIssueSeverity, SModelElement, SModelElementSchema, SModelRootSchema } from 'sprotty';
1
+ /********************************************************************************
2
+ * Copyright (c) 2020-2022 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { Action, Bounds } from '@eclipse-glsp/protocol';
17
+ import { HoverMouseListener, IActionHandler, ICommand, SIssueMarker, SIssueSeverity, SModelElement, SModelElementSchema, SModelRootSchema } from 'sprotty';
2
18
  import { GIssueMarker } from '../validation/issue-marker';
3
- export declare class GlspHoverMouseListener extends HoverMouseListener {
19
+ export declare class GlspHoverMouseListener extends HoverMouseListener implements IActionHandler {
20
+ /**
21
+ * Stops mouse over timer and remove hover feedback, if focus is lost.
22
+ *
23
+ * This fixes strange effects that appear if the mouse left the element via e.g. a context menu,
24
+ * which explicitly removes the focus of the diagram.
25
+ * @see SelectionServiceAwareContextMenuMouseListener
26
+ * @param action should be a `FocusStateChangedAction`
27
+ * @returns a `HoverFeedbackAction` resetting the state, if the specified action indicates lost focus
28
+ */
29
+ handle(action: Action): void | Action | ICommand;
4
30
  protected startMouseOverTimer(target: SModelElement, event: MouseEvent): Promise<Action>;
5
31
  protected createPopupModel(marker: GIssueMarker, bounds: Bounds): SModelRootSchema;
6
32
  protected createMarkerIssuePopup(marker: GIssueMarker): SModelElementSchema;
@@ -1 +1 @@
1
- {"version":3,"file":"hover.d.ts","sourceRoot":"","sources":["../../../src/features/hover/hover.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,MAAM,EACN,MAAM,EAEN,kBAAkB,EAIlB,YAAY,EACZ,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,qBACa,sBAAuB,SAAQ,kBAAkB;IAE1D,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBxF,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAYlF,SAAS,CAAC,sBAAsB,CAAC,MAAM,EAAE,YAAY,GAAG,mBAAmB;IAS3E,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;IAI1D,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGjD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,CAWhE"}
1
+ {"version":3,"file":"hover.d.ts","sourceRoot":"","sources":["../../../src/features/hover/hover.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,MAAM,EAAE,MAAM,EAAgD,MAAM,wBAAwB,CAAC;AAEtG,OAAO,EAGH,kBAAkB,EAClB,cAAc,EACd,QAAQ,EAER,YAAY,EACZ,cAAc,EACd,aAAa,EACb,mBAAmB,EACnB,gBAAgB,EACnB,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,qBACa,sBAAuB,SAAQ,kBAAmB,YAAW,cAAc;IACpF;;;;;;;;OAQG;IACH,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ;IAWhD,SAAS,CAAC,mBAAmB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBxF,SAAS,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,GAAG,gBAAgB;IAYlF,SAAS,CAAC,sBAAsB,CAAC,MAAM,EAAE,YAAY,GAAG,mBAAmB;IAS3E,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;IAI1D,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGjD;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,cAAc,CAWhE"}
@@ -1,38 +1,14 @@
1
1
  "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- extendStatics(d, b);
11
- function __() { this.constructor = d; }
12
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
- };
14
- })();
15
2
  var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
16
3
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
17
4
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
18
5
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
19
6
  return c > 3 && r && Object.defineProperty(target, key, r), r;
20
7
  };
21
- var __values = (this && this.__values) || function(o) {
22
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
23
- if (m) return m.call(o);
24
- if (o && typeof o.length === "number") return {
25
- next: function () {
26
- if (o && i >= o.length) o = void 0;
27
- return { value: o && o[i++], done: !o };
28
- }
29
- };
30
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
31
- };
32
8
  Object.defineProperty(exports, "__esModule", { value: true });
33
9
  exports.getSeverity = exports.GlspHoverMouseListener = void 0;
34
10
  /********************************************************************************
35
- * Copyright (c) 2020 EclipseSource and others.
11
+ * Copyright (c) 2020-2022 EclipseSource and others.
36
12
  *
37
13
  * This program and the accompanying materials are made available under the
38
14
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -46,32 +22,48 @@ exports.getSeverity = exports.GlspHoverMouseListener = void 0;
46
22
  *
47
23
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
48
24
  ********************************************************************************/
49
- var inversify_1 = require("inversify");
50
- var sprotty_1 = require("sprotty");
51
- var issue_marker_1 = require("../validation/issue-marker");
52
- var GlspHoverMouseListener = /** @class */ (function (_super) {
53
- __extends(GlspHoverMouseListener, _super);
54
- function GlspHoverMouseListener() {
55
- return _super !== null && _super.apply(this, arguments) || this;
25
+ const protocol_1 = require("@eclipse-glsp/protocol");
26
+ const inversify_1 = require("inversify");
27
+ const sprotty_1 = require("sprotty");
28
+ const focus_change_action_1 = require("../../base/actions/focus-change-action");
29
+ const issue_marker_1 = require("../validation/issue-marker");
30
+ let GlspHoverMouseListener = class GlspHoverMouseListener extends sprotty_1.HoverMouseListener {
31
+ /**
32
+ * Stops mouse over timer and remove hover feedback, if focus is lost.
33
+ *
34
+ * This fixes strange effects that appear if the mouse left the element via e.g. a context menu,
35
+ * which explicitly removes the focus of the diagram.
36
+ * @see SelectionServiceAwareContextMenuMouseListener
37
+ * @param action should be a `FocusStateChangedAction`
38
+ * @returns a `HoverFeedbackAction` resetting the state, if the specified action indicates lost focus
39
+ */
40
+ handle(action) {
41
+ if (focus_change_action_1.isFocusStateChangedAction(action) && !action.hasFocus) {
42
+ this.stopMouseOverTimer();
43
+ if (this.lastHoverFeedbackElementId) {
44
+ const previousTargetId = this.lastHoverFeedbackElementId;
45
+ this.lastHoverFeedbackElementId = undefined;
46
+ return new sprotty_1.HoverFeedbackAction(previousTargetId, false);
47
+ }
48
+ }
56
49
  }
57
- GlspHoverMouseListener.prototype.startMouseOverTimer = function (target, event) {
58
- var _this = this;
50
+ startMouseOverTimer(target, event) {
59
51
  this.stopMouseOverTimer();
60
- return new Promise(function (resolve) {
61
- _this.state.mouseOverTimer = window.setTimeout(function () {
62
- var popupBounds = _this.computePopupBounds(target, { x: event.pageX, y: event.pageY });
52
+ return new Promise(resolve => {
53
+ this.state.mouseOverTimer = window.setTimeout(() => {
54
+ const popupBounds = this.computePopupBounds(target, { x: event.pageX, y: event.pageY });
63
55
  if (target instanceof issue_marker_1.GIssueMarker) {
64
- resolve(new sprotty_1.SetPopupModelAction(_this.createPopupModel(target, popupBounds)));
56
+ resolve(new protocol_1.SetPopupModelAction(this.createPopupModel(target, popupBounds)));
65
57
  }
66
58
  else {
67
- resolve(new sprotty_1.RequestPopupModelAction(target.id, popupBounds));
59
+ resolve(new protocol_1.RequestPopupModelAction(target.id, popupBounds));
68
60
  }
69
- _this.state.popupOpen = true;
70
- _this.state.previousPopupElement = target;
71
- }, _this.options.popupOpenDelay);
61
+ this.state.popupOpen = true;
62
+ this.state.previousPopupElement = target;
63
+ }, this.options.popupOpenDelay);
72
64
  });
73
- };
74
- GlspHoverMouseListener.prototype.createPopupModel = function (marker, bounds) {
65
+ }
66
+ createPopupModel(marker, bounds) {
75
67
  if (marker.issues !== undefined && marker.issues.length > 0) {
76
68
  return {
77
69
  type: 'html',
@@ -81,47 +73,35 @@ var GlspHoverMouseListener = /** @class */ (function (_super) {
81
73
  };
82
74
  }
83
75
  return { type: sprotty_1.EMPTY_ROOT.type, id: sprotty_1.EMPTY_ROOT.id };
84
- };
85
- GlspHoverMouseListener.prototype.createMarkerIssuePopup = function (marker) {
86
- var message = this.createIssueMessage(marker);
76
+ }
77
+ createMarkerIssuePopup(marker) {
78
+ const message = this.createIssueMessage(marker);
87
79
  return {
88
80
  type: 'pre-rendered',
89
81
  id: 'popup-title',
90
- code: "<div class=\"" + getSeverity(marker) + "\"><div class=\"sprotty-popup-title\">" + message + "</div></div>"
82
+ code: `<div class="${getSeverity(marker)}"><div class="sprotty-popup-title">${message}</div></div>`
91
83
  };
92
- };
93
- GlspHoverMouseListener.prototype.createIssueMessage = function (marker) {
94
- return '<ul>' + marker.issues.map(function (i) { return '<li>' + i.severity.toUpperCase() + ': ' + i.message + '</li>'; }).join('') + '</ul>';
95
- };
96
- GlspHoverMouseListener.prototype.modifyBounds = function (bounds) {
84
+ }
85
+ createIssueMessage(marker) {
86
+ return '<ul>' + marker.issues.map(i => '<li>' + i.severity.toUpperCase() + ': ' + i.message + '</li>').join('') + '</ul>';
87
+ }
88
+ modifyBounds(bounds) {
97
89
  return bounds;
98
- };
99
- GlspHoverMouseListener = __decorate([
100
- inversify_1.injectable()
101
- ], GlspHoverMouseListener);
102
- return GlspHoverMouseListener;
103
- }(sprotty_1.HoverMouseListener));
90
+ }
91
+ };
92
+ GlspHoverMouseListener = __decorate([
93
+ inversify_1.injectable()
94
+ ], GlspHoverMouseListener);
104
95
  exports.GlspHoverMouseListener = GlspHoverMouseListener;
105
96
  function getSeverity(marker) {
106
- var e_1, _a;
107
- var currentSeverity = 'info';
108
- try {
109
- for (var _b = __values(marker.issues.map(function (s) { return s.severity; })), _c = _b.next(); !_c.done; _c = _b.next()) {
110
- var severity = _c.value;
111
- if (severity === 'error') {
112
- return severity;
113
- }
114
- if (severity === 'warning' && currentSeverity === 'info') {
115
- currentSeverity = severity;
116
- }
97
+ let currentSeverity = 'info';
98
+ for (const severity of marker.issues.map(s => s.severity)) {
99
+ if (severity === 'error') {
100
+ return severity;
117
101
  }
118
- }
119
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
120
- finally {
121
- try {
122
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
102
+ if (severity === 'warning' && currentSeverity === 'info') {
103
+ currentSeverity = severity;
123
104
  }
124
- finally { if (e_1) throw e_1.error; }
125
105
  }
126
106
  return currentSeverity;
127
107
  }