@eclipse-glsp/client 1.1.0-next.cab84ec.250 → 1.1.0-next.cc57a50.267

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 (784) hide show
  1. package/README.md +1 -1
  2. package/css/decoration.css +0 -7
  3. package/css/glsp-sprotty.css +7 -0
  4. package/css/key-shortcut.css +107 -0
  5. package/css/status-overlay.css +75 -0
  6. package/lib/base/action-dispatcher.d.ts +1 -0
  7. package/lib/base/action-dispatcher.d.ts.map +1 -1
  8. package/lib/base/action-dispatcher.js +8 -3
  9. package/lib/base/action-dispatcher.js.map +1 -1
  10. package/lib/base/auto-complete/auto-complete-actions.js +1 -1
  11. package/lib/base/auto-complete/auto-complete-actions.js.map +1 -1
  12. package/lib/base/auto-complete/validation-decorator.js +1 -1
  13. package/lib/base/auto-complete/validation-decorator.js.map +1 -1
  14. package/lib/base/command-stack.d.ts +17 -2
  15. package/lib/base/command-stack.d.ts.map +1 -1
  16. package/lib/base/command-stack.js +43 -3
  17. package/lib/base/command-stack.js.map +1 -1
  18. package/lib/base/{di.config.d.ts → default.module.d.ts} +8 -5
  19. package/lib/base/default.module.d.ts.map +1 -0
  20. package/lib/base/{di.config.js → default.module.js} +37 -12
  21. package/lib/base/default.module.js.map +1 -0
  22. package/lib/base/drag-aware-mouse-listener.d.ts +2 -2
  23. package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -1
  24. package/lib/base/drag-aware-mouse-listener.js.map +1 -1
  25. package/lib/base/editor-context-service.d.ts +17 -8
  26. package/lib/base/editor-context-service.d.ts.map +1 -1
  27. package/lib/base/editor-context-service.js +50 -17
  28. package/lib/base/editor-context-service.js.map +1 -1
  29. package/lib/{features/tool-feedback → base/feedback}/css-feedback.d.ts +1 -1
  30. package/lib/base/feedback/css-feedback.d.ts.map +1 -0
  31. package/lib/{features/tool-feedback → base/feedback}/css-feedback.js +5 -6
  32. package/lib/base/feedback/css-feedback.js.map +1 -0
  33. package/lib/{features/tool-feedback → base/feedback}/feedback-action-dispatcher.d.ts +11 -9
  34. package/lib/base/feedback/feedback-action-dispatcher.d.ts.map +1 -0
  35. package/lib/{features/tool-feedback → base/feedback}/feedback-action-dispatcher.js +26 -20
  36. package/lib/base/feedback/feedback-action-dispatcher.js.map +1 -0
  37. package/lib/{features/tool-feedback/model.d.ts → base/feedback/feedback-command.d.ts} +1 -1
  38. package/lib/base/feedback/feedback-command.d.ts.map +1 -0
  39. package/lib/{features/tool-feedback/model.js → base/feedback/feedback-command.js} +1 -1
  40. package/lib/base/feedback/feedback-command.js.map +1 -0
  41. package/lib/base/{model → feedback}/update-model-command.d.ts +3 -15
  42. package/lib/base/feedback/update-model-command.d.ts.map +1 -0
  43. package/lib/base/{model → feedback}/update-model-command.js +3 -27
  44. package/lib/base/feedback/update-model-command.js.map +1 -0
  45. package/lib/base/{actions/focus-change-action.d.ts → focus/focus-state-change-action.d.ts} +1 -1
  46. package/lib/base/focus/focus-state-change-action.d.ts.map +1 -0
  47. package/lib/base/{actions/focus-change-action.js → focus/focus-state-change-action.js} +2 -2
  48. package/lib/base/focus/focus-state-change-action.js.map +1 -0
  49. package/lib/base/{focus-tracker.d.ts → focus/focus-tracker.d.ts} +1 -1
  50. package/lib/base/focus/focus-tracker.d.ts.map +1 -0
  51. package/lib/base/{focus-tracker.js → focus/focus-tracker.js} +5 -6
  52. package/lib/base/focus/focus-tracker.js.map +1 -0
  53. package/lib/base/model/glsp-model-source.d.ts +58 -0
  54. package/lib/base/model/glsp-model-source.d.ts.map +1 -0
  55. package/lib/base/model/glsp-model-source.js +137 -0
  56. package/lib/base/model/glsp-model-source.js.map +1 -0
  57. package/lib/base/model/model-registry.js +2 -3
  58. package/lib/base/model/model-registry.js.map +1 -1
  59. package/lib/base/model-initialization-constraint.js +4 -6
  60. package/lib/base/model-initialization-constraint.js.map +1 -1
  61. package/lib/base/ranked.d.ts +34 -0
  62. package/lib/base/ranked.d.ts.map +1 -0
  63. package/lib/base/{source-uri-aware.js → ranked.js} +22 -8
  64. package/lib/base/ranked.js.map +1 -0
  65. package/lib/base/selection-clearing-mouse-listener.js +2 -3
  66. package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
  67. package/lib/{features/select → base}/selection-service.d.ts +34 -13
  68. package/lib/base/selection-service.d.ts.map +1 -0
  69. package/lib/{features/select → base}/selection-service.js +77 -31
  70. package/lib/base/selection-service.js.map +1 -0
  71. package/lib/base/selection-service.spec.d.ts +2 -0
  72. package/lib/base/selection-service.spec.d.ts.map +1 -0
  73. package/lib/base/selection-service.spec.js +281 -0
  74. package/lib/base/selection-service.spec.js.map +1 -0
  75. package/lib/base/tool-manager/glsp-tool-manager.d.ts +3 -3
  76. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
  77. package/lib/base/tool-manager/glsp-tool-manager.js +5 -6
  78. package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
  79. package/lib/base/view/key-tool.d.ts +5 -0
  80. package/lib/base/view/key-tool.d.ts.map +1 -0
  81. package/lib/base/view/key-tool.js +36 -0
  82. package/lib/base/view/key-tool.js.map +1 -0
  83. package/lib/base/view/mouse-tool.d.ts +19 -0
  84. package/lib/base/view/mouse-tool.d.ts.map +1 -0
  85. package/lib/{features/mouse-tool → base/view}/mouse-tool.js +14 -11
  86. package/lib/base/view/mouse-tool.js.map +1 -0
  87. package/lib/base/view/view-registry.js +2 -3
  88. package/lib/base/view/view-registry.js.map +1 -1
  89. package/lib/{base/container-modules.d.ts → default-modules.d.ts} +7 -6
  90. package/lib/default-modules.d.ts.map +1 -0
  91. package/lib/default-modules.js +152 -0
  92. package/lib/default-modules.js.map +1 -0
  93. package/lib/features/accessibility/{di.config.d.ts → accessibility-module.d.ts} +3 -3
  94. package/lib/features/accessibility/accessibility-module.d.ts.map +1 -0
  95. package/lib/features/accessibility/{di.config.js → accessibility-module.js} +14 -12
  96. package/lib/features/accessibility/accessibility-module.js.map +1 -0
  97. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.d.ts +31 -0
  98. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.d.ts.map +1 -0
  99. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.js +72 -0
  100. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut-tool.js.map +1 -0
  101. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts +53 -0
  102. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.d.ts.map +1 -0
  103. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js +149 -0
  104. package/lib/features/accessibility/key-shortcut/accessible-key-shortcut.js.map +1 -0
  105. package/lib/features/accessibility/key-shortcut/di.config.d.ts +24 -0
  106. package/lib/features/accessibility/key-shortcut/di.config.d.ts.map +1 -0
  107. package/lib/features/accessibility/key-shortcut/di.config.js +37 -0
  108. package/lib/features/accessibility/key-shortcut/di.config.js.map +1 -0
  109. package/lib/features/accessibility/move-zoom/move-handler.js +6 -8
  110. package/lib/features/accessibility/move-zoom/move-handler.js.map +1 -1
  111. package/lib/features/accessibility/move-zoom/{di.config.d.ts → move-zoom-module.d.ts} +3 -4
  112. package/lib/features/accessibility/move-zoom/move-zoom-module.d.ts.map +1 -0
  113. package/lib/features/accessibility/move-zoom/{di.config.js → move-zoom-module.js} +3 -4
  114. package/lib/features/accessibility/move-zoom/move-zoom-module.js.map +1 -0
  115. package/lib/features/accessibility/move-zoom/zoom-handler.js +6 -8
  116. package/lib/features/accessibility/move-zoom/zoom-handler.js.map +1 -1
  117. package/lib/features/accessibility/resize-key-tool/resize-key-handler.js +4 -5
  118. package/lib/features/accessibility/resize-key-tool/resize-key-handler.js.map +1 -1
  119. package/lib/features/accessibility/resize-key-tool/{di.config.d.ts → resize-key-module.d.ts} +3 -4
  120. package/lib/features/accessibility/resize-key-tool/resize-key-module.d.ts.map +1 -0
  121. package/lib/features/accessibility/resize-key-tool/{di.config.js → resize-key-module.js} +3 -4
  122. package/lib/features/accessibility/resize-key-tool/resize-key-module.js.map +1 -0
  123. package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts +7 -2
  124. package/lib/features/accessibility/resize-key-tool/resize-key-tool.d.ts.map +1 -1
  125. package/lib/features/accessibility/resize-key-tool/resize-key-tool.js +30 -9
  126. package/lib/features/accessibility/resize-key-tool/resize-key-tool.js.map +1 -1
  127. package/lib/features/accessibility/search/{di.config.d.ts → search-palette-module.d.ts} +3 -4
  128. package/lib/features/accessibility/search/search-palette-module.d.ts.map +1 -0
  129. package/lib/features/accessibility/search/{di.config.js → search-palette-module.js} +3 -4
  130. package/lib/features/accessibility/search/search-palette-module.js.map +1 -0
  131. package/lib/features/accessibility/search/search-palette.js +3 -4
  132. package/lib/features/accessibility/search/search-palette.js.map +1 -1
  133. package/lib/features/accessibility/search/search-tool.d.ts +8 -1
  134. package/lib/features/accessibility/search/search-tool.d.ts.map +1 -1
  135. package/lib/features/accessibility/search/search-tool.js +25 -4
  136. package/lib/features/accessibility/search/search-tool.js.map +1 -1
  137. package/lib/features/accessibility/view-key-tools/deselect-key-tool.js +2 -3
  138. package/lib/features/accessibility/view-key-tools/deselect-key-tool.js.map +1 -1
  139. package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts +7 -2
  140. package/lib/features/accessibility/view-key-tools/movement-key-tool.d.ts.map +1 -1
  141. package/lib/features/accessibility/view-key-tools/movement-key-tool.js +23 -6
  142. package/lib/features/accessibility/view-key-tools/movement-key-tool.js.map +1 -1
  143. package/lib/features/accessibility/view-key-tools/{di.config.d.ts → view-key-tools-module.d.ts} +3 -4
  144. package/lib/features/accessibility/view-key-tools/view-key-tools-module.d.ts.map +1 -0
  145. package/lib/features/accessibility/view-key-tools/{di.config.js → view-key-tools-module.js} +4 -5
  146. package/lib/features/accessibility/view-key-tools/view-key-tools-module.js.map +1 -0
  147. package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts +5 -1
  148. package/lib/features/accessibility/view-key-tools/zoom-key-tool.d.ts.map +1 -1
  149. package/lib/features/accessibility/view-key-tools/zoom-key-tool.js +28 -6
  150. package/lib/features/accessibility/view-key-tools/zoom-key-tool.js.map +1 -1
  151. package/lib/features/autocomplete-palette/base-autocomplete-palette.js +1 -1
  152. package/lib/features/autocomplete-palette/base-autocomplete-palette.js.map +1 -1
  153. package/lib/features/bounds/{di.config.d.ts → bounds-module.d.ts} +3 -4
  154. package/lib/features/bounds/bounds-module.d.ts.map +1 -0
  155. package/lib/features/bounds/{di.config.js → bounds-module.js} +3 -4
  156. package/lib/features/bounds/bounds-module.js.map +1 -0
  157. package/lib/features/bounds/freeform-layout.js +2 -3
  158. package/lib/features/bounds/freeform-layout.js.map +1 -1
  159. package/lib/features/bounds/freeform-layout.spec.d.ts +3 -0
  160. package/lib/features/bounds/freeform-layout.spec.d.ts.map +1 -0
  161. package/lib/features/bounds/freeform-layout.spec.js +201 -0
  162. package/lib/features/bounds/freeform-layout.spec.js.map +1 -0
  163. package/lib/features/bounds/glsp-hidden-bounds-updater.js +2 -3
  164. package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -1
  165. package/lib/features/bounds/hbox-layout.js +2 -3
  166. package/lib/features/bounds/hbox-layout.js.map +1 -1
  167. package/lib/features/bounds/hbox-layout.spec.d.ts +3 -0
  168. package/lib/features/bounds/hbox-layout.spec.d.ts.map +1 -0
  169. package/lib/features/bounds/hbox-layout.spec.js +160 -0
  170. package/lib/features/bounds/hbox-layout.spec.js.map +1 -0
  171. package/lib/features/bounds/layouter-test-util.spec.d.ts +32 -0
  172. package/lib/features/bounds/layouter-test-util.spec.d.ts.map +1 -0
  173. package/lib/features/bounds/layouter-test-util.spec.js +96 -0
  174. package/lib/features/bounds/layouter-test-util.spec.js.map +1 -0
  175. package/lib/features/bounds/layouter.js +2 -3
  176. package/lib/features/bounds/layouter.js.map +1 -1
  177. package/lib/features/bounds/vbox-layout.js +2 -3
  178. package/lib/features/bounds/vbox-layout.js.map +1 -1
  179. package/lib/features/bounds/vbox-layout.spec.d.ts +3 -0
  180. package/lib/features/bounds/vbox-layout.spec.d.ts.map +1 -0
  181. package/lib/features/bounds/vbox-layout.spec.js +160 -0
  182. package/lib/features/bounds/vbox-layout.spec.js.map +1 -0
  183. package/lib/features/change-bounds/model.js +2 -2
  184. package/lib/features/change-bounds/model.js.map +1 -1
  185. package/lib/features/change-bounds/movement-restrictor.d.ts +1 -1
  186. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -1
  187. package/lib/features/change-bounds/movement-restrictor.js +3 -4
  188. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  189. package/lib/features/change-bounds/snap.js +2 -3
  190. package/lib/features/change-bounds/snap.js.map +1 -1
  191. package/lib/features/change-bounds/snap.spec.d.ts +17 -0
  192. package/lib/features/change-bounds/snap.spec.d.ts.map +1 -0
  193. package/lib/features/change-bounds/snap.spec.js +82 -0
  194. package/lib/features/change-bounds/snap.spec.js.map +1 -0
  195. package/lib/features/command-palette/{di.config.d.ts → command-palette-module.d.ts} +3 -4
  196. package/lib/features/command-palette/command-palette-module.d.ts.map +1 -0
  197. package/lib/features/command-palette/{di.config.js → command-palette-module.js} +3 -4
  198. package/lib/features/command-palette/command-palette-module.js.map +1 -0
  199. package/lib/features/command-palette/command-palette-tool.js +2 -3
  200. package/lib/features/command-palette/command-palette-tool.js.map +1 -1
  201. package/lib/features/command-palette/server-command-palette-provider.js +3 -4
  202. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
  203. package/lib/features/{select/di.config.d.ts → context-menu/context-menu-module.d.ts} +3 -4
  204. package/lib/features/context-menu/context-menu-module.d.ts.map +1 -0
  205. package/lib/features/context-menu/{di.config.js → context-menu-module.js} +4 -5
  206. package/lib/features/context-menu/context-menu-module.js.map +1 -0
  207. package/lib/features/context-menu/delete-element-context-menu.js +2 -3
  208. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
  209. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +1 -3
  210. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -1
  211. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +8 -14
  212. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
  213. package/lib/features/context-menu/server-context-menu-provider.js +3 -4
  214. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  215. package/lib/features/copy-paste/copy-paste-context-menu.js +6 -8
  216. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  217. package/lib/features/copy-paste/copy-paste-handler.js +4 -6
  218. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  219. package/lib/features/copy-paste/{di.config.d.ts → copy-paste-modules.d.ts} +7 -7
  220. package/lib/features/copy-paste/copy-paste-modules.d.ts.map +1 -0
  221. package/lib/features/copy-paste/{di.config.js → copy-paste-modules.js} +8 -9
  222. package/lib/features/copy-paste/copy-paste-modules.js.map +1 -0
  223. package/lib/features/decoration/{di.config.d.ts → decoration-module.d.ts} +3 -4
  224. package/lib/features/decoration/decoration-module.d.ts.map +1 -0
  225. package/lib/features/decoration/{di.config.js → decoration-module.js} +3 -4
  226. package/lib/features/decoration/decoration-module.js.map +1 -0
  227. package/lib/features/decoration/decoration-placer.js +2 -3
  228. package/lib/features/decoration/decoration-placer.js.map +1 -1
  229. package/lib/features/export/export-modules.d.ts +24 -0
  230. package/lib/features/export/export-modules.d.ts.map +1 -0
  231. package/lib/features/export/{di.config.js → export-modules.js} +15 -5
  232. package/lib/features/export/export-modules.js.map +1 -0
  233. package/lib/features/export/export-svg-action-handler.d.ts +11 -0
  234. package/lib/features/export/export-svg-action-handler.d.ts.map +1 -0
  235. package/lib/features/export/export-svg-action-handler.js +42 -0
  236. package/lib/features/export/export-svg-action-handler.js.map +1 -0
  237. package/lib/features/export/glsp-svg-exporter.js +2 -3
  238. package/lib/features/export/glsp-svg-exporter.js.map +1 -1
  239. package/lib/features/{layout/di.config.d.ts → hints/type-hints-module.d.ts} +3 -4
  240. package/lib/features/hints/type-hints-module.d.ts.map +1 -0
  241. package/lib/features/hints/{di.config.js → type-hints-module.js} +3 -4
  242. package/lib/features/hints/type-hints-module.js.map +1 -0
  243. package/lib/features/hints/type-hints.d.ts +2 -2
  244. package/lib/features/hints/type-hints.d.ts.map +1 -1
  245. package/lib/features/hints/type-hints.js +9 -11
  246. package/lib/features/hints/type-hints.js.map +1 -1
  247. package/lib/features/hover/{di.config.d.ts → hover-module.d.ts} +3 -4
  248. package/lib/features/hover/hover-module.d.ts.map +1 -0
  249. package/lib/features/hover/{di.config.js → hover-module.js} +6 -7
  250. package/lib/features/hover/hover-module.js.map +1 -0
  251. package/lib/features/hover/hover.d.ts.map +1 -1
  252. package/lib/features/hover/hover.js +5 -6
  253. package/lib/features/hover/hover.js.map +1 -1
  254. package/lib/features/{edit-label → label-edit}/edit-label-tool.d.ts +0 -3
  255. package/lib/features/label-edit/edit-label-tool.d.ts.map +1 -0
  256. package/lib/features/{edit-label → label-edit}/edit-label-tool.js +3 -11
  257. package/lib/features/label-edit/edit-label-tool.js.map +1 -0
  258. package/lib/features/{edit-label → label-edit}/edit-label-validator.d.ts.map +1 -1
  259. package/lib/features/{edit-label → label-edit}/edit-label-validator.js +5 -7
  260. package/lib/features/label-edit/edit-label-validator.js.map +1 -0
  261. package/lib/features/{hints/di.config.d.ts → label-edit/label-edit-module.d.ts} +3 -4
  262. package/lib/features/label-edit/label-edit-module.d.ts.map +1 -0
  263. package/lib/features/{edit-label/di.config.js → label-edit/label-edit-module.js} +3 -4
  264. package/lib/features/label-edit/label-edit-module.js.map +1 -0
  265. package/lib/features/layout/layout-elements-action.d.ts +1 -1
  266. package/lib/features/layout/layout-elements-action.d.ts.map +1 -1
  267. package/lib/features/layout/layout-elements-action.js +14 -17
  268. package/lib/features/layout/layout-elements-action.js.map +1 -1
  269. package/lib/features/layout/layout-elements-action.spec.d.ts +3 -0
  270. package/lib/features/layout/layout-elements-action.spec.d.ts.map +1 -0
  271. package/lib/features/layout/layout-elements-action.spec.js +322 -0
  272. package/lib/features/layout/layout-elements-action.spec.js.map +1 -0
  273. package/lib/features/{tool-feedback/di.config.d.ts → layout/layout-module.d.ts} +3 -4
  274. package/lib/features/layout/layout-module.d.ts.map +1 -0
  275. package/lib/features/layout/{di.config.js → layout-module.js} +3 -4
  276. package/lib/features/layout/layout-module.js.map +1 -0
  277. package/lib/features/navigation/navigation-action-handler.js +5 -6
  278. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  279. package/lib/features/navigation/{di.config.d.ts → navigation-module.d.ts} +3 -4
  280. package/lib/features/navigation/navigation-module.d.ts.map +1 -0
  281. package/lib/features/navigation/{di.config.js → navigation-module.js} +3 -4
  282. package/lib/features/navigation/navigation-module.js.map +1 -0
  283. package/lib/features/navigation/navigation-target-resolver.js +2 -3
  284. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  285. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +3 -0
  286. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -0
  287. package/lib/features/navigation/navigation-target-resolver.spec.js +53 -0
  288. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -0
  289. package/lib/features/routing/glsp-manhattan-edge-router.d.ts.map +1 -0
  290. package/lib/features/routing/glsp-manhattan-edge-router.js.map +1 -0
  291. package/lib/features/routing/routing-module.d.ts +18 -0
  292. package/lib/features/routing/routing-module.d.ts.map +1 -0
  293. package/lib/features/routing/routing-module.js +39 -0
  294. package/lib/features/routing/routing-module.js.map +1 -0
  295. package/lib/features/save/{di.config.d.ts → save-module.d.ts} +6 -6
  296. package/lib/features/save/save-module.d.ts.map +1 -0
  297. package/lib/features/save/{di.config.js → save-module.js} +6 -6
  298. package/lib/features/save/save-module.js.map +1 -0
  299. package/lib/features/select/select-feedback-command.d.ts +12 -0
  300. package/lib/features/select/select-feedback-command.d.ts.map +1 -0
  301. package/lib/features/select/{select-feedback-action.js → select-feedback-command.js} +6 -18
  302. package/lib/features/select/select-feedback-command.js.map +1 -0
  303. package/lib/features/select/select-module.d.ts +24 -0
  304. package/lib/features/select/select-module.d.ts.map +1 -0
  305. package/lib/features/select/{di.config.js → select-module.js} +14 -9
  306. package/lib/features/select/select-module.js.map +1 -0
  307. package/lib/features/select/select-mouse-listener.d.ts +5 -3
  308. package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
  309. package/lib/features/select/select-mouse-listener.js +18 -59
  310. package/lib/features/select/select-mouse-listener.js.map +1 -1
  311. package/lib/features/source-model-watcher/source-model-changed-action-handler.js +5 -7
  312. package/lib/features/source-model-watcher/source-model-changed-action-handler.js.map +1 -1
  313. package/lib/features/{context-menu/di.config.d.ts → source-model-watcher/source-model-wacher-module.d.ts} +3 -4
  314. package/lib/features/source-model-watcher/source-model-wacher-module.d.ts.map +1 -0
  315. package/lib/features/source-model-watcher/{di.config.js → source-model-wacher-module.js} +3 -4
  316. package/lib/features/source-model-watcher/source-model-wacher-module.js.map +1 -0
  317. package/lib/features/status/status-module.d.ts +19 -0
  318. package/lib/features/status/status-module.d.ts.map +1 -0
  319. package/lib/features/status/status-module.js +27 -0
  320. package/lib/features/status/status-module.js.map +1 -0
  321. package/lib/features/status/status-overlay.d.ts +19 -0
  322. package/lib/features/status/status-overlay.d.ts.map +1 -0
  323. package/lib/features/status/status-overlay.js +108 -0
  324. package/lib/features/status/status-overlay.js.map +1 -0
  325. package/lib/features/svg-metadata/metadata-placer.js +2 -3
  326. package/lib/features/svg-metadata/metadata-placer.js.map +1 -1
  327. package/lib/features/svg-metadata/{di.config.d.ts → svg-metadata-module.d.ts} +3 -4
  328. package/lib/features/svg-metadata/svg-metadata-module.d.ts.map +1 -0
  329. package/lib/features/svg-metadata/{di.config.js → svg-metadata-module.js} +3 -4
  330. package/lib/features/svg-metadata/svg-metadata-module.js.map +1 -0
  331. package/lib/features/tool-palette/{di.config.d.ts → tool-palette-module.d.ts} +3 -4
  332. package/lib/features/tool-palette/tool-palette-module.d.ts.map +1 -0
  333. package/lib/features/tool-palette/{di.config.js → tool-palette-module.js} +3 -4
  334. package/lib/features/tool-palette/tool-palette-module.js.map +1 -0
  335. package/lib/features/tool-palette/tool-palette.d.ts +6 -4
  336. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  337. package/lib/features/tool-palette/tool-palette.js +22 -15
  338. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  339. package/lib/features/tools/base-glsp-creation-tool.d.ts +10 -0
  340. package/lib/features/tools/base-glsp-creation-tool.d.ts.map +1 -0
  341. package/lib/features/tools/base-glsp-creation-tool.js +45 -0
  342. package/lib/features/tools/base-glsp-creation-tool.js.map +1 -0
  343. package/lib/features/tools/base-glsp-tool.d.ts +26 -8
  344. package/lib/features/tools/base-glsp-tool.d.ts.map +1 -1
  345. package/lib/features/tools/base-glsp-tool.js +34 -11
  346. package/lib/features/tools/base-glsp-tool.js.map +1 -1
  347. package/lib/features/{export/di.config.d.ts → tools/change-bounds/change-boounds-tool-module.d.ts} +3 -4
  348. package/lib/features/tools/change-bounds/change-boounds-tool-module.d.ts.map +1 -0
  349. package/lib/features/tools/change-bounds/change-boounds-tool-module.js +31 -0
  350. package/lib/features/tools/change-bounds/change-boounds-tool-module.js.map +1 -0
  351. package/lib/features/{tool-feedback → tools/change-bounds}/change-bounds-tool-feedback.d.ts +12 -5
  352. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.d.ts.map +1 -0
  353. package/lib/features/{tool-feedback → tools/change-bounds}/change-bounds-tool-feedback.js +45 -27
  354. package/lib/features/tools/change-bounds/change-bounds-tool-feedback.js.map +1 -0
  355. package/lib/features/tools/{change-bounds-tool.d.ts → change-bounds/change-bounds-tool.d.ts} +13 -14
  356. package/lib/features/tools/change-bounds/change-bounds-tool.d.ts.map +1 -0
  357. package/lib/features/tools/{change-bounds-tool.js → change-bounds/change-bounds-tool.js} +50 -35
  358. package/lib/features/tools/change-bounds/change-bounds-tool.js.map +1 -0
  359. package/lib/features/tools/change-bounds/view.d.ts +9 -0
  360. package/lib/features/tools/change-bounds/view.d.ts.map +1 -0
  361. package/lib/features/{tool-feedback → tools/change-bounds}/view.js +5 -21
  362. package/lib/features/tools/change-bounds/view.js.map +1 -0
  363. package/lib/features/tools/{delete-tool.d.ts → deletion/delete-tool.d.ts} +4 -9
  364. package/lib/features/tools/deletion/delete-tool.d.ts.map +1 -0
  365. package/lib/features/tools/{delete-tool.js → deletion/delete-tool.js} +13 -29
  366. package/lib/features/tools/deletion/delete-tool.js.map +1 -0
  367. package/lib/features/tools/deletion/deletion-tool-module.d.ts +18 -0
  368. package/lib/features/tools/deletion/deletion-tool-module.d.ts.map +1 -0
  369. package/lib/features/{mouse-tool/di.config.js → tools/deletion/deletion-tool-module.js} +8 -9
  370. package/lib/features/tools/deletion/deletion-tool-module.js.map +1 -0
  371. package/lib/features/{tool-feedback/creation-tool-feedback.d.ts → tools/edge-creation/dangling-edge-feedback.d.ts} +5 -10
  372. package/lib/features/tools/edge-creation/dangling-edge-feedback.d.ts.map +1 -0
  373. package/lib/features/{tool-feedback/creation-tool-feedback.js → tools/edge-creation/dangling-edge-feedback.js} +25 -87
  374. package/lib/features/tools/edge-creation/dangling-edge-feedback.js.map +1 -0
  375. package/lib/features/{edit-label/di.config.d.ts → tools/edge-creation/edege-creation-module.d.ts} +3 -4
  376. package/lib/features/tools/edge-creation/edege-creation-module.d.ts.map +1 -0
  377. package/lib/features/tools/edge-creation/edege-creation-module.js +28 -0
  378. package/lib/features/tools/edge-creation/edege-creation-module.js.map +1 -0
  379. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts +26 -0
  380. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.d.ts.map +1 -0
  381. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js +74 -0
  382. package/lib/features/tools/edge-creation/edge-creation-tool-feedback.js.map +1 -0
  383. package/lib/features/tools/{edge-creation-tool.d.ts → edge-creation/edge-creation-tool.d.ts} +6 -11
  384. package/lib/features/tools/edge-creation/edge-creation-tool.d.ts.map +1 -0
  385. package/lib/features/tools/{edge-creation-tool.js → edge-creation/edge-creation-tool.js} +29 -40
  386. package/lib/features/tools/edge-creation/edge-creation-tool.js.map +1 -0
  387. package/lib/features/tools/edge-creation/view.d.ts +10 -0
  388. package/lib/features/tools/edge-creation/view.d.ts.map +1 -0
  389. package/lib/features/tools/edge-creation/view.js +43 -0
  390. package/lib/features/tools/edge-creation/view.js.map +1 -0
  391. package/lib/features/tools/edge-edit/edge-edit-module.d.ts +18 -0
  392. package/lib/features/tools/edge-edit/edge-edit-module.d.ts.map +1 -0
  393. package/lib/features/tools/edge-edit/edge-edit-module.js +34 -0
  394. package/lib/features/tools/edge-edit/edge-edit-module.js.map +1 -0
  395. package/lib/features/{tool-feedback → tools/edge-edit}/edge-edit-tool-feedback.d.ts +14 -8
  396. package/lib/features/tools/edge-edit/edge-edit-tool-feedback.d.ts.map +1 -0
  397. package/lib/features/{tool-feedback → tools/edge-edit}/edge-edit-tool-feedback.js +42 -37
  398. package/lib/features/tools/edge-edit/edge-edit-tool-feedback.js.map +1 -0
  399. package/lib/features/tools/{edge-edit-tool.d.ts → edge-edit/edge-edit-tool.d.ts} +7 -9
  400. package/lib/features/tools/edge-edit/edge-edit-tool.d.ts.map +1 -0
  401. package/lib/features/tools/{edge-edit-tool.js → edge-edit/edge-edit-tool.js} +28 -33
  402. package/lib/features/tools/edge-edit/edge-edit-tool.js.map +1 -0
  403. package/lib/features/tools/{marquee-behavior.d.ts → marquee-selection/marquee-behavior.d.ts} +10 -10
  404. package/lib/features/tools/marquee-selection/marquee-behavior.d.ts.map +1 -0
  405. package/lib/features/tools/{marquee-behavior.js → marquee-selection/marquee-behavior.js} +2 -2
  406. package/lib/features/tools/marquee-selection/marquee-behavior.js.map +1 -0
  407. package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts +17 -0
  408. package/lib/features/tools/marquee-selection/marquee-behavior.spec.d.ts.map +1 -0
  409. package/lib/features/tools/marquee-selection/marquee-behavior.spec.js +165 -0
  410. package/lib/features/tools/marquee-selection/marquee-behavior.spec.js.map +1 -0
  411. package/lib/features/tools/{marquee-mouse-tool.d.ts → marquee-selection/marquee-mouse-tool.d.ts} +4 -6
  412. package/lib/features/tools/marquee-selection/marquee-mouse-tool.d.ts.map +1 -0
  413. package/lib/features/tools/{marquee-mouse-tool.js → marquee-selection/marquee-mouse-tool.js} +13 -27
  414. package/lib/features/tools/marquee-selection/marquee-mouse-tool.js.map +1 -0
  415. package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts +18 -0
  416. package/lib/features/tools/marquee-selection/marquee-selection-module.d.ts.map +1 -0
  417. package/lib/features/tools/marquee-selection/marquee-selection-module.js +33 -0
  418. package/lib/features/tools/marquee-selection/marquee-selection-module.js.map +1 -0
  419. package/lib/features/{tool-feedback → tools/marquee-selection}/marquee-tool-feedback.d.ts +2 -2
  420. package/lib/features/tools/marquee-selection/marquee-tool-feedback.d.ts.map +1 -0
  421. package/lib/features/{tool-feedback → tools/marquee-selection}/marquee-tool-feedback.js +8 -10
  422. package/lib/features/tools/marquee-selection/marquee-tool-feedback.js.map +1 -0
  423. package/lib/features/tools/marquee-selection/marquee-tool.d.ts +12 -0
  424. package/lib/features/tools/marquee-selection/marquee-tool.d.ts.map +1 -0
  425. package/lib/features/tools/{marquee-tool.js → marquee-selection/marquee-tool.js} +8 -20
  426. package/lib/features/tools/marquee-selection/marquee-tool.js.map +1 -0
  427. package/lib/features/tools/{model.d.ts → marquee-selection/model.d.ts} +1 -1
  428. package/lib/features/tools/marquee-selection/model.d.ts.map +1 -0
  429. package/lib/features/tools/{model.js → marquee-selection/model.js} +2 -2
  430. package/lib/features/tools/marquee-selection/model.js.map +1 -0
  431. package/lib/features/tools/{view.d.ts → marquee-selection/view.d.ts} +1 -1
  432. package/lib/features/tools/marquee-selection/view.d.ts.map +1 -0
  433. package/lib/features/tools/{view.js → marquee-selection/view.js} +3 -4
  434. package/lib/features/tools/marquee-selection/view.js.map +1 -0
  435. package/lib/features/tools/node-creation/node-creation-module.d.ts +18 -0
  436. package/lib/features/tools/node-creation/node-creation-module.d.ts.map +1 -0
  437. package/lib/features/tools/node-creation/node-creation-module.js +26 -0
  438. package/lib/features/tools/node-creation/node-creation-module.js.map +1 -0
  439. package/lib/features/tools/{node-creation-tool.d.ts → node-creation/node-creation-tool.d.ts} +7 -10
  440. package/lib/features/tools/node-creation/node-creation-tool.d.ts.map +1 -0
  441. package/lib/features/tools/{node-creation-tool.js → node-creation/node-creation-tool.js} +17 -30
  442. package/lib/features/tools/node-creation/node-creation-tool.js.map +1 -0
  443. package/lib/features/tools/tool-focus-loss-module.d.ts +13 -0
  444. package/lib/features/tools/tool-focus-loss-module.d.ts.map +1 -0
  445. package/lib/features/tools/{enable-default-tools-on-focus-loss.js → tool-focus-loss-module.js} +12 -8
  446. package/lib/features/tools/tool-focus-loss-module.js.map +1 -0
  447. package/lib/features/undo-redo/undo-redo-key-listener.d.ts +23 -0
  448. package/lib/features/undo-redo/undo-redo-key-listener.d.ts.map +1 -0
  449. package/lib/features/undo-redo/undo-redo-key-listener.js +35 -0
  450. package/lib/features/undo-redo/undo-redo-key-listener.js.map +1 -0
  451. package/lib/features/undo-redo/undo-redo-module.d.ts +23 -0
  452. package/lib/features/undo-redo/undo-redo-module.d.ts.map +1 -0
  453. package/lib/features/undo-redo/undo-redo-module.js +30 -0
  454. package/lib/features/undo-redo/undo-redo-module.js.map +1 -0
  455. package/lib/features/validation/marker-navigator.d.ts +4 -3
  456. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  457. package/lib/features/validation/marker-navigator.js +16 -20
  458. package/lib/features/validation/marker-navigator.js.map +1 -1
  459. package/lib/features/validation/marker-navigator.spec.d.ts +3 -0
  460. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -0
  461. package/lib/features/validation/marker-navigator.spec.js +184 -0
  462. package/lib/features/validation/marker-navigator.spec.js.map +1 -0
  463. package/lib/features/validation/validate.d.ts +2 -2
  464. package/lib/features/validation/validate.d.ts.map +1 -1
  465. package/lib/features/validation/validate.js +12 -17
  466. package/lib/features/validation/validate.js.map +1 -1
  467. package/lib/features/validation/{di.config.d.ts → validation-modules.d.ts} +8 -8
  468. package/lib/features/validation/validation-modules.d.ts.map +1 -0
  469. package/lib/features/validation/{di.config.js → validation-modules.js} +9 -10
  470. package/lib/features/validation/validation-modules.js.map +1 -0
  471. package/lib/features/viewport/glsp-scroll-mouse-listener.js +3 -4
  472. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
  473. package/lib/features/viewport/{di.config.d.ts → viewport-modules.d.ts} +9 -4
  474. package/lib/features/viewport/viewport-modules.d.ts.map +1 -0
  475. package/lib/features/viewport/{di.config.js → viewport-modules.js} +12 -5
  476. package/lib/features/viewport/viewport-modules.js.map +1 -0
  477. package/lib/glsp-sprotty/index.d.ts +3 -4
  478. package/lib/glsp-sprotty/index.d.ts.map +1 -1
  479. package/lib/glsp-sprotty/index.js +66 -60
  480. package/lib/glsp-sprotty/index.js.map +1 -1
  481. package/lib/glsp-sprotty/types.d.ts +4 -8
  482. package/lib/glsp-sprotty/types.d.ts.map +1 -1
  483. package/lib/glsp-sprotty/types.js +1 -1
  484. package/lib/glsp-sprotty/types.js.map +1 -1
  485. package/lib/index.d.ts +69 -58
  486. package/lib/index.d.ts.map +1 -1
  487. package/lib/index.js +87 -106
  488. package/lib/index.js.map +1 -1
  489. package/lib/lib/model.d.ts +1 -2
  490. package/lib/lib/model.d.ts.map +1 -1
  491. package/lib/lib/model.js +1 -2
  492. package/lib/lib/model.js.map +1 -1
  493. package/lib/standalone-modules.d.ts +38 -0
  494. package/lib/standalone-modules.d.ts.map +1 -0
  495. package/lib/standalone-modules.js +84 -0
  496. package/lib/standalone-modules.js.map +1 -0
  497. package/lib/utils/argument-utils.js +3 -3
  498. package/lib/utils/argument-utils.js.map +1 -1
  499. package/lib/utils/marker.js +1 -1
  500. package/lib/utils/marker.js.map +1 -1
  501. package/lib/utils/smodel-util.d.ts +5 -2
  502. package/lib/utils/smodel-util.d.ts.map +1 -1
  503. package/lib/utils/smodel-util.js +21 -4
  504. package/lib/utils/smodel-util.js.map +1 -1
  505. package/lib/utils/smodel-util.spec.d.ts +2 -0
  506. package/lib/utils/smodel-util.spec.d.ts.map +1 -0
  507. package/lib/utils/smodel-util.spec.js +185 -0
  508. package/lib/utils/smodel-util.spec.js.map +1 -0
  509. package/lib/utils/viewpoint-util.d.ts +20 -1
  510. package/lib/utils/viewpoint-util.d.ts.map +1 -1
  511. package/lib/utils/viewpoint-util.js +30 -1
  512. package/lib/utils/viewpoint-util.js.map +1 -1
  513. package/lib/views/base-view-module.d.ts +2 -4
  514. package/lib/views/base-view-module.d.ts.map +1 -1
  515. package/lib/views/base-view-module.js +2 -4
  516. package/lib/views/base-view-module.js.map +1 -1
  517. package/lib/views/compartments.js +2 -3
  518. package/lib/views/compartments.js.map +1 -1
  519. package/lib/views/glsp-edge-view.js +2 -3
  520. package/lib/views/glsp-edge-view.js.map +1 -1
  521. package/lib/views/glsp-projection-view.js +2 -3
  522. package/lib/views/glsp-projection-view.js.map +1 -1
  523. package/lib/views/issue-marker-view.js +2 -3
  524. package/lib/views/issue-marker-view.js.map +1 -1
  525. package/lib/views/rounded-corner-view.js +2 -3
  526. package/lib/views/rounded-corner-view.js.map +1 -1
  527. package/package.json +4 -3
  528. package/src/base/action-dispatcher.ts +7 -1
  529. package/src/base/command-stack.ts +55 -3
  530. package/src/base/{di.config.ts → default.module.ts} +51 -15
  531. package/src/base/drag-aware-mouse-listener.ts +2 -2
  532. package/src/base/editor-context-service.ts +55 -20
  533. package/src/{features/tool-feedback → base/feedback}/css-feedback.ts +1 -1
  534. package/src/{features/tool-feedback → base/feedback}/feedback-action-dispatcher.ts +31 -23
  535. package/src/base/{model → feedback}/update-model-command.ts +3 -29
  536. package/src/base/{focus-tracker.ts → focus/focus-tracker.ts} +1 -1
  537. package/src/base/model/glsp-model-source.ts +149 -0
  538. package/src/base/ranked.ts +42 -0
  539. package/src/{features/select → base}/selection-service.spec.ts +44 -123
  540. package/src/{features/select → base}/selection-service.ts +86 -33
  541. package/src/base/tool-manager/glsp-tool-manager.ts +4 -4
  542. package/src/{features/rank/model.ts → base/view/key-tool.ts} +9 -13
  543. package/src/{features/mouse-tool → base/view}/mouse-tool.ts +14 -15
  544. package/src/{base/container-modules.ts → default-modules.ts} +65 -48
  545. package/src/features/accessibility/README.md +7 -7
  546. package/src/features/accessibility/{di.config.ts → accessibility-module.ts} +8 -6
  547. package/src/features/accessibility/key-shortcut/accessible-key-shortcut-tool.ts +55 -0
  548. package/src/features/accessibility/key-shortcut/accessible-key-shortcut.ts +182 -0
  549. package/src/features/accessibility/key-shortcut/di.config.ts +35 -0
  550. package/src/features/accessibility/move-zoom/{di.config.ts → move-zoom-module.ts} +2 -3
  551. package/src/features/accessibility/resize-key-tool/{di.config.ts → resize-key-module.ts} +2 -3
  552. package/src/features/accessibility/resize-key-tool/resize-key-tool.ts +24 -3
  553. package/src/features/accessibility/search/{di.config.ts → search-palette-module.ts} +2 -3
  554. package/src/features/accessibility/search/search-palette.ts +1 -1
  555. package/src/features/accessibility/search/search-tool.ts +24 -5
  556. package/src/features/accessibility/view-key-tools/movement-key-tool.ts +20 -4
  557. package/src/features/accessibility/view-key-tools/{di.config.ts → view-key-tools-module.ts} +3 -4
  558. package/src/features/accessibility/view-key-tools/zoom-key-tool.ts +23 -2
  559. package/src/features/bounds/{di.config.ts → bounds-module.ts} +2 -4
  560. package/src/features/bounds/layouter-test-util.spec.ts +1 -1
  561. package/src/features/change-bounds/movement-restrictor.ts +1 -1
  562. package/src/features/command-palette/{di.config.ts → command-palette-module.ts} +2 -5
  563. package/src/features/context-menu/{di.config.ts → context-menu-module.ts} +4 -7
  564. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +2 -6
  565. package/src/features/copy-paste/copy-paste-context-menu.ts +1 -1
  566. package/src/features/copy-paste/{di.config.ts → copy-paste-modules.ts} +13 -11
  567. package/src/features/decoration/{di.config.ts → decoration-module.ts} +2 -5
  568. package/src/features/export/{di.config.ts → export-modules.ts} +27 -5
  569. package/src/features/export/export-svg-action-handler.ts +32 -0
  570. package/src/features/hints/{di.config.ts → type-hints-module.ts} +2 -5
  571. package/src/features/hints/type-hints.ts +2 -2
  572. package/src/features/hover/{di.config.ts → hover-module.ts} +3 -5
  573. package/src/features/hover/hover.ts +3 -2
  574. package/src/features/{edit-label → label-edit}/edit-label-tool.ts +4 -12
  575. package/src/features/{edit-label/di.config.ts → label-edit/label-edit-module.ts} +2 -5
  576. package/src/features/layout/layout-elements-action.spec.ts +3 -5
  577. package/src/features/layout/layout-elements-action.ts +2 -2
  578. package/src/features/layout/{di.config.ts → layout-module.ts} +2 -5
  579. package/src/features/navigation/navigation-action-handler.ts +1 -1
  580. package/src/features/navigation/{di.config.ts → navigation-module.ts} +2 -5
  581. package/src/features/routing/routing-module.ts +59 -0
  582. package/src/features/save/{di.config.ts → save-module.ts} +5 -7
  583. package/src/features/select/{select-feedback-action.ts → select-feedback-command.ts} +2 -25
  584. package/src/features/select/{di.config.ts → select-module.ts} +15 -8
  585. package/src/features/select/select-mouse-listener.ts +28 -80
  586. package/src/features/source-model-watcher/source-model-changed-action-handler.ts +1 -1
  587. package/src/features/source-model-watcher/{di.config.ts → source-model-wacher-module.ts} +2 -5
  588. package/src/features/status/status-module.ts +25 -0
  589. package/src/features/status/status-overlay.ts +108 -0
  590. package/src/features/svg-metadata/{di.config.ts → svg-metadata-module.ts} +2 -5
  591. package/src/features/tool-palette/{di.config.ts → tool-palette-module.ts} +2 -5
  592. package/src/features/tool-palette/tool-palette.ts +19 -14
  593. package/src/features/tools/base-glsp-creation-tool.ts +40 -0
  594. package/src/features/tools/base-glsp-tool.ts +32 -10
  595. package/src/features/tools/change-bounds/change-boounds-tool-module.ts +28 -0
  596. package/src/features/{tool-feedback → tools/change-bounds}/change-bounds-tool-feedback.ts +52 -21
  597. package/src/features/tools/{change-bounds-tool.ts → change-bounds/change-bounds-tool.ts} +64 -35
  598. package/src/features/{tool-feedback → tools/change-bounds}/view.tsx +2 -14
  599. package/src/features/tools/{delete-tool.ts → deletion/delete-tool.ts} +8 -18
  600. package/src/features/{save/model.ts → tools/deletion/deletion-tool-module.ts} +7 -10
  601. package/src/features/{tool-feedback/creation-tool-feedback.ts → tools/edge-creation/dangling-edge-feedback.ts} +18 -88
  602. package/src/features/tools/edge-creation/edege-creation-module.ts +25 -0
  603. package/src/features/tools/edge-creation/edge-creation-tool-feedback.ts +89 -0
  604. package/src/features/tools/{edge-creation-tool.ts → edge-creation/edge-creation-tool.ts} +26 -43
  605. package/src/features/tools/edge-creation/view.tsx +33 -0
  606. package/src/features/tools/edge-edit/edge-edit-module.ts +38 -0
  607. package/src/features/{tool-feedback → tools/edge-edit}/edge-edit-tool-feedback.ts +27 -15
  608. package/src/features/tools/{edge-edit-tool.ts → edge-edit/edge-edit-tool.ts} +29 -27
  609. package/src/features/tools/{marquee-behavior.ts → marquee-selection/marquee-behavior.ts} +9 -9
  610. package/src/features/tools/{marquee-mouse-tool.ts → marquee-selection/marquee-mouse-tool.ts} +12 -22
  611. package/src/features/tools/marquee-selection/marquee-selection-module.ts +32 -0
  612. package/src/features/{tool-feedback → tools/marquee-selection}/marquee-tool-feedback.ts +1 -1
  613. package/src/features/tools/{marquee-tool.ts → marquee-selection/marquee-tool.ts} +5 -11
  614. package/src/features/{mouse-tool/di.config.ts → tools/node-creation/node-creation-module.ts} +6 -9
  615. package/src/features/tools/{node-creation-tool.ts → node-creation/node-creation-tool.ts} +14 -31
  616. package/src/features/tools/{enable-default-tools-on-focus-loss.ts → tool-focus-loss-module.ts} +9 -3
  617. package/src/features/undo-redo/undo-redo-key-listener.ts +32 -0
  618. package/src/features/undo-redo/undo-redo-module.ts +28 -0
  619. package/src/features/validation/marker-navigator.spec.ts +4 -4
  620. package/src/features/validation/marker-navigator.ts +5 -5
  621. package/src/features/validation/validate.ts +2 -2
  622. package/src/features/validation/{di.config.ts → validation-modules.ts} +13 -11
  623. package/src/features/viewport/glsp-scroll-mouse-listener.ts +1 -1
  624. package/src/features/viewport/{di.config.ts → viewport-modules.ts} +14 -4
  625. package/src/glsp-sprotty/index.ts +30 -27
  626. package/src/glsp-sprotty/types.ts +2 -4
  627. package/src/index.ts +72 -90
  628. package/src/lib/model.ts +2 -3
  629. package/src/standalone-modules.ts +87 -0
  630. package/src/utils/smodel-util.spec.ts +222 -0
  631. package/src/utils/smodel-util.ts +27 -7
  632. package/src/utils/viewpoint-util.ts +32 -0
  633. package/src/views/base-view-module.ts +2 -4
  634. package/lib/base/actions/focus-change-action.d.ts.map +0 -1
  635. package/lib/base/actions/focus-change-action.js.map +0 -1
  636. package/lib/base/container-modules.d.ts.map +0 -1
  637. package/lib/base/container-modules.js +0 -135
  638. package/lib/base/container-modules.js.map +0 -1
  639. package/lib/base/di.config.d.ts.map +0 -1
  640. package/lib/base/di.config.js.map +0 -1
  641. package/lib/base/focus-tracker.d.ts.map +0 -1
  642. package/lib/base/focus-tracker.js.map +0 -1
  643. package/lib/base/model/update-model-command.d.ts.map +0 -1
  644. package/lib/base/model/update-model-command.js.map +0 -1
  645. package/lib/base/source-uri-aware.d.ts +0 -5
  646. package/lib/base/source-uri-aware.d.ts.map +0 -1
  647. package/lib/base/source-uri-aware.js.map +0 -1
  648. package/lib/features/accessibility/di.config.d.ts.map +0 -1
  649. package/lib/features/accessibility/di.config.js.map +0 -1
  650. package/lib/features/accessibility/move-zoom/di.config.d.ts.map +0 -1
  651. package/lib/features/accessibility/move-zoom/di.config.js.map +0 -1
  652. package/lib/features/accessibility/resize-key-tool/di.config.d.ts.map +0 -1
  653. package/lib/features/accessibility/resize-key-tool/di.config.js.map +0 -1
  654. package/lib/features/accessibility/search/di.config.d.ts.map +0 -1
  655. package/lib/features/accessibility/search/di.config.js.map +0 -1
  656. package/lib/features/accessibility/view-key-tools/di.config.d.ts.map +0 -1
  657. package/lib/features/accessibility/view-key-tools/di.config.js.map +0 -1
  658. package/lib/features/bounds/di.config.d.ts.map +0 -1
  659. package/lib/features/bounds/di.config.js.map +0 -1
  660. package/lib/features/command-palette/di.config.d.ts.map +0 -1
  661. package/lib/features/command-palette/di.config.js.map +0 -1
  662. package/lib/features/context-menu/di.config.d.ts.map +0 -1
  663. package/lib/features/context-menu/di.config.js.map +0 -1
  664. package/lib/features/copy-paste/di.config.d.ts.map +0 -1
  665. package/lib/features/copy-paste/di.config.js.map +0 -1
  666. package/lib/features/decoration/di.config.d.ts.map +0 -1
  667. package/lib/features/decoration/di.config.js.map +0 -1
  668. package/lib/features/edit-label/di.config.d.ts.map +0 -1
  669. package/lib/features/edit-label/di.config.js.map +0 -1
  670. package/lib/features/edit-label/edit-label-tool.d.ts.map +0 -1
  671. package/lib/features/edit-label/edit-label-tool.js.map +0 -1
  672. package/lib/features/edit-label/edit-label-validator.js.map +0 -1
  673. package/lib/features/export/di.config.d.ts.map +0 -1
  674. package/lib/features/export/di.config.js.map +0 -1
  675. package/lib/features/hints/di.config.d.ts.map +0 -1
  676. package/lib/features/hints/di.config.js.map +0 -1
  677. package/lib/features/hover/di.config.d.ts.map +0 -1
  678. package/lib/features/hover/di.config.js.map +0 -1
  679. package/lib/features/layout/di.config.d.ts.map +0 -1
  680. package/lib/features/layout/di.config.js.map +0 -1
  681. package/lib/features/mouse-tool/di.config.d.ts +0 -19
  682. package/lib/features/mouse-tool/di.config.d.ts.map +0 -1
  683. package/lib/features/mouse-tool/di.config.js.map +0 -1
  684. package/lib/features/mouse-tool/mouse-tool.d.ts +0 -22
  685. package/lib/features/mouse-tool/mouse-tool.d.ts.map +0 -1
  686. package/lib/features/mouse-tool/mouse-tool.js.map +0 -1
  687. package/lib/features/navigation/di.config.d.ts.map +0 -1
  688. package/lib/features/navigation/di.config.js.map +0 -1
  689. package/lib/features/rank/model.d.ts +0 -22
  690. package/lib/features/rank/model.d.ts.map +0 -1
  691. package/lib/features/rank/model.js +0 -28
  692. package/lib/features/rank/model.js.map +0 -1
  693. package/lib/features/save/di.config.d.ts.map +0 -1
  694. package/lib/features/save/di.config.js.map +0 -1
  695. package/lib/features/save/model.d.ts +0 -22
  696. package/lib/features/save/model.d.ts.map +0 -1
  697. package/lib/features/save/model.js +0 -9
  698. package/lib/features/save/model.js.map +0 -1
  699. package/lib/features/select/di.config.d.ts.map +0 -1
  700. package/lib/features/select/di.config.js.map +0 -1
  701. package/lib/features/select/select-feedback-action.d.ts +0 -22
  702. package/lib/features/select/select-feedback-action.d.ts.map +0 -1
  703. package/lib/features/select/select-feedback-action.js.map +0 -1
  704. package/lib/features/select/selection-service.d.ts.map +0 -1
  705. package/lib/features/select/selection-service.js.map +0 -1
  706. package/lib/features/source-model-watcher/di.config.d.ts +0 -19
  707. package/lib/features/source-model-watcher/di.config.d.ts.map +0 -1
  708. package/lib/features/source-model-watcher/di.config.js.map +0 -1
  709. package/lib/features/svg-metadata/di.config.d.ts.map +0 -1
  710. package/lib/features/svg-metadata/di.config.js.map +0 -1
  711. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +0 -1
  712. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +0 -1
  713. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +0 -1
  714. package/lib/features/tool-feedback/creation-tool-feedback.js.map +0 -1
  715. package/lib/features/tool-feedback/css-feedback.d.ts.map +0 -1
  716. package/lib/features/tool-feedback/css-feedback.js.map +0 -1
  717. package/lib/features/tool-feedback/di.config.d.ts.map +0 -1
  718. package/lib/features/tool-feedback/di.config.js +0 -53
  719. package/lib/features/tool-feedback/di.config.js.map +0 -1
  720. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +0 -1
  721. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +0 -1
  722. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +0 -1
  723. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +0 -1
  724. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +0 -1
  725. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +0 -1
  726. package/lib/features/tool-feedback/model.d.ts.map +0 -1
  727. package/lib/features/tool-feedback/model.js.map +0 -1
  728. package/lib/features/tool-feedback/view.d.ts +0 -16
  729. package/lib/features/tool-feedback/view.d.ts.map +0 -1
  730. package/lib/features/tool-feedback/view.js.map +0 -1
  731. package/lib/features/tool-palette/di.config.d.ts.map +0 -1
  732. package/lib/features/tool-palette/di.config.js.map +0 -1
  733. package/lib/features/tools/change-bounds-tool.d.ts.map +0 -1
  734. package/lib/features/tools/change-bounds-tool.js.map +0 -1
  735. package/lib/features/tools/delete-tool.d.ts.map +0 -1
  736. package/lib/features/tools/delete-tool.js.map +0 -1
  737. package/lib/features/tools/di.config.d.ts +0 -28
  738. package/lib/features/tools/di.config.d.ts.map +0 -1
  739. package/lib/features/tools/di.config.js +0 -66
  740. package/lib/features/tools/di.config.js.map +0 -1
  741. package/lib/features/tools/edge-creation-tool.d.ts.map +0 -1
  742. package/lib/features/tools/edge-creation-tool.js.map +0 -1
  743. package/lib/features/tools/edge-edit-tool.d.ts.map +0 -1
  744. package/lib/features/tools/edge-edit-tool.js.map +0 -1
  745. package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts +0 -10
  746. package/lib/features/tools/enable-default-tools-on-focus-loss.d.ts.map +0 -1
  747. package/lib/features/tools/enable-default-tools-on-focus-loss.js.map +0 -1
  748. package/lib/features/tools/glsp-manhattan-edge-router.d.ts.map +0 -1
  749. package/lib/features/tools/glsp-manhattan-edge-router.js.map +0 -1
  750. package/lib/features/tools/marquee-behavior.d.ts.map +0 -1
  751. package/lib/features/tools/marquee-behavior.js.map +0 -1
  752. package/lib/features/tools/marquee-mouse-tool.d.ts.map +0 -1
  753. package/lib/features/tools/marquee-mouse-tool.js.map +0 -1
  754. package/lib/features/tools/marquee-tool.d.ts +0 -14
  755. package/lib/features/tools/marquee-tool.d.ts.map +0 -1
  756. package/lib/features/tools/marquee-tool.js.map +0 -1
  757. package/lib/features/tools/model.d.ts.map +0 -1
  758. package/lib/features/tools/model.js.map +0 -1
  759. package/lib/features/tools/node-creation-tool.d.ts.map +0 -1
  760. package/lib/features/tools/node-creation-tool.js.map +0 -1
  761. package/lib/features/tools/view.d.ts.map +0 -1
  762. package/lib/features/tools/view.js.map +0 -1
  763. package/lib/features/validation/di.config.d.ts.map +0 -1
  764. package/lib/features/validation/di.config.js.map +0 -1
  765. package/lib/features/viewport/di.config.d.ts.map +0 -1
  766. package/lib/features/viewport/di.config.js.map +0 -1
  767. package/lib/model-source/glsp-diagram-server.d.ts +0 -20
  768. package/lib/model-source/glsp-diagram-server.d.ts.map +0 -1
  769. package/lib/model-source/glsp-diagram-server.js +0 -102
  770. package/lib/model-source/glsp-diagram-server.js.map +0 -1
  771. package/src/base/source-uri-aware.ts +0 -23
  772. package/src/features/tool-feedback/di.config.ts +0 -65
  773. package/src/features/tools/di.config.ts +0 -77
  774. package/src/model-source/glsp-diagram-server.ts +0 -115
  775. /package/lib/features/{edit-label → label-edit}/edit-label-validator.d.ts +0 -0
  776. /package/lib/features/{tools → routing}/glsp-manhattan-edge-router.d.ts +0 -0
  777. /package/lib/features/{tools → routing}/glsp-manhattan-edge-router.js +0 -0
  778. /package/src/{features/tool-feedback/model.ts → base/feedback/feedback-command.ts} +0 -0
  779. /package/src/base/{actions/focus-change-action.ts → focus/focus-state-change-action.ts} +0 -0
  780. /package/src/features/{edit-label → label-edit}/edit-label-validator.ts +0 -0
  781. /package/src/features/{tools → routing}/glsp-manhattan-edge-router.ts +0 -0
  782. /package/src/features/tools/{marquee-behavior.spec.ts → marquee-selection/marquee-behavior.spec.ts} +0 -0
  783. /package/src/features/tools/{model.ts → marquee-selection/model.ts} +0 -0
  784. /package/src/features/tools/{view.tsx → marquee-selection/view.tsx} +0 -0
