@hatiolab/things-scene 9.0.0-beta.36 → 9.0.0-beta.38

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 (397) hide show
  1. package/package.json +1 -1
  2. package/things-scene-min.js +11 -11
  3. package/things-scene-min.js.map +1 -1
  4. package/things-scene.mjs +11 -11
  5. package/things-scene.mjs.map +1 -1
  6. package/.cursorignore +0 -62
  7. package/.prettierrc +0 -21
  8. package/assets/icon-audio.png +0 -0
  9. package/assets/icon-gif-viewer.png +0 -0
  10. package/assets/images/spinner.png +0 -0
  11. package/babel.config.js +0 -23
  12. package/db.sqlite +0 -0
  13. package/dist/animation/animate.js +0 -63
  14. package/dist/animation/animate.js.map +0 -1
  15. package/dist/animation/animations/animation.js +0 -122
  16. package/dist/animation/animations/animation.js.map +0 -1
  17. package/dist/animation/animations/fade.js +0 -28
  18. package/dist/animation/animations/fade.js.map +0 -1
  19. package/dist/animation/animations/heartbeat.js +0 -28
  20. package/dist/animation/animations/heartbeat.js.map +0 -1
  21. package/dist/animation/animations/moving.js +0 -24
  22. package/dist/animation/animations/moving.js.map +0 -1
  23. package/dist/animation/animations/outline.js +0 -47
  24. package/dist/animation/animations/outline.js.map +0 -1
  25. package/dist/animation/animations/rotation.js +0 -22
  26. package/dist/animation/animations/rotation.js.map +0 -1
  27. package/dist/animation/animations/vibration.js +0 -31
  28. package/dist/animation/animations/vibration.js.map +0 -1
  29. package/dist/animation/compile.js +0 -31
  30. package/dist/animation/compile.js.map +0 -1
  31. package/dist/animation/delta.js +0 -51
  32. package/dist/animation/delta.js.map +0 -1
  33. package/dist/animation/index.js +0 -14
  34. package/dist/animation/index.js.map +0 -1
  35. package/dist/command/command-change.js +0 -33
  36. package/dist/command/command-change.js.map +0 -1
  37. package/dist/command/command-migrate.js +0 -103
  38. package/dist/command/command-migrate.js.map +0 -1
  39. package/dist/command/command.js +0 -18
  40. package/dist/command/command.js.map +0 -1
  41. package/dist/command/snapshot-commander.js +0 -84
  42. package/dist/command/snapshot-commander.js.map +0 -1
  43. package/dist/components/anchor/anchor.js +0 -105
  44. package/dist/components/anchor/anchor.js.map +0 -1
  45. package/dist/components/anchor/ellipse-anchors.js +0 -53
  46. package/dist/components/anchor/ellipse-anchors.js.map +0 -1
  47. package/dist/components/anchor/rect-anchors.js +0 -53
  48. package/dist/components/anchor/rect-anchors.js.map +0 -1
  49. package/dist/components/audio.js +0 -154
  50. package/dist/components/audio.js.map +0 -1
  51. package/dist/components/cloud.js +0 -44
  52. package/dist/components/cloud.js.map +0 -1
  53. package/dist/components/component.js +0 -1086
  54. package/dist/components/component.js.map +0 -1
  55. package/dist/components/container-abstract.js +0 -387
  56. package/dist/components/container-abstract.js.map +0 -1
  57. package/dist/components/container.js +0 -331
  58. package/dist/components/container.js.map +0 -1
  59. package/dist/components/data/data-mapping.js +0 -82
  60. package/dist/components/data/data-mapping.js.map +0 -1
  61. package/dist/components/data/data.js +0 -166
  62. package/dist/components/data/data.js.map +0 -1
  63. package/dist/components/data/evaluator.js +0 -103
  64. package/dist/components/data/evaluator.js.map +0 -1
  65. package/dist/components/donut.js +0 -104
  66. package/dist/components/donut.js.map +0 -1
  67. package/dist/components/drawer/draw-image-pendable.js +0 -20
  68. package/dist/components/drawer/draw-image-pendable.js.map +0 -1
  69. package/dist/components/drawer/effect.js +0 -19
  70. package/dist/components/drawer/effect.js.map +0 -1
  71. package/dist/components/drawer/fill.js +0 -228
  72. package/dist/components/drawer/fill.js.map +0 -1
  73. package/dist/components/drawer/format.js +0 -115
  74. package/dist/components/drawer/format.js.map +0 -1
  75. package/dist/components/drawer/line.js +0 -191
  76. package/dist/components/drawer/line.js.map +0 -1
  77. package/dist/components/drawer/stroke.js +0 -62
  78. package/dist/components/drawer/stroke.js.map +0 -1
  79. package/dist/components/drawer/text-wrapper.js +0 -51
  80. package/dist/components/drawer/text-wrapper.js.map +0 -1
  81. package/dist/components/drawer/text.js +0 -269
  82. package/dist/components/drawer/text.js.map +0 -1
  83. package/dist/components/ellipse.js +0 -110
  84. package/dist/components/ellipse.js.map +0 -1
  85. package/dist/components/file/ondropfile.js +0 -19
  86. package/dist/components/file/ondropfile.js.map +0 -1
  87. package/dist/components/fit/fit.js +0 -137
  88. package/dist/components/fit/fit.js.map +0 -1
  89. package/dist/components/geometry/transcoord.js +0 -339
  90. package/dist/components/geometry/transcoord.js.map +0 -1
  91. package/dist/components/geometry/union.js +0 -35
  92. package/dist/components/geometry/union.js.map +0 -1
  93. package/dist/components/gif-view.js +0 -128
  94. package/dist/components/gif-view.js.map +0 -1
  95. package/dist/components/global-ref.js +0 -154
  96. package/dist/components/global-ref.js.map +0 -1
  97. package/dist/components/group.js +0 -171
  98. package/dist/components/group.js.map +0 -1
  99. package/dist/components/html/elements.js +0 -24
  100. package/dist/components/html/elements.js.map +0 -1
  101. package/dist/components/html/fill.js +0 -126
  102. package/dist/components/html/fill.js.map +0 -1
  103. package/dist/components/html/reposition.js +0 -119
  104. package/dist/components/html/reposition.js.map +0 -1
  105. package/dist/components/html/shadow.js +0 -24
  106. package/dist/components/html/shadow.js.map +0 -1
  107. package/dist/components/html-overlay-container.js +0 -27
  108. package/dist/components/html-overlay-container.js.map +0 -1
  109. package/dist/components/html-overlay-element.js +0 -22
  110. package/dist/components/html-overlay-element.js.map +0 -1
  111. package/dist/components/image-view.js +0 -193
  112. package/dist/components/image-view.js.map +0 -1
  113. package/dist/components/index.js +0 -231
  114. package/dist/components/index.js.map +0 -1
  115. package/dist/components/info-window.js +0 -416
  116. package/dist/components/info-window.js.map +0 -1
  117. package/dist/components/line.js +0 -374
  118. package/dist/components/line.js.map +0 -1
  119. package/dist/components/local-ref.js +0 -114
  120. package/dist/components/local-ref.js.map +0 -1
  121. package/dist/components/mixins/connectable.js +0 -128
  122. package/dist/components/mixins/connectable.js.map +0 -1
  123. package/dist/components/mixins/data-source.js +0 -34
  124. package/dist/components/mixins/data-source.js.map +0 -1
  125. package/dist/components/mixins/html-element.js +0 -107
  126. package/dist/components/mixins/html-element.js.map +0 -1
  127. package/dist/components/mixins/move-handle.js +0 -73
  128. package/dist/components/mixins/move-handle.js.map +0 -1
  129. package/dist/components/mixins/rect-path.js +0 -113
  130. package/dist/components/mixins/rect-path.js.map +0 -1
  131. package/dist/components/mixins/value-holder.js +0 -81
  132. package/dist/components/mixins/value-holder.js.map +0 -1
  133. package/dist/components/mutater/bounds.js +0 -68
  134. package/dist/components/mutater/bounds.js.map +0 -1
  135. package/dist/components/mutater/path.js +0 -73
  136. package/dist/components/mutater/path.js.map +0 -1
  137. package/dist/components/ortholine.js +0 -763
  138. package/dist/components/ortholine.js.map +0 -1
  139. package/dist/components/outline/ellipse-outline.js +0 -23
  140. package/dist/components/outline/ellipse-outline.js.map +0 -1
  141. package/dist/components/outline/path-outline.js +0 -48
  142. package/dist/components/outline/path-outline.js.map +0 -1
  143. package/dist/components/path.js +0 -49
  144. package/dist/components/path.js.map +0 -1
  145. package/dist/components/polygon.js +0 -91
  146. package/dist/components/polygon.js.map +0 -1
  147. package/dist/components/polyline.js +0 -114
  148. package/dist/components/polyline.js.map +0 -1
  149. package/dist/components/popup.js +0 -160
  150. package/dist/components/popup.js.map +0 -1
  151. package/dist/components/rect.js +0 -72
  152. package/dist/components/rect.js.map +0 -1
  153. package/dist/components/retention/retention-manager.js +0 -81
  154. package/dist/components/retention/retention-manager.js.map +0 -1
  155. package/dist/components/root-container.js +0 -519
  156. package/dist/components/root-container.js.map +0 -1
  157. package/dist/components/ruler.js +0 -103
  158. package/dist/components/ruler.js.map +0 -1
  159. package/dist/components/shape.js +0 -97
  160. package/dist/components/shape.js.map +0 -1
  161. package/dist/components/star.js +0 -103
  162. package/dist/components/star.js.map +0 -1
  163. package/dist/components/text/substitutor.js +0 -92
  164. package/dist/components/text/substitutor.js.map +0 -1
  165. package/dist/components/text.js +0 -21
  166. package/dist/components/text.js.map +0 -1
  167. package/dist/components/triangle.js +0 -92
  168. package/dist/components/triangle.js.map +0 -1
  169. package/dist/const.js +0 -71
  170. package/dist/const.js.map +0 -1
  171. package/dist/core/collection.js +0 -28
  172. package/dist/core/collection.js.map +0 -1
  173. package/dist/core/debug.js +0 -12
  174. package/dist/core/debug.js.map +0 -1
  175. package/dist/core/deep-equals.js +0 -112
  176. package/dist/core/deep-equals.js.map +0 -1
  177. package/dist/core/dom-to-image.js +0 -617
  178. package/dist/core/dom-to-image.js.map +0 -1
  179. package/dist/core/event.js +0 -205
  180. package/dist/core/event.js.map +0 -1
  181. package/dist/core/index.js +0 -21
  182. package/dist/core/index.js.map +0 -1
  183. package/dist/core/list.js +0 -87
  184. package/dist/core/list.js.map +0 -1
  185. package/dist/core/logger.js +0 -29
  186. package/dist/core/logger.js.map +0 -1
  187. package/dist/core/memoize.js +0 -40
  188. package/dist/core/memoize.js.map +0 -1
  189. package/dist/core/mixin.js +0 -26
  190. package/dist/core/mixin.js.map +0 -1
  191. package/dist/core/obj-accessor.js +0 -26
  192. package/dist/core/obj-accessor.js.map +0 -1
  193. package/dist/core/reference-map.js +0 -147
  194. package/dist/core/reference-map.js.map +0 -1
  195. package/dist/core/round-rect.js +0 -62
  196. package/dist/core/round-rect.js.map +0 -1
  197. package/dist/core/safe-round.js +0 -10
  198. package/dist/core/safe-round.js.map +0 -1
  199. package/dist/core/script-loader.js +0 -148
  200. package/dist/core/script-loader.js.map +0 -1
  201. package/dist/core/snapshot-taker.js +0 -59
  202. package/dist/core/snapshot-taker.js.map +0 -1
  203. package/dist/core/stack.js +0 -18
  204. package/dist/core/stack.js.map +0 -1
  205. package/dist/core/timecapsule.js +0 -88
  206. package/dist/core/timecapsule.js.map +0 -1
  207. package/dist/core/utils.js +0 -309
  208. package/dist/core/utils.js.map +0 -1
  209. package/dist/decorator/anchors-decorator.js +0 -53
  210. package/dist/decorator/anchors-decorator.js.map +0 -1
  211. package/dist/decorator/bouncing-arrow-decorator.js +0 -52
  212. package/dist/decorator/bouncing-arrow-decorator.js.map +0 -1
  213. package/dist/decorator/data-spread-decorator.js +0 -69
  214. package/dist/decorator/data-spread-decorator.js.map +0 -1
  215. package/dist/decorator/decotag-decorator.js +0 -33
  216. package/dist/decorator/decotag-decorator.js.map +0 -1
  217. package/dist/decorator/index.js +0 -31
  218. package/dist/decorator/index.js.map +0 -1
  219. package/dist/decorator/link-decorator.js +0 -66
  220. package/dist/decorator/link-decorator.js.map +0 -1
  221. package/dist/effect/gradation.js +0 -37
  222. package/dist/effect/gradation.js.map +0 -1
  223. package/dist/effect/index.js +0 -23
  224. package/dist/effect/index.js.map +0 -1
  225. package/dist/effect/shadow.js +0 -33
  226. package/dist/effect/shadow.js.map +0 -1
  227. package/dist/effect/turn.js +0 -25
  228. package/dist/effect/turn.js.map +0 -1
  229. package/dist/event/event-engine.js +0 -76
  230. package/dist/event/event-engine.js.map +0 -1
  231. package/dist/event/event-pump.js +0 -92
  232. package/dist/event/event-pump.js.map +0 -1
  233. package/dist/event/event-tracker.js +0 -97
  234. package/dist/event/event-tracker.js.map +0 -1
  235. package/dist/event/index.js +0 -21
  236. package/dist/event/index.js.map +0 -1
  237. package/dist/event/ua-event-handler.js +0 -453
  238. package/dist/event/ua-event-handler.js.map +0 -1
  239. package/dist/event-map/animator-handler.js +0 -225
  240. package/dist/event-map/animator-handler.js.map +0 -1
  241. package/dist/event-map/animators/animated-icon.js +0 -265
  242. package/dist/event-map/animators/animated-icon.js.map +0 -1
  243. package/dist/event-map/animators/border-highlighting.js +0 -476
  244. package/dist/event-map/animators/border-highlighting.js.map +0 -1
  245. package/dist/event-map/animators/bouncing-arrow.js +0 -226
  246. package/dist/event-map/animators/bouncing-arrow.js.map +0 -1
  247. package/dist/event-map/event-map.js +0 -36
  248. package/dist/event-map/event-map.js.map +0 -1
  249. package/dist/event-map/index.js +0 -20
  250. package/dist/event-map/index.js.map +0 -1
  251. package/dist/event-map/move-handler.js +0 -233
  252. package/dist/event-map/move-handler.js.map +0 -1
  253. package/dist/event-map/paste-handler.js +0 -176
  254. package/dist/event-map/paste-handler.js.map +0 -1
  255. package/dist/event-map/shift-handler.js +0 -55
  256. package/dist/event-map/shift-handler.js.map +0 -1
  257. package/dist/event-map/text-editor-lite.js +0 -276
  258. package/dist/event-map/text-editor-lite.js.map +0 -1
  259. package/dist/event-map/zoom-handler.js +0 -49
  260. package/dist/event-map/zoom-handler.js.map +0 -1
  261. package/dist/index.js +0 -20
  262. package/dist/index.js.map +0 -1
  263. package/dist/layer/action/emphasize.js +0 -42
  264. package/dist/layer/action/emphasize.js.map +0 -1
  265. package/dist/layer/action/popup.js +0 -461
  266. package/dist/layer/action/popup.js.map +0 -1
  267. package/dist/layer/action/pressed.js +0 -31
  268. package/dist/layer/action/pressed.js.map +0 -1
  269. package/dist/layer/add-layer.js +0 -180
  270. package/dist/layer/add-layer.js.map +0 -1
  271. package/dist/layer/decotag-layer.js +0 -121
  272. package/dist/layer/decotag-layer.js.map +0 -1
  273. package/dist/layer/guide-layer.js +0 -292
  274. package/dist/layer/guide-layer.js.map +0 -1
  275. package/dist/layer/index.js +0 -70
  276. package/dist/layer/index.js.map +0 -1
  277. package/dist/layer/layer.js +0 -230
  278. package/dist/layer/layer.js.map +0 -1
  279. package/dist/layer/minimap-layer.js +0 -84
  280. package/dist/layer/minimap-layer.js.map +0 -1
  281. package/dist/layer/model-layer.js +0 -465
  282. package/dist/layer/model-layer.js.map +0 -1
  283. package/dist/layer/modeler/anchor-handler.js +0 -193
  284. package/dist/layer/modeler/anchor-handler.js.map +0 -1
  285. package/dist/layer/modeler/control-handler.js +0 -95
  286. package/dist/layer/modeler/control-handler.js.map +0 -1
  287. package/dist/layer/modeler/focus-outline.js +0 -41
  288. package/dist/layer/modeler/focus-outline.js.map +0 -1
  289. package/dist/layer/modeler/group-outline.js +0 -30
  290. package/dist/layer/modeler/group-outline.js.map +0 -1
  291. package/dist/layer/modeler/index.js +0 -56
  292. package/dist/layer/modeler/index.js.map +0 -1
  293. package/dist/layer/modeler/path-handler.js +0 -300
  294. package/dist/layer/modeler/path-handler.js.map +0 -1
  295. package/dist/layer/modeler/resizer.js +0 -333
  296. package/dist/layer/modeler/resizer.js.map +0 -1
  297. package/dist/layer/modeler/rotator.js +0 -134
  298. package/dist/layer/modeler/rotator.js.map +0 -1
  299. package/dist/layer/modeling-layer.js +0 -491
  300. package/dist/layer/modeling-layer.js.map +0 -1
  301. package/dist/layer/reaction-layer.js +0 -111
  302. package/dist/layer/reaction-layer.js.map +0 -1
  303. package/dist/layer/scroll-layer.js +0 -191
  304. package/dist/layer/scroll-layer.js.map +0 -1
  305. package/dist/layer/selection/selected-finder.js +0 -96
  306. package/dist/layer/selection/selected-finder.js.map +0 -1
  307. package/dist/layer/selection-layer.js +0 -373
  308. package/dist/layer/selection-layer.js.map +0 -1
  309. package/dist/layer/shift-layer.js +0 -83
  310. package/dist/layer/shift-layer.js.map +0 -1
  311. package/dist/layout/absolute.js +0 -30
  312. package/dist/layout/absolute.js.map +0 -1
  313. package/dist/layout/card.js +0 -52
  314. package/dist/layout/card.js.map +0 -1
  315. package/dist/layout/html-absolute.js +0 -32
  316. package/dist/layout/html-absolute.js.map +0 -1
  317. package/dist/layout/index.js +0 -56
  318. package/dist/layout/index.js.map +0 -1
  319. package/dist/layout/layout.js +0 -36
  320. package/dist/layout/layout.js.map +0 -1
  321. package/dist/layout/linear-horizontal.js +0 -56
  322. package/dist/layout/linear-horizontal.js.map +0 -1
  323. package/dist/layout/linear-vertical.js +0 -56
  324. package/dist/layout/linear-vertical.js.map +0 -1
  325. package/dist/layout/table.js +0 -106
  326. package/dist/layout/table.js.map +0 -1
  327. package/dist/license/license.js +0 -170
  328. package/dist/license/license.js.map +0 -1
  329. package/dist/model/compile.js +0 -40
  330. package/dist/model/compile.js.map +0 -1
  331. package/dist/model/duplicate.js +0 -19
  332. package/dist/model/duplicate.js.map +0 -1
  333. package/dist/model/index.js +0 -34
  334. package/dist/model/index.js.map +0 -1
  335. package/dist/model/selector.js +0 -104
  336. package/dist/model/selector.js.map +0 -1
  337. package/dist/style/compile.js +0 -14
  338. package/dist/style/compile.js.map +0 -1
  339. package/dist/style/index.js +0 -14
  340. package/dist/style/index.js.map +0 -1
  341. package/dist/things-scene/api/add-start.js +0 -18
  342. package/dist/things-scene/api/add-start.js.map +0 -1
  343. package/dist/things-scene/api/add.js +0 -71
  344. package/dist/things-scene/api/add.js.map +0 -1
  345. package/dist/things-scene/api/align.js +0 -116
  346. package/dist/things-scene/api/align.js.map +0 -1
  347. package/dist/things-scene/api/center-to.js +0 -50
  348. package/dist/things-scene/api/center-to.js.map +0 -1
  349. package/dist/things-scene/api/change.js +0 -27
  350. package/dist/things-scene/api/change.js.map +0 -1
  351. package/dist/things-scene/api/clipboard.js +0 -45
  352. package/dist/things-scene/api/clipboard.js.map +0 -1
  353. package/dist/things-scene/api/distribute.js +0 -57
  354. package/dist/things-scene/api/distribute.js.map +0 -1
  355. package/dist/things-scene/api/duplicate.js +0 -47
  356. package/dist/things-scene/api/duplicate.js.map +0 -1
  357. package/dist/things-scene/api/fullscreen.js +0 -26
  358. package/dist/things-scene/api/fullscreen.js.map +0 -1
  359. package/dist/things-scene/api/group.js +0 -91
  360. package/dist/things-scene/api/group.js.map +0 -1
  361. package/dist/things-scene/api/ids.js +0 -28
  362. package/dist/things-scene/api/ids.js.map +0 -1
  363. package/dist/things-scene/api/index.js +0 -192
  364. package/dist/things-scene/api/index.js.map +0 -1
  365. package/dist/things-scene/api/listener.js +0 -69
  366. package/dist/things-scene/api/listener.js.map +0 -1
  367. package/dist/things-scene/api/paste-start.js +0 -27
  368. package/dist/things-scene/api/paste-start.js.map +0 -1
  369. package/dist/things-scene/api/place.js +0 -98
  370. package/dist/things-scene/api/place.js.map +0 -1
  371. package/dist/things-scene/api/remove.js +0 -57
  372. package/dist/things-scene/api/remove.js.map +0 -1
  373. package/dist/things-scene/api/symmetry.js +0 -47
  374. package/dist/things-scene/api/symmetry.js.map +0 -1
  375. package/dist/things-scene/api/to-data-url.js +0 -76
  376. package/dist/things-scene/api/to-data-url.js.map +0 -1
  377. package/dist/things-scene/api/zorder.js +0 -68
  378. package/dist/things-scene/api/zorder.js.map +0 -1
  379. package/dist/things-scene/application-context.js +0 -168
  380. package/dist/things-scene/application-context.js.map +0 -1
  381. package/dist/things-scene/config.js +0 -18
  382. package/dist/things-scene/config.js.map +0 -1
  383. package/dist/things-scene/create.js +0 -67
  384. package/dist/things-scene/create.js.map +0 -1
  385. package/dist/things-scene/fps.js +0 -26
  386. package/dist/things-scene/fps.js.map +0 -1
  387. package/dist/things-scene/index.js +0 -152
  388. package/dist/things-scene/index.js.map +0 -1
  389. package/dist/things-scene/polyfill.js +0 -111
  390. package/dist/things-scene/polyfill.js.map +0 -1
  391. package/dist/things-scene/scene.js +0 -442
  392. package/dist/things-scene/scene.js.map +0 -1
  393. package/dist/things-scene/version.js +0 -12
  394. package/dist/things-scene/version.js.map +0 -1
  395. package/rollup.config.js +0 -67
  396. package/schema.graphql +0 -4606
  397. package/tsconfig.json +0 -31
