@eclipse-glsp/client 1.1.0-next.4a5a0ee.195 → 1.1.0-next.4e10035.245

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 (389) hide show
  1. package/README.md +1 -1
  2. package/{lib/features/change-bounds/snap.spec.d.ts → css/autocomplete-palette.css} +8 -3
  3. package/css/decoration.css +1 -1
  4. package/css/glsp-sprotty.css +34 -19
  5. package/lib/base/action-dispatcher.js.map +1 -1
  6. package/lib/base/auto-complete/auto-complete-widget.d.ts +10 -4
  7. package/lib/base/auto-complete/auto-complete-widget.d.ts.map +1 -1
  8. package/lib/base/auto-complete/auto-complete-widget.js +28 -9
  9. package/lib/base/auto-complete/auto-complete-widget.js.map +1 -1
  10. package/lib/base/command-stack.d.ts +1 -2
  11. package/lib/base/command-stack.d.ts.map +1 -1
  12. package/lib/base/command-stack.js +5 -14
  13. package/lib/base/command-stack.js.map +1 -1
  14. package/lib/base/container-modules.d.ts +32 -2
  15. package/lib/base/container-modules.d.ts.map +1 -1
  16. package/lib/base/container-modules.js +78 -43
  17. package/lib/base/container-modules.js.map +1 -1
  18. package/lib/base/di.config.d.ts +1 -1
  19. package/lib/base/di.config.d.ts.map +1 -1
  20. package/lib/base/di.config.js +7 -7
  21. package/lib/base/di.config.js.map +1 -1
  22. package/lib/base/editor-context-service.d.ts +4 -4
  23. package/lib/base/editor-context-service.d.ts.map +1 -1
  24. package/lib/base/editor-context-service.js +3 -3
  25. package/lib/base/editor-context-service.js.map +1 -1
  26. package/lib/base/focus-tracker.js.map +1 -1
  27. package/lib/base/model/model-registry.js.map +1 -1
  28. package/lib/base/model/update-model-command.js.map +1 -1
  29. package/lib/base/model-initialization-constraint.js.map +1 -1
  30. package/lib/base/selection-clearing-mouse-listener.js +1 -1
  31. package/lib/base/selection-clearing-mouse-listener.js.map +1 -1
  32. package/lib/base/tool-manager/glsp-tool-manager.d.ts +4 -5
  33. package/lib/base/tool-manager/glsp-tool-manager.d.ts.map +1 -1
  34. package/lib/base/tool-manager/glsp-tool-manager.js +15 -8
  35. package/lib/base/tool-manager/glsp-tool-manager.js.map +1 -1
  36. package/lib/base/view/view-registry.js.map +1 -1
  37. package/lib/features/accessibility/di.config.d.ts +21 -0
  38. package/lib/features/accessibility/di.config.d.ts.map +1 -0
  39. package/lib/features/accessibility/di.config.js +28 -0
  40. package/lib/features/accessibility/di.config.js.map +1 -0
  41. package/lib/features/accessibility/search/di.config.d.ts +20 -0
  42. package/lib/features/accessibility/search/di.config.d.ts.map +1 -0
  43. package/lib/features/accessibility/search/di.config.js +33 -0
  44. package/lib/features/accessibility/search/di.config.js.map +1 -0
  45. package/lib/features/accessibility/search/search-palette.d.ts +47 -0
  46. package/lib/features/accessibility/search/search-palette.d.ts.map +1 -0
  47. package/lib/features/accessibility/search/search-palette.js +155 -0
  48. package/lib/features/accessibility/search/search-palette.js.map +1 -0
  49. package/lib/features/accessibility/search/search-tool.d.ts +30 -0
  50. package/lib/features/accessibility/search/search-tool.d.ts.map +1 -0
  51. package/lib/features/accessibility/search/search-tool.js +73 -0
  52. package/lib/features/accessibility/search/search-tool.js.map +1 -0
  53. package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.d.ts +35 -0
  54. package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.d.ts.map +1 -0
  55. package/lib/features/{tools/marquee-behavior.spec.d.ts → autocomplete-palette/autocomplete-suggestion-providers.js} +4 -3
  56. package/lib/features/autocomplete-palette/autocomplete-suggestion-providers.js.map +1 -0
  57. package/lib/features/autocomplete-palette/base-autocomplete-palette.d.ts +41 -0
  58. package/lib/features/autocomplete-palette/base-autocomplete-palette.d.ts.map +1 -0
  59. package/lib/features/autocomplete-palette/base-autocomplete-palette.js +82 -0
  60. package/lib/features/autocomplete-palette/base-autocomplete-palette.js.map +1 -0
  61. package/lib/features/bounds/di.config.d.ts +4 -0
  62. package/lib/features/bounds/di.config.d.ts.map +1 -0
  63. package/lib/features/bounds/di.config.js +39 -0
  64. package/lib/features/bounds/di.config.js.map +1 -0
  65. package/lib/features/{layout → bounds}/freeform-layout.d.ts +2 -2
  66. package/lib/features/{layout → bounds}/freeform-layout.d.ts.map +1 -1
  67. package/lib/features/{layout → bounds}/freeform-layout.js +2 -2
  68. package/lib/features/{layout → bounds}/freeform-layout.js.map +1 -1
  69. package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts +34 -0
  70. package/lib/features/bounds/glsp-hidden-bounds-updater.d.ts.map +1 -0
  71. package/lib/features/bounds/glsp-hidden-bounds-updater.js +99 -0
  72. package/lib/features/bounds/glsp-hidden-bounds-updater.js.map +1 -0
  73. package/lib/features/{layout → bounds}/hbox-layout.d.ts +1 -1
  74. package/lib/features/{layout → bounds}/hbox-layout.d.ts.map +1 -1
  75. package/lib/features/{layout → bounds}/hbox-layout.js +1 -1
  76. package/lib/features/{layout → bounds}/hbox-layout.js.map +1 -1
  77. package/lib/features/{layout → bounds}/layouter.d.ts +1 -1
  78. package/lib/features/{layout → bounds}/layouter.d.ts.map +1 -1
  79. package/lib/features/{layout → bounds}/layouter.js +1 -1
  80. package/lib/features/{layout → bounds}/layouter.js.map +1 -1
  81. package/lib/features/{layout → bounds}/vbox-layout.d.ts +1 -1
  82. package/lib/features/{layout → bounds}/vbox-layout.d.ts.map +1 -1
  83. package/lib/features/{layout → bounds}/vbox-layout.js +1 -1
  84. package/lib/features/{layout → bounds}/vbox-layout.js.map +1 -1
  85. package/lib/features/change-bounds/movement-restrictor.js.map +1 -1
  86. package/lib/features/change-bounds/snap.js.map +1 -1
  87. package/lib/features/command-palette/command-palette-tool.d.ts +1 -1
  88. package/lib/features/command-palette/command-palette-tool.d.ts.map +1 -1
  89. package/lib/features/command-palette/command-palette-tool.js +3 -3
  90. package/lib/features/command-palette/command-palette-tool.js.map +1 -1
  91. package/lib/features/command-palette/di.config.d.ts +0 -15
  92. package/lib/features/command-palette/di.config.d.ts.map +1 -1
  93. package/lib/features/command-palette/di.config.js +6 -7
  94. package/lib/features/command-palette/di.config.js.map +1 -1
  95. package/lib/features/command-palette/server-command-palette-provider.js.map +1 -1
  96. package/lib/features/context-menu/delete-element-context-menu.js.map +1 -1
  97. package/lib/features/context-menu/di.config.d.ts +0 -15
  98. package/lib/features/context-menu/di.config.d.ts.map +1 -1
  99. package/lib/features/context-menu/di.config.js +4 -3
  100. package/lib/features/context-menu/di.config.js.map +1 -1
  101. package/lib/features/context-menu/selection-service-aware-context-menu-mouse-listener.js.map +1 -1
  102. package/lib/features/context-menu/server-context-menu-provider.js.map +1 -1
  103. package/lib/features/copy-paste/copy-paste-context-menu.js.map +1 -1
  104. package/lib/features/copy-paste/copy-paste-handler.d.ts +4 -4
  105. package/lib/features/copy-paste/copy-paste-handler.d.ts.map +1 -1
  106. package/lib/features/copy-paste/copy-paste-handler.js +7 -8
  107. package/lib/features/copy-paste/copy-paste-handler.js.map +1 -1
  108. package/lib/features/decoration/decoration-placer.js.map +1 -1
  109. package/lib/features/decoration/di.config.d.ts +0 -15
  110. package/lib/features/decoration/di.config.d.ts.map +1 -1
  111. package/lib/features/decoration/di.config.js +4 -4
  112. package/lib/features/decoration/di.config.js.map +1 -1
  113. package/lib/features/edit-label/di.config.d.ts +0 -15
  114. package/lib/features/edit-label/di.config.d.ts.map +1 -1
  115. package/lib/features/edit-label/di.config.js +3 -2
  116. package/lib/features/edit-label/di.config.js.map +1 -1
  117. package/lib/features/edit-label/edit-label-tool.js.map +1 -1
  118. package/lib/features/edit-label/edit-label-validator.js.map +1 -1
  119. package/lib/features/export/di.config.d.ts +4 -0
  120. package/lib/features/export/di.config.d.ts.map +1 -0
  121. package/lib/features/export/di.config.js +30 -0
  122. package/lib/features/export/di.config.js.map +1 -0
  123. package/lib/features/export/glsp-svg-exporter.d.ts +1 -1
  124. package/lib/features/export/glsp-svg-exporter.d.ts.map +1 -1
  125. package/lib/features/export/glsp-svg-exporter.js +1 -2
  126. package/lib/features/export/glsp-svg-exporter.js.map +1 -1
  127. package/lib/features/hints/type-hints.js.map +1 -1
  128. package/lib/features/hover/di.config.d.ts +0 -15
  129. package/lib/features/hover/di.config.d.ts.map +1 -1
  130. package/lib/features/hover/di.config.js +7 -7
  131. package/lib/features/hover/di.config.js.map +1 -1
  132. package/lib/features/hover/hover.d.ts.map +1 -1
  133. package/lib/features/hover/hover.js +2 -1
  134. package/lib/features/hover/hover.js.map +1 -1
  135. package/lib/features/layout/di.config.d.ts +1 -1
  136. package/lib/features/layout/di.config.d.ts.map +1 -1
  137. package/lib/features/layout/di.config.js +1 -9
  138. package/lib/features/layout/di.config.js.map +1 -1
  139. package/lib/features/layout/layout-elements-action.d.ts +4 -4
  140. package/lib/features/layout/layout-elements-action.d.ts.map +1 -1
  141. package/lib/features/layout/layout-elements-action.js +2 -2
  142. package/lib/features/layout/layout-elements-action.js.map +1 -1
  143. package/lib/features/mouse-tool/mouse-tool.d.ts +1 -1
  144. package/lib/features/mouse-tool/mouse-tool.d.ts.map +1 -1
  145. package/lib/features/mouse-tool/mouse-tool.js.map +1 -1
  146. package/lib/features/navigation/di.config.d.ts +2 -1
  147. package/lib/features/navigation/di.config.d.ts.map +1 -1
  148. package/lib/features/navigation/di.config.js +3 -3
  149. package/lib/features/navigation/di.config.js.map +1 -1
  150. package/lib/features/navigation/navigation-action-handler.d.ts +2 -2
  151. package/lib/features/navigation/navigation-action-handler.js +2 -2
  152. package/lib/features/navigation/navigation-action-handler.js.map +1 -1
  153. package/lib/features/navigation/navigation-target-resolver.js.map +1 -1
  154. package/lib/features/save/di.config.d.ts +0 -15
  155. package/lib/features/save/di.config.d.ts.map +1 -1
  156. package/lib/features/save/di.config.js +3 -2
  157. package/lib/features/save/di.config.js.map +1 -1
  158. package/lib/features/save/model.d.ts +1 -1
  159. package/lib/features/select/di.config.d.ts +0 -15
  160. package/lib/features/select/di.config.d.ts.map +1 -1
  161. package/lib/features/select/di.config.js +8 -7
  162. package/lib/features/select/di.config.js.map +1 -1
  163. package/lib/features/select/select-feedback-action.js.map +1 -1
  164. package/lib/features/select/select-mouse-listener.d.ts +1 -1
  165. package/lib/features/select/select-mouse-listener.d.ts.map +1 -1
  166. package/lib/features/select/select-mouse-listener.js +2 -1
  167. package/lib/features/select/select-mouse-listener.js.map +1 -1
  168. package/lib/features/select/selection-service.js.map +1 -1
  169. package/lib/features/source-model-watcher/di.config.js +1 -1
  170. package/lib/features/source-model-watcher/source-model-changed-action-handler.js.map +1 -1
  171. package/lib/features/svg-metadata/di.config.d.ts +19 -0
  172. package/lib/features/svg-metadata/di.config.d.ts.map +1 -0
  173. package/lib/features/svg-metadata/di.config.js +26 -0
  174. package/lib/features/svg-metadata/di.config.js.map +1 -0
  175. package/lib/features/svg-metadata/metadata-placer.d.ts +24 -0
  176. package/lib/features/svg-metadata/metadata-placer.d.ts.map +1 -0
  177. package/lib/features/svg-metadata/metadata-placer.js +63 -0
  178. package/lib/features/svg-metadata/metadata-placer.js.map +1 -0
  179. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts +4 -3
  180. package/lib/features/tool-feedback/change-bounds-tool-feedback.d.ts.map +1 -1
  181. package/lib/features/tool-feedback/change-bounds-tool-feedback.js +5 -4
  182. package/lib/features/tool-feedback/change-bounds-tool-feedback.js.map +1 -1
  183. package/lib/features/tool-feedback/creation-tool-feedback.d.ts +7 -7
  184. package/lib/features/tool-feedback/creation-tool-feedback.d.ts.map +1 -1
  185. package/lib/features/tool-feedback/creation-tool-feedback.js +8 -11
  186. package/lib/features/tool-feedback/creation-tool-feedback.js.map +1 -1
  187. package/lib/features/tool-feedback/css-feedback.js.map +1 -1
  188. package/lib/features/tool-feedback/di.config.d.ts +0 -15
  189. package/lib/features/tool-feedback/di.config.d.ts.map +1 -1
  190. package/lib/features/tool-feedback/di.config.js +20 -18
  191. package/lib/features/tool-feedback/di.config.js.map +1 -1
  192. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts +2 -3
  193. package/lib/features/tool-feedback/edge-edit-tool-feedback.d.ts.map +1 -1
  194. package/lib/features/tool-feedback/edge-edit-tool-feedback.js +6 -11
  195. package/lib/features/tool-feedback/edge-edit-tool-feedback.js.map +1 -1
  196. package/lib/features/tool-feedback/feedback-action-dispatcher.js.map +1 -1
  197. package/lib/features/tool-feedback/marquee-tool-feedback.js.map +1 -1
  198. package/lib/features/tool-feedback/view.js.map +1 -1
  199. package/lib/features/tool-palette/di.config.d.ts +0 -15
  200. package/lib/features/tool-palette/di.config.d.ts.map +1 -1
  201. package/lib/features/tool-palette/di.config.js +4 -4
  202. package/lib/features/tool-palette/di.config.js.map +1 -1
  203. package/lib/features/tool-palette/tool-palette.d.ts +1 -1
  204. package/lib/features/tool-palette/tool-palette.d.ts.map +1 -1
  205. package/lib/features/tool-palette/tool-palette.js +2 -2
  206. package/lib/features/tool-palette/tool-palette.js.map +1 -1
  207. package/lib/features/tools/base-glsp-tool.js.map +1 -1
  208. package/lib/features/tools/change-bounds-tool.d.ts +1 -1
  209. package/lib/features/tools/change-bounds-tool.d.ts.map +1 -1
  210. package/lib/features/tools/change-bounds-tool.js +6 -6
  211. package/lib/features/tools/change-bounds-tool.js.map +1 -1
  212. package/lib/features/tools/delete-tool.js.map +1 -1
  213. package/lib/features/tools/di.config.d.ts +18 -5
  214. package/lib/features/tools/di.config.d.ts.map +1 -1
  215. package/lib/features/tools/di.config.js +16 -17
  216. package/lib/features/tools/di.config.js.map +1 -1
  217. package/lib/features/tools/edge-creation-tool.js.map +1 -1
  218. package/lib/features/tools/edge-edit-tool.js.map +1 -1
  219. package/lib/features/tools/enable-default-tools-on-focus-loss.js.map +1 -1
  220. package/lib/features/tools/glsp-manhattan-edge-router.d.ts +20 -0
  221. package/lib/features/tools/glsp-manhattan-edge-router.d.ts.map +1 -0
  222. package/lib/features/tools/glsp-manhattan-edge-router.js +69 -0
  223. package/lib/features/tools/glsp-manhattan-edge-router.js.map +1 -0
  224. package/lib/features/tools/marquee-mouse-tool.js.map +1 -1
  225. package/lib/features/tools/marquee-tool.js.map +1 -1
  226. package/lib/features/tools/node-creation-tool.js.map +1 -1
  227. package/lib/features/tools/view.js.map +1 -1
  228. package/lib/features/validation/di.config.js +4 -4
  229. package/lib/features/validation/di.config.js.map +1 -1
  230. package/lib/features/validation/issue-marker.d.ts +1 -1
  231. package/lib/features/validation/issue-marker.js +1 -1
  232. package/lib/features/validation/marker-navigator.d.ts +1 -1
  233. package/lib/features/validation/marker-navigator.d.ts.map +1 -1
  234. package/lib/features/validation/marker-navigator.js.map +1 -1
  235. package/lib/features/validation/validate.d.ts +6 -6
  236. package/lib/features/validation/validate.d.ts.map +1 -1
  237. package/lib/features/validation/validate.js +18 -17
  238. package/lib/features/validation/validate.js.map +1 -1
  239. package/lib/features/viewport/di.config.d.ts +0 -15
  240. package/lib/features/viewport/di.config.d.ts.map +1 -1
  241. package/lib/features/viewport/di.config.js +12 -11
  242. package/lib/features/viewport/di.config.js.map +1 -1
  243. package/lib/features/viewport/glsp-scroll-mouse-listener.js.map +1 -1
  244. package/lib/index.d.ts +30 -4
  245. package/lib/index.d.ts.map +1 -1
  246. package/lib/index.js +79 -43
  247. package/lib/index.js.map +1 -1
  248. package/lib/lib/model.d.ts +7 -3
  249. package/lib/lib/model.d.ts.map +1 -1
  250. package/lib/lib/model.js +48 -1
  251. package/lib/lib/model.js.map +1 -1
  252. package/lib/model-source/glsp-diagram-server.js.map +1 -1
  253. package/lib/sprotty-reexport.d.ts +7 -7
  254. package/lib/sprotty-reexport.d.ts.map +1 -1
  255. package/lib/sprotty-reexport.js +19 -10
  256. package/lib/sprotty-reexport.js.map +1 -1
  257. package/lib/utils/html-utils.d.ts +1 -1
  258. package/lib/utils/html-utils.js +1 -1
  259. package/lib/utils/smodel-util.d.ts +28 -7
  260. package/lib/utils/smodel-util.d.ts.map +1 -1
  261. package/lib/utils/smodel-util.js +41 -8
  262. package/lib/utils/smodel-util.js.map +1 -1
  263. package/lib/views/base-view-module.d.ts +18 -6
  264. package/lib/views/base-view-module.d.ts.map +1 -1
  265. package/lib/views/base-view-module.js +1 -1
  266. package/lib/views/base-view-module.js.map +1 -1
  267. package/lib/views/compartments.js.map +1 -1
  268. package/lib/views/glsp-edge-view.d.ts +2 -2
  269. package/lib/views/glsp-edge-view.d.ts.map +1 -1
  270. package/lib/views/glsp-edge-view.js +2 -2
  271. package/lib/views/glsp-edge-view.js.map +1 -1
  272. package/lib/views/glsp-projection-view.d.ts +1 -1
  273. package/lib/views/glsp-projection-view.js +1 -1
  274. package/lib/views/glsp-projection-view.js.map +1 -1
  275. package/lib/views/index.d.ts +1 -1
  276. package/lib/views/index.js +1 -1
  277. package/lib/views/issue-marker-view.js.map +1 -1
  278. package/lib/views/rounded-corner-view.js +2 -2
  279. package/lib/views/rounded-corner-view.js.map +1 -1
  280. package/lib/views/rounded-corner.d.ts +1 -1
  281. package/lib/views/rounded-corner.js +1 -1
  282. package/package.json +25 -24
  283. package/src/base/auto-complete/auto-complete-widget.ts +34 -10
  284. package/src/base/command-stack.ts +13 -11
  285. package/src/base/container-modules.ts +44 -11
  286. package/src/base/di.config.ts +8 -8
  287. package/src/base/editor-context-service.ts +4 -4
  288. package/src/base/selection-clearing-mouse-listener.ts +1 -1
  289. package/src/base/tool-manager/glsp-tool-manager.ts +15 -12
  290. package/src/features/accessibility/di.config.ts +26 -0
  291. package/src/features/accessibility/search/di.config.ts +31 -0
  292. package/src/features/accessibility/search/search-palette.ts +181 -0
  293. package/src/features/accessibility/search/search-tool.ts +60 -0
  294. package/src/features/autocomplete-palette/autocomplete-suggestion-providers.ts +37 -0
  295. package/src/features/autocomplete-palette/base-autocomplete-palette.ts +88 -0
  296. package/src/features/bounds/di.config.ts +49 -0
  297. package/src/features/{layout/tests → bounds}/freeform-layout.spec.ts +2 -2
  298. package/src/features/{layout → bounds}/freeform-layout.ts +2 -2
  299. package/src/features/bounds/glsp-hidden-bounds-updater.ts +85 -0
  300. package/src/features/{layout/tests → bounds}/hbox-layout.spec.ts +2 -2
  301. package/src/features/{layout → bounds}/hbox-layout.ts +1 -1
  302. package/src/features/{layout/tests/layouter-test-util.ts → bounds/layouter-test-util.spec.ts} +6 -6
  303. package/src/features/{layout → bounds}/layouter.ts +1 -1
  304. package/src/features/{layout/tests → bounds}/vbox-layout.spec.ts +2 -2
  305. package/src/features/{layout → bounds}/vbox-layout.ts +1 -1
  306. package/src/features/command-palette/command-palette-tool.ts +3 -3
  307. package/src/features/command-palette/di.config.ts +6 -7
  308. package/src/features/context-menu/di.config.ts +4 -3
  309. package/src/features/copy-paste/copy-paste-handler.ts +9 -13
  310. package/src/features/decoration/di.config.ts +4 -4
  311. package/src/features/edit-label/di.config.ts +3 -2
  312. package/src/features/export/di.config.ts +29 -0
  313. package/src/features/export/glsp-svg-exporter.ts +8 -7
  314. package/src/features/hover/di.config.ts +8 -7
  315. package/src/features/hover/hover.ts +2 -1
  316. package/src/features/layout/di.config.ts +2 -11
  317. package/src/features/layout/layout-elements-action.ts +2 -1
  318. package/src/features/navigation/di.config.ts +4 -2
  319. package/src/features/navigation/navigation-action-handler.ts +2 -2
  320. package/src/features/save/di.config.ts +3 -2
  321. package/src/features/save/model.ts +1 -1
  322. package/src/features/select/di.config.ts +8 -7
  323. package/src/features/select/select-mouse-listener.ts +2 -2
  324. package/src/features/select/selection-service.spec.ts +4 -5
  325. package/src/features/source-model-watcher/di.config.ts +1 -1
  326. package/src/features/svg-metadata/di.config.ts +26 -0
  327. package/src/features/svg-metadata/metadata-placer.ts +51 -0
  328. package/src/features/tool-feedback/change-bounds-tool-feedback.ts +4 -4
  329. package/src/features/tool-feedback/creation-tool-feedback.ts +22 -16
  330. package/src/features/tool-feedback/di.config.ts +20 -18
  331. package/src/features/tool-feedback/edge-edit-tool-feedback.ts +3 -11
  332. package/src/features/tool-palette/di.config.ts +4 -4
  333. package/src/features/tool-palette/tool-palette.ts +4 -4
  334. package/src/features/tools/change-bounds-tool.ts +7 -7
  335. package/src/features/tools/di.config.ts +20 -21
  336. package/src/features/tools/glsp-manhattan-edge-router.ts +60 -0
  337. package/src/features/validation/di.config.ts +5 -5
  338. package/src/features/validation/issue-marker.ts +1 -1
  339. package/src/features/validation/validate.ts +16 -19
  340. package/src/features/viewport/di.config.ts +13 -11
  341. package/src/index.ts +41 -5
  342. package/src/lib/model.ts +35 -3
  343. package/src/sprotty-reexport.ts +24 -8
  344. package/src/utils/html-utils.ts +1 -1
  345. package/src/utils/smodel-util.ts +55 -11
  346. package/src/views/base-view-module.ts +4 -9
  347. package/src/views/glsp-edge-view.tsx +3 -3
  348. package/src/views/glsp-projection-view.tsx +1 -1
  349. package/src/views/index.ts +1 -2
  350. package/src/views/rounded-corner-view.tsx +2 -2
  351. package/src/views/rounded-corner.ts +2 -2
  352. package/lib/features/change-bounds/snap.spec.d.ts.map +0 -1
  353. package/lib/features/change-bounds/snap.spec.js +0 -82
  354. package/lib/features/change-bounds/snap.spec.js.map +0 -1
  355. package/lib/features/layout/layout-elements-action.spec.d.ts +0 -3
  356. package/lib/features/layout/layout-elements-action.spec.d.ts.map +0 -1
  357. package/lib/features/layout/layout-elements-action.spec.js +0 -325
  358. package/lib/features/layout/layout-elements-action.spec.js.map +0 -1
  359. package/lib/features/layout/tests/freeform-layout.spec.d.ts +0 -3
  360. package/lib/features/layout/tests/freeform-layout.spec.d.ts.map +0 -1
  361. package/lib/features/layout/tests/freeform-layout.spec.js +0 -201
  362. package/lib/features/layout/tests/freeform-layout.spec.js.map +0 -1
  363. package/lib/features/layout/tests/hbox-layout.spec.d.ts +0 -3
  364. package/lib/features/layout/tests/hbox-layout.spec.d.ts.map +0 -1
  365. package/lib/features/layout/tests/hbox-layout.spec.js +0 -161
  366. package/lib/features/layout/tests/hbox-layout.spec.js.map +0 -1
  367. package/lib/features/layout/tests/layouter-test-util.d.ts +0 -34
  368. package/lib/features/layout/tests/layouter-test-util.d.ts.map +0 -1
  369. package/lib/features/layout/tests/layouter-test-util.js +0 -96
  370. package/lib/features/layout/tests/layouter-test-util.js.map +0 -1
  371. package/lib/features/layout/tests/vbox-layout.spec.d.ts +0 -3
  372. package/lib/features/layout/tests/vbox-layout.spec.d.ts.map +0 -1
  373. package/lib/features/layout/tests/vbox-layout.spec.js +0 -161
  374. package/lib/features/layout/tests/vbox-layout.spec.js.map +0 -1
  375. package/lib/features/navigation/navigation-target-resolver.spec.d.ts +0 -3
  376. package/lib/features/navigation/navigation-target-resolver.spec.d.ts.map +0 -1
  377. package/lib/features/navigation/navigation-target-resolver.spec.js +0 -54
  378. package/lib/features/navigation/navigation-target-resolver.spec.js.map +0 -1
  379. package/lib/features/select/selection-service.spec.d.ts +0 -2
  380. package/lib/features/select/selection-service.spec.d.ts.map +0 -1
  381. package/lib/features/select/selection-service.spec.js +0 -347
  382. package/lib/features/select/selection-service.spec.js.map +0 -1
  383. package/lib/features/tools/marquee-behavior.spec.d.ts.map +0 -1
  384. package/lib/features/tools/marquee-behavior.spec.js +0 -165
  385. package/lib/features/tools/marquee-behavior.spec.js.map +0 -1
  386. package/lib/features/validation/marker-navigator.spec.d.ts +0 -3
  387. package/lib/features/validation/marker-navigator.spec.d.ts.map +0 -1
  388. package/lib/features/validation/marker-navigator.spec.js +0 -169
  389. package/lib/features/validation/marker-navigator.spec.js.map +0 -1
