@eclipse-glsp/client 0.9.0-RC01 → 0.9.0-next.0acab46c

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 (581) 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 +17 -1
  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} +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.map +1 -1
  105. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +29 -67
  106. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
  107. package/lib/features/context-menu/server-context-menu-provider.d.ts +18 -2
  108. package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -1
  109. package/lib/features/context-menu/server-context-menu-provider.js +30 -31
  110. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  111. package/lib/features/copy-paste/copy-paste-context-menu.d.ts +17 -1
  112. package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -1
  113. package/lib/features/copy-paste/copy-paste-context-menu.js +61 -67
  114. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  115. package/lib/features/copy-paste/copy-paste-handler.d.ts +17 -2
  116. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
  117. package/lib/features/copy-paste/copy-paste-handler.js +67 -74
  118. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  119. package/lib/features/copy-paste/di.config.d.ts +1 -1
  120. package/lib/features/copy-paste/di.config.d.ts.map +1 -1
  121. package/lib/features/copy-paste/di.config.js +11 -11
  122. package/lib/features/copy-paste/di.config.js.map +1 -1
  123. package/lib/features/decoration/decoration-placer.d.ts +17 -1
  124. package/lib/features/decoration/decoration-placer.d.ts.map +1 -1
  125. package/lib/features/decoration/decoration-placer.js +12 -46
  126. package/lib/features/decoration/decoration-placer.js.map +1 -1
  127. package/lib/features/decoration/di.config.js +4 -4
  128. package/lib/features/decoration/di.config.js.map +1 -1
  129. package/lib/features/edit-label/di.config.js +7 -7
  130. package/lib/features/edit-label/di.config.js.map +1 -1
  131. package/lib/features/edit-label/edit-label-tool.js +20 -43
  132. package/lib/features/edit-label/edit-label-tool.js.map +1 -1
  133. package/lib/features/edit-label/edit-label-validator.d.ts +16 -1
  134. package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -1
  135. package/lib/features/edit-label/edit-label-validator.js +40 -62
  136. package/lib/features/edit-label/edit-label-validator.js.map +1 -1
  137. package/lib/features/hints/di.config.d.ts +0 -15
  138. package/lib/features/hints/di.config.d.ts.map +1 -1
  139. package/lib/features/hints/di.config.js +9 -9
  140. package/lib/features/hints/di.config.js.map +1 -1
  141. package/lib/features/hints/model.d.ts +3 -2
  142. package/lib/features/hints/model.d.ts.map +1 -1
  143. package/lib/features/hints/model.js.map +1 -1
  144. package/lib/features/hints/type-hints.d.ts +17 -45
  145. package/lib/features/hints/type-hints.d.ts.map +1 -1
  146. package/lib/features/hints/type-hints.js +81 -140
  147. package/lib/features/hints/type-hints.js.map +1 -1
  148. package/lib/features/hover/di.config.d.ts +1 -1
  149. package/lib/features/hover/di.config.d.ts.map +1 -1
  150. package/lib/features/hover/di.config.js +8 -8
  151. package/lib/features/hover/di.config.js.map +1 -1
  152. package/lib/features/hover/hover.d.ts +17 -1
  153. package/lib/features/hover/hover.d.ts.map +1 -1
  154. package/lib/features/hover/hover.js +37 -77
  155. package/lib/features/hover/hover.js.map +1 -1
  156. package/lib/features/layout/di.config.d.ts +5 -1
  157. package/lib/features/layout/di.config.d.ts.map +1 -1
  158. package/lib/features/layout/di.config.js +47 -7
  159. package/lib/features/layout/di.config.js.map +1 -1
  160. package/lib/features/layout/freeform-layout.d.ts +16 -0
  161. package/lib/features/layout/freeform-layout.d.ts.map +1 -0
  162. package/lib/features/layout/freeform-layout.js +107 -0
  163. package/lib/features/layout/freeform-layout.js.map +1 -0
  164. package/lib/features/layout/layout-commands.d.ts +19 -3
  165. package/lib/features/layout/layout-commands.d.ts.map +1 -1
  166. package/lib/features/layout/layout-commands.js +189 -265
  167. package/lib/features/layout/layout-commands.js.map +1 -1
  168. package/lib/features/layout/layout-commands.spec.d.ts +0 -15
  169. package/lib/features/layout/layout-commands.spec.d.ts.map +1 -1
  170. package/lib/features/layout/layout-commands.spec.js +95 -89
  171. package/lib/features/layout/layout-commands.spec.js.map +1 -1
  172. package/lib/features/layout/vbox-layout.d.ts +25 -0
  173. package/lib/features/layout/vbox-layout.d.ts.map +1 -0
  174. package/lib/features/layout/vbox-layout.js +188 -0
  175. package/lib/features/layout/vbox-layout.js.map +1 -0
  176. package/lib/features/model-source-watcher/di.config.d.ts +0 -15
  177. package/lib/features/model-source-watcher/di.config.d.ts.map +1 -1
  178. package/lib/features/model-source-watcher/di.config.js +7 -7
  179. package/lib/features/model-source-watcher/di.config.js.map +1 -1
  180. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +17 -2
  181. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -1
  182. package/lib/features/model-source-watcher/model-source-changed-action-handler.js +38 -46
  183. package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -1
  184. package/lib/features/mouse-tool/di.config.js +5 -5
  185. package/lib/features/mouse-tool/di.config.js.map +1 -1
  186. package/lib/features/mouse-tool/mouse-tool.d.ts +2 -1
  187. package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
  188. package/lib/features/mouse-tool/mouse-tool.js +70 -215
  189. package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
  190. package/lib/features/navigation/di.config.d.ts +0 -15
  191. package/lib/features/navigation/di.config.d.ts.map +1 -1
  192. package/lib/features/navigation/di.config.js +11 -10
  193. package/lib/features/navigation/di.config.js.map +1 -1
  194. package/lib/features/navigation/navigation-action-handler.d.ts +19 -38
  195. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -1
  196. package/lib/features/navigation/navigation-action-handler.js +118 -254
  197. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  198. package/lib/features/navigation/navigation-target-resolver.d.ts +18 -40
  199. package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -1
  200. package/lib/features/navigation/navigation-target-resolver.js +46 -188
  201. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  202. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +0 -15
  203. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -1
  204. package/lib/features/navigation/navigation-target-resolver.spec.js +26 -26
  205. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -1
  206. package/lib/features/rank/model.d.ts +1 -1
  207. package/lib/features/rank/model.js +2 -2
  208. package/lib/features/rank/model.js.map +1 -1
  209. package/lib/features/reconnect/model.d.ts +1 -1
  210. package/lib/features/reconnect/model.d.ts.map +1 -1
  211. package/lib/features/reconnect/model.js +9 -27
  212. package/lib/features/reconnect/model.js.map +1 -1
  213. package/lib/features/save/di.config.d.ts +1 -1
  214. package/lib/features/save/di.config.d.ts.map +1 -1
  215. package/lib/features/save/di.config.js +6 -6
  216. package/lib/features/save/di.config.js.map +1 -1
  217. package/lib/features/save/{save.d.ts → save-keylistener.d.ts} +4 -10
  218. package/lib/features/save/save-keylistener.d.ts.map +1 -0
  219. package/lib/features/{undo-redo/model.d.ts → save/save-keylistener.js} +16 -12
  220. package/lib/features/save/save-keylistener.js.map +1 -0
  221. package/lib/features/select/di.config.js +11 -11
  222. package/lib/features/select/di.config.js.map +1 -1
  223. package/lib/features/select/select-feedback-action.d.ts.map +1 -1
  224. package/lib/features/select/select-feedback-action.js +45 -71
  225. package/lib/features/select/select-feedback-action.js.map +1 -1
  226. package/lib/features/select/select-mouse-listener.js +7 -23
  227. package/lib/features/select/select-mouse-listener.js.map +1 -1
  228. package/lib/features/select/selection-service.d.ts +17 -1
  229. package/lib/features/select/selection-service.d.ts.map +1 -1
  230. package/lib/features/select/selection-service.js +134 -236
  231. package/lib/features/select/selection-service.js.map +1 -1
  232. package/lib/features/select/selection-service.spec.js +96 -139
  233. package/lib/features/select/selection-service.spec.js.map +1 -1
  234. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +19 -2
  235. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
  236. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +102 -142
  237. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
  238. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +17 -1
  239. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
  240. package/lib/features/tool-feedback/creation-tool-feedback.js +69 -118
  241. package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
  242. package/lib/features/tool-feedback/css-feedback.d.ts +20 -2
  243. package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -1
  244. package/lib/features/tool-feedback/css-feedback.js +37 -81
  245. package/lib/features/tool-feedback/css-feedback.js.map +1 -1
  246. package/lib/features/tool-feedback/di.config.d.ts +1 -1
  247. package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
  248. package/lib/features/tool-feedback/di.config.js +27 -27
  249. package/lib/features/tool-feedback/di.config.js.map +1 -1
  250. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +18 -2
  251. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
  252. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +147 -208
  253. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
  254. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +19 -3
  255. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -1
  256. package/lib/features/tool-feedback/feedback-action-dispatcher.js +35 -72
  257. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
  258. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +17 -1
  259. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -1
  260. package/lib/features/tool-feedback/marquee-tool-feedback.js +41 -84
  261. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
  262. package/lib/features/tool-feedback/model.d.ts +1 -1
  263. package/lib/features/tool-feedback/model.js +11 -27
  264. package/lib/features/tool-feedback/model.js.map +1 -1
  265. package/lib/features/tool-feedback/view.d.ts +21 -5
  266. package/lib/features/tool-feedback/view.d.ts.map +1 -1
  267. package/lib/features/tool-feedback/view.js +29 -51
  268. package/lib/features/tool-feedback/view.js.map +1 -1
  269. package/lib/features/tool-palette/di.config.d.ts +1 -1
  270. package/lib/features/tool-palette/di.config.d.ts.map +1 -1
  271. package/lib/features/tool-palette/di.config.js +6 -6
  272. package/lib/features/tool-palette/di.config.js.map +1 -1
  273. package/lib/features/tool-palette/palette-item.d.ts +2 -3
  274. package/lib/features/tool-palette/palette-item.d.ts.map +1 -1
  275. package/lib/features/tool-palette/palette-item.js +6 -6
  276. package/lib/features/tool-palette/palette-item.js.map +1 -1
  277. package/lib/features/tool-palette/tool-palette.d.ts +19 -3
  278. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  279. package/lib/features/tool-palette/tool-palette.js +199 -269
  280. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  281. package/lib/features/tools/base-glsp-tool.d.ts +18 -2
  282. package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
  283. package/lib/features/tools/base-glsp-tool.js +37 -59
  284. package/lib/features/tools/base-glsp-tool.js.map +1 -1
  285. package/lib/features/tools/change-bounds-tool.d.ts +20 -3
  286. package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
  287. package/lib/features/tools/change-bounds-tool.js +192 -241
  288. package/lib/features/tools/change-bounds-tool.js.map +1 -1
  289. package/lib/features/tools/delete-tool.d.ts +17 -1
  290. package/lib/features/tools/delete-tool.d.ts.map +1 -1
  291. package/lib/features/tools/delete-tool.js +71 -104
  292. package/lib/features/tools/delete-tool.js.map +1 -1
  293. package/lib/features/tools/di.config.d.ts +0 -15
  294. package/lib/features/tools/di.config.d.ts.map +1 -1
  295. package/lib/features/tools/di.config.js +19 -19
  296. package/lib/features/tools/di.config.js.map +1 -1
  297. package/lib/features/tools/edge-creation-tool.d.ts +17 -2
  298. package/lib/features/tools/edge-creation-tool.d.ts.map +1 -1
  299. package/lib/features/tools/edge-creation-tool.js +62 -87
  300. package/lib/features/tools/edge-creation-tool.js.map +1 -1
  301. package/lib/features/tools/edge-edit-tool.d.ts +17 -1
  302. package/lib/features/tools/edge-edit-tool.d.ts.map +1 -1
  303. package/lib/features/tools/edge-edit-tool.js +112 -183
  304. package/lib/features/tools/edge-edit-tool.js.map +1 -1
  305. package/lib/features/tools/marquee-behavior.d.ts +42 -0
  306. package/lib/features/tools/marquee-behavior.d.ts.map +1 -0
  307. package/lib/features/tools/marquee-behavior.js +128 -0
  308. package/lib/features/tools/marquee-behavior.js.map +1 -0
  309. package/{src/features/undo-redo/model.ts → lib/features/tools/marquee-behavior.spec.d.ts} +3 -12
  310. package/lib/features/tools/marquee-behavior.spec.d.ts.map +1 -0
  311. package/lib/features/tools/marquee-behavior.spec.js +165 -0
  312. package/lib/features/tools/marquee-behavior.spec.js.map +1 -0
  313. package/lib/features/tools/marquee-mouse-tool.d.ts +24 -13
  314. package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -1
  315. package/lib/features/tools/marquee-mouse-tool.js +86 -195
  316. package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
  317. package/lib/features/tools/marquee-tool.d.ts +17 -1
  318. package/lib/features/tools/marquee-tool.d.ts.map +1 -1
  319. package/lib/features/tools/marquee-tool.js +32 -73
  320. package/lib/features/tools/marquee-tool.js.map +1 -1
  321. package/lib/features/tools/model.js +4 -22
  322. package/lib/features/tools/model.js.map +1 -1
  323. package/lib/features/tools/node-creation-tool.d.ts +17 -2
  324. package/lib/features/tools/node-creation-tool.d.ts.map +1 -1
  325. package/lib/features/tools/node-creation-tool.js +60 -90
  326. package/lib/features/tools/node-creation-tool.js.map +1 -1
  327. package/lib/features/tools/view.d.ts +1 -1
  328. package/lib/features/tools/view.d.ts.map +1 -1
  329. package/lib/features/tools/view.js +12 -31
  330. package/lib/features/tools/view.js.map +1 -1
  331. package/lib/features/validation/di.config.js +12 -12
  332. package/lib/features/validation/di.config.js.map +1 -1
  333. package/lib/features/validation/issue-marker.d.ts +2 -2
  334. package/lib/features/validation/issue-marker.d.ts.map +1 -1
  335. package/lib/features/validation/issue-marker.js +17 -55
  336. package/lib/features/validation/issue-marker.js.map +1 -1
  337. package/lib/features/validation/marker-navigator.d.ts +17 -1
  338. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  339. package/lib/features/validation/marker-navigator.js +131 -164
  340. package/lib/features/validation/marker-navigator.js.map +1 -1
  341. package/lib/features/validation/marker-navigator.spec.d.ts +0 -15
  342. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -1
  343. package/lib/features/validation/marker-navigator.spec.js +83 -77
  344. package/lib/features/validation/marker-navigator.spec.js.map +1 -1
  345. package/lib/features/validation/validate.d.ts +18 -29
  346. package/lib/features/validation/validate.d.ts.map +1 -1
  347. package/lib/features/validation/validate.js +147 -300
  348. package/lib/features/validation/validate.js.map +1 -1
  349. package/lib/features/viewport/di.config.js +10 -10
  350. package/lib/features/viewport/di.config.js.map +1 -1
  351. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +18 -2
  352. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -1
  353. package/lib/features/viewport/glsp-scroll-mouse-listener.js +16 -47
  354. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
  355. package/lib/index.d.ts +9 -15
  356. package/lib/index.d.ts.map +1 -1
  357. package/lib/index.js +29 -34
  358. package/lib/index.js.map +1 -1
  359. package/lib/lib/model.js +11 -27
  360. package/lib/lib/model.js.map +1 -1
  361. package/lib/model-source/glsp-diagram-server.d.ts +3 -5
  362. package/lib/model-source/glsp-diagram-server.d.ts.map +1 -1
  363. package/lib/model-source/glsp-diagram-server.js +60 -121
  364. package/lib/model-source/glsp-diagram-server.js.map +1 -1
  365. package/lib/protocol-reexport.d.ts +45 -0
  366. package/lib/protocol-reexport.d.ts.map +1 -0
  367. package/lib/protocol-reexport.js +75 -0
  368. package/lib/protocol-reexport.js.map +1 -0
  369. package/lib/utils/argument-utils.d.ts +3 -3
  370. package/lib/utils/argument-utils.d.ts.map +1 -1
  371. package/lib/utils/argument-utils.js +32 -97
  372. package/lib/utils/argument-utils.js.map +1 -1
  373. package/lib/utils/html-utils.js +2 -2
  374. package/lib/utils/html-utils.js.map +1 -1
  375. package/lib/utils/layout-utils.d.ts +3 -2
  376. package/lib/utils/layout-utils.d.ts.map +1 -1
  377. package/lib/utils/layout-utils.js +5 -5
  378. package/lib/utils/layout-utils.js.map +1 -1
  379. package/lib/utils/marker.d.ts +0 -38
  380. package/lib/utils/marker.d.ts.map +1 -1
  381. package/lib/utils/marker.js +14 -61
  382. package/lib/utils/marker.js.map +1 -1
  383. package/lib/utils/smodel-util.d.ts +4 -4
  384. package/lib/utils/smodel-util.d.ts.map +1 -1
  385. package/lib/utils/smodel-util.js +16 -65
  386. package/lib/utils/smodel-util.js.map +1 -1
  387. package/lib/utils/viewpoint-util.d.ts +3 -2
  388. package/lib/utils/viewpoint-util.d.ts.map +1 -1
  389. package/lib/utils/viewpoint-util.js +15 -30
  390. package/lib/utils/viewpoint-util.js.map +1 -1
  391. package/lib/views/base-view-module.d.ts +0 -15
  392. package/lib/views/base-view-module.d.ts.map +1 -1
  393. package/lib/views/base-view-module.js +28 -28
  394. package/lib/views/base-view-module.js.map +1 -1
  395. package/lib/views/compartments.d.ts +6 -0
  396. package/lib/views/compartments.d.ts.map +1 -0
  397. package/lib/views/compartments.js +43 -0
  398. package/lib/views/compartments.js.map +1 -0
  399. package/lib/views/glsp-edge-view.d.ts +18 -3
  400. package/lib/views/glsp-edge-view.d.ts.map +1 -1
  401. package/lib/views/glsp-edge-view.js +32 -77
  402. package/lib/views/glsp-edge-view.js.map +1 -1
  403. package/lib/views/index.d.ts +1 -1
  404. package/lib/views/index.d.ts.map +1 -1
  405. package/lib/views/index.js +1 -1
  406. package/lib/views/index.js.map +1 -1
  407. package/lib/views/issue-marker-view.d.ts +2 -1
  408. package/lib/views/issue-marker-view.d.ts.map +1 -1
  409. package/lib/views/issue-marker-view.js +36 -50
  410. package/lib/views/issue-marker-view.js.map +1 -1
  411. package/lib/views/rounded-corner-view.d.ts +2 -3
  412. package/lib/views/rounded-corner-view.d.ts.map +1 -1
  413. package/lib/views/rounded-corner-view.js +40 -70
  414. package/lib/views/rounded-corner-view.js.map +1 -1
  415. package/lib/views/rounded-corner.d.ts +2 -1
  416. package/lib/views/rounded-corner.d.ts.map +1 -1
  417. package/lib/views/rounded-corner.js +44 -65
  418. package/lib/views/rounded-corner.js.map +1 -1
  419. package/package.json +10 -18
  420. package/src/base/action-dispatcher.ts +3 -4
  421. package/src/base/actions/focus-change-action.ts +2 -2
  422. package/src/base/{args.ts → argumentable.ts} +2 -3
  423. package/src/base/auto-complete/auto-complete-actions.ts +1 -1
  424. package/src/base/auto-complete/auto-complete-widget.ts +37 -25
  425. package/src/base/auto-complete/validation-decorator.ts +12 -11
  426. package/src/base/command-stack.ts +2 -5
  427. package/src/base/container-modules.ts +112 -0
  428. package/src/base/di.config.ts +33 -18
  429. package/src/base/drag-aware-mouse-listener.ts +3 -4
  430. package/src/base/{editor-context.ts → editor-context-service.ts} +4 -31
  431. package/src/base/focus-tracker.ts +2 -4
  432. package/src/base/model/update-model-command.ts +8 -16
  433. package/src/base/model-initialization-constraint.ts +3 -2
  434. package/src/base/tool-manager/glsp-tool-manager.ts +3 -5
  435. package/src/base/types.ts +4 -2
  436. package/src/features/change-bounds/model.ts +15 -5
  437. package/src/features/change-bounds/movement-restrictor.ts +17 -9
  438. package/src/features/change-bounds/snap.ts +3 -2
  439. package/src/features/command-palette/server-command-palette-provider.ts +11 -9
  440. package/src/features/context-menu/delete-element-context-menu.ts +3 -4
  441. package/src/features/context-menu/di.config.ts +11 -9
  442. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +4 -3
  443. package/src/features/context-menu/server-context-menu-provider.ts +10 -7
  444. package/src/features/copy-paste/copy-paste-context-menu.ts +22 -24
  445. package/src/features/copy-paste/copy-paste-handler.ts +9 -9
  446. package/src/features/copy-paste/di.config.ts +2 -3
  447. package/src/features/decoration/decoration-placer.ts +3 -13
  448. package/src/features/edit-label/edit-label-validator.ts +11 -12
  449. package/src/features/hints/di.config.ts +2 -3
  450. package/src/features/hints/model.ts +4 -3
  451. package/src/features/hints/type-hints.ts +23 -90
  452. package/src/features/hover/di.config.ts +1 -2
  453. package/src/features/hover/hover.ts +2 -7
  454. package/src/features/layout/di.config.ts +31 -5
  455. package/src/features/layout/freeform-layout.ts +133 -0
  456. package/src/features/layout/layout-commands.spec.ts +82 -64
  457. package/src/features/layout/layout-commands.ts +43 -34
  458. package/src/features/layout/vbox-layout.ts +256 -0
  459. package/src/features/model-source-watcher/di.config.ts +3 -4
  460. package/src/features/model-source-watcher/model-source-changed-action-handler.ts +11 -7
  461. package/src/features/mouse-tool/mouse-tool.ts +33 -23
  462. package/src/features/navigation/di.config.ts +4 -10
  463. package/src/features/navigation/navigation-action-handler.ts +33 -69
  464. package/src/features/navigation/navigation-target-resolver.spec.ts +3 -7
  465. package/src/features/navigation/navigation-target-resolver.ts +13 -91
  466. package/src/features/rank/model.ts +2 -2
  467. package/src/features/reconnect/model.ts +2 -3
  468. package/src/features/save/di.config.ts +2 -3
  469. package/src/features/save/{save.ts → save-keylistener.ts} +3 -11
  470. package/src/features/select/select-feedback-action.ts +4 -6
  471. package/src/features/select/selection-service.spec.ts +11 -6
  472. package/src/features/select/selection-service.ts +14 -10
  473. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +26 -20
  474. package/src/features/tool-feedback/creation-tool-feedback.ts +17 -10
  475. package/src/features/tool-feedback/css-feedback.ts +9 -6
  476. package/src/features/tool-feedback/di.config.ts +2 -5
  477. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +19 -18
  478. package/src/features/tool-feedback/feedback-action-dispatcher.ts +8 -9
  479. package/src/features/tool-feedback/marquee-tool-feedback.ts +4 -5
  480. package/src/features/tool-feedback/model.ts +1 -2
  481. package/src/features/tool-feedback/view.tsx +17 -11
  482. package/src/features/tool-palette/di.config.ts +2 -4
  483. package/src/features/tool-palette/palette-item.ts +4 -6
  484. package/src/features/tool-palette/tool-palette.ts +44 -40
  485. package/src/features/tools/base-glsp-tool.ts +4 -4
  486. package/src/features/tools/change-bounds-tool.ts +64 -34
  487. package/src/features/tools/delete-tool.ts +9 -6
  488. package/src/features/tools/di.config.ts +2 -3
  489. package/src/features/tools/edge-creation-tool.ts +5 -10
  490. package/src/features/tools/edge-edit-tool.ts +10 -20
  491. package/src/features/tools/marquee-behavior.spec.ts +175 -0
  492. package/src/features/tools/marquee-behavior.ts +158 -0
  493. package/src/features/tools/marquee-mouse-tool.ts +43 -134
  494. package/src/features/tools/marquee-tool.ts +2 -3
  495. package/src/features/tools/node-creation-tool.ts +4 -11
  496. package/src/features/tools/view.tsx +17 -12
  497. package/src/features/validation/issue-marker.ts +2 -3
  498. package/src/features/validation/marker-navigator.spec.ts +18 -14
  499. package/src/features/validation/marker-navigator.ts +24 -12
  500. package/src/features/validation/validate.ts +7 -40
  501. package/src/features/viewport/glsp-scroll-mouse-listener.ts +3 -12
  502. package/src/index.ts +30 -19
  503. package/src/model-source/glsp-diagram-server.ts +12 -28
  504. package/src/protocol-reexport.ts +64 -0
  505. package/src/utils/argument-utils.ts +14 -11
  506. package/src/utils/layout-utils.ts +13 -7
  507. package/src/utils/marker.ts +2 -26
  508. package/src/utils/smodel-util.ts +15 -11
  509. package/src/utils/viewpoint-util.ts +4 -4
  510. package/src/views/base-view-module.ts +1 -2
  511. package/src/{base/actions/edit-mode-action.ts → views/compartments.tsx} +18 -14
  512. package/src/views/glsp-edge-view.tsx +21 -14
  513. package/src/views/index.ts +1 -1
  514. package/src/views/issue-marker-view.tsx +28 -19
  515. package/src/views/rounded-corner-view.tsx +38 -25
  516. package/src/views/rounded-corner.ts +5 -6
  517. package/lib/base/actions/context-actions.d.ts +0 -36
  518. package/lib/base/actions/context-actions.d.ts.map +0 -1
  519. package/lib/base/actions/context-actions.js +0 -51
  520. package/lib/base/actions/context-actions.js.map +0 -1
  521. package/lib/base/actions/edit-mode-action.d.ts +0 -13
  522. package/lib/base/actions/edit-mode-action.d.ts.map +0 -1
  523. package/lib/base/actions/edit-mode-action.js +0 -56
  524. package/lib/base/actions/edit-mode-action.js.map +0 -1
  525. package/lib/base/actions/edit-validation-actions.d.ts +0 -78
  526. package/lib/base/actions/edit-validation-actions.d.ts.map +0 -1
  527. package/lib/base/actions/edit-validation-actions.js +0 -83
  528. package/lib/base/actions/edit-validation-actions.js.map +0 -1
  529. package/lib/base/actions/protocol-actions.d.ts +0 -41
  530. package/lib/base/actions/protocol-actions.d.ts.map +0 -1
  531. package/lib/base/actions/protocol-actions.js +0 -151
  532. package/lib/base/actions/protocol-actions.js.map +0 -1
  533. package/lib/base/args.d.ts.map +0 -1
  534. package/lib/base/args.js.map +0 -1
  535. package/lib/base/editor-context.d.ts.map +0 -1
  536. package/lib/base/editor-context.js +0 -174
  537. package/lib/base/editor-context.js.map +0 -1
  538. package/lib/base/operations/operation.d.ts +0 -135
  539. package/lib/base/operations/operation.d.ts.map +0 -1
  540. package/lib/base/operations/operation.js +0 -231
  541. package/lib/base/operations/operation.js.map +0 -1
  542. package/lib/features/copy-paste/copy-paste-actions.d.ts +0 -50
  543. package/lib/features/copy-paste/copy-paste-actions.d.ts.map +0 -1
  544. package/lib/features/copy-paste/copy-paste-actions.js +0 -68
  545. package/lib/features/copy-paste/copy-paste-actions.js.map +0 -1
  546. package/lib/features/hints/request-type-hints-action.d.ts +0 -32
  547. package/lib/features/hints/request-type-hints-action.d.ts.map +0 -1
  548. package/lib/features/hints/request-type-hints-action.js +0 -30
  549. package/lib/features/hints/request-type-hints-action.js.map +0 -1
  550. package/lib/features/model-source-watcher/model-source-changed-action.d.ts +0 -24
  551. package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +0 -1
  552. package/lib/features/model-source-watcher/model-source-changed-action.js +0 -17
  553. package/lib/features/model-source-watcher/model-source-changed-action.js.map +0 -1
  554. package/lib/features/save/save.d.ts.map +0 -1
  555. package/lib/features/save/save.js +0 -62
  556. package/lib/features/save/save.js.map +0 -1
  557. package/lib/features/undo-redo/model.d.ts.map +0 -1
  558. package/lib/features/undo-redo/model.js +0 -22
  559. package/lib/features/undo-redo/model.js.map +0 -1
  560. package/lib/model-source/glsp-server-status.d.ts +0 -30
  561. package/lib/model-source/glsp-server-status.d.ts.map +0 -1
  562. package/lib/model-source/glsp-server-status.js +0 -61
  563. package/lib/model-source/glsp-server-status.js.map +0 -1
  564. package/lib/utils/array-utils.d.ts +0 -28
  565. package/lib/utils/array-utils.d.ts.map +0 -1
  566. package/lib/utils/array-utils.js +0 -61
  567. package/lib/utils/array-utils.js.map +0 -1
  568. package/lib/views/default-types.d.ts +0 -37
  569. package/lib/views/default-types.d.ts.map +0 -1
  570. package/lib/views/default-types.js +0 -47
  571. package/lib/views/default-types.js.map +0 -1
  572. package/src/base/actions/context-actions.ts +0 -43
  573. package/src/base/actions/edit-validation-actions.ts +0 -103
  574. package/src/base/actions/protocol-actions.ts +0 -82
  575. package/src/base/operations/operation.ts +0 -178
  576. package/src/features/copy-paste/copy-paste-actions.ts +0 -60
  577. package/src/features/hints/request-type-hints-action.ts +0 -36
  578. package/src/features/model-source-watcher/model-source-changed-action.ts +0 -26
  579. package/src/model-source/glsp-server-status.ts +0 -38
  580. package/src/utils/array-utils.ts +0 -55
  581. 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);
