@api-client/ui 0.2.2 → 0.2.4

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 (371) hide show
  1. package/.vscode/settings.json +3 -3
  2. package/build/src/elements/authorization/ui/ApiKeyAuthorization.d.ts +1 -1
  3. package/build/src/elements/authorization/ui/ApiKeyAuthorization.d.ts.map +1 -1
  4. package/build/src/elements/authorization/ui/ApiKeyAuthorization.js +7 -7
  5. package/build/src/elements/authorization/ui/ApiKeyAuthorization.js.map +1 -1
  6. package/build/src/elements/authorization/ui/Authorization.styles.js +4 -4
  7. package/build/src/elements/authorization/ui/Authorization.styles.js.map +1 -1
  8. package/build/src/elements/authorization/ui/BasicAuthorization.d.ts +1 -1
  9. package/build/src/elements/authorization/ui/BasicAuthorization.d.ts.map +1 -1
  10. package/build/src/elements/authorization/ui/BasicAuthorization.js +5 -5
  11. package/build/src/elements/authorization/ui/BasicAuthorization.js.map +1 -1
  12. package/build/src/elements/authorization/ui/BearerAuthorization.d.ts +1 -1
  13. package/build/src/elements/authorization/ui/BearerAuthorization.d.ts.map +1 -1
  14. package/build/src/elements/authorization/ui/BearerAuthorization.js +3 -3
  15. package/build/src/elements/authorization/ui/BearerAuthorization.js.map +1 -1
  16. package/build/src/elements/authorization/ui/NtlmAuthorization.d.ts +1 -1
  17. package/build/src/elements/authorization/ui/NtlmAuthorization.d.ts.map +1 -1
  18. package/build/src/elements/authorization/ui/NtlmAuthorization.js +7 -7
  19. package/build/src/elements/authorization/ui/NtlmAuthorization.js.map +1 -1
  20. package/build/src/elements/authorization/ui/OAuth2Authorization.d.ts +1 -1
  21. package/build/src/elements/authorization/ui/OAuth2Authorization.d.ts.map +1 -1
  22. package/build/src/elements/authorization/ui/OAuth2Authorization.js +32 -27
  23. package/build/src/elements/authorization/ui/OAuth2Authorization.js.map +1 -1
  24. package/build/src/elements/authorization/ui/OidcAuthorization.js +4 -4
  25. package/build/src/elements/authorization/ui/OidcAuthorization.js.map +1 -1
  26. package/build/src/elements/autocomplete/autocomplete-input.d.ts +10 -0
  27. package/build/src/elements/autocomplete/autocomplete-input.d.ts.map +1 -0
  28. package/build/src/{md/text-field/ui-text-field.js → elements/autocomplete/autocomplete-input.js} +9 -9
  29. package/build/src/elements/autocomplete/autocomplete-input.js.map +1 -0
  30. package/build/src/elements/autocomplete/internals/autocomplete.d.ts +209 -0
  31. package/build/src/elements/autocomplete/internals/autocomplete.d.ts.map +1 -0
  32. package/build/src/elements/autocomplete/internals/autocomplete.js +493 -0
  33. package/build/src/elements/autocomplete/internals/autocomplete.js.map +1 -0
  34. package/build/src/elements/autocomplete/internals/autocomplete.styles.d.ts +3 -0
  35. package/build/src/elements/autocomplete/internals/autocomplete.styles.d.ts.map +1 -0
  36. package/build/src/elements/autocomplete/internals/autocomplete.styles.js +25 -0
  37. package/build/src/elements/autocomplete/internals/autocomplete.styles.js.map +1 -0
  38. package/build/src/elements/dialog/internals/DeleteCookieAction.element.d.ts +1 -1
  39. package/build/src/elements/dialog/internals/DeleteCookieAction.element.d.ts.map +1 -1
  40. package/build/src/elements/dialog/internals/DeleteCookieAction.element.js +5 -5
  41. package/build/src/elements/dialog/internals/DeleteCookieAction.element.js.map +1 -1
  42. package/build/src/elements/dialog/internals/Rename.d.ts +1 -1
  43. package/build/src/elements/dialog/internals/Rename.d.ts.map +1 -1
  44. package/build/src/elements/dialog/internals/Rename.js +3 -3
  45. package/build/src/elements/dialog/internals/Rename.js.map +1 -1
  46. package/build/src/elements/dialog/internals/SetCookieAction.element.d.ts +1 -1
  47. package/build/src/elements/dialog/internals/SetCookieAction.element.d.ts.map +1 -1
  48. package/build/src/elements/dialog/internals/SetCookieAction.element.js +9 -9
  49. package/build/src/elements/dialog/internals/SetCookieAction.element.js.map +1 -1
  50. package/build/src/elements/environment/EnvironmentEditor.d.ts +1 -1
  51. package/build/src/elements/environment/EnvironmentEditor.d.ts.map +1 -1
  52. package/build/src/elements/environment/EnvironmentEditor.js +3 -3
  53. package/build/src/elements/environment/EnvironmentEditor.js.map +1 -1
  54. package/build/src/elements/environment/EnvironmentEditor.styles.js +1 -1
  55. package/build/src/elements/environment/EnvironmentEditor.styles.js.map +1 -1
  56. package/build/src/elements/environment/ServerEditor.d.ts +1 -1
  57. package/build/src/elements/environment/ServerEditor.d.ts.map +1 -1
  58. package/build/src/elements/environment/ServerEditor.js +7 -7
  59. package/build/src/elements/environment/ServerEditor.js.map +1 -1
  60. package/build/src/elements/environment/ServerEditor.styles.js +1 -1
  61. package/build/src/elements/environment/ServerEditor.styles.js.map +1 -1
  62. package/build/src/elements/http/BodyMultipartEditor.d.ts.map +1 -1
  63. package/build/src/elements/http/BodyMultipartEditor.js +4 -0
  64. package/build/src/elements/http/BodyMultipartEditor.js.map +1 -1
  65. package/build/src/elements/http/CertificateAdd.element.d.ts +1 -1
  66. package/build/src/elements/http/CertificateAdd.element.d.ts.map +1 -1
  67. package/build/src/elements/http/CertificateAdd.element.js +8 -8
  68. package/build/src/elements/http/CertificateAdd.element.js.map +1 -1
  69. package/build/src/elements/http/CertificateAdd.styles.js +1 -1
  70. package/build/src/elements/http/CertificateAdd.styles.js.map +1 -1
  71. package/build/src/elements/http/HttpAssertions.element.js +3 -3
  72. package/build/src/elements/http/HttpAssertions.element.js.map +1 -1
  73. package/build/src/elements/http/HttpFlows.element.js +3 -3
  74. package/build/src/elements/http/HttpFlows.element.js.map +1 -1
  75. package/build/src/elements/http/HttpFlowsUi.d.ts +1 -1
  76. package/build/src/elements/http/HttpFlowsUi.d.ts.map +1 -1
  77. package/build/src/elements/http/HttpFlowsUi.js +31 -31
  78. package/build/src/elements/http/HttpFlowsUi.js.map +1 -1
  79. package/build/src/elements/http/RequestConfigElement.d.ts +1 -1
  80. package/build/src/elements/http/RequestConfigElement.d.ts.map +1 -1
  81. package/build/src/elements/http/RequestConfigElement.js +7 -7
  82. package/build/src/elements/http/RequestConfigElement.js.map +1 -1
  83. package/build/src/elements/http/UrlParamsForm.d.ts +1 -1
  84. package/build/src/elements/http/UrlParamsForm.d.ts.map +1 -1
  85. package/build/src/elements/http/UrlParamsForm.js +1 -1
  86. package/build/src/elements/http/UrlParamsForm.js.map +1 -1
  87. package/build/src/elements/project/ProjectRunner.d.ts +1 -1
  88. package/build/src/elements/project/ProjectRunner.d.ts.map +1 -1
  89. package/build/src/elements/project/ProjectRunner.js +5 -5
  90. package/build/src/elements/project/ProjectRunner.js.map +1 -1
  91. package/build/src/md/input/Input.d.ts +0 -15
  92. package/build/src/md/input/Input.d.ts.map +1 -1
  93. package/build/src/md/input/Input.js +7 -42
  94. package/build/src/md/input/Input.js.map +1 -1
  95. package/build/src/md/list/internals/List.d.ts +7 -2
  96. package/build/src/md/list/internals/List.d.ts.map +1 -1
  97. package/build/src/md/list/internals/List.js +6 -0
  98. package/build/src/md/list/internals/List.js.map +1 -1
  99. package/build/src/md/list/internals/ListItem.styles.d.ts.map +1 -1
  100. package/build/src/md/list/internals/ListItem.styles.js +8 -0
  101. package/build/src/md/list/internals/ListItem.styles.js.map +1 -1
  102. package/build/src/md/listbox/internals/Listbox.d.ts +2 -2
  103. package/build/src/md/listbox/internals/Listbox.d.ts.map +1 -1
  104. package/build/src/md/listbox/internals/Listbox.js.map +1 -1
  105. package/build/src/md/text-area/internals/TextAreaElement.d.ts.map +1 -1
  106. package/build/src/md/text-area/internals/TextAreaElement.js +0 -5
  107. package/build/src/md/text-area/internals/TextAreaElement.js.map +1 -1
  108. package/build/src/md/text-area/ui-text-area.d.ts.map +1 -1
  109. package/build/src/md/text-area/ui-text-area.js +3 -2
  110. package/build/src/md/text-area/ui-text-area.js.map +1 -1
  111. package/build/src/md/text-field/internals/{TextFieldElement.d.ts → TextField.d.ts} +2 -2
  112. package/build/src/md/text-field/internals/TextField.d.ts.map +1 -0
  113. package/build/src/md/text-field/internals/{TextFieldElement.js → TextField.js} +2 -5
  114. package/build/src/md/text-field/internals/TextField.js.map +1 -0
  115. package/build/src/{visualization/elements/WorkspaceStyles.d.ts → md/text-field/internals/common.styles.d.ts} +1 -1
  116. package/build/src/md/text-field/internals/common.styles.d.ts.map +1 -0
  117. package/build/src/md/text-field/internals/{TextField.styles.js → common.styles.js} +8 -94
  118. package/build/src/md/text-field/internals/common.styles.js.map +1 -0
  119. package/build/src/md/text-field/internals/{TextField.styles.d.ts → filled.styles.d.ts} +1 -1
  120. package/build/src/md/text-field/internals/filled.styles.d.ts.map +1 -0
  121. package/build/src/md/text-field/internals/filled.styles.js +107 -0
  122. package/build/src/md/text-field/internals/filled.styles.js.map +1 -0
  123. package/build/src/md/text-field/internals/outlined.styles.d.ts +3 -0
  124. package/build/src/md/text-field/internals/outlined.styles.d.ts.map +1 -0
  125. package/build/src/md/text-field/internals/outlined.styles.js +43 -0
  126. package/build/src/md/text-field/internals/outlined.styles.js.map +1 -0
  127. package/build/src/md/text-field/ui-filled-text-field.d.ts +11 -0
  128. package/build/src/md/text-field/ui-filled-text-field.d.ts.map +1 -0
  129. package/build/src/md/text-field/ui-filled-text-field.js +28 -0
  130. package/build/src/md/text-field/ui-filled-text-field.js.map +1 -0
  131. package/build/src/md/text-field/ui-outlined-text-field.d.ts +11 -0
  132. package/build/src/md/text-field/ui-outlined-text-field.d.ts.map +1 -0
  133. package/build/src/md/text-field/ui-outlined-text-field.js +28 -0
  134. package/build/src/md/text-field/ui-outlined-text-field.js.map +1 -0
  135. package/build/src/types/input.d.ts +1 -1
  136. package/build/src/types/input.d.ts.map +1 -1
  137. package/build/src/types/input.js.map +1 -1
  138. package/demo/elements/authorization/oauth-authorize.html +4 -4
  139. package/demo/elements/authorization/oauth-authorize.ts +1 -1
  140. package/demo/elements/autocomplete/index.html +24 -0
  141. package/demo/elements/autocomplete/index.ts +123 -0
  142. package/demo/elements/http/body-editor.ts +3 -3
  143. package/demo/elements/index.html +15 -11
  144. package/demo/md/index.html +1 -1
  145. package/demo/md/inputs/input.html +10 -15
  146. package/demo/md/inputs/input.ts +389 -101
  147. package/demo/page.css +4 -0
  148. package/package.json +7 -2
  149. package/src/elements/authorization/ui/ApiKeyAuthorization.ts +7 -7
  150. package/src/elements/authorization/ui/Authorization.styles.ts +4 -4
  151. package/src/elements/authorization/ui/BasicAuthorization.ts +5 -5
  152. package/src/elements/authorization/ui/BearerAuthorization.ts +3 -3
  153. package/src/elements/authorization/ui/NtlmAuthorization.ts +7 -7
  154. package/src/elements/authorization/ui/OAuth2Authorization.ts +32 -27
  155. package/src/elements/authorization/ui/OidcAuthorization.ts +4 -4
  156. package/src/elements/autocomplete/autocomplete-input.ts +14 -0
  157. package/src/elements/autocomplete/internals/autocomplete.styles.ts +25 -0
  158. package/src/elements/autocomplete/internals/autocomplete.ts +490 -0
  159. package/src/elements/dialog/internals/DeleteCookieAction.element.ts +5 -5
  160. package/src/elements/dialog/internals/Rename.ts +3 -3
  161. package/src/elements/dialog/internals/SetCookieAction.element.ts +9 -9
  162. package/src/elements/environment/EnvironmentEditor.styles.ts +1 -1
  163. package/src/elements/environment/EnvironmentEditor.ts +3 -3
  164. package/src/elements/environment/ServerEditor.styles.ts +1 -1
  165. package/src/elements/environment/ServerEditor.ts +7 -7
  166. package/src/elements/http/BodyMultipartEditor.ts +4 -0
  167. package/src/elements/http/CertificateAdd.element.ts +8 -8
  168. package/src/elements/http/CertificateAdd.styles.ts +1 -1
  169. package/src/elements/http/HttpAssertions.element.ts +3 -3
  170. package/src/elements/http/HttpFlows.element.ts +3 -3
  171. package/src/elements/http/HttpFlowsUi.ts +31 -31
  172. package/src/elements/http/RequestConfigElement.ts +7 -7
  173. package/src/elements/http/UrlParamsForm.ts +1 -1
  174. package/src/elements/project/ProjectRunner.ts +5 -5
  175. package/src/md/input/Input.ts +6 -21
  176. package/src/md/list/internals/List.ts +14 -2
  177. package/src/md/list/internals/ListItem.styles.ts +8 -0
  178. package/src/md/listbox/internals/Listbox.ts +2 -2
  179. package/src/md/text-area/internals/TextAreaElement.ts +0 -5
  180. package/src/md/text-area/ui-text-area.ts +3 -2
  181. package/src/md/text-field/internals/{TextFieldElement.ts → TextField.ts} +1 -4
  182. package/src/md/text-field/internals/{TextField.styles.ts → common.styles.ts} +7 -93
  183. package/src/md/text-field/internals/filled.styles.ts +107 -0
  184. package/src/md/text-field/internals/outlined.styles.ts +43 -0
  185. package/src/md/text-field/ui-filled-text-field.ts +16 -0
  186. package/src/md/text-field/ui-outlined-text-field.ts +16 -0
  187. package/src/types/input.ts +0 -1
  188. package/test/elements/authorization/basic-method.test.ts +3 -3
  189. package/test/elements/authorization/bearer-method.test.ts +2 -2
  190. package/test/elements/authorization/ntlm-method.test.ts +4 -4
  191. package/test/elements/autocomplete/autocomplete-input.spec.ts +448 -0
  192. package/test/elements/http/BodyMultipartEditorElement.test.ts +15 -16
  193. package/test/elements/http/CertificateAdd.test.ts +11 -11
  194. package/test/elements/http/HttpAssertions.test.ts +9 -9
  195. package/test/elements/http/HttpFlows.test.ts +4 -4
  196. package/test/env.ts +15 -0
  197. package/test/tsconfig.json +1 -7
  198. package/web-test-runner.config.js +5 -1
  199. package/build/src/md/text-field/internals/TextField.styles.d.ts.map +0 -1
  200. package/build/src/md/text-field/internals/TextField.styles.js.map +0 -1
  201. package/build/src/md/text-field/internals/TextFieldElement.d.ts.map +0 -1
  202. package/build/src/md/text-field/internals/TextFieldElement.js.map +0 -1
  203. package/build/src/md/text-field/ui-text-field.d.ts +0 -11
  204. package/build/src/md/text-field/ui-text-field.d.ts.map +0 -1
  205. package/build/src/md/text-field/ui-text-field.js.map +0 -1
  206. package/build/src/visualization/elements/VizAssociationElement.d.ts +0 -4
  207. package/build/src/visualization/elements/VizAssociationElement.d.ts.map +0 -1
  208. package/build/src/visualization/elements/VizAssociationElement.js +0 -4
  209. package/build/src/visualization/elements/VizAssociationElement.js.map +0 -1
  210. package/build/src/visualization/elements/VizWorkspaceElement.d.ts +0 -110
  211. package/build/src/visualization/elements/VizWorkspaceElement.d.ts.map +0 -1
  212. package/build/src/visualization/elements/VizWorkspaceElement.js +0 -321
  213. package/build/src/visualization/elements/VizWorkspaceElement.js.map +0 -1
  214. package/build/src/visualization/elements/WorkspaceStyles.d.ts.map +0 -1
  215. package/build/src/visualization/elements/WorkspaceStyles.js +0 -168
  216. package/build/src/visualization/elements/WorkspaceStyles.js.map +0 -1
  217. package/build/src/visualization/lib/AnchorFinder.d.ts +0 -64
  218. package/build/src/visualization/lib/AnchorFinder.d.ts.map +0 -1
  219. package/build/src/visualization/lib/AnchorFinder.js +0 -107
  220. package/build/src/visualization/lib/AnchorFinder.js.map +0 -1
  221. package/build/src/visualization/lib/AnchorUtils.d.ts +0 -10
  222. package/build/src/visualization/lib/AnchorUtils.d.ts.map +0 -1
  223. package/build/src/visualization/lib/AnchorUtils.js +0 -44
  224. package/build/src/visualization/lib/AnchorUtils.js.map +0 -1
  225. package/build/src/visualization/lib/AssociationAnchors.d.ts +0 -134
  226. package/build/src/visualization/lib/AssociationAnchors.d.ts.map +0 -1
  227. package/build/src/visualization/lib/AssociationAnchors.js +0 -351
  228. package/build/src/visualization/lib/AssociationAnchors.js.map +0 -1
  229. package/build/src/visualization/lib/LabelSketch.d.ts +0 -16
  230. package/build/src/visualization/lib/LabelSketch.d.ts.map +0 -1
  231. package/build/src/visualization/lib/LabelSketch.js +0 -53
  232. package/build/src/visualization/lib/LabelSketch.js.map +0 -1
  233. package/build/src/visualization/lib/LineSketch.d.ts +0 -26
  234. package/build/src/visualization/lib/LineSketch.d.ts.map +0 -1
  235. package/build/src/visualization/lib/LineSketch.js +0 -55
  236. package/build/src/visualization/lib/LineSketch.js.map +0 -1
  237. package/build/src/visualization/lib/Point.d.ts +0 -74
  238. package/build/src/visualization/lib/Point.d.ts.map +0 -1
  239. package/build/src/visualization/lib/Point.js +0 -121
  240. package/build/src/visualization/lib/Point.js.map +0 -1
  241. package/build/src/visualization/lib/PositionUtils.d.ts +0 -65
  242. package/build/src/visualization/lib/PositionUtils.d.ts.map +0 -1
  243. package/build/src/visualization/lib/PositionUtils.js +0 -205
  244. package/build/src/visualization/lib/PositionUtils.js.map +0 -1
  245. package/build/src/visualization/lib/SelectionManager.d.ts +0 -183
  246. package/build/src/visualization/lib/SelectionManager.d.ts.map +0 -1
  247. package/build/src/visualization/lib/SelectionManager.js +0 -481
  248. package/build/src/visualization/lib/SelectionManager.js.map +0 -1
  249. package/build/src/visualization/lib/ShapeArtist.d.ts +0 -45
  250. package/build/src/visualization/lib/ShapeArtist.d.ts.map +0 -1
  251. package/build/src/visualization/lib/ShapeArtist.js +0 -209
  252. package/build/src/visualization/lib/ShapeArtist.js.map +0 -1
  253. package/build/src/visualization/lib/SvgMarkers.d.ts +0 -14
  254. package/build/src/visualization/lib/SvgMarkers.d.ts.map +0 -1
  255. package/build/src/visualization/lib/SvgMarkers.js +0 -77
  256. package/build/src/visualization/lib/SvgMarkers.js.map +0 -1
  257. package/build/src/visualization/lib/TipSketch.d.ts +0 -26
  258. package/build/src/visualization/lib/TipSketch.d.ts.map +0 -1
  259. package/build/src/visualization/lib/TipSketch.js +0 -77
  260. package/build/src/visualization/lib/TipSketch.js.map +0 -1
  261. package/build/src/visualization/lib/TouchSupport.d.ts +0 -14
  262. package/build/src/visualization/lib/TouchSupport.d.ts.map +0 -1
  263. package/build/src/visualization/lib/TouchSupport.js +0 -55
  264. package/build/src/visualization/lib/TouchSupport.js.map +0 -1
  265. package/build/src/visualization/lib/Utils.d.ts +0 -25
  266. package/build/src/visualization/lib/Utils.d.ts.map +0 -1
  267. package/build/src/visualization/lib/Utils.js +0 -59
  268. package/build/src/visualization/lib/Utils.js.map +0 -1
  269. package/build/src/visualization/lib/VisualizationTypes.d.ts +0 -216
  270. package/build/src/visualization/lib/VisualizationTypes.d.ts.map +0 -1
  271. package/build/src/visualization/lib/VisualizationTypes.js +0 -3
  272. package/build/src/visualization/lib/VisualizationTypes.js.map +0 -1
  273. package/build/src/visualization/lib/WorkspaceAlignment.d.ts +0 -51
  274. package/build/src/visualization/lib/WorkspaceAlignment.d.ts.map +0 -1
  275. package/build/src/visualization/lib/WorkspaceAlignment.js +0 -243
  276. package/build/src/visualization/lib/WorkspaceAlignment.js.map +0 -1
  277. package/build/src/visualization/lib/WorkspaceDebugging.d.ts +0 -104
  278. package/build/src/visualization/lib/WorkspaceDebugging.d.ts.map +0 -1
  279. package/build/src/visualization/lib/WorkspaceDebugging.js +0 -286
  280. package/build/src/visualization/lib/WorkspaceDebugging.js.map +0 -1
  281. package/build/src/visualization/lib/WorkspaceEdges.d.ts +0 -293
  282. package/build/src/visualization/lib/WorkspaceEdges.d.ts.map +0 -1
  283. package/build/src/visualization/lib/WorkspaceEdges.js +0 -1073
  284. package/build/src/visualization/lib/WorkspaceEdges.js.map +0 -1
  285. package/build/src/visualization/lib/WorkspaceGestures.d.ts +0 -119
  286. package/build/src/visualization/lib/WorkspaceGestures.d.ts.map +0 -1
  287. package/build/src/visualization/lib/WorkspaceGestures.js +0 -376
  288. package/build/src/visualization/lib/WorkspaceGestures.js.map +0 -1
  289. package/build/src/visualization/lib/WorkspaceSizing.d.ts +0 -66
  290. package/build/src/visualization/lib/WorkspaceSizing.d.ts.map +0 -1
  291. package/build/src/visualization/lib/WorkspaceSizing.js +0 -168
  292. package/build/src/visualization/lib/WorkspaceSizing.js.map +0 -1
  293. package/build/src/visualization/lib/lines/RectilinearLine.d.ts +0 -114
  294. package/build/src/visualization/lib/lines/RectilinearLine.d.ts.map +0 -1
  295. package/build/src/visualization/lib/lines/RectilinearLine.js +0 -605
  296. package/build/src/visualization/lib/lines/RectilinearLine.js.map +0 -1
  297. package/build/src/visualization/lib/tips/RectilinearTip.d.ts +0 -26
  298. package/build/src/visualization/lib/tips/RectilinearTip.d.ts.map +0 -1
  299. package/build/src/visualization/lib/tips/RectilinearTip.js +0 -149
  300. package/build/src/visualization/lib/tips/RectilinearTip.js.map +0 -1
  301. package/build/src/visualization/lib/tips/TipArtist.d.ts +0 -22
  302. package/build/src/visualization/lib/tips/TipArtist.d.ts.map +0 -1
  303. package/build/src/visualization/lib/tips/TipArtist.js +0 -31
  304. package/build/src/visualization/lib/tips/TipArtist.js.map +0 -1
  305. package/build/src/visualization/lib/types.d.ts +0 -164
  306. package/build/src/visualization/lib/types.d.ts.map +0 -1
  307. package/build/src/visualization/lib/types.js +0 -2
  308. package/build/src/visualization/lib/types.js.map +0 -1
  309. package/build/src/visualization/plugin/dnd/DragAndDropPlugin.d.ts +0 -126
  310. package/build/src/visualization/plugin/dnd/DragAndDropPlugin.d.ts.map +0 -1
  311. package/build/src/visualization/plugin/dnd/DragAndDropPlugin.js +0 -260
  312. package/build/src/visualization/plugin/dnd/DragAndDropPlugin.js.map +0 -1
  313. package/build/src/visualization/plugin/group-selection/GroupSelection.d.ts +0 -93
  314. package/build/src/visualization/plugin/group-selection/GroupSelection.d.ts.map +0 -1
  315. package/build/src/visualization/plugin/group-selection/GroupSelection.js +0 -250
  316. package/build/src/visualization/plugin/group-selection/GroupSelection.js.map +0 -1
  317. package/build/src/visualization/plugin/positioning/DataModelLayout.d.ts +0 -10
  318. package/build/src/visualization/plugin/positioning/DataModelLayout.d.ts.map +0 -1
  319. package/build/src/visualization/plugin/positioning/DataModelLayout.js +0 -105
  320. package/build/src/visualization/plugin/positioning/DataModelLayout.js.map +0 -1
  321. package/build/src/visualization/plugin/positioning/WorkspaceLayout.d.ts +0 -93
  322. package/build/src/visualization/plugin/positioning/WorkspaceLayout.d.ts.map +0 -1
  323. package/build/src/visualization/plugin/positioning/WorkspaceLayout.js +0 -96
  324. package/build/src/visualization/plugin/positioning/WorkspaceLayout.js.map +0 -1
  325. package/build/src/visualization/viz-association.d.ts +0 -7
  326. package/build/src/visualization/viz-association.d.ts.map +0 -1
  327. package/build/src/visualization/viz-association.js +0 -3
  328. package/build/src/visualization/viz-association.js.map +0 -1
  329. package/build/src/visualization/viz-workspace.d.ts +0 -7
  330. package/build/src/visualization/viz-workspace.d.ts.map +0 -1
  331. package/build/src/visualization/viz-workspace.js +0 -3
  332. package/build/src/visualization/viz-workspace.js.map +0 -1
  333. package/src/md/text-field/ui-text-field.ts +0 -15
  334. package/src/visualization/elements/VizAssociationElement.ts +0 -3
  335. package/src/visualization/elements/VizWorkspaceElement.ts +0 -302
  336. package/src/visualization/elements/WorkspaceStyles.ts +0 -168
  337. package/src/visualization/lib/AnchorFinder.ts +0 -112
  338. package/src/visualization/lib/AnchorUtils.ts +0 -53
  339. package/src/visualization/lib/AssociationAnchors.ts +0 -418
  340. package/src/visualization/lib/LabelSketch.ts +0 -67
  341. package/src/visualization/lib/LineSketch.ts +0 -62
  342. package/src/visualization/lib/Point.ts +0 -134
  343. package/src/visualization/lib/PositionUtils.ts +0 -218
  344. package/src/visualization/lib/SelectionManager.ts +0 -513
  345. package/src/visualization/lib/ShapeArtist.ts +0 -222
  346. package/src/visualization/lib/SvgMarkers.ts +0 -80
  347. package/src/visualization/lib/TipSketch.ts +0 -91
  348. package/src/visualization/lib/TouchSupport.ts +0 -72
  349. package/src/visualization/lib/Utils.ts +0 -63
  350. package/src/visualization/lib/VisualizationTypes.ts +0 -232
  351. package/src/visualization/lib/WorkspaceAlignment.ts +0 -261
  352. package/src/visualization/lib/WorkspaceDebugging.ts +0 -313
  353. package/src/visualization/lib/WorkspaceEdges.ts +0 -1153
  354. package/src/visualization/lib/WorkspaceGestures.ts +0 -400
  355. package/src/visualization/lib/WorkspaceSizing.ts +0 -181
  356. package/src/visualization/lib/lines/RectilinearLine.ts +0 -589
  357. package/src/visualization/lib/tips/RectilinearTip.ts +0 -156
  358. package/src/visualization/lib/tips/TipArtist.ts +0 -34
  359. package/src/visualization/lib/types.ts +0 -173
  360. package/src/visualization/plugin/dnd/DragAndDropPlugin.ts +0 -294
  361. package/src/visualization/plugin/group-selection/GroupSelection.ts +0 -271
  362. package/src/visualization/plugin/positioning/DataModelLayout.ts +0 -114
  363. package/src/visualization/plugin/positioning/WorkspaceLayout.ts +0 -149
  364. package/src/visualization/viz-association.ts +0 -9
  365. package/src/visualization/viz-workspace.ts +0 -9
  366. package/test/env.d.ts +0 -9
  367. package/test/env.js +0 -7
  368. package/test/visualization/lib/AnchorFinder.test.ts +0 -313
  369. package/test/visualization/lib/AnchorUtils.test.ts +0 -178
  370. package/test/visualization/lib/PositionUtils.test.ts +0 -406
  371. package/test/visualization/lib/test-styles.css +0 -80