@@ -1,325 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /********************************************************************************
4
- * Copyright (c) 2019-2022 EclipseSource and others.
5
- *
6
- * This program and the accompanying materials are made available under the
7
- * terms of the Eclipse Public License v. 2.0 which is available at
8
- * http://www.eclipse.org/legal/epl-2.0.
9
- *
10
- * This Source Code may also be made available under the following Secondary
11
- * Licenses when the conditions for such availability set forth in the Eclipse
12
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
13
- * with the GNU Classpath Exception which is available at
14
- * https://www.gnu.org/software/classpath/license.html.
15
- *
16
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
17
- ********************************************************************************/
18
- /* eslint-disable deprecation/deprecation */
19
- const protocol_1 = require("@eclipse-glsp/protocol");
20
- const chai_1 = require("chai");
21
- const inversify_1 = require("inversify");
22
- require("mocha");
23
- require("reflect-metadata");
24
- const sprotty_1 = require("sprotty");
25
- const types_1 = require("../../base/types");
26
- const model_1 = require("../change-bounds/model");
27
- const selection_service_1 = require("../select/selection-service");
28
- const feedback_action_dispatcher_1 = require("../tool-feedback/feedback-action-dispatcher");
29
- const layout_elements_action_1 = require("./layout-elements-action");
30
- class MockActionDispatcher {
31
- constructor(dispatchedActions = []) {
32
- this.dispatchedActions = dispatchedActions;
33
- }
34
- dispatch(action) {
35
- this.dispatchedActions.push(action);
36
- return Promise.resolve();
37
- }
38
- dispatchAll(actions) {
39
- actions.forEach(action => this.dispatchedActions.push(action));
40
- return Promise.resolve();
41
- }
42
- request(action) {
43
- throw new Error('Method not implemented.');
44
- }
45
- }
46
- class MockSelectionService extends selection_service_1.SelectionService {
47
- constructor(modelRoot) {
48
- super();
49
- this.modelRoot = modelRoot;
50
- }
51
- getModelRoot() {
52
- return this.modelRoot;
53
- }
54
- }
55
- // Generic Test setup
56
- const container = new inversify_1.Container();
57
- container.load(sprotty_1.defaultModule);
58
- container.bind(types_1.TYPES.IFeedbackActionDispatcher).to(feedback_action_dispatcher_1.FeedbackActionDispatcher).inSingletonScope();
59
- container.rebind(types_1.TYPES.IModelFactory).to(sprotty_1.SGraphFactory).inSingletonScope();
60
- const graphFactory = container.get(types_1.TYPES.IModelFactory);
61
- const actionDispatcher = new MockActionDispatcher();
62
- const node1 = {
63
- id: 'node1',
64
- type: 'node:circle',
65
- selected: true
66
- };
67
- const node2 = {
68
- id: 'node2',
69
- type: 'node:circle',
70
- selected: true
71
- };
72
- const node3 = {
73
- id: 'node3',
74
- type: 'node:circle',
75
- selected: true
76
- };
77
- const model = createModel();
78
- function createModel() {
79
- const root = graphFactory.createRoot({
80
- id: 'model1',
81
- type: 'graph',
82
- children: [node1, node2, node3]
83
- });
84
- root.children.forEach(child => applyFeature(child, model_1.resizeFeature));
85
- return root;
86
- }
87
- function applyFeature(element, feature) {
88
- element.features.add(feature);
89
- }
90
- const context = {
91
- root: model,
92
- modelFactory: graphFactory,
93
- duration: 0,
94
- modelChanged: undefined,
95
- logger: new sprotty_1.ConsoleLogger(),
96
- syncer: new sprotty_1.AnimationFrameSyncer()
97
- };
98
- const defaultSize = { height: 10, width: 10 };
99
- describe('AlignElementsCommand', () => {
100
- let handler;
101
- const setModel = (newModel) => {
102
- handler['selectionService'] = new MockSelectionService(newModel);
103
- };
104
- beforeEach(() => {
105
- actionDispatcher.dispatchedActions = [];
106
- handler = new layout_elements_action_1.AlignElementsActionHandler();
107
- handler['actionDispatcher'] = actionDispatcher;
108
- });
109
- it('should align all elements left', () => {
110
- const newModel = initModel([
111
- { elementId: 'node1', newPosition: { x: 111, y: 111 }, newSize: defaultSize },
112
- { elementId: 'node2', newPosition: { x: 222, y: 222 }, newSize: defaultSize },
113
- { elementId: 'node3', newPosition: { x: 333, y: 333 }, newSize: defaultSize }
114
- ]);
115
- const action = layout_elements_action_1.AlignElementsAction.create({ elementIds: ['node1', 'node2', 'node3'], alignment: layout_elements_action_1.Alignment.Left });
116
- setModel(newModel);
117
- handler.handle(action);
118
- assertAllBounds(new Map([
119
- ['node1', { x: 111, y: 111, width: defaultSize.width, height: defaultSize.height }],
120
- ['node2', { x: 111, y: 222, width: defaultSize.width, height: defaultSize.height }],
121
- ['node3', { x: 111, y: 333, width: defaultSize.width, height: defaultSize.height }]
122
- ]));
123
- });
124
- it('should align all elements right', () => {
125
- const newModel = initModel([
126
- { elementId: 'node1', newPosition: { x: 111, y: 111 }, newSize: defaultSize },
127
- { elementId: 'node2', newPosition: { x: 222, y: 222 }, newSize: defaultSize },
128
- { elementId: 'node3', newPosition: { x: 333, y: 333 }, newSize: defaultSize }
129
- ]);
130
- const action = layout_elements_action_1.AlignElementsAction.create({ elementIds: ['node1', 'node2', 'node3'], alignment: layout_elements_action_1.Alignment.Right });
131
- setModel(newModel);
132
- handler.handle(action);
133
- assertAllBounds(new Map([
134
- ['node1', { x: 333, y: 111, width: defaultSize.width, height: defaultSize.height }],
135
- ['node2', { x: 333, y: 222, width: defaultSize.width, height: defaultSize.height }],
136
- ['node3', { x: 333, y: 333, width: defaultSize.width, height: defaultSize.height }]
137
- ]));
138
- });
139
- it('should align all elements center', () => {
140
- actionDispatcher.dispatchedActions = [];
141
- const newModel = initModel([
142
- { elementId: 'node1', newPosition: { x: 111, y: 111 }, newSize: defaultSize },
143
- { elementId: 'node2', newPosition: { x: 222, y: 222 }, newSize: defaultSize },
144
- { elementId: 'node3', newPosition: { x: 333, y: 333 }, newSize: defaultSize }
145
- ]);
146
- const action = layout_elements_action_1.AlignElementsAction.create({ elementIds: ['node1', 'node2', 'node3'], alignment: layout_elements_action_1.Alignment.Center });
147
- setModel(newModel);
148
- handler.handle(action);
149
- assertAllBounds(new Map([
150
- ['node1', { x: 222, y: 111, width: defaultSize.width, height: defaultSize.height }],
151
- ['node2', { x: 222, y: 222, width: defaultSize.width, height: defaultSize.height }],
152
- ['node3', { x: 222, y: 333, width: defaultSize.width, height: defaultSize.height }]
153
- ]));
154
- });
155
- it('should align all elements top', () => {
156
- const newModel = initModel([
157
- { elementId: 'node1', newPosition: { x: 111, y: 111 }, newSize: defaultSize },
158
- { elementId: 'node2', newPosition: { x: 222, y: 222 }, newSize: defaultSize },
159
- { elementId: 'node3', newPosition: { x: 333, y: 333 }, newSize: defaultSize }
160
- ]);
161
- const action = layout_elements_action_1.AlignElementsAction.create({ elementIds: ['node1', 'node2', 'node3'], alignment: layout_elements_action_1.Alignment.Top });
162
- setModel(newModel);
163
- handler.handle(action);
164
- assertAllBounds(new Map([
165
- ['node1', { x: 111, y: 111, width: defaultSize.width, height: defaultSize.height }],
166
- ['node2', { x: 222, y: 111, width: defaultSize.width, height: defaultSize.height }],
167
- ['node3', { x: 333, y: 111, width: defaultSize.width, height: defaultSize.height }]
168
- ]));
169
- });
170
- it('should align all elements bottom', () => {
171
- const newModel = initModel([
172
- { elementId: 'node1', newPosition: { x: 111, y: 111 }, newSize: defaultSize },
173
- { elementId: 'node2', newPosition: { x: 222, y: 222 }, newSize: defaultSize },
174
- { elementId: 'node3', newPosition: { x: 333, y: 333 }, newSize: defaultSize }
175
- ]);
176
- const action = layout_elements_action_1.AlignElementsAction.create({ elementIds: ['node1', 'node2', 'node3'], alignment: layout_elements_action_1.Alignment.Bottom });
177
- setModel(newModel);
178
- handler.handle(action);
179
- assertAllBounds(new Map([
180
- ['node1', { x: 111, y: 333, width: defaultSize.width, height: defaultSize.height }],
181
- ['node2', { x: 222, y: 333, width: defaultSize.width, height: defaultSize.height }],
182
- ['node3', { x: 333, y: 333, width: defaultSize.width, height: defaultSize.height }]
183
- ]));
184
- });
185
- it('should align all elements middle', () => {
186
- const newModel = initModel([
187
- { elementId: 'node1', newPosition: { x: 111, y: 111 }, newSize: defaultSize },
188
- { elementId: 'node2', newPosition: { x: 222, y: 222 }, newSize: defaultSize },
189
- { elementId: 'node3', newPosition: { x: 333, y: 333 }, newSize: defaultSize }
190
- ]);
191
- const action = layout_elements_action_1.AlignElementsAction.create({ elementIds: ['node1', 'node2', 'node3'], alignment: layout_elements_action_1.Alignment.Middle });
192
- setModel(newModel);
193
- handler.handle(action);
194
- assertAllBounds(new Map([
195
- ['node1', { x: 111, y: 222, width: defaultSize.width, height: defaultSize.height }],
196
- ['node2', { x: 222, y: 222, width: defaultSize.width, height: defaultSize.height }],
197
- ['node3', { x: 333, y: 222, width: defaultSize.width, height: defaultSize.height }]
198
- ]));
199
- });
200
- });
201
- describe('ResizeElementsCommand', () => {
202
- let handler;
203
- const setModel = (newModel) => {
204
- handler['selectionService'] = new MockSelectionService(newModel);
205
- };
206
- beforeEach(() => {
207
- actionDispatcher.dispatchedActions = [];
208
- handler = new layout_elements_action_1.ResizeElementsActionHandler();
209
- handler['actionDispatcher'] = actionDispatcher;
210
- });
211
- it('should make same width as last', () => {
212
- const newModel = initModel([
213
- { elementId: 'node1', newPosition: { x: 100, y: 100 }, newSize: { height: 10, width: 10 } },
214
- { elementId: 'node2', newPosition: { x: 100, y: 200 }, newSize: { height: 20, width: 20 } },
215
- { elementId: 'node3', newPosition: { x: 100, y: 300 }, newSize: { height: 30, width: 30 } }
216
- ]);
217
- const action = layout_elements_action_1.ResizeElementsAction.create({
218
- elementIds: ['node1', 'node2', 'node3'],
219
- dimension: layout_elements_action_1.ResizeDimension.Width,
220
- reduceFunction: 'last'
221
- });
222
- setModel(newModel);
223
- handler.handle(action);
224
- // resize is keeping the center, so the X moves by diff / 2
225
- assertAllBoundsInChangeBounds(new Map([
226
- ['node1', { x: 90, y: 100, height: 10, width: 30 }],
227
- ['node2', { x: 95, y: 200, height: 20, width: 30 }],
228
- ['node3', { x: 100, y: 300, height: 30, width: 30 }]
229
- ]));
230
- });
231
- it('should make same height as last', () => {
232
- const newModel = initModel([
233
- { elementId: 'node1', newPosition: { x: 100, y: 100 }, newSize: { height: 10, width: 10 } },
234
- { elementId: 'node2', newPosition: { x: 100, y: 200 }, newSize: { height: 20, width: 20 } },
235
- { elementId: 'node3', newPosition: { x: 100, y: 300 }, newSize: { height: 30, width: 30 } }
236
- ]);
237
- const action = layout_elements_action_1.ResizeElementsAction.create({
238
- elementIds: ['node1', 'node2', 'node3'],
239
- dimension: layout_elements_action_1.ResizeDimension.Height,
240
- reduceFunction: 'last'
241
- });
242
- setModel(newModel);
243
- handler.handle(action);
244
- // resize is keeping the center, so the Y moves by diff / 2
245
- assertAllBoundsInChangeBounds(new Map([
246
- ['node1', { x: 100, y: 90, height: 30, width: 10 }],
247
- ['node2', { x: 100, y: 195, height: 30, width: 20 }],
248
- ['node3', { x: 100, y: 300, height: 30, width: 30 }]
249
- ]));
250
- });
251
- it('should make same width and height as last', () => {
252
- const newModel = initModel([
253
- { elementId: 'node1', newPosition: { x: 100, y: 100 }, newSize: { height: 10, width: 10 } },
254
- { elementId: 'node2', newPosition: { x: 100, y: 200 }, newSize: { height: 20, width: 20 } },
255
- { elementId: 'node3', newPosition: { x: 100, y: 300 }, newSize: { height: 30, width: 30 } }
256
- ]);
257
- const action = layout_elements_action_1.ResizeElementsAction.create({
258
- elementIds: ['node1', 'node2', 'node3'],
259
- dimension: layout_elements_action_1.ResizeDimension.Width_And_Height,
260
- reduceFunction: 'last'
261
- });
262
- setModel(newModel);
263
- handler.handle(action);
264
- // resize is keeping the center, so the Y moves by diff / 2
265
- assertAllBoundsInChangeBounds(new Map([
266
- ['node1', { x: 90, y: 90, height: 30, width: 30 }],
267
- ['node2', { x: 95, y: 195, height: 30, width: 30 }],
268
- ['node3', { x: 100, y: 300, height: 30, width: 30 }]
269
- ]));
270
- });
271
- });
272
- function initModel(elementAndBounds) {
273
- const mySetBoundsAction = protocol_1.SetBoundsAction.create(elementAndBounds);
274
- const setBoundsCommand = new sprotty_1.SetBoundsCommand(mySetBoundsAction);
275
- return setBoundsCommand.execute(context);
276
- }
277
- function assertAllBounds(allBounds) {
278
- allBounds.forEach((bounds, nodeId) => assertBounds(nodeId, bounds));
279
- }
280
- function assertAllBoundsInChangeBounds(allBounds) {
281
- allBounds.forEach((bounds, nodeId) => assertBoundsInChangeBoundsActions(nodeId, bounds));
282
- }
283
- function assertBounds(nodeId, bounds) {
284
- assertBoundsInMoves(nodeId, bounds);
285
- assertBoundsInChangeBoundsActions(nodeId, bounds);
286
- }
287
- function assertBoundsInMoves(nodeId, bounds) {
288
- const moves = dispatchedElementMoves();
289
- const move = getMoveById(nodeId, moves);
290
- (0, chai_1.expect)(move.toPosition.x).to.be.equal(bounds.x);
291
- (0, chai_1.expect)(move.toPosition.y).to.be.equal(bounds.y);
292
- }
293
- function assertBoundsInChangeBoundsActions(nodeId, bounds) {
294
- const allChangeBounds = dispatchedChangeBounds();
295
- const changeBounds = getElementAndBoundsById(nodeId, allChangeBounds);
296
- (0, chai_1.expect)(changeBounds.newPosition.x).to.be.equal(bounds.x);
297
- (0, chai_1.expect)(changeBounds.newPosition.y).to.be.equal(bounds.y);
298
- (0, chai_1.expect)(changeBounds.newSize.height).to.be.equal(bounds.height);
299
- (0, chai_1.expect)(changeBounds.newSize.width).to.be.equal(bounds.width);
300
- }
301
- function getMoveById(id, moves) {
302
- return moves.filter(m => m.elementId === id)[0];
303
- }
304
- function getElementAndBoundsById(id, elementAndBounds) {
305
- return elementAndBounds.filter(m => m.elementId === id)[0];
306
- }
307
- function dispatchedElementMoves() {
308
- return actionDispatcher.dispatchedActions
309
- .filter(isMoveAction)
310
- .map(a => a.moves)
311
- .reduce((acc, val) => acc.concat(val), []);
312
- }
313
- function dispatchedChangeBounds() {
314
- return actionDispatcher.dispatchedActions
315
- .filter(isChangeBounds)
316
- .map(a => a.newBounds)
317
- .reduce((acc, val) => acc.concat(val), []);
318
- }
319
- function isMoveAction(action) {
320
- return action.kind === sprotty_1.MoveCommand.KIND;
321
- }
322
- function isChangeBounds(action) {
323
- return action.kind === protocol_1.ChangeBoundsOperation.KIND;
324
- }
325
- //# sourceMappingURL=layout-elements-action.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"layout-elements-action.spec.js","sourceRoot":"","sources":["../../../src/features/layout/layout-elements-action.spec.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import 'mocha';
2
- import 'reflect-metadata';
3
- //# sourceMappingURL=freeform-layout.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"freeform-layout.spec.d.ts","sourceRoot":"","sources":["../../../../src/features/layout/tests/freeform-layout.spec.ts"],"names":[],"mappings":"AAgBA,OAAO,OAAO,CAAC;AACf,OAAO,kBAAkB,CAAC"}
@@ -1,201 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /********************************************************************************
4
- * Copyright (c) 2022 STMicroelectronics and others.
5
- *
6
- * This program and the accompanying materials are made available under the
7
- * terms of the Eclipse Public License v. 2.0 which is available at
8
- * http://www.eclipse.org/legal/epl-2.0.
9
- *
10
- * This Source Code may also be made available under the following Secondary
11
- * Licenses when the conditions for such availability set forth in the Eclipse
12
- * Public License v. 2.0 are satisfied: GNU General Public License, version 2
13
- * with the GNU Classpath Exception which is available at
14
- * https://www.gnu.org/software/classpath/license.html.
15
- *
16
- * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
17
- ********************************************************************************/
18
- const chai_1 = require("chai");
19
- require("mocha");
20
- require("reflect-metadata");
21
- const sprotty_1 = require("sprotty");
22
- const layouter_test_util_1 = require("./layouter-test-util");
23
- describe('FreeFormLayouter', () => {
24
- const layoutRegistry = (0, layouter_test_util_1.setupLayoutRegistry)();
25
- const log = new sprotty_1.ConsoleLogger();
26
- const map = new Map();
27
- describe('issue-610', () => {
28
- it('recursive hGrab/vGrab', () => {
29
- /**
30
- * _________________________
31
- * | Category 1 |
32
- * | _______________________ |
33
- * || ||
34
- * || ||
35
- * || ||
36
- * || ||
37
- * ||_______________________||
38
- * | _______________________ |
39
- * ||_left____________right_||
40
- * |_________________________|
41
- *
42
- * This test case checks recursive hGrab/vGrab functionality of nested compartments
43
- * See also issue 610 for details and an example model https://github.com/eclipse-glsp/glsp/issues/610.
44
- */
45
- const model = (0, layouter_test_util_1.gModel)();
46
- const category = (0, layouter_test_util_1.sNode)('category', 'vbox', { width: 410.0, height: 215.0 }, undefined, {
47
- vGrab: false,
48
- hGrab: false,
49
- hAlign: 'center',
50
- prefWidth: 410.0,
51
- prefHeight: 215.0
52
- });
53
- const headerComp = (0, layouter_test_util_1.sComp)('comp:header', 'hbox');
54
- headerComp.children = [(0, layouter_test_util_1.sLabel)('Category 1')];
55
- const childContainer = (0, layouter_test_util_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
56
- const labelContainer = (0, layouter_test_util_1.sComp)('struct', 'hbox', { hGrab: true });
57
- labelContainer.children = [(0, layouter_test_util_1.sLabel)('left text', { hGrab: true }), (0, layouter_test_util_1.sLabel)('right text')];
58
- category.children = [headerComp, childContainer, labelContainer];
59
- model.add(category);
60
- (0, layouter_test_util_1.layout)(layoutRegistry, log, map, model);
61
- // check category
62
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 410.0, height: 215.0 });
63
- // check header compartment
64
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
65
- // check child freeform compartment
66
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 5, y: 5, width: 400.0, height: 205.0 });
67
- // check label compartment
68
- (0, chai_1.expect)(map.get(category.children[2]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
69
- });
70
- });
71
- describe('issue-694', () => {
72
- it('Structure compartment (hGrab=true, vGrab=true), Left-aligned label (hGrab=true), right-aligned label (hGrab=false)', () => {
73
- /**
74
- * _________________________
75
- * | Category 2 |
76
- * | _______________________ |
77
- * || ||
78
- * || ||
79
- * || Task node ||
80
- * || ||
81
- * ||_______________________||
82
- * | _______________________ |
83
- * ||_left____________right_||
84
- * |_________________________|
85
- */
86
- const model = (0, layouter_test_util_1.gModel)();
87
- const category = (0, layouter_test_util_1.sNode)('category', 'vbox', { width: 500.0, height: 375.0 }, undefined, {
88
- vGrab: false,
89
- hGrab: false,
90
- hAlign: 'center',
91
- prefWidth: 500.0,
92
- prefHeight: 375.0
93
- });
94
- const headerComp = (0, layouter_test_util_1.sComp)('comp:header', 'hbox');
95
- headerComp.children = [(0, layouter_test_util_1.sLabel)('Category 2')];
96
- const childContainer = (0, layouter_test_util_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
97
- const childNode = (0, layouter_test_util_1.sNode)('task', 'hbox', undefined, { x: 170, y: 190 });
98
- childNode.children = [(0, layouter_test_util_1.sLabel)('Task node', undefined, { x: 5.0, y: 5.0 }, { width: 25.0, height: 20.0 })];
99
- childContainer.children = [childNode];
100
- const labelContainer = (0, layouter_test_util_1.sComp)('struct', 'hbox', { hGrab: true });
101
- labelContainer.children = [(0, layouter_test_util_1.sLabel)('left text', { hGrab: true }), (0, layouter_test_util_1.sLabel)('right text')];
102
- category.children = [headerComp, childContainer, labelContainer];
103
- model.add(category);
104
- // layout graph
105
- (0, layouter_test_util_1.layout)(layoutRegistry, log, map, model);
106
- // check category
107
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 500.0, height: 375.0 });
108
- // check header compartment
109
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
110
- // check child freeform compartment
111
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 5.0, y: 5.0, width: 490.0, height: 365.0 });
112
- // check child task node
113
- (0, chai_1.expect)(map.get(category.children[1].children[0]).bounds).to.deep.equal({ x: 170.0, y: 190.0, width: 35.0, height: 30.0 });
114
- // check label compartment
115
- (0, chai_1.expect)(map.get(category.children[2]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
116
- });
117
- it('Structure compartment (hGrab=true, vGrab=true)', () => {
118
- /**
119
- * _________________________
120
- * | Category 2 |
121
- * | _______________________ |
122
- * || ||
123
- * || Task node ||
124
- * || ||
125
- * || ||
126
- * ||_______________________||
127
- * |_________________________|
128
- */
129
- const model = (0, layouter_test_util_1.gModel)();
130
- const category = (0, layouter_test_util_1.sNode)('category', 'vbox', { width: 500.0, height: 375.0 }, undefined, {
131
- vGrab: false,
132
- hGrab: false,
133
- hAlign: 'center',
134
- prefWidth: 500.0,
135
- prefHeight: 375.0
136
- });
137
- const headerComp = (0, layouter_test_util_1.sComp)('comp:header', 'hbox');
138
- headerComp.children = [(0, layouter_test_util_1.sLabel)('Category 2')];
139
- const childContainer = (0, layouter_test_util_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
140
- const childNode = (0, layouter_test_util_1.sNode)('task', 'hbox', undefined, { x: 55, y: 15 });
141
- childNode.children = [(0, layouter_test_util_1.sLabel)('Task node', undefined, undefined, { width: 50.0, height: 35.0 })];
142
- childContainer.children = [childNode];
143
- category.children = [headerComp, childContainer];
144
- model.add(category);
145
- // layout graph
146
- (0, layouter_test_util_1.layout)(layoutRegistry, log, map, model);
147
- // check category
148
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 500.0, height: 375.0 });
149
- // check header compartment
150
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
151
- // check child freeform compartment
152
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 5.0, y: 5.0, width: 490.0, height: 365.0 });
153
- // check child task node
154
- (0, chai_1.expect)(map.get(category.children[1].children[0]).bounds).to.deep.equal({ x: 55.0, y: 15.0, width: 60.0, height: 45.0 });
155
- });
156
- it('Structure compartment (hGrab=true, vGrab=true, padding*=10)', () => {
157
- /**
158
- * _________________________
159
- * | Category 2 |
160
- * | _______________________ |
161
- * || ||
162
- * || Task node ||
163
- * || ||
164
- * || ||
165
- * ||_______________________||
166
- * |_________________________|
167
- */
168
- const model = (0, layouter_test_util_1.gModel)();
169
- const category = (0, layouter_test_util_1.sNode)('category', 'vbox', { width: 500.0, height: 375.0 }, undefined, {
170
- vGrab: false,
171
- hGrab: false,
172
- hAlign: 'center',
173
- prefWidth: 500.0,
174
- prefHeight: 375.0,
175
- paddingLeft: 10,
176
- paddingRight: 10,
177
- paddingTop: 10,
178
- paddingBottom: 10
179
- });
180
- const headerComp = (0, layouter_test_util_1.sComp)('comp:header', 'hbox');
181
- headerComp.children = [(0, layouter_test_util_1.sLabel)('Category 2')];
182
- const childContainer = (0, layouter_test_util_1.sComp)('struct', 'freeform', { hGrab: true, vGrab: true });
183
- const childNode = (0, layouter_test_util_1.sNode)('task', 'hbox', undefined, { x: 55, y: 15 }, { paddingLeft: 10, paddingRight: 10, paddingTop: 10, paddingBottom: 10 });
184
- childNode.children = [(0, layouter_test_util_1.sLabel)('Task node', undefined, undefined, { width: 50.0, height: 35.0 })];
185
- childContainer.children = [childNode];
186
- category.children = [headerComp, childContainer];
187
- model.add(category);
188
- // layout graph
189
- (0, layouter_test_util_1.layout)(layoutRegistry, log, map, model);
190
- // check category
191
- (0, chai_1.expect)(map.get(category).bounds).to.deep.equal({ x: 0, y: 0, width: 500.0, height: 375.0 });
192
- // check header compartment
193
- (0, chai_1.expect)(map.get(category.children[0]).bounds).to.deep.equal({ x: 0, y: 0, width: -1, height: -1 });
194
- // check child freeform compartment
195
- (0, chai_1.expect)(map.get(category.children[1]).bounds).to.deep.equal({ x: 10.0, y: 10.0, width: 480.0, height: 355.0 });
196
- // check child task node
197
- (0, chai_1.expect)(map.get(category.children[1].children[0]).bounds).to.deep.equal({ x: 55.0, y: 15.0, width: 70.0, height: 55.0 });
198
- });
199
- });
200
- });
201
- //# sourceMappingURL=freeform-layout.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"freeform-layout.spec.js","sourceRoot":"","sources":["../../../../src/features/layout/tests/freeform-layout.spec.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import 'mocha';
2
- import 'reflect-metadata';
3
- //# sourceMappingURL=hbox-layout.spec.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hbox-layout.spec.d.ts","sourceRoot":"","sources":["../../../../src/features/layout/tests/hbox-layout.spec.ts"],"names":[],"mappings":"AAkBA,OAAO,OAAO,CAAC;AACf,OAAO,kBAAkB,CAAC"}