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

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 (385) hide show
  1. package/babel.config.js +4 -3
  2. package/db.sqlite +0 -0
  3. package/dist/animation/animate.js +63 -0
  4. package/dist/animation/animate.js.map +1 -0
  5. package/dist/animation/animations/animation.js +122 -0
  6. package/dist/animation/animations/animation.js.map +1 -0
  7. package/dist/animation/animations/fade.js +28 -0
  8. package/dist/animation/animations/fade.js.map +1 -0
  9. package/dist/animation/animations/heartbeat.js +28 -0
  10. package/dist/animation/animations/heartbeat.js.map +1 -0
  11. package/dist/animation/animations/moving.js +24 -0
  12. package/dist/animation/animations/moving.js.map +1 -0
  13. package/dist/animation/animations/outline.js +47 -0
  14. package/dist/animation/animations/outline.js.map +1 -0
  15. package/dist/animation/animations/rotation.js +22 -0
  16. package/dist/animation/animations/rotation.js.map +1 -0
  17. package/dist/animation/animations/vibration.js +31 -0
  18. package/dist/animation/animations/vibration.js.map +1 -0
  19. package/dist/animation/compile.js +31 -0
  20. package/dist/animation/compile.js.map +1 -0
  21. package/dist/animation/delta.js +51 -0
  22. package/dist/animation/delta.js.map +1 -0
  23. package/dist/animation/index.js +14 -0
  24. package/dist/animation/index.js.map +1 -0
  25. package/dist/command/command-change.js +33 -0
  26. package/dist/command/command-change.js.map +1 -0
  27. package/dist/command/command-migrate.js +103 -0
  28. package/dist/command/command-migrate.js.map +1 -0
  29. package/dist/command/command.js +18 -0
  30. package/dist/command/command.js.map +1 -0
  31. package/dist/command/snapshot-commander.js +84 -0
  32. package/dist/command/snapshot-commander.js.map +1 -0
  33. package/dist/components/anchor/anchor.js +105 -0
  34. package/dist/components/anchor/anchor.js.map +1 -0
  35. package/dist/components/anchor/ellipse-anchors.js +53 -0
  36. package/dist/components/anchor/ellipse-anchors.js.map +1 -0
  37. package/dist/components/anchor/rect-anchors.js +53 -0
  38. package/dist/components/anchor/rect-anchors.js.map +1 -0
  39. package/dist/components/audio.js +154 -0
  40. package/dist/components/audio.js.map +1 -0
  41. package/dist/components/cloud.js +44 -0
  42. package/dist/components/cloud.js.map +1 -0
  43. package/dist/components/component.js +1086 -0
  44. package/dist/components/component.js.map +1 -0
  45. package/dist/components/container-abstract.js +387 -0
  46. package/dist/components/container-abstract.js.map +1 -0
  47. package/dist/components/container.js +331 -0
  48. package/dist/components/container.js.map +1 -0
  49. package/dist/components/data/data-mapping.js +82 -0
  50. package/dist/components/data/data-mapping.js.map +1 -0
  51. package/dist/components/data/data.js +166 -0
  52. package/dist/components/data/data.js.map +1 -0
  53. package/dist/components/data/evaluator.js +103 -0
  54. package/dist/components/data/evaluator.js.map +1 -0
  55. package/dist/components/donut.js +104 -0
  56. package/dist/components/donut.js.map +1 -0
  57. package/dist/components/drawer/draw-image-pendable.js +20 -0
  58. package/dist/components/drawer/draw-image-pendable.js.map +1 -0
  59. package/dist/components/drawer/effect.js +19 -0
  60. package/dist/components/drawer/effect.js.map +1 -0
  61. package/dist/components/drawer/fill.js +228 -0
  62. package/dist/components/drawer/fill.js.map +1 -0
  63. package/dist/components/drawer/format.js +115 -0
  64. package/dist/components/drawer/format.js.map +1 -0
  65. package/dist/components/drawer/line.js +191 -0
  66. package/dist/components/drawer/line.js.map +1 -0
  67. package/dist/components/drawer/stroke.js +62 -0
  68. package/dist/components/drawer/stroke.js.map +1 -0
  69. package/dist/components/drawer/text-wrapper.js +51 -0
  70. package/dist/components/drawer/text-wrapper.js.map +1 -0
  71. package/dist/components/drawer/text.js +269 -0
  72. package/dist/components/drawer/text.js.map +1 -0
  73. package/dist/components/ellipse.js +110 -0
  74. package/dist/components/ellipse.js.map +1 -0
  75. package/dist/components/file/ondropfile.js +19 -0
  76. package/dist/components/file/ondropfile.js.map +1 -0
  77. package/dist/components/fit/fit.js +137 -0
  78. package/dist/components/fit/fit.js.map +1 -0
  79. package/dist/components/geometry/transcoord.js +339 -0
  80. package/dist/components/geometry/transcoord.js.map +1 -0
  81. package/dist/components/geometry/union.js +35 -0
  82. package/dist/components/geometry/union.js.map +1 -0
  83. package/dist/components/gif-view.js +128 -0
  84. package/dist/components/gif-view.js.map +1 -0
  85. package/dist/components/global-ref.js +154 -0
  86. package/dist/components/global-ref.js.map +1 -0
  87. package/dist/components/group.js +171 -0
  88. package/dist/components/group.js.map +1 -0
  89. package/dist/components/html/elements.js +24 -0
  90. package/dist/components/html/elements.js.map +1 -0
  91. package/dist/components/html/fill.js +126 -0
  92. package/dist/components/html/fill.js.map +1 -0
  93. package/dist/components/html/reposition.js +119 -0
  94. package/dist/components/html/reposition.js.map +1 -0
  95. package/dist/components/html/shadow.js +24 -0
  96. package/dist/components/html/shadow.js.map +1 -0
  97. package/dist/components/html-overlay-container.js +27 -0
  98. package/dist/components/html-overlay-container.js.map +1 -0
  99. package/dist/components/html-overlay-element.js +22 -0
  100. package/dist/components/html-overlay-element.js.map +1 -0
  101. package/dist/components/image-view.js +193 -0
  102. package/dist/components/image-view.js.map +1 -0
  103. package/dist/components/index.js +231 -0
  104. package/dist/components/index.js.map +1 -0
  105. package/dist/components/info-window.js +416 -0
  106. package/dist/components/info-window.js.map +1 -0
  107. package/dist/components/line.js +374 -0
  108. package/dist/components/line.js.map +1 -0
  109. package/dist/components/local-ref.js +114 -0
  110. package/dist/components/local-ref.js.map +1 -0
  111. package/dist/components/mixins/connectable.js +128 -0
  112. package/dist/components/mixins/connectable.js.map +1 -0
  113. package/dist/components/mixins/data-source.js +34 -0
  114. package/dist/components/mixins/data-source.js.map +1 -0
  115. package/dist/components/mixins/html-element.js +107 -0
  116. package/dist/components/mixins/html-element.js.map +1 -0
  117. package/dist/components/mixins/move-handle.js +73 -0
  118. package/dist/components/mixins/move-handle.js.map +1 -0
  119. package/dist/components/mixins/rect-path.js +113 -0
  120. package/dist/components/mixins/rect-path.js.map +1 -0
  121. package/dist/components/mixins/value-holder.js +81 -0
  122. package/dist/components/mixins/value-holder.js.map +1 -0
  123. package/dist/components/mutater/bounds.js +68 -0
  124. package/dist/components/mutater/bounds.js.map +1 -0
  125. package/dist/components/mutater/path.js +73 -0
  126. package/dist/components/mutater/path.js.map +1 -0
  127. package/dist/components/ortholine.js +763 -0
  128. package/dist/components/ortholine.js.map +1 -0
  129. package/dist/components/outline/ellipse-outline.js +23 -0
  130. package/dist/components/outline/ellipse-outline.js.map +1 -0
  131. package/dist/components/outline/path-outline.js +48 -0
  132. package/dist/components/outline/path-outline.js.map +1 -0
  133. package/dist/components/path.js +49 -0
  134. package/dist/components/path.js.map +1 -0
  135. package/dist/components/polygon.js +91 -0
  136. package/dist/components/polygon.js.map +1 -0
  137. package/dist/components/polyline.js +114 -0
  138. package/dist/components/polyline.js.map +1 -0
  139. package/dist/components/popup.js +160 -0
  140. package/dist/components/popup.js.map +1 -0
  141. package/dist/components/rect.js +72 -0
  142. package/dist/components/rect.js.map +1 -0
  143. package/dist/components/retention/retention-manager.js +81 -0
  144. package/dist/components/retention/retention-manager.js.map +1 -0
  145. package/dist/components/root-container.js +519 -0
  146. package/dist/components/root-container.js.map +1 -0
  147. package/dist/components/ruler.js +103 -0
  148. package/dist/components/ruler.js.map +1 -0
  149. package/dist/components/shape.js +97 -0
  150. package/dist/components/shape.js.map +1 -0
  151. package/dist/components/star.js +103 -0
  152. package/dist/components/star.js.map +1 -0
  153. package/dist/components/text/substitutor.js +92 -0
  154. package/dist/components/text/substitutor.js.map +1 -0
  155. package/dist/components/text.js +21 -0
  156. package/dist/components/text.js.map +1 -0
  157. package/dist/components/triangle.js +92 -0
  158. package/dist/components/triangle.js.map +1 -0
  159. package/dist/const.js +71 -0
  160. package/dist/const.js.map +1 -0
  161. package/dist/core/collection.js +28 -0
  162. package/dist/core/collection.js.map +1 -0
  163. package/dist/core/debug.js +12 -0
  164. package/dist/core/debug.js.map +1 -0
  165. package/dist/core/deep-equals.js +112 -0
  166. package/dist/core/deep-equals.js.map +1 -0
  167. package/dist/core/dom-to-image.js +617 -0
  168. package/dist/core/dom-to-image.js.map +1 -0
  169. package/dist/core/event.js +205 -0
  170. package/dist/core/event.js.map +1 -0
  171. package/dist/core/index.js +21 -0
  172. package/dist/core/index.js.map +1 -0
  173. package/dist/core/list.js +87 -0
  174. package/dist/core/list.js.map +1 -0
  175. package/dist/core/logger.js +29 -0
  176. package/dist/core/logger.js.map +1 -0
  177. package/dist/core/memoize.js +40 -0
  178. package/dist/core/memoize.js.map +1 -0
  179. package/dist/core/mixin.js +26 -0
  180. package/dist/core/mixin.js.map +1 -0
  181. package/dist/core/obj-accessor.js +26 -0
  182. package/dist/core/obj-accessor.js.map +1 -0
  183. package/dist/core/reference-map.js +147 -0
  184. package/dist/core/reference-map.js.map +1 -0
  185. package/dist/core/round-rect.js +62 -0
  186. package/dist/core/round-rect.js.map +1 -0
  187. package/dist/core/safe-round.js +10 -0
  188. package/dist/core/safe-round.js.map +1 -0
  189. package/dist/core/script-loader.js +148 -0
  190. package/dist/core/script-loader.js.map +1 -0
  191. package/dist/core/snapshot-taker.js +59 -0
  192. package/dist/core/snapshot-taker.js.map +1 -0
  193. package/dist/core/stack.js +18 -0
  194. package/dist/core/stack.js.map +1 -0
  195. package/dist/core/timecapsule.js +88 -0
  196. package/dist/core/timecapsule.js.map +1 -0
  197. package/dist/core/utils.js +309 -0
  198. package/dist/core/utils.js.map +1 -0
  199. package/dist/decorator/anchors-decorator.js +53 -0
  200. package/dist/decorator/anchors-decorator.js.map +1 -0
  201. package/dist/decorator/bouncing-arrow-decorator.js +52 -0
  202. package/dist/decorator/bouncing-arrow-decorator.js.map +1 -0
  203. package/dist/decorator/data-spread-decorator.js +69 -0
  204. package/dist/decorator/data-spread-decorator.js.map +1 -0
  205. package/dist/decorator/decotag-decorator.js +33 -0
  206. package/dist/decorator/decotag-decorator.js.map +1 -0
  207. package/dist/decorator/index.js +31 -0
  208. package/dist/decorator/index.js.map +1 -0
  209. package/dist/decorator/link-decorator.js +66 -0
  210. package/dist/decorator/link-decorator.js.map +1 -0
  211. package/dist/effect/gradation.js +37 -0
  212. package/dist/effect/gradation.js.map +1 -0
  213. package/dist/effect/index.js +23 -0
  214. package/dist/effect/index.js.map +1 -0
  215. package/dist/effect/shadow.js +33 -0
  216. package/dist/effect/shadow.js.map +1 -0
  217. package/dist/effect/turn.js +25 -0
  218. package/dist/effect/turn.js.map +1 -0
  219. package/dist/event/event-engine.js +76 -0
  220. package/dist/event/event-engine.js.map +1 -0
  221. package/dist/event/event-pump.js +92 -0
  222. package/dist/event/event-pump.js.map +1 -0
  223. package/dist/event/event-tracker.js +97 -0
  224. package/dist/event/event-tracker.js.map +1 -0
  225. package/dist/event/index.js +21 -0
  226. package/dist/event/index.js.map +1 -0
  227. package/dist/event/ua-event-handler.js +453 -0
  228. package/dist/event/ua-event-handler.js.map +1 -0
  229. package/dist/event-map/animator-handler.js +225 -0
  230. package/dist/event-map/animator-handler.js.map +1 -0
  231. package/dist/event-map/animators/animated-icon.js +265 -0
  232. package/dist/event-map/animators/animated-icon.js.map +1 -0
  233. package/dist/event-map/animators/border-highlighting.js +476 -0
  234. package/dist/event-map/animators/border-highlighting.js.map +1 -0
  235. package/dist/event-map/animators/bouncing-arrow.js +226 -0
  236. package/dist/event-map/animators/bouncing-arrow.js.map +1 -0
  237. package/dist/event-map/event-map.js +36 -0
  238. package/dist/event-map/event-map.js.map +1 -0
  239. package/dist/event-map/index.js +20 -0
  240. package/dist/event-map/index.js.map +1 -0
  241. package/dist/event-map/move-handler.js +233 -0
  242. package/dist/event-map/move-handler.js.map +1 -0
  243. package/dist/event-map/paste-handler.js +176 -0
  244. package/dist/event-map/paste-handler.js.map +1 -0
  245. package/dist/event-map/shift-handler.js +55 -0
  246. package/dist/event-map/shift-handler.js.map +1 -0
  247. package/dist/event-map/text-editor-lite.js +276 -0
  248. package/dist/event-map/text-editor-lite.js.map +1 -0
  249. package/dist/event-map/zoom-handler.js +49 -0
  250. package/dist/event-map/zoom-handler.js.map +1 -0
  251. package/dist/index.js +20 -0
  252. package/dist/index.js.map +1 -0
  253. package/dist/layer/action/emphasize.js +42 -0
  254. package/dist/layer/action/emphasize.js.map +1 -0
  255. package/dist/layer/action/popup.js +461 -0
  256. package/dist/layer/action/popup.js.map +1 -0
  257. package/dist/layer/action/pressed.js +31 -0
  258. package/dist/layer/action/pressed.js.map +1 -0
  259. package/dist/layer/add-layer.js +180 -0
  260. package/dist/layer/add-layer.js.map +1 -0
  261. package/dist/layer/decotag-layer.js +121 -0
  262. package/dist/layer/decotag-layer.js.map +1 -0
  263. package/dist/layer/guide-layer.js +292 -0
  264. package/dist/layer/guide-layer.js.map +1 -0
  265. package/dist/layer/index.js +70 -0
  266. package/dist/layer/index.js.map +1 -0
  267. package/dist/layer/layer.js +230 -0
  268. package/dist/layer/layer.js.map +1 -0
  269. package/dist/layer/minimap-layer.js +84 -0
  270. package/dist/layer/minimap-layer.js.map +1 -0
  271. package/dist/layer/model-layer.js +465 -0
  272. package/dist/layer/model-layer.js.map +1 -0
  273. package/dist/layer/modeler/anchor-handler.js +193 -0
  274. package/dist/layer/modeler/anchor-handler.js.map +1 -0
  275. package/dist/layer/modeler/control-handler.js +95 -0
  276. package/dist/layer/modeler/control-handler.js.map +1 -0
  277. package/dist/layer/modeler/focus-outline.js +41 -0
  278. package/dist/layer/modeler/focus-outline.js.map +1 -0
  279. package/dist/layer/modeler/group-outline.js +30 -0
  280. package/dist/layer/modeler/group-outline.js.map +1 -0
  281. package/dist/layer/modeler/index.js +56 -0
  282. package/dist/layer/modeler/index.js.map +1 -0
  283. package/dist/layer/modeler/path-handler.js +300 -0
  284. package/dist/layer/modeler/path-handler.js.map +1 -0
  285. package/dist/layer/modeler/resizer.js +333 -0
  286. package/dist/layer/modeler/resizer.js.map +1 -0
  287. package/dist/layer/modeler/rotator.js +134 -0
  288. package/dist/layer/modeler/rotator.js.map +1 -0
  289. package/dist/layer/modeling-layer.js +491 -0
  290. package/dist/layer/modeling-layer.js.map +1 -0
  291. package/dist/layer/reaction-layer.js +111 -0
  292. package/dist/layer/reaction-layer.js.map +1 -0
  293. package/dist/layer/scroll-layer.js +191 -0
  294. package/dist/layer/scroll-layer.js.map +1 -0
  295. package/dist/layer/selection/selected-finder.js +96 -0
  296. package/dist/layer/selection/selected-finder.js.map +1 -0
  297. package/dist/layer/selection-layer.js +373 -0
  298. package/dist/layer/selection-layer.js.map +1 -0
  299. package/dist/layer/shift-layer.js +83 -0
  300. package/dist/layer/shift-layer.js.map +1 -0
  301. package/dist/layout/absolute.js +30 -0
  302. package/dist/layout/absolute.js.map +1 -0
  303. package/dist/layout/card.js +52 -0
  304. package/dist/layout/card.js.map +1 -0
  305. package/dist/layout/html-absolute.js +32 -0
  306. package/dist/layout/html-absolute.js.map +1 -0
  307. package/dist/layout/index.js +56 -0
  308. package/dist/layout/index.js.map +1 -0
  309. package/dist/layout/layout.js +36 -0
  310. package/dist/layout/layout.js.map +1 -0
  311. package/dist/layout/linear-horizontal.js +56 -0
  312. package/dist/layout/linear-horizontal.js.map +1 -0
  313. package/dist/layout/linear-vertical.js +56 -0
  314. package/dist/layout/linear-vertical.js.map +1 -0
  315. package/dist/layout/table.js +106 -0
  316. package/dist/layout/table.js.map +1 -0
  317. package/dist/license/license.js +170 -0
  318. package/dist/license/license.js.map +1 -0
  319. package/dist/model/compile.js +40 -0
  320. package/dist/model/compile.js.map +1 -0
  321. package/dist/model/duplicate.js +19 -0
  322. package/dist/model/duplicate.js.map +1 -0
  323. package/dist/model/index.js +34 -0
  324. package/dist/model/index.js.map +1 -0
  325. package/dist/model/selector.js +104 -0
  326. package/dist/model/selector.js.map +1 -0
  327. package/dist/style/compile.js +14 -0
  328. package/dist/style/compile.js.map +1 -0
  329. package/dist/style/index.js +14 -0
  330. package/dist/style/index.js.map +1 -0
  331. package/dist/things-scene/api/add-start.js +18 -0
  332. package/dist/things-scene/api/add-start.js.map +1 -0
  333. package/dist/things-scene/api/add.js +71 -0
  334. package/dist/things-scene/api/add.js.map +1 -0
  335. package/dist/things-scene/api/align.js +116 -0
  336. package/dist/things-scene/api/align.js.map +1 -0
  337. package/dist/things-scene/api/center-to.js +50 -0
  338. package/dist/things-scene/api/center-to.js.map +1 -0
  339. package/dist/things-scene/api/change.js +27 -0
  340. package/dist/things-scene/api/change.js.map +1 -0
  341. package/dist/things-scene/api/clipboard.js +45 -0
  342. package/dist/things-scene/api/clipboard.js.map +1 -0
  343. package/dist/things-scene/api/distribute.js +57 -0
  344. package/dist/things-scene/api/distribute.js.map +1 -0
  345. package/dist/things-scene/api/duplicate.js +47 -0
  346. package/dist/things-scene/api/duplicate.js.map +1 -0
  347. package/dist/things-scene/api/fullscreen.js +26 -0
  348. package/dist/things-scene/api/fullscreen.js.map +1 -0
  349. package/dist/things-scene/api/group.js +91 -0
  350. package/dist/things-scene/api/group.js.map +1 -0
  351. package/dist/things-scene/api/ids.js +28 -0
  352. package/dist/things-scene/api/ids.js.map +1 -0
  353. package/dist/things-scene/api/index.js +192 -0
  354. package/dist/things-scene/api/index.js.map +1 -0
  355. package/dist/things-scene/api/listener.js +69 -0
  356. package/dist/things-scene/api/listener.js.map +1 -0
  357. package/dist/things-scene/api/paste-start.js +27 -0
  358. package/dist/things-scene/api/paste-start.js.map +1 -0
  359. package/dist/things-scene/api/place.js +98 -0
  360. package/dist/things-scene/api/place.js.map +1 -0
  361. package/dist/things-scene/api/remove.js +57 -0
  362. package/dist/things-scene/api/remove.js.map +1 -0
  363. package/dist/things-scene/api/symmetry.js +47 -0
  364. package/dist/things-scene/api/symmetry.js.map +1 -0
  365. package/dist/things-scene/api/to-data-url.js +76 -0
  366. package/dist/things-scene/api/to-data-url.js.map +1 -0
  367. package/dist/things-scene/api/zorder.js +68 -0
  368. package/dist/things-scene/api/zorder.js.map +1 -0
  369. package/dist/things-scene/application-context.js +168 -0
  370. package/dist/things-scene/application-context.js.map +1 -0
  371. package/dist/things-scene/config.js +18 -0
  372. package/dist/things-scene/config.js.map +1 -0
  373. package/dist/things-scene/create.js +67 -0
  374. package/dist/things-scene/create.js.map +1 -0
  375. package/dist/things-scene/fps.js +26 -0
  376. package/dist/things-scene/fps.js.map +1 -0
  377. package/dist/things-scene/index.js +152 -0
  378. package/dist/things-scene/index.js.map +1 -0
  379. package/dist/things-scene/polyfill.js +111 -0
  380. package/dist/things-scene/polyfill.js.map +1 -0
  381. package/dist/things-scene/scene.js +442 -0
  382. package/dist/things-scene/scene.js.map +1 -0
  383. package/dist/things-scene/version.js +12 -0
  384. package/dist/things-scene/version.js.map +1 -0
  385. package/package.json +8 -6
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distribute.js","names":["_commandChange","_interopRequireDefault","require","e","__esModule","default","VERTICAL","HORIZONTAL","DISTRIBUTE_COMMANDS","_distribute","type","selected","order","filter","c","stuck","slice","sort","a","b","ca","center","cb","y","x","length_sum","reduce","sum","bounds","height","width","first_bounds","last_bounds","length","bounds_length","top","left","space","offset","i","component","distribute","hasSameParentForAllSelected","indexOf","commander","app","CommandChange","around"],"sources":["../../../src/things-scene/api/distribute.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport CommandChange from '../../command/command-change.js'\n\nconst VERTICAL = 'VERTICAL'\nconst HORIZONTAL = 'HORIZONTAL'\n\nconst DISTRIBUTE_COMMANDS = [VERTICAL, HORIZONTAL]\n\nfunction _distribute(type, selected) {\n var order = selected.filter(c => !c.stuck).slice(0)\n\n order.sort(function (a, b) {\n let ca = a.center\n let cb = b.center\n return type === VERTICAL ? ca.y - cb.y : ca.x - cb.x\n })\n\n var length_sum = order.reduce((sum, c) => {\n return sum + (type === VERTICAL ? c.bounds.height : c.bounds.width)\n }, 0)\n var first_bounds = order[0].bounds\n var last_bounds = order[order.length - 1].bounds\n\n var bounds_length =\n type === VERTICAL\n ? last_bounds.top + last_bounds.height - first_bounds.top\n : last_bounds.left + last_bounds.width - first_bounds.left\n\n var space = (bounds_length - length_sum) / (order.length - 1)\n\n var offset = type === VERTICAL ? first_bounds.top + first_bounds.height : first_bounds.left + first_bounds.width\n\n for (let i = 1; i < order.length - 1; i++) {\n let component = order[i]\n let bounds = component.bounds\n\n offset += space\n\n if (type === VERTICAL) {\n bounds.top = offset\n offset += bounds.height\n } else {\n bounds.left = offset\n offset += bounds.width\n }\n\n component.bounds = bounds\n }\n}\n\n/* this should be root-container */\nexport default function distribute(type) {\n if (!this.hasSameParentForAllSelected || DISTRIBUTE_COMMANDS.indexOf(type) == -1) return\n\n var selected = this.selected\n if (selected.length <= 1) return\n\n var commander = this.app.commander\n\n CommandChange.around(commander, function () {\n // 선택된 컴포넌트들을 움직인다.\n _distribute(type, selected)\n })\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = duplicate;
7
+ var _commandMigrate = _interopRequireDefault(require("../../command/command-migrate.js"));
8
+ var Model = _interopRequireWildcard(require("../../model/index.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
+ /* this should be root-container */
17
+ function duplicate() {
18
+ var changes = [];
19
+ var replaceRefidMap = new Map();
20
+ this.selected = this.selected.filter(component => !component.isRootModel()).map(component => {
21
+ let clone = Model.duplicate(component, refid => {
22
+ const newRefid = this.getNewRefid();
23
+ if (typeof refid !== 'undefined') {
24
+ replaceRefidMap.set(refid, newRefid);
25
+ }
26
+ return newRefid;
27
+ });
28
+ clone.move({
29
+ x: 20,
30
+ y: 20
31
+ }, false /* relatively - leave relations among components */);
32
+ changes.push({
33
+ component: clone,
34
+ to_container: component.parent
35
+ });
36
+ return clone;
37
+ }).map(component => {
38
+ component.replaceRefids(replaceRefidMap);
39
+ return component;
40
+ });
41
+ if (changes.length == 0) return;
42
+ var command = new _commandMigrate.default({
43
+ changes
44
+ });
45
+ this.app.commander.execute(command);
46
+ }
47
+ //# sourceMappingURL=duplicate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"duplicate.js","names":["_commandMigrate","_interopRequireDefault","require","Model","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","duplicate","changes","replaceRefidMap","Map","selected","filter","component","isRootModel","map","clone","refid","newRefid","getNewRefid","move","x","y","push","to_container","parent","replaceRefids","length","command","CommandMigrate","app","commander","execute"],"sources":["../../../src/things-scene/api/duplicate.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport CommandMigrate from '../../command/command-migrate.js'\nimport * as Model from '../../model/index.js'\n\n/* this should be root-container */\nexport default function duplicate() {\n var changes = []\n\n var replaceRefidMap = new Map()\n\n this.selected = this.selected\n .filter(component => !component.isRootModel())\n .map(component => {\n let clone = Model.duplicate(component, refid => {\n const newRefid = this.getNewRefid()\n if (typeof refid !== 'undefined') {\n replaceRefidMap.set(refid, newRefid)\n }\n return newRefid\n })\n clone.move({ x: 20, y: 20 }, false /* relatively - leave relations among components */)\n\n changes.push({\n component: clone,\n to_container: component.parent\n })\n\n return clone\n })\n .map(component => {\n component.replaceRefids(replaceRefidMap)\n return component\n })\n\n if (changes.length == 0) return\n\n var command = new CommandMigrate({ changes })\n this.app.commander.execute(command)\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = fullscreen;
7
+ /*
8
+ * Copyright © HatioLab Inc. All rights reserved.
9
+ */
10
+ function fullscreen(fit) {
11
+ var target_element = this.target_element;
12
+ var fitmode = fit || this.fitMode;
13
+ var self = this;
14
+ function _fullscreen_callback(e) {
15
+ // TODO 1초 동안 container의 크기변화를 계속 지켜보면서, fit을 실행하는 로직으로 개선.
16
+ self.fit(fitmode);
17
+ if (!document.fullscreen && !document.mozFullScreen && !document.webkitIsFullScreen && !document.msFullscreenElement) {
18
+ ;
19
+ ['fullscreenchange', 'mozfullscreenchange', 'webkitfullscreenchange', 'MSFullscreenChange'].forEach(event => document.removeEventListener(event, _fullscreen_callback));
20
+ }
21
+ }
22
+ ;
23
+ ['fullscreenchange', 'mozfullscreenchange', 'webkitfullscreenchange', 'MSFullscreenChange'].forEach(event => document.addEventListener(event, _fullscreen_callback));
24
+ if (target_element.requestFullScreen) target_element.requestFullScreen();else if (target_element.webkitRequestFullScreen) target_element.webkitRequestFullScreen();else if (target_element.mozRequestFullScreen) target_element.mozRequestFullScreen();else if (target_element.msRequestFullscreen) target_element.msRequestFullscreen();
25
+ }
26
+ //# sourceMappingURL=fullscreen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fullscreen.js","names":["fullscreen","fit","target_element","fitmode","fitMode","self","_fullscreen_callback","e","document","mozFullScreen","webkitIsFullScreen","msFullscreenElement","forEach","event","removeEventListener","addEventListener","requestFullScreen","webkitRequestFullScreen","mozRequestFullScreen","msRequestFullscreen"],"sources":["../../../src/things-scene/api/fullscreen.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nexport default function fullscreen(fit) {\n var target_element = this.target_element\n var fitmode = fit || this.fitMode\n var self = this\n\n function _fullscreen_callback(e) {\n // TODO 1초 동안 container의 크기변화를 계속 지켜보면서, fit을 실행하는 로직으로 개선.\n self.fit(fitmode)\n\n if (\n !document.fullscreen &&\n !document.mozFullScreen &&\n !document.webkitIsFullScreen &&\n !document.msFullscreenElement\n ) {\n ;['fullscreenchange', 'mozfullscreenchange', 'webkitfullscreenchange', 'MSFullscreenChange'].forEach(event =>\n document.removeEventListener(event, _fullscreen_callback)\n )\n }\n }\n\n ;['fullscreenchange', 'mozfullscreenchange', 'webkitfullscreenchange', 'MSFullscreenChange'].forEach(event =>\n document.addEventListener(event, _fullscreen_callback)\n )\n\n if (target_element.requestFullScreen) target_element.requestFullScreen()\n else if (target_element.webkitRequestFullScreen) target_element.webkitRequestFullScreen()\n else if (target_element.mozRequestFullScreen) target_element.mozRequestFullScreen()\n else if (target_element.msRequestFullscreen) target_element.msRequestFullscreen()\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACe,SAASA,UAAUA,CAACC,GAAG,EAAE;EACtC,IAAIC,cAAc,GAAG,IAAI,CAACA,cAAc;EACxC,IAAIC,OAAO,GAAGF,GAAG,IAAI,IAAI,CAACG,OAAO;EACjC,IAAIC,IAAI,GAAG,IAAI;EAEf,SAASC,oBAAoBA,CAACC,CAAC,EAAE;IAC/B;IACAF,IAAI,CAACJ,GAAG,CAACE,OAAO,CAAC;IAEjB,IACE,CAACK,QAAQ,CAACR,UAAU,IACpB,CAACQ,QAAQ,CAACC,aAAa,IACvB,CAACD,QAAQ,CAACE,kBAAkB,IAC5B,CAACF,QAAQ,CAACG,mBAAmB,EAC7B;MACA;MAAC,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,CAAC,CAACC,OAAO,CAACC,KAAK,IACxGL,QAAQ,CAACM,mBAAmB,CAACD,KAAK,EAAEP,oBAAoB,CAC1D,CAAC;IACH;EACF;EAEA;EAAC,CAAC,kBAAkB,EAAE,qBAAqB,EAAE,wBAAwB,EAAE,oBAAoB,CAAC,CAACM,OAAO,CAACC,KAAK,IACxGL,QAAQ,CAACO,gBAAgB,CAACF,KAAK,EAAEP,oBAAoB,CACvD,CAAC;EAED,IAAIJ,cAAc,CAACc,iBAAiB,EAAEd,cAAc,CAACc,iBAAiB,CAAC,CAAC,MACnE,IAAId,cAAc,CAACe,uBAAuB,EAAEf,cAAc,CAACe,uBAAuB,CAAC,CAAC,MACpF,IAAIf,cAAc,CAACgB,oBAAoB,EAAEhB,cAAc,CAACgB,oBAAoB,CAAC,CAAC,MAC9E,IAAIhB,cAAc,CAACiB,mBAAmB,EAAEjB,cAAc,CAACiB,mBAAmB,CAAC,CAAC;AACnF","ignoreList":[]}
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.group = group;
7
+ exports.ungroup = ungroup;
8
+ var _commandMigrate = _interopRequireDefault(require("../../command/command-migrate.js"));
9
+ var _component = _interopRequireDefault(require("../../components/component.js"));
10
+ var Model = _interopRequireWildcard(require("../../model/index.js"));
11
+ 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); }
12
+ 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; }
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
14
+ /*
15
+ * Copyright © HatioLab Inc. All rights reserved.
16
+ */
17
+
18
+ /* this should be root-container */
19
+ function group() {
20
+ if (!this.hasSameParentForAllSelected) {
21
+ return;
22
+ }
23
+ var selected = this.selected.filter(c => !!c.parent && !c.stuck);
24
+ if (selected.length < 2) return;
25
+ var parent = selected[0].parent;
26
+ var boundsList = [];
27
+ var sorted = selected.sort((a, b) => {
28
+ return parent.components.indexOf(a) - parent.components.indexOf(b);
29
+ });
30
+ sorted.forEach(c => {
31
+ boundsList.push(c.bounds);
32
+ });
33
+ var bounds = _component.default.union(boundsList);
34
+ var left_top = selected[0].transcoordP2S(bounds.left, bounds.top);
35
+ left_top = selected[0].transcoordS2T(left_top.x, left_top.y);
36
+ var replaceRefidMap = new Map();
37
+ var group_component = Model.compile({
38
+ type: 'group',
39
+ left: left_top.x,
40
+ top: left_top.y,
41
+ width: bounds.width,
42
+ height: bounds.height
43
+ }, parent.app, refid => {
44
+ const newRef = this.getNewRefid();
45
+ if (typeof refid !== 'undefined') {
46
+ replaceRefidMap.set(refid, newRef);
47
+ }
48
+ return newRef;
49
+ });
50
+ group_component.replaceRefids(replaceRefidMap);
51
+ var changes = [{
52
+ component: group_component,
53
+ to_container: parent
54
+ }];
55
+ sorted.forEach(component => {
56
+ changes.push({
57
+ component: component,
58
+ to_container: group_component
59
+ });
60
+ });
61
+ this.app.commander.execute(new _commandMigrate.default({
62
+ changes
63
+ }));
64
+ this.selected = [group_component];
65
+ }
66
+ function ungroup() {
67
+ var selected = this.selected;
68
+ if (selected.length === 0) return;
69
+ var components = [];
70
+ var changes = [];
71
+ this.selected.forEach(group => {
72
+ if (!group.isGroup()) return;
73
+ var parent = group.parent;
74
+ group.components.forEach(component => {
75
+ components.push(component);
76
+ changes.push({
77
+ component: component,
78
+ to_container: parent
79
+ });
80
+ });
81
+ changes.push({
82
+ component: group,
83
+ to_container: null
84
+ });
85
+ });
86
+ this.app.commander.execute(new _commandMigrate.default({
87
+ changes
88
+ }));
89
+ this.selected = components;
90
+ }
91
+ //# sourceMappingURL=group.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"group.js","names":["_commandMigrate","_interopRequireDefault","require","_component","Model","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","group","hasSameParentForAllSelected","selected","filter","c","parent","stuck","length","boundsList","sorted","sort","b","components","indexOf","forEach","push","bounds","Component","union","left_top","transcoordP2S","left","top","transcoordS2T","x","y","replaceRefidMap","Map","group_component","compile","type","width","height","app","refid","newRef","getNewRefid","replaceRefids","changes","component","to_container","commander","execute","CommandMigrate","ungroup","isGroup"],"sources":["../../../src/things-scene/api/group.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport CommandMigrate from '../../command/command-migrate.js'\nimport Component from '../../components/component.js'\nimport * as Model from '../../model/index.js'\n\n/* this should be root-container */\nexport function group() {\n if (!this.hasSameParentForAllSelected) {\n return\n }\n\n var selected = this.selected.filter(c => !!c.parent && !c.stuck)\n\n if (selected.length < 2) return\n\n var parent = selected[0].parent\n var boundsList = []\n\n var sorted = selected.sort((a, b) => {\n return parent.components.indexOf(a) - parent.components.indexOf(b)\n })\n\n sorted.forEach(c => {\n boundsList.push(c.bounds)\n })\n\n var bounds = Component.union(boundsList)\n var left_top = selected[0].transcoordP2S(bounds.left, bounds.top)\n left_top = selected[0].transcoordS2T(left_top.x, left_top.y)\n\n var replaceRefidMap = new Map()\n\n var group_component = Model.compile(\n {\n type: 'group',\n left: left_top.x,\n top: left_top.y,\n width: bounds.width,\n height: bounds.height\n },\n parent.app,\n refid => {\n const newRef = this.getNewRefid()\n if (typeof refid !== 'undefined') {\n replaceRefidMap.set(refid, newRef)\n }\n return newRef\n }\n )\n\n group_component.replaceRefids(replaceRefidMap)\n\n var changes = [\n {\n component: group_component,\n to_container: parent\n }\n ]\n\n sorted.forEach(component => {\n changes.push({\n component: component,\n to_container: group_component\n })\n })\n\n this.app.commander.execute(new CommandMigrate({ changes }))\n\n this.selected = [group_component]\n}\n\nexport function ungroup() {\n var selected = this.selected\n\n if (selected.length === 0) return\n\n var components = []\n var changes = []\n\n this.selected.forEach(group => {\n if (!group.isGroup()) return\n\n var parent = group.parent\n\n group.components.forEach(component => {\n components.push(component)\n\n changes.push({\n component: component,\n to_container: parent\n })\n })\n\n changes.push({\n component: group,\n to_container: null\n })\n })\n\n this.app.commander.execute(new CommandMigrate({ changes }))\n\n this.selected = components\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getIds = getIds;
7
+ /*
8
+ * Copyright © HatioLab Inc. All rights reserved.
9
+ */
10
+
11
+ /* this should be root-container */
12
+ function getIds() {
13
+ return Object.values(this.indexMap).map(components => {
14
+ return components.map(component => {
15
+ let {
16
+ id,
17
+ data
18
+ } = component.model;
19
+ return {
20
+ key: id,
21
+ value: data
22
+ };
23
+ });
24
+ }).flat().sort((c1, c2) => {
25
+ return c1.key > c2.key ? 1 : -1;
26
+ });
27
+ }
28
+ //# sourceMappingURL=ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.js","names":["getIds","Object","values","indexMap","map","components","component","id","data","model","key","value","flat","sort","c1","c2"],"sources":["../../../src/things-scene/api/ids.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\n/* this should be root-container */\nexport function getIds() {\n return Object.values(this.indexMap)\n .map(components => {\n return components.map(component => {\n let { id, data } = component.model\n\n return {\n key: id,\n value: data\n }\n })\n })\n .flat()\n .sort((c1, c2) => {\n return c1.key > c2.key ? 1 : -1\n })\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;;AAEA;AACO,SAASA,MAAMA,CAAA,EAAG;EACvB,OAAOC,MAAM,CAACC,MAAM,CAAC,IAAI,CAACC,QAAQ,CAAC,CAChCC,GAAG,CAACC,UAAU,IAAI;IACjB,OAAOA,UAAU,CAACD,GAAG,CAACE,SAAS,IAAI;MACjC,IAAI;QAAEC,EAAE;QAAEC;MAAK,CAAC,GAAGF,SAAS,CAACG,KAAK;MAElC,OAAO;QACLC,GAAG,EAAEH,EAAE;QACPI,KAAK,EAAEH;MACT,CAAC;IACH,CAAC,CAAC;EACJ,CAAC,CAAC,CACDI,IAAI,CAAC,CAAC,CACNC,IAAI,CAAC,CAACC,EAAE,EAAEC,EAAE,KAAK;IAChB,OAAOD,EAAE,CAACJ,GAAG,GAAGK,EAAE,CAACL,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;EACjC,CAAC,CAAC;AACN","ignoreList":[]}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "add", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _add.default;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "align", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _align.default;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "change", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _change.change;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "copy", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _clipboard.copy;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "cut", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _clipboard.cut;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "distribute", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _distribute.default;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "duplicate", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _duplicate.default;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "fullscreen", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _fullscreen.default;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "getIds", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _ids.getIds;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "group", {
61
+ enumerable: true,
62
+ get: function () {
63
+ return _group.group;
64
+ }
65
+ });
66
+ Object.defineProperty(exports, "move", {
67
+ enumerable: true,
68
+ get: function () {
69
+ return _zorder.move;
70
+ }
71
+ });
72
+ Object.defineProperty(exports, "off", {
73
+ enumerable: true,
74
+ get: function () {
75
+ return _listener.off;
76
+ }
77
+ });
78
+ Object.defineProperty(exports, "on", {
79
+ enumerable: true,
80
+ get: function () {
81
+ return _listener.on;
82
+ }
83
+ });
84
+ Object.defineProperty(exports, "once", {
85
+ enumerable: true,
86
+ get: function () {
87
+ return _listener.once;
88
+ }
89
+ });
90
+ Object.defineProperty(exports, "paste", {
91
+ enumerable: true,
92
+ get: function () {
93
+ return _clipboard.paste;
94
+ }
95
+ });
96
+ Object.defineProperty(exports, "place", {
97
+ enumerable: true,
98
+ get: function () {
99
+ return _place.default;
100
+ }
101
+ });
102
+ Object.defineProperty(exports, "remove", {
103
+ enumerable: true,
104
+ get: function () {
105
+ return _remove.default;
106
+ }
107
+ });
108
+ Object.defineProperty(exports, "startAddMode", {
109
+ enumerable: true,
110
+ get: function () {
111
+ return _addStart.startAddMode;
112
+ }
113
+ });
114
+ Object.defineProperty(exports, "startDatabindPasteMode", {
115
+ enumerable: true,
116
+ get: function () {
117
+ return _pasteStart.startDatabindPasteMode;
118
+ }
119
+ });
120
+ Object.defineProperty(exports, "startStylePasteMode", {
121
+ enumerable: true,
122
+ get: function () {
123
+ return _pasteStart.startStylePasteMode;
124
+ }
125
+ });
126
+ Object.defineProperty(exports, "stopDatabindPasteMode", {
127
+ enumerable: true,
128
+ get: function () {
129
+ return _pasteStart.stopDatabindPasteMode;
130
+ }
131
+ });
132
+ Object.defineProperty(exports, "stopStylePasteMode", {
133
+ enumerable: true,
134
+ get: function () {
135
+ return _pasteStart.stopStylePasteMode;
136
+ }
137
+ });
138
+ Object.defineProperty(exports, "symmetryX", {
139
+ enumerable: true,
140
+ get: function () {
141
+ return _symmetry.symmetryX;
142
+ }
143
+ });
144
+ Object.defineProperty(exports, "symmetryY", {
145
+ enumerable: true,
146
+ get: function () {
147
+ return _symmetry.symmetryY;
148
+ }
149
+ });
150
+ Object.defineProperty(exports, "toDataURL", {
151
+ enumerable: true,
152
+ get: function () {
153
+ return _toDataUrl.toDataURL;
154
+ }
155
+ });
156
+ Object.defineProperty(exports, "undoableChange", {
157
+ enumerable: true,
158
+ get: function () {
159
+ return _change.undoableChange;
160
+ }
161
+ });
162
+ Object.defineProperty(exports, "ungroup", {
163
+ enumerable: true,
164
+ get: function () {
165
+ return _group.ungroup;
166
+ }
167
+ });
168
+ Object.defineProperty(exports, "zorder", {
169
+ enumerable: true,
170
+ get: function () {
171
+ return _zorder.zorder;
172
+ }
173
+ });
174
+ var _align = _interopRequireDefault(require("./align.js"));
175
+ var _distribute = _interopRequireDefault(require("./distribute.js"));
176
+ var _zorder = require("./zorder.js");
177
+ var _add = _interopRequireDefault(require("./add.js"));
178
+ var _duplicate = _interopRequireDefault(require("./duplicate.js"));
179
+ var _remove = _interopRequireDefault(require("./remove.js"));
180
+ var _listener = require("./listener.js");
181
+ var _fullscreen = _interopRequireDefault(require("./fullscreen.js"));
182
+ var _clipboard = require("./clipboard.js");
183
+ var _toDataUrl = require("./to-data-url.js");
184
+ var _group = require("./group.js");
185
+ var _symmetry = require("./symmetry.js");
186
+ var _change = require("./change.js");
187
+ var _ids = require("./ids.js");
188
+ var _place = _interopRequireDefault(require("./place.js"));
189
+ var _addStart = require("./add-start.js");
190
+ var _pasteStart = require("./paste-start.js");
191
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
192
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_align","_interopRequireDefault","require","_distribute","_zorder","_add","_duplicate","_remove","_listener","_fullscreen","_clipboard","_toDataUrl","_group","_symmetry","_change","_ids","_place","_addStart","_pasteStart","e","__esModule","default"],"sources":["../../../src/things-scene/api/index.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nexport { default as align } from './align.js'\nexport { default as distribute } from './distribute.js'\nexport { move, zorder } from './zorder.js'\nexport { default as add } from './add.js'\nexport { default as duplicate } from './duplicate.js'\nexport { default as remove } from './remove.js'\nexport { on, once, off } from './listener.js'\nexport { default as fullscreen } from './fullscreen.js'\nexport { cut, copy, paste } from './clipboard.js'\nexport { toDataURL } from './to-data-url.js'\nexport { group, ungroup } from './group.js'\nexport { symmetryX, symmetryY } from './symmetry.js'\nexport { change, undoableChange } from './change.js'\nexport { getIds } from './ids.js'\nexport { default as place } from './place.js'\nexport { startAddMode } from './add-start.js'\nexport {\n startStylePasteMode,\n stopStylePasteMode,\n startDatabindPasteMode,\n stopDatabindPasteMode\n} from './paste-start.js'\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,WAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,IAAA,GAAAJ,sBAAA,CAAAC,OAAA;AACA,IAAAI,UAAA,GAAAL,sBAAA,CAAAC,OAAA;AACA,IAAAK,OAAA,GAAAN,sBAAA,CAAAC,OAAA;AACA,IAAAM,SAAA,GAAAN,OAAA;AACA,IAAAO,WAAA,GAAAR,sBAAA,CAAAC,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,UAAA,GAAAT,OAAA;AACA,IAAAU,MAAA,GAAAV,OAAA;AACA,IAAAW,SAAA,GAAAX,OAAA;AACA,IAAAY,OAAA,GAAAZ,OAAA;AACA,IAAAa,IAAA,GAAAb,OAAA;AACA,IAAAc,MAAA,GAAAf,sBAAA,CAAAC,OAAA;AACA,IAAAe,SAAA,GAAAf,OAAA;AACA,IAAAgB,WAAA,GAAAhB,OAAA;AAKyB,SAAAD,uBAAAkB,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA","ignoreList":[]}
@@ -0,0 +1,69 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.off = off;
7
+ exports.on = on;
8
+ exports.once = once;
9
+ /*
10
+ * Copyright © HatioLab Inc. All rights reserved.
11
+ */
12
+
13
+ /* this should be root-container */
14
+
15
+ function on(event, listener, context) {
16
+ switch (event) {
17
+ case 'execute':
18
+ case 'redo':
19
+ case 'undo':
20
+ case 'command-reset':
21
+ this.app?.commander.on(event, listener, context);
22
+ break;
23
+ case 'mode':
24
+ this.app?.on(event, listener, context);
25
+ break;
26
+ case 'selected':
27
+ this.on(event, listener, context);
28
+ break;
29
+ default:
30
+ this.on(event, listener, context);
31
+ }
32
+ }
33
+ function once(event, listener, context) {
34
+ switch (event) {
35
+ case 'execute':
36
+ case 'redo':
37
+ case 'undo':
38
+ case 'command-reset':
39
+ this.app?.commander.once(event, listener, context);
40
+ break;
41
+ case 'mode':
42
+ this.app.once(event, listener, context);
43
+ break;
44
+ case 'selected':
45
+ this.once(event, listener, context);
46
+ break;
47
+ default:
48
+ this.once(event, listener, context);
49
+ }
50
+ }
51
+ function off(event, listener, context) {
52
+ switch (event) {
53
+ case 'execute':
54
+ case 'redo':
55
+ case 'undo':
56
+ case 'command-reset':
57
+ this.app?.commander.off(event, listener, context);
58
+ break;
59
+ case 'mode':
60
+ this.app?.off(event, listener, context);
61
+ break;
62
+ case 'selected':
63
+ this.off(event, listener, context);
64
+ break;
65
+ default:
66
+ this.off(event, listener, context);
67
+ }
68
+ }
69
+ //# sourceMappingURL=listener.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"listener.js","names":["on","event","listener","context","app","commander","once","off"],"sources":["../../../src/things-scene/api/listener.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\n/* this should be root-container */\n\nexport function on(event, listener, context) {\n switch (event) {\n case 'execute':\n case 'redo':\n case 'undo':\n case 'command-reset':\n this.app?.commander.on(event, listener, context)\n break\n\n case 'mode':\n this.app?.on(event, listener, context)\n break\n\n case 'selected':\n this.on(event, listener, context)\n break\n\n default:\n this.on(event, listener, context)\n }\n}\n\nexport function once(event, listener, context) {\n switch (event) {\n case 'execute':\n case 'redo':\n case 'undo':\n case 'command-reset':\n this.app?.commander.once(event, listener, context)\n break\n\n case 'mode':\n this.app.once(event, listener, context)\n break\n\n case 'selected':\n this.once(event, listener, context)\n break\n\n default:\n this.once(event, listener, context)\n }\n}\n\nexport function off(event, listener, context) {\n switch (event) {\n case 'execute':\n case 'redo':\n case 'undo':\n case 'command-reset':\n this.app?.commander.off(event, listener, context)\n break\n\n case 'mode':\n this.app?.off(event, listener, context)\n break\n\n case 'selected':\n this.off(event, listener, context)\n break\n\n default:\n this.off(event, listener, context)\n }\n}\n"],"mappings":";;;;;;;;AAAA;AACA;AACA;;AAEA;;AAEO,SAASA,EAAEA,CAACC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAE;EAC3C,QAAQF,KAAK;IACX,KAAK,SAAS;IACd,KAAK,MAAM;IACX,KAAK,MAAM;IACX,KAAK,eAAe;MAClB,IAAI,CAACG,GAAG,EAAEC,SAAS,CAACL,EAAE,CAACC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MAChD;IAEF,KAAK,MAAM;MACT,IAAI,CAACC,GAAG,EAAEJ,EAAE,CAACC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MACtC;IAEF,KAAK,UAAU;MACb,IAAI,CAACH,EAAE,CAACC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MACjC;IAEF;MACE,IAAI,CAACH,EAAE,CAACC,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;EACrC;AACF;AAEO,SAASG,IAAIA,CAACL,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAE;EAC7C,QAAQF,KAAK;IACX,KAAK,SAAS;IACd,KAAK,MAAM;IACX,KAAK,MAAM;IACX,KAAK,eAAe;MAClB,IAAI,CAACG,GAAG,EAAEC,SAAS,CAACC,IAAI,CAACL,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MAClD;IAEF,KAAK,MAAM;MACT,IAAI,CAACC,GAAG,CAACE,IAAI,CAACL,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MACvC;IAEF,KAAK,UAAU;MACb,IAAI,CAACG,IAAI,CAACL,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MACnC;IAEF;MACE,IAAI,CAACG,IAAI,CAACL,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;EACvC;AACF;AAEO,SAASI,GAAGA,CAACN,KAAK,EAAEC,QAAQ,EAAEC,OAAO,EAAE;EAC5C,QAAQF,KAAK;IACX,KAAK,SAAS;IACd,KAAK,MAAM;IACX,KAAK,MAAM;IACX,KAAK,eAAe;MAClB,IAAI,CAACG,GAAG,EAAEC,SAAS,CAACE,GAAG,CAACN,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MACjD;IAEF,KAAK,MAAM;MACT,IAAI,CAACC,GAAG,EAAEG,GAAG,CAACN,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MACvC;IAEF,KAAK,UAAU;MACb,IAAI,CAACI,GAAG,CAACN,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;MAClC;IAEF;MACE,IAAI,CAACI,GAAG,CAACN,KAAK,EAAEC,QAAQ,EAAEC,OAAO,CAAC;EACtC;AACF","ignoreList":[]}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.startDatabindPasteMode = startDatabindPasteMode;
7
+ exports.startStylePasteMode = startStylePasteMode;
8
+ exports.stopDatabindPasteMode = stopDatabindPasteMode;
9
+ exports.stopStylePasteMode = stopStylePasteMode;
10
+ /*
11
+ * Copyright © HatioLab Inc. All rights reserved.
12
+ */
13
+
14
+ /* this should be root-container */
15
+ function startStylePasteMode() {
16
+ this.trigger('stylepastestart');
17
+ }
18
+ function stopStylePasteMode() {
19
+ this.trigger('stylepastestop');
20
+ }
21
+ function startDatabindPasteMode() {
22
+ this.trigger('databindpastestart');
23
+ }
24
+ function stopDatabindPasteMode() {
25
+ this.trigger('databindpastestop');
26
+ }
27
+ //# sourceMappingURL=paste-start.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paste-start.js","names":["startStylePasteMode","trigger","stopStylePasteMode","startDatabindPasteMode","stopDatabindPasteMode"],"sources":["../../../src/things-scene/api/paste-start.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\n/* this should be root-container */\nexport function startStylePasteMode() {\n this.trigger('stylepastestart')\n}\n\nexport function stopStylePasteMode() {\n this.trigger('stylepastestop')\n}\n\nexport function startDatabindPasteMode() {\n this.trigger('databindpastestart')\n}\n\nexport function stopDatabindPasteMode() {\n this.trigger('databindpastestop')\n}\n"],"mappings":";;;;;;;;;AAAA;AACA;AACA;;AAEA;AACO,SAASA,mBAAmBA,CAAA,EAAG;EACpC,IAAI,CAACC,OAAO,CAAC,iBAAiB,CAAC;AACjC;AAEO,SAASC,kBAAkBA,CAAA,EAAG;EACnC,IAAI,CAACD,OAAO,CAAC,gBAAgB,CAAC;AAChC;AAEO,SAASE,sBAAsBA,CAAA,EAAG;EACvC,IAAI,CAACF,OAAO,CAAC,oBAAoB,CAAC;AACpC;AAEO,SAASG,qBAAqBA,CAAA,EAAG;EACtC,IAAI,CAACH,OAAO,CAAC,mBAAmB,CAAC;AACnC","ignoreList":[]}
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = place;
7
+ var _commandChange = _interopRequireDefault(require("../../command/command-change.js"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ /*
10
+ * Copyright © HatioLab Inc. All rights reserved.
11
+ */
12
+
13
+ const LEFT = 'left';
14
+ const RIGHT = 'right';
15
+ const CENTER = 'center';
16
+ const TOP = 'top';
17
+ const BOTTOM = 'bottom';
18
+ const MIDDLE = 'middle';
19
+ const ALIGN_COMMANDS = [LEFT, RIGHT, CENTER, TOP, MIDDLE, BOTTOM];
20
+ function _place(type, selected) {
21
+ const parent = selected[0].parent;
22
+ const {
23
+ width,
24
+ height
25
+ } = parent.bounds;
26
+ switch (type) {
27
+ case LEFT:
28
+ for (let i = 0; i < selected.length; i++) {
29
+ let bounds = selected[i].bounds;
30
+ selected[i].bounds = {
31
+ ...bounds,
32
+ left: 0
33
+ };
34
+ }
35
+ break;
36
+ case CENTER:
37
+ for (let i = 0; i < selected.length; i++) {
38
+ let bounds = selected[i].bounds;
39
+ selected[i].bounds = {
40
+ ...bounds,
41
+ left: width / 2 - bounds.width / 2
42
+ };
43
+ }
44
+ break;
45
+ case RIGHT:
46
+ for (let i = 0; i < selected.length; i++) {
47
+ let bounds = selected[i].bounds;
48
+ selected[i].bounds = {
49
+ ...bounds,
50
+ left: width - bounds.width
51
+ };
52
+ }
53
+ break;
54
+ case TOP:
55
+ for (let i = 0; i < selected.length; i++) {
56
+ let bounds = selected[i].bounds;
57
+ selected[i].bounds = {
58
+ ...bounds,
59
+ top: 0
60
+ };
61
+ }
62
+ break;
63
+ case MIDDLE:
64
+ for (let i = 0; i < selected.length; i++) {
65
+ let bounds = selected[i].bounds;
66
+ selected[i].bounds = {
67
+ ...bounds,
68
+ top: height / 2 - bounds.height / 2
69
+ };
70
+ }
71
+ break;
72
+ case BOTTOM:
73
+ for (let i = 0; i < selected.length; i++) {
74
+ let bounds = selected[i].bounds;
75
+ selected[i].bounds = {
76
+ ...bounds,
77
+ top: height - bounds.height
78
+ };
79
+ }
80
+ break;
81
+ default:
82
+ return;
83
+ }
84
+ }
85
+
86
+ /* this should be root-container */
87
+ function place(type) {
88
+ if (!this.hasSameParentForAllSelected || ALIGN_COMMANDS.indexOf(type) == -1) {
89
+ return;
90
+ }
91
+ var selected = this.selected.filter(c => !c.stuck);
92
+ var commander = this.app.commander;
93
+ _commandChange.default.around(commander, function () {
94
+ // 선택된 컴포넌트들을 움직인다.
95
+ _place(type, selected);
96
+ });
97
+ }
98
+ //# sourceMappingURL=place.js.map