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

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 +0,0 @@
1
- {"version":3,"file":"place.js","names":["_commandChange","_interopRequireDefault","require","e","__esModule","default","LEFT","RIGHT","CENTER","TOP","BOTTOM","MIDDLE","ALIGN_COMMANDS","_place","type","selected","parent","width","height","bounds","i","length","left","top","place","hasSameParentForAllSelected","indexOf","filter","c","stuck","commander","app","CommandChange","around"],"sources":["../../../src/things-scene/api/place.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport CommandChange from '../../command/command-change.js'\n\nconst LEFT = 'left'\nconst RIGHT = 'right'\nconst CENTER = 'center'\nconst TOP = 'top'\nconst BOTTOM = 'bottom'\nconst MIDDLE = 'middle'\n\nconst ALIGN_COMMANDS = [LEFT, RIGHT, CENTER, TOP, MIDDLE, BOTTOM]\n\nfunction _place(type, selected) {\n const parent = selected[0].parent\n const { width, height } = parent.bounds\n\n switch (type) {\n case LEFT:\n for (let i = 0; i < selected.length; i++) {\n let bounds = selected[i].bounds\n selected[i].bounds = {\n ...bounds,\n left: 0\n }\n }\n\n break\n case CENTER:\n for (let i = 0; i < selected.length; i++) {\n let bounds = selected[i].bounds\n selected[i].bounds = {\n ...bounds,\n left: width / 2 - bounds.width / 2\n }\n }\n break\n case RIGHT:\n for (let i = 0; i < selected.length; i++) {\n let bounds = selected[i].bounds\n selected[i].bounds = {\n ...bounds,\n left: width - bounds.width\n }\n }\n break\n case TOP:\n for (let i = 0; i < selected.length; i++) {\n let bounds = selected[i].bounds\n selected[i].bounds = {\n ...bounds,\n top: 0\n }\n }\n break\n case MIDDLE:\n for (let i = 0; i < selected.length; i++) {\n let bounds = selected[i].bounds\n selected[i].bounds = {\n ...bounds,\n top: height / 2 - bounds.height / 2\n }\n }\n break\n case BOTTOM:\n for (let i = 0; i < selected.length; i++) {\n let bounds = selected[i].bounds\n selected[i].bounds = {\n ...bounds,\n top: height - bounds.height\n }\n }\n break\n\n default:\n return\n }\n}\n\n/* this should be root-container */\nexport default function place(type) {\n if (!this.hasSameParentForAllSelected || ALIGN_COMMANDS.indexOf(type) == -1) {\n return\n }\n\n var selected = this.selected.filter(c => !c.stuck)\n\n var commander = this.app.commander\n\n CommandChange.around(commander, function () {\n // 선택된 컴포넌트들을 움직인다.\n _place(type, selected)\n })\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,57 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = remove;
7
- var _commandMigrate = _interopRequireDefault(require("../../command/command-migrate.js"));
8
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
- /*
10
- * Copyright © HatioLab Inc. All rights reserved.
11
- */
12
-
13
- /* this should be root-container */
14
- function remove() {
15
- var oldSelected = this.selected;
16
- this.selected = [];
17
- var parent = null;
18
- var changes = oldSelected.filter(component => !component.isRootModel() && (component.parent.focusible || component.parent.isGroup())).map(component => {
19
- if (!parent) parent = component.parent;
20
- return {
21
- component: component,
22
- to_container: null
23
- };
24
- });
25
-
26
- /*
27
- * 부모가 group인 경우, 하위 컴포넌트들이 삭제되고, 최종 한개 이하의 컴포넌트가 남는 경우
28
- * 남은 컴포넌트는 group의 부모 아래로 옮겨지고,
29
- * group은 사라지도록 한다.
30
- * group이 사라지게 되면, group의 부모부터 바운드를 재계산한다.
31
- */
32
- while (parent && parent.isGroup()) {
33
- let remains = [];
34
- parent.components.filter(component => !changes.find(change => change.component === component)).forEach(component => remains.push(component));
35
- if (remains.length > 1) break;
36
- let grandfa = parent.parent;
37
- remains.forEach(component => changes.push({
38
- component,
39
- to_container: grandfa
40
- }));
41
- changes.push({
42
- component: parent,
43
- to_container: null
44
- });
45
-
46
- /*
47
- * 부모가 사라질 것이므로, 부모의 부모로 parent 참조를 변경한다.
48
- * 부모의 부모가 다시 그룹이라면, 위 과정을 반복한다.
49
- */
50
- parent = grandfa;
51
- }
52
- if (changes.length > 0) this.app.commander.execute(new _commandMigrate.default({
53
- changes
54
- }));
55
- parent && parent.calculateBounds && parent.calculateBounds();
56
- }
57
- //# sourceMappingURL=remove.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"remove.js","names":["_commandMigrate","_interopRequireDefault","require","e","__esModule","default","remove","oldSelected","selected","parent","changes","filter","component","isRootModel","focusible","isGroup","map","to_container","remains","components","find","change","forEach","push","length","grandfa","app","commander","execute","CommandMigrate","calculateBounds"],"sources":["../../../src/things-scene/api/remove.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport CommandMigrate from '../../command/command-migrate.js'\n\n/* this should be root-container */\nexport default function remove() {\n var oldSelected = this.selected\n\n this.selected = []\n\n var parent = null\n\n var changes = oldSelected\n .filter(component => !component.isRootModel() && (component.parent.focusible || component.parent.isGroup()))\n .map(component => {\n if (!parent) parent = component.parent\n return {\n component: component,\n to_container: null\n }\n })\n\n /*\n * 부모가 group인 경우, 하위 컴포넌트들이 삭제되고, 최종 한개 이하의 컴포넌트가 남는 경우\n * 남은 컴포넌트는 group의 부모 아래로 옮겨지고,\n * group은 사라지도록 한다.\n * group이 사라지게 되면, group의 부모부터 바운드를 재계산한다.\n */\n while (parent && parent.isGroup()) {\n let remains = []\n\n parent.components\n .filter(component => !changes.find(change => change.component === component))\n .forEach(component => remains.push(component))\n\n if (remains.length > 1) break\n\n let grandfa = parent.parent\n remains.forEach(component => changes.push({ component, to_container: grandfa }))\n\n changes.push({\n component: parent,\n to_container: null\n })\n\n /*\n * 부모가 사라질 것이므로, 부모의 부모로 parent 참조를 변경한다.\n * 부모의 부모가 다시 그룹이라면, 위 과정을 반복한다.\n */\n parent = grandfa\n }\n\n if (changes.length > 0) this.app.commander.execute(new CommandMigrate({ changes }))\n\n parent && parent.calculateBounds && parent.calculateBounds()\n}\n"],"mappings":";;;;;;AAIA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA6D,SAAAD,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAJ7D;AACA;AACA;;AAIA;AACe,SAASG,MAAMA,CAAA,EAAG;EAC/B,IAAIC,WAAW,GAAG,IAAI,CAACC,QAAQ;EAE/B,IAAI,CAACA,QAAQ,GAAG,EAAE;EAElB,IAAIC,MAAM,GAAG,IAAI;EAEjB,IAAIC,OAAO,GAAGH,WAAW,CACtBI,MAAM,CAACC,SAAS,IAAI,CAACA,SAAS,CAACC,WAAW,CAAC,CAAC,KAAKD,SAAS,CAACH,MAAM,CAACK,SAAS,IAAIF,SAAS,CAACH,MAAM,CAACM,OAAO,CAAC,CAAC,CAAC,CAAC,CAC3GC,GAAG,CAACJ,SAAS,IAAI;IAChB,IAAI,CAACH,MAAM,EAAEA,MAAM,GAAGG,SAAS,CAACH,MAAM;IACtC,OAAO;MACLG,SAAS,EAAEA,SAAS;MACpBK,YAAY,EAAE;IAChB,CAAC;EACH,CAAC,CAAC;;EAEJ;AACF;AACA;AACA;AACA;AACA;EACE,OAAOR,MAAM,IAAIA,MAAM,CAACM,OAAO,CAAC,CAAC,EAAE;IACjC,IAAIG,OAAO,GAAG,EAAE;IAEhBT,MAAM,CAACU,UAAU,CACdR,MAAM,CAACC,SAAS,IAAI,CAACF,OAAO,CAACU,IAAI,CAACC,MAAM,IAAIA,MAAM,CAACT,SAAS,KAAKA,SAAS,CAAC,CAAC,CAC5EU,OAAO,CAACV,SAAS,IAAIM,OAAO,CAACK,IAAI,CAACX,SAAS,CAAC,CAAC;IAEhD,IAAIM,OAAO,CAACM,MAAM,GAAG,CAAC,EAAE;IAExB,IAAIC,OAAO,GAAGhB,MAAM,CAACA,MAAM;IAC3BS,OAAO,CAACI,OAAO,CAACV,SAAS,IAAIF,OAAO,CAACa,IAAI,CAAC;MAAEX,SAAS;MAAEK,YAAY,EAAEQ;IAAQ,CAAC,CAAC,CAAC;IAEhFf,OAAO,CAACa,IAAI,CAAC;MACXX,SAAS,EAAEH,MAAM;MACjBQ,YAAY,EAAE;IAChB,CAAC,CAAC;;IAEF;AACJ;AACA;AACA;IACIR,MAAM,GAAGgB,OAAO;EAClB;EAEA,IAAIf,OAAO,CAACc,MAAM,GAAG,CAAC,EAAE,IAAI,CAACE,GAAG,CAACC,SAAS,CAACC,OAAO,CAAC,IAAIC,uBAAc,CAAC;IAAEnB;EAAQ,CAAC,CAAC,CAAC;EAEnFD,MAAM,IAAIA,MAAM,CAACqB,eAAe,IAAIrB,MAAM,CAACqB,eAAe,CAAC,CAAC;AAC9D","ignoreList":[]}
@@ -1,47 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.symmetryX = symmetryX;
7
- exports.symmetryY = symmetryY;
8
- var _component = _interopRequireDefault(require("../../components/component.js"));
9
- var _commandChange = _interopRequireDefault(require("../../command/command-change.js"));
10
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
- /*
12
- * Copyright © HatioLab Inc. All rights reserved.
13
- */
14
-
15
- /* this should be root-container */
16
-
17
- function _symmetryX() {
18
- var selected = this.selected;
19
- if (selected.length == 0) return;
20
- var boundsList = selected.map(component => {
21
- return component.bounds;
22
- });
23
- var bounds = _component.default.union(boundsList);
24
- var x = bounds.left + bounds.width / 2;
25
- selected.map(component => {
26
- component.symmetryX(x);
27
- });
28
- }
29
- function _symmetryY() {
30
- var selected = this.selected;
31
- if (selected.length == 0) return;
32
- var boundsList = selected.map(component => {
33
- return component.bounds;
34
- });
35
- var bounds = _component.default.union(boundsList);
36
- var y = bounds.top + bounds.height / 2;
37
- selected.map(component => {
38
- component.symmetryY(y);
39
- });
40
- }
41
- function symmetryX() {
42
- _commandChange.default.around(this.app.commander, _symmetryX, this);
43
- }
44
- function symmetryY() {
45
- _commandChange.default.around(this.app.commander, _symmetryY, this);
46
- }
47
- //# sourceMappingURL=symmetry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"symmetry.js","names":["_component","_interopRequireDefault","require","_commandChange","e","__esModule","default","_symmetryX","selected","length","boundsList","map","component","bounds","Component","union","x","left","width","symmetryX","_symmetryY","y","top","height","symmetryY","CommandChange","around","app","commander"],"sources":["../../../src/things-scene/api/symmetry.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport Component from '../../components/component.js'\nimport CommandChange from '../../command/command-change.js'\n\n/* this should be root-container */\n\nfunction _symmetryX() {\n var selected = this.selected\n\n if (selected.length == 0) return\n\n var boundsList = selected.map(component => {\n return component.bounds\n })\n var bounds = Component.union(boundsList)\n var x = bounds.left + bounds.width / 2\n\n selected.map(component => {\n component.symmetryX(x)\n })\n}\n\nfunction _symmetryY() {\n var selected = this.selected\n\n if (selected.length == 0) return\n\n var boundsList = selected.map(component => {\n return component.bounds\n })\n var bounds = Component.union(boundsList)\n var y = bounds.top + bounds.height / 2\n\n selected.map(component => {\n component.symmetryY(y)\n })\n}\n\nexport function symmetryX() {\n CommandChange.around(this.app.commander, _symmetryX, this)\n}\n\nexport function symmetryY() {\n CommandChange.around(this.app.commander, _symmetryY, this)\n}\n"],"mappings":";;;;;;;AAIA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,cAAA,GAAAF,sBAAA,CAAAC,OAAA;AAA2D,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAL3D;AACA;AACA;;AAKA;;AAEA,SAASG,UAAUA,CAAA,EAAG;EACpB,IAAIC,QAAQ,GAAG,IAAI,CAACA,QAAQ;EAE5B,IAAIA,QAAQ,CAACC,MAAM,IAAI,CAAC,EAAE;EAE1B,IAAIC,UAAU,GAAGF,QAAQ,CAACG,GAAG,CAACC,SAAS,IAAI;IACzC,OAAOA,SAAS,CAACC,MAAM;EACzB,CAAC,CAAC;EACF,IAAIA,MAAM,GAAGC,kBAAS,CAACC,KAAK,CAACL,UAAU,CAAC;EACxC,IAAIM,CAAC,GAAGH,MAAM,CAACI,IAAI,GAAGJ,MAAM,CAACK,KAAK,GAAG,CAAC;EAEtCV,QAAQ,CAACG,GAAG,CAACC,SAAS,IAAI;IACxBA,SAAS,CAACO,SAAS,CAACH,CAAC,CAAC;EACxB,CAAC,CAAC;AACJ;AAEA,SAASI,UAAUA,CAAA,EAAG;EACpB,IAAIZ,QAAQ,GAAG,IAAI,CAACA,QAAQ;EAE5B,IAAIA,QAAQ,CAACC,MAAM,IAAI,CAAC,EAAE;EAE1B,IAAIC,UAAU,GAAGF,QAAQ,CAACG,GAAG,CAACC,SAAS,IAAI;IACzC,OAAOA,SAAS,CAACC,MAAM;EACzB,CAAC,CAAC;EACF,IAAIA,MAAM,GAAGC,kBAAS,CAACC,KAAK,CAACL,UAAU,CAAC;EACxC,IAAIW,CAAC,GAAGR,MAAM,CAACS,GAAG,GAAGT,MAAM,CAACU,MAAM,GAAG,CAAC;EAEtCf,QAAQ,CAACG,GAAG,CAACC,SAAS,IAAI;IACxBA,SAAS,CAACY,SAAS,CAACH,CAAC,CAAC;EACxB,CAAC,CAAC;AACJ;AAEO,SAASF,SAASA,CAAA,EAAG;EAC1BM,sBAAa,CAACC,MAAM,CAAC,IAAI,CAACC,GAAG,CAACC,SAAS,EAAErB,UAAU,EAAE,IAAI,CAAC;AAC5D;AAEO,SAASiB,SAASA,CAAA,EAAG;EAC1BC,sBAAa,CAACC,MAAM,CAAC,IAAI,CAACC,GAAG,CAACC,SAAS,EAAER,UAAU,EAAE,IAAI,CAAC;AAC5D","ignoreList":[]}
@@ -1,76 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.toDataURL = toDataURL;
7
- var _component = _interopRequireDefault(require("../../components/component.js"));
8
- var Const = _interopRequireWildcard(require("../../const.js"));
9
- var _domToImage = _interopRequireDefault(require("../../core/dom-to-image.js"));
10
- var _logger = require("../../core/logger.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
- function toDataURL(type, encoderOptions, width, height) {
19
- var layer = this.model_layer;
20
- var overlay = layer._overlay;
21
- return new Promise(function (resolve, reject) {
22
- if (!layer) {
23
- reject('No target model');
24
- } else {
25
- var origin_width = layer.get('width');
26
- var origin_height = layer.get('height');
27
- width = width || origin_width;
28
- height = height || origin_height;
29
- var translate = layer.get('translate');
30
- var scale = layer.get('scale');
31
- var minscale = Math.min(width / origin_width, height / origin_height);
32
- width = origin_width * minscale;
33
- height = origin_height * minscale;
34
- layer.set('translate', {
35
- x: 0,
36
- y: 0
37
- });
38
- layer.set('scale', {
39
- x: minscale / Const.DPPX,
40
- y: minscale / Const.DPPX
41
- });
42
- var canvas = _component.default.createCanvas(width, height);
43
- var context = canvas.getContext('2d');
44
- layer.draw(context);
45
- layer.set('translate', translate);
46
- layer.set('scale', scale);
47
- if (!overlay) {
48
- resolve(canvas.toDataURL(type, encoderOptions));
49
- canvas = null;
50
- return;
51
- }
52
- _domToImage.default.toPng(overlay, {
53
- sx: minscale,
54
- sy: minscale,
55
- width: width,
56
- height: height
57
- // filter: function(node) {
58
- // return (node.tagName !== 'IFRAME');
59
- // }
60
- }).then(function (pngUrl) {
61
- var img = new Image();
62
- img.onload = function () {
63
- context.drawImage(img, 0, 0, width, height);
64
- resolve(canvas.toDataURL(type, encoderOptions));
65
- canvas = null;
66
- };
67
- img.src = pngUrl;
68
- }, function (err) {
69
- (0, _logger.error)(err);
70
- resolve(canvas.toDataURL(type, encoderOptions));
71
- canvas = null;
72
- });
73
- }
74
- });
75
- }
76
- //# sourceMappingURL=to-data-url.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"to-data-url.js","names":["_component","_interopRequireDefault","require","Const","_interopRequireWildcard","_domToImage","_logger","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","toDataURL","type","encoderOptions","width","height","layer","model_layer","overlay","_overlay","Promise","resolve","reject","origin_width","origin_height","translate","scale","minscale","Math","min","x","y","DPPX","canvas","Component","createCanvas","context","getContext","draw","domtoimage","toPng","sx","sy","then","pngUrl","img","Image","onload","drawImage","src","err","error"],"sources":["../../../src/things-scene/api/to-data-url.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport Component from '../../components/component.js'\nimport * as Const from '../../const.js'\nimport domtoimage from '../../core/dom-to-image.js'\nimport { error } from '../../core/logger.js'\n\nexport function toDataURL(type, encoderOptions, width, height) {\n var layer = this.model_layer\n var overlay = layer._overlay\n\n return new Promise(function (resolve, reject) {\n if (!layer) {\n reject('No target model')\n } else {\n var origin_width = layer.get('width')\n var origin_height = layer.get('height')\n\n width = width || origin_width\n height = height || origin_height\n\n var translate = layer.get('translate')\n var scale = layer.get('scale')\n\n var minscale = Math.min(width / origin_width, height / origin_height)\n width = origin_width * minscale\n height = origin_height * minscale\n\n layer.set('translate', {\n x: 0,\n y: 0\n })\n layer.set('scale', {\n x: minscale / Const.DPPX,\n y: minscale / Const.DPPX\n })\n\n var canvas = Component.createCanvas(width, height)\n\n var context = canvas.getContext('2d')\n layer.draw(context)\n\n layer.set('translate', translate)\n layer.set('scale', scale)\n\n if (!overlay) {\n resolve(canvas.toDataURL(type, encoderOptions))\n canvas = null\n return\n }\n\n domtoimage\n .toPng(overlay, {\n sx: minscale,\n sy: minscale,\n width: width,\n height: height\n // filter: function(node) {\n // return (node.tagName !== 'IFRAME');\n // }\n })\n .then(\n function (pngUrl) {\n var img = new Image()\n\n img.onload = function () {\n context.drawImage(img, 0, 0, width, height)\n\n resolve(canvas.toDataURL(type, encoderOptions))\n\n canvas = null\n }\n\n img.src = pngUrl\n },\n function (err) {\n error(err)\n\n resolve(canvas.toDataURL(type, encoderOptions))\n\n canvas = null\n }\n )\n }\n })\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,68 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.move = move;
7
- exports.zorder = zorder;
8
- var _commandMigrate = _interopRequireDefault(require("../../command/command-migrate.js"));
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- /*
11
- * Copyright © HatioLab Inc. All rights reserved.
12
- */
13
-
14
- /* this should be root-container */
15
-
16
- function move(component, to_container, to_index) {
17
- this.app.commander.execute(new _commandMigrate.default({
18
- changes: [{
19
- component,
20
- to_container,
21
- to_index
22
- }]
23
- }));
24
- }
25
- function zorder(type) {
26
- var selected = this.selected.filter(c => !c.stuck);
27
- if (selected.length == 0 || selected[0].isRootModel()) return;
28
- if (selected.length > 1 && (type == 'forward' || type == 'backward')) return;
29
- var parent = selected[0].parent;
30
- var changes;
31
- if (type == 'forward') {
32
- let index = parent.indexOf(selected[0]);
33
- changes = [{
34
- component: selected[0],
35
- from_container: parent,
36
- to_container: parent,
37
- from_index: index,
38
- to_index: index + 1
39
- }];
40
- } else if (type == 'backward') {
41
- let index = parent.indexOf(selected[0]);
42
- changes = [{
43
- component: selected[0],
44
- from_container: parent,
45
- to_container: parent,
46
- from_index: index,
47
- to_index: index - 1
48
- }];
49
- } else {
50
- /* case of front or back */
51
- changes = selected.filter(component => component.parent === parent).sort((c1, c2) => {
52
- let ret = parent.indexOf(c1) < parent.indexOf(c2);
53
- return type == 'front' ? ret : !ret;
54
- }).map((component, i) => {
55
- let index = parent.indexOf(component);
56
- return {
57
- component: component,
58
- to_container: parent,
59
- to_index: type == 'front' ? parent.components.length - i - 1 : i
60
- };
61
- });
62
- }
63
- var command = new _commandMigrate.default({
64
- changes
65
- });
66
- this.app.commander.execute(command);
67
- }
68
- //# sourceMappingURL=zorder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"zorder.js","names":["_commandMigrate","_interopRequireDefault","require","e","__esModule","default","move","component","to_container","to_index","app","commander","execute","CommandMigrate","changes","zorder","type","selected","filter","c","stuck","length","isRootModel","parent","index","indexOf","from_container","from_index","sort","c1","c2","ret","map","i","components","command"],"sources":["../../../src/things-scene/api/zorder.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport CommandMigrate from '../../command/command-migrate.js'\n\n/* this should be root-container */\n\nexport function move(component, to_container, to_index) {\n this.app.commander.execute(\n new CommandMigrate({\n changes: [\n {\n component,\n to_container,\n to_index\n }\n ]\n })\n )\n}\n\nexport function zorder(type) {\n var selected = this.selected.filter(c => !c.stuck)\n\n if (selected.length == 0 || selected[0].isRootModel()) return\n\n if (selected.length > 1 && (type == 'forward' || type == 'backward')) return\n\n var parent = selected[0].parent\n\n var changes\n\n if (type == 'forward') {\n let index = parent.indexOf(selected[0])\n\n changes = [\n {\n component: selected[0],\n from_container: parent,\n to_container: parent,\n from_index: index,\n to_index: index + 1\n }\n ]\n } else if (type == 'backward') {\n let index = parent.indexOf(selected[0])\n\n changes = [\n {\n component: selected[0],\n from_container: parent,\n to_container: parent,\n from_index: index,\n to_index: index - 1\n }\n ]\n } else {\n /* case of front or back */\n changes = selected\n .filter(component => component.parent === parent)\n .sort((c1, c2) => {\n let ret = parent.indexOf(c1) < parent.indexOf(c2)\n return type == 'front' ? ret : !ret\n })\n .map((component, i) => {\n let index = parent.indexOf(component)\n\n return {\n component: component,\n to_container: parent,\n to_index: type == 'front' ? parent.components.length - i - 1 : i\n }\n })\n }\n\n var command = new CommandMigrate({ changes })\n this.app.commander.execute(command)\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,168 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var Const = _interopRequireWildcard(require("../const.js"));
8
- var core = _interopRequireWildcard(require("../core/index.js"));
9
- var _logger = require("../core/logger.js");
10
- var _config = _interopRequireDefault(require("./config.js"));
11
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
- 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); }
13
- 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; }
14
- /*
15
- * Copyright © HatioLab Inc. All rights reserved.
16
- */
17
-
18
- const BASE_URL = '$base_url';
19
-
20
- /*
21
- * Calculate PPI/DPI
22
- *
23
- * w: 해상도 넓이 값
24
- * h: 해상도 높이 값
25
- * d: 길이 값(단위: inch)
26
- * opt: d 값의 의미
27
- * - 'd' : diagonal 대각선
28
- * - 'w' :
29
- */
30
- function calcPPI(w, h, d, opt) {
31
- w > 0 || (w = 1);
32
- h > 0 || (h = 1);
33
- opt || (opt = 'd');
34
- var dpi = (opt == 'd' ? Math.sqrt(w * w + h * h) : opt == 'w' ? w : h) / d;
35
- return dpi > 0 ? Math.round(dpi) : 0;
36
- }
37
- const ROTATION_STEP = Math.PI / 12;
38
- class ApplicationContext {
39
- constructor(mode, refProvider) {
40
- this._mode = mode;
41
- this.screen = _config.default.screen();
42
- this._baseUrl = typeof window != 'undefined' ? window.location.origin : null;
43
- this._refProvider = refProvider;
44
- if (this.isEditMode) {
45
- this._rotateStep = ROTATION_STEP; // 모델러 설정임
46
- this._rotateStepForced = false; // 모델러 설정임
47
- }
48
- }
49
- dispose() {
50
- if (this._dataSubscriptionProvider) {
51
- this._dataSubscriptionProvider.dispose();
52
- }
53
- delete this._dataStorage;
54
- }
55
- _calcScreen() {
56
- var physical_resolution = {
57
- width: screen.width,
58
- height: screen.height
59
- };
60
- this._PPI = calcPPI(physical_resolution.width, physical_resolution.height, this.screen);
61
- this._PPM = this._PPI / 25.4;
62
- }
63
- subscribe(tag, component) {
64
- return this._dataSubscriptionProvider?.subscribe(tag, component);
65
- }
66
- get refProvider() {
67
- return this._refProvider;
68
- }
69
- set dataSubscriptionProvider(dataSubscriptionProvider) {
70
- this._dataSubscriptionProvider = dataSubscriptionProvider;
71
- }
72
- get dataSubscriptionProvider() {
73
- return this._dataSubscriptionProvider;
74
- }
75
- set commander(commander) {
76
- this._commander = commander;
77
- }
78
- get commander() {
79
- return this._commander;
80
- }
81
- get screen() {
82
- return this._screen;
83
- }
84
- set screen(screen) {
85
- this._screen = screen;
86
- this._calcScreen();
87
- }
88
- get DPPX() {
89
- return Const.DPPX;
90
- }
91
- get PPI() {
92
- return this._PPI;
93
- }
94
- get PPM() {
95
- return this._PPM;
96
- }
97
- get mode() {
98
- return this._mode;
99
- }
100
- set mode(mode) {
101
- var before = this._mode;
102
- if (before === mode) return;
103
- this._mode = mode;
104
- this.trigger('mode', mode, before);
105
- }
106
- get isViewMode() {
107
- return this._mode == Const.MODE_VIEW;
108
- }
109
- get isEditMode() {
110
- return this._mode == Const.MODE_EDIT;
111
- }
112
- get baseUrl() {
113
- return this._baseUrl;
114
- }
115
- set baseUrl(baseUrl) {
116
- if (!baseUrl) return;
117
- if (this._baseUrl == baseUrl) return;
118
- this._baseUrl = baseUrl;
119
-
120
- // visualizer에서 pop up 킬 경우 깜빡거리는 현상때문에 주석처리
121
- // if (this.refProvider && this.refProvider.references)
122
- // Object.values(this.refProvider.references).forEach(v => (v.model = v.model))
123
- }
124
- url(x) {
125
- try {
126
- var usingBaseUrl = x.includes(BASE_URL);
127
- var cvt;
128
- if (usingBaseUrl) cvt = new URL(x.replace(BASE_URL, this.baseUrl), this.baseUrl);else cvt = new URL(x, location.origin);
129
- return cvt.href;
130
- } catch (e) {
131
- (0, _logger.warn)(e, x);
132
- }
133
- }
134
-
135
- /*
136
- * 스텝 회전시에 회전가능 단위를 설정함.
137
- * (스텝 회전이란 모델링시 사용자 편의를 위해서 일정 단위로 회전을 할 수 있도록 하는 기능임)
138
- */
139
- get rotateStep() {
140
- return this._rotateStep;
141
- }
142
- set rotateStep(step) {
143
- this._rotateStep = Number(step) || ROTATION_STEP;
144
- }
145
-
146
- /*
147
- * 스텝 회전을 강제하는 설정임. 스텝 회전을 강제하면 설정된 rotateStep 단위로만 값을 설정할 수 있음.
148
- * 일반적으로는 컴포넌트 회전시에 사용자가 shift키를 누른 상태인 경우 스텝회전이 되나,
149
- * rotateStepForce을 true로 주어서 스텝회전을 강제하면 항상 스텝회전이 적용된다.
150
- */
151
- get rotateStepForced() {
152
- return this._rotateStepForced;
153
- }
154
- set rotateStepForced(force) {
155
- this._rotateStepForced = !!force;
156
- }
157
-
158
- /* persistent data storage */
159
- get dataStorage() {
160
- return this._dataStorage;
161
- }
162
- set dataStorage(dataStorage) {
163
- this._dataStorage = dataStorage;
164
- }
165
- }
166
- exports.default = ApplicationContext;
167
- core.mixin(ApplicationContext.prototype, core.event.withEvent);
168
- //# sourceMappingURL=application-context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"application-context.js","names":["Const","_interopRequireWildcard","require","core","_logger","_config","_interopRequireDefault","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","BASE_URL","calcPPI","w","h","d","opt","dpi","Math","sqrt","round","ROTATION_STEP","PI","ApplicationContext","constructor","mode","refProvider","_mode","screen","config","_baseUrl","window","location","origin","_refProvider","isEditMode","_rotateStep","_rotateStepForced","dispose","_dataSubscriptionProvider","_dataStorage","_calcScreen","physical_resolution","width","height","_PPI","_PPM","subscribe","tag","component","dataSubscriptionProvider","commander","_commander","_screen","DPPX","PPI","PPM","before","trigger","isViewMode","MODE_VIEW","MODE_EDIT","baseUrl","url","x","usingBaseUrl","includes","cvt","URL","replace","href","warn","rotateStep","step","Number","rotateStepForced","force","dataStorage","exports","mixin","prototype","event","withEvent"],"sources":["../../src/things-scene/application-context.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport * as Const from '../const.js'\nimport * as core from '../core/index.js'\nimport { warn } from '../core/logger.js'\nimport config from './config.js'\n\nconst BASE_URL = '$base_url'\n\n/*\n * Calculate PPI/DPI\n *\n * w: 해상도 넓이 값\n * h: 해상도 높이 값\n * d: 길이 값(단위: inch)\n * opt: d 값의 의미\n * - 'd' : diagonal 대각선\n * - 'w' :\n */\nfunction calcPPI(w, h, d, opt) {\n w > 0 || (w = 1)\n h > 0 || (h = 1)\n opt || (opt = 'd')\n var dpi = (opt == 'd' ? Math.sqrt(w * w + h * h) : opt == 'w' ? w : h) / d\n return dpi > 0 ? Math.round(dpi) : 0\n}\n\nconst ROTATION_STEP = Math.PI / 12\n\nexport default class ApplicationContext {\n constructor(mode, refProvider) {\n this._mode = mode\n this.screen = config.screen()\n this._baseUrl = typeof window != 'undefined' ? window.location.origin : null\n this._refProvider = refProvider\n\n if (this.isEditMode) {\n this._rotateStep = ROTATION_STEP // 모델러 설정임\n this._rotateStepForced = false // 모델러 설정임\n }\n }\n\n dispose() {\n if (this._dataSubscriptionProvider) {\n this._dataSubscriptionProvider.dispose()\n }\n delete this._dataStorage\n }\n\n _calcScreen() {\n var physical_resolution = {\n width: screen.width,\n height: screen.height\n }\n\n this._PPI = calcPPI(physical_resolution.width, physical_resolution.height, this.screen)\n this._PPM = this._PPI / 25.4\n }\n\n subscribe(tag, component) {\n return this._dataSubscriptionProvider?.subscribe(tag, component)\n }\n\n get refProvider() {\n return this._refProvider\n }\n\n set dataSubscriptionProvider(dataSubscriptionProvider) {\n this._dataSubscriptionProvider = dataSubscriptionProvider\n }\n\n get dataSubscriptionProvider() {\n return this._dataSubscriptionProvider\n }\n\n set commander(commander) {\n this._commander = commander\n }\n\n get commander() {\n return this._commander\n }\n\n get screen() {\n return this._screen\n }\n\n set screen(screen) {\n this._screen = screen\n this._calcScreen()\n }\n\n get DPPX() {\n return Const.DPPX\n }\n\n get PPI() {\n return this._PPI\n }\n\n get PPM() {\n return this._PPM\n }\n\n get mode() {\n return this._mode\n }\n\n set mode(mode) {\n var before = this._mode\n if (before === mode) return\n\n this._mode = mode\n this.trigger('mode', mode, before)\n }\n\n get isViewMode() {\n return this._mode == Const.MODE_VIEW\n }\n\n get isEditMode() {\n return this._mode == Const.MODE_EDIT\n }\n\n get baseUrl() {\n return this._baseUrl\n }\n\n set baseUrl(baseUrl) {\n if (!baseUrl) return\n if (this._baseUrl == baseUrl) return\n\n this._baseUrl = baseUrl\n\n // visualizer에서 pop up 킬 경우 깜빡거리는 현상때문에 주석처리\n // if (this.refProvider && this.refProvider.references)\n // Object.values(this.refProvider.references).forEach(v => (v.model = v.model))\n }\n\n url(x) {\n try {\n var usingBaseUrl = x.includes(BASE_URL)\n var cvt\n if (usingBaseUrl) cvt = new URL(x.replace(BASE_URL, this.baseUrl), this.baseUrl)\n else cvt = new URL(x, location.origin)\n\n return cvt.href\n } catch (e) {\n warn(e, x)\n }\n }\n\n /*\n * 스텝 회전시에 회전가능 단위를 설정함.\n * (스텝 회전이란 모델링시 사용자 편의를 위해서 일정 단위로 회전을 할 수 있도록 하는 기능임)\n */\n get rotateStep() {\n return this._rotateStep\n }\n\n set rotateStep(step) {\n this._rotateStep = Number(step) || ROTATION_STEP\n }\n\n /*\n * 스텝 회전을 강제하는 설정임. 스텝 회전을 강제하면 설정된 rotateStep 단위로만 값을 설정할 수 있음.\n * 일반적으로는 컴포넌트 회전시에 사용자가 shift키를 누른 상태인 경우 스텝회전이 되나,\n * rotateStepForce을 true로 주어서 스텝회전을 강제하면 항상 스텝회전이 적용된다.\n */\n get rotateStepForced() {\n return this._rotateStepForced\n }\n\n set rotateStepForced(force) {\n this._rotateStepForced = !!force\n }\n\n /* persistent data storage */\n get dataStorage() {\n return this._dataStorage\n }\n\n set dataStorage(dataStorage) {\n this._dataStorage = dataStorage\n }\n}\n\ncore.mixin(ApplicationContext.prototype, core.event.withEvent)\n"],"mappings":";;;;;;AAIA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,IAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,OAAA,GAAAC,sBAAA,CAAAJ,OAAA;AAAgC,SAAAI,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,yBAAAH,CAAA,6BAAAI,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAD,wBAAA,YAAAA,CAAAH,CAAA,WAAAA,CAAA,GAAAM,CAAA,GAAAD,CAAA,KAAAL,CAAA;AAAA,SAAAN,wBAAAM,CAAA,EAAAK,CAAA,SAAAA,CAAA,IAAAL,CAAA,IAAAA,CAAA,CAAAC,UAAA,SAAAD,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAE,OAAA,EAAAF,CAAA,QAAAM,CAAA,GAAAH,wBAAA,CAAAE,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAC,GAAA,CAAAP,CAAA,UAAAM,CAAA,CAAAE,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAf,CAAA,oBAAAe,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAjB,CAAA,EAAAe,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAd,CAAA,EAAAe,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAf,CAAA,CAAAe,CAAA,YAAAN,CAAA,CAAAP,OAAA,GAAAF,CAAA,EAAAM,CAAA,IAAAA,CAAA,CAAAa,GAAA,CAAAnB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAPhC;AACA;AACA;;AAOA,MAAMW,QAAQ,GAAG,WAAW;;AAE5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASC,OAAOA,CAACC,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAEC,GAAG,EAAE;EAC7BH,CAAC,GAAG,CAAC,KAAKA,CAAC,GAAG,CAAC,CAAC;EAChBC,CAAC,GAAG,CAAC,KAAKA,CAAC,GAAG,CAAC,CAAC;EAChBE,GAAG,KAAKA,GAAG,GAAG,GAAG,CAAC;EAClB,IAAIC,GAAG,GAAG,CAACD,GAAG,IAAI,GAAG,GAAGE,IAAI,CAACC,IAAI,CAACN,CAAC,GAAGA,CAAC,GAAGC,CAAC,GAAGA,CAAC,CAAC,GAAGE,GAAG,IAAI,GAAG,GAAGH,CAAC,GAAGC,CAAC,IAAIC,CAAC;EAC1E,OAAOE,GAAG,GAAG,CAAC,GAAGC,IAAI,CAACE,KAAK,CAACH,GAAG,CAAC,GAAG,CAAC;AACtC;AAEA,MAAMI,aAAa,GAAGH,IAAI,CAACI,EAAE,GAAG,EAAE;AAEnB,MAAMC,kBAAkB,CAAC;EACtCC,WAAWA,CAACC,IAAI,EAAEC,WAAW,EAAE;IAC7B,IAAI,CAACC,KAAK,GAAGF,IAAI;IACjB,IAAI,CAACG,MAAM,GAAGC,eAAM,CAACD,MAAM,CAAC,CAAC;IAC7B,IAAI,CAACE,QAAQ,GAAG,OAAOC,MAAM,IAAI,WAAW,GAAGA,MAAM,CAACC,QAAQ,CAACC,MAAM,GAAG,IAAI;IAC5E,IAAI,CAACC,YAAY,GAAGR,WAAW;IAE/B,IAAI,IAAI,CAACS,UAAU,EAAE;MACnB,IAAI,CAACC,WAAW,GAAGf,aAAa,EAAC;MACjC,IAAI,CAACgB,iBAAiB,GAAG,KAAK,EAAC;IACjC;EACF;EAEAC,OAAOA,CAAA,EAAG;IACR,IAAI,IAAI,CAACC,yBAAyB,EAAE;MAClC,IAAI,CAACA,yBAAyB,CAACD,OAAO,CAAC,CAAC;IAC1C;IACA,OAAO,IAAI,CAACE,YAAY;EAC1B;EAEAC,WAAWA,CAAA,EAAG;IACZ,IAAIC,mBAAmB,GAAG;MACxBC,KAAK,EAAEf,MAAM,CAACe,KAAK;MACnBC,MAAM,EAAEhB,MAAM,CAACgB;IACjB,CAAC;IAED,IAAI,CAACC,IAAI,GAAGjC,OAAO,CAAC8B,mBAAmB,CAACC,KAAK,EAAED,mBAAmB,CAACE,MAAM,EAAE,IAAI,CAAChB,MAAM,CAAC;IACvF,IAAI,CAACkB,IAAI,GAAG,IAAI,CAACD,IAAI,GAAG,IAAI;EAC9B;EAEAE,SAASA,CAACC,GAAG,EAAEC,SAAS,EAAE;IACxB,OAAO,IAAI,CAACV,yBAAyB,EAAEQ,SAAS,CAACC,GAAG,EAAEC,SAAS,CAAC;EAClE;EAEA,IAAIvB,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACQ,YAAY;EAC1B;EAEA,IAAIgB,wBAAwBA,CAACA,wBAAwB,EAAE;IACrD,IAAI,CAACX,yBAAyB,GAAGW,wBAAwB;EAC3D;EAEA,IAAIA,wBAAwBA,CAAA,EAAG;IAC7B,OAAO,IAAI,CAACX,yBAAyB;EACvC;EAEA,IAAIY,SAASA,CAACA,SAAS,EAAE;IACvB,IAAI,CAACC,UAAU,GAAGD,SAAS;EAC7B;EAEA,IAAIA,SAASA,CAAA,EAAG;IACd,OAAO,IAAI,CAACC,UAAU;EACxB;EAEA,IAAIxB,MAAMA,CAAA,EAAG;IACX,OAAO,IAAI,CAACyB,OAAO;EACrB;EAEA,IAAIzB,MAAMA,CAACA,MAAM,EAAE;IACjB,IAAI,CAACyB,OAAO,GAAGzB,MAAM;IACrB,IAAI,CAACa,WAAW,CAAC,CAAC;EACpB;EAEA,IAAIa,IAAIA,CAAA,EAAG;IACT,OAAOtE,KAAK,CAACsE,IAAI;EACnB;EAEA,IAAIC,GAAGA,CAAA,EAAG;IACR,OAAO,IAAI,CAACV,IAAI;EAClB;EAEA,IAAIW,GAAGA,CAAA,EAAG;IACR,OAAO,IAAI,CAACV,IAAI;EAClB;EAEA,IAAIrB,IAAIA,CAAA,EAAG;IACT,OAAO,IAAI,CAACE,KAAK;EACnB;EAEA,IAAIF,IAAIA,CAACA,IAAI,EAAE;IACb,IAAIgC,MAAM,GAAG,IAAI,CAAC9B,KAAK;IACvB,IAAI8B,MAAM,KAAKhC,IAAI,EAAE;IAErB,IAAI,CAACE,KAAK,GAAGF,IAAI;IACjB,IAAI,CAACiC,OAAO,CAAC,MAAM,EAAEjC,IAAI,EAAEgC,MAAM,CAAC;EACpC;EAEA,IAAIE,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAAChC,KAAK,IAAI3C,KAAK,CAAC4E,SAAS;EACtC;EAEA,IAAIzB,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACR,KAAK,IAAI3C,KAAK,CAAC6E,SAAS;EACtC;EAEA,IAAIC,OAAOA,CAAA,EAAG;IACZ,OAAO,IAAI,CAAChC,QAAQ;EACtB;EAEA,IAAIgC,OAAOA,CAACA,OAAO,EAAE;IACnB,IAAI,CAACA,OAAO,EAAE;IACd,IAAI,IAAI,CAAChC,QAAQ,IAAIgC,OAAO,EAAE;IAE9B,IAAI,CAAChC,QAAQ,GAAGgC,OAAO;;IAEvB;IACA;IACA;EACF;EAEAC,GAAGA,CAACC,CAAC,EAAE;IACL,IAAI;MACF,IAAIC,YAAY,GAAGD,CAAC,CAACE,QAAQ,CAACvD,QAAQ,CAAC;MACvC,IAAIwD,GAAG;MACP,IAAIF,YAAY,EAAEE,GAAG,GAAG,IAAIC,GAAG,CAACJ,CAAC,CAACK,OAAO,CAAC1D,QAAQ,EAAE,IAAI,CAACmD,OAAO,CAAC,EAAE,IAAI,CAACA,OAAO,CAAC,MAC3EK,GAAG,GAAG,IAAIC,GAAG,CAACJ,CAAC,EAAEhC,QAAQ,CAACC,MAAM,CAAC;MAEtC,OAAOkC,GAAG,CAACG,IAAI;IACjB,CAAC,CAAC,OAAO/E,CAAC,EAAE;MACV,IAAAgF,YAAI,EAAChF,CAAC,EAAEyE,CAAC,CAAC;IACZ;EACF;;EAEA;AACF;AACA;AACA;EACE,IAAIQ,UAAUA,CAAA,EAAG;IACf,OAAO,IAAI,CAACpC,WAAW;EACzB;EAEA,IAAIoC,UAAUA,CAACC,IAAI,EAAE;IACnB,IAAI,CAACrC,WAAW,GAAGsC,MAAM,CAACD,IAAI,CAAC,IAAIpD,aAAa;EAClD;;EAEA;AACF;AACA;AACA;AACA;EACE,IAAIsD,gBAAgBA,CAAA,EAAG;IACrB,OAAO,IAAI,CAACtC,iBAAiB;EAC/B;EAEA,IAAIsC,gBAAgBA,CAACC,KAAK,EAAE;IAC1B,IAAI,CAACvC,iBAAiB,GAAG,CAAC,CAACuC,KAAK;EAClC;;EAEA;EACA,IAAIC,WAAWA,CAAA,EAAG;IAChB,OAAO,IAAI,CAACrC,YAAY;EAC1B;EAEA,IAAIqC,WAAWA,CAACA,WAAW,EAAE;IAC3B,IAAI,CAACrC,YAAY,GAAGqC,WAAW;EACjC;AACF;AAACC,OAAA,CAAArF,OAAA,GAAA8B,kBAAA;AAEDpC,IAAI,CAAC4F,KAAK,CAACxD,kBAAkB,CAACyD,SAAS,EAAE7F,IAAI,CAAC8F,KAAK,CAACC,SAAS,CAAC","ignoreList":[]}
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- /*
8
- * Copyright © HatioLab Inc. All rights reserved.
9
- */
10
-
11
- var _screen = 13.3;
12
- var _default = exports.default = {
13
- screen: function (size) {
14
- if (typeof size !== 'undefined') _screen = size;
15
- return _screen;
16
- }
17
- };
18
- //# sourceMappingURL=config.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","names":["_screen","_default","exports","default","screen","size"],"sources":["../../src/things-scene/config.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nvar _screen = 13.3\n\nexport default {\n screen: function(size) {\n if (typeof size !== 'undefined') _screen = size\n\n return _screen\n }\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;;AAEA,IAAIA,OAAO,GAAG,IAAI;AAAA,IAAAC,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEH;EACbC,MAAM,EAAE,SAAAA,CAASC,IAAI,EAAE;IACrB,IAAI,OAAOA,IAAI,KAAK,WAAW,EAAEL,OAAO,GAAGK,IAAI;IAE/C,OAAOL,OAAO;EAChB;AACF,CAAC","ignoreList":[]}
@@ -1,67 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = create;
7
- var _rootContainer = _interopRequireDefault(require("../components/root-container.js"));
8
- var Const = _interopRequireWildcard(require("../const.js"));
9
- var _applicationContext = _interopRequireDefault(require("./application-context.js"));
10
- var _scene = _interopRequireDefault(require("./scene.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
- class DummyPersistentStorage {
19
- load(key) {}
20
- save(key, value) {}
21
- clear(key) {}
22
- }
23
- const DEFAULT_DATA_STORAGE = new DummyPersistentStorage();
24
- function create({
25
- target,
26
- model,
27
- style,
28
- layers = [],
29
- handlers = [],
30
- mode = Const.MODE_VIEW,
31
- refProvider,
32
- dataSubscriptionProvider,
33
- dataStorage = DEFAULT_DATA_STORAGE,
34
- baseUrl,
35
- fitMode
36
- }) {
37
- // target이 없으면 안된다.
38
- // target이 문자열이면, document에서 해당 id를 가진 DOM Element를 찾는다.
39
- // target은 최종엔 DOM Element 이어야한다.
40
- // target에 이미 다른 Scene이 붙어있는 지도 확인해라.
41
- var target_element = null;
42
- if (typeof target == 'string') {
43
- target_element = document.getElementById(target);
44
- if (!target_element) throw `target element '${target}' is not exist`;
45
- if (target_element.firstChild) throw `target element '${target}' is not empty`;
46
- } else {
47
- target_element = target;
48
- }
49
- if (target_element && target_element.style) {
50
- target_element.style.position = 'absolute';
51
- target_element.style.cursor = 'default';
52
- target_element.style.overflow = 'hidden';
53
- }
54
- var app = new _applicationContext.default(mode, refProvider);
55
- app.baseUrl = baseUrl;
56
- app.dataSubscriptionProvider = dataSubscriptionProvider;
57
- app.dataStorage = dataStorage;
58
- return new _scene.default(new _rootContainer.default({
59
- target_element,
60
- model,
61
- style,
62
- layers,
63
- handlers,
64
- fitMode
65
- }, app));
66
- }
67
- //# sourceMappingURL=create.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create.js","names":["_rootContainer","_interopRequireDefault","require","Const","_interopRequireWildcard","_applicationContext","_scene","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","DummyPersistentStorage","load","key","save","value","clear","DEFAULT_DATA_STORAGE","create","target","model","style","layers","handlers","mode","MODE_VIEW","refProvider","dataSubscriptionProvider","dataStorage","baseUrl","fitMode","target_element","document","getElementById","firstChild","position","cursor","overflow","app","ApplicationContext","Scene","RootContainer"],"sources":["../../src/things-scene/create.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport RootContainer from '../components/root-container.js'\nimport * as Const from '../const.js'\nimport ApplicationContext from './application-context.js'\nimport Scene from './scene.js'\n\nclass DummyPersistentStorage {\n load(key) {}\n save(key, value) {}\n clear(key) {}\n}\n\nconst DEFAULT_DATA_STORAGE = new DummyPersistentStorage()\n\nexport default function create({\n target,\n model,\n style,\n layers = [],\n handlers = [],\n mode = Const.MODE_VIEW,\n refProvider,\n dataSubscriptionProvider,\n dataStorage = DEFAULT_DATA_STORAGE,\n baseUrl,\n fitMode\n}) {\n // target이 없으면 안된다.\n // target이 문자열이면, document에서 해당 id를 가진 DOM Element를 찾는다.\n // target은 최종엔 DOM Element 이어야한다.\n // target에 이미 다른 Scene이 붙어있는 지도 확인해라.\n var target_element = null\n\n if (typeof target == 'string') {\n target_element = document.getElementById(target)\n if (!target_element) throw `target element '${target}' is not exist`\n\n if (target_element.firstChild) throw `target element '${target}' is not empty`\n } else {\n target_element = target\n }\n\n if (target_element && target_element.style) {\n target_element.style.position = 'absolute'\n target_element.style.cursor = 'default'\n target_element.style.overflow = 'hidden'\n }\n\n var app = new ApplicationContext(mode, refProvider)\n app.baseUrl = baseUrl\n app.dataSubscriptionProvider = dataSubscriptionProvider\n app.dataStorage = dataStorage\n\n return new Scene(\n new RootContainer(\n {\n target_element,\n model,\n style,\n layers,\n handlers,\n fitMode\n },\n app\n )\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,26 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = FPS;
7
- /*
8
- * Copyright © HatioLab Inc. All rights reserved.
9
- */
10
- var fps = 0;
11
- var last = performance.now();
12
- var count = 0;
13
- requestAnimationFrame(function measure() {
14
- requestAnimationFrame(measure);
15
- count++;
16
- var now = performance.now();
17
- var elapsed = now - last;
18
- if (elapsed < 1000) return;
19
- fps = Math.round(count * 1000 / elapsed);
20
- last = now;
21
- count = 0;
22
- });
23
- function FPS() {
24
- return fps;
25
- }
26
- //# sourceMappingURL=fps.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"fps.js","names":["fps","last","performance","now","count","requestAnimationFrame","measure","elapsed","Math","round","FPS"],"sources":["../../src/things-scene/fps.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\nvar fps = 0\n\nvar last = performance.now()\nvar count = 0\n\nrequestAnimationFrame(function measure() {\n requestAnimationFrame(measure)\n\n count++\n var now = performance.now()\n var elapsed = now - last\n\n if (elapsed < 1000) return\n\n fps = Math.round((count * 1000) / elapsed)\n last = now\n count = 0\n})\n\nexport default function FPS() {\n return fps\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;AACA,IAAIA,GAAG,GAAG,CAAC;AAEX,IAAIC,IAAI,GAAGC,WAAW,CAACC,GAAG,CAAC,CAAC;AAC5B,IAAIC,KAAK,GAAG,CAAC;AAEbC,qBAAqB,CAAC,SAASC,OAAOA,CAAA,EAAG;EACvCD,qBAAqB,CAACC,OAAO,CAAC;EAE9BF,KAAK,EAAE;EACP,IAAID,GAAG,GAAGD,WAAW,CAACC,GAAG,CAAC,CAAC;EAC3B,IAAII,OAAO,GAAGJ,GAAG,GAAGF,IAAI;EAExB,IAAIM,OAAO,GAAG,IAAI,EAAE;EAEpBP,GAAG,GAAGQ,IAAI,CAACC,KAAK,CAAEL,KAAK,GAAG,IAAI,GAAIG,OAAO,CAAC;EAC1CN,IAAI,GAAGE,GAAG;EACVC,KAAK,GAAG,CAAC;AACX,CAAC,CAAC;AAEa,SAASM,GAAGA,CAAA,EAAG;EAC5B,OAAOV,GAAG;AACZ","ignoreList":[]}