@@ -1,313 +0,0 @@
1
- import { assert, fixture, html } from '@open-wc/testing'
2
- import {
3
- findClosestAnchors,
4
- readEastAnchorPoints,
5
- readWestAnchorPoints,
6
- readNorthAnchorPoints,
7
- readSouthAnchorPoints,
8
- } from '../../../src/visualization/lib/AnchorFinder.js'
9
- import VizWorkspaceElement from '../../../src/visualization/elements/VizWorkspaceElement.js'
10
- import '../../../src/visualization/viz-workspace.js'
11
-
12
- describe('AnchorFinder', () => {
13
- async function objectsFixture(): Promise<VizWorkspaceElement> {
14
- return fixture(html`
15
- <viz-workspace style="width: 1200px; height: 800px;">
16
- <div class="workspace-dummy big" style="transform: translate(0px, 0px)"></div>
17
- <div class="workspace-dummy big" style="transform: translate(0px, 0px)"></div>
18
- </viz-workspace>
19
- `)
20
- }
21
-
22
- async function objectFixture(): Promise<VizWorkspaceElement> {
23
- return fixture(html`
24
- <viz-workspace style="width: 1200px; height: 800px;">
25
- <div class="workspace-dummy" style="transform: translate(0px, 0px)"></div>
26
- </viz-workspace>
27
- `)
28
- }
29
-
30
- // let styles: HTMLLinkElement;
31
- // before(async () => {
32
- // styles = document.createElement('link');
33
- // styles.rel = 'stylesheet';
34
- // styles.href = '/test/visualization/lib/test-styles.css';
35
- // document.body.appendChild(styles);
36
- // await nextFrame();
37
- // await aTimeout(100);
38
- // });
39
-
40
- // after(() => {
41
- // document.body.removeChild(styles);
42
- // });
43
-
44
- describe('readEastAnchorPoints()', () => {
45
- let el: HTMLElement
46
-
47
- beforeEach(async () => {
48
- const workspace = await objectFixture()
49
- el = workspace.querySelector('div')!
50
- })
51
-
52
- it('reads anchors', () => {
53
- el.style.transform = 'translate(10px, 20px)'
54
- const box = el.getBoundingClientRect()
55
-
56
- const result = readEastAnchorPoints(box, 0)
57
- assert.typeOf(result, 'array', 'returns an array')
58
- assert.lengthOf(result, 3, 'has 3 points')
59
- const [p1, p2, p3] = result
60
-
61
- assert.equal(p1.x, 51, 'p1.x has value')
62
- assert.equal(p1.y, 21, 'p1.y has value')
63
- assert.equal(p2.x, 51, 'p2.x has value')
64
- assert.equal(p2.y, 61, 'p2.y has value')
65
- assert.equal(p3.x, 51, 'p3.x has value')
66
- assert.equal(p3.y, 101, 'p3.y has value')
67
- })
68
-
69
- it('reads anchors with padding', () => {
70
- el.style.transform = 'translate(10px, 20px)'
71
- const box = el.getBoundingClientRect()
72
- const result = readEastAnchorPoints(box, 10)
73
- const [p1, p2, p3] = result
74
- assert.equal(p1.x, 51, 'p1.x has value')
75
- assert.equal(p1.y, 31, 'p1.y has value')
76
- assert.equal(p2.x, 51, 'p2.x has value')
77
- assert.equal(p2.y, 61, 'p2.y has value')
78
- assert.equal(p3.x, 51, 'p3.x has value')
79
- assert.equal(p3.y, 91, 'p3.y has value')
80
- })
81
- })
82
-
83
- describe('readWestAnchorPoints()', () => {
84
- let el: HTMLElement
85
-
86
- beforeEach(async () => {
87
- const workspace = await objectFixture()
88
- el = workspace.querySelector('div')!
89
- })
90
-
91
- it('reads anchors', () => {
92
- el.style.transform = 'translate(10px, 20px)'
93
- const box = el.getBoundingClientRect()
94
- const result = readWestAnchorPoints(box, 0)
95
- assert.typeOf(result, 'array', 'returns an array')
96
- assert.lengthOf(result, 3, 'has 3 points')
97
- const [p1, p2, p3] = result
98
- assert.equal(p1.x, 11, 'p1.x has value')
99
- assert.equal(p1.y, 21, 'p1.y has value')
100
- assert.equal(p2.x, 11, 'p2.x has value')
101
- assert.equal(p2.y, 61, 'p2.y has value')
102
- assert.equal(p3.x, 11, 'p3.x has value')
103
- assert.equal(p3.y, 101, 'p3.y has value')
104
- })
105
-
106
- it('reads anchors with padding', () => {
107
- el.style.transform = 'translate(10px, 20px)'
108
- const box = el.getBoundingClientRect()
109
- const result = readWestAnchorPoints(box, 10)
110
- const [p1, p2, p3] = result
111
- assert.equal(p1.x, 11, 'p1.x has value')
112
- assert.equal(p1.y, 31, 'p1.y has value')
113
- assert.equal(p2.x, 11, 'p2.x has value')
114
- assert.equal(p2.y, 61, 'p2.y has value')
115
- assert.equal(p3.x, 11, 'p3.x has value')
116
- assert.equal(p3.y, 91, 'p3.y has value')
117
- })
118
- })
119
-
120
- describe('readNorthAnchorPoints()', () => {
121
- let el: HTMLElement
122
-
123
- beforeEach(async () => {
124
- const workspace = await objectFixture()
125
- el = workspace.querySelector('div')!
126
- })
127
-
128
- it('reads anchors', () => {
129
- el.style.transform = 'translate(10px, 20px)'
130
- const box = el.getBoundingClientRect()
131
- const result = readNorthAnchorPoints(box, 0)
132
- assert.typeOf(result, 'array', 'returns an array')
133
- assert.lengthOf(result, 3, 'has 3 points')
134
- const [p1, p2, p3] = result
135
- assert.equal(p1.x, 11, 'p1.x has value')
136
- assert.equal(p1.y, 21, 'p1.y has value')
137
- assert.equal(p2.x, 31, 'p2.x has value')
138
- assert.equal(p2.y, 21, 'p2.y has value')
139
- assert.equal(p3.x, 51, 'p3.x has value')
140
- assert.equal(p3.y, 21, 'p3.y has value')
141
- })
142
-
143
- it('reads anchors with padding', () => {
144
- el.style.transform = 'translate(10px, 20px)'
145
- const box = el.getBoundingClientRect()
146
- const result = readNorthAnchorPoints(box, 10)
147
- const [p1, p2, p3] = result
148
- assert.equal(p1.x, 21, 'p1.x has value')
149
- assert.equal(p1.y, 21, 'p1.y has value')
150
- assert.equal(p2.x, 31, 'p2.x has value')
151
- assert.equal(p2.y, 21, 'p2.y has value')
152
- assert.equal(p3.x, 41, 'p3.x has value')
153
- assert.equal(p3.y, 21, 'p3.y has value')
154
- })
155
- })
156
-
157
- describe('readSouthAnchorPoints()', () => {
158
- let el: HTMLElement
159
-
160
- beforeEach(async () => {
161
- const workspace = await objectFixture()
162
- el = workspace.querySelector('div')!
163
- })
164
-
165
- it('reads anchors', () => {
166
- el.style.transform = 'translate(10px, 20px)'
167
- const box = el.getBoundingClientRect()
168
- const result = readSouthAnchorPoints(box, 0)
169
- assert.typeOf(result, 'array', 'returns an array')
170
- assert.lengthOf(result, 3, 'has 3 points')
171
- const [p1, p2, p3] = result
172
- assert.equal(p1.x, 11, 'p1.x has value')
173
- assert.equal(p1.y, 101, 'p1.y has value')
174
- assert.equal(p2.x, 31, 'p2.x has value')
175
- assert.equal(p2.y, 101, 'p2.y has value')
176
- assert.equal(p3.x, 51, 'p3.x has value')
177
- assert.equal(p3.y, 101, 'p3.y has value')
178
- })
179
-
180
- it('reads anchors with padding', () => {
181
- el.style.transform = 'translate(10px, 20px)'
182
- const box = el.getBoundingClientRect()
183
- const result = readSouthAnchorPoints(box, 10)
184
- const [p1, p2, p3] = result
185
- assert.equal(p1.x, 21, 'p1.x has value')
186
- assert.equal(p1.y, 101, 'p1.y has value')
187
- assert.equal(p2.x, 31, 'p2.x has value')
188
- assert.equal(p2.y, 101, 'p2.y has value')
189
- assert.equal(p3.x, 41, 'p3.x has value')
190
- assert.equal(p3.y, 101, 'p3.y has value')
191
- })
192
- })
193
-
194
- describe('findClosestAnchors()', () => {
195
- let e1: HTMLElement
196
- let e2: HTMLElement
197
-
198
- beforeEach(async () => {
199
- const workspace = await objectsFixture()
200
- const objects = workspace.querySelectorAll('div')
201
- e1 = objects[0]
202
- e2 = objects[1]
203
- })
204
-
205
- // Testing without the padding so the anchors are in the vertexes.
206
- // .workspace-dummy has `width: 200px;` and `height: 360px;`.
207
-
208
- it('computes equal sizes and y-position (top anchors)', () => {
209
- e1.style.transform = 'translate(10px, 20px)'
210
- e2.style.transform = 'translate(220px, 20px)'
211
- const b1 = e1.getBoundingClientRect()
212
- const b2 = e2.getBoundingClientRect()
213
- const result = findClosestAnchors(b1, b2, 0)
214
- const [p1, p2] = result
215
-
216
- assert.equal(p1.x, 211, 'has p1.x') // right
217
- assert.equal(p1.y, 21, 'has p1.y') // y
218
- assert.equal(p2.x, 221, 'has p2.x') // left
219
- assert.equal(p2.y, 21, 'has p2.y') // y
220
- })
221
-
222
- it('computes equal sizes, target below-right, middle-top anchors', () => {
223
- e1.style.transform = 'translate(10px, 180px)'
224
- e2.style.transform = 'translate(250px, 305px)'
225
- const b1 = e1.getBoundingClientRect()
226
- const b2 = e2.getBoundingClientRect()
227
- const result = findClosestAnchors(b1, b2, 0)
228
- const [p1, p2] = result
229
- assert.equal(p1.x, 211, 'has p1.x') // right
230
- assert.equal(p1.y, 361, 'has p1.y') // middle
231
- assert.equal(p2.x, 251, 'has p2.x') // left
232
- assert.equal(p2.y, 306, 'has p2.y') // top
233
- })
234
-
235
- it('computes equal sizes, target below-right, bottom-top anchors', () => {
236
- e1.style.transform = 'translate(10px, 180px)'
237
- e2.style.transform = 'translate(250px, 405px)'
238
- const b1 = e1.getBoundingClientRect()
239
- const b2 = e2.getBoundingClientRect()
240
- const result = findClosestAnchors(b1, b2, 0)
241
- const [p1, p2] = result
242
- assert.equal(p1.x, 211, 'has p1.x') // right
243
- assert.equal(p1.y, 361, 'has p1.y') // bottom
244
- assert.equal(p2.x, 251, 'has p2.x') // left
245
- assert.equal(p2.y, 406, 'has p2.y') // top
246
- })
247
-
248
- it('computes equal sizes, target below-right, bottom-middle anchors', () => {
249
- e1.style.transform = 'translate(10px, 180px)'
250
- e2.style.transform = 'translate(250px, 255px)'
251
- const b1 = e1.getBoundingClientRect()
252
- const b2 = e2.getBoundingClientRect()
253
- const result = findClosestAnchors(b1, b2, 0)
254
- const [p1, p2] = result
255
- assert.equal(p1.x, 211, 'has p1.x') // right
256
- assert.equal(p1.y, 181, 'has p1.y') // bottom
257
- assert.equal(p2.x, 251, 'has p2.x') // left
258
- assert.equal(p2.y, 256, 'has p2.y') // middle
259
- })
260
-
261
- it('computes aligned, the same sizes (top anchors)', () => {
262
- e1.style.transform = 'translate(10px, 180px)'
263
- e2.style.transform = 'translate(250px, 180px)'
264
- const b1 = e1.getBoundingClientRect()
265
- const b2 = e2.getBoundingClientRect()
266
- const result = findClosestAnchors(b1, b2, 0)
267
- const [p1, p2] = result
268
- assert.equal(p1.x, 211, 'has p1.x') // right
269
- assert.equal(p1.y, 181, 'has p1.y') // bottom
270
- assert.equal(p2.x, 251, 'has p2.x') // left
271
- assert.equal(p2.y, 181, 'has p2.y') // middle
272
- })
273
-
274
- it('computes target East-South', () => {
275
- e1.style.transform = 'translate(10px, 10px)'
276
- e2.style.transform = 'translate(250px, 400px)'
277
- const b1 = e1.getBoundingClientRect()
278
- const b2 = e2.getBoundingClientRect()
279
- const result = findClosestAnchors(b1, b2, 0)
280
- const [p1, p2] = result
281
- assert.equal(p1.x, 211, 'has p1.x') // right
282
- assert.equal(p1.y, 371, 'has p1.y') // bottom
283
- assert.equal(p2.x, 251, 'has p2.x') // left
284
- assert.equal(p2.y, 401, 'has p2.y') // top
285
- })
286
-
287
- it('computes target South', () => {
288
- e1.style.transform = 'translate(10px, 10px)'
289
- e2.style.transform = 'translate(10px, 400px)'
290
- const b1 = e1.getBoundingClientRect()
291
- const b2 = e2.getBoundingClientRect()
292
- const result = findClosestAnchors(b1, b2, 0)
293
- const [p1, p2] = result
294
- assert.equal(p1.x, 211, 'has p1.x') // right
295
- assert.equal(p1.y, 371, 'has p1.y') // bottom
296
- assert.equal(p2.x, 211, 'has p2.x') // right
297
- assert.equal(p2.y, 401, 'has p2.y') // top
298
- })
299
-
300
- it('computes target South-West', () => {
301
- e1.style.transform = 'translate(155px, 10px)'
302
- e2.style.transform = 'translate(10px, 400px)'
303
- const b1 = e1.getBoundingClientRect()
304
- const b2 = e2.getBoundingClientRect()
305
- const result = findClosestAnchors(b1, b2, 0)
306
- const [p1, p2] = result
307
- assert.equal(p1.x, 156, 'has p1.x') // left
308
- assert.equal(p1.y, 371, 'has p1.y') // bottom
309
- assert.equal(p2.x, 111, 'has p2.x') // middle
310
- assert.equal(p2.y, 401, 'has p2.y') // top
311
- })
312
- })
313
- })
@@ -1,178 +0,0 @@
1
- import { TemplateResult } from 'lit'
2
- import { assert, fixture, html, nextFrame } from '@open-wc/testing'
3
- import { anchorToPoint, closestAnchors } from '../../../src/visualization/lib/AnchorUtils.js'
4
- import { Point } from '../../../src/visualization/lib/Point.js'
5
- import VizWorkspaceElement from '../../../src/visualization/elements/VizWorkspaceElement.js'
6
- import '../../../src/visualization/viz-workspace.js'
7
-
8
- describe('AnchorUtils', () => {
9
- function slotsTemplate(): TemplateResult {
10
- const items = [
11
- ['top-edge left-slot', 'top-left', '6', '6'],
12
- ['top-edge center-slot', 'top-center', '6', '6'],
13
- ['top-edge right-slot', 'top-right', '6', '6'],
14
-
15
- ['bottom-edge left-slot', 'bottom-left', '6', '6'],
16
- ['bottom-edge center-slot', 'bottom-center', '6', '6'],
17
- ['bottom-edge right-slot', 'bottom-right', '6', '6'],
18
-
19
- ['left-edge top-slot', 'left-top', '8', '6'],
20
- ['left-edge middle-slot', 'left-middle', '8', '6'],
21
- ['left-edge bottom-slot', 'left-bottom', '8', '6'],
22
-
23
- ['right-edge top-slot', 'right-top', '8', '6'],
24
- ['right-edge middle-slot', 'right-middle', '8', '6'],
25
- ['right-edge bottom-slot', 'right-bottom', '8', '6'],
26
- ]
27
- return html`
28
- ${items.map(
29
- (item) => html`
30
- <div
31
- class="manual-association ${item[0]}"
32
- data-association-slot="${item[1]}"
33
- data-vertical-offset="${item[2]}"
34
- data-horizontal-offset="${item[3]}"
35
- ></div>
36
- `
37
- )}
38
- `
39
- }
40
-
41
- async function workspaceEntityFixture(): Promise<HTMLElement> {
42
- return fixture(html`
43
- <div class="workspace-position-wrapper">
44
- <viz-workspace style="width: 400px; height: 400px;">
45
- <div class="entity" data-association-slots data-key="testId" style="transform: translate(100px, 200px)">
46
- ${slotsTemplate()}
47
- </div>
48
- </viz-workspace>
49
- </div>
50
- `)
51
- }
52
-
53
- async function workspaceMultiEntityFixture(): Promise<HTMLElement> {
54
- return fixture(html`
55
- <div class="workspace-position-wrapper">
56
- <viz-workspace style="width: 400px; height: 400px;">
57
- <div class="entity" data-association-slots data-key="testId1" style="transform: translate(100px, 200px)">
58
- ${slotsTemplate()}
59
- </div>
60
- <div class="entity" data-association-slots data-key="testId2" style="transform: translate(300px, 300px)">
61
- ${slotsTemplate()}
62
- </div>
63
- <div class="entity" data-association-slots data-key="testId3" style="transform: translate(10px, 10px)">
64
- ${slotsTemplate()}
65
- </div>
66
- </viz-workspace>
67
- </div>
68
- `)
69
- }
70
-
71
- async function noAnchorsFixture(): Promise<HTMLElement> {
72
- return fixture(html`
73
- <div class="workspace-position-wrapper">
74
- <viz-workspace style="width: 400px; height: 400px;">
75
- <div class="entity" data-key="testId1" style="transform: translate(100px, 200px)"></div>
76
- <div class="entity" data-key="testId2" style="transform: translate(300px, 300px)"></div>
77
- <div class="entity" data-key="testId3" style="transform: translate(10px, 10px)"></div>
78
- </viz-workspace>
79
- </div>
80
- `)
81
- }
82
-
83
- describe('anchorToPoint()', () => {
84
- let workspace: VizWorkspaceElement
85
- let element: HTMLElement
86
-
87
- beforeEach(async () => {
88
- const wrapper = await workspaceEntityFixture()
89
- workspace = wrapper.querySelector('viz-workspace')!
90
- const entity = workspace.querySelector('.entity')!
91
- element = entity.querySelector('.manual-association')!
92
- })
93
-
94
- it('computes position with vertical/horizontal offset', async () => {
95
- await nextFrame()
96
- const result = anchorToPoint(element, workspace)
97
- // offset to the parent (entity), + position change + v/h offset + border
98
- assert.approximately(result.x, element.offsetLeft + 100 + 6 + 2, 1, 'has the x position')
99
- assert.approximately(result.y, element.offsetTop + 200 + 6 + 2, 1, 'has the y position')
100
- })
101
-
102
- it('computes position without vertical/horizontal offset', async () => {
103
- delete element.dataset.verticalOffset
104
- delete element.dataset.horizontalOffset
105
- await nextFrame()
106
- const result = anchorToPoint(element, workspace)
107
- // offset to the parent (entity), + position change + border
108
- assert.approximately(result.x, element.offsetLeft + 100 + 2, 1, 'has the x position')
109
- assert.approximately(result.y, element.offsetTop + 200 + 2, 1, 'has the y position')
110
- })
111
-
112
- it('ignores invalid vertical/horizontal offset', async () => {
113
- element.dataset.verticalOffset = 'test 1'
114
- element.dataset.horizontalOffset = 'test 2'
115
- await nextFrame()
116
- const result = anchorToPoint(element, workspace)
117
- // offset to the parent (entity), + position change + border
118
- assert.approximately(result.x, element.offsetLeft + 100 + 2, 1, 'has the x position')
119
- assert.approximately(result.y, element.offsetTop + 200 + 2, 1, 'has the y position')
120
- })
121
- })
122
-
123
- describe('closestAnchors()', () => {
124
- it('returns the closest points', async () => {
125
- const wrapper = await workspaceMultiEntityFixture()
126
- const workspace = wrapper.querySelector('viz-workspace')!
127
- const entities = workspace.querySelectorAll('.entity') as NodeListOf<HTMLElement>
128
-
129
- const result = closestAnchors(entities[1], entities[2], workspace)!
130
- assert.typeOf(result, 'array', 'returns an array')
131
- assert.lengthOf(result, 2, 'returns two points')
132
- const [p1, p2] = result
133
-
134
- assert.approximately(p1.x, 356, 1, 'p1.x is set')
135
- assert.approximately(p2.x, 252, 1, 'p2.x is set')
136
- assert.approximately(p1.y, 300, 1, 'p1.y is set')
137
- assert.approximately(p2.y, 166, 1, 'p2.y is set')
138
- })
139
-
140
- it('returns null when no anchors', async () => {
141
- const wrapper = await noAnchorsFixture()
142
- const workspace = wrapper.querySelector('viz-workspace')!
143
- const entities = workspace.querySelectorAll('.entity') as NodeListOf<HTMLElement>
144
- const result = closestAnchors(entities[1], entities[2], workspace)
145
- assert.strictEqual(result, null)
146
- })
147
-
148
- it('avoids already used anchors', async () => {
149
- const wrapper = await workspaceMultiEntityFixture()
150
- const workspace = wrapper.querySelector('viz-workspace')!
151
- const entities = workspace.querySelectorAll('.entity') as NodeListOf<HTMLElement>
152
- const result = closestAnchors(entities[1], entities[2], workspace, [
153
- {
154
- directions: { start: 'east', end: 'north' },
155
- id: 'test',
156
- positionChange: false,
157
- shape: {
158
- line: {
159
- startPoint: new Point(356, 300),
160
- endPoint: new Point(254, 127),
161
- type: 'rectilinear',
162
- transformOrigin: '0px 0px',
163
- },
164
- },
165
- source: 's1',
166
- target: 't1',
167
- },
168
- ])!
169
- assert.typeOf(result, 'array', 'returns an array')
170
- assert.lengthOf(result, 2, 'returns two points')
171
- const [p1, p2] = result
172
- assert.approximately(p1.x, 300, 1, 'p1.x is set')
173
- assert.approximately(p2.x, 196, 1, 'p2.x is set')
174
- assert.approximately(p1.y, 350, 1, 'p1.y is set')
175
- assert.approximately(p2.y, 212, 1, 'p2.y is set')
176
- })
177
- })
178
- })