@eclipse-glsp/client 0.9.0-next.c5944e10

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 (602) hide show
  1. package/LICENSE +277 -0
  2. package/README.md +12 -0
  3. package/css/command-palette.css +58 -0
  4. package/css/decoration.css +37 -0
  5. package/css/glsp-sprotty.css +106 -0
  6. package/css/tool-palette.css +138 -0
  7. package/lib/base/action-dispatcher.d.ts +25 -0
  8. package/lib/base/action-dispatcher.d.ts.map +1 -0
  9. package/lib/base/action-dispatcher.js +110 -0
  10. package/lib/base/action-dispatcher.js.map +1 -0
  11. package/lib/base/actions/context-actions.d.ts +36 -0
  12. package/lib/base/actions/context-actions.d.ts.map +1 -0
  13. package/lib/base/actions/context-actions.js +45 -0
  14. package/lib/base/actions/context-actions.js.map +1 -0
  15. package/lib/base/actions/edit-mode-action.d.ts +13 -0
  16. package/lib/base/actions/edit-mode-action.d.ts.map +1 -0
  17. package/lib/base/actions/edit-mode-action.js +52 -0
  18. package/lib/base/actions/edit-mode-action.js.map +1 -0
  19. package/lib/base/actions/edit-validation-actions.d.ts +78 -0
  20. package/lib/base/actions/edit-validation-actions.d.ts.map +1 -0
  21. package/lib/base/actions/edit-validation-actions.js +77 -0
  22. package/lib/base/actions/edit-validation-actions.js.map +1 -0
  23. package/lib/base/actions/focus-change-action.d.ts +24 -0
  24. package/lib/base/actions/focus-change-action.d.ts.map +1 -0
  25. package/lib/base/actions/focus-change-action.js +16 -0
  26. package/lib/base/actions/focus-change-action.js.map +1 -0
  27. package/lib/base/args.d.ts +24 -0
  28. package/lib/base/args.d.ts.map +1 -0
  29. package/lib/base/args.js +8 -0
  30. package/lib/base/args.js.map +1 -0
  31. package/lib/base/auto-complete/auto-complete-actions.d.ts +21 -0
  32. package/lib/base/auto-complete/auto-complete-actions.d.ts.map +1 -0
  33. package/lib/base/auto-complete/auto-complete-actions.js +8 -0
  34. package/lib/base/auto-complete/auto-complete-actions.js.map +1 -0
  35. package/lib/base/auto-complete/auto-complete-widget.d.ts +88 -0
  36. package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -0
  37. package/lib/base/auto-complete/auto-complete-widget.js +233 -0
  38. package/lib/base/auto-complete/auto-complete-widget.js.map +1 -0
  39. package/lib/base/auto-complete/validation-decorator.d.ts +47 -0
  40. package/lib/base/auto-complete/validation-decorator.d.ts.map +1 -0
  41. package/lib/base/auto-complete/validation-decorator.js +113 -0
  42. package/lib/base/auto-complete/validation-decorator.js.map +1 -0
  43. package/lib/base/command-stack.d.ts +7 -0
  44. package/lib/base/command-stack.d.ts.map +1 -0
  45. package/lib/base/command-stack.js +49 -0
  46. package/lib/base/command-stack.js.map +1 -0
  47. package/lib/base/di.config.d.ts +28 -0
  48. package/lib/base/di.config.d.ts.map +1 -0
  49. package/lib/base/di.config.js +81 -0
  50. package/lib/base/di.config.js.map +1 -0
  51. package/lib/base/drag-aware-mouse-listener.d.ts +36 -0
  52. package/lib/base/drag-aware-mouse-listener.d.ts.map +1 -0
  53. package/lib/base/drag-aware-mouse-listener.js +66 -0
  54. package/lib/base/drag-aware-mouse-listener.js.map +1 -0
  55. package/lib/base/editor-context.d.ts +46 -0
  56. package/lib/base/editor-context.d.ts.map +1 -0
  57. package/lib/base/editor-context.js +110 -0
  58. package/lib/base/editor-context.js.map +1 -0
  59. package/lib/base/focus-tracker.d.ts +9 -0
  60. package/lib/base/focus-tracker.d.ts.map +1 -0
  61. package/lib/base/focus-tracker.js +65 -0
  62. package/lib/base/focus-tracker.js.map +1 -0
  63. package/lib/base/model/model-registry.d.ts +5 -0
  64. package/lib/base/model/model-registry.d.ts.map +1 -0
  65. package/lib/base/model/model-registry.js +43 -0
  66. package/lib/base/model/model-registry.js.map +1 -0
  67. package/lib/base/model/update-model-command.d.ts +26 -0
  68. package/lib/base/model/update-model-command.d.ts.map +1 -0
  69. package/lib/base/model/update-model-command.js +132 -0
  70. package/lib/base/model/update-model-command.js.map +1 -0
  71. package/lib/base/model-initialization-constraint.d.ts +39 -0
  72. package/lib/base/model-initialization-constraint.d.ts.map +1 -0
  73. package/lib/base/model-initialization-constraint.js +106 -0
  74. package/lib/base/model-initialization-constraint.js.map +1 -0
  75. package/lib/base/operations/operation.d.ts +135 -0
  76. package/lib/base/operations/operation.d.ts.map +1 -0
  77. package/lib/base/operations/operation.js +182 -0
  78. package/lib/base/operations/operation.js.map +1 -0
  79. package/lib/base/selection-clearing-mouse-listener.d.ts +17 -0
  80. package/lib/base/selection-clearing-mouse-listener.d.ts.map +1 -0
  81. package/lib/base/selection-clearing-mouse-listener.js +55 -0
  82. package/lib/base/selection-clearing-mouse-listener.js.map +1 -0
  83. package/lib/base/source-uri-aware.d.ts +20 -0
  84. package/lib/base/source-uri-aware.d.ts.map +1 -0
  85. package/lib/base/source-uri-aware.js +26 -0
  86. package/lib/base/source-uri-aware.js.map +1 -0
  87. package/lib/base/tool-manager/glsp-tool-manager.d.ts +22 -0
  88. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -0
  89. package/lib/base/tool-manager/glsp-tool-manager.js +110 -0
  90. package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -0
  91. package/lib/base/types.d.ts +38 -0
  92. package/lib/base/types.d.ts.map +1 -0
  93. package/lib/base/types.js +41 -0
  94. package/lib/base/types.js.map +1 -0
  95. package/lib/base/view/view-registry.d.ts +5 -0
  96. package/lib/base/view/view-registry.d.ts.map +1 -0
  97. package/lib/base/view/view-registry.js +43 -0
  98. package/lib/base/view/view-registry.js.map +1 -0
  99. package/lib/features/change-bounds/model.d.ts +38 -0
  100. package/lib/features/change-bounds/model.d.ts.map +1 -0
  101. package/lib/features/change-bounds/model.js +61 -0
  102. package/lib/features/change-bounds/model.js.map +1 -0
  103. package/lib/features/change-bounds/movement-restrictor.d.ts +14 -0
  104. package/lib/features/change-bounds/movement-restrictor.d.ts.map +1 -0
  105. package/lib/features/change-bounds/movement-restrictor.js +90 -0
  106. package/lib/features/change-bounds/movement-restrictor.js.map +1 -0
  107. package/lib/features/change-bounds/snap.d.ts +7 -0
  108. package/lib/features/change-bounds/snap.d.ts.map +1 -0
  109. package/lib/features/change-bounds/snap.js +44 -0
  110. package/lib/features/change-bounds/snap.js.map +1 -0
  111. package/lib/features/command-palette/command-palette-tool.d.ts +12 -0
  112. package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -0
  113. package/lib/features/command-palette/command-palette-tool.js +63 -0
  114. package/lib/features/command-palette/command-palette-tool.js.map +1 -0
  115. package/lib/features/command-palette/di.config.d.ts +20 -0
  116. package/lib/features/command-palette/di.config.d.ts.map +1 -0
  117. package/lib/features/command-palette/di.config.js +33 -0
  118. package/lib/features/command-palette/di.config.js.map +1 -0
  119. package/lib/features/command-palette/server-command-palette-provider.d.ts +15 -0
  120. package/lib/features/command-palette/server-command-palette-provider.d.ts.map +1 -0
  121. package/lib/features/command-palette/server-command-palette-provider.js +66 -0
  122. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -0
  123. package/lib/features/context-menu/delete-element-context-menu.d.ts +8 -0
  124. package/lib/features/context-menu/delete-element-context-menu.d.ts.map +1 -0
  125. package/lib/features/context-menu/delete-element-context-menu.js +55 -0
  126. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -0
  127. package/lib/features/context-menu/di.config.d.ts +19 -0
  128. package/lib/features/context-menu/di.config.d.ts.map +1 -0
  129. package/lib/features/context-menu/di.config.js +36 -0
  130. package/lib/features/context-menu/di.config.js.map +1 -0
  131. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts +9 -0
  132. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.d.ts.map +1 -0
  133. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js +65 -0
  134. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -0
  135. package/lib/features/context-menu/server-context-menu-provider.d.ts +13 -0
  136. package/lib/features/context-menu/server-context-menu-provider.d.ts.map +1 -0
  137. package/lib/features/context-menu/server-context-menu-provider.js +63 -0
  138. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -0
  139. package/lib/features/copy-paste/copy-paste-actions.d.ts +50 -0
  140. package/lib/features/copy-paste/copy-paste-actions.d.ts.map +1 -0
  141. package/lib/features/copy-paste/copy-paste-actions.js +58 -0
  142. package/lib/features/copy-paste/copy-paste-actions.js.map +1 -0
  143. package/lib/features/copy-paste/copy-paste-context-menu.d.ts +32 -0
  144. package/lib/features/copy-paste/copy-paste-context-menu.d.ts.map +1 -0
  145. package/lib/features/copy-paste/copy-paste-context-menu.js +151 -0
  146. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -0
  147. package/lib/features/copy-paste/copy-paste-handler.d.ts +50 -0
  148. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -0
  149. package/lib/features/copy-paste/copy-paste-handler.js +149 -0
  150. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -0
  151. package/lib/features/copy-paste/di.config.d.ts +24 -0
  152. package/lib/features/copy-paste/di.config.d.ts.map +1 -0
  153. package/lib/features/copy-paste/di.config.js +40 -0
  154. package/lib/features/copy-paste/di.config.js.map +1 -0
  155. package/lib/features/decoration/decoration-placer.d.ts +6 -0
  156. package/lib/features/decoration/decoration-placer.d.ts.map +1 -0
  157. package/lib/features/decoration/decoration-placer.js +47 -0
  158. package/lib/features/decoration/decoration-placer.js.map +1 -0
  159. package/lib/features/decoration/di.config.d.ts +20 -0
  160. package/lib/features/decoration/di.config.d.ts.map +1 -0
  161. package/lib/features/decoration/di.config.js +27 -0
  162. package/lib/features/decoration/di.config.js.map +1 -0
  163. package/lib/features/edit-label/di.config.d.ts +19 -0
  164. package/lib/features/edit-label/di.config.d.ts.map +1 -0
  165. package/lib/features/edit-label/di.config.js +30 -0
  166. package/lib/features/edit-label/di.config.js.map +1 -0
  167. package/lib/features/edit-label/edit-label-tool.d.ts +13 -0
  168. package/lib/features/edit-label/edit-label-tool.d.ts.map +1 -0
  169. package/lib/features/edit-label/edit-label-tool.js +55 -0
  170. package/lib/features/edit-label/edit-label-tool.js.map +1 -0
  171. package/lib/features/edit-label/edit-label-validator.d.ts +20 -0
  172. package/lib/features/edit-label/edit-label-validator.d.ts.map +1 -0
  173. package/lib/features/edit-label/edit-label-validator.js +111 -0
  174. package/lib/features/edit-label/edit-label-validator.js.map +1 -0
  175. package/lib/features/hints/di.config.d.ts +19 -0
  176. package/lib/features/hints/di.config.d.ts.map +1 -0
  177. package/lib/features/hints/di.config.js +30 -0
  178. package/lib/features/hints/di.config.js.map +1 -0
  179. package/lib/features/hints/model.d.ts +26 -0
  180. package/lib/features/hints/model.d.ts.map +1 -0
  181. package/lib/features/hints/model.js +14 -0
  182. package/lib/features/hints/model.js.map +1 -0
  183. package/lib/features/hints/request-type-hints-action.d.ts +32 -0
  184. package/lib/features/hints/request-type-hints-action.d.ts.map +1 -0
  185. package/lib/features/hints/request-type-hints-action.js +26 -0
  186. package/lib/features/hints/request-type-hints-action.js.map +1 -0
  187. package/lib/features/hints/type-hints.d.ts +75 -0
  188. package/lib/features/hints/type-hints.d.ts.map +1 -0
  189. package/lib/features/hints/type-hints.js +199 -0
  190. package/lib/features/hints/type-hints.js.map +1 -0
  191. package/lib/features/hover/di.config.d.ts +19 -0
  192. package/lib/features/hover/di.config.d.ts.map +1 -0
  193. package/lib/features/hover/di.config.js +46 -0
  194. package/lib/features/hover/di.config.js.map +1 -0
  195. package/lib/features/hover/hover.d.ts +11 -0
  196. package/lib/features/hover/hover.d.ts.map +1 -0
  197. package/lib/features/hover/hover.js +88 -0
  198. package/lib/features/hover/hover.js.map +1 -0
  199. package/lib/features/layout/di.config.d.ts +19 -0
  200. package/lib/features/layout/di.config.d.ts.map +1 -0
  201. package/lib/features/layout/di.config.js +26 -0
  202. package/lib/features/layout/di.config.js.map +1 -0
  203. package/lib/features/layout/layout-commands.d.ts +137 -0
  204. package/lib/features/layout/layout-commands.d.ts.map +1 -0
  205. package/lib/features/layout/layout-commands.js +411 -0
  206. package/lib/features/layout/layout-commands.js.map +1 -0
  207. package/lib/features/layout/layout-commands.spec.d.ts +18 -0
  208. package/lib/features/layout/layout-commands.spec.d.ts.map +1 -0
  209. package/lib/features/layout/layout-commands.spec.js +297 -0
  210. package/lib/features/layout/layout-commands.spec.js.map +1 -0
  211. package/lib/features/model-source-watcher/di.config.d.ts +19 -0
  212. package/lib/features/model-source-watcher/di.config.d.ts.map +1 -0
  213. package/lib/features/model-source-watcher/di.config.js +26 -0
  214. package/lib/features/model-source-watcher/di.config.js.map +1 -0
  215. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts +23 -0
  216. package/lib/features/model-source-watcher/model-source-changed-action-handler.d.ts.map +1 -0
  217. package/lib/features/model-source-watcher/model-source-changed-action-handler.js +83 -0
  218. package/lib/features/model-source-watcher/model-source-changed-action-handler.js.map +1 -0
  219. package/lib/features/model-source-watcher/model-source-changed-action.d.ts +24 -0
  220. package/lib/features/model-source-watcher/model-source-changed-action.d.ts.map +1 -0
  221. package/lib/features/model-source-watcher/model-source-changed-action.js +16 -0
  222. package/lib/features/model-source-watcher/model-source-changed-action.js.map +1 -0
  223. package/lib/features/mouse-tool/di.config.d.ts +19 -0
  224. package/lib/features/mouse-tool/di.config.d.ts.map +1 -0
  225. package/lib/features/mouse-tool/di.config.js +28 -0
  226. package/lib/features/mouse-tool/di.config.js.map +1 -0
  227. package/lib/features/mouse-tool/mouse-tool.d.ts +19 -0
  228. package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -0
  229. package/lib/features/mouse-tool/mouse-tool.js +140 -0
  230. package/lib/features/mouse-tool/mouse-tool.js.map +1 -0
  231. package/lib/features/navigation/di.config.d.ts +18 -0
  232. package/lib/features/navigation/di.config.d.ts.map +1 -0
  233. package/lib/features/navigation/di.config.js +31 -0
  234. package/lib/features/navigation/di.config.js.map +1 -0
  235. package/lib/features/navigation/navigation-action-handler.d.ts +117 -0
  236. package/lib/features/navigation/navigation-action-handler.d.ts.map +1 -0
  237. package/lib/features/navigation/navigation-action-handler.js +293 -0
  238. package/lib/features/navigation/navigation-action-handler.js.map +1 -0
  239. package/lib/features/navigation/navigation-target-resolver.d.ts +55 -0
  240. package/lib/features/navigation/navigation-target-resolver.d.ts.map +1 -0
  241. package/lib/features/navigation/navigation-target-resolver.js +157 -0
  242. package/lib/features/navigation/navigation-target-resolver.js.map +1 -0
  243. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +18 -0
  244. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +1 -0
  245. package/lib/features/navigation/navigation-target-resolver.spec.js +54 -0
  246. package/lib/features/navigation/navigation-target-resolver.spec.js.map +1 -0
  247. package/lib/features/rank/model.d.ts +22 -0
  248. package/lib/features/rank/model.d.ts.map +1 -0
  249. package/lib/features/rank/model.js +28 -0
  250. package/lib/features/rank/model.js.map +1 -0
  251. package/lib/features/reconnect/model.d.ts +30 -0
  252. package/lib/features/reconnect/model.d.ts.map +1 -0
  253. package/lib/features/reconnect/model.js +66 -0
  254. package/lib/features/reconnect/model.js.map +1 -0
  255. package/lib/features/save/di.config.d.ts +23 -0
  256. package/lib/features/save/di.config.d.ts.map +1 -0
  257. package/lib/features/save/di.config.js +29 -0
  258. package/lib/features/save/di.config.js.map +1 -0
  259. package/lib/features/save/model.d.ts +22 -0
  260. package/lib/features/save/model.d.ts.map +1 -0
  261. package/lib/features/save/model.js +9 -0
  262. package/lib/features/save/model.js.map +1 -0
  263. package/lib/features/save/save.d.ts +27 -0
  264. package/lib/features/save/save.d.ts.map +1 -0
  265. package/lib/features/save/save.js +42 -0
  266. package/lib/features/save/save.js.map +1 -0
  267. package/lib/features/select/di.config.d.ts +19 -0
  268. package/lib/features/select/di.config.d.ts.map +1 -0
  269. package/lib/features/select/di.config.js +35 -0
  270. package/lib/features/select/di.config.js.map +1 -0
  271. package/lib/features/select/select-feedback-action.d.ts +34 -0
  272. package/lib/features/select/select-feedback-action.d.ts.map +1 -0
  273. package/lib/features/select/select-feedback-action.js +97 -0
  274. package/lib/features/select/select-feedback-action.js.map +1 -0
  275. package/lib/features/select/select-mouse-listener.d.ts +25 -0
  276. package/lib/features/select/select-mouse-listener.d.ts.map +1 -0
  277. package/lib/features/select/select-mouse-listener.js +32 -0
  278. package/lib/features/select/select-mouse-listener.js.map +1 -0
  279. package/lib/features/select/selection-service.d.ts +52 -0
  280. package/lib/features/select/selection-service.d.ts.map +1 -0
  281. package/lib/features/select/selection-service.js +226 -0
  282. package/lib/features/select/selection-service.js.map +1 -0
  283. package/lib/features/select/selection-service.spec.d.ts +2 -0
  284. package/lib/features/select/selection-service.spec.d.ts.map +1 -0
  285. package/lib/features/select/selection-service.spec.js +360 -0
  286. package/lib/features/select/selection-service.spec.js.map +1 -0
  287. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +47 -0
  288. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -0
  289. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +236 -0
  290. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -0
  291. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +43 -0
  292. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -0
  293. package/lib/features/tool-feedback/creation-tool-feedback.js +181 -0
  294. package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -0
  295. package/lib/features/tool-feedback/css-feedback.d.ts +32 -0
  296. package/lib/features/tool-feedback/css-feedback.d.ts.map +1 -0
  297. package/lib/features/tool-feedback/css-feedback.js +111 -0
  298. package/lib/features/tool-feedback/css-feedback.js.map +1 -0
  299. package/lib/features/tool-feedback/di.config.d.ts +19 -0
  300. package/lib/features/tool-feedback/di.config.d.ts.map +1 -0
  301. package/lib/features/tool-feedback/di.config.js +53 -0
  302. package/lib/features/tool-feedback/di.config.js.map +1 -0
  303. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +82 -0
  304. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -0
  305. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +315 -0
  306. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -0
  307. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts +50 -0
  308. package/lib/features/tool-feedback/feedback-action-dispatcher.d.ts.map +1 -0
  309. package/lib/features/tool-feedback/feedback-action-dispatcher.js +75 -0
  310. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -0
  311. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts +32 -0
  312. package/lib/features/tool-feedback/marquee-tool-feedback.d.ts.map +1 -0
  313. package/lib/features/tool-feedback/marquee-tool-feedback.js +111 -0
  314. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -0
  315. package/lib/features/tool-feedback/model.d.ts +23 -0
  316. package/lib/features/tool-feedback/model.d.ts.map +1 -0
  317. package/lib/features/tool-feedback/model.js +34 -0
  318. package/lib/features/tool-feedback/model.js.map +1 -0
  319. package/lib/features/tool-feedback/view.d.ts +16 -0
  320. package/lib/features/tool-feedback/view.d.ts.map +1 -0
  321. package/lib/features/tool-feedback/view.js +81 -0
  322. package/lib/features/tool-feedback/view.js.map +1 -0
  323. package/lib/features/tool-palette/di.config.d.ts +20 -0
  324. package/lib/features/tool-palette/di.config.d.ts.map +1 -0
  325. package/lib/features/tool-palette/di.config.js +29 -0
  326. package/lib/features/tool-palette/di.config.js.map +1 -0
  327. package/lib/features/tool-palette/palette-item.d.ts +27 -0
  328. package/lib/features/tool-palette/palette-item.d.ts.map +1 -0
  329. package/lib/features/tool-palette/palette-item.js +37 -0
  330. package/lib/features/tool-palette/palette-item.js.map +1 -0
  331. package/lib/features/tool-palette/tool-palette.d.ts +56 -0
  332. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -0
  333. package/lib/features/tool-palette/tool-palette.js +401 -0
  334. package/lib/features/tool-palette/tool-palette.js.map +1 -0
  335. package/lib/features/tools/base-glsp-tool.d.ts +20 -0
  336. package/lib/features/tools/base-glsp-tool.d.ts.map +1 -0
  337. package/lib/features/tools/base-glsp-tool.js +70 -0
  338. package/lib/features/tools/base-glsp-tool.js.map +1 -0
  339. package/lib/features/tools/change-bounds-tool.d.ts +71 -0
  340. package/lib/features/tools/change-bounds-tool.d.ts.map +1 -0
  341. package/lib/features/tools/change-bounds-tool.js +371 -0
  342. package/lib/features/tools/change-bounds-tool.js.map +1 -0
  343. package/lib/features/tools/delete-tool.d.ts +36 -0
  344. package/lib/features/tools/delete-tool.d.ts.map +1 -0
  345. package/lib/features/tools/delete-tool.js +129 -0
  346. package/lib/features/tools/delete-tool.js.map +1 -0
  347. package/lib/features/tools/di.config.d.ts +23 -0
  348. package/lib/features/tools/di.config.d.ts.map +1 -0
  349. package/lib/features/tools/di.config.js +55 -0
  350. package/lib/features/tools/di.config.js.map +1 -0
  351. package/lib/features/tools/edge-creation-tool.d.ts +37 -0
  352. package/lib/features/tools/edge-creation-tool.d.ts.map +1 -0
  353. package/lib/features/tools/edge-creation-tool.js +158 -0
  354. package/lib/features/tools/edge-creation-tool.js.map +1 -0
  355. package/lib/features/tools/edge-edit-tool.d.ts +50 -0
  356. package/lib/features/tools/edge-edit-tool.d.ts.map +1 -0
  357. package/lib/features/tools/edge-edit-tool.js +281 -0
  358. package/lib/features/tools/edge-edit-tool.js.map +1 -0
  359. package/lib/features/tools/marquee-mouse-tool.d.ts +37 -0
  360. package/lib/features/tools/marquee-mouse-tool.d.ts.map +1 -0
  361. package/lib/features/tools/marquee-mouse-tool.js +226 -0
  362. package/lib/features/tools/marquee-mouse-tool.js.map +1 -0
  363. package/lib/features/tools/marquee-tool.d.ts +14 -0
  364. package/lib/features/tools/marquee-tool.d.ts.map +1 -0
  365. package/lib/features/tools/marquee-tool.js +69 -0
  366. package/lib/features/tools/marquee-tool.js.map +1 -0
  367. package/lib/features/tools/model.d.ts +22 -0
  368. package/lib/features/tools/model.d.ts.map +1 -0
  369. package/lib/features/tools/model.js +24 -0
  370. package/lib/features/tools/model.js.map +1 -0
  371. package/lib/features/tools/node-creation-tool.d.ts +26 -0
  372. package/lib/features/tools/node-creation-tool.d.ts.map +1 -0
  373. package/lib/features/tools/node-creation-tool.js +117 -0
  374. package/lib/features/tools/node-creation-tool.js.map +1 -0
  375. package/lib/features/tools/view.d.ts +7 -0
  376. package/lib/features/tools/view.d.ts.map +1 -0
  377. package/lib/features/tools/view.js +40 -0
  378. package/lib/features/tools/view.js.map +1 -0
  379. package/lib/features/undo-redo/model.d.ts +27 -0
  380. package/lib/features/undo-redo/model.d.ts.map +1 -0
  381. package/lib/features/undo-redo/model.js +18 -0
  382. package/lib/features/undo-redo/model.js.map +1 -0
  383. package/lib/features/validation/di.config.d.ts +25 -0
  384. package/lib/features/validation/di.config.d.ts.map +1 -0
  385. package/lib/features/validation/di.config.js +44 -0
  386. package/lib/features/validation/di.config.js.map +1 -0
  387. package/lib/features/validation/issue-marker.d.ts +43 -0
  388. package/lib/features/validation/issue-marker.d.ts.map +1 -0
  389. package/lib/features/validation/issue-marker.js +89 -0
  390. package/lib/features/validation/issue-marker.js.map +1 -0
  391. package/lib/features/validation/marker-navigator.d.ts +55 -0
  392. package/lib/features/validation/marker-navigator.d.ts.map +1 -0
  393. package/lib/features/validation/marker-navigator.js +247 -0
  394. package/lib/features/validation/marker-navigator.js.map +1 -0
  395. package/lib/features/validation/marker-navigator.spec.d.ts +18 -0
  396. package/lib/features/validation/marker-navigator.spec.d.ts.map +1 -0
  397. package/lib/features/validation/marker-navigator.spec.js +177 -0
  398. package/lib/features/validation/marker-navigator.spec.js.map +1 -0
  399. package/lib/features/validation/validate.d.ts +111 -0
  400. package/lib/features/validation/validate.d.ts.map +1 -0
  401. package/lib/features/validation/validate.js +290 -0
  402. package/lib/features/validation/validate.js.map +1 -0
  403. package/lib/features/viewport/di.config.d.ts +19 -0
  404. package/lib/features/viewport/di.config.d.ts.map +1 -0
  405. package/lib/features/viewport/di.config.js +34 -0
  406. package/lib/features/viewport/di.config.js.map +1 -0
  407. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts +7 -0
  408. package/lib/features/viewport/glsp-scroll-mouse-listener.d.ts.map +1 -0
  409. package/lib/features/viewport/glsp-scroll-mouse-listener.js +54 -0
  410. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -0
  411. package/lib/index.d.ts +110 -0
  412. package/lib/index.d.ts.map +1 -0
  413. package/lib/index.js +144 -0
  414. package/lib/index.js.map +1 -0
  415. package/lib/lib/model.d.ts +24 -0
  416. package/lib/lib/model.d.ts.map +1 -0
  417. package/lib/lib/model.js +33 -0
  418. package/lib/lib/model.js.map +1 -0
  419. package/lib/model-source/glsp-diagram-server.d.ts +38 -0
  420. package/lib/model-source/glsp-diagram-server.d.ts.map +1 -0
  421. package/lib/model-source/glsp-diagram-server.js +88 -0
  422. package/lib/model-source/glsp-diagram-server.js.map +1 -0
  423. package/lib/model-source/glsp-server-status.d.ts +30 -0
  424. package/lib/model-source/glsp-server-status.d.ts.map +1 -0
  425. package/lib/model-source/glsp-server-status.js +44 -0
  426. package/lib/model-source/glsp-server-status.js.map +1 -0
  427. package/lib/utils/argument-utils.d.ts +50 -0
  428. package/lib/utils/argument-utils.d.ts.map +1 -0
  429. package/lib/utils/argument-utils.js +112 -0
  430. package/lib/utils/argument-utils.js.map +1 -0
  431. package/lib/utils/array-utils.d.ts +28 -0
  432. package/lib/utils/array-utils.d.ts.map +1 -0
  433. package/lib/utils/array-utils.js +56 -0
  434. package/lib/utils/array-utils.js.map +1 -0
  435. package/lib/utils/html-utils.d.ts +17 -0
  436. package/lib/utils/html-utils.d.ts.map +1 -0
  437. package/lib/utils/html-utils.js +30 -0
  438. package/lib/utils/html-utils.js.map +1 -0
  439. package/lib/utils/layout-utils.d.ts +41 -0
  440. package/lib/utils/layout-utils.d.ts.map +1 -0
  441. package/lib/utils/layout-utils.js +61 -0
  442. package/lib/utils/layout-utils.js.map +1 -0
  443. package/lib/utils/marker.d.ts +48 -0
  444. package/lib/utils/marker.d.ts.map +1 -0
  445. package/lib/utils/marker.js +48 -0
  446. package/lib/utils/marker.js.map +1 -0
  447. package/lib/utils/smodel-util.d.ts +41 -0
  448. package/lib/utils/smodel-util.d.ts.map +1 -0
  449. package/lib/utils/smodel-util.js +134 -0
  450. package/lib/utils/smodel-util.js.map +1 -0
  451. package/lib/utils/viewpoint-util.d.ts +52 -0
  452. package/lib/utils/viewpoint-util.d.ts.map +1 -0
  453. package/lib/utils/viewpoint-util.js +89 -0
  454. package/lib/utils/viewpoint-util.js.map +1 -0
  455. package/lib/views/base-view-module.d.ts +24 -0
  456. package/lib/views/base-view-module.d.ts.map +1 -0
  457. package/lib/views/base-view-module.js +59 -0
  458. package/lib/views/base-view-module.js.map +1 -0
  459. package/lib/views/default-types.d.ts +37 -0
  460. package/lib/views/default-types.d.ts.map +1 -0
  461. package/lib/views/default-types.js +47 -0
  462. package/lib/views/default-types.js.map +1 -0
  463. package/lib/views/glsp-edge-view.d.ts +11 -0
  464. package/lib/views/glsp-edge-view.d.ts.map +1 -0
  465. package/lib/views/glsp-edge-view.js +70 -0
  466. package/lib/views/glsp-edge-view.js.map +1 -0
  467. package/lib/views/index.d.ts +22 -0
  468. package/lib/views/index.d.ts.map +1 -0
  469. package/lib/views/index.js +34 -0
  470. package/lib/views/index.js.map +1 -0
  471. package/lib/views/issue-marker-view.d.ts +8 -0
  472. package/lib/views/issue-marker-view.d.ts.map +1 -0
  473. package/lib/views/issue-marker-view.js +59 -0
  474. package/lib/views/issue-marker-view.js.map +1 -0
  475. package/lib/views/rounded-corner-view.d.ts +13 -0
  476. package/lib/views/rounded-corner-view.d.ts.map +1 -0
  477. package/lib/views/rounded-corner-view.js +82 -0
  478. package/lib/views/rounded-corner-view.js.map +1 -0
  479. package/lib/views/rounded-corner.d.ts +37 -0
  480. package/lib/views/rounded-corner.d.ts.map +1 -0
  481. package/lib/views/rounded-corner.js +62 -0
  482. package/lib/views/rounded-corner.js.map +1 -0
  483. package/package.json +68 -0
  484. package/src/base/action-dispatcher.ts +103 -0
  485. package/src/base/actions/context-actions.ts +43 -0
  486. package/src/base/actions/edit-mode-action.ts +33 -0
  487. package/src/base/actions/edit-validation-actions.ts +103 -0
  488. package/src/base/actions/focus-change-action.ts +26 -0
  489. package/src/base/args.ts +26 -0
  490. package/src/base/auto-complete/auto-complete-actions.ts +24 -0
  491. package/src/base/auto-complete/auto-complete-widget.ts +314 -0
  492. package/src/base/auto-complete/validation-decorator.ts +126 -0
  493. package/src/base/command-stack.ts +36 -0
  494. package/src/base/di.config.ts +96 -0
  495. package/src/base/drag-aware-mouse-listener.ts +69 -0
  496. package/src/base/editor-context.ts +124 -0
  497. package/src/base/focus-tracker.ts +50 -0
  498. package/src/base/model/model-registry.ts +31 -0
  499. package/src/base/model/update-model-command.ts +118 -0
  500. package/src/base/model-initialization-constraint.ts +94 -0
  501. package/src/base/operations/operation.ts +178 -0
  502. package/src/base/selection-clearing-mouse-listener.ts +43 -0
  503. package/src/base/source-uri-aware.ts +22 -0
  504. package/src/base/tool-manager/glsp-tool-manager.ts +97 -0
  505. package/src/base/types.ts +37 -0
  506. package/src/base/view/view-registry.ts +31 -0
  507. package/src/features/change-bounds/model.ts +74 -0
  508. package/src/features/change-bounds/movement-restrictor.ts +89 -0
  509. package/src/features/change-bounds/snap.ts +35 -0
  510. package/src/features/command-palette/command-palette-tool.ts +46 -0
  511. package/src/features/command-palette/di.config.ts +34 -0
  512. package/src/features/command-palette/server-command-palette-provider.ts +48 -0
  513. package/src/features/context-menu/delete-element-context-menu.ts +42 -0
  514. package/src/features/context-menu/di.config.ts +35 -0
  515. package/src/features/context-menu/selection-service-aware-context-menu-mouse-listener.ts +50 -0
  516. package/src/features/context-menu/server-context-menu-provider.ts +46 -0
  517. package/src/features/copy-paste/copy-paste-actions.ts +60 -0
  518. package/src/features/copy-paste/copy-paste-context-menu.ts +138 -0
  519. package/src/features/copy-paste/copy-paste-handler.ts +152 -0
  520. package/src/features/copy-paste/di.config.ts +45 -0
  521. package/src/features/decoration/decoration-placer.ts +46 -0
  522. package/src/features/decoration/di.config.ts +28 -0
  523. package/src/features/edit-label/di.config.ts +30 -0
  524. package/src/features/edit-label/edit-label-tool.ts +51 -0
  525. package/src/features/edit-label/edit-label-validator.ts +104 -0
  526. package/src/features/hints/di.config.ts +30 -0
  527. package/src/features/hints/model.ts +34 -0
  528. package/src/features/hints/request-type-hints-action.ts +36 -0
  529. package/src/features/hints/type-hints.ts +257 -0
  530. package/src/features/hover/di.config.ts +61 -0
  531. package/src/features/hover/hover.ts +95 -0
  532. package/src/features/layout/di.config.ts +26 -0
  533. package/src/features/layout/layout-commands.spec.ts +366 -0
  534. package/src/features/layout/layout-commands.ts +415 -0
  535. package/src/features/model-source-watcher/di.config.ts +26 -0
  536. package/src/features/model-source-watcher/model-source-changed-action-handler.ts +70 -0
  537. package/src/features/model-source-watcher/model-source-changed-action.ts +26 -0
  538. package/src/features/mouse-tool/di.config.ts +28 -0
  539. package/src/features/mouse-tool/mouse-tool.ts +139 -0
  540. package/src/features/navigation/di.config.ts +35 -0
  541. package/src/features/navigation/navigation-action-handler.ts +272 -0
  542. package/src/features/navigation/navigation-target-resolver.spec.ts +61 -0
  543. package/src/features/navigation/navigation-target-resolver.ts +146 -0
  544. package/src/features/rank/model.ts +29 -0
  545. package/src/features/reconnect/model.ts +76 -0
  546. package/src/features/save/di.config.ts +30 -0
  547. package/src/features/save/model.ts +26 -0
  548. package/src/features/save/save.ts +35 -0
  549. package/src/features/select/di.config.ts +35 -0
  550. package/src/features/select/select-feedback-action.ts +87 -0
  551. package/src/features/select/select-mouse-listener.ts +26 -0
  552. package/src/features/select/selection-service.spec.ts +372 -0
  553. package/src/features/select/selection-service.ts +239 -0
  554. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +244 -0
  555. package/src/features/tool-feedback/creation-tool-feedback.ts +190 -0
  556. package/src/features/tool-feedback/css-feedback.ts +98 -0
  557. package/src/features/tool-feedback/di.config.ts +69 -0
  558. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +327 -0
  559. package/src/features/tool-feedback/feedback-action-dispatcher.ts +101 -0
  560. package/src/features/tool-feedback/marquee-tool-feedback.ts +104 -0
  561. package/src/features/tool-feedback/model.ts +32 -0
  562. package/src/features/tool-feedback/view.tsx +70 -0
  563. package/src/features/tool-palette/di.config.ts +30 -0
  564. package/src/features/tool-palette/palette-item.ts +40 -0
  565. package/src/features/tool-palette/tool-palette.ts +416 -0
  566. package/src/features/tools/base-glsp-tool.ts +53 -0
  567. package/src/features/tools/change-bounds-tool.ts +445 -0
  568. package/src/features/tools/delete-tool.ts +120 -0
  569. package/src/features/tools/di.config.ts +56 -0
  570. package/src/features/tools/edge-creation-tool.ts +171 -0
  571. package/src/features/tools/edge-edit-tool.ts +325 -0
  572. package/src/features/tools/marquee-mouse-tool.ts +244 -0
  573. package/src/features/tools/marquee-tool.ts +52 -0
  574. package/src/features/tools/model.ts +22 -0
  575. package/src/features/tools/node-creation-tool.ts +123 -0
  576. package/src/features/tools/view.tsx +38 -0
  577. package/src/features/undo-redo/model.ts +26 -0
  578. package/src/features/validation/di.config.ts +51 -0
  579. package/src/features/validation/issue-marker.ts +93 -0
  580. package/src/features/validation/marker-navigator.spec.ts +207 -0
  581. package/src/features/validation/marker-navigator.ts +249 -0
  582. package/src/features/validation/validate.ts +274 -0
  583. package/src/features/viewport/di.config.ts +47 -0
  584. package/src/features/viewport/glsp-scroll-mouse-listener.ts +50 -0
  585. package/src/index.ts +115 -0
  586. package/src/lib/model.ts +27 -0
  587. package/src/model-source/glsp-diagram-server.ts +114 -0
  588. package/src/model-source/glsp-server-status.ts +38 -0
  589. package/src/utils/argument-utils.ts +127 -0
  590. package/src/utils/array-utils.ts +55 -0
  591. package/src/utils/html-utils.ts +25 -0
  592. package/src/utils/layout-utils.ts +97 -0
  593. package/src/utils/marker.ts +63 -0
  594. package/src/utils/smodel-util.ts +149 -0
  595. package/src/utils/viewpoint-util.ts +99 -0
  596. package/src/views/base-view-module.ts +98 -0
  597. package/src/views/default-types.ts +48 -0
  598. package/src/views/glsp-edge-view.tsx +70 -0
  599. package/src/views/index.ts +21 -0
  600. package/src/views/issue-marker-view.tsx +55 -0
  601. package/src/views/rounded-corner-view.tsx +88 -0
  602. package/src/views/rounded-corner.ts +88 -0
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.SelectionClearingMouseListener = void 0;
10
+ /********************************************************************************
11
+ * Copyright (c) 2020 EclipseSource and others.
12
+ *
13
+ * This program and the accompanying materials are made available under the
14
+ * terms of the Eclipse Public License v. 2.0 which is available at
15
+ * http://www.eclipse.org/legal/epl-2.0.
16
+ *
17
+ * This Source Code may also be made available under the following Secondary
18
+ * Licenses when the conditions for such availability set forth in the Eclipse
19
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
20
+ * with the GNU Classpath Exception which is available at
21
+ * https://www.gnu.org/software/classpath/license.html.
22
+ *
23
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
24
+ ********************************************************************************/
25
+ const inversify_1 = require("inversify");
26
+ const sprotty_1 = require("sprotty");
27
+ /**
28
+ * A mouse listener that clears the document selection on click
29
+ *
30
+ * Clicking on SVG elements doesn't update the document selection. In the context of diagramming
31
+ * with GLSP, this is unnatural, as the user would expect that clicking in the diagram (e.g. to
32
+ * select a diagram element) would clear any other selection state in the DOM. From a technical
33
+ * point of view, an active selection in the document after clicking into the diagram may also
34
+ * lead to bogus target elements in certain browser events, such as clipboard events, etc.
35
+ *
36
+ * This listener helps to overcome this problem by actively clearing any existing selection in
37
+ * the document, if the user clicks into the diagram.
38
+ */
39
+ let SelectionClearingMouseListener = class SelectionClearingMouseListener extends sprotty_1.MouseListener {
40
+ mouseDown(_target, event) {
41
+ const selection = document.getSelection();
42
+ // eslint-disable-next-line no-null/no-null
43
+ if (selection === null) {
44
+ return [];
45
+ }
46
+ selection.removeAllRanges();
47
+ selection.addRange(document.createRange());
48
+ return [];
49
+ }
50
+ };
51
+ SelectionClearingMouseListener = __decorate([
52
+ inversify_1.injectable()
53
+ ], SelectionClearingMouseListener);
54
+ exports.SelectionClearingMouseListener = SelectionClearingMouseListener;
55
+ //# sourceMappingURL=selection-clearing-mouse-listener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selection-clearing-mouse-listener.js","sourceRoot":"","sources":["../../src/base/selection-clearing-mouse-listener.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAAuC;AACvC,qCAAuD;AAEvD;;;;;;;;;;;GAWG;AAEH,IAAa,8BAA8B,GAA3C,MAAa,8BAA+B,SAAQ,uBAAa;IAC7D,SAAS,CAAC,OAAsB,EAAE,KAAiB;QAC/C,MAAM,SAAS,GAAG,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC1C,2CAA2C;QAC3C,IAAI,SAAS,KAAK,IAAI,EAAE;YACpB,OAAO,EAAE,CAAC;SACb;QACD,SAAS,CAAC,eAAe,EAAE,CAAC;QAC5B,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3C,OAAO,EAAE,CAAC;IACd,CAAC;CACJ,CAAA;AAXY,8BAA8B;IAD1C,sBAAU,EAAE;GACA,8BAA8B,CAW1C;AAXY,wEAA8B"}
@@ -0,0 +1,20 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2020 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ export declare abstract class SourceUriAware {
17
+ abstract getSourceURI(): string;
18
+ }
19
+ export declare function isSourceUriAware(obj: any): obj is SourceUriAware;
20
+ //# sourceMappingURL=source-uri-aware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-uri-aware.d.ts","sourceRoot":"","sources":["../../src/base/source-uri-aware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,8BAAsB,cAAc;IAChC,QAAQ,CAAC,YAAY,IAAI,MAAM;CAClC;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,cAAc,CAEhE"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isSourceUriAware = exports.SourceUriAware = void 0;
4
+ /********************************************************************************
5
+ * Copyright (c) 2020 EclipseSource and others.
6
+ *
7
+ * This program and the accompanying materials are made available under the
8
+ * terms of the Eclipse Public License v. 2.0 which is available at
9
+ * http://www.eclipse.org/legal/epl-2.0.
10
+ *
11
+ * This Source Code may also be made available under the following Secondary
12
+ * Licenses when the conditions for such availability set forth in the Eclipse
13
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
14
+ * with the GNU Classpath Exception which is available at
15
+ * https://www.gnu.org/software/classpath/license.html.
16
+ *
17
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
18
+ ********************************************************************************/
19
+ class SourceUriAware {
20
+ }
21
+ exports.SourceUriAware = SourceUriAware;
22
+ function isSourceUriAware(obj) {
23
+ return obj !== undefined && typeof obj.getSourceURI === 'function';
24
+ }
25
+ exports.isSourceUriAware = isSourceUriAware;
26
+ //# sourceMappingURL=source-uri-aware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"source-uri-aware.js","sourceRoot":"","sources":["../../src/base/source-uri-aware.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,MAAsB,cAAc;CAEnC;AAFD,wCAEC;AAED,SAAgB,gBAAgB,CAAC,GAAQ;IACrC,OAAO,GAAG,KAAK,SAAS,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU,CAAC;AACvE,CAAC;AAFD,4CAEC"}
@@ -0,0 +1,22 @@
1
+ import { Tool, ToolManager } from 'sprotty';
2
+ import { EditModeListener, EditorContextService, EditorContextServiceProvider } from '../editor-context';
3
+ export interface IGLSPToolManager extends ToolManager {
4
+ disableEditTools(): void;
5
+ }
6
+ export declare class GLSPToolManager extends ToolManager implements IGLSPToolManager, EditModeListener {
7
+ protected editorContext?: EditorContextService;
8
+ tools: Tool[];
9
+ defaultTools: Tool[];
10
+ contextServiceProvider: EditorContextServiceProvider;
11
+ protected initialize(): void;
12
+ registerDefaultTools(...tools: Tool[]): void;
13
+ registerTools(...tools: Tool[]): void;
14
+ enable(toolIds: string[]): void;
15
+ disableEditTools(): void;
16
+ editModeChanged(oldValue: string, newValue: string): void;
17
+ }
18
+ export interface GLSPTool extends Tool {
19
+ isEditTool: boolean;
20
+ }
21
+ export declare function isGLSPTool(tool: Tool): tool is GLSPTool;
22
+ //# sourceMappingURL=glsp-tool-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glsp-tool-manager.d.ts","sourceRoot":"","sources":["../../../src/base/tool-manager/glsp-tool-manager.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAI5C,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,4BAA4B,EAAE,MAAM,mBAAmB,CAAC;AAGzG,MAAM,WAAW,gBAAiB,SAAQ,WAAW;IAEjD,gBAAgB,IAAI,IAAI,CAAC;CAC5B;AAED,qBACa,eAAgB,SAAQ,WAAY,YAAW,gBAAgB,EAAE,gBAAgB;IAC1F,SAAS,CAAC,aAAa,CAAC,EAAE,oBAAoB,CAAC;IAEJ,KAAK,EAAE,IAAI,EAAE,CAAC;IACP,YAAY,EAAE,IAAI,EAAE,CAAC;IACrB,sBAAsB,EAAE,4BAA4B,CAAC;IAGvG,SAAS,CAAC,UAAU,IAAI,IAAI;IAU5B,oBAAoB,CAAC,GAAG,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAM5C,aAAa,CAAC,GAAG,KAAK,EAAE,IAAI,EAAE,GAAG,IAAI;IAMrC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAc/B,gBAAgB,IAAI,IAAI;IAKxB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;CAU5D;AAED,MAAM,WAAW,QAAS,SAAQ,IAAI;IAClC,UAAU,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAEvD"}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.isGLSPTool = exports.GLSPToolManager = void 0;
13
+ /********************************************************************************
14
+ * Copyright (c) 2020 EclipseSource and others.
15
+ *
16
+ * This program and the accompanying materials are made available under the
17
+ * terms of the Eclipse Public License v. 2.0 which is available at
18
+ * http://www.eclipse.org/legal/epl-2.0.
19
+ *
20
+ * This Source Code may also be made available under the following Secondary
21
+ * Licenses when the conditions for such availability set forth in the Eclipse
22
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
23
+ * with the GNU Classpath Exception which is available at
24
+ * https://www.gnu.org/software/classpath/license.html.
25
+ *
26
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
27
+ ********************************************************************************/
28
+ const inversify_1 = require("inversify");
29
+ const sprotty_1 = require("sprotty");
30
+ const array_utils_1 = require("../../utils/array-utils");
31
+ const edit_mode_action_1 = require("../actions/edit-mode-action");
32
+ const types_1 = require("../types");
33
+ let GLSPToolManager = class GLSPToolManager extends sprotty_1.ToolManager {
34
+ initialize() {
35
+ this.registerTools(...this.tools);
36
+ this.registerDefaultTools(...this.defaultTools);
37
+ this.enableDefaultTools();
38
+ this.contextServiceProvider().then(editorContext => {
39
+ editorContext.register(this);
40
+ this.editorContext = editorContext;
41
+ });
42
+ }
43
+ registerDefaultTools(...tools) {
44
+ for (const tool of tools) {
45
+ array_utils_1.distinctAdd(this.defaultTools, tool);
46
+ }
47
+ }
48
+ registerTools(...tools) {
49
+ for (const tool of tools) {
50
+ array_utils_1.distinctAdd(this.tools, tool);
51
+ }
52
+ }
53
+ enable(toolIds) {
54
+ this.disableActiveTools();
55
+ let tools = toolIds.map(id => this.tool(id));
56
+ if (this.editorContext && this.editorContext.isReadonly) {
57
+ tools = tools.filter(tool => tool && (!isGLSPTool(tool) || tool.isEditTool === false));
58
+ }
59
+ tools.forEach(tool => {
60
+ if (tool !== undefined) {
61
+ tool.enable();
62
+ this.actives.push(tool);
63
+ }
64
+ });
65
+ }
66
+ disableEditTools() {
67
+ this.disableActiveTools();
68
+ this.enable(this.defaultTools.filter(tool => !isGLSPTool(tool) || tool.isEditTool === false).map(tool => tool.id));
69
+ }
70
+ editModeChanged(oldValue, newValue) {
71
+ if (oldValue === newValue) {
72
+ return;
73
+ }
74
+ if (newValue === edit_mode_action_1.EditMode.READONLY) {
75
+ this.disableEditTools();
76
+ }
77
+ else if (newValue === edit_mode_action_1.EditMode.EDITABLE) {
78
+ this.enableDefaultTools();
79
+ }
80
+ }
81
+ };
82
+ __decorate([
83
+ inversify_1.multiInject(types_1.GLSP_TYPES.ITool),
84
+ inversify_1.optional(),
85
+ __metadata("design:type", Array)
86
+ ], GLSPToolManager.prototype, "tools", void 0);
87
+ __decorate([
88
+ inversify_1.multiInject(types_1.GLSP_TYPES.IDefaultTool),
89
+ inversify_1.optional(),
90
+ __metadata("design:type", Array)
91
+ ], GLSPToolManager.prototype, "defaultTools", void 0);
92
+ __decorate([
93
+ inversify_1.inject(types_1.GLSP_TYPES.IEditorContextServiceProvider),
94
+ __metadata("design:type", Function)
95
+ ], GLSPToolManager.prototype, "contextServiceProvider", void 0);
96
+ __decorate([
97
+ inversify_1.postConstruct(),
98
+ __metadata("design:type", Function),
99
+ __metadata("design:paramtypes", []),
100
+ __metadata("design:returntype", void 0)
101
+ ], GLSPToolManager.prototype, "initialize", null);
102
+ GLSPToolManager = __decorate([
103
+ inversify_1.injectable()
104
+ ], GLSPToolManager);
105
+ exports.GLSPToolManager = GLSPToolManager;
106
+ function isGLSPTool(tool) {
107
+ return 'isEditTool' in tool && typeof tool['isEditTool'] === 'boolean';
108
+ }
109
+ exports.isGLSPTool = isGLSPTool;
110
+ //# sourceMappingURL=glsp-tool-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"glsp-tool-manager.js","sourceRoot":"","sources":["../../../src/base/tool-manager/glsp-tool-manager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2019 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ export declare const GLSP_TYPES: {
17
+ IAsyncClipboardService: symbol;
18
+ ICommandPaletteActionProviderRegistry: symbol;
19
+ IEditorContextServiceProvider: symbol;
20
+ IFeedbackActionDispatcher: symbol;
21
+ IToolFactory: symbol;
22
+ ITypeHintProvider: symbol;
23
+ IMovementRestrictor: symbol;
24
+ SelectionService: symbol;
25
+ SelectionListener: symbol;
26
+ SModelRootListener: symbol;
27
+ MouseTool: symbol;
28
+ IContextMenuService: symbol;
29
+ IContextMenuServiceProvider: symbol;
30
+ IContextMenuProviderRegistry: symbol;
31
+ IContextMenuProvider: symbol;
32
+ ICopyPasteHandler: symbol;
33
+ IGLSPToolManager: symbol;
34
+ ITool: symbol;
35
+ IDefaultTool: symbol;
36
+ IEditModeListener: symbol;
37
+ };
38
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/base/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;CAqBtB,CAAC"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.GLSP_TYPES = void 0;
4
+ /********************************************************************************
5
+ * Copyright (c) 2019 EclipseSource and others.
6
+ *
7
+ * This program and the accompanying materials are made available under the
8
+ * terms of the Eclipse Public License v. 2.0 which is available at
9
+ * http://www.eclipse.org/legal/epl-2.0.
10
+ *
11
+ * This Source Code may also be made available under the following Secondary
12
+ * Licenses when the conditions for such availability set forth in the Eclipse
13
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
14
+ * with the GNU Classpath Exception which is available at
15
+ * https://www.gnu.org/software/classpath/license.html.
16
+ *
17
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
18
+ ********************************************************************************/
19
+ exports.GLSP_TYPES = {
20
+ IAsyncClipboardService: Symbol.for('IAsyncClipboardService'),
21
+ ICommandPaletteActionProviderRegistry: Symbol.for('ICommandPaletteActionProviderRegistry'),
22
+ IEditorContextServiceProvider: Symbol.for('IEditorContextProvider'),
23
+ IFeedbackActionDispatcher: Symbol.for('IFeedbackActionDispatcher'),
24
+ IToolFactory: Symbol.for('Factory<Tool>'),
25
+ ITypeHintProvider: Symbol.for('ITypeHintProvider'),
26
+ IMovementRestrictor: Symbol.for('IMovmementRestrictor'),
27
+ SelectionService: Symbol.for('SelectionService'),
28
+ SelectionListener: Symbol.for('SelectionListener'),
29
+ SModelRootListener: Symbol.for('SModelRootListener'),
30
+ MouseTool: Symbol.for('MouseTool'),
31
+ IContextMenuService: Symbol.for('IContextMenuService'),
32
+ IContextMenuServiceProvider: Symbol.for('IContextMenuServiceProvider'),
33
+ IContextMenuProviderRegistry: Symbol.for('IContextMenuProviderRegistry'),
34
+ IContextMenuProvider: Symbol.for('IContextMenuProvider'),
35
+ ICopyPasteHandler: Symbol.for('ICopyPasteHandler'),
36
+ IGLSPToolManager: Symbol.for('IGLSPToolManager'),
37
+ ITool: Symbol.for('ITool'),
38
+ IDefaultTool: Symbol.for('IDefaultTool'),
39
+ IEditModeListener: Symbol.for('IEditModeListener')
40
+ };
41
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/base/types.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AACrE,QAAA,UAAU,GAAG;IACtB,sBAAsB,EAAE,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC;IAC5D,qCAAqC,EAAE,MAAM,CAAC,GAAG,CAAC,uCAAuC,CAAC;IAC1F,6BAA6B,EAAE,MAAM,CAAC,GAAG,CAAC,wBAAwB,CAAC;IACnE,yBAAyB,EAAE,MAAM,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAClE,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC;IACzC,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,mBAAmB,EAAE,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC;IACvD,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAChD,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC;IACpD,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC;IAClC,mBAAmB,EAAE,MAAM,CAAC,GAAG,CAAC,qBAAqB,CAAC;IACtD,2BAA2B,EAAE,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACtE,4BAA4B,EAAE,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC;IACxE,oBAAoB,EAAE,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC;IACxD,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;IAClD,gBAAgB,EAAE,MAAM,CAAC,GAAG,CAAC,kBAAkB,CAAC;IAChD,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC;IACxC,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,mBAAmB,CAAC;CACrD,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { IView, ViewRegistry } from 'sprotty';
2
+ export declare class GLSPViewRegistry extends ViewRegistry {
3
+ register(key: string, instance: IView): void;
4
+ }
5
+ //# sourceMappingURL=view-registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-registry.d.ts","sourceRoot":"","sources":["../../../src/base/view/view-registry.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE9C,qBACa,gBAAiB,SAAQ,YAAY;IAC9C,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,GAAG,IAAI;CAU/C"}
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.GLSPViewRegistry = void 0;
10
+ /********************************************************************************
11
+ * Copyright (c) 2021 EclipseSource and others.
12
+ *
13
+ * This program and the accompanying materials are made available under the
14
+ * terms of the Eclipse Public License v. 2.0 which is available at
15
+ * http://www.eclipse.org/legal/epl-2.0.
16
+ *
17
+ * This Source Code may also be made available under the following Secondary
18
+ * Licenses when the conditions for such availability set forth in the Eclipse
19
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
20
+ * with the GNU Classpath Exception which is available at
21
+ * https://www.gnu.org/software/classpath/license.html.
22
+ *
23
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
24
+ ********************************************************************************/
25
+ const inversify_1 = require("inversify");
26
+ const sprotty_1 = require("sprotty");
27
+ let GLSPViewRegistry = class GLSPViewRegistry extends sprotty_1.ViewRegistry {
28
+ register(key, instance) {
29
+ if (key === undefined) {
30
+ throw new Error('Key is undefined');
31
+ }
32
+ if (this.hasKey(key)) {
33
+ // do not throw error but log overwriting
34
+ console.log(`View instance for type '${key}' will be overwritten.`);
35
+ }
36
+ this.elements.set(key, instance);
37
+ }
38
+ };
39
+ GLSPViewRegistry = __decorate([
40
+ inversify_1.injectable()
41
+ ], GLSPViewRegistry);
42
+ exports.GLSPViewRegistry = GLSPViewRegistry;
43
+ //# sourceMappingURL=view-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"view-registry.js","sourceRoot":"","sources":["../../../src/base/view/view-registry.ts"],"names":[],"mappings":";;;;;;;;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,yCAAuC;AACvC,qCAA8C;AAG9C,IAAa,gBAAgB,GAA7B,MAAa,gBAAiB,SAAQ,sBAAY;IAC9C,QAAQ,CAAC,GAAW,EAAE,QAAe;QACjC,IAAI,GAAG,KAAK,SAAS,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;SACvC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;YAClB,yCAAyC;YACzC,OAAO,CAAC,GAAG,CAAC,2BAA2B,GAAG,wBAAwB,CAAC,CAAC;SACvE;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACrC,CAAC;CACJ,CAAA;AAXY,gBAAgB;IAD5B,sBAAU,EAAE;GACA,gBAAgB,CAW5B;AAXY,4CAAgB"}
@@ -0,0 +1,38 @@
1
+ /********************************************************************************
2
+ * Copyright (c) 2019 EclipseSource and others.
3
+ *
4
+ * This program and the accompanying materials are made available under the
5
+ * terms of the Eclipse Public License v. 2.0 which is available at
6
+ * http://www.eclipse.org/legal/epl-2.0.
7
+ *
8
+ * This Source Code may also be made available under the following Secondary
9
+ * Licenses when the conditions for such availability set forth in the Eclipse
10
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ * with the GNU Classpath Exception which is available at
12
+ * https://www.gnu.org/software/classpath/license.html.
13
+ *
14
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15
+ ********************************************************************************/
16
+ import { BoundsAware, Hoverable, Locateable, SChildElement, Selectable, SModelElement, SParentElement } from 'sprotty';
17
+ export declare const resizeFeature: unique symbol;
18
+ export interface Resizable extends BoundsAware, Selectable {
19
+ }
20
+ export declare function isResizable(element: SModelElement): element is SParentElement & Resizable;
21
+ export declare enum ResizeHandleLocation {
22
+ TopLeft = "top-left",
23
+ TopRight = "top-right",
24
+ BottomLeft = "bottom-left",
25
+ BottomRight = "bottom-right"
26
+ }
27
+ export declare function isBoundsAwareMoveable(element: SModelElement): element is SModelElement & Locateable & BoundsAware;
28
+ export declare class SResizeHandle extends SChildElement implements Hoverable {
29
+ readonly location?: ResizeHandleLocation | undefined;
30
+ readonly type: string;
31
+ readonly hoverFeedback: boolean;
32
+ static readonly TYPE = "resize-handle";
33
+ constructor(location?: ResizeHandleLocation | undefined, type?: string, hoverFeedback?: boolean);
34
+ hasFeature(feature: symbol): boolean;
35
+ }
36
+ export declare function addResizeHandles(element: SParentElement): void;
37
+ export declare function removeResizeHandles(element: SParentElement): void;
38
+ //# sourceMappingURL=model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/model.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAClF,OAAO,EACH,WAAW,EACX,SAAS,EAKT,UAAU,EACV,aAAa,EACb,UAAU,EACV,aAAa,EACb,cAAc,EACjB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,aAAa,eAA0B,CAAC;AAErD,MAAM,WAAW,SAAU,SAAQ,WAAW,EAAE,UAAU;CACzD;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,cAAc,GAAG,SAAS,CAEzF;AAED,oBAAY,oBAAoB;IAC5B,OAAO,aAAa;IACpB,QAAQ,cAAc;IACtB,UAAU,gBAAgB;IAC1B,WAAW,iBAAiB;CAC/B;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,IAAI,aAAa,GAAG,UAAU,GAAG,WAAW,CAEjH;AAED,qBAAa,aAAc,SAAQ,aAAc,YAAW,SAAS;aAGrC,QAAQ,CAAC;aACjB,IAAI,EAAE,MAAM;aACZ,aAAa,EAAE,OAAO;IAJ1C,MAAM,CAAC,QAAQ,CAAC,IAAI,mBAAmB;gBAEX,QAAQ,CAAC,kCAAsB,EACvC,IAAI,GAAE,MAA2B,EACjC,aAAa,GAAE,OAAe;IAIlD,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAGvC;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAM9D;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,CAEjE"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.removeResizeHandles = exports.addResizeHandles = exports.SResizeHandle = exports.isBoundsAwareMoveable = exports.ResizeHandleLocation = exports.isResizable = exports.resizeFeature = void 0;
4
+ /********************************************************************************
5
+ * Copyright (c) 2019 EclipseSource and others.
6
+ *
7
+ * This program and the accompanying materials are made available under the
8
+ * terms of the Eclipse Public License v. 2.0 which is available at
9
+ * http://www.eclipse.org/legal/epl-2.0.
10
+ *
11
+ * This Source Code may also be made available under the following Secondary
12
+ * Licenses when the conditions for such availability set forth in the Eclipse
13
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
14
+ * with the GNU Classpath Exception which is available at
15
+ * https://www.gnu.org/software/classpath/license.html.
16
+ *
17
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
18
+ ********************************************************************************/
19
+ const sprotty_1 = require("sprotty");
20
+ exports.resizeFeature = Symbol('resizeFeature');
21
+ function isResizable(element) {
22
+ return sprotty_1.isBoundsAware(element) && sprotty_1.isSelectable(element) && element instanceof sprotty_1.SParentElement && element.hasFeature(exports.resizeFeature);
23
+ }
24
+ exports.isResizable = isResizable;
25
+ var ResizeHandleLocation;
26
+ (function (ResizeHandleLocation) {
27
+ ResizeHandleLocation["TopLeft"] = "top-left";
28
+ ResizeHandleLocation["TopRight"] = "top-right";
29
+ ResizeHandleLocation["BottomLeft"] = "bottom-left";
30
+ ResizeHandleLocation["BottomRight"] = "bottom-right";
31
+ })(ResizeHandleLocation = exports.ResizeHandleLocation || (exports.ResizeHandleLocation = {}));
32
+ function isBoundsAwareMoveable(element) {
33
+ return sprotty_1.isMoveable(element) && sprotty_1.isBoundsAware(element);
34
+ }
35
+ exports.isBoundsAwareMoveable = isBoundsAwareMoveable;
36
+ class SResizeHandle extends sprotty_1.SChildElement {
37
+ constructor(location, type = SResizeHandle.TYPE, hoverFeedback = false) {
38
+ super();
39
+ this.location = location;
40
+ this.type = type;
41
+ this.hoverFeedback = hoverFeedback;
42
+ }
43
+ hasFeature(feature) {
44
+ return feature === sprotty_1.hoverFeedbackFeature;
45
+ }
46
+ }
47
+ exports.SResizeHandle = SResizeHandle;
48
+ SResizeHandle.TYPE = 'resize-handle';
49
+ function addResizeHandles(element) {
50
+ removeResizeHandles(element);
51
+ element.add(new SResizeHandle(ResizeHandleLocation.TopLeft));
52
+ element.add(new SResizeHandle(ResizeHandleLocation.TopRight));
53
+ element.add(new SResizeHandle(ResizeHandleLocation.BottomLeft));
54
+ element.add(new SResizeHandle(ResizeHandleLocation.BottomRight));
55
+ }
56
+ exports.addResizeHandles = addResizeHandles;
57
+ function removeResizeHandles(element) {
58
+ element.removeAll(child => child instanceof SResizeHandle);
59
+ }
60
+ exports.removeResizeHandles = removeResizeHandles;
61
+ //# sourceMappingURL=model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/features/change-bounds/model.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;kFAckF;AAClF,qCAYiB;AAEJ,QAAA,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;AAKrD,SAAgB,WAAW,CAAC,OAAsB;IAC9C,OAAO,uBAAa,CAAC,OAAO,CAAC,IAAI,sBAAY,CAAC,OAAO,CAAC,IAAI,OAAO,YAAY,wBAAc,IAAI,OAAO,CAAC,UAAU,CAAC,qBAAa,CAAC,CAAC;AACrI,CAAC;AAFD,kCAEC;AAED,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC5B,4CAAoB,CAAA;IACpB,8CAAsB,CAAA;IACtB,kDAA0B,CAAA;IAC1B,oDAA4B,CAAA;AAChC,CAAC,EALW,oBAAoB,GAApB,4BAAoB,KAApB,4BAAoB,QAK/B;AAED,SAAgB,qBAAqB,CAAC,OAAsB;IACxD,OAAO,oBAAU,CAAC,OAAO,CAAC,IAAI,uBAAa,CAAC,OAAO,CAAC,CAAC;AACzD,CAAC;AAFD,sDAEC;AAED,MAAa,aAAc,SAAQ,uBAAa;IAG5C,YAA4B,QAA+B,EACvC,OAAe,aAAa,CAAC,IAAI,EACjC,gBAAyB,KAAK;QAC9C,KAAK,EAAE,CAAC;QAHgB,aAAQ,GAAR,QAAQ,CAAuB;QACvC,SAAI,GAAJ,IAAI,CAA6B;QACjC,kBAAa,GAAb,aAAa,CAAiB;IAElD,CAAC;IAED,UAAU,CAAC,OAAe;QACtB,OAAO,OAAO,KAAK,8BAAoB,CAAC;IAC5C,CAAC;;AAXL,sCAYC;AAXmB,kBAAI,GAAG,eAAe,CAAC;AAa3C,SAAgB,gBAAgB,CAAC,OAAuB;IACpD,mBAAmB,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC,CAAC;IAChE,OAAO,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAC;AACrE,CAAC;AAND,4CAMC;AAED,SAAgB,mBAAmB,CAAC,OAAuB;IACvD,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,YAAY,aAAa,CAAC,CAAC;AAC/D,CAAC;AAFD,kDAEC"}
@@ -0,0 +1,14 @@
1
+ import { BoundsAware, Point, SModelElement } from 'sprotty';
2
+ import { ModifyCSSFeedbackAction } from '../tool-feedback/css-feedback';
3
+ export interface IMovementRestrictor {
4
+ validate(newLocation: Point, element: SModelElement): boolean;
5
+ cssClasses?: string[];
6
+ }
7
+ export declare function createMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
8
+ export declare function removeMovementRestrictionFeedback(element: SModelElement, movementRestrictor: IMovementRestrictor): ModifyCSSFeedbackAction;
9
+ export declare class NoOverlapMovmentRestrictor implements IMovementRestrictor {
10
+ cssClasses: string[];
11
+ validate(newLocation: Point, element: SModelElement): boolean;
12
+ }
13
+ export declare function areOverlapping(element1: SModelElement & BoundsAware, element2: SModelElement & BoundsAware): boolean;
14
+ //# sourceMappingURL=movement-restrictor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"movement-restrictor.d.ts","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,EAAyB,MAAM,SAAS,CAAC;AAGnF,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAGxE,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC;IAC9D,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,mBAAmB,GAAG,uBAAuB,CAO1I;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,mBAAmB,GAAG,uBAAuB,CAO1I;AAED,qBACa,0BAA2B,YAAW,mBAAmB;IAClE,UAAU,WAA4B;IAEtC,QAAQ,CAAC,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,GAAG,OAAO;CAiBhE;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,aAAa,GAAG,WAAW,EAAE,QAAQ,EAAE,aAAa,GAAG,WAAW,GAAG,OAAO,CAoBpH"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.areOverlapping = exports.NoOverlapMovmentRestrictor = exports.removeMovementRestrictionFeedback = exports.createMovementRestrictionFeedback = void 0;
10
+ /********************************************************************************
11
+ * Copyright (c) 2019 EclipseSource and others.
12
+ *
13
+ * This program and the accompanying materials are made available under the
14
+ * terms of the Eclipse Public License v. 2.0 which is available at
15
+ * http://www.eclipse.org/legal/epl-2.0.
16
+ *
17
+ * This Source Code may also be made available under the following Secondary
18
+ * Licenses when the conditions for such availability set forth in the Eclipse
19
+ * Public License v. 2.0 are satisfied: GNU General Public License, version 2
20
+ * with the GNU Classpath Exception which is available at
21
+ * https://www.gnu.org/software/classpath/license.html.
22
+ *
23
+ * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
24
+ ********************************************************************************/
25
+ const inversify_1 = require("inversify");
26
+ const sprotty_1 = require("sprotty");
27
+ const viewpoint_util_1 = require("../../utils/viewpoint-util");
28
+ const css_feedback_1 = require("../tool-feedback/css-feedback");
29
+ const model_1 = require("./model");
30
+ function createMovementRestrictionFeedback(element, movementRestrictor) {
31
+ const elements = [element];
32
+ if (element instanceof sprotty_1.SParentElement) {
33
+ element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
34
+ }
35
+ return new css_feedback_1.ModifyCSSFeedbackAction(elements, movementRestrictor.cssClasses);
36
+ }
37
+ exports.createMovementRestrictionFeedback = createMovementRestrictionFeedback;
38
+ function removeMovementRestrictionFeedback(element, movementRestrictor) {
39
+ const elements = [element];
40
+ if (element instanceof sprotty_1.SParentElement) {
41
+ element.children.filter(child => child instanceof model_1.SResizeHandle).forEach(e => elements.push(e));
42
+ }
43
+ return new css_feedback_1.ModifyCSSFeedbackAction(elements, undefined, movementRestrictor.cssClasses);
44
+ }
45
+ exports.removeMovementRestrictionFeedback = removeMovementRestrictionFeedback;
46
+ let NoOverlapMovmentRestrictor = class NoOverlapMovmentRestrictor {
47
+ constructor() {
48
+ this.cssClasses = ['movement-not-allowed'];
49
+ }
50
+ validate(newLocation, element) {
51
+ if (!model_1.isBoundsAwareMoveable(element)) {
52
+ return false;
53
+ }
54
+ // Create ghost element at the newLocation
55
+ const ghostElement = Object.create(element);
56
+ ghostElement.bounds = {
57
+ x: newLocation.x,
58
+ y: newLocation.y,
59
+ width: element.bounds.width,
60
+ height: element.bounds.height
61
+ };
62
+ ghostElement.type = 'Ghost';
63
+ ghostElement.id = element.id;
64
+ return !Array.from(element.root.index.all().filter(e => e.id !== ghostElement.id && e !== ghostElement.root && (e instanceof sprotty_1.SNode))
65
+ .map(e => e)).some(e => areOverlapping(e, ghostElement));
66
+ }
67
+ };
68
+ NoOverlapMovmentRestrictor = __decorate([
69
+ inversify_1.injectable()
70
+ ], NoOverlapMovmentRestrictor);
71
+ exports.NoOverlapMovmentRestrictor = NoOverlapMovmentRestrictor;
72
+ function areOverlapping(element1, element2) {
73
+ const b1 = viewpoint_util_1.toAbsoluteBounds(element1);
74
+ const b2 = viewpoint_util_1.toAbsoluteBounds(element2);
75
+ const r1TopLeft = b1;
76
+ const r1BottomRight = { x: b1.x + b1.width, y: b1.y + b1.height };
77
+ const r2TopLeft = b2;
78
+ const r2BottomRight = { x: b2.x + b2.width, y: b2.y + b2.height };
79
+ // If one rectangle is on left side of other
80
+ if (r1TopLeft.x > r2BottomRight.x || r2TopLeft.x > r1BottomRight.x) {
81
+ return false;
82
+ }
83
+ // If one rectangle is above other
84
+ if (r1BottomRight.y < r2TopLeft.y || r2BottomRight.y < r1TopLeft.y) {
85
+ return false;
86
+ }
87
+ return true;
88
+ }
89
+ exports.areOverlapping = areOverlapping;
90
+ //# sourceMappingURL=movement-restrictor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"movement-restrictor.js","sourceRoot":"","sources":["../../../src/features/change-bounds/movement-restrictor.ts"],"names":[],"mappings":"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"}