@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,66 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = linkDecorator;
7
- var _roundRect = require("../core/round-rect.js");
8
- // class Line extends Component {
9
- // get fromEnd(): LinkEnd | undefined
10
- // get toEnd(): LinkEnd | undefined
11
- // get from(): LinkEndConfig
12
- // get to(): LinkEndConfig
13
- // }
14
-
15
- // class LinkEnd {
16
- // component: Component
17
- // anchor: Anchor
18
- // position: POSITION
19
- // fromto: 'from' | 'to'
20
- // }
21
-
22
- function linkDecorator(component, context, delta /* 1 to 0 */) {
23
- var rendered = false;
24
- if (!component.isLine()) {
25
- return;
26
- }
27
- const {
28
- fromEnd,
29
- toEnd
30
- } = component;
31
- [fromEnd, toEnd].filter(Boolean).forEach(end => {
32
- const {
33
- component,
34
- anchor
35
- } = end;
36
- if (!anchor) {
37
- return;
38
- }
39
- const {
40
- name,
41
- position
42
- } = anchor || {};
43
- if (!name || !position) {
44
- return;
45
- }
46
- var {
47
- x,
48
- y
49
- } = position || {};
50
- var {
51
- x,
52
- y
53
- } = component.transcoordS2C(x, y, component.rootModel);
54
- x += 8;
55
- y += 20;
56
- context.font = '12px Arial';
57
- let metrics = context.measureText(name);
58
- context.fillStyle = '#FF0000';
59
- (0, _roundRect.roundRect)(context, x - metrics.actualBoundingBoxLeft - 4, y - metrics.actualBoundingBoxAscent - 4, metrics.actualBoundingBoxLeft + metrics.actualBoundingBoxRight + 4 * 2, metrics.actualBoundingBoxAscent + metrics.actualBoundingBoxDescent + 4 * 2, 4 /* round */, true /* fill */, false /* stroke */);
60
- context.fillStyle = 'white';
61
- context.fillText(name, x, y);
62
- rendered = true;
63
- });
64
- return rendered;
65
- }
66
- //# sourceMappingURL=link-decorator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"link-decorator.js","names":["_roundRect","require","linkDecorator","component","context","delta","rendered","isLine","fromEnd","toEnd","filter","Boolean","forEach","end","anchor","name","position","x","y","transcoordS2C","rootModel","font","metrics","measureText","fillStyle","roundRect","actualBoundingBoxLeft","actualBoundingBoxAscent","actualBoundingBoxRight","actualBoundingBoxDescent","fillText"],"sources":["../../src/decorator/link-decorator.js"],"sourcesContent":["// class Line extends Component {\n// get fromEnd(): LinkEnd | undefined\n// get toEnd(): LinkEnd | undefined\n// get from(): LinkEndConfig\n// get to(): LinkEndConfig\n// }\n\n// class LinkEnd {\n// component: Component\n// anchor: Anchor\n// position: POSITION\n// fromto: 'from' | 'to'\n// }\n\nimport { roundRect } from '../core/round-rect.js'\n\nexport default function linkDecorator(component, context, delta /* 1 to 0 */) {\n var rendered = false\n\n if (!component.isLine()) {\n return\n }\n\n const { fromEnd, toEnd } = component\n\n ;[fromEnd, toEnd].filter(Boolean).forEach(end => {\n const { component, anchor } = end\n\n if (!anchor) {\n return\n }\n\n const { name, position } = anchor || {}\n\n if (!name || !position) {\n return\n }\n\n var { x, y } = position || {}\n\n var { x, y } = component.transcoordS2C(x, y, component.rootModel)\n x += 8\n y += 20\n\n context.font = '12px Arial'\n let metrics = context.measureText(name)\n\n context.fillStyle = '#FF0000'\n roundRect(\n context,\n x - metrics.actualBoundingBoxLeft - 4,\n y - metrics.actualBoundingBoxAscent - 4,\n metrics.actualBoundingBoxLeft + metrics.actualBoundingBoxRight + 4 * 2,\n metrics.actualBoundingBoxAscent + metrics.actualBoundingBoxDescent + 4 * 2,\n 4 /* round */,\n true /* fill */,\n false /* stroke */\n )\n\n context.fillStyle = 'white'\n context.fillText(name, x, y)\n\n rendered = true\n })\n\n return rendered\n}\n"],"mappings":";;;;;;AAcA,IAAAA,UAAA,GAAAC,OAAA;AAdA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAIe,SAASC,aAAaA,CAACC,SAAS,EAAEC,OAAO,EAAEC,KAAK,CAAC,cAAc;EAC5E,IAAIC,QAAQ,GAAG,KAAK;EAEpB,IAAI,CAACH,SAAS,CAACI,MAAM,CAAC,CAAC,EAAE;IACvB;EACF;EAEA,MAAM;IAAEC,OAAO;IAAEC;EAAM,CAAC,GAAGN,SAAS;EAEnC,CAACK,OAAO,EAAEC,KAAK,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC,CAACC,OAAO,CAACC,GAAG,IAAI;IAC/C,MAAM;MAAEV,SAAS;MAAEW;IAAO,CAAC,GAAGD,GAAG;IAEjC,IAAI,CAACC,MAAM,EAAE;MACX;IACF;IAEA,MAAM;MAAEC,IAAI;MAAEC;IAAS,CAAC,GAAGF,MAAM,IAAI,CAAC,CAAC;IAEvC,IAAI,CAACC,IAAI,IAAI,CAACC,QAAQ,EAAE;MACtB;IACF;IAEA,IAAI;MAAEC,CAAC;MAAEC;IAAE,CAAC,GAAGF,QAAQ,IAAI,CAAC,CAAC;IAE7B,IAAI;MAAEC,CAAC;MAAEC;IAAE,CAAC,GAAGf,SAAS,CAACgB,aAAa,CAACF,CAAC,EAAEC,CAAC,EAAEf,SAAS,CAACiB,SAAS,CAAC;IACjEH,CAAC,IAAI,CAAC;IACNC,CAAC,IAAI,EAAE;IAEPd,OAAO,CAACiB,IAAI,GAAG,YAAY;IAC3B,IAAIC,OAAO,GAAGlB,OAAO,CAACmB,WAAW,CAACR,IAAI,CAAC;IAEvCX,OAAO,CAACoB,SAAS,GAAG,SAAS;IAC7B,IAAAC,oBAAS,EACPrB,OAAO,EACPa,CAAC,GAAGK,OAAO,CAACI,qBAAqB,GAAG,CAAC,EACrCR,CAAC,GAAGI,OAAO,CAACK,uBAAuB,GAAG,CAAC,EACvCL,OAAO,CAACI,qBAAqB,GAAGJ,OAAO,CAACM,sBAAsB,GAAG,CAAC,GAAG,CAAC,EACtEN,OAAO,CAACK,uBAAuB,GAAGL,OAAO,CAACO,wBAAwB,GAAG,CAAC,GAAG,CAAC,EAC1E,CAAC,CAAC,aACF,IAAI,CAAC,YACL,KAAK,CAAC,YACR,CAAC;IAEDzB,OAAO,CAACoB,SAAS,GAAG,OAAO;IAC3BpB,OAAO,CAAC0B,QAAQ,CAACf,IAAI,EAAEE,CAAC,EAAEC,CAAC,CAAC;IAE5BZ,QAAQ,GAAG,IAAI;EACjB,CAAC,CAAC;EAEF,OAAOA,QAAQ;AACjB","ignoreList":[]}
@@ -1,37 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = gradation;
7
- /*
8
- * Copyright © HatioLab Inc. All rights reserved.
9
- */
10
-
11
- function gradation(client, ctx, model) {
12
- var {
13
- type,
14
- subType,
15
- from,
16
- to,
17
- colors
18
- } = model;
19
- switch (subType) {
20
- case 'linear':
21
- var grad = ctx.createLinearGradient(from.x, from.y, to.x, to.y);
22
- break;
23
- case 'radial':
24
- var grad = ctx.createRadialGradient(from.x, from.y, from.r, to.x, to.y, to.r);
25
- break;
26
- default:
27
- var grad = ctx.createLinearGradient(from.x, from.y, to.x, to.y);
28
- }
29
- if (colors) {
30
- colors.forEach(function (obj) {
31
- grad.addColorStop(obj.endPoint, obj.color);
32
- });
33
- ctx.fillStyle = grad;
34
- ctx.fill();
35
- }
36
- }
37
- //# sourceMappingURL=gradation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gradation.js","names":["gradation","client","ctx","model","type","subType","from","to","colors","grad","createLinearGradient","x","y","createRadialGradient","r","forEach","obj","addColorStop","endPoint","color","fillStyle","fill"],"sources":["../../src/effect/gradation.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nexport default function gradation(client, ctx, model) {\n var { type, subType, from, to, colors } = model\n\n switch (subType) {\n case 'linear':\n var grad = ctx.createLinearGradient(from.x, from.y, to.x, to.y)\n break\n case 'radial':\n var grad = ctx.createRadialGradient(from.x, from.y, from.r, to.x, to.y, to.r)\n break\n default:\n var grad = ctx.createLinearGradient(from.x, from.y, to.x, to.y)\n }\n\n if (colors) {\n colors.forEach(function(obj) {\n grad.addColorStop(obj.endPoint, obj.color)\n })\n\n ctx.fillStyle = grad\n ctx.fill()\n }\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;;AAEe,SAASA,SAASA,CAACC,MAAM,EAAEC,GAAG,EAAEC,KAAK,EAAE;EACpD,IAAI;IAAEC,IAAI;IAAEC,OAAO;IAAEC,IAAI;IAAEC,EAAE;IAAEC;EAAO,CAAC,GAAGL,KAAK;EAE/C,QAAQE,OAAO;IACb,KAAK,QAAQ;MACX,IAAII,IAAI,GAAGP,GAAG,CAACQ,oBAAoB,CAACJ,IAAI,CAACK,CAAC,EAAEL,IAAI,CAACM,CAAC,EAAEL,EAAE,CAACI,CAAC,EAAEJ,EAAE,CAACK,CAAC,CAAC;MAC/D;IACF,KAAK,QAAQ;MACX,IAAIH,IAAI,GAAGP,GAAG,CAACW,oBAAoB,CAACP,IAAI,CAACK,CAAC,EAAEL,IAAI,CAACM,CAAC,EAAEN,IAAI,CAACQ,CAAC,EAAEP,EAAE,CAACI,CAAC,EAAEJ,EAAE,CAACK,CAAC,EAAEL,EAAE,CAACO,CAAC,CAAC;MAC7E;IACF;MACE,IAAIL,IAAI,GAAGP,GAAG,CAACQ,oBAAoB,CAACJ,IAAI,CAACK,CAAC,EAAEL,IAAI,CAACM,CAAC,EAAEL,EAAE,CAACI,CAAC,EAAEJ,EAAE,CAACK,CAAC,CAAC;EACnE;EAEA,IAAIJ,MAAM,EAAE;IACVA,MAAM,CAACO,OAAO,CAAC,UAASC,GAAG,EAAE;MAC3BP,IAAI,CAACQ,YAAY,CAACD,GAAG,CAACE,QAAQ,EAAEF,GAAG,CAACG,KAAK,CAAC;IAC5C,CAAC,CAAC;IAEFjB,GAAG,CAACkB,SAAS,GAAGX,IAAI;IACpBP,GAAG,CAACmB,IAAI,CAAC,CAAC;EACZ;AACF","ignoreList":[]}
@@ -1,23 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = effect;
7
- var _gradation = _interopRequireDefault(require("./gradation.js"));
8
- var _shadow = require("./shadow.js");
9
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
- /*
11
- * Copyright © HatioLab Inc. All rights reserved.
12
- */
13
-
14
- var registry = {
15
- gradation: _gradation.default,
16
- shadow: _shadow.setShadow
17
- };
18
- function effect(client, context, model) {
19
- var effect = registry[model.type];
20
- if (!effect) return;
21
- effect(client, context, model);
22
- }
23
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_gradation","_interopRequireDefault","require","_shadow","e","__esModule","default","registry","gradation","shadow","setShadow","effect","client","context","model","type"],"sources":["../../src/effect/index.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport gradation from './gradation.js'\nimport { setShadow } from './shadow.js'\n\nvar registry = {\n gradation,\n shadow: setShadow\n}\n\nexport default function effect(client, context, model) {\n var effect = registry[model.type]\n if (!effect) return\n\n effect(client, context, model)\n}\n"],"mappings":";;;;;;AAIA,IAAAA,UAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAAuC,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AALvC;AACA;AACA;;AAKA,IAAIG,QAAQ,GAAG;EACbC,SAAS,EAATA,kBAAS;EACTC,MAAM,EAAEC;AACV,CAAC;AAEc,SAASC,MAAMA,CAACC,MAAM,EAAEC,OAAO,EAAEC,KAAK,EAAE;EACrD,IAAIH,MAAM,GAAGJ,QAAQ,CAACO,KAAK,CAACC,IAAI,CAAC;EACjC,IAAI,CAACJ,MAAM,EAAE;EAEbA,MAAM,CAACC,MAAM,EAAEC,OAAO,EAAEC,KAAK,CAAC;AAChC","ignoreList":[]}
@@ -1,33 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.resetShadow = resetShadow;
7
- exports.setShadow = setShadow;
8
- var _const = require("../const.js");
9
- /*
10
- * Copyright © HatioLab Inc. All rights reserved.
11
- */
12
-
13
- const DEFAULT_SCALE = {
14
- x: 1,
15
- y: 1
16
- };
17
- function setShadow(context, shadow, component) {
18
- var {
19
- left = 0,
20
- top = 0,
21
- blurSize = 0,
22
- color = 'transparent'
23
- } = shadow;
24
- var scale = component.rootModel.get('scale') || DEFAULT_SCALE;
25
- context.shadowOffsetX = left * scale.x * _const.DPPX;
26
- context.shadowOffsetY = top * scale.y * _const.DPPX;
27
- context.shadowBlur = blurSize * scale.x * _const.DPPX;
28
- context.shadowColor = color;
29
- }
30
- function resetShadow(context) {
31
- context.shadowColor = 'transparent';
32
- }
33
- //# sourceMappingURL=shadow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"shadow.js","names":["_const","require","DEFAULT_SCALE","x","y","setShadow","context","shadow","component","left","top","blurSize","color","scale","rootModel","get","shadowOffsetX","DPPX","shadowOffsetY","shadowBlur","shadowColor","resetShadow"],"sources":["../../src/effect/shadow.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nconst DEFAULT_SCALE = {\n x: 1,\n y: 1\n}\n\nimport { DPPX } from '../const.js'\n\nexport function setShadow(context, shadow, component) {\n var { left = 0, top = 0, blurSize = 0, color = 'transparent' } = shadow\n\n var scale = component.rootModel.get('scale') || DEFAULT_SCALE\n\n context.shadowOffsetX = left * scale.x * DPPX\n context.shadowOffsetY = top * scale.y * DPPX\n context.shadowBlur = blurSize * scale.x * DPPX\n context.shadowColor = color\n}\n\nexport function resetShadow(context) {\n context.shadowColor = 'transparent'\n}\n"],"mappings":";;;;;;;AASA,IAAAA,MAAA,GAAAC,OAAA;AATA;AACA;AACA;;AAEA,MAAMC,aAAa,GAAG;EACpBC,CAAC,EAAE,CAAC;EACJC,CAAC,EAAE;AACL,CAAC;AAIM,SAASC,SAASA,CAACC,OAAO,EAAEC,MAAM,EAAEC,SAAS,EAAE;EACpD,IAAI;IAAEC,IAAI,GAAG,CAAC;IAAEC,GAAG,GAAG,CAAC;IAAEC,QAAQ,GAAG,CAAC;IAAEC,KAAK,GAAG;EAAc,CAAC,GAAGL,MAAM;EAEvE,IAAIM,KAAK,GAAGL,SAAS,CAACM,SAAS,CAACC,GAAG,CAAC,OAAO,CAAC,IAAIb,aAAa;EAE7DI,OAAO,CAACU,aAAa,GAAGP,IAAI,GAAGI,KAAK,CAACV,CAAC,GAAGc,WAAI;EAC7CX,OAAO,CAACY,aAAa,GAAGR,GAAG,GAAGG,KAAK,CAACT,CAAC,GAAGa,WAAI;EAC5CX,OAAO,CAACa,UAAU,GAAGR,QAAQ,GAAGE,KAAK,CAACV,CAAC,GAAGc,WAAI;EAC9CX,OAAO,CAACc,WAAW,GAAGR,KAAK;AAC7B;AAEO,SAASS,WAAWA,CAACf,OAAO,EAAE;EACnCA,OAAO,CAACc,WAAW,GAAG,aAAa;AACrC","ignoreList":[]}
@@ -1,25 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.turn = turn;
7
- /*
8
- * Copyright © HatioLab Inc. All rights reserved.
9
- */
10
-
11
- function turn(component, params) {
12
- component.set({
13
- rotation: params.speed
14
- });
15
- t(component, params);
16
- }
17
- function t(component, params) {
18
- component.set({
19
- rotation: component.get('rotation') + params.speed
20
- });
21
- setTimeout(() => {
22
- t(component, params);
23
- }, 100);
24
- }
25
- //# sourceMappingURL=turn.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"turn.js","names":["turn","component","params","set","rotation","speed","t","get","setTimeout"],"sources":["../../src/effect/turn.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nexport function turn(component, params) {\n component.set({ rotation: params.speed })\n t(component, params)\n}\n\nfunction t(component, params) {\n component.set({ rotation: component.get('rotation') + params.speed })\n setTimeout(() => {\n t(component, params)\n }, 100)\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;;AAEO,SAASA,IAAIA,CAACC,SAAS,EAAEC,MAAM,EAAE;EACtCD,SAAS,CAACE,GAAG,CAAC;IAAEC,QAAQ,EAAEF,MAAM,CAACG;EAAM,CAAC,CAAC;EACzCC,CAAC,CAACL,SAAS,EAAEC,MAAM,CAAC;AACtB;AAEA,SAASI,CAACA,CAACL,SAAS,EAAEC,MAAM,EAAE;EAC5BD,SAAS,CAACE,GAAG,CAAC;IAAEC,QAAQ,EAAEH,SAAS,CAACM,GAAG,CAAC,UAAU,CAAC,GAAGL,MAAM,CAACG;EAAM,CAAC,CAAC;EACrEG,UAAU,CAAC,MAAM;IACfF,CAAC,CAACL,SAAS,EAAEC,MAAM,CAAC;EACtB,CAAC,EAAE,GAAG,CAAC;AACT","ignoreList":[]}
@@ -1,76 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _eventPump = _interopRequireDefault(require("./event-pump.js"));
8
- var ComponentSelector = _interopRequireWildcard(require("../model/selector.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
- class EventEngine {
17
- constructor(root) {
18
- this.eventMaps = [];
19
- this.root = root;
20
- if (root.eventMap) {
21
- this.add(root, root.eventMap);
22
- }
23
- }
24
- set root(root) {
25
- this._root = root;
26
- }
27
- get root() {
28
- return this._root;
29
- }
30
- stop() {
31
- this.eventMaps.forEach(map => map.eventPump.stop());
32
- }
33
- add(listener, handlerMap) {
34
- if (!this.root) return;
35
- for (let selector in handlerMap) {
36
- let handlers = handlerMap[selector];
37
-
38
- /* 리스너가 이벤트를 핸들링하는 오브젝트가 아닌 경우 '(self)' 선택자는 사용할 수 없다. */
39
- if (selector === '(self)' && typeof listener.on === 'undefined') throw new Error('(self) selector not available when deliverer is not a event handlable object.');
40
- let deliverers = ComponentSelector.select(selector, this.root, listener);
41
- deliverers.forEach(deliverer => {
42
- var eventPump = new _eventPump.default(deliverer);
43
- eventPump.on(listener, handlers);
44
- eventPump.start();
45
- this.eventMaps.push({
46
- eventPump,
47
- listener,
48
- handlerMap,
49
- deliverer
50
- });
51
- });
52
- }
53
- }
54
- remove(listener, handlerMap) {
55
- var maps = this.eventMaps.slice(0); // Clone Array
56
- for (let i = 0; i < maps.length; i++) {
57
- let item = maps[i];
58
- if (item.listener === listener && (!handlerMap || item.handlerMap === handlerMap)) {
59
- this.eventMaps.splice(i, 1);
60
- item.eventPump.dispose();
61
- }
62
- }
63
- }
64
- clear() {
65
- var maps = this.eventMaps.slice(0); // Clone Array
66
-
67
- maps.forEach(map => map.eventPump.dispose());
68
- this.eventMaps = [];
69
- }
70
- dispose() {
71
- this.stop();
72
- this.clear();
73
- }
74
- }
75
- exports.default = EventEngine;
76
- //# sourceMappingURL=event-engine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-engine.js","names":["_eventPump","_interopRequireDefault","require","ComponentSelector","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","EventEngine","constructor","root","eventMaps","eventMap","add","_root","stop","forEach","map","eventPump","listener","handlerMap","selector","handlers","on","Error","deliverers","select","deliverer","EventPump","start","push","remove","maps","slice","length","item","splice","dispose","clear","exports"],"sources":["../../src/event/event-engine.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport EventPump from './event-pump.js'\nimport * as ComponentSelector from '../model/selector.js'\n\nexport default class EventEngine {\n constructor(root) {\n this.eventMaps = []\n this.root = root\n\n if (root.eventMap) {\n this.add(root, root.eventMap)\n }\n }\n\n set root(root) {\n this._root = root\n }\n\n get root() {\n return this._root\n }\n\n stop() {\n this.eventMaps.forEach(map => map.eventPump.stop())\n }\n\n add(listener, handlerMap) {\n if (!this.root) return\n\n for (let selector in handlerMap) {\n let handlers = handlerMap[selector]\n\n /* 리스너가 이벤트를 핸들링하는 오브젝트가 아닌 경우 '(self)' 선택자는 사용할 수 없다. */\n if (selector === '(self)' && typeof listener.on === 'undefined')\n throw new Error('(self) selector not available when deliverer is not a event handlable object.')\n\n let deliverers = ComponentSelector.select(selector, this.root, listener)\n\n deliverers.forEach(deliverer => {\n var eventPump = new EventPump(deliverer)\n eventPump.on(listener, handlers)\n eventPump.start()\n\n this.eventMaps.push({\n eventPump,\n listener,\n handlerMap,\n deliverer\n })\n })\n }\n }\n\n remove(listener, handlerMap) {\n var maps = this.eventMaps.slice(0) // Clone Array\n for (let i = 0; i < maps.length; i++) {\n let item = maps[i]\n if (item.listener === listener && (!handlerMap || item.handlerMap === handlerMap)) {\n this.eventMaps.splice(i, 1)\n item.eventPump.dispose()\n }\n }\n }\n\n clear() {\n var maps = this.eventMaps.slice(0) // Clone Array\n\n maps.forEach(map => map.eventPump.dispose())\n\n this.eventMaps = []\n }\n\n dispose() {\n this.stop()\n this.clear()\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,92 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var Selector = _interopRequireWildcard(require("../model/selector.js"));
8
- var _logger = require("../core/logger.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
- /*
12
- * Copyright © HatioLab Inc. All rights reserved.
13
- */
14
-
15
- function control(root, listener, handlers, event, args) {
16
- for (let selector in handlers) {
17
- let event_map = handlers[selector];
18
- if (Selector.match(selector, event.origin, listener, root)) {
19
- for (let event_name in event_map) {
20
- let handler = event_map[event_name];
21
- if (event_name == event.name) {
22
- event.listener = listener;
23
-
24
- /* 실행컨텍스트는 리스너가 되도록 한다. */
25
- handler.apply(listener, args);
26
- }
27
- }
28
- }
29
- }
30
- }
31
- function event_handler_fn() {
32
- var args = arguments;
33
- var e = args[args.length - 1];
34
- var event_pump = this.event_pump;
35
- event_pump.listeners.forEach(listener => {
36
- control(event_pump.deliverer, listener.listener, listener.cloned_handlers, e, args);
37
- });
38
- }
39
- class EventPump {
40
- /*
41
- * Construct a new event pump.
42
- *
43
- * param [Object] deliverer target object to listen events that the object fires or delegates
44
- */
45
- constructor(deliverer) {
46
- if (typeof deliverer.on === 'undefined') throw new Error('Deliverer should be a event handlable object.');
47
- this.deliverer = deliverer;
48
- this.listeners = [];
49
- }
50
- start() {
51
- this.deliverer.on('(all)', event_handler_fn, {
52
- event_pump: this
53
- });
54
- }
55
- stop() {
56
- this.deliverer.off('(all)', event_handler_fn);
57
- }
58
- on(listener, handlers) {
59
- var cloned_handlers = Object.assign({}, handlers); // clone object
60
-
61
- var selectors = Object.keys(cloned_handlers);
62
- selectors.forEach(selector => {
63
- if (selector.indexOf('?') == 0) {
64
- let handler = cloned_handlers[selector];
65
- let variable = selector.substr(1);
66
- let value = listener.get(variable);
67
- delete cloned_handlers[selector];
68
- if (value) cloned_handlers[value] = handler;else (0, _logger.warn)('EventPump#on', `variable #{selector} is not evaluated on listener`);
69
- }
70
- });
71
- this.listeners.push({
72
- listener: listener,
73
- handlers: handlers,
74
- cloned_handlers: cloned_handlers
75
- });
76
- }
77
- off(listener, handlers) {
78
- for (let i = 0; i < this.listeners.length; i++) {
79
- let item = this.listeners[i];
80
- if (item.listener === listener && (!handlers || item.handlers === handlers)) this.listeners.splice(i, 1);
81
- }
82
- }
83
- clear() {
84
- this.listeners = [];
85
- }
86
- dispose() {
87
- this.stop();
88
- this.clear();
89
- }
90
- }
91
- exports.default = EventPump;
92
- //# sourceMappingURL=event-pump.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-pump.js","names":["Selector","_interopRequireWildcard","require","_logger","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","control","root","listener","handlers","event","args","selector","event_map","match","origin","event_name","handler","name","apply","event_handler_fn","arguments","length","event_pump","listeners","forEach","deliverer","cloned_handlers","EventPump","constructor","on","Error","start","stop","off","assign","selectors","keys","indexOf","variable","substr","value","warn","push","item","splice","clear","dispose","exports"],"sources":["../../src/event/event-pump.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nimport * as Selector from '../model/selector.js'\nimport { warn } from '../core/logger.js'\n\nfunction control(root, listener, handlers, event, args) {\n for (let selector in handlers) {\n let event_map = handlers[selector]\n\n if (Selector.match(selector, event.origin, listener, root)) {\n for (let event_name in event_map) {\n let handler = event_map[event_name]\n\n if (event_name == event.name) {\n event.listener = listener\n\n /* 실행컨텍스트는 리스너가 되도록 한다. */\n handler.apply(listener, args)\n }\n }\n }\n }\n}\n\nfunction event_handler_fn() {\n var args = arguments\n var e = args[args.length - 1]\n var event_pump = this.event_pump\n\n event_pump.listeners.forEach(listener => {\n control(event_pump.deliverer, listener.listener, listener.cloned_handlers, e, args)\n })\n}\n\nexport default class EventPump {\n /*\n * Construct a new event pump.\n *\n * param [Object] deliverer target object to listen events that the object fires or delegates\n */\n constructor(deliverer) {\n if (typeof deliverer.on === 'undefined') throw new Error('Deliverer should be a event handlable object.')\n\n this.deliverer = deliverer\n this.listeners = []\n }\n\n start() {\n this.deliverer.on('(all)', event_handler_fn, {\n event_pump: this\n })\n }\n\n stop() {\n this.deliverer.off('(all)', event_handler_fn)\n }\n\n on(listener, handlers) {\n var cloned_handlers = Object.assign({}, handlers) // clone object\n\n var selectors = Object.keys(cloned_handlers)\n\n selectors.forEach(selector => {\n if (selector.indexOf('?') == 0) {\n let handler = cloned_handlers[selector]\n let variable = selector.substr(1)\n let value = listener.get(variable)\n delete cloned_handlers[selector]\n\n if (value) cloned_handlers[value] = handler\n else warn('EventPump#on', `variable #{selector} is not evaluated on listener`)\n }\n })\n\n this.listeners.push({\n listener: listener,\n handlers: handlers,\n cloned_handlers: cloned_handlers\n })\n }\n\n off(listener, handlers) {\n for (let i = 0; i < this.listeners.length; i++) {\n let item = this.listeners[i]\n if (item.listener === listener && (!handlers || item.handlers === handlers)) this.listeners.splice(i, 1)\n }\n }\n\n clear() {\n this.listeners = []\n }\n\n dispose() {\n this.stop()\n this.clear()\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,97 +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
- class StandAloneTracker {
12
- constructor(target, handlers, self) {
13
- this.started = false;
14
- if (target) this.target = target;
15
- this.handlers = handlers;
16
- var self = self || this.target || this;
17
- this.boundhandler = {};
18
- for (let ev in handlers) {
19
- let handler = handlers[ev];
20
- if (typeof handler == 'function') {
21
- this.boundhandler[ev] = handler.bind(self);
22
- }
23
- }
24
- }
25
- dispose() {
26
- this.off();
27
- }
28
- on() {
29
- if (this.started) return;
30
- for (let ev in this.boundhandler) {
31
- let handler = this.boundhandler[ev];
32
- this.target.on(ev, handler);
33
- }
34
- this.started = true;
35
- }
36
- off() {
37
- for (let ev in this.boundhandler) {
38
- let handler = this.boundhandler[ev];
39
- this.target.off(ev, handler);
40
- }
41
- this.started = false;
42
- }
43
- }
44
- class EventTracker {
45
- static get StandAlone() {
46
- return StandAloneTracker;
47
- }
48
- constructor() {
49
- this.trackers = [];
50
- }
51
- set selector(selector) {
52
- this._selector = selector;
53
- }
54
- on(target, handlers, listener, context) {
55
- var deliverers = null;
56
- switch (typeof target) {
57
- case 'object':
58
- deliverers = [target];
59
- break;
60
- case 'string':
61
- deliverers = this._selector.select(target, listener);
62
- break;
63
- default:
64
- deliverers = [];
65
- }
66
- if (!(deliverers instanceof Array)) deliverers = [deliverers];
67
- deliverers.forEach(deliverer => {
68
- let tracker = new StandAloneTracker(deliverer, handlers, {
69
- listener,
70
- deliverer,
71
- context: context || deliverer
72
- });
73
- this.trackers.push(tracker);
74
- tracker.on();
75
- });
76
- }
77
- off(target, handlers) {
78
- var idxs = [];
79
- for (let i = 0; i < this.trackers.length; i++) {
80
- let tracker = this.trackers[i];
81
- if (target === tracker.target && (!handlers || handlers === tracker.handlers)) idxs.push(i);
82
- }
83
- idxs.reverse().forEach(idx => this.trackers.splice(idx, 1)[0].off());
84
- }
85
- all() {
86
- return this.trackers.map(tracker => {
87
- return tracker;
88
- });
89
- }
90
- dispose() {
91
- this.trackers.forEach(tracker => tracker.dispose());
92
- this.trackers = [];
93
- this.selector = null;
94
- }
95
- }
96
- exports.default = EventTracker;
97
- //# sourceMappingURL=event-tracker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-tracker.js","names":["StandAloneTracker","constructor","target","handlers","self","started","boundhandler","ev","handler","bind","dispose","off","on","EventTracker","StandAlone","trackers","selector","_selector","listener","context","deliverers","select","Array","forEach","deliverer","tracker","push","idxs","i","length","reverse","idx","splice","all","map","exports","default"],"sources":["../../src/event/event-tracker.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nclass StandAloneTracker {\n constructor(target, handlers, self) {\n this.started = false\n\n if (target) this.target = target\n\n this.handlers = handlers\n\n var self = self || this.target || this\n\n this.boundhandler = {}\n\n for (let ev in handlers) {\n let handler = handlers[ev]\n\n if (typeof handler == 'function') {\n this.boundhandler[ev] = handler.bind(self)\n }\n }\n }\n\n dispose() {\n this.off()\n }\n\n on() {\n if (this.started) return\n\n for (let ev in this.boundhandler) {\n let handler = this.boundhandler[ev]\n\n this.target.on(ev, handler)\n }\n\n this.started = true\n }\n\n off() {\n for (let ev in this.boundhandler) {\n let handler = this.boundhandler[ev]\n\n this.target.off(ev, handler)\n }\n\n this.started = false\n }\n}\n\nexport default class EventTracker {\n static get StandAlone() {\n return StandAloneTracker\n }\n\n constructor() {\n this.trackers = []\n }\n\n set selector(selector) {\n this._selector = selector\n }\n\n on(target, handlers, listener, context) {\n var deliverers = null\n\n switch (typeof target) {\n case 'object':\n deliverers = [target]\n break\n case 'string':\n deliverers = this._selector.select(target, listener)\n break\n default:\n deliverers = []\n }\n\n if (!(deliverers instanceof Array)) deliverers = [deliverers]\n\n deliverers.forEach(deliverer => {\n let tracker = new StandAloneTracker(deliverer, handlers, {\n listener,\n deliverer,\n context: context || deliverer\n })\n\n this.trackers.push(tracker)\n tracker.on()\n })\n }\n\n off(target, handlers) {\n var idxs = []\n\n for (let i = 0; i < this.trackers.length; i++) {\n let tracker = this.trackers[i]\n\n if (target === tracker.target && (!handlers || handlers === tracker.handlers)) idxs.push(i)\n }\n\n idxs.reverse().forEach(idx => this.trackers.splice(idx, 1)[0].off())\n }\n\n all() {\n return this.trackers.map(tracker => {\n return tracker\n })\n }\n\n dispose() {\n this.trackers.forEach(tracker => tracker.dispose())\n this.trackers = []\n this.selector = null\n }\n}\n"],"mappings":";;;;;;AAAA;AACA;AACA;;AAEA,MAAMA,iBAAiB,CAAC;EACtBC,WAAWA,CAACC,MAAM,EAAEC,QAAQ,EAAEC,IAAI,EAAE;IAClC,IAAI,CAACC,OAAO,GAAG,KAAK;IAEpB,IAAIH,MAAM,EAAE,IAAI,CAACA,MAAM,GAAGA,MAAM;IAEhC,IAAI,CAACC,QAAQ,GAAGA,QAAQ;IAExB,IAAIC,IAAI,GAAGA,IAAI,IAAI,IAAI,CAACF,MAAM,IAAI,IAAI;IAEtC,IAAI,CAACI,YAAY,GAAG,CAAC,CAAC;IAEtB,KAAK,IAAIC,EAAE,IAAIJ,QAAQ,EAAE;MACvB,IAAIK,OAAO,GAAGL,QAAQ,CAACI,EAAE,CAAC;MAE1B,IAAI,OAAOC,OAAO,IAAI,UAAU,EAAE;QAChC,IAAI,CAACF,YAAY,CAACC,EAAE,CAAC,GAAGC,OAAO,CAACC,IAAI,CAACL,IAAI,CAAC;MAC5C;IACF;EACF;EAEAM,OAAOA,CAAA,EAAG;IACR,IAAI,CAACC,GAAG,CAAC,CAAC;EACZ;EAEAC,EAAEA,CAAA,EAAG;IACH,IAAI,IAAI,CAACP,OAAO,EAAE;IAElB,KAAK,IAAIE,EAAE,IAAI,IAAI,CAACD,YAAY,EAAE;MAChC,IAAIE,OAAO,GAAG,IAAI,CAACF,YAAY,CAACC,EAAE,CAAC;MAEnC,IAAI,CAACL,MAAM,CAACU,EAAE,CAACL,EAAE,EAAEC,OAAO,CAAC;IAC7B;IAEA,IAAI,CAACH,OAAO,GAAG,IAAI;EACrB;EAEAM,GAAGA,CAAA,EAAG;IACJ,KAAK,IAAIJ,EAAE,IAAI,IAAI,CAACD,YAAY,EAAE;MAChC,IAAIE,OAAO,GAAG,IAAI,CAACF,YAAY,CAACC,EAAE,CAAC;MAEnC,IAAI,CAACL,MAAM,CAACS,GAAG,CAACJ,EAAE,EAAEC,OAAO,CAAC;IAC9B;IAEA,IAAI,CAACH,OAAO,GAAG,KAAK;EACtB;AACF;AAEe,MAAMQ,YAAY,CAAC;EAChC,WAAWC,UAAUA,CAAA,EAAG;IACtB,OAAOd,iBAAiB;EAC1B;EAEAC,WAAWA,CAAA,EAAG;IACZ,IAAI,CAACc,QAAQ,GAAG,EAAE;EACpB;EAEA,IAAIC,QAAQA,CAACA,QAAQ,EAAE;IACrB,IAAI,CAACC,SAAS,GAAGD,QAAQ;EAC3B;EAEAJ,EAAEA,CAACV,MAAM,EAAEC,QAAQ,EAAEe,QAAQ,EAAEC,OAAO,EAAE;IACtC,IAAIC,UAAU,GAAG,IAAI;IAErB,QAAQ,OAAOlB,MAAM;MACnB,KAAK,QAAQ;QACXkB,UAAU,GAAG,CAAClB,MAAM,CAAC;QACrB;MACF,KAAK,QAAQ;QACXkB,UAAU,GAAG,IAAI,CAACH,SAAS,CAACI,MAAM,CAACnB,MAAM,EAAEgB,QAAQ,CAAC;QACpD;MACF;QACEE,UAAU,GAAG,EAAE;IACnB;IAEA,IAAI,EAAEA,UAAU,YAAYE,KAAK,CAAC,EAAEF,UAAU,GAAG,CAACA,UAAU,CAAC;IAE7DA,UAAU,CAACG,OAAO,CAACC,SAAS,IAAI;MAC9B,IAAIC,OAAO,GAAG,IAAIzB,iBAAiB,CAACwB,SAAS,EAAErB,QAAQ,EAAE;QACvDe,QAAQ;QACRM,SAAS;QACTL,OAAO,EAAEA,OAAO,IAAIK;MACtB,CAAC,CAAC;MAEF,IAAI,CAACT,QAAQ,CAACW,IAAI,CAACD,OAAO,CAAC;MAC3BA,OAAO,CAACb,EAAE,CAAC,CAAC;IACd,CAAC,CAAC;EACJ;EAEAD,GAAGA,CAACT,MAAM,EAAEC,QAAQ,EAAE;IACpB,IAAIwB,IAAI,GAAG,EAAE;IAEb,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAACb,QAAQ,CAACc,MAAM,EAAED,CAAC,EAAE,EAAE;MAC7C,IAAIH,OAAO,GAAG,IAAI,CAACV,QAAQ,CAACa,CAAC,CAAC;MAE9B,IAAI1B,MAAM,KAAKuB,OAAO,CAACvB,MAAM,KAAK,CAACC,QAAQ,IAAIA,QAAQ,KAAKsB,OAAO,CAACtB,QAAQ,CAAC,EAAEwB,IAAI,CAACD,IAAI,CAACE,CAAC,CAAC;IAC7F;IAEAD,IAAI,CAACG,OAAO,CAAC,CAAC,CAACP,OAAO,CAACQ,GAAG,IAAI,IAAI,CAAChB,QAAQ,CAACiB,MAAM,CAACD,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAACpB,GAAG,CAAC,CAAC,CAAC;EACtE;EAEAsB,GAAGA,CAAA,EAAG;IACJ,OAAO,IAAI,CAAClB,QAAQ,CAACmB,GAAG,CAACT,OAAO,IAAI;MAClC,OAAOA,OAAO;IAChB,CAAC,CAAC;EACJ;EAEAf,OAAOA,CAAA,EAAG;IACR,IAAI,CAACK,QAAQ,CAACQ,OAAO,CAACE,OAAO,IAAIA,OAAO,CAACf,OAAO,CAAC,CAAC,CAAC;IACnD,IAAI,CAACK,QAAQ,GAAG,EAAE;IAClB,IAAI,CAACC,QAAQ,GAAG,IAAI;EACtB;AACF;AAACmB,OAAA,CAAAC,OAAA,GAAAvB,YAAA","ignoreList":[]}
@@ -1,21 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- Object.defineProperty(exports, "Engine", {
7
- enumerable: true,
8
- get: function () {
9
- return _eventEngine.default;
10
- }
11
- });
12
- Object.defineProperty(exports, "UAEventHandler", {
13
- enumerable: true,
14
- get: function () {
15
- return _uaEventHandler.default;
16
- }
17
- });
18
- var _eventEngine = _interopRequireDefault(require("./event-engine.js"));
19
- var _uaEventHandler = _interopRequireDefault(require("./ua-event-handler.js"));
20
- function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
21
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["_eventEngine","_interopRequireDefault","require","_uaEventHandler","e","__esModule","default"],"sources":["../../src/event/index.js"],"sourcesContent":["/*\n * Copyright © HatioLab Inc. All rights reserved.\n */\n\nexport { default as Engine } from './event-engine.js'\nexport { default as UAEventHandler } from './ua-event-handler.js'\n"],"mappings":";;;;;;;;;;;;;;;;;AAIA,IAAAA,YAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,eAAA,GAAAF,sBAAA,CAAAC,OAAA;AAAiE,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA","ignoreList":[]}