@@ -21,41 +8,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
21
8
  var __metadata = (this && this.__metadata) || function (k, v) {
22
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
23
10
  };
24
- var __values = (this && this.__values) || function(o) {
25
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
26
- if (m) return m.call(o);
27
- if (o && typeof o.length === "number") return {
28
- next: function () {
29
- if (o && i >= o.length) o = void 0;
30
- return { value: o && o[i++], done: !o };
31
- }
32
- };
33
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
34
- };
35
- var __read = (this && this.__read) || function (o, n) {
36
- var m = typeof Symbol === "function" && o[Symbol.iterator];
37
- if (!m) return o;
38
- var i = m.call(o), r, ar = [], e;
39
- try {
40
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
41
- }
42
- catch (error) { e = { error: error }; }
43
- finally {
44
- try {
45
- if (r && !r.done && (m = i["return"])) m.call(i);
46
- }
47
- finally { if (e) throw e.error; }
48
- }
49
- return ar;
50
- };
51
- var __spread = (this && this.__spread) || function () {
52
- for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));
53
- return ar;
54
- };
11
+ var EdgeEditTool_1;
55
12
  Object.defineProperty(exports, "__esModule", { value: true });
56
13
  exports.EdgeEditTool = void 0;
57
14
  /********************************************************************************
58
- * Copyright (c) 2019 EclipseSource and others.
15
+ * Copyright (c) 2019-2021 EclipseSource and others.
59
16
  *
60
17
  * This program and the accompanying materials are made available under the
61
18
  * terms of the Eclipse Public License v. 2.0 which is available at
@@ -69,32 +26,23 @@ exports.EdgeEditTool = void 0;
69
26
  *
70
27
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
71
28
  ********************************************************************************/