@@ -1,8 +1,9 @@
1
- import { Action, Args, EditorContext, IActionHandler, ModelSource, MousePositionTracker, SModelElement, SModelRoot } from '../glsp-sprotty/index';
2
- import { SelectionService } from '../features/select/selection-service';
3
- export interface EditModeListener {
1
+ import { Action, Args, Disposable, DisposableCollection, EditorContext, Emitter, Event, IActionHandler, ModelSource, MousePositionTracker, SModelElement, SModelRoot, SetDirtyStateAction, SetEditModeAction, ValueChange } from '../glsp-sprotty/index';
2
+ import { SelectionService } from './selection-service';
3
+ export interface IEditModeListener {
4
4
  editModeChanged(newValue: string, oldValue: string): void;
5
5
  }
6
+ export type DirtyStateChange = Pick<SetDirtyStateAction, 'isDirty' | 'reason'>;
6
7
  /**
7
8
  * The `EditorContextService` is a central injectable component that gives read-only access to
8
9
  * certain aspects of the diagram, such as the currently selected elements, the model root,
@@ -15,23 +16,31 @@ export interface EditModeListener {
15
16
  * actions to the server to describe the current state of the editor (selection, last mouse
16
17
  * position, etc.).
17
18
  */
18
- export declare class EditorContextService implements IActionHandler {
19
+ export declare class EditorContextService implements IActionHandler, Disposable {
19
20
  protected selectionService: SelectionService;
20
21
  protected mousePositionTracker: MousePositionTracker;
21
- protected editModeListeners: EditModeListener[];
22
+ protected editModeListeners: IEditModeListener[];
22
23
  protected modelSourceProvider: () => Promise<ModelSource>;
23
24
  protected _editMode: string;
24
- register(editModeListener: EditModeListener): void;
25
- deregister(editModeListener: EditModeListener): void;
25
+ protected onEditModeChangedEmitter: Emitter<ValueChange<string>>;
26
+ get onEditModeChanged(): Event<ValueChange<string>>;
27
+ protected _isDirty: boolean;
28
+ protected onDirtyStateChangedEmitter: Emitter<DirtyStateChange>;
29
+ get onDirtyStateChanged(): Event<DirtyStateChange>;
30
+ protected toDispose: DisposableCollection;
31
+ protected initialize(): void;
32
+ dispose(): void;
26
33
  get(args?: Args): EditorContext;
27
34
  getWithSelection(selectedElementIds: string[], args?: Args): EditorContext;
28
35
  handle(action: Action): void;
29
- protected notifyEditModeListeners(oldValue: string): void;
36
+ protected handleSetEditModeAction(action: SetEditModeAction): void;
37
+ protected handleSetDirtyStateAction(action: SetDirtyStateAction): void;
30
38
  getSourceUri(): Promise<string | undefined>;
31
39
  get editMode(): string;
32
40
  get modelRoot(): Readonly<SModelRoot>;
33
41
  get selectedElements(): Readonly<SModelElement>[];
34
42
  get isReadonly(): boolean;
43
+ get isDirty(): boolean;
35
44
  }
36
45
  export type EditorContextServiceProvider = () => Promise<EditorContextService>;
37
46
  //# sourceMappingURL=editor-context-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"editor-context-service.d.ts","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,MAAM,EACN,IAAI,EAEJ,aAAa,EACb,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,aAAa,EACb,UAAU,EAKb,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAGxE,MAAM,WAAW,gBAAgB;IAC7B,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7D;AAED;;;;;;;;;;;GAWG;AACH,qBACa,oBAAqB,YAAW,cAAc;IAEvD,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAIrD,SAAS,CAAC,iBAAiB,EAAE,gBAAgB,EAAE,CAAM;IAGrD,SAAS,CAAC,mBAAmB,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1D,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAIlD,UAAU,CAAC,gBAAgB,EAAE,gBAAgB,GAAG,IAAI;IAIpD,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ/B,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ1E,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAInD,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAQjD,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC,CAEpC;IAED,IAAI,gBAAgB,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE,CAEhD;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;CACJ;AAED,MAAM,MAAM,4BAA4B,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC"}
1
+ {"version":3,"file":"editor-context-service.d.ts","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,MAAM,EACN,IAAI,EACJ,UAAU,EACV,oBAAoB,EAEpB,aAAa,EACb,OAAO,EACP,KAAK,EACL,cAAc,EACd,WAAW,EACX,oBAAoB,EACpB,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,iBAAiB,EAEjB,WAAW,EACd,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,MAAM,WAAW,iBAAiB;IAC9B,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAC7D;AAED,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE,SAAS,GAAG,QAAQ,CAAC,CAAC;AAC/E;;;;;;;;;;;GAWG;AACH,qBACa,oBAAqB,YAAW,cAAc,EAAE,UAAU;IAEnE,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAG7C,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAIrD,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,CAAM;IAGtD,SAAS,CAAC,mBAAmB,EAAE,MAAM,OAAO,CAAC,WAAW,CAAC,CAAC;IAE1D,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,wBAAwB,+BAAsC;IACxE,IAAI,iBAAiB,IAAI,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAElD;IAED,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC5B,SAAS,CAAC,0BAA0B,4BAAmC;IACvE,IAAI,mBAAmB,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAEjD;IAED,SAAS,CAAC,SAAS,uBAA8B;IAGjD,SAAS,CAAC,UAAU,IAAI,IAAI;IAQ5B,OAAO,IAAI,IAAI;IAIf,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ/B,gBAAgB,CAAC,kBAAkB,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa;IAQ1E,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQ5B,SAAS,CAAC,uBAAuB,CAAC,MAAM,EAAE,iBAAiB,GAAG,IAAI;IAMlE,SAAS,CAAC,yBAAyB,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI;IAOhE,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAQjD,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,SAAS,IAAI,QAAQ,CAAC,UAAU,CAAC,CAEpC;IAED,IAAI,gBAAgB,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE,CAEhD;IAED,IAAI,UAAU,IAAI,OAAO,CAExB;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;CACJ;AAED,MAAM,MAAM,4BAA4B,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,CAAC"}
@@ -27,8 +27,8 @@ exports.EditorContextService = void 0;
27
27
  ********************************************************************************/
28
28
  const inversify_1 = require("inversify");
29
29
  const _glsp_sprotty_1 = require("../glsp-sprotty/index");
30
- const selection_service_1 = require("../features/select/selection-service");
31
- const source_uri_aware_1 = require("./source-uri-aware");
30
+ const glsp_model_source_1 = require("./model/glsp-model-source");
31
+ const selection_service_1 = require("./selection-service");
32
32
  /**
33
33
  * The `EditorContextService` is a central injectable component that gives read-only access to
34
34
  * certain aspects of the diagram, such as the currently selected elements, the model root,
@@ -41,15 +41,25 @@ const source_uri_aware_1 = require("./source-uri-aware");
41
41
  * actions to the server to describe the current state of the editor (selection, last mouse
42
42
  * position, etc.).
43
43
  */
44
- let EditorContextService = class EditorContextService {
44
+ let EditorContextService = exports.EditorContextService = class EditorContextService {
45
45
  constructor() {
46
46
  this.editModeListeners = [];
47
+ this.onEditModeChangedEmitter = new _glsp_sprotty_1.Emitter();
48
+ this.onDirtyStateChangedEmitter = new _glsp_sprotty_1.Emitter();
49
+ this.toDispose = new _glsp_sprotty_1.DisposableCollection();
47
50
  }
48
- register(editModeListener) {
49
- (0, _glsp_sprotty_1.distinctAdd)(this.editModeListeners, editModeListener);
51
+ get onEditModeChanged() {
52
+ return this.onEditModeChangedEmitter.event;
50
53
  }
51
- deregister(editModeListener) {
52
- (0, _glsp_sprotty_1.remove)(this.editModeListeners, editModeListener);
54
+ get onDirtyStateChanged() {
55
+ return this.onDirtyStateChangedEmitter.event;
56
+ }
57
+ initialize() {
58
+ this.toDispose.push(this.onEditModeChangedEmitter, this.onDirtyStateChangedEmitter);
59
+ this.editModeListeners.forEach(listener => this.onEditModeChanged(change => listener.editModeChanged(change.newValue, change.oldValue)));
60
+ }
61
+ dispose() {
62
+ this.toDispose.dispose();
53
63
  }
54
64
  get(args) {
55
65
  return {
@@ -67,18 +77,27 @@ let EditorContextService = class EditorContextService {
67
77
  }
68
78
  handle(action) {
69
79
  if (_glsp_sprotty_1.SetEditModeAction.is(action)) {
70
- const oldValue = this._editMode;
71
- this._editMode = action.editMode;
72
- this.notifyEditModeListeners(oldValue);
80
+ this.handleSetEditModeAction(action);
73
81
  }
82
+ else if (_glsp_sprotty_1.SetDirtyStateAction.is(action)) {
83
+ this.handleSetDirtyStateAction(action);
84
+ }
85
+ }
86
+ handleSetEditModeAction(action) {
87
+ const oldValue = this._editMode;
88
+ this._editMode = action.editMode;
89
+ this.onEditModeChangedEmitter.fire({ newValue: this.editMode, oldValue });
74
90
  }
75
- notifyEditModeListeners(oldValue) {
76
- this.editModeListeners.forEach(listener => listener.editModeChanged(oldValue, this.editMode));
91
+ handleSetDirtyStateAction(action) {
92
+ if (action.isDirty !== this._isDirty) {
93
+ this._isDirty = action.isDirty;
94
+ this.onDirtyStateChangedEmitter.fire(action);
95
+ }
77
96
  }
78
97
  async getSourceUri() {
79
98
  const modelSource = await this.modelSourceProvider();
80
- if ((0, source_uri_aware_1.isSourceUriAware)(modelSource)) {
81
- return modelSource.sourceURI;
99
+ if (modelSource instanceof glsp_model_source_1.GLSPModelSource) {
100
+ return modelSource.sourceUri;
82
101
  }
83
102
  return undefined;
84
103
  }
@@ -94,9 +113,12 @@ let EditorContextService = class EditorContextService {
94
113
  get isReadonly() {
95
114
  return this.editMode === _glsp_sprotty_1.EditMode.READONLY;
96
115
  }
116
+ get isDirty() {
117
+ return this._isDirty;
118
+ }
97
119
  };
98
120
  __decorate([
99
- (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.SelectionService),
121
+ (0, inversify_1.inject)(selection_service_1.SelectionService),
100
122
  __metadata("design:type", selection_service_1.SelectionService)
101
123
  ], EditorContextService.prototype, "selectionService", void 0);
102
124
  __decorate([
@@ -112,8 +134,19 @@ __decorate([
112
134
  (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.ModelSourceProvider),
113
135
  __metadata("design:type", Function)
114
136
  ], EditorContextService.prototype, "modelSourceProvider", void 0);
115
- EditorContextService = __decorate([
137
+ __decorate([
138
+ (0, inversify_1.postConstruct)(),
139
+ __metadata("design:type", Function),
140
+ __metadata("design:paramtypes", []),
141
+ __metadata("design:returntype", void 0)
142
+ ], EditorContextService.prototype, "initialize", null);
143
+ __decorate([
144
+ (0, inversify_1.preDestroy)(),
145
+ __metadata("design:type", Function),
146
+ __metadata("design:paramtypes", []),
147
+ __metadata("design:returntype", void 0)
148
+ ], EditorContextService.prototype, "dispose", null);
149
+ exports.EditorContextService = EditorContextService = __decorate([
116
150
  (0, inversify_1.injectable)()
117
151
  ], EditorContextService);
118
- exports.EditorContextService = EditorContextService;
119
152
  //# sourceMappingURL=editor-context-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"editor-context-service.js","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAAsE;AACtE,iDAcuB;AACvB,4EAAwE;AACxE,yDAAsD;AAMtD;;;;;;;;;;;GAWG;AAEH,IAAa,oBAAoB,GAAjC,MAAa,oBAAoB;IAAjC;QASc,sBAAiB,GAAuB,EAAE,CAAC;IAkEzD,CAAC;IA3DG,QAAQ,CAAC,gBAAkC;QACvC,IAAA,2BAAW,EAAC,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IAC1D,CAAC;IAED,UAAU,CAAC,gBAAkC;QACzC,IAAA,sBAAM,EAAC,IAAI,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAED,GAAG,CAAC,IAAW;QACX,OAAO;YACH,kBAAkB,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAC7E,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC,qBAAqB;YAClE,IAAI;SACP,CAAC;IACN,CAAC;IAED,gBAAgB,CAAC,kBAA4B,EAAE,IAAW;QACtD,OAAO;YACH,kBAAkB;YAClB,iBAAiB,EAAE,IAAI,CAAC,oBAAoB,CAAC,qBAAqB;YAClE,IAAI;SACP,CAAC;IACN,CAAC;IAED,MAAM,CAAC,MAAc;QACjB,IAAI,iCAAiB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC;YAChC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;SAC1C;IACL,CAAC;IAES,uBAAuB,CAAC,QAAgB;QAC9C,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClG,CAAC;IAED,KAAK,CAAC,YAAY;QACd,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrD,IAAI,IAAA,mCAAgB,EAAC,WAAW,CAAC,EAAE;YAC/B,OAAO,WAAW,CAAC,SAAS,CAAC;SAChC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE,CAAC;IAChD,CAAC;IAED,IAAI,gBAAgB;QAChB,OAAO,IAAI,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,CAAC;IACvD,CAAC;IAED,IAAI,UAAU;QACV,OAAO,IAAI,CAAC,QAAQ,KAAK,wBAAQ,CAAC,QAAQ,CAAC;IAC/C,CAAC;CACJ,CAAA;AAzEa;IADT,IAAA,kBAAM,EAAC,qBAAK,CAAC,gBAAgB,CAAC;8BACH,oCAAgB;8DAAC;AAGnC;IADT,IAAA,kBAAM,EAAC,oCAAoB,CAAC;8BACG,oCAAoB;kEAAC;AAI3C;IAFT,IAAA,uBAAW,EAAC,qBAAK,CAAC,iBAAiB,CAAC;IACpC,IAAA,oBAAQ,GAAE;;+DAC0C;AAG3C;IADT,IAAA,kBAAM,EAAC,qBAAK,CAAC,mBAAmB,CAAC;;iEACwB;AAZjD,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CA2EhC;AA3EY,oDAAoB"}
1
+ {"version":3,"file":"editor-context-service.js","sourceRoot":"","sources":["../../src/base/editor-context-service.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { Action, CommandExecutionContext, SModelElement, SModelRoot } from '../../glsp-sprotty/index';
2
- import { FeedbackCommand } from './model';
2
+ import { FeedbackCommand } from './feedback-command';
3
3
  export interface ModifyCSSFeedbackAction extends Action {
4
4
  kind: typeof ModifyCSSFeedbackAction.KIND;
5
5
  elementIds?: string[];
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-feedback.d.ts","sourceRoot":"","sources":["../../../src/base/feedback/css-feedback.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,uBAAuB,EAAE,aAAa,EAAE,UAAU,EAAuB,MAAM,eAAe,CAAC;AAEhH,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,MAAM,WAAW,uBAAwB,SAAQ,MAAM;IACnD,IAAI,EAAE,OAAO,uBAAuB,CAAC,IAAI,CAAC;IAE1C,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,yBAAiB,uBAAuB,CAAC;IAC9B,MAAM,IAAI,sBAAsB,CAAC;IAExC,SAAgB,EAAE,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,uBAAuB,CAEjE;IAED,SAAgB,MAAM,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,EAAE,CAAC,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC;QAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,uBAAuB,CAQrI;CACJ;AAED,qBACa,wBAAyB,SAAQ,eAAe;IAGvB,QAAQ,CAAC,MAAM,EAAE,uBAAuB;IAF1E,MAAM,CAAC,QAAQ,CAAC,IAAI,uBAAgC;gBAET,MAAM,EAAE,uBAAuB;IAI1E,OAAO,CAAC,OAAO,EAAE,uBAAuB,GAAG,UAAU;CAexD;AAED,oBAAY,SAAS;IACjB,OAAO,iBAAiB;IACxB,iBAAiB,2BAA2B;IAC5C,aAAa,uBAAuB;IACpC,oBAAoB,qCAAqC;IACzD,oBAAoB,qCAAqC;IACzD,cAAc,sCAAsC;IACpD,qBAAqB,uCAAuC;IAC5D,gBAAgB,0BAA0B;IAC1C,WAAW,qBAAqB;IAChC,WAAW,qBAAqB;IAChC,IAAI,cAAc;IAClB,OAAO,iBAAiB;CAC3B;AAED,wBAAgB,oBAAoB,CAAC,SAAS,CAAC,EAAE,SAAS,GAAG,uBAAuB,CAMnF;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,GAAG,uBAAuB,CAEjG;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,uBAAuB,CAErG"}
@@ -42,7 +42,7 @@ exports.deleteCssClasses = exports.applyCssClasses = exports.cursorFeedbackActio
42
42
  const inversify_1 = require("inversify");
43
43
  const _glsp_sprotty_1 = require("../../glsp-sprotty/index");
44
44
  const smodel_util_1 = require("../../utils/smodel-util");
45
- const model_1 = require("./model");
45
+ const feedback_command_1 = require("./feedback-command");
46
46
  var ModifyCSSFeedbackAction;
47
47
  (function (ModifyCSSFeedbackAction) {
48
48
  ModifyCSSFeedbackAction.KIND = 'modifyCSSFeedback';
@@ -56,8 +56,8 @@ var ModifyCSSFeedbackAction;
56
56
  return Object.assign({ kind: ModifyCSSFeedbackAction.KIND, elementIds }, rest);
57
57
  }
58
58
  ModifyCSSFeedbackAction.create = create;
59
- })(ModifyCSSFeedbackAction = exports.ModifyCSSFeedbackAction || (exports.ModifyCSSFeedbackAction = {}));
60
- let ModifyCssFeedbackCommand = class ModifyCssFeedbackCommand extends model_1.FeedbackCommand {
59
+ })(ModifyCSSFeedbackAction || (exports.ModifyCSSFeedbackAction = ModifyCSSFeedbackAction = {}));
60
+ let ModifyCssFeedbackCommand = exports.ModifyCssFeedbackCommand = class ModifyCssFeedbackCommand extends feedback_command_1.FeedbackCommand {
61
61
  constructor(action) {
62
62
  super();
63
63
  this.action = action;
@@ -76,12 +76,11 @@ let ModifyCssFeedbackCommand = class ModifyCssFeedbackCommand extends model_1.Fe
76
76
  }
77
77
  };
78
78
  ModifyCssFeedbackCommand.KIND = ModifyCSSFeedbackAction.KIND;
79
- ModifyCssFeedbackCommand = __decorate([
79
+ exports.ModifyCssFeedbackCommand = ModifyCssFeedbackCommand = __decorate([
80
80
  (0, inversify_1.injectable)(),
81
81
  __param(0, (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.Action)),
82
82
  __metadata("design:paramtypes", [Object])
83
83
  ], ModifyCssFeedbackCommand);
84
- exports.ModifyCssFeedbackCommand = ModifyCssFeedbackCommand;
85
84
  var CursorCSS;
86
85
  (function (CursorCSS) {
87
86
  CursorCSS["DEFAULT"] = "default-mode";
@@ -96,7 +95,7 @@ var CursorCSS;
96
95
  CursorCSS["RESIZE_NWSE"] = "resize-nwse-mode";
97
96
  CursorCSS["MOVE"] = "move-mode";
98
97
  CursorCSS["MARQUEE"] = "marquee-mode";
99
- })(CursorCSS = exports.CursorCSS || (exports.CursorCSS = {}));
98
+ })(CursorCSS || (exports.CursorCSS = CursorCSS = {}));
100
99
  function cursorFeedbackAction(cursorCss) {
101
100
  const add = [];
102
101
  if (cursorCss) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css-feedback.js","sourceRoot":"","sources":["../../../src/base/feedback/css-feedback.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Action, IActionDispatcher, ILogger } from '../../glsp-sprotty/index';
1
+ import { Action, Disposable, IActionDispatcher, ILogger } from '../../glsp-sprotty/index';
2
2
  export interface IFeedbackEmitter {
3
3
  }
4
4
  /**
@@ -18,33 +18,35 @@ export interface IFeedbackActionDispatcher {
18
18
  /**
19
19
  * Registers `actions` to be sent out by a `feedbackEmitter`.
20
20
  * @param feedbackEmitter the emitter sending out feedback actions.
21
- * @param actions the actions to be sent out.
21
+ * @param feedbackActions the actions to be sent out.
22
+ * @param cleanupActions the actions to be sent out when the feedback is de-registered through the returned Disposable.
23
+ * @returns A 'Disposable' that de-registers the feedback and cleans up any pending feedback with the given `cleanupActions`.
22
24
  */
23
- registerFeedback(feedbackEmitter: IFeedbackEmitter, actions: Action[]): void;
25
+ registerFeedback(feedbackEmitter: IFeedbackEmitter, feedbackActions: Action[], cleanupActions?: Action[]): Disposable;
24
26
  /**
25
27
  * Deregisters a `feedbackEmitter` from this dispatcher and thereafter
26
28
  * dispatches the provided `actions`.
27
29
  * @param feedbackEmitter the emitter to be deregistered.
28
- * @param actions the actions to be dispatched right after the deregistration.
30
+ * @param cleanupActions the actions to be dispatched right after the deregistration.
29
31
  * These actions do not have to be related to the actions sent out by the
30
32
  * deregistered `feedbackEmitter`. The purpose of these actions typically is
31
33
  * to reset the normal state of the diagram without the feedback (e.g., reset a
32
34
  * CSS class that was set by a feedbackEmitter).
33
35
  */
34
- deregisterFeedback(feedbackEmitter: IFeedbackEmitter, actions: Action[]): void;
36
+ deregisterFeedback(feedbackEmitter: IFeedbackEmitter, cleanupActions?: Action[]): void;
35
37
  /**
36
38
  * Retrieve all `actions` sent out by currently registered `feedbackEmitter`.
37
39
  */
38
40
  getRegisteredFeedback(): Action[];
39
41
  }
40
42
  export declare class FeedbackActionDispatcher implements IFeedbackActionDispatcher {
41
- protected feedbackEmitters: Map<IFeedbackEmitter, Action[]>;
43
+ protected registeredFeedback: Map<IFeedbackEmitter, Action[]>;
42
44
  protected actionDispatcher: () => Promise<IActionDispatcher>;
43
45
  protected logger: ILogger;
44
- registerFeedback(feedbackEmitter: IFeedbackEmitter, actions: Action[]): void;
45
- deregisterFeedback(feedbackEmitter: IFeedbackEmitter, actions: Action[]): void;
46
- private dispatch;
46
+ registerFeedback(feedbackEmitter: IFeedbackEmitter, feedbackActions: Action[], cleanupActions?: Action[] | undefined): Disposable;
47
+ deregisterFeedback(feedbackEmitter: IFeedbackEmitter, cleanupActions?: Action[] | undefined): void;
47
48
  getRegisteredFeedback(): Action[];
48
49
  getRegisteredFeedbackEmitters(action: Action): IFeedbackEmitter[];
50
+ protected dispatchFeedback(actions: Action[], feedbackEmitter: IFeedbackEmitter): Promise<void>;
49
51
  }
50
52
  //# sourceMappingURL=feedback-action-dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback-action-dispatcher.d.ts","sourceRoot":"","sources":["../../../src/base/feedback/feedback-action-dispatcher.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,OAAO,EAAS,MAAM,eAAe,CAAC;AAEtF,MAAM,WAAW,gBAAgB;CAAG;AAEpC;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,yBAAyB;IACtC;;;;;;OAMG;IACH,gBAAgB,CAAC,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;IAEtH;;;;;;;;;OASG;IACH,kBAAkB,CAAC,eAAe,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAEvF;;OAEG;IACH,qBAAqB,IAAI,MAAM,EAAE,CAAC;CACrC;AAED,qBACa,wBAAyB,YAAW,yBAAyB;IACtE,SAAS,CAAC,kBAAkB,EAAE,GAAG,CAAC,gBAAgB,EAAE,MAAM,EAAE,CAAC,CAAa;IAEjC,SAAS,CAAC,gBAAgB,EAAE,MAAM,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC/E,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAEjD,gBAAgB,CAAC,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,UAAU;IAMjI,kBAAkB,CAAC,eAAe,EAAE,gBAAgB,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,IAAI;IAOlG,qBAAqB,IAAI,MAAM,EAAE;IAMjC,6BAA6B,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,EAAE;cAUjD,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,eAAe,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;CASxG"}
@@ -27,38 +27,45 @@ exports.FeedbackActionDispatcher = void 0;
27
27
  ********************************************************************************/
28
28
  const inversify_1 = require("inversify");
29
29
  const _glsp_sprotty_1 = require("../../glsp-sprotty/index");
30
- let FeedbackActionDispatcher = class FeedbackActionDispatcher {
30
+ let FeedbackActionDispatcher = exports.FeedbackActionDispatcher = class FeedbackActionDispatcher {
31
31
  constructor() {
32
- this.feedbackEmitters = new Map();
32
+ this.registeredFeedback = new Map();
33
33
  }
34
- registerFeedback(feedbackEmitter, actions) {
35
- this.feedbackEmitters.set(feedbackEmitter, actions);
36
- this.dispatch(actions, feedbackEmitter);
34
+ registerFeedback(feedbackEmitter, feedbackActions, cleanupActions) {
35
+ this.registeredFeedback.set(feedbackEmitter, feedbackActions);
36
+ this.dispatchFeedback(feedbackActions, feedbackEmitter);
37
+ return _glsp_sprotty_1.Disposable.create(() => this.deregisterFeedback(feedbackEmitter, cleanupActions));
37
38
  }
38
- deregisterFeedback(feedbackEmitter, actions) {
39
- this.feedbackEmitters.delete(feedbackEmitter);
40
- this.dispatch(actions, feedbackEmitter);
41
- }
42
- dispatch(actions, feedbackEmitter) {
43
- this.actionDispatcher()
44
- .then(dispatcher => dispatcher.dispatchAll(actions))
45
- .then(() => this.logger.info(this, `Dispatched feedback actions for ${feedbackEmitter}`))
46
- .catch(reason => this.logger.error(this, 'Failed to dispatch feedback actions', reason));
39
+ deregisterFeedback(feedbackEmitter, cleanupActions) {
40
+ this.registeredFeedback.delete(feedbackEmitter);
41
+ if (cleanupActions) {
42
+ this.dispatchFeedback(cleanupActions, feedbackEmitter);
43
+ }
47
44
  }
48
45
  getRegisteredFeedback() {
49
46
  const result = [];
50
- this.feedbackEmitters.forEach((value, key) => result.push(...value));
47
+ this.registeredFeedback.forEach(actions => result.push(...actions));
51
48
  return result;
52
49
  }
53
50
  getRegisteredFeedbackEmitters(action) {
54
51
  const result = [];
55
- this.feedbackEmitters.forEach((value, key) => {
56
- if (value.find(a => a === action)) {
57
- result.push(key);
52
+ this.registeredFeedback.forEach((actions, emitter) => {
53
+ if (actions.includes(action)) {
54
+ result.push(emitter);
58
55
  }
59
56
  });
60
57
  return result;
61
58
  }
59
+ async dispatchFeedback(actions, feedbackEmitter) {
60
+ try {
61
+ const actionDispatcher = await this.actionDispatcher();
62
+ await actionDispatcher.dispatchAll(actions);
63
+ this.logger.info(this, `Dispatched feedback actions for ${feedbackEmitter}`);
64
+ }
65
+ catch (reason) {
66
+ this.logger.error(this, 'Failed to dispatch feedback actions', reason);
67
+ }
68
+ }
62
69
  };
63
70
  __decorate([
64
71
  (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.IActionDispatcherProvider),
@@ -68,8 +75,7 @@ __decorate([
68
75
  (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.ILogger),
69
76
  __metadata("design:type", Object)
70
77
  ], FeedbackActionDispatcher.prototype, "logger", void 0);
71
- FeedbackActionDispatcher = __decorate([
78
+ exports.FeedbackActionDispatcher = FeedbackActionDispatcher = __decorate([
72
79
  (0, inversify_1.injectable)()
73
80
  ], FeedbackActionDispatcher);
74
- exports.FeedbackActionDispatcher = FeedbackActionDispatcher;
75
81
  //# sourceMappingURL=feedback-action-dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback-action-dispatcher.js","sourceRoot":"","sources":["../../../src/base/feedback/feedback-action-dispatcher.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAA+C;AAC/C,iDAAsF;AA8C/E,IAAM,wBAAwB,sCAA9B,MAAM,wBAAwB;IAA9B;QACO,uBAAkB,GAAoC,IAAI,GAAG,EAAE,CAAC;IA2C9E,CAAC;IAtCG,gBAAgB,CAAC,eAAiC,EAAE,eAAyB,EAAE,cAAqC;QAChH,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;QAC9D,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,eAAe,CAAC,CAAC;QACxD,OAAO,0BAAU,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,eAAe,EAAE,cAAc,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,kBAAkB,CAAC,eAAiC,EAAE,cAAqC;QACvF,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAChD,IAAI,cAAc,EAAE;YAChB,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;SAC1D;IACL,CAAC;IAED,qBAAqB;QACjB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;QACpE,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,6BAA6B,CAAC,MAAc;QACxC,MAAM,MAAM,GAAuB,EAAE,CAAC;QACtC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;YACjD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAC1B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACxB;QACL,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAClB,CAAC;IAES,KAAK,CAAC,gBAAgB,CAAC,OAAiB,EAAE,eAAiC;QACjF,IAAI;YACA,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvD,MAAM,gBAAgB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,mCAAmC,eAAe,EAAE,CAAC,CAAC;SAChF;QAAC,OAAO,MAAM,EAAE;YACb,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,qCAAqC,EAAE,MAAM,CAAC,CAAC;SAC1E;IACL,CAAC;CACJ,CAAA;AAzCsD;IAAlD,IAAA,kBAAM,EAAC,qBAAK,CAAC,yBAAyB,CAAC;;kEAA8D;AACrE;IAAhC,IAAA,kBAAM,EAAC,qBAAK,CAAC,OAAO,CAAC;;wDAA2B;mCAJxC,wBAAwB;IADpC,IAAA,sBAAU,GAAE;GACA,wBAAwB,CA4CpC"}
@@ -19,4 +19,4 @@ export declare abstract class FeedbackCommand extends Command {
19
19
  undo(context: CommandExecutionContext): CommandReturn;
20
20
  redo(context: CommandExecutionContext): CommandReturn;
21
21
  }
22
- //# sourceMappingURL=model.d.ts.map
22
+ //# sourceMappingURL=feedback-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback-command.d.ts","sourceRoot":"","sources":["../../../src/base/feedback/feedback-command.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,OAAO,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAEhF,8BAAsB,eAAgB,SAAQ,OAAO;IAEjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAK;IAE9B,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;IAIrD,IAAI,CAAC,OAAO,EAAE,uBAAuB,GAAG,aAAa;CAGxD"}
@@ -31,4 +31,4 @@ class FeedbackCommand extends _glsp_sprotty_1.Command {
31
31
  }
32
32
  }
33
33
  exports.FeedbackCommand = FeedbackCommand;
34
- //# sourceMappingURL=model.js.map
34
+ //# sourceMappingURL=feedback-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feedback-command.js","sourceRoot":"","sources":["../../../src/base/feedback/feedback-command.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAAgF;AAEhF,MAAsB,eAAgB,SAAQ,uBAAO;IAArD;;QACI,gDAAgD;QACvC,aAAQ,GAAW,CAAC,CAAC;IASlC,CAAC;IAPG,IAAI,CAAC,OAAgC;QACjC,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;IAED,IAAI,CAAC,OAAgC;QACjC,OAAO,OAAO,CAAC,IAAI,CAAC;IACxB,CAAC;CACJ;AAXD,0CAWC"}
@@ -1,17 +1,6 @@
1
- import { Action, ActionHandlerRegistry, Animation, Command, CommandExecutionContext, CommandReturn, IActionHandler, ILogger, SModelRoot, UpdateAnimationData, UpdateModelAction, UpdateModelCommand } from '../../glsp-sprotty/index';
2
- import { IFeedbackActionDispatcher } from '../../features/tool-feedback/feedback-action-dispatcher';
3
- import { FeedbackCommand } from '../../features/tool-feedback/model';
4
- /**
5
- * ActionHandler that transforms a {@link SetModelAction} into an {@link UpdateModelAction} that can be handled
6
- * by the {@link FeedbackAwareUpdateModelCommand}. This can be done because in sprotty an {@link UpdateModelCommand} and
7
- * a {@link SetModelCommand} have the same behavior of no model is present yet.
8
- */
9
- export declare class SetModelActionHandler implements IActionHandler {
10
- handle(action: Action): Action | void;
11
- }
12
- export interface SModelRootListener {
13
- modelRootChanged(root: Readonly<SModelRoot>): void;
14
- }
1
+ import { ActionHandlerRegistry, Animation, Command, CommandExecutionContext, CommandReturn, ILogger, SModelRoot, UpdateAnimationData, UpdateModelAction, UpdateModelCommand } from '../../glsp-sprotty/index';
2
+ import { IFeedbackActionDispatcher } from './feedback-action-dispatcher';
3
+ import { FeedbackCommand } from './feedback-command';
15
4
  /**
16
5
  * A special {@link UpdateModelCommand} that retrieves all registered {@link Action}s from the {@link IFeedbackActionDispatcher}
17
6
  * (if present) and applies their feedback to the `newRoot` before performing the update. This enables persistent client-side feedback
@@ -20,7 +9,6 @@ export interface SModelRootListener {
20
9
  export declare class FeedbackAwareUpdateModelCommand extends UpdateModelCommand {
21
10
  protected logger: ILogger;
22
11
  protected feedbackActionDispatcher: IFeedbackActionDispatcher;
23
- protected modelRootListeners: SModelRootListener[];
24
12
  protected actionHandlerRegistry?: ActionHandlerRegistry;
25
13
  constructor(action: UpdateModelAction, actionHandlerRegistryProvider: () => Promise<ActionHandlerRegistry>);
26
14
  protected performUpdate(oldRoot: SModelRoot, newRoot: SModelRoot, context: CommandExecutionContext): CommandReturn;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-model-command.d.ts","sourceRoot":"","sources":["../../../src/base/feedback/update-model-command.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,qBAAqB,EACrB,SAAS,EACT,OAAO,EAEP,uBAAuB,EACvB,aAAa,EACb,OAAO,EAEP,UAAU,EAEV,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAErB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;GAIG;AACH,qBACa,+BAAgC,SAAQ,kBAAkB;IAEnE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAI1B,SAAS,CAAC,wBAAwB,EAAE,yBAAyB,CAAC;IAE9D,SAAS,CAAC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;gBAG9B,MAAM,EAAE,iBAAiB,EAE/C,6BAA6B,EAAE,MAAM,OAAO,CAAC,qBAAqB,CAAC;cAMpD,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,uBAAuB,GAAG,aAAa;IAgB3H,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,OAAO,EAAE;IAazE,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,MAAM;cAM7C,gBAAgB,CAAC,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,uBAAuB,GAAG,SAAS,EAAE;CAIlI"}
@@ -12,7 +12,7 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.FeedbackAwareUpdateModelCommand = exports.SetModelActionHandler = void 0;
15
+ exports.FeedbackAwareUpdateModelCommand = void 0;
16
16
  /********************************************************************************
17
17
  * Copyright (c) 2019-2023 EclipseSource and others.
18
18
  *
@@ -30,31 +30,14 @@ exports.FeedbackAwareUpdateModelCommand = exports.SetModelActionHandler = void 0
30
30
  ********************************************************************************/
31
31
  const inversify_1 = require("inversify");
32
32
  const _glsp_sprotty_1 = require("../../glsp-sprotty/index");
33
- /**
34
- * ActionHandler that transforms a {@link SetModelAction} into an {@link UpdateModelAction} that can be handled
35
- * by the {@link FeedbackAwareUpdateModelCommand}. This can be done because in sprotty an {@link UpdateModelCommand} and
36
- * a {@link SetModelCommand} have the same behavior of no model is present yet.
37
- */
38
- let SetModelActionHandler = class SetModelActionHandler {
39
- handle(action) {
40
- if (_glsp_sprotty_1.SetModelAction.is(action)) {
41
- return _glsp_sprotty_1.UpdateModelAction.create(action.newRoot, { animate: false });
42
- }
43
- }
44
- };
45
- SetModelActionHandler = __decorate([
46
- (0, inversify_1.injectable)()
47
- ], SetModelActionHandler);
48
- exports.SetModelActionHandler = SetModelActionHandler;
49
33
  /**
50
34
  * A special {@link UpdateModelCommand} that retrieves all registered {@link Action}s from the {@link IFeedbackActionDispatcher}
51
35
  * (if present) and applies their feedback to the `newRoot` before performing the update. This enables persistent client-side feedback
52
36
  * across model updates initiated by the GLSP server.
53
37
  */
54
- let FeedbackAwareUpdateModelCommand = class FeedbackAwareUpdateModelCommand extends _glsp_sprotty_1.UpdateModelCommand {
38
+ let FeedbackAwareUpdateModelCommand = exports.FeedbackAwareUpdateModelCommand = class FeedbackAwareUpdateModelCommand extends _glsp_sprotty_1.UpdateModelCommand {
55
39
  constructor(action, actionHandlerRegistryProvider) {
56
40
  super(Object.assign({ animate: true }, action));
57
- this.modelRootListeners = [];
58
41
  actionHandlerRegistryProvider().then(registry => (this.actionHandlerRegistry = registry));
59
42
  }
60
43
  performUpdate(oldRoot, newRoot, context) {
@@ -65,7 +48,6 @@ let FeedbackAwareUpdateModelCommand = class FeedbackAwareUpdateModelCommand exte
65
48
  const feedbackCommands = this.getFeedbackCommands(this.actionHandlerRegistry);
66
49
  feedbackCommands.forEach(command => command.execute(tempContext));
67
50
  }
68
- this.modelRootListeners.forEach(listener => listener.modelRootChanged(newRoot));
69
51
  return super.performUpdate(oldRoot, newRoot, context);
70
52
  }
71
53
  getFeedbackCommands(registry) {
@@ -100,16 +82,10 @@ __decorate([
100
82
  (0, inversify_1.optional)(),
101
83
  __metadata("design:type", Object)
102
84
  ], FeedbackAwareUpdateModelCommand.prototype, "feedbackActionDispatcher", void 0);
103
- __decorate([
104
- (0, inversify_1.multiInject)(_glsp_sprotty_1.TYPES.SModelRootListener),
105
- (0, inversify_1.optional)(),
106
- __metadata("design:type", Array)
107
- ], FeedbackAwareUpdateModelCommand.prototype, "modelRootListeners", void 0);
108
- FeedbackAwareUpdateModelCommand = __decorate([
85
+ exports.FeedbackAwareUpdateModelCommand = FeedbackAwareUpdateModelCommand = __decorate([
109
86
  (0, inversify_1.injectable)(),
110
87
  __param(0, (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.Action)),
111
88
  __param(1, (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.ActionHandlerRegistryProvider)),
112
89
  __metadata("design:paramtypes", [Object, Function])
113
90
  ], FeedbackAwareUpdateModelCommand);
114
- exports.FeedbackAwareUpdateModelCommand = FeedbackAwareUpdateModelCommand;
115
91
  //# sourceMappingURL=update-model-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-model-command.js","sourceRoot":"","sources":["../../../src/base/feedback/update-model-command.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAAyD;AACzD,iDAeuB;AAIvB;;;;GAIG;AAEI,IAAM,+BAA+B,6CAArC,MAAM,+BAAgC,SAAQ,kCAAkB;IAUnE,YAC0B,MAAyB,EAE/C,6BAAmE;QAEnE,KAAK,iBAAG,OAAO,EAAE,IAAI,IAAK,MAAM,EAAG,CAAC;QACpC,6BAA6B,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,qBAAqB,GAAG,QAAQ,CAAC,CAAC,CAAC;IAC9F,CAAC;IAEkB,aAAa,CAAC,OAAmB,EAAE,OAAmB,EAAE,OAAgC;QACvG,IAAI,IAAI,CAAC,wBAAwB,IAAI,IAAI,CAAC,qBAAqB,EAAE;YAC7D,mEAAmE;YACnE,uEAAuE;YACvE,MAAM,WAAW,mCACV,OAAO,KACV,IAAI,EAAE,OAAO,GAChB,CAAC;YAEF,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;YAC9E,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;SACrE;QAED,OAAO,KAAK,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAES,mBAAmB,CAAC,QAA+B;QACzD,MAAM,MAAM,GAAc,EAAE,CAAC;QAC7B,IAAI,CAAC,wBAAwB,CAAC,qBAAqB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACnE,MAAM,QAAQ,GAAG,QAAQ;iBACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC;iBAChB,MAAM,CAAuB,IAAA,2BAAW,EAAC,oCAAoB,CAAC,CAAC;iBAC/D,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;QAC7B,CAAC,CAAC,CAAC;QACH,uCAAuC;QACvC,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC;IAES,WAAW,CAAC,OAAiC;;QACnD,OAAO,MAAA,OAAO,CAAC,QAAQ,mCAAI,CAAC,CAAC;IACjC,CAAC;IAED,2HAA2H;IAC3H,4CAA4C;IACzB,gBAAgB,CAAC,IAAyB,EAAE,IAAgB,EAAE,OAAgC;QAC7G,MAAM,UAAU,GAAG,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/D,OAAO,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,YAAY,mCAAmB,CAAC,CAAC,CAAC;IACvF,CAAC;CACJ,CAAA;AAxDa;IADT,IAAA,kBAAM,EAAC,qBAAK,CAAC,OAAO,CAAC;;+DACI;AAIhB;IAFT,IAAA,kBAAM,EAAC,qBAAK,CAAC,yBAAyB,CAAC;IACvC,IAAA,oBAAQ,GAAE;;iFACmD;0CANrD,+BAA+B;IAD3C,IAAA,sBAAU,GAAE;IAYJ,WAAA,IAAA,kBAAM,EAAC,qBAAK,CAAC,MAAM,CAAC,CAAA;IACpB,WAAA,IAAA,kBAAM,EAAC,qBAAK,CAAC,6BAA6B,CAAC,CAAA;;GAZvC,+BAA+B,CA0D3C"}
@@ -30,4 +30,4 @@ export declare namespace FocusStateChangedAction {
30
30
  function is(object: any): object is FocusStateChangedAction;
31
31
  function create(hasFocus?: boolean): FocusStateChangedAction;
32
32
  }
33
- //# sourceMappingURL=focus-change-action.d.ts.map
33
+ //# sourceMappingURL=focus-state-change-action.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-state-change-action.d.ts","sourceRoot":"","sources":["../../../src/base/focus/focus-state-change-action.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EAAE,MAAM,EAAkB,MAAM,eAAe,CAAC;AAEvD;;;GAGG;AACH,MAAM,WAAW,uBAAwB,SAAQ,MAAM;IACnD,IAAI,EAAE,OAAO,uBAAuB,CAAC,IAAI,CAAC;IAC1C;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,yBAAiB,uBAAuB,CAAC;IAC9B,MAAM,IAAI,sBAAsB,CAAC;IAExC,SAAgB,EAAE,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,uBAAuB,CAEjE;IAED,SAAgB,MAAM,CAAC,QAAQ,UAAO,GAAG,uBAAuB,CAK/D;CACJ"}
@@ -31,5 +31,5 @@ var FocusStateChangedAction;
31
31
  };
32
32
  }
33
33
  FocusStateChangedAction.create = create;
34
- })(FocusStateChangedAction = exports.FocusStateChangedAction || (exports.FocusStateChangedAction = {}));
35
- //# sourceMappingURL=focus-change-action.js.map
34
+ })(FocusStateChangedAction || (exports.FocusStateChangedAction = FocusStateChangedAction = {}));
35
+ //# sourceMappingURL=focus-state-change-action.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-state-change-action.js","sourceRoot":"","sources":["../../../src/base/focus/focus-state-change-action.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,iDAAuD;AAcvD,IAAiB,uBAAuB,CAavC;AAbD,WAAiB,uBAAuB;IACvB,4BAAI,GAAG,mBAAmB,CAAC;IAExC,SAAgB,EAAE,CAAC,MAAW;QAC1B,OAAO,sBAAM,CAAC,OAAO,CAAC,MAAM,EAAE,wBAAA,IAAI,CAAC,IAAI,IAAA,8BAAc,EAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC9E,CAAC;IAFe,0BAAE,KAEjB,CAAA;IAED,SAAgB,MAAM,CAAC,QAAQ,GAAG,IAAI;QAClC,OAAO;YACH,IAAI,EAAE,wBAAA,IAAI;YACV,QAAQ;SACX,CAAC;IACN,CAAC;IALe,8BAAM,SAKrB,CAAA;AACL,CAAC,EAbgB,uBAAuB,uCAAvB,uBAAuB,QAavC"}
@@ -1,4 +1,4 @@
1
- import { Action, IActionHandler, ICommand, ViewerOptions } from '../glsp-sprotty/index';
1
+ import { Action, IActionHandler, ICommand, ViewerOptions } from '../../glsp-sprotty/index';
2
2
  export declare class FocusTracker implements IActionHandler {
3
3
  protected inActiveCssClass: string;
4
4
  protected _hasFocus: boolean;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-tracker.d.ts","sourceRoot":"","sources":["../../../src/base/focus/focus-tracker.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAS,aAAa,EAAE,MAAM,eAAe,CAAC;AAGvF,qBACa,YAAa,YAAW,cAAc;IAC/C,SAAS,CAAC,gBAAgB,SAAc;IACxC,SAAS,CAAC,SAAS,UAAQ;IAEE,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC;IAE9D,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,GAAG,QAAQ;CAgBnD"}
@@ -26,9 +26,9 @@ exports.FocusTracker = void 0;
26
26
  * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
27
27
  ********************************************************************************/
28
28
  const inversify_1 = require("inversify");
29
- const _glsp_sprotty_1 = require("../glsp-sprotty/index");
30
- const focus_change_action_1 = require("./actions/focus-change-action");
31
- let FocusTracker = class FocusTracker {
29
+ const _glsp_sprotty_1 = require("../../glsp-sprotty/index");
30
+ const focus_state_change_action_1 = require("./focus-state-change-action");
31
+ let FocusTracker = exports.FocusTracker = class FocusTracker {
32
32
  constructor() {
33
33
  this.inActiveCssClass = 'inactive';
34
34
  this._hasFocus = true;
@@ -37,7 +37,7 @@ let FocusTracker = class FocusTracker {
37
37
  return this._hasFocus;
38
38
  }
39
39
  handle(action) {
40
- if (focus_change_action_1.FocusStateChangedAction.is(action)) {
40
+ if (focus_state_change_action_1.FocusStateChangedAction.is(action)) {
41
41
  this._hasFocus = action.hasFocus;
42
42
  const placeholder = document.getElementById(this.options.baseDiv);
43
43
  if (!placeholder) {
@@ -58,8 +58,7 @@ __decorate([
58
58
  (0, inversify_1.inject)(_glsp_sprotty_1.TYPES.ViewerOptions),
59
59
  __metadata("design:type", Object)
60
60
  ], FocusTracker.prototype, "options", void 0);
61
- FocusTracker = __decorate([
61
+ exports.FocusTracker = FocusTracker = __decorate([
62
62
  (0, inversify_1.injectable)()
63
63
  ], FocusTracker);
64
- exports.FocusTracker = FocusTracker;
65
64
  //# sourceMappingURL=focus-tracker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-tracker.js","sourceRoot":"","sources":["../../../src/base/focus/focus-tracker.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAA+C;AAC/C,iDAAuF;AACvF,2EAAsE;AAG/D,IAAM,YAAY,0BAAlB,MAAM,YAAY;IAAlB;QACO,qBAAgB,GAAG,UAAU,CAAC;QAC9B,cAAS,GAAG,IAAI,CAAC;IAwB/B,CAAC;IApBG,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,MAAM,CAAC,MAAc;QACjB,IAAI,mDAAuB,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE;YACpC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,MAAM,WAAW,GAAG,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAClE,IAAI,CAAC,WAAW,EAAE;gBACd,OAAO;aACV;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,IAAI,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE;oBACvD,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;iBACvD;aACJ;iBAAM;gBACH,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;aACpD;SACJ;IACL,CAAC;CACJ,CAAA;AAtB0C;IAAtC,IAAA,kBAAM,EAAC,qBAAK,CAAC,aAAa,CAAC;;6CAAkC;uBAJrD,YAAY;IADxB,IAAA,sBAAU,GAAE;GACA,YAAY,CA0BxB"}