@@ -1,763 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _component = _interopRequireDefault(require("./component.js"));
8
- var _line = _interopRequireWildcard(require("./line.js"));
9
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- /*
13
- * Copyright © HatioLab Inc. All rights reserved.
14
- */
15
-
16
- const FROM = 0;
17
- const TO = 1;
18
- const NATURE = {
19
- mutable: false,
20
- resizable: false,
21
- rotatable: false,
22
- properties: [{
23
- type: 'number',
24
- label: 'round',
25
- name: 'round',
26
- property: {
27
- min: 0,
28
- max: 100,
29
- step: 1
30
- }
31
- }],
32
- help: 'scene/component/ortholine'
33
- };
34
- class OrthoLine extends _line.default {
35
- get pathExtendable() {
36
- return false;
37
- }
38
- get drawPath() {
39
- const fromPosition = this.path[0];
40
- const toPosition = this.path[1];
41
- const {
42
- component: fromComponent,
43
- direction: fromDirection,
44
- boundaryPosition: fromBoundaryPosition = fromPosition
45
- } = this.fromEnd || {};
46
- const {
47
- component: toComponent,
48
- direction: toDirection,
49
- boundaryPosition: toBoundaryPosition = toPosition
50
- } = this.toEnd || {};
51
- var boundaryPositions = [fromBoundaryPosition, toBoundaryPosition];
52
- var path = [];
53
- if (fromBoundaryPosition) {
54
- path.push(fromBoundaryPosition);
55
- }
56
-
57
- /* 두 컴포넌트의 확장된 바운드를 구한다. */
58
- var fromOriginBounds = fromComponent?.bounds;
59
- if (fromOriginBounds) {
60
- var transcoorded = fromComponent.transcoordS2T(fromOriginBounds.left, fromOriginBounds.top);
61
- transcoorded = this.transcoordT2P(transcoorded.x, transcoorded.y);
62
- fromOriginBounds = {
63
- ...fromOriginBounds,
64
- left: transcoorded.x,
65
- top: transcoorded.y
66
- };
67
- }
68
- var fromBounds = fromOriginBounds ? {
69
- left: fromOriginBounds.left - 20,
70
- top: fromOriginBounds.top - 20,
71
- width: fromOriginBounds.width + 40,
72
- height: fromOriginBounds.height + 40
73
- } : {
74
- left: fromBoundaryPosition.x,
75
- top: fromBoundaryPosition.y,
76
- width: 0,
77
- height: 0
78
- };
79
- fromOriginBounds = fromOriginBounds || fromBounds;
80
- var toOriginBounds = toComponent?.bounds;
81
- if (toOriginBounds) {
82
- var transcoorded = toComponent.transcoordS2T(toOriginBounds.left, toOriginBounds.top);
83
- transcoorded = this.transcoordT2P(transcoorded.x, transcoorded.y);
84
- toOriginBounds = {
85
- ...toOriginBounds,
86
- left: transcoorded.x,
87
- top: transcoorded.y
88
- };
89
- }
90
- var toBounds = toOriginBounds ? {
91
- left: toOriginBounds.left - 20,
92
- top: toOriginBounds.top - 20,
93
- width: toOriginBounds.width + 40,
94
- height: toOriginBounds.height + 40
95
- } : {
96
- left: toBoundaryPosition.x,
97
- top: toBoundaryPosition.y,
98
- width: 0,
99
- height: 0
100
- };
101
- toOriginBounds = toOriginBounds || toBounds;
102
- var fromToBounds = [fromBounds, toBounds];
103
- const leftMost = fromBounds.left > toBounds.left ? toBounds.left : fromBounds.left;
104
- const topMost = fromBounds.top > toBounds.top ? toBounds.top : fromBounds.top;
105
- var unionBounds = {
106
- left: leftMost,
107
- top: topMost,
108
- width: fromBounds.left + fromBounds.width > toBounds.left + toBounds.width ? fromBounds.left + fromBounds.width - leftMost : toBounds.left + toBounds.width - leftMost,
109
- height: fromBounds.top + fromBounds.height > toBounds.top + toBounds.height ? fromBounds.top + fromBounds.height - topMost : toBounds.top + toBounds.height - topMost
110
- };
111
-
112
- /* 두 컴포넌트 바운드의 센터를 찾는다. */
113
- var centerX,
114
- centerY,
115
- centerWidth = 0,
116
- centerHeight = 0;
117
- var upperComponent, leftComponent, rightComponent, lowerComponent;
118
- var upperComponentDirection, lowerComponentDirection;
119
- var leftComponentDirection, rightComponentDirection;
120
- if (fromOriginBounds.left + fromOriginBounds.width < toOriginBounds.left) {
121
- leftComponent = FROM;
122
- rightComponent = TO;
123
- leftComponentDirection = fromDirection;
124
- rightComponentDirection = toDirection;
125
- centerX = (fromOriginBounds.left + fromOriginBounds.width + toOriginBounds.left) / 2;
126
- centerWidth = toOriginBounds.left - centerX;
127
- } else if (toOriginBounds.left + toOriginBounds.width < fromOriginBounds.left) {
128
- leftComponent = TO;
129
- rightComponent = FROM;
130
- leftComponentDirection = toDirection;
131
- rightComponentDirection = fromDirection;
132
- centerX = (fromOriginBounds.left + toOriginBounds.width + toOriginBounds.left) / 2;
133
- centerWidth = fromOriginBounds.left - centerX;
134
- }
135
- if (fromOriginBounds.top + fromOriginBounds.height < toOriginBounds.top) {
136
- upperComponent = FROM;
137
- lowerComponent = TO;
138
- upperComponentDirection = fromDirection;
139
- lowerComponentDirection = toDirection;
140
- centerY = (fromOriginBounds.top + fromOriginBounds.height + toOriginBounds.top) / 2;
141
- centerHeight = toOriginBounds.top - centerY;
142
- } else if (toOriginBounds.top + toOriginBounds.height < fromOriginBounds.top) {
143
- upperComponent = TO;
144
- lowerComponent = FROM;
145
- upperComponentDirection = toDirection;
146
- lowerComponentDirection = fromDirection;
147
- centerY = (fromOriginBounds.top + toOriginBounds.height + toOriginBounds.top) / 2;
148
- centerHeight = fromOriginBounds.top - centerY;
149
- }
150
-
151
- /* 각 LinkEnd의 방향별 패스 구하기 */
152
- var lpath = [];
153
- if (centerX && centerWidth > centerHeight) {
154
- switch (rightComponentDirection) {
155
- case _line.WEST:
156
- switch (leftComponentDirection) {
157
- case _line.EAST:
158
- lpath.push({
159
- x: centerX,
160
- y: boundaryPositions[leftComponent].y
161
- });
162
- lpath.push({
163
- x: centerX,
164
- y: boundaryPositions[rightComponent].y
165
- });
166
- break;
167
- case _line.WEST:
168
- var leftComponentCenterY = fromToBounds[leftComponent].top + fromToBounds[leftComponent].height / 2;
169
- var leftY = leftComponentCenterY > boundaryPositions[rightComponent].y ? Math.min(fromToBounds[leftComponent].top, boundaryPositions[rightComponent].y) : Math.max(fromToBounds[leftComponent].top + fromToBounds[leftComponent].height, boundaryPositions[rightComponent].y);
170
- lpath.push({
171
- x: boundaryPositions[leftComponent].x,
172
- y: leftY
173
- });
174
- lpath.push({
175
- x: centerX,
176
- y: leftY
177
- });
178
- lpath.push({
179
- x: centerX,
180
- y: boundaryPositions[rightComponent].y
181
- });
182
- break;
183
- case _line.NORTH:
184
- case _line.SOUTH:
185
- var leftY = leftComponentDirection === _line.SOUTH ? Math.max(boundaryPositions[leftComponent].y, boundaryPositions[rightComponent].y) : Math.min(boundaryPositions[leftComponent].y, boundaryPositions[rightComponent].y);
186
- lpath.push({
187
- x: boundaryPositions[leftComponent].x,
188
- y: leftY
189
- });
190
- lpath.push({
191
- x: centerX,
192
- y: leftY
193
- });
194
- lpath.push({
195
- x: centerX,
196
- y: boundaryPositions[rightComponent].y
197
- });
198
- break;
199
- default:
200
- return this.path;
201
- }
202
- break;
203
- case _line.EAST:
204
- switch (leftComponentDirection) {
205
- case _line.EAST:
206
- var leftY = boundaryPositions[leftComponent].y < boundaryPositions[rightComponent].y ? Math.min(fromToBounds[rightComponent].top, boundaryPositions[leftComponent].y) : Math.max(fromToBounds[rightComponent].top + fromToBounds[rightComponent].height, boundaryPositions[leftComponent].y);
207
- var rightY = leftY;
208
- break;
209
- case _line.WEST:
210
- var leftY = centerY !== undefined ? centerY : boundaryPositions[leftComponent].y < boundaryPositions[rightComponent].y ? unionBounds.top - centerWidth * 0.5 : unionBounds.top + unionBounds.height + centerWidth * 0.5;
211
- var rightY = leftY;
212
- break;
213
- case _line.SOUTH:
214
- var leftY = centerY !== undefined ? Math.max(centerY, boundaryPositions[leftComponent].y) : unionBounds.top + unionBounds.height;
215
- var rightY = leftY;
216
- break;
217
- case _line.NORTH:
218
- var leftY = centerY ? Math.min(centerY, fromToBounds[leftComponent].top) : unionBounds.top;
219
- var rightY = leftY;
220
- break;
221
- default:
222
- return this.path;
223
- }
224
- lpath.push({
225
- x: boundaryPositions[leftComponent].x,
226
- y: leftY
227
- });
228
- lpath.push({
229
- x: centerX,
230
- y: leftY
231
- });
232
- lpath.push({
233
- x: centerX,
234
- y: rightY
235
- });
236
- lpath.push({
237
- x: boundaryPositions[rightComponent].x,
238
- y: rightY
239
- });
240
- break;
241
- case _line.SOUTH:
242
- switch (leftComponentDirection) {
243
- case _line.EAST:
244
- var leftY = boundaryPositions[leftComponent].y;
245
- var rightY = boundaryPositions[leftComponent].y > boundaryPositions[rightComponent].y ? boundaryPositions[leftComponent].y : fromToBounds[rightComponent].top + fromToBounds[rightComponent].height;
246
- break;
247
- case _line.WEST:
248
- var leftY = centerY ? Math.max(centerY, fromToBounds[rightComponent].top + fromToBounds[rightComponent].height) : unionBounds.top + unionBounds.height;
249
- var rightY = leftY;
250
- break;
251
- case _line.SOUTH:
252
- var leftY = unionBounds.top + unionBounds.height;
253
- var rightY = leftY;
254
- break;
255
- case _line.NORTH:
256
- var leftY = centerY ? Math.min(centerY, fromToBounds[leftComponent].top) : fromToBounds[leftComponent].top;
257
- var rightY = centerY ? Math.max(centerY, fromToBounds[rightComponent].top + fromToBounds[rightComponent].height) : fromToBounds[rightComponent].top + fromToBounds[rightComponent].height;
258
- break;
259
- default:
260
- return this.path;
261
- }
262
- lpath.push({
263
- x: boundaryPositions[leftComponent].x,
264
- y: leftY
265
- });
266
- lpath.push({
267
- x: centerX,
268
- y: leftY
269
- });
270
- lpath.push({
271
- x: centerX,
272
- y: rightY
273
- });
274
- lpath.push({
275
- x: boundaryPositions[rightComponent].x,
276
- y: rightY
277
- });
278
- break;
279
- case _line.NORTH:
280
- switch (leftComponentDirection) {
281
- case _line.EAST:
282
- var leftY = boundaryPositions[leftComponent].y;
283
- var rightY = boundaryPositions[leftComponent].y < boundaryPositions[rightComponent].y ? boundaryPositions[leftComponent].y : fromToBounds[rightComponent].top;
284
- break;
285
- case _line.WEST:
286
- var leftY = centerY ? Math.min(centerY, fromToBounds[rightComponent].top) : unionBounds.top;
287
- var rightY = leftY;
288
- break;
289
- case _line.SOUTH:
290
- var leftY = centerY !== undefined ? Math.max(centerY, boundaryPositions[leftComponent].y) : boundaryPositions[leftComponent].y;
291
- var rightY = centerY !== undefined ? Math.min(centerY, boundaryPositions[rightComponent].y) : boundaryPositions[rightComponent].y;
292
- break;
293
- case _line.NORTH:
294
- var leftY = unionBounds.top;
295
- var rightY = leftY;
296
- break;
297
- default:
298
- return this.path;
299
- }
300
- lpath.push({
301
- x: boundaryPositions[leftComponent].x,
302
- y: leftY
303
- });
304
- lpath.push({
305
- x: centerX,
306
- y: leftY
307
- });
308
- lpath.push({
309
- x: centerX,
310
- y: rightY
311
- });
312
- lpath.push({
313
- x: boundaryPositions[rightComponent].x,
314
- y: rightY
315
- });
316
- break;
317
- default:
318
- return this.path;
319
- }
320
- path.push(...(leftComponent === FROM ? lpath : lpath.reverse()));
321
- } else if (centerY) {
322
- switch (lowerComponentDirection) {
323
- case _line.NORTH:
324
- switch (upperComponentDirection) {
325
- case _line.SOUTH:
326
- lpath.push({
327
- x: boundaryPositions[upperComponent].x,
328
- y: centerY
329
- });
330
- lpath.push({
331
- x: boundaryPositions[lowerComponent].x,
332
- y: centerY
333
- });
334
- break;
335
- case _line.NORTH:
336
- var upperComponentCenterX = fromToBounds[upperComponent].left + fromToBounds[upperComponent].width / 2;
337
- var upperX = upperComponentCenterX > boundaryPositions[lowerComponent].x ? Math.min(fromToBounds[upperComponent].left, boundaryPositions[lowerComponent].x) : Math.max(fromToBounds[upperComponent].left + fromToBounds[upperComponent].width, boundaryPositions[lowerComponent].x);
338
- lpath.push({
339
- x: upperX,
340
- y: boundaryPositions[upperComponent].y
341
- });
342
- lpath.push({
343
- x: upperX,
344
- y: centerY
345
- });
346
- lpath.push({
347
- x: boundaryPositions[lowerComponent].x,
348
- y: centerY
349
- });
350
- break;
351
- case _line.WEST:
352
- var upperX = Math.min(boundaryPositions[upperComponent].x, boundaryPositions[lowerComponent].x);
353
- lpath.push({
354
- x: upperX,
355
- y: boundaryPositions[upperComponent].y
356
- });
357
- lpath.push({
358
- x: upperX,
359
- y: centerY
360
- });
361
- lpath.push({
362
- x: boundaryPositions[lowerComponent].x,
363
- y: centerY
364
- });
365
- break;
366
- case _line.EAST:
367
- var upperX = Math.max(boundaryPositions[upperComponent].x, boundaryPositions[lowerComponent].x);
368
- lpath.push({
369
- x: upperX,
370
- y: boundaryPositions[upperComponent].y
371
- });
372
- lpath.push({
373
- x: upperX,
374
- y: centerY
375
- });
376
- lpath.push({
377
- x: boundaryPositions[lowerComponent].x,
378
- y: centerY
379
- });
380
- break;
381
- default:
382
- return this.path;
383
- }
384
- break;
385
- case _line.SOUTH:
386
- switch (upperComponentDirection) {
387
- case _line.WEST:
388
- var upperX = unionBounds.left;
389
- var lowerX = upperX;
390
- break;
391
- case _line.EAST:
392
- var upperX = centerX !== undefined ? Math.max(centerX, boundaryPositions[upperComponent].x) : unionBounds.left + unionBounds.width;
393
- var lowerX = upperX;
394
- break;
395
- case _line.NORTH:
396
- var upperX = centerX !== undefined ? centerX : boundaryPositions[upperComponent].x < boundaryPositions[lowerComponent].x ? unionBounds.left - centerHeight * 0.5 : unionBounds.left + unionBounds.width + centerHeight * 0.5;
397
- var lowerX = upperX;
398
- break;
399
- case _line.SOUTH:
400
- var upperX = boundaryPositions[upperComponent].x;
401
- var lowerX = boundaryPositions[upperComponent].x < boundaryPositions[lowerComponent].x ? Math.min(fromToBounds[lowerComponent].left, boundaryPositions[upperComponent].x) : Math.max(fromToBounds[lowerComponent].left + fromToBounds[lowerComponent].width, boundaryPositions[upperComponent].x);
402
- break;
403
- default:
404
- return this.path;
405
- }
406
- lpath.push({
407
- x: upperX,
408
- y: boundaryPositions[upperComponent].y
409
- });
410
- lpath.push({
411
- x: upperX,
412
- y: centerY
413
- });
414
- lpath.push({
415
- x: lowerX,
416
- y: centerY
417
- });
418
- lpath.push({
419
- x: lowerX,
420
- y: boundaryPositions[lowerComponent].y
421
- });
422
- break;
423
- case _line.EAST:
424
- switch (upperComponentDirection) {
425
- case _line.WEST:
426
- var upperX = centerX !== undefined ? Math.min(centerX, boundaryPositions[upperComponent].x) : boundaryPositions[upperComponent].x;
427
- var lowerX = centerX !== undefined ? Math.max(centerX, boundaryPositions[lowerComponent].x) : boundaryPositions[lowerComponent].x;
428
- break;
429
- case _line.EAST:
430
- var upperX = unionBounds.left + unionBounds.width;
431
- var lowerX = upperX;
432
- break;
433
- case _line.NORTH:
434
- var upperX = centerX !== undefined ? Math.max(centerX, boundaryPositions[lowerComponent].x) : unionBounds.left + unionBounds.width;
435
- var lowerX = upperX;
436
- break;
437
- case _line.SOUTH:
438
- var upperX = boundaryPositions[upperComponent].x;
439
- var lowerX = Math.max(fromToBounds[lowerComponent].left + fromToBounds[lowerComponent].width, boundaryPositions[upperComponent].x);
440
- break;
441
- default:
442
- return this.path;
443
- }
444
- lpath.push({
445
- x: upperX,
446
- y: boundaryPositions[upperComponent].y
447
- });
448
- lpath.push({
449
- x: upperX,
450
- y: centerY
451
- });
452
- lpath.push({
453
- x: lowerX,
454
- y: centerY
455
- });
456
- lpath.push({
457
- x: lowerX,
458
- y: boundaryPositions[lowerComponent].y
459
- });
460
- break;
461
- case _line.WEST:
462
- switch (upperComponentDirection) {
463
- case _line.WEST:
464
- var upperX = unionBounds.left;
465
- var lowerX = upperX;
466
- break;
467
- case _line.EAST:
468
- var upperX = centerX !== undefined ? Math.max(centerX, boundaryPositions[upperComponent].x) : boundaryPositions[upperComponent].x;
469
- var lowerX = centerX !== undefined ? Math.min(centerX, boundaryPositions[lowerComponent].x) : boundaryPositions[lowerComponent].x;
470
- break;
471
- case _line.NORTH:
472
- var upperX = unionBounds.left;
473
- var lowerX = upperX;
474
- break;
475
- case _line.SOUTH:
476
- var upperX = boundaryPositions[upperComponent].x < boundaryPositions[lowerComponent].x ? Math.min(fromToBounds[lowerComponent].left, boundaryPositions[upperComponent].x) : boundaryPositions[upperComponent].x;
477
- var lowerX = Math.min(upperX, boundaryPositions[lowerComponent].x);
478
- break;
479
- default:
480
- return this.path;
481
- }
482
- lpath.push({
483
- x: upperX,
484
- y: boundaryPositions[upperComponent].y
485
- });
486
- lpath.push({
487
- x: upperX,
488
- y: centerY
489
- });
490
- lpath.push({
491
- x: lowerX,
492
- y: centerY
493
- });
494
- lpath.push({
495
- x: lowerX,
496
- y: boundaryPositions[lowerComponent].y
497
- });
498
- break;
499
- default:
500
- return this.path;
501
- }
502
- path.push(...(upperComponent === FROM ? lpath : lpath.reverse()));
503
- } else {
504
- switch (fromDirection) {
505
- case _line.NORTH:
506
- switch (toDirection) {
507
- case _line.NORTH:
508
- var y = unionBounds.top;
509
- path.push({
510
- x: boundaryPositions[FROM].x,
511
- y
512
- });
513
- path.push({
514
- x: boundaryPositions[TO].x,
515
- y
516
- });
517
- break;
518
- case _line.SOUTH:
519
- var x = unionBounds.left + unionBounds.width;
520
- path.push({
521
- x,
522
- y: boundaryPositions[FROM].y
523
- });
524
- path.push({
525
- x,
526
- y: unionBounds.top + unionBounds.height
527
- });
528
- path.push({
529
- x: boundaryPositions[TO].x,
530
- y: unionBounds.top + unionBounds.height
531
- });
532
- break;
533
- case _line.EAST:
534
- var x = boundaryPositions[TO].y < boundaryPositions[FROM].y && boundaryPositions[TO].x < boundaryPositions[FROM].x ? boundaryPositions[FROM].x : unionBounds.left + unionBounds.width;
535
- path.push({
536
- x,
537
- y: boundaryPositions[FROM].y
538
- });
539
- path.push({
540
- x,
541
- y: boundaryPositions[TO].y
542
- });
543
- break;
544
- case _line.WEST:
545
- var x = unionBounds.left;
546
- path.push({
547
- x,
548
- y: boundaryPositions[FROM].y
549
- });
550
- path.push({
551
- x,
552
- y: boundaryPositions[TO].y
553
- });
554
- break;
555
- default:
556
- return this.path;
557
- }
558
- break;
559
- case _line.SOUTH:
560
- switch (toDirection) {
561
- case _line.NORTH:
562
- var x = unionBounds.left + unionBounds.width;
563
- path.push({
564
- x,
565
- y: boundaryPositions[FROM].y
566
- });
567
- path.push({
568
- x,
569
- y: unionBounds.top
570
- });
571
- path.push({
572
- x: boundaryPositions[TO].x,
573
- y: unionBounds.top
574
- });
575
- break;
576
- case _line.SOUTH:
577
- var y = unionBounds.top + unionBounds.height;
578
- path.push({
579
- x: boundaryPositions[FROM].x,
580
- y
581
- });
582
- path.push({
583
- x: boundaryPositions[TO].x,
584
- y
585
- });
586
- break;
587
- case _line.EAST:
588
- var y = unionBounds.top + unionBounds.height;
589
- path.push({
590
- x: boundaryPositions[FROM].x,
591
- y
592
- });
593
- path.push({
594
- x: boundaryPositions[TO].x,
595
- y
596
- });
597
- break;
598
- case _line.WEST:
599
- var y = unionBounds.top + unionBounds.height;
600
- path.push({
601
- x: boundaryPositions[FROM].x,
602
- y
603
- });
604
- path.push({
605
- x: boundaryPositions[TO].x,
606
- y
607
- });
608
- break;
609
- default:
610
- return this.path;
611
- }
612
- break;
613
- case _line.WEST:
614
- switch (toDirection) {
615
- case _line.NORTH:
616
- var x = boundaryPositions[FROM].x > boundaryPositions[TO].x && boundaryPositions[FROM].y < boundaryPositions[TO].y ? boundaryPositions[TO].x : unionBounds.left;
617
- var y = boundaryPositions[FROM].x > boundaryPositions[TO].x && boundaryPositions[FROM].y < boundaryPositions[TO].y ? boundaryPositions[TO].y : Math.min(unionBounds.top, boundaryPositions[FROM].y);
618
- path.push({
619
- x,
620
- y: boundaryPositions[FROM].y
621
- });
622
- path.push({
623
- x,
624
- y
625
- });
626
- path.push({
627
- x: boundaryPositions[TO].x,
628
- y
629
- });
630
- break;
631
- case _line.SOUTH:
632
- var x = unionBounds.left;
633
- var y = Math.max(unionBounds.top + unionBounds.height, boundaryPositions[FROM].y);
634
- path.push({
635
- x,
636
- y: boundaryPositions[FROM].y
637
- });
638
- path.push({
639
- x,
640
- y
641
- });
642
- path.push({
643
- x: boundaryPositions[TO].x,
644
- y
645
- });
646
- break;
647
- case _line.EAST:
648
- var x = unionBounds.left + unionBounds.width;
649
- path.push({
650
- x: boundaryPositions[FROM].x,
651
- y: unionBounds.top
652
- });
653
- path.push({
654
- x,
655
- y: unionBounds.top
656
- });
657
- path.push({
658
- x,
659
- y: boundaryPositions[TO].y
660
- });
661
- break;
662
- case _line.WEST:
663
- var x = unionBounds.left;
664
- path.push({
665
- x,
666
- y: boundaryPositions[FROM].y
667
- });
668
- path.push({
669
- x,
670
- y: boundaryPositions[TO].y
671
- });
672
- break;
673
- default:
674
- return this.path;
675
- }
676
- break;
677
- case _line.EAST:
678
- switch (toDirection) {
679
- case _line.NORTH:
680
- var y = boundaryPositions[FROM].y < boundaryPositions[TO].y && boundaryPositions[FROM].x < boundaryPositions[TO].x ? boundaryPositions[FROM].y : unionBounds.top;
681
- path.push({
682
- x: boundaryPositions[FROM].x,
683
- y
684
- });
685
- path.push({
686
- x: boundaryPositions[TO].x,
687
- y
688
- });
689
- break;
690
- case _line.SOUTH:
691
- var y = boundaryPositions[FROM].y > boundaryPositions[TO].y && boundaryPositions[FROM].x < boundaryPositions[TO].x ? boundaryPositions[FROM].y : unionBounds.top + unionBounds.height;
692
- path.push({
693
- x: boundaryPositions[FROM].x,
694
- y
695
- });
696
- path.push({
697
- x: boundaryPositions[TO].x,
698
- y
699
- });
700
- break;
701
- case _line.EAST:
702
- var y = unionBounds.top + unionBounds.height;
703
- path.push({
704
- x: boundaryPositions[FROM].x,
705
- y
706
- });
707
- path.push({
708
- x: boundaryPositions[TO].x,
709
- y
710
- });
711
- break;
712
- case _line.WEST:
713
- var y = unionBounds.top + unionBounds.height;
714
- path.push({
715
- x: boundaryPositions[FROM].x,
716
- y
717
- });
718
- path.push({
719
- x: boundaryPositions[TO].x,
720
- y
721
- });
722
- break;
723
- default:
724
- return this.path;
725
- }
726
- break;
727
- default:
728
- return this.path;
729
- }
730
- }
731
- if (toBoundaryPosition) {
732
- path.push(toBoundaryPosition);
733
- }
734
-
735
- /* following 2 filters not to be merged */
736
- return [fromPosition, ...path, toPosition].filter((p, idx, path) => {
737
- if (idx === 0) {
738
- return true;
739
- }
740
- const prev = path[idx - 1];
741
- if (p.x === prev.x && p.y === prev.y) {
742
- return false;
743
- }
744
- return true;
745
- }).filter((p, idx, path) => {
746
- if (idx === 0 || idx >= path.length - 1) {
747
- return true;
748
- }
749
- const prev = path[idx - 1];
750
- const next = path[idx + 1];
751
- if (p.x === prev.x && p.x === next.x || p.y === prev.y && p.y === next.y) {
752
- return false;
753
- }
754
- return true;
755
- });
756
- }
757
- get nature() {
758
- return NATURE;
759
- }
760
- }
761
- exports.default = OrthoLine;
762
- _component.default.register('ortholine', OrthoLine);
763
- //# sourceMappingURL=ortholine.js.map