72
- var inversify_1 = require("inversify");
73
- var sprotty_1 = require("sprotty");
74
- var drag_aware_mouse_listener_1 = require("../../base/drag-aware-mouse-listener");
75
- var operation_1 = require("../../base/operations/operation");
76
- var types_1 = require("../../base/types");
77
- var smodel_util_1 = require("../../utils/smodel-util");
78
- var model_1 = require("../reconnect/model");
79
- var selection_service_1 = require("../select/selection-service");
80
- var creation_tool_feedback_1 = require("../tool-feedback/creation-tool-feedback");
81
- var css_feedback_1 = require("../tool-feedback/css-feedback");
82
- var edge_edit_tool_feedback_1 = require("../tool-feedback/edge-edit-tool-feedback");
83
- var base_glsp_tool_1 = require("./base-glsp-tool");
84
- var EdgeEditTool = /** @class */ (function (_super) {
85
- __extends(EdgeEditTool, _super);
86
- function EdgeEditTool() {
87
- return _super !== null && _super.apply(this, arguments) || this;
29
+ const protocol_1 = require("@eclipse-glsp/protocol");
30
+ const inversify_1 = require("inversify");
31
+ const sprotty_1 = require("sprotty");
32
+ const drag_aware_mouse_listener_1 = require("../../base/drag-aware-mouse-listener");
33
+ const types_1 = require("../../base/types");
34
+ const smodel_util_1 = require("../../utils/smodel-util");
35
+ const model_1 = require("../reconnect/model");
36
+ const selection_service_1 = require("../select/selection-service");
37
+ const creation_tool_feedback_1 = require("../tool-feedback/creation-tool-feedback");
38
+ const css_feedback_1 = require("../tool-feedback/css-feedback");
39
+ const edge_edit_tool_feedback_1 = require("../tool-feedback/edge-edit-tool-feedback");
40
+ const base_glsp_tool_1 = require("./base-glsp-tool");
41
+ let EdgeEditTool = EdgeEditTool_1 = class EdgeEditTool extends base_glsp_tool_1.BaseGLSPTool {
42
+ get id() {
43
+ return EdgeEditTool_1.ID;
88
44
  }
89
- EdgeEditTool_1 = EdgeEditTool;
90
- Object.defineProperty(EdgeEditTool.prototype, "id", {
91
- get: function () {
92
- return EdgeEditTool_1.ID;
93
- },
94
- enumerable: false,
95
- configurable: true
96
- });
97
- EdgeEditTool.prototype.enable = function () {
45
+ enable() {
98
46
  this.edgeEditListener = new EdgeEditListener(this);
99
47
  this.mouseTool.register(this.edgeEditListener);
100
48
  this.selectionService.register(this.edgeEditListener);
@@ -102,62 +50,58 @@ var EdgeEditTool = /** @class */ (function (_super) {
102
50
  this.feedbackEdgeSourceMovingListener = new edge_edit_tool_feedback_1.FeedbackEdgeSourceMovingMouseListener(this.anchorRegistry);
103
51
  this.feedbackEdgeTargetMovingListener = new edge_edit_tool_feedback_1.FeedbackEdgeTargetMovingMouseListener(this.anchorRegistry);
104
52
  this.feedbackMovingListener = new edge_edit_tool_feedback_1.FeedbackEdgeRouteMovingMouseListener(this.edgeRouterRegistry);
105
- };
106
- EdgeEditTool.prototype.registerFeedbackListeners = function () {
53
+ }
54
+ registerFeedbackListeners() {
107
55
  this.mouseTool.register(this.feedbackMovingListener);
108
56
  this.mouseTool.register(this.feedbackEdgeSourceMovingListener);
109
57
  this.mouseTool.register(this.feedbackEdgeTargetMovingListener);
110
- };
111
- EdgeEditTool.prototype.deregisterFeedbackListeners = function () {
58
+ }
59
+ deregisterFeedbackListeners() {
112
60
  this.mouseTool.deregister(this.feedbackEdgeSourceMovingListener);
113
61
  this.mouseTool.deregister(this.feedbackEdgeTargetMovingListener);
114
62
  this.mouseTool.deregister(this.feedbackMovingListener);
115
- };
116
- EdgeEditTool.prototype.disable = function () {
63
+ }
64
+ disable() {
117
65
  this.edgeEditListener.reset();
118
66
  this.selectionService.deregister(this.edgeEditListener);
119
67
  this.deregisterFeedbackListeners();
120
68
  this.mouseTool.deregister(this.edgeEditListener);
121
- };
122
- var EdgeEditTool_1;
123
- EdgeEditTool.ID = 'glsp.edge-edit-tool';
124
- __decorate([
125
- inversify_1.inject(types_1.GLSP_TYPES.SelectionService),
126
- __metadata("design:type", selection_service_1.SelectionService)
127
- ], EdgeEditTool.prototype, "selectionService", void 0);
128
- __decorate([
129
- inversify_1.inject(sprotty_1.AnchorComputerRegistry),
130
- __metadata("design:type", sprotty_1.AnchorComputerRegistry)
131
- ], EdgeEditTool.prototype, "anchorRegistry", void 0);
132
- __decorate([
133
- inversify_1.inject(sprotty_1.EdgeRouterRegistry),
134
- inversify_1.optional(),
135
- __metadata("design:type", sprotty_1.EdgeRouterRegistry)
136
- ], EdgeEditTool.prototype, "edgeRouterRegistry", void 0);
137
- EdgeEditTool = EdgeEditTool_1 = __decorate([
138
- inversify_1.injectable()
139
- ], EdgeEditTool);
140
- return EdgeEditTool;
141
- }(base_glsp_tool_1.BaseGLSPTool));
69
+ }
70
+ };
71
+ EdgeEditTool.ID = 'glsp.edge-edit-tool';
72
+ __decorate([
73
+ inversify_1.inject(types_1.GLSP_TYPES.SelectionService),
74
+ __metadata("design:type", selection_service_1.SelectionService)
75
+ ], EdgeEditTool.prototype, "selectionService", void 0);
76
+ __decorate([
77
+ inversify_1.inject(sprotty_1.AnchorComputerRegistry),
78
+ __metadata("design:type", sprotty_1.AnchorComputerRegistry)
79
+ ], EdgeEditTool.prototype, "anchorRegistry", void 0);
80
+ __decorate([
81
+ inversify_1.inject(sprotty_1.EdgeRouterRegistry),
82
+ inversify_1.optional(),
83
+ __metadata("design:type", sprotty_1.EdgeRouterRegistry)
84
+ ], EdgeEditTool.prototype, "edgeRouterRegistry", void 0);
85
+ EdgeEditTool = EdgeEditTool_1 = __decorate([
86
+ inversify_1.injectable()
87
+ ], EdgeEditTool);
142
88
  exports.EdgeEditTool = EdgeEditTool;
143
- var EdgeEditListener = /** @class */ (function (_super) {
144
- __extends(EdgeEditListener, _super);
145
- function EdgeEditListener(tool) {
146
- var _this = _super.call(this) || this;
147
- _this.tool = tool;
148
- return _this;
89
+ class EdgeEditListener extends drag_aware_mouse_listener_1.DragAwareMouseListener {
90
+ constructor(tool) {
91
+ super();
92
+ this.tool = tool;
149
93
  }
150
- EdgeEditListener.prototype.isValidEdge = function (edge) {
94
+ isValidEdge(edge) {
151
95
  return edge !== undefined && edge.id !== creation_tool_feedback_1.feedbackEdgeId(edge.root) && sprotty_1.isSelected(edge);
152
- };
153
- EdgeEditListener.prototype.setEdgeSelected = function (edge) {
96
+ }
97
+ setEdgeSelected(edge) {
154
98
  if (this.edge && this.edge.id !== edge.id) {
155
99
  // reset from a previously selected edge
156
100
  this.reset();
157
101
  }
158
102
  this.edge = edge;
159
103
  // note: order is important here as we want the reconnect handles to cover the routing handles
160
- var feedbackActions = [];
104
+ const feedbackActions = [];
161
105
  if (sprotty_1.canEditRouting(edge)) {
162
106
  feedbackActions.push(new edge_edit_tool_feedback_1.SwitchRoutingModeAction([this.edge.id], []));
163
107
  }
@@ -165,11 +109,11 @@ var EdgeEditListener = /** @class */ (function (_super) {
165
109
  feedbackActions.push(new edge_edit_tool_feedback_1.ShowEdgeReconnectHandlesFeedbackAction(this.edge.id));
166
110
  }
167
111
  this.tool.dispatchFeedback(feedbackActions);
168
- };
169
- EdgeEditListener.prototype.isEdgeSelected = function () {
112
+ }
113
+ isEdgeSelected() {
170
114
  return this.edge !== undefined && sprotty_1.isSelected(this.edge);
171
- };
172
- EdgeEditListener.prototype.setReconnectHandleSelected = function (edge, reconnectHandle) {
115
+ }
116
+ setReconnectHandleSelected(edge, reconnectHandle) {
173
117
  if (this.edge && this.edge.target && this.edge.source) {
174
118
  if (model_1.isSourceRoutingHandle(edge, reconnectHandle)) {
175
119
  this.tool.dispatchFeedback([
@@ -188,36 +132,36 @@ var EdgeEditListener = /** @class */ (function (_super) {
188
132
  this.reconnectMode = 'NEW_TARGET';
189
133
  }
190
134
  }
191
- };
192
- EdgeEditListener.prototype.isReconnecting = function () {
135
+ }
136
+ isReconnecting() {
193
137
  return this.reconnectMode !== undefined;
194
- };
195
- EdgeEditListener.prototype.isReconnectingNewSource = function () {
138
+ }
139
+ isReconnectingNewSource() {
196
140
  return this.reconnectMode === 'NEW_SOURCE';
197
- };
198
- EdgeEditListener.prototype.setRoutingHandleSelected = function (edge, routingHandle) {
141
+ }
142
+ setRoutingHandleSelected(edge, routingHandle) {
199
143
  if (this.edge && this.edge.target && this.edge.source) {
200
144
  this.routingHandle = routingHandle;
201
145
  }
202
- };
203
- EdgeEditListener.prototype.requiresReconnect = function (sourceId, targetId) {
146
+ }
147
+ requiresReconnect(sourceId, targetId) {
204
148
  return this.edge !== undefined && (this.edge.sourceId !== sourceId || this.edge.targetId !== targetId);
205
- };
206
- EdgeEditListener.prototype.setNewConnectable = function (connectable) {
149
+ }
150
+ setNewConnectable(connectable) {
207
151
  this.newConnectable = connectable;
208
- };
209
- EdgeEditListener.prototype.isReadyToReconnect = function () {
152
+ }
153
+ isReadyToReconnect() {
210
154
  return this.edge && this.isReconnecting() && this.newConnectable !== undefined;
211
- };
212
- EdgeEditListener.prototype.isReadyToReroute = function () {
155
+ }
156
+ isReadyToReroute() {
213
157
  return this.routingHandle !== undefined;
214
- };
215
- EdgeEditListener.prototype.mouseDown = function (target, event) {
216
- var result = _super.prototype.mouseDown.call(this, target, event);
158
+ }
159
+ mouseDown(target, event) {
160
+ const result = super.mouseDown(target, event);
217
161
  if (event.button === 0) {
218
- var reconnectHandle = sprotty_1.findParentByFeature(target, model_1.isReconnectHandle);
219
- var routingHandle = !reconnectHandle ? sprotty_1.findParentByFeature(target, smodel_util_1.isRoutingHandle) : undefined;
220
- var edge = sprotty_1.findParentByFeature(target, smodel_util_1.isRoutable);
162
+ const reconnectHandle = sprotty_1.findParentByFeature(target, model_1.isReconnectHandle);
163
+ const routingHandle = !reconnectHandle ? sprotty_1.findParentByFeature(target, smodel_util_1.isRoutingHandle) : undefined;
164
+ const edge = sprotty_1.findParentByFeature(target, smodel_util_1.isRoutable);
221
165
  if (this.isEdgeSelected() && edge && reconnectHandle) {
222
166
  // PHASE 2 Reconnect: Select reconnect handle on selected edge
223
167
  this.setReconnectHandleSelected(edge, reconnectHandle);
@@ -236,41 +180,42 @@ var EdgeEditListener = /** @class */ (function (_super) {
236
180
  this.reset();
237
181
  }
238
182
  return result;
239
- };
240
- EdgeEditListener.prototype.mouseMove = function (target, event) {
241
- var result = _super.prototype.mouseMove.call(this, target, event);
183
+ }
184
+ mouseMove(target, event) {
185
+ const result = super.mouseMove(target, event);
242
186
  if (this.isMouseDrag) {
243
187
  // reset any selected connectables when we are dragging, maybe the user is just panning
244
188
  this.setNewConnectable(undefined);
245
189
  }
246
190
  return result;
247
- };
248
- EdgeEditListener.prototype.mouseUp = function (target, event) {
249
- var result = _super.prototype.mouseUp.call(this, target, event);
191
+ }
192
+ mouseUp(target, event) {
193
+ const result = super.mouseUp(target, event);
250
194
  if (!this.isReadyToReconnect() && !this.isReadyToReroute()) {
251
195
  return result;
252
196
  }
253
197
  if (this.edge && this.newConnectable) {
254
- var sourceId = this.isReconnectingNewSource() ? this.newConnectable.id : this.edge.sourceId;
255
- var targetId = this.isReconnectingNewSource() ? this.edge.targetId : this.newConnectable.id;
198
+ const sourceId = this.isReconnectingNewSource() ? this.newConnectable.id : this.edge.sourceId;
199
+ const targetId = this.isReconnectingNewSource() ? this.edge.targetId : this.newConnectable.id;
256
200
  if (this.requiresReconnect(sourceId, targetId)) {
257
- result.push(new operation_1.ReconnectEdgeOperation(this.edge.id, sourceId, targetId));
201
+ result.push(new protocol_1.ReconnectEdgeOperation(this.edge.id, sourceId, targetId));
258
202
  }
259
203
  this.reset();
260
204
  }
261
205
  else if (this.edge && this.routingHandle) {
262
- // we need to re-retrieve the edge as it might have changed due to a server udpate since we do not reset the state between reroute actions
263
- var latestEdge = target.index.getById(this.edge.id);
206
+ // we need to re-retrieve the edge as it might have changed due to a server update since we do not reset the state between
207
+ // reroute actions
208
+ const latestEdge = target.index.getById(this.edge.id);
264
209
  if (latestEdge && smodel_util_1.isRoutable(latestEdge)) {
265
- result.push(new operation_1.ChangeRoutingPointsOperation([{ elementId: latestEdge.id, newRoutingPoints: latestEdge.routingPoints }]));
210
+ result.push(new protocol_1.ChangeRoutingPointsOperation([{ elementId: latestEdge.id, newRoutingPoints: latestEdge.routingPoints }]));
266
211
  this.routingHandle = undefined;
267
212
  }
268
213
  }
269
214
  return result;
270
- };
271
- EdgeEditListener.prototype.mouseOver = function (target, event) {
215
+ }
216
+ mouseOver(target, event) {
272
217
  if (this.edge && this.isReconnecting()) {
273
- var currentTarget = sprotty_1.findParentByFeature(target, sprotty_1.isConnectable);
218
+ const currentTarget = sprotty_1.findParentByFeature(target, sprotty_1.isConnectable);
274
219
  if (!this.newConnectable || currentTarget !== this.newConnectable) {
275
220
  this.setNewConnectable(currentTarget);
276
221
  if (currentTarget) {
@@ -284,9 +229,8 @@ var EdgeEditListener = /** @class */ (function (_super) {
284
229
  }
285
230
  }
286
231
  return [];
287
- };
288
- EdgeEditListener.prototype.selectionChanged = function (root, selectedElements) {
289
- var e_1, _a;
232
+ }
233
+ selectionChanged(root, selectedElements) {
290
234
  if (this.edge) {
291
235
  if (selectedElements.indexOf(this.edge.id) > -1) {
292
236
  // our active edge is still selected, nothing to do
@@ -296,54 +240,39 @@ var EdgeEditListener = /** @class */ (function (_super) {
296
240
  // we are reconnecting, so we may have clicked on a potential target
297
241
  return;
298
242
  }
299
- try {
300
- // try to find some other selected element and mark that active
301
- for (var _b = __values(selectedElements.reverse()), _c = _b.next(); !_c.done; _c = _b.next()) {
302
- var elementId = _c.value;
303
- var element = root.index.getById(elementId);
304
- if (element) {
305
- var edge = sprotty_1.findParentByFeature(element, smodel_util_1.isRoutable);
306
- if (this.isValidEdge(edge)) {
307
- // PHASE 1: Select edge
308
- this.setEdgeSelected(edge);
309
- return;
310
- }
243
+ // try to find some other selected element and mark that active
244
+ for (const elementId of selectedElements.reverse()) {
245
+ const element = root.index.getById(elementId);
246
+ if (element) {
247
+ const edge = sprotty_1.findParentByFeature(element, smodel_util_1.isRoutable);
248
+ if (this.isValidEdge(edge)) {
249
+ // PHASE 1: Select edge
250
+ this.setEdgeSelected(edge);
251
+ return;
311
252
  }
312
253
  }
313
254
  }
314
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
315
- finally {
316
- try {
317
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
318
- }
319
- finally { if (e_1) throw e_1.error; }
320
- }
321
255
  this.reset();
322
256
  }
323
- };
324
- EdgeEditListener.prototype.reset = function () {
257
+ }
258
+ reset() {
325
259
  this.resetFeedback();
326
260
  this.resetData();
327
- };
328
- EdgeEditListener.prototype.resetData = function () {
261
+ }
262
+ resetData() {
329
263
  this.edge = undefined;
330
264
  this.reconnectMode = undefined;
331
265
  this.newConnectable = undefined;
332
266
  this.routingHandle = undefined;
333
- };
334
- EdgeEditListener.prototype.resetFeedback = function () {
335
- var result = [];
267
+ }
268
+ resetFeedback() {
269
+ const result = [];
336
270
  if (this.edge) {
337
271
  result.push(new edge_edit_tool_feedback_1.SwitchRoutingModeAction([], [this.edge.id]));
338
272
  }
339
- result.push.apply(result, __spread([
340
- new edge_edit_tool_feedback_1.HideEdgeReconnectHandlesFeedbackAction(),
341
- css_feedback_1.cursorFeedbackAction(),
342
- new creation_tool_feedback_1.RemoveFeedbackEdgeAction()
343
- ]));
273
+ result.push(...[new edge_edit_tool_feedback_1.HideEdgeReconnectHandlesFeedbackAction(), css_feedback_1.cursorFeedbackAction(), new creation_tool_feedback_1.RemoveFeedbackEdgeAction()]);
344
274
  this.tool.deregisterFeedback(result);
345
275
  this.tool.deregisterFeedbackListeners();
346
- };
347
- return EdgeEditListener;
348
- }(drag_aware_mouse_listener_1.DragAwareMouseListener));
276
+ }
277
+ }
349
278
  //# sourceMappingURL=edge-edit-tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"edge-edit-tool.js","sourceRoot":"","sources":["../../../src/features/tools/edge-edit-tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"edge-edit-tool.js","sourceRoot":"","sources":["../../../src/features/tools/edge-edit-tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2021 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 { Bounds, Point } from '@eclipse-glsp/protocol';
17
+ import { DrawMarqueeAction } from '../tool-feedback/marquee-tool-feedback';
18
+ export interface IMarqueeBehavior {
19
+ readonly entireElement: boolean;
20
+ readonly entireEdge: boolean;
21
+ }
22
+ export declare class MarqueeUtil {
23
+ protected startPoint: Point;
24
+ protected currentPoint: Point;
25
+ protected marqueeBehavior: IMarqueeBehavior;
26
+ constructor(marqueeBehavior?: IMarqueeBehavior);
27
+ updateStartPoint(position: Point): void;
28
+ updateCurrentPoint(position: Point): void;
29
+ drawMarqueeAction(): DrawMarqueeAction;
30
+ isEdgePathMarked(path: string | null): boolean;
31
+ isEdgeMarked(points: Point[]): boolean;
32
+ isNodeMarked(elementBounds: Bounds): boolean;
33
+ private isEntireEdgeMarked;
34
+ private isPartOfEdgeMarked;
35
+ private isLineMarked;
36
+ private lineIntersect;
37
+ private pointInRect;
38
+ private isElementBetweenXAxis;
39
+ private isElementBetweenYAxis;
40
+ private isBetween;
41
+ }
42
+ //# sourceMappingURL=marquee-behavior.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee-behavior.d.ts","sourceRoot":"","sources":["../../../src/features/tools/marquee-behavior.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAE3E,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,aAAa,EAAE,OAAO,CAAC;IAChC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC;CAChC;AAED,qBAAa,WAAW;IACpB,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC;IAC5B,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC;IAC9B,SAAS,CAAC,eAAe,EAAE,gBAAgB,CAAC;gBAEhC,eAAe,CAAC,EAAE,gBAAgB;IAQ9C,gBAAgB,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI;IAIvC,kBAAkB,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI;IAIzC,iBAAiB,IAAI,iBAAiB;IAItC,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO;IAc9C,YAAY,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO;IAItC,YAAY,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IAY5C,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,kBAAkB;IAS1B,OAAO,CAAC,YAAY;IAYpB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,WAAW;IAYnB,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,qBAAqB;IAc7B,OAAO,CAAC,SAAS;CAGpB"}
@@ -0,0 +1,128 @@
1
+ "use strict";
2
+ /********************************************************************************
3
+ * Copyright (c) 2021 EclipseSource and others.
4
+ *
5
+ * This program and the accompanying materials are made available under the
6
+ * terms of the Eclipse Public License v. 2.0 which is available at
7
+ * http://www.eclipse.org/legal/epl-2.0.
8
+ *
9
+ * This Source Code may also be made available under the following Secondary
10
+ * Licenses when the conditions for such availability set forth in the Eclipse
11
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ * with the GNU Classpath Exception which is available at
13
+ * https://www.gnu.org/software/classpath/license.html.
14
+ *
15
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
16
+ ********************************************************************************/
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.MarqueeUtil = void 0;
19
+ const sprotty_1 = require("sprotty");
20
+ const marquee_tool_feedback_1 = require("../tool-feedback/marquee-tool-feedback");
21
+ class MarqueeUtil {
22
+ constructor(marqueeBehavior) {
23
+ if (marqueeBehavior) {
24
+ this.marqueeBehavior = marqueeBehavior;
25
+ }
26
+ else {
27
+ this.marqueeBehavior = { entireElement: false, entireEdge: false };
28
+ }
29
+ }
30
+ updateStartPoint(position) {
31
+ this.startPoint = position;
32
+ }
33
+ updateCurrentPoint(position) {
34
+ this.currentPoint = position;
35
+ }
36
+ drawMarqueeAction() {
37
+ return new marquee_tool_feedback_1.DrawMarqueeAction(this.startPoint, this.currentPoint);
38
+ }
39
+ isEdgePathMarked(path) {
40
+ if (!path) {
41
+ return false;
42
+ }
43
+ const points = path
44
+ .split(/M|L/)
45
+ .filter(p => p)
46
+ .map(p => {
47
+ const coord = p.split(',');
48
+ return { x: parseInt(coord[0], 10), y: parseInt(coord[1], 10) };
49
+ });
50
+ return this.isEdgeMarked(points);
51
+ }
52
+ isEdgeMarked(points) {
53
+ return this.marqueeBehavior.entireEdge ? this.isEntireEdgeMarked(points) : this.isPartOfEdgeMarked(points);
54
+ }
55
+ isNodeMarked(elementBounds) {
56
+ const horizontallyIn = this.startPoint.x < this.currentPoint.x
57
+ ? this.isElementBetweenXAxis(elementBounds, this.startPoint.x, this.currentPoint.x)
58
+ : this.isElementBetweenXAxis(elementBounds, this.currentPoint.x, this.startPoint.x);
59
+ const verticallyIn = this.startPoint.y < this.currentPoint.y
60
+ ? this.isElementBetweenYAxis(elementBounds, this.startPoint.y, this.currentPoint.y)
61
+ : this.isElementBetweenYAxis(elementBounds, this.currentPoint.y, this.startPoint.y);
62
+ return horizontallyIn && verticallyIn;
63
+ }
64
+ isEntireEdgeMarked(points) {
65
+ for (let i = 0; i < points.length; i++) {
66
+ if (!this.pointInRect(points[i])) {
67
+ return false;
68
+ }
69
+ }
70
+ return true;
71
+ }
72
+ isPartOfEdgeMarked(points) {
73
+ for (let i = 0; i < points.length - 1; i++) {
74
+ if (this.isLineMarked(points[i], points[i + 1])) {
75
+ return true;
76
+ }
77
+ }
78
+ return false;
79
+ }
80
+ isLineMarked(point1, point2) {
81
+ const line = new sprotty_1.PointToPointLine(point1, point2);
82
+ return (this.pointInRect(point1) ||
83
+ this.pointInRect(point2) ||
84
+ this.lineIntersect(line, this.startPoint, { x: this.startPoint.x, y: this.currentPoint.y }) ||
85
+ this.lineIntersect(line, this.startPoint, { x: this.currentPoint.x, y: this.startPoint.y }) ||
86
+ this.lineIntersect(line, { x: this.currentPoint.x, y: this.startPoint.y }, this.currentPoint) ||
87
+ this.lineIntersect(line, { x: this.startPoint.x, y: this.currentPoint.y }, this.currentPoint));
88
+ }
89
+ lineIntersect(line, p1, p2) {
90
+ return line.intersection(new sprotty_1.PointToPointLine(p1, p2)) !== undefined;
91
+ }
92
+ pointInRect(point) {
93
+ const boolX = this.startPoint.x <= this.currentPoint.x
94
+ ? this.isBetween(point.x, this.startPoint.x, this.currentPoint.x)
95
+ : this.isBetween(point.x, this.currentPoint.x, this.startPoint.x);
96
+ const boolY = this.startPoint.y <= this.currentPoint.y
97
+ ? this.isBetween(point.y, this.startPoint.y, this.currentPoint.y)
98
+ : this.isBetween(point.y, this.currentPoint.y, this.startPoint.y);
99
+ return boolX && boolY;
100
+ }
101
+ isElementBetweenXAxis(elementBounds, marqueeLeft, marqueeRight) {
102
+ const leftEdge = this.isBetween(elementBounds.x, marqueeLeft, marqueeRight);
103
+ const rightEdge = this.isBetween(elementBounds.x + elementBounds.width, marqueeLeft, marqueeRight);
104
+ if (this.marqueeBehavior.entireElement) {
105
+ return leftEdge && rightEdge;
106
+ }
107
+ return (leftEdge ||
108
+ rightEdge ||
109
+ this.isBetween(marqueeLeft, elementBounds.x, elementBounds.x + elementBounds.width) ||
110
+ this.isBetween(marqueeRight, elementBounds.x, elementBounds.x + elementBounds.width));
111
+ }
112
+ isElementBetweenYAxis(elementBounds, marqueeTop, marqueeBottom) {
113
+ const topEdge = this.isBetween(elementBounds.y, marqueeTop, marqueeBottom);
114
+ const bottomEdge = this.isBetween(elementBounds.y + elementBounds.height, marqueeTop, marqueeBottom);
115
+ if (this.marqueeBehavior.entireElement) {
116
+ return topEdge && bottomEdge;
117
+ }
118
+ return (topEdge ||
119
+ bottomEdge ||
120
+ this.isBetween(marqueeTop, elementBounds.y, elementBounds.y + elementBounds.height) ||
121
+ this.isBetween(marqueeBottom, elementBounds.y, elementBounds.y + elementBounds.height));
122
+ }
123
+ isBetween(x, lower, upper) {
124
+ return lower <= x && x <= upper;
125
+ }
126
+ }
127
+ exports.MarqueeUtil = MarqueeUtil;
128
+ //# sourceMappingURL=marquee-behavior.js.map