@hatiolab/things-scene 10.0.0-beta.13 → 10.0.0-beta.130

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 (471) hide show
  1. package/dist-types/animation/animate.d.ts.map +1 -1
  2. package/dist-types/animation/animations/animation.d.ts +5 -3
  3. package/dist-types/animation/animations/animation.d.ts.map +1 -1
  4. package/dist-types/animation/animations/heartbeat.d.ts +0 -7
  5. package/dist-types/animation/animations/heartbeat.d.ts.map +1 -1
  6. package/dist-types/animation/animations/waypoint.d.ts +45 -4
  7. package/dist-types/animation/animations/waypoint.d.ts.map +1 -1
  8. package/dist-types/animation/interfaces.d.ts +1 -1
  9. package/dist-types/animation/interfaces.d.ts.map +1 -1
  10. package/dist-types/clock/frame-clock.d.ts +119 -0
  11. package/dist-types/clock/frame-clock.d.ts.map +1 -0
  12. package/dist-types/clock/index.d.ts +3 -0
  13. package/dist-types/clock/index.d.ts.map +1 -0
  14. package/dist-types/command/command-migrate.d.ts.map +1 -1
  15. package/dist-types/command/snapshot-commander.d.ts.map +1 -1
  16. package/dist-types/components/audio.d.ts +8 -3
  17. package/dist-types/components/audio.d.ts.map +1 -1
  18. package/dist-types/components/component-data.d.ts +24 -0
  19. package/dist-types/components/component-data.d.ts.map +1 -1
  20. package/dist-types/components/component-drawing.d.ts.map +1 -1
  21. package/dist-types/components/component-geometry.d.ts.map +1 -1
  22. package/dist-types/components/component-hierarchy.d.ts +1 -1
  23. package/dist-types/components/component-hierarchy.d.ts.map +1 -1
  24. package/dist-types/components/component.d.ts +31 -4
  25. package/dist-types/components/component.d.ts.map +1 -1
  26. package/dist-types/components/container-abstract.d.ts +52 -11
  27. package/dist-types/components/container-abstract.d.ts.map +1 -1
  28. package/dist-types/components/container.d.ts +7 -2
  29. package/dist-types/components/container.d.ts.map +1 -1
  30. package/dist-types/components/data/data.d.ts.map +1 -1
  31. package/dist-types/components/data/evaluator.d.ts +27 -0
  32. package/dist-types/components/data/evaluator.d.ts.map +1 -1
  33. package/dist-types/components/donut.d.ts.map +1 -1
  34. package/dist-types/components/drawer/fill.d.ts.map +1 -1
  35. package/dist-types/components/drawer/stroke.d.ts.map +1 -1
  36. package/dist-types/components/ellipse.d.ts +8 -3
  37. package/dist-types/components/ellipse.d.ts.map +1 -1
  38. package/dist-types/components/generic-placeholders.d.ts +292 -0
  39. package/dist-types/components/generic-placeholders.d.ts.map +1 -0
  40. package/dist-types/components/geometry/snap-guide.d.ts +45 -0
  41. package/dist-types/components/geometry/snap-guide.d.ts.map +1 -0
  42. package/dist-types/components/geometry/transcoord.d.ts.map +1 -1
  43. package/dist-types/components/global-ref.d.ts.map +1 -1
  44. package/dist-types/components/group.d.ts +2 -0
  45. package/dist-types/components/group.d.ts.map +1 -1
  46. package/dist-types/components/html/reposition.d.ts.map +1 -1
  47. package/dist-types/components/html/shadow.d.ts +33 -1
  48. package/dist-types/components/html/shadow.d.ts.map +1 -1
  49. package/dist-types/components/html-overlay-container.d.ts +7 -2
  50. package/dist-types/components/html-overlay-container.d.ts.map +1 -1
  51. package/dist-types/components/html-overlay-element.d.ts +15 -5
  52. package/dist-types/components/html-overlay-element.d.ts.map +1 -1
  53. package/dist-types/components/image-view.d.ts +8 -3
  54. package/dist-types/components/image-view.d.ts.map +1 -1
  55. package/dist-types/components/index.d.ts +7 -0
  56. package/dist-types/components/index.d.ts.map +1 -1
  57. package/dist-types/components/info-window.d.ts +8 -3
  58. package/dist-types/components/info-window.d.ts.map +1 -1
  59. package/dist-types/components/line.d.ts +2 -1
  60. package/dist-types/components/line.d.ts.map +1 -1
  61. package/dist-types/components/local-ref.d.ts +8 -3
  62. package/dist-types/components/local-ref.d.ts.map +1 -1
  63. package/dist-types/components/mixins/connectable.d.ts +8 -3
  64. package/dist-types/components/mixins/connectable.d.ts.map +1 -1
  65. package/dist-types/components/mixins/data-source.d.ts +8 -3
  66. package/dist-types/components/mixins/data-source.d.ts.map +1 -1
  67. package/dist-types/components/mixins/gltf-component.d.ts +280 -0
  68. package/dist-types/components/mixins/gltf-component.d.ts.map +1 -0
  69. package/dist-types/components/mixins/holdable.d.ts +12 -0
  70. package/dist-types/components/mixins/holdable.d.ts.map +1 -0
  71. package/dist-types/components/mixins/html-element.d.ts +7 -2
  72. package/dist-types/components/mixins/html-element.d.ts.map +1 -1
  73. package/dist-types/components/mixins/move-handle.d.ts +17 -7
  74. package/dist-types/components/mixins/move-handle.d.ts.map +1 -1
  75. package/dist-types/components/mixins/rect-path.d.ts +8 -3
  76. package/dist-types/components/mixins/rect-path.d.ts.map +1 -1
  77. package/dist-types/components/mixins/three-d-only.d.ts +248 -0
  78. package/dist-types/components/mixins/three-d-only.d.ts.map +1 -0
  79. package/dist-types/components/mixins/value-holder.d.ts +8 -3
  80. package/dist-types/components/mixins/value-holder.d.ts.map +1 -1
  81. package/dist-types/components/mutater/path.d.ts.map +1 -1
  82. package/dist-types/components/node.d.ts +8 -3
  83. package/dist-types/components/node.d.ts.map +1 -1
  84. package/dist-types/components/outline/path-outline.d.ts.map +1 -1
  85. package/dist-types/components/polygon-container.d.ts +61 -0
  86. package/dist-types/components/polygon-container.d.ts.map +1 -0
  87. package/dist-types/components/polygon.d.ts +2 -0
  88. package/dist-types/components/polygon.d.ts.map +1 -1
  89. package/dist-types/components/polyline.d.ts +6 -0
  90. package/dist-types/components/polyline.d.ts.map +1 -1
  91. package/dist-types/components/popup-container.d.ts +25 -0
  92. package/dist-types/components/popup-container.d.ts.map +1 -0
  93. package/dist-types/components/popup.d.ts +38 -3
  94. package/dist-types/components/popup.d.ts.map +1 -1
  95. package/dist-types/components/position/popup-position.d.ts +11 -0
  96. package/dist-types/components/position/popup-position.d.ts.map +1 -1
  97. package/dist-types/components/rect.d.ts +16 -6
  98. package/dist-types/components/rect.d.ts.map +1 -1
  99. package/dist-types/components/retention/retention-manager.d.ts +9 -1
  100. package/dist-types/components/retention/retention-manager.d.ts.map +1 -1
  101. package/dist-types/components/root-container.d.ts +18 -4
  102. package/dist-types/components/root-container.d.ts.map +1 -1
  103. package/dist-types/components/ruler.d.ts +8 -3
  104. package/dist-types/components/ruler.d.ts.map +1 -1
  105. package/dist-types/components/service-component.d.ts +269 -0
  106. package/dist-types/components/service-component.d.ts.map +1 -0
  107. package/dist-types/components/shape.d.ts.map +1 -1
  108. package/dist-types/components/star.d.ts.map +1 -1
  109. package/dist-types/components/text.d.ts +8 -3
  110. package/dist-types/components/text.d.ts.map +1 -1
  111. package/dist-types/core/dom-to-image.d.ts.map +1 -1
  112. package/dist-types/core/logger.d.ts.map +1 -1
  113. package/dist-types/core/memoize.d.ts.map +1 -1
  114. package/dist-types/decorator/decorator-registry.d.ts +14 -1
  115. package/dist-types/decorator/decorator-registry.d.ts.map +1 -1
  116. package/dist-types/decorator/decorators/animated-icon-decorator.d.ts.map +1 -1
  117. package/dist-types/decorator/decorators/border-highlighting-decorator.d.ts +0 -4
  118. package/dist-types/decorator/decorators/border-highlighting-decorator.d.ts.map +1 -1
  119. package/dist-types/decorator/decorators/bouncing-arrow-decorator.d.ts +0 -3
  120. package/dist-types/decorator/decorators/bouncing-arrow-decorator.d.ts.map +1 -1
  121. package/dist-types/decorator/decorators/data-spread-decorator.d.ts +16 -0
  122. package/dist-types/decorator/decorators/data-spread-decorator.d.ts.map +1 -1
  123. package/dist-types/diagnostics/contract-inspector.d.ts +110 -0
  124. package/dist-types/diagnostics/contract-inspector.d.ts.map +1 -0
  125. package/dist-types/diagnostics/data-lag-tracker.d.ts +50 -0
  126. package/dist-types/diagnostics/data-lag-tracker.d.ts.map +1 -0
  127. package/dist-types/diagnostics/inspector.d.ts +192 -5
  128. package/dist-types/diagnostics/inspector.d.ts.map +1 -1
  129. package/dist-types/diagnostics/load-tracker.d.ts +82 -0
  130. package/dist-types/diagnostics/load-tracker.d.ts.map +1 -0
  131. package/dist-types/diagnostics/loading-overlay.d.ts +58 -0
  132. package/dist-types/diagnostics/loading-overlay.d.ts.map +1 -0
  133. package/dist-types/diagnostics/metrics.d.ts +10 -0
  134. package/dist-types/diagnostics/metrics.d.ts.map +1 -1
  135. package/dist-types/effect/shadow.d.ts +3 -1
  136. package/dist-types/effect/shadow.d.ts.map +1 -1
  137. package/dist-types/event-map/index.d.ts +1 -0
  138. package/dist-types/event-map/index.d.ts.map +1 -1
  139. package/dist-types/event-map/transition-handler.d.ts +2 -0
  140. package/dist-types/event-map/transition-handler.d.ts.map +1 -0
  141. package/dist-types/flow/auto-route.d.ts +36 -0
  142. package/dist-types/flow/auto-route.d.ts.map +1 -0
  143. package/dist-types/flow/face-anchors.d.ts +26 -0
  144. package/dist-types/flow/face-anchors.d.ts.map +1 -0
  145. package/dist-types/flow/flow-engine.d.ts +122 -0
  146. package/dist-types/flow/flow-engine.d.ts.map +1 -0
  147. package/dist-types/flow/flow-graph-coordinator.d.ts +80 -0
  148. package/dist-types/flow/flow-graph-coordinator.d.ts.map +1 -0
  149. package/dist-types/flow/flow-graph-validator.d.ts +33 -0
  150. package/dist-types/flow/flow-graph-validator.d.ts.map +1 -0
  151. package/dist-types/flow/flow-graph.d.ts +76 -0
  152. package/dist-types/flow/flow-graph.d.ts.map +1 -0
  153. package/dist-types/flow/flow-introspection.d.ts +36 -0
  154. package/dist-types/flow/flow-introspection.d.ts.map +1 -0
  155. package/dist-types/flow/flow-node.d.ts +69 -0
  156. package/dist-types/flow/flow-node.d.ts.map +1 -0
  157. package/dist-types/flow/flow-orientation-coordinator.d.ts +13 -0
  158. package/dist-types/flow/flow-orientation-coordinator.d.ts.map +1 -0
  159. package/dist-types/flow/flow-orientation.d.ts +42 -0
  160. package/dist-types/flow/flow-orientation.d.ts.map +1 -0
  161. package/dist-types/flow/flow-trace.d.ts +5 -0
  162. package/dist-types/flow/flow-trace.d.ts.map +1 -0
  163. package/dist-types/flow/index.d.ts +16 -0
  164. package/dist-types/flow/index.d.ts.map +1 -0
  165. package/dist-types/flow/segment-topology.d.ts +225 -0
  166. package/dist-types/flow/segment-topology.d.ts.map +1 -0
  167. package/dist-types/flow/station-host-inference.d.ts +23 -0
  168. package/dist-types/flow/station-host-inference.d.ts.map +1 -0
  169. package/dist-types/interfaces/event-handler.d.ts +40 -0
  170. package/dist-types/interfaces/event-handler.d.ts.map +1 -0
  171. package/dist-types/interfaces/index.d.ts +2 -0
  172. package/dist-types/interfaces/index.d.ts.map +1 -1
  173. package/dist-types/interfaces/layout.d.ts +35 -1
  174. package/dist-types/interfaces/layout.d.ts.map +1 -1
  175. package/dist-types/interfaces/providers.d.ts +27 -3
  176. package/dist-types/interfaces/providers.d.ts.map +1 -1
  177. package/dist-types/interfaces/real-object.d.ts +8 -1
  178. package/dist-types/interfaces/real-object.d.ts.map +1 -1
  179. package/dist-types/interfaces/rendering.d.ts +86 -14
  180. package/dist-types/interfaces/rendering.d.ts.map +1 -1
  181. package/dist-types/interfaces/types.d.ts +20 -1
  182. package/dist-types/interfaces/types.d.ts.map +1 -1
  183. package/dist-types/items/arrangement/centering-queue-strategy.d.ts +10 -0
  184. package/dist-types/items/arrangement/centering-queue-strategy.d.ts.map +1 -0
  185. package/dist-types/items/arrangement/gravity-strategy.d.ts +9 -0
  186. package/dist-types/items/arrangement/gravity-strategy.d.ts.map +1 -0
  187. package/dist-types/items/arrangement/grid-strategy.d.ts +11 -0
  188. package/dist-types/items/arrangement/grid-strategy.d.ts.map +1 -0
  189. package/dist-types/items/arrangement/index.d.ts +7 -0
  190. package/dist-types/items/arrangement/index.d.ts.map +1 -0
  191. package/dist-types/items/arrangement/queue-strategy.d.ts +9 -0
  192. package/dist-types/items/arrangement/queue-strategy.d.ts.map +1 -0
  193. package/dist-types/items/arrangement/shelf-strategy.d.ts +11 -0
  194. package/dist-types/items/arrangement/shelf-strategy.d.ts.map +1 -0
  195. package/dist-types/items/arrangement/stack-strategy.d.ts +9 -0
  196. package/dist-types/items/arrangement/stack-strategy.d.ts.map +1 -0
  197. package/dist-types/items/capacity-mixin.d.ts +299 -0
  198. package/dist-types/items/capacity-mixin.d.ts.map +1 -0
  199. package/dist-types/items/capacity.d.ts +53 -0
  200. package/dist-types/items/capacity.d.ts.map +1 -0
  201. package/dist-types/items/index.d.ts +5 -0
  202. package/dist-types/items/index.d.ts.map +1 -0
  203. package/dist-types/items/items-data-binding.d.ts +79 -0
  204. package/dist-types/items/items-data-binding.d.ts.map +1 -0
  205. package/dist-types/items/slot-record.d.ts +23 -0
  206. package/dist-types/items/slot-record.d.ts.map +1 -0
  207. package/dist-types/layer/action/popup.d.ts +13 -0
  208. package/dist-types/layer/action/popup.d.ts.map +1 -1
  209. package/dist-types/layer/add-layer.d.ts +8 -0
  210. package/dist-types/layer/add-layer.d.ts.map +1 -1
  211. package/dist-types/layer/dual-canvas-layer.d.ts.map +1 -1
  212. package/dist-types/layer/index.d.ts +1 -0
  213. package/dist-types/layer/index.d.ts.map +1 -1
  214. package/dist-types/layer/layer.d.ts +2 -0
  215. package/dist-types/layer/layer.d.ts.map +1 -1
  216. package/dist-types/layer/model-layer.d.ts +81 -7
  217. package/dist-types/layer/model-layer.d.ts.map +1 -1
  218. package/dist-types/layer/modeler/index.d.ts +1 -0
  219. package/dist-types/layer/modeler/index.d.ts.map +1 -1
  220. package/dist-types/layer/modeler/move-handle-icon.d.ts +2 -0
  221. package/dist-types/layer/modeler/move-handle-icon.d.ts.map +1 -0
  222. package/dist-types/layer/modeler/move-handle-modeler.d.ts +18 -0
  223. package/dist-types/layer/modeler/move-handle-modeler.d.ts.map +1 -0
  224. package/dist-types/layer/modeler/path-handler.d.ts.map +1 -1
  225. package/dist-types/layer/modeler/rotator.d.ts.map +1 -1
  226. package/dist-types/layer/modeling-layer.d.ts +19 -0
  227. package/dist-types/layer/modeling-layer.d.ts.map +1 -1
  228. package/dist-types/layer/selection/selected-finder.d.ts +1 -1
  229. package/dist-types/layer/selection/selected-finder.d.ts.map +1 -1
  230. package/dist-types/layer/selection-layer.d.ts +7 -0
  231. package/dist-types/layer/selection-layer.d.ts.map +1 -1
  232. package/dist-types/layer/snap-guide-layer.d.ts +23 -0
  233. package/dist-types/layer/snap-guide-layer.d.ts.map +1 -0
  234. package/dist-types/layout/absolute.d.ts +2 -2
  235. package/dist-types/layout/card.d.ts +2 -2
  236. package/dist-types/layout/linear-horizontal.d.ts +2 -2
  237. package/dist-types/layout/linear-vertical.d.ts +2 -2
  238. package/dist-types/layout/table.d.ts +3 -3
  239. package/dist-types/license/license.d.ts.map +1 -1
  240. package/dist-types/math/component-pose.d.ts +51 -0
  241. package/dist-types/math/component-pose.d.ts.map +1 -0
  242. package/dist-types/math/index.d.ts +3 -0
  243. package/dist-types/math/index.d.ts.map +1 -0
  244. package/dist-types/math/pose6dof.d.ts +93 -0
  245. package/dist-types/math/pose6dof.d.ts.map +1 -0
  246. package/dist-types/navigation/index.d.ts +7 -0
  247. package/dist-types/navigation/index.d.ts.map +1 -0
  248. package/dist-types/navigation/nav-graph.d.ts +55 -0
  249. package/dist-types/navigation/nav-graph.d.ts.map +1 -0
  250. package/dist-types/navigation/path-planner.d.ts +29 -0
  251. package/dist-types/navigation/path-planner.d.ts.map +1 -0
  252. package/dist-types/navigation/reservation-table.d.ts +103 -0
  253. package/dist-types/navigation/reservation-table.d.ts.map +1 -0
  254. package/dist-types/navigation/types.d.ts +145 -0
  255. package/dist-types/navigation/types.d.ts.map +1 -0
  256. package/dist-types/placement/index.d.ts +3 -0
  257. package/dist-types/placement/index.d.ts.map +1 -0
  258. package/dist-types/placement/placement.d.ts +53 -0
  259. package/dist-types/placement/placement.d.ts.map +1 -0
  260. package/dist-types/search/index.d.ts +3 -0
  261. package/dist-types/search/index.d.ts.map +1 -0
  262. package/dist-types/search/scene-search-engine.d.ts +64 -0
  263. package/dist-types/search/scene-search-engine.d.ts.map +1 -0
  264. package/dist-types/search/search-overlay.d.ts +94 -0
  265. package/dist-types/search/search-overlay.d.ts.map +1 -0
  266. package/dist-types/things-scene/api/add-start.d.ts +25 -0
  267. package/dist-types/things-scene/api/add-start.d.ts.map +1 -1
  268. package/dist-types/things-scene/api/align.d.ts.map +1 -1
  269. package/dist-types/things-scene/api/distribute.d.ts.map +1 -1
  270. package/dist-types/things-scene/api/ids.d.ts +4 -1
  271. package/dist-types/things-scene/api/ids.d.ts.map +1 -1
  272. package/dist-types/things-scene/api/index.d.ts +1 -1
  273. package/dist-types/things-scene/api/index.d.ts.map +1 -1
  274. package/dist-types/things-scene/api/place.d.ts.map +1 -1
  275. package/dist-types/things-scene/api/zorder.d.ts.map +1 -1
  276. package/dist-types/things-scene/application-context.d.ts +62 -0
  277. package/dist-types/things-scene/application-context.d.ts.map +1 -1
  278. package/dist-types/things-scene/create.d.ts +43 -3
  279. package/dist-types/things-scene/create.d.ts.map +1 -1
  280. package/dist-types/things-scene/index.d.ts +29 -0
  281. package/dist-types/things-scene/index.d.ts.map +1 -1
  282. package/dist-types/things-scene/scene.d.ts +120 -2
  283. package/dist-types/things-scene/scene.d.ts.map +1 -1
  284. package/dist-types/threed/arrow-3d.d.ts +13 -4
  285. package/dist-types/threed/arrow-3d.d.ts.map +1 -1
  286. package/dist-types/threed/environments/base-environment.d.ts +17 -0
  287. package/dist-types/threed/environments/base-environment.d.ts.map +1 -0
  288. package/dist-types/threed/environments/cloudy-environment.d.ts +10 -0
  289. package/dist-types/threed/environments/cloudy-environment.d.ts.map +1 -0
  290. package/dist-types/threed/environments/factory-environment.d.ts +3 -3
  291. package/dist-types/threed/environments/factory-environment.d.ts.map +1 -1
  292. package/dist-types/threed/environments/home-environment.d.ts +3 -3
  293. package/dist-types/threed/environments/home-environment.d.ts.map +1 -1
  294. package/dist-types/threed/environments/office-environment.d.ts +3 -3
  295. package/dist-types/threed/environments/office-environment.d.ts.map +1 -1
  296. package/dist-types/threed/environments/rainy-environment.d.ts +10 -0
  297. package/dist-types/threed/environments/rainy-environment.d.ts.map +1 -0
  298. package/dist-types/threed/environments/studio-environment.d.ts +2 -3
  299. package/dist-types/threed/environments/studio-environment.d.ts.map +1 -1
  300. package/dist-types/threed/environments/sunny-environment.d.ts +10 -0
  301. package/dist-types/threed/environments/sunny-environment.d.ts.map +1 -0
  302. package/dist-types/threed/environments/warehouse-environment.d.ts +3 -3
  303. package/dist-types/threed/environments/warehouse-environment.d.ts.map +1 -1
  304. package/dist-types/threed/factories/backdrop.d.ts +537 -0
  305. package/dist-types/threed/factories/backdrop.d.ts.map +1 -0
  306. package/dist-types/threed/factories/banner.d.ts +14 -4
  307. package/dist-types/threed/factories/banner.d.ts.map +1 -1
  308. package/dist-types/threed/factories/camera.d.ts +10 -3
  309. package/dist-types/threed/factories/camera.d.ts.map +1 -1
  310. package/dist-types/threed/factories/cube.d.ts +9 -3
  311. package/dist-types/threed/factories/cube.d.ts.map +1 -1
  312. package/dist-types/threed/factories/cylinder.d.ts +1 -0
  313. package/dist-types/threed/factories/cylinder.d.ts.map +1 -1
  314. package/dist-types/threed/factories/decal.d.ts +512 -0
  315. package/dist-types/threed/factories/decal.d.ts.map +1 -0
  316. package/dist-types/threed/factories/floor-plate.d.ts +11 -0
  317. package/dist-types/threed/factories/floor-plate.d.ts.map +1 -0
  318. package/dist-types/threed/factories/gltf-object.d.ts +266 -38
  319. package/dist-types/threed/factories/gltf-object.d.ts.map +1 -1
  320. package/dist-types/threed/factories/group.d.ts +2 -0
  321. package/dist-types/threed/factories/group.d.ts.map +1 -0
  322. package/dist-types/threed/factories/light.d.ts +1 -0
  323. package/dist-types/threed/factories/light.d.ts.map +1 -1
  324. package/dist-types/threed/factories/line.d.ts +10 -0
  325. package/dist-types/threed/factories/line.d.ts.map +1 -0
  326. package/dist-types/threed/factories/ortholine.d.ts +10 -0
  327. package/dist-types/threed/factories/ortholine.d.ts.map +1 -0
  328. package/dist-types/threed/factories/polygon.d.ts +19 -0
  329. package/dist-types/threed/factories/polygon.d.ts.map +1 -1
  330. package/dist-types/threed/factories/polyline.d.ts +10 -0
  331. package/dist-types/threed/factories/polyline.d.ts.map +1 -0
  332. package/dist-types/threed/factories/rect.d.ts.map +1 -1
  333. package/dist-types/threed/factories/sphere.d.ts +6 -0
  334. package/dist-types/threed/factories/sphere.d.ts.map +1 -1
  335. package/dist-types/threed/factories/sprite.d.ts +9 -3
  336. package/dist-types/threed/factories/sprite.d.ts.map +1 -1
  337. package/dist-types/threed/factories/triangle.d.ts.map +1 -1
  338. package/dist-types/threed/factories/wall.d.ts +9 -3
  339. package/dist-types/threed/factories/wall.d.ts.map +1 -1
  340. package/dist-types/threed/floor/floor.d.ts.map +1 -1
  341. package/dist-types/threed/handle-3d.d.ts +21 -0
  342. package/dist-types/threed/handle-3d.d.ts.map +1 -0
  343. package/dist-types/threed/html/elements.d.ts.map +1 -1
  344. package/dist-types/threed/index.d.ts +24 -0
  345. package/dist-types/threed/index.d.ts.map +1 -1
  346. package/dist-types/threed/managers/box-selection-manager.d.ts +26 -0
  347. package/dist-types/threed/managers/box-selection-manager.d.ts.map +1 -0
  348. package/dist-types/threed/managers/camera-bookmark-manager.d.ts +66 -32
  349. package/dist-types/threed/managers/camera-bookmark-manager.d.ts.map +1 -1
  350. package/dist-types/threed/managers/camera-manager.d.ts +9 -3
  351. package/dist-types/threed/managers/camera-manager.d.ts.map +1 -1
  352. package/dist-types/threed/managers/controls-manager.d.ts +25 -4
  353. package/dist-types/threed/managers/controls-manager.d.ts.map +1 -1
  354. package/dist-types/threed/managers/event-manager3d.d.ts +14 -0
  355. package/dist-types/threed/managers/event-manager3d.d.ts.map +1 -1
  356. package/dist-types/threed/managers/gizmo-manager.d.ts +6 -0
  357. package/dist-types/threed/managers/gizmo-manager.d.ts.map +1 -1
  358. package/dist-types/threed/managers/gizmo-operation-manager.d.ts +54 -1
  359. package/dist-types/threed/managers/gizmo-operation-manager.d.ts.map +1 -1
  360. package/dist-types/threed/managers/index.d.ts +3 -1
  361. package/dist-types/threed/managers/index.d.ts.map +1 -1
  362. package/dist-types/threed/managers/interaction-manager.d.ts +17 -0
  363. package/dist-types/threed/managers/interaction-manager.d.ts.map +1 -1
  364. package/dist-types/threed/managers/light-manager.d.ts +15 -0
  365. package/dist-types/threed/managers/light-manager.d.ts.map +1 -1
  366. package/dist-types/threed/managers/renderer-manager.d.ts +37 -0
  367. package/dist-types/threed/managers/renderer-manager.d.ts.map +1 -1
  368. package/dist-types/threed/managers/scene-manager.d.ts +12 -2
  369. package/dist-types/threed/managers/scene-manager.d.ts.map +1 -1
  370. package/dist-types/threed/managers/types.d.ts +4 -2
  371. package/dist-types/threed/managers/types.d.ts.map +1 -1
  372. package/dist-types/threed/managers/vertex-gizmo-manager.d.ts +154 -0
  373. package/dist-types/threed/managers/vertex-gizmo-manager.d.ts.map +1 -0
  374. package/dist-types/threed/material-3d.d.ts +5 -2
  375. package/dist-types/threed/material-3d.d.ts.map +1 -1
  376. package/dist-types/threed/ratio-lock-utils.d.ts +9 -0
  377. package/dist-types/threed/ratio-lock-utils.d.ts.map +1 -0
  378. package/dist-types/threed/real-object-dom-element.d.ts +2 -0
  379. package/dist-types/threed/real-object-dom-element.d.ts.map +1 -1
  380. package/dist-types/threed/real-object-dom-texture.d.ts +9 -0
  381. package/dist-types/threed/real-object-dom-texture.d.ts.map +1 -1
  382. package/dist-types/threed/real-object-external-model.d.ts +24 -0
  383. package/dist-types/threed/real-object-external-model.d.ts.map +1 -0
  384. package/dist-types/threed/real-object-extrude.d.ts +16 -1
  385. package/dist-types/threed/real-object-extrude.d.ts.map +1 -1
  386. package/dist-types/threed/real-object-gltf.d.ts +21 -11
  387. package/dist-types/threed/real-object-gltf.d.ts.map +1 -1
  388. package/dist-types/threed/real-object-group.d.ts +2 -0
  389. package/dist-types/threed/real-object-group.d.ts.map +1 -1
  390. package/dist-types/threed/real-object-line.d.ts +83 -0
  391. package/dist-types/threed/real-object-line.d.ts.map +1 -0
  392. package/dist-types/threed/real-object-mesh.d.ts.map +1 -1
  393. package/dist-types/threed/real-object-plane-2d.d.ts +23 -0
  394. package/dist-types/threed/real-object-plane-2d.d.ts.map +1 -1
  395. package/dist-types/threed/real-object-service.d.ts +14 -0
  396. package/dist-types/threed/real-object-service.d.ts.map +1 -0
  397. package/dist-types/threed/real-object-sprite.d.ts +7 -1
  398. package/dist-types/threed/real-object-sprite.d.ts.map +1 -1
  399. package/dist-types/threed/real-object-text.d.ts +5 -0
  400. package/dist-types/threed/real-object-text.d.ts.map +1 -1
  401. package/dist-types/threed/real-object.d.ts +246 -7
  402. package/dist-types/threed/real-object.d.ts.map +1 -1
  403. package/dist-types/threed/text-editor-3d.d.ts +11 -0
  404. package/dist-types/threed/text-editor-3d.d.ts.map +1 -0
  405. package/dist-types/threed/texture/canvas-texture.d.ts +7 -0
  406. package/dist-types/threed/texture/canvas-texture.d.ts.map +1 -1
  407. package/dist-types/threed/texture/fillstyle-texture.d.ts +57 -0
  408. package/dist-types/threed/texture/fillstyle-texture.d.ts.map +1 -0
  409. package/dist-types/threed/texture/text-texture.d.ts +15 -0
  410. package/dist-types/threed/texture/text-texture.d.ts.map +1 -1
  411. package/dist-types/threed/three-capability.d.ts +131 -15
  412. package/dist-types/threed/three-capability.d.ts.map +1 -1
  413. package/dist-types/threed/three-container.d.ts +0 -1
  414. package/dist-types/threed/three-container.d.ts.map +1 -1
  415. package/dist-types/threed/three-dimensional-container.d.ts +0 -1
  416. package/dist-types/threed/three-dimensional-container.d.ts.map +1 -1
  417. package/dist-types/threed/utils/anchor.d.ts +33 -0
  418. package/dist-types/threed/utils/anchor.d.ts.map +1 -0
  419. package/dist-types/threed/utils/dispose.d.ts.map +1 -1
  420. package/dist-types/threed/utils/polygon-shape.d.ts +21 -0
  421. package/dist-types/threed/utils/polygon-shape.d.ts.map +1 -0
  422. package/dist-types/threed/utils/tether.d.ts +46 -0
  423. package/dist-types/threed/utils/tether.d.ts.map +1 -0
  424. package/dist-types/threed/z-priority.d.ts +27 -0
  425. package/dist-types/threed/z-priority.d.ts.map +1 -0
  426. package/dist-types/tracker/tracker.d.ts +57 -0
  427. package/dist-types/tracker/tracker.d.ts.map +1 -0
  428. package/dist-types/transfer/carrier-line-capability.d.ts +95 -0
  429. package/dist-types/transfer/carrier-line-capability.d.ts.map +1 -0
  430. package/dist-types/transfer/centering-slot-strategy.d.ts +8 -0
  431. package/dist-types/transfer/centering-slot-strategy.d.ts.map +1 -0
  432. package/dist-types/transfer/container-capacity-helpers.d.ts +18 -0
  433. package/dist-types/transfer/container-capacity-helpers.d.ts.map +1 -0
  434. package/dist-types/transfer/container-capacity.d.ts +11 -0
  435. package/dist-types/transfer/container-capacity.d.ts.map +1 -0
  436. package/dist-types/transfer/fixed-slot-strategy.d.ts +8 -0
  437. package/dist-types/transfer/fixed-slot-strategy.d.ts.map +1 -0
  438. package/dist-types/transfer/index.d.ts +25 -0
  439. package/dist-types/transfer/index.d.ts.map +1 -0
  440. package/dist-types/transfer/pickup-helpers.d.ts +65 -0
  441. package/dist-types/transfer/pickup-helpers.d.ts.map +1 -0
  442. package/dist-types/transfer/simulation-clock.d.ts +45 -0
  443. package/dist-types/transfer/simulation-clock.d.ts.map +1 -0
  444. package/dist-types/transfer/tracer.d.ts +35 -0
  445. package/dist-types/transfer/tracer.d.ts.map +1 -0
  446. package/dist-types/transfer/transfer.d.ts +229 -0
  447. package/dist-types/transfer/transfer.d.ts.map +1 -0
  448. package/dist-types/transfer/transferable-mixin.d.ts +260 -0
  449. package/dist-types/transfer/transferable-mixin.d.ts.map +1 -0
  450. package/dist-types/transfer/types.d.ts +424 -0
  451. package/dist-types/transfer/types.d.ts.map +1 -0
  452. package/dist-types/transition/transition-effect.d.ts +117 -0
  453. package/dist-types/transition/transition-effect.d.ts.map +1 -0
  454. package/dist-types/types/bounding.d.ts +1 -1
  455. package/dist-types/types/bounding.d.ts.map +1 -1
  456. package/dist-types/types/capability.d.ts +59 -0
  457. package/dist-types/types/capability.d.ts.map +1 -0
  458. package/dist-types/types/component.d.ts +6 -177
  459. package/dist-types/types/component.d.ts.map +1 -1
  460. package/dist-types/types/event.d.ts +57 -0
  461. package/dist-types/types/event.d.ts.map +1 -1
  462. package/dist-types/types/polygon-path-arc.d.ts +72 -0
  463. package/dist-types/types/polygon-path-arc.d.ts.map +1 -0
  464. package/dist-types/types/polygon-path.d.ts +153 -0
  465. package/dist-types/types/polygon-path.d.ts.map +1 -0
  466. package/package.json +13 -2
  467. package/things-scene-min.js +12 -13
  468. package/things-scene-min.js.map +1 -1
  469. package/things-scene-transfer.mjs +7 -0
  470. package/things-scene.mjs +8 -9
  471. package/things-scene.mjs.map +1 -1
@@ -1,6 +1,7 @@
1
- import type * as THREE from 'three';
1
+ import * as THREE from 'three';
2
2
  import type { ArrowStyle3D } from '../threed/arrow-3d.js';
3
3
  import Component from '../components/component.js';
4
+ import { type EventHandler, type EventTrigger } from '../interfaces/event-handler.js';
4
5
  import ScenePopup from './action/popup.js';
5
6
  import DualCanvasLayer from './dual-canvas-layer.js';
6
7
  import { ThreeCapability } from '../threed/three-capability.js';
@@ -23,21 +24,40 @@ export default class ModelLayer extends DualCanvasLayer implements ThreeDimensio
23
24
  _decoratorAuxOverlay: any;
24
25
  private _threeCapability?;
25
26
  private _lastCameraState?;
27
+ private _saved2DViewport?;
26
28
  private _toolbar?;
27
- private _cameraSection?;
28
- private _gizmoSection?;
29
29
  private _cameraButtons?;
30
- private _gizmoButtons?;
30
+ private _floatingPopup?;
31
+ private _floatingPopupCloseHandler?;
32
+ /** Scene이 주입하는 토글 콜백 */
33
+ onSearchToggle?: () => void;
34
+ onDataBindingToggle?: () => void;
35
+ onMonitorToggle?: () => void;
31
36
  get nature(): ComponentNature;
32
37
  get is3dMode(): boolean;
33
38
  is3dContainer(): boolean;
39
+ get gizmoMode(): 'translate' | 'rotate' | 'scale' | undefined;
40
+ setGizmoMode(mode: 'translate' | 'rotate' | 'scale'): void;
34
41
  get scene3d(): THREE.Scene | undefined;
35
42
  get renderer3d(): THREE.WebGLRenderer | undefined;
36
43
  get activeCamera3d(): THREE.Camera | undefined;
37
44
  get mixer(): THREE.AnimationMixer | undefined;
38
- get zoom(): number | undefined;
39
45
  addArrow3D(id: string, from: Component, to: Component, style?: ArrowStyle3D): void;
40
46
  removeArrow3D(id: string): void;
47
+ /**
48
+ * 3D selection/decorator outline 의 색을 설정. Tracker 등 외부 모듈이 자기
49
+ * 정책 색으로 동기화할 때. 3D 미초기화 상태에서도 색상은 보존되어:
50
+ * - 3D 모드 활성화 (_activateThreeD) 시점에 새로 만들어지는 OutlinePass 에 적용
51
+ * - 3D→2D 전환 시 border-highlighting 복원에 사용
52
+ */
53
+ setOutlineColor(color: number): void;
54
+ /** outline 색의 number 형. setOutlineColor 가 갱신. 기본 things-scene 표준. */
55
+ private _outlineColor;
56
+ /**
57
+ * 3D→2D 전환 시 outline 컴포넌트를 border-highlighting 으로 복원할 때 사용할 색.
58
+ * setOutlineColor 호출로 갱신. 기본은 things-scene 표준 (#f26522 의 alpha 형).
59
+ */
60
+ private _outlineDecoColor;
41
61
  clearArrows3D(): void;
42
62
  private _buildLightingConfig;
43
63
  /**
@@ -45,6 +65,20 @@ export default class ModelLayer extends DualCanvasLayer implements ThreeDimensio
45
65
  * _activateThreeD()와 adoptThreeCapability()에서 공용으로 사용한다.
46
66
  */
47
67
  private _hide2DLayers;
68
+ /**
69
+ * zoom-handler가 등록되어 있는지 확인한다.
70
+ * zoom-handler가 있으면 사용자가 자유 줌/팬이 가능하므로 뷰포트 연동이 필요하다.
71
+ */
72
+ private get _hasZoomHandler();
73
+ /**
74
+ * 2D↔3D 전환 시 뷰포트 연동이 필요한지 판단한다.
75
+ * - 모델러: 항상 연동 (3D↔2D 카메라 매핑)
76
+ * - 뷰어 + zoom-handler: 연동 (2D 상태 저장/복원)
77
+ * - 뷰어 + zoom-handler 없음: 독립 (각자 뷰, 연동 불필요)
78
+ */
79
+ private get _needsViewportSync();
80
+ private _2dScaleBeforeThreeD?;
81
+ private _initialVisibleHeight?;
48
82
  private _activateThreeD;
49
83
  /**
50
84
  * 플로팅 툴바를 생성한다.
@@ -54,9 +88,15 @@ export default class ModelLayer extends DualCanvasLayer implements ThreeDimensio
54
88
  private _createToolbar;
55
89
  private _applyToggleStyle;
56
90
  private _applyButtonStyle;
57
- private _toggleToolbarSection;
58
91
  private _updateCameraButtons;
59
- private _updateGizmoButtons;
92
+ private _registerPopupCallbacks;
93
+ private _closeFloatingPopup;
94
+ private _showFloatingPopup;
95
+ private _makePopupDraggable;
96
+ private _toggleHelpPanel;
97
+ private _toggleBookmarkNav;
98
+ private _toggleBookmarkEdit;
99
+ private _buildBookmarkPopup;
60
100
  private _removeToolbar;
61
101
  /**
62
102
  * 3D 렌더러를 실제 표시 영역 크기에 맞춰 리사이즈한다.
@@ -81,7 +121,26 @@ export default class ModelLayer extends DualCanvasLayer implements ThreeDimensio
81
121
  */
82
122
  adoptThreeCapability(cap: ThreeCapability): void;
83
123
  private _deactivateThreeD;
124
+ /**
125
+ * 실제 뷰포트 크기를 반환한다.
126
+ * canvas가 hidden일 수 있으므로 target(외부 컨테이너)에서 읽는다.
127
+ */
128
+ private _getViewportSize;
129
+ /**
130
+ * 2D 뷰포트 상태를 기반으로 3D 카메라 위치/타겟을 설정한다.
131
+ */
132
+ private _initCameraFrom2DViewport;
133
+ /**
134
+ * 3D 카메라 상태를 기반으로 2D 뷰포트(translate, scale)를 설정한다.
135
+ */
136
+ private _init2DViewportFrom3DCamera;
137
+ centerTo(component: any, animated?: boolean): void;
84
138
  ready(): Promise<void>;
139
+ /**
140
+ * 3D 모드 전환 (모델에 저장하지 않음 — 런타임 전환만)
141
+ */
142
+ private _threeDUserDeactivated;
143
+ toggleThreeD(force3d?: boolean): void;
85
144
  dispose(): void;
86
145
  contains(x: any, y: any): boolean;
87
146
  isRootModel(): boolean;
@@ -163,6 +222,21 @@ export default class ModelLayer extends DualCanvasLayer implements ThreeDimensio
163
222
  _onmouseenter_all(event: any, hint: any): void;
164
223
  _onmouseleave_all(event: any, hint: any): void;
165
224
  _onclick(event: any, hint: any): void;
225
+ /**
226
+ * 컴포넌트의 eventHandlers (legacy 정규화 포함) 중 매칭되는 trigger 의 핸들러
227
+ * 모두 실행. enter=true (mouseenter/click), enter=false (mouseleave).
228
+ *
229
+ * 실행 순서:
230
+ * 1) 컴포넌트 class 의 *built-in method* (예: onTap, onMouseEnter) — 도메인
231
+ * 기본 동작 (예: SlidingDoor.onTap → toggle). 컴포넌트가 override 시 호출.
232
+ * 2) state.eventHandlers (사용자 커스텀) — UI 에서 등록한 script/action.
233
+ *
234
+ * 둘 다 실행 — *override 가 아니라 augment*. 사용자 커스텀이 도메인 동작 보완.
235
+ */
236
+ _dispatchEventHandlers(component: any, triggers: EventTrigger[], event: any, enter: boolean): void;
237
+ /** EventTrigger → 컴포넌트 method 이름. 컴포넌트가 해당 method override 시 자동 호출. */
238
+ _triggerToMethodName(trigger: EventTrigger, enter: boolean): string | undefined;
239
+ _executeHandler(handler: EventHandler, component: any, event: any, enter: boolean): void;
166
240
  _onmousedownup(event: any, hint: any): void;
167
241
  _doMouseDownUpEventAction(event: any, component: any, enter: any, org_event: any): void;
168
242
  _doEventAction(event: any, component: any, enter: any, org_event: any): void;
@@ -1 +1 @@
1
- {"version":3,"file":"model-layer.d.ts","sourceRoot":"","sources":["../../src/layer/model-layer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model-layer.d.ts","sourceRoot":"","sources":["../../src/layer/model-layer.ts"],"names":[],"mappings":"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"}
@@ -5,4 +5,5 @@ export { default as PathHandler } from './path-handler.js';
5
5
  export { default as AnchorHandler } from './anchor-handler.js';
6
6
  export { default as Resizer } from './resizer.js';
7
7
  export { default as Rotator } from './rotator.js';
8
+ export { default as MoveHandleModeler } from './move-handle-modeler.js';
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAChE,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,MAAM,cAAc,CAAA;AACjD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,0BAA0B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare function getMoveHandleImage(): HTMLImageElement;
2
+ //# sourceMappingURL=move-handle-icon.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-handle-icon.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/move-handle-icon.ts"],"names":[],"mappings":"AASA,wBAAgB,kBAAkB,qBAGjC"}
@@ -0,0 +1,18 @@
1
+ export default class MoveHandleModeler {
2
+ layer: any;
3
+ active: any;
4
+ constructor(layer: any);
5
+ reset(): void;
6
+ get selected(): any;
7
+ /** 핸들 사각 영역 (컴포넌트 좌표계, scale 역보정으로 화면 고정 크기). */
8
+ private _rect;
9
+ contains(x: number, y: number, component: any, scale: any): boolean;
10
+ draw(ctx: CanvasRenderingContext2D, component: any, scale: any): void;
11
+ onmousedown(_e: any): void;
12
+ ondragstart(e: any): void;
13
+ ondragmove(e: any): void;
14
+ ondragend(_e: any): void;
15
+ /** 마우스 이벤트 → 컴포넌트 부모 좌표계 점 (move-handler 와 동일). */
16
+ private _pointOf;
17
+ }
18
+ //# sourceMappingURL=move-handle-modeler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"move-handle-modeler.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/move-handle-modeler.ts"],"names":[],"mappings":"AAkBA,MAAM,CAAC,OAAO,OAAO,iBAAiB;IACpC,KAAK,EAAE,GAAG,CAAA;IACV,MAAM,EAAE,GAAG,CAAA;gBAEC,KAAK,EAAE,GAAG;IAItB,KAAK;IAIL,IAAI,QAAQ,QAEX;IAED,iDAAiD;IACjD,OAAO,CAAC,KAAK;IAOb,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG;IAWzD,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG;IAyB9D,WAAW,CAAC,EAAE,EAAE,GAAG;IAQnB,WAAW,CAAC,CAAC,EAAE,GAAG;IAMlB,UAAU,CAAC,CAAC,EAAE,GAAG;IAOjB,SAAS,CAAC,EAAE,EAAE,GAAG;IAMjB,mDAAmD;IACnD,OAAO,CAAC,QAAQ;CAOjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"path-handler.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/path-handler.ts"],"names":[],"mappings":"AA6BA,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,KAAK,EAAE,GAAG,CAAA;IACV,MAAM,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,GAAG,CAAA;gBAEA,KAAK,EAAE,GAAG;IAItB,KAAK;IAML,IAAI,QAAQ,QAEX;IAED,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IAoB/B,gBAAgB,CAAC,QAAQ,KAAA,EAAE,SAAS,KAAA,EAAE,CAAC,KAAA;IAmBvC,IAAI,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IAmC9B,UAAU,CAAC,CAAC,KAAA;IAYZ,WAAW,CAAC,CAAC,KAAA;IAIb,WAAW,CAAC,CAAC,KAAA;IAab,UAAU,CAAC,CAAC,KAAA;IAgIZ,SAAS,CAAC,CAAC,KAAA;CAsDZ"}
1
+ {"version":3,"file":"path-handler.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/path-handler.ts"],"names":[],"mappings":"AA0CA,MAAM,CAAC,OAAO,OAAO,WAAW;IAC9B,KAAK,EAAE,GAAG,CAAA;IACV,MAAM,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,GAAG,CAAA;gBAEA,KAAK,EAAE,GAAG;IAItB,KAAK;IAML,IAAI,QAAQ,QAEX;IAED,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IAmE/B,gBAAgB,CAAC,QAAQ,KAAA,EAAE,SAAS,KAAA,EAAE,CAAC,KAAA;IAmBvC,IAAI,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IAsG9B,UAAU,CAAC,CAAC,KAAA;IAiCZ,WAAW,CAAC,CAAC,KAAA;IAIb,WAAW,CAAC,CAAC,KAAA;IAkBb,UAAU,CAAC,CAAC,KAAA;IAgLZ,SAAS,CAAC,CAAC,KAAA;CAsDZ"}
@@ -1 +1 @@
1
- {"version":3,"file":"rotator.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/rotator.ts"],"names":[],"mappings":"AAsBA,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,KAAK,EAAE,GAAG,CAAA;IACV,MAAM,EAAE,GAAG,CAAA;gBAEC,KAAK,EAAE,GAAG;IAItB,KAAK;IAKL,IAAI,QAAQ,QAEX;IAED,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IAkB/B,IAAI,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IA0C9B,WAAW,CAAC,CAAC,KAAA;IAIb,WAAW,CAAC,CAAC,KAAA;IAQb,UAAU,CAAC,CAAC,KAAA;IAmCZ,SAAS,CAAC,CAAC,KAAA;CAuBZ"}
1
+ {"version":3,"file":"rotator.d.ts","sourceRoot":"","sources":["../../../src/layer/modeler/rotator.ts"],"names":[],"mappings":"AAsBA,MAAM,CAAC,OAAO,OAAO,OAAO;IAC1B,KAAK,EAAE,GAAG,CAAA;IACV,MAAM,EAAE,GAAG,CAAA;gBAEC,KAAK,EAAE,GAAG;IAItB,KAAK;IAKL,IAAI,QAAQ,QAEX;IAED,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IAkB/B,IAAI,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA;IA0C9B,WAAW,CAAC,CAAC,KAAA;IAIb,WAAW,CAAC,CAAC,KAAA;IAOb,UAAU,CAAC,CAAC,KAAA;IAmCZ,SAAS,CAAC,CAAC,KAAA;CAuBZ"}
@@ -16,6 +16,10 @@ export default class ModelingLayer extends DualCanvasLayer {
16
16
  _anchorTarget: any;
17
17
  _hovered: any;
18
18
  processingLink: any;
19
+ moveHandleModeler: any;
20
+ /** 이동 핸들을 표시할 컨테이너 (hovered 와 분리 — grace period 동안 유지된다). */
21
+ _moveHandleSticky: any;
22
+ _moveHandleHideTimer: any;
19
23
  constructor(model: any, context: any);
20
24
  get modelers(): any[];
21
25
  get reversedModelers(): any[];
@@ -25,10 +29,25 @@ export default class ModelingLayer extends DualCanvasLayer {
25
29
  _componentDrawer(context: any, component: any, scale: any, logic: any): void;
26
30
  prerender(context: any): void;
27
31
  render(context: any): void;
32
+ /** component 또는 그 조상 중 가장 가까운 showMoveHandle 컨테이너 (없으면 null). */
33
+ _moveHandleOwner(component: any): any;
34
+ /**
35
+ * 핸들 표시/hit 의 실제 대상. 삭제된(parent 없음) sticky 는 즉시 해제하고 null 반환.
36
+ *
37
+ * 컴포넌트 삭제 시 onchange_model/onselected 의 invalidate 가 재렌더를 부르고, 이때
38
+ * render/capture 가 본 메서드를 통해 죽은 sticky 를 정리 → 핸들이 grace 타이머(1s)를
39
+ * 기다리지 않고 즉시 사라진다. 또한 capture(hit-test)가 죽은 대상으로 contains 계산을
40
+ * 하지 않아 "삭제 후 보드 전체 클릭 불가" (stale hit 가로채기) 를 막는다.
41
+ */
42
+ _resolveMoveHandleOwner(): any;
28
43
  get anchorTarget(): any;
29
44
  set anchorTarget(target: any);
30
45
  get hovered(): any;
31
46
  set hovered(hovered: any);
47
+ /** grace period 후 이동 핸들 sticky 를 해제한다 (핸들 위에 있으면 유지). */
48
+ _scheduleMoveHandleHide(): void;
49
+ _clearMoveHandleHideTimer(): void;
50
+ dispose(): void;
32
51
  startLinkProcess(linkFrom: any, linkModel: any, e: any): void;
33
52
  set counterEnd(anchor: any);
34
53
  get counterEnd(): any;
@@ -1 +1 @@
1
- {"version":3,"file":"modeling-layer.d.ts","sourceRoot":"","sources":["../../src/layer/modeling-layer.ts"],"names":[],"mappings":"AAUA,OAAO,eAAe,MAAM,wBAAwB,CAAA;AAGpD,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,eAAe;IAChD,WAAW,EAAE,GAAG,CAAA;IAChB,SAAS,EAAE,GAAG,EAAE,CAAA;IAChB,sBAAsB,EAAE,GAAG,EAAE,CAAA;IAC7B,YAAY,EAAE,GAAG,CAAA;IACjB,YAAY,EAAE,GAAG,CAAA;IACjB,aAAa,EAAE,GAAG,CAAA;IAClB,kBAAkB,EAAE,GAAG,EAAE,CAAA;IACzB,8BAA8B,EAAE,GAAG,EAAE,CAAA;IACrC,WAAW,EAAE,GAAG,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,cAAc,EAAE,GAAG,CAAA;IACnB,eAAe,EAAE,OAAO,CAAA;IACxB,YAAY,EAAE,GAAG,CAAA;IACjB,aAAa,EAAE,GAAG,CAAA;IAClB,QAAQ,EAAE,GAAG,CAAA;IACb,cAAc,EAAE,GAAG,CAAA;gBAEf,KAAK,KAAA,EAAE,OAAO,KAAA;IAuB1B,IAAI,QAAQ,UAEX;IAED,IAAI,gBAAgB,UAEnB;IAGK,KAAK;IAWX,OAAO,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,MAAM,KAAA;IAQpB,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA;IA2Eb,gBAAgB,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA,EAAE,KAAK,KAAA;IAqDjD,SAAS,CAAC,OAAO,KAAA;IAuBjB,MAAM,CAAC,OAAO,KAAA;IAyCd,IAAI,YAAY,QAUf;IAED,IAAI,YAAY,CAAC,MAAM,KAAA,EAEtB;IAED,IAAI,OAAO,QAEV;IAED,IAAI,OAAO,CAAC,OAAO,KAAA,EAIlB;IAED,gBAAgB,CAAC,QAAQ,KAAA,EAAE,SAAS,KAAA,EAAE,CAAC,KAAA;IAOvC,IAAI,UAAU,CAAC,MAAM,KAAA,EAGpB;IAED,IAAI,UAAU,QAEb;IAED,cAAc;IAMd,IAAI,QAAQ;;;;;;;;;;;;;;;;;;;;;;MAwBX;IAED,YAAY,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAIpB,YAAY,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAIpB,SAAS,CAAC,CAAC,KAAA;IASX,OAAO,CAAC,CAAC,KAAA;IAOT,UAAU,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA;IAIxB,cAAc,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA,EAAE,IAAI,KAAA;IAoBlC,gBAAgB,CAAC,KAAK,KAAA,EAAE,IAAI,KAAA;IAQ5B,UAAU,CAAC,CAAC,KAAA;IAMZ,WAAW,CAAC,CAAC,KAAA;IAMb,SAAS,CAAC,CAAC,KAAA;IAMX,WAAW,CAAC,CAAC,KAAA;IAKb,UAAU,CAAC,CAAC,KAAA;IAMZ,SAAS,CAAC,CAAC,KAAA;IAOX,MAAM,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IA4Id,aAAa,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;CAqEtB"}
1
+ {"version":3,"file":"modeling-layer.d.ts","sourceRoot":"","sources":["../../src/layer/modeling-layer.ts"],"names":[],"mappings":"AAUA,OAAO,eAAe,MAAM,wBAAwB,CAAA;AAWpD,MAAM,CAAC,OAAO,OAAO,aAAc,SAAQ,eAAe;IAChD,WAAW,EAAE,GAAG,CAAA;IAChB,SAAS,EAAE,GAAG,EAAE,CAAA;IAChB,sBAAsB,EAAE,GAAG,EAAE,CAAA;IAC7B,YAAY,EAAE,GAAG,CAAA;IACjB,YAAY,EAAE,GAAG,CAAA;IACjB,aAAa,EAAE,GAAG,CAAA;IAClB,kBAAkB,EAAE,GAAG,EAAE,CAAA;IACzB,8BAA8B,EAAE,GAAG,EAAE,CAAA;IACrC,WAAW,EAAE,GAAG,CAAA;IAChB,aAAa,EAAE,OAAO,CAAA;IACtB,cAAc,EAAE,GAAG,CAAA;IACnB,eAAe,EAAE,OAAO,CAAA;IACxB,YAAY,EAAE,GAAG,CAAA;IACjB,aAAa,EAAE,GAAG,CAAA;IAClB,QAAQ,EAAE,GAAG,CAAA;IACb,cAAc,EAAE,GAAG,CAAA;IACnB,iBAAiB,EAAE,GAAG,CAAA;IAC9B,6DAA6D;IACrD,iBAAiB,EAAE,GAAG,CAAA;IACtB,oBAAoB,EAAE,GAAG,CAAA;gBAErB,KAAK,KAAA,EAAE,OAAO,KAAA;IAwB1B,IAAI,QAAQ,UAEX;IAED,IAAI,gBAAgB,UAEnB;IAGK,KAAK;IAWX,OAAO,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA,EAAE,MAAM,KAAA;IAQpB,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA;IA8Fb,gBAAgB,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,KAAK,KAAA,EAAE,KAAK,KAAA;IAqDjD,SAAS,CAAC,OAAO,KAAA;IAuBjB,MAAM,CAAC,OAAO,KAAA;IAkDd,iEAAiE;IACjE,gBAAgB,CAAC,SAAS,EAAE,GAAG,GAAG,GAAG;IAMrC;;;;;;;OAOG;IACH,uBAAuB,IAAI,GAAG;IAO9B,IAAI,YAAY,QAUf;IAED,IAAI,YAAY,CAAC,MAAM,KAAA,EAEtB;IAED,IAAI,OAAO,QAEV;IAED,IAAI,OAAO,CAAC,OAAO,KAAA,EAelB;IAED,yDAAyD;IACzD,uBAAuB;IAavB,yBAAyB;IAOzB,OAAO;IAKP,gBAAgB,CAAC,QAAQ,KAAA,EAAE,SAAS,KAAA,EAAE,CAAC,KAAA;IAOvC,IAAI,UAAU,CAAC,MAAM,KAAA,EAGpB;IAED,IAAI,UAAU,QAEb;IAED,cAAc;IAMd,IAAI,QAAQ;;;;;;;;;;;;;;;;;;;;;;MAwBX;IAED,YAAY,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAUpB,YAAY,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAQpB,SAAS,CAAC,CAAC,KAAA;IASX,OAAO,CAAC,CAAC,KAAA;IAOT,UAAU,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA;IAIxB,cAAc,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA,EAAE,IAAI,KAAA;IAoBlC,gBAAgB,CAAC,KAAK,KAAA,EAAE,IAAI,KAAA;IAQ5B,UAAU,CAAC,CAAC,KAAA;IAMZ,WAAW,CAAC,CAAC,KAAA;IAMb,SAAS,CAAC,CAAC,KAAA;IAMX,WAAW,CAAC,CAAC,KAAA;IAKb,UAAU,CAAC,CAAC,KAAA;IAMZ,SAAS,CAAC,CAAC,KAAA;IAOX,MAAM,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IA4Id,aAAa,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;CAqEtB"}
@@ -1,2 +1,2 @@
1
- export declare function selectedFinder(handler: any, container: any, selbox: any, add: any, cancel: any): void;
1
+ export declare function selectedFinder(handler: any, container: any, selbox: any, add: any, cancel: any, typeFilter?: any): void;
2
2
  //# sourceMappingURL=selected-finder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"selected-finder.d.ts","sourceRoot":"","sources":["../../../src/layer/selection/selected-finder.ts"],"names":[],"mappings":"AA0GA,wBAAgB,cAAc,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,MAAM,KAAA,EAAE,GAAG,KAAA,EAAE,MAAM,KAAA,QAIrE"}
1
+ {"version":3,"file":"selected-finder.d.ts","sourceRoot":"","sources":["../../../src/layer/selection/selected-finder.ts"],"names":[],"mappings":"AAwGA,wBAAgB,cAAc,CAAC,OAAO,KAAA,EAAE,SAAS,KAAA,EAAE,MAAM,KAAA,EAAE,GAAG,KAAA,EAAE,MAAM,KAAA,EAAE,UAAU,CAAC,KAAA,QAIlF"}
@@ -32,6 +32,13 @@ export default class SelectionLayer extends Layer {
32
32
  _selectGroupItem(origin: any, e: any): void;
33
33
  onmousedown_comp(e: any, hint: any): void;
34
34
  onmouseup_comp(e: any, hint: any): void;
35
+ /**
36
+ * selbox(영역 멀티선택)를 *_시작_* 할 origin 인가.
37
+ * - `origin.stuck`: 기존 — 배경 / lock / 배치형(card·linear·table) 컨테이너.
38
+ * - 이동 핸들을 가진 컨테이너의 *_메인영역_* 드래그: stuck 이 아니어도 *_내부 자식들_* 을
39
+ * selbox 로 선택하기 위해 시작 허용. (핸들 영역 드래그는 컨테이너 이동이므로 제외.)
40
+ */
41
+ _isSelboxOrigin(origin: any): boolean;
35
42
  ondragstart_selbox(e: any, hint: any): void;
36
43
  ondragmove_selbox(e: any, hint: any): void;
37
44
  ondragend_selbox(e: any, hint: any): void;
@@ -1 +1 @@
1
- {"version":3,"file":"selection-layer.d.ts","sourceRoot":"","sources":["../../src/layer/selection-layer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,YAAY,CAAA;AA0B9B,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,KAAK;IACvC,MAAM,EAAE,GAAG,CAAA;IACX,SAAS,EAAE,GAAG,CAAA;IACd,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,GAAG,CAAA;IAGf,KAAK;IAWX,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA;IAIb,MAAM,CAAC,GAAG,KAAA;IAmBV,IAAI,QAAQ;;;;;;;;;;;;;;;;;;MAqBX;IAED,SAAS,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IA8CjB,mBAAmB,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA,EAAE,IAAI,KAAA;IAYvC,gBAAgB,CAAC,CAAC,KAAA;IAQlB,gBAAgB,CAAC,MAAM,KAAA,EAAE,CAAC,KAAA;IAoF1B,gBAAgB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IA0DxB,cAAc,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IA6CtB,kBAAkB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAiB1B,iBAAiB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAuBzB,gBAAgB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;CAYzB"}
1
+ {"version":3,"file":"selection-layer.d.ts","sourceRoot":"","sources":["../../src/layer/selection-layer.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,YAAY,CAAA;AA0B9B,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,KAAK;IACvC,MAAM,EAAE,GAAG,CAAA;IACX,SAAS,EAAE,GAAG,CAAA;IACd,UAAU,EAAE,OAAO,CAAA;IACnB,QAAQ,EAAE,GAAG,CAAA;IAGf,KAAK;IAiBX,QAAQ,CAAC,CAAC,KAAA,EAAE,CAAC,KAAA;IAIb,MAAM,CAAC,GAAG,KAAA;IAmBV,IAAI,QAAQ;;;;;;;;;;;;;;;;;;MAqBX;IAED,SAAS,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IA8CjB,mBAAmB,CAAC,KAAK,KAAA,EAAE,MAAM,KAAA,EAAE,IAAI,KAAA;IAYvC,gBAAgB,CAAC,CAAC,KAAA;IAQlB,gBAAgB,CAAC,MAAM,KAAA,EAAE,CAAC,KAAA;IAoF1B,gBAAgB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IA8CxB,cAAc,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAkDtB;;;;;OAKG;IACH,eAAe,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO;IAOrC,kBAAkB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAoB1B,iBAAiB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;IAuBzB,gBAAgB,CAAC,CAAC,KAAA,EAAE,IAAI,KAAA;CAczB"}
@@ -0,0 +1,23 @@
1
+ import type { SnapResult } from '../components/geometry/snap-guide.js';
2
+ import Layer from './layer.js';
3
+ export default class SnapGuideLayer extends Layer {
4
+ private _snapResult;
5
+ get pointerEvents(): string;
6
+ get capturable(): boolean;
7
+ contains(_x: number, _y: number): boolean;
8
+ get snapResult(): SnapResult | null;
9
+ set snapResult(result: SnapResult | null);
10
+ clear(): void;
11
+ get eventMap(): {
12
+ '(root)': {
13
+ 'model-layer': {
14
+ change: (after: any) => void;
15
+ };
16
+ };
17
+ };
18
+ onchange_root_model(after: any): void;
19
+ private syncTransform;
20
+ ready(): Promise<void>;
21
+ render(ctx: CanvasRenderingContext2D): void;
22
+ }
23
+ //# sourceMappingURL=snap-guide-layer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"snap-guide-layer.d.ts","sourceRoot":"","sources":["../../src/layer/snap-guide-layer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAA;AACtE,OAAO,KAAK,MAAM,YAAY,CAAA;AAM9B,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,KAAK;IAC/C,OAAO,CAAC,WAAW,CAA0B;IAE7C,IAAI,aAAa,WAEhB;IAED,IAAI,UAAU,YAEb;IAED,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;IAI/B,IAAI,UAAU,IAAI,UAAU,GAAG,IAAI,CAElC;IAED,IAAI,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,EAGvC;IAED,KAAK;IAOL,IAAI,QAAQ;;;gCAUe,GAAG;;;MAF7B;IAED,mBAAmB,CAAC,KAAK,EAAE,GAAG;IAM9B,OAAO,CAAC,aAAa;IAUf,KAAK;IAKX,MAAM,CAAC,GAAG,EAAE,wBAAwB;CA4BrC"}
@@ -2,8 +2,8 @@ import type { LAYOUT } from '../interfaces/layout.js';
2
2
  import type { Component, Container } from '../types/component.js';
3
3
  declare class AbsoluteLayout implements LAYOUT {
4
4
  reflow(container: Container, component?: Component): void;
5
- capturables(container: Container): Component[];
6
- drawables(container: Container): Component[];
5
+ capturables(container: Container): import("../index.js").Component[];
6
+ drawables(container: Container): import("../index.js").Component[];
7
7
  isStuck(component: Component): boolean;
8
8
  ABSOLUTE: boolean;
9
9
  }
@@ -2,8 +2,8 @@ import type { LAYOUT } from '../interfaces/layout.js';
2
2
  import type { Component, Container } from '../types/component.js';
3
3
  declare class CardLayout implements LAYOUT {
4
4
  reflow(container: Container): void;
5
- capturables(container: Container): Component[];
6
- drawables(container: Container): Component[];
5
+ capturables(container: Container): import("../index.js").Component[];
6
+ drawables(container: Container): import("../index.js").Component[];
7
7
  isStuck(component: Component): boolean;
8
8
  }
9
9
  declare const cardLayout: CardLayout;
@@ -2,8 +2,8 @@ import type { LAYOUT } from '../interfaces/layout.js';
2
2
  import type { Component, Container } from '../types/component.js';
3
3
  declare class LinearHorizontal implements LAYOUT {
4
4
  reflow(container: Container): void;
5
- capturables(container: Container): Component[];
6
- drawables(container: Container): Component[];
5
+ capturables(container: Container): import("../index.js").Component[];
6
+ drawables(container: Container): import("../index.js").Component[];
7
7
  isStuck(component: Component): boolean;
8
8
  }
9
9
  declare const linearHorizontal: LinearHorizontal;
@@ -2,8 +2,8 @@ import type { LAYOUT } from '../interfaces/layout.js';
2
2
  import type { Component, Container } from '../types/component.js';
3
3
  declare class LinearVertical implements LAYOUT {
4
4
  reflow(container: Container): void;
5
- capturables(container: Container): Component[];
6
- drawables(container: Container): Component[];
5
+ capturables(container: Container): import("../index.js").Component[];
6
+ drawables(container: Container): import("../index.js").Component[];
7
7
  isStuck(component: Component): boolean;
8
8
  }
9
9
  declare const linearVertical: LinearVertical;
@@ -2,10 +2,10 @@ import type { LAYOUT } from '../interfaces/layout.js';
2
2
  import type { Component, Container } from '../types/component.js';
3
3
  declare class TableLayout implements LAYOUT {
4
4
  reflow(container: Container): void;
5
- capturables(container: Container): Component[];
6
- drawables(container: Container): Component[];
5
+ capturables(container: Container): import("../index.js").Component[];
6
+ drawables(container: Container): import("../index.js").Component[];
7
7
  isStuck(component: Component): boolean;
8
- keyNavigate(container: Container, component: Component, e: KeyboardEvent): Component | undefined;
8
+ keyNavigate(container: Container, component: Component, e: KeyboardEvent): import("../index.js").Component | undefined;
9
9
  joinType: boolean;
10
10
  }
11
11
  declare const tableLayout: TableLayout;
@@ -1 +1 @@
1
- {"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../../src/license/license.ts"],"names":[],"mappings":"AAkBA,qBAAa,OAAO;IAClB,MAAM,CAAC,IAAI,EAAE,GAAG,CAAA;IAChB,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAA;IAGpB,MAAM,KAAK,SAAS,YA0BnB;IAGD,MAAM,KAAK,GAAG,QAEb;IAGD,MAAM,KAAK,GAAG,CAAC,GAAG,KAAA,EAIjB;IAED,MAAM,KAAK,WAAW,QAErB;IAED,MAAM,KAAK,cAAc,QAMxB;IAED,MAAM,KAAK,QAAQ,QAElB;IAED,MAAM,KAAK,UAAU,QAEpB;IAED,MAAM,KAAK,OAAO,QAEjB;IAED,MAAM,KAAK,OAAO,CAAC,OAAO,KAAA,EAEzB;IAED,MAAM,CAAC,eAAe;IAyBtB,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG;IAiCzD,MAAM,CAAC,WAAW;IAIlB,MAAM,CAAC,WAAW;IASlB,MAAM,CAAC,UAAU;IAMjB,MAAM,KAAK,KAAK,YAMf;CACF;AAwBD,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG,QAE/B"}
1
+ {"version":3,"file":"license.d.ts","sourceRoot":"","sources":["../../src/license/license.ts"],"names":[],"mappings":"AAeA,qBAAa,OAAO;IAClB,MAAM,CAAC,IAAI,EAAE,GAAG,CAAA;IAChB,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAA;IAGpB,MAAM,KAAK,SAAS,YA0BnB;IAGD,MAAM,KAAK,GAAG,QAEb;IAGD,MAAM,KAAK,GAAG,CAAC,GAAG,KAAA,EAIjB;IAED,MAAM,KAAK,WAAW,QAErB;IAED,MAAM,KAAK,cAAc,QAMxB;IAED,MAAM,KAAK,QAAQ,QAElB;IAED,MAAM,KAAK,UAAU,QAEpB;IAED,MAAM,KAAK,OAAO,QAEjB;IAED,MAAM,KAAK,OAAO,CAAC,OAAO,KAAA,EAEzB;IAED,MAAM,CAAC,eAAe;IAyBtB,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG;IAiCzD,MAAM,CAAC,WAAW;IAIlB,MAAM,CAAC,WAAW;IASlB,MAAM,CAAC,UAAU;IAKjB,MAAM,KAAK,KAAK,YAMf;CACF;AAoBD,wBAAgB,OAAO,CAAC,GAAG,EAAE,GAAG,QAE/B"}
@@ -0,0 +1,51 @@
1
+ import { Pose6DOF } from './pose6dof.js';
2
+ /**
3
+ * Component 의 parent-local pose 를 읽는다.
4
+ *
5
+ * 정의: component 가 부모의 좌표계 안에서 차지하는 위치+자세.
6
+ * 3D pipeline 의 RealObject.center / RealObject.rotation 과 동일한 의미축.
7
+ *
8
+ * 좌표 매핑 (state → Pose6DOF):
9
+ * pos.x = component.center.x + tx - parent.width/2 (parent-centered 3D X)
10
+ * pos.y = cz (3D vertical Y, cz 공식)
11
+ * pos.z = component.center.y + ty - parent.height/2 (parent-centered 3D Z)
12
+ * rot = Euler(state.rotationX, -state.rotation, state.rotationY, 'XYZ')
13
+ *
14
+ * 컴포넌트가 RealObject 를 안 가지면 cz=0 으로 평면 처리.
15
+ */
16
+ export declare function getPose(component: any): Pose6DOF;
17
+ /**
18
+ * Component 의 world pose 를 읽는다.
19
+ *
20
+ * 우선순위:
21
+ * 1. _realObject.object3d.matrixWorld 가 있으면 거기서 분해 (정확)
22
+ * 2. 부모 chain 을 따라가며 getPose() 합성 (fallback, 2D-only 환경)
23
+ *
24
+ * 호출 전에 `obj3d.updateWorldMatrix(true, false)` 보장 책임은 호출자.
25
+ */
26
+ export declare function getWorldPose(component: any): Pose6DOF;
27
+ /**
28
+ * Component 에 parent-local pose 를 단일 atomic setState 로 적용.
29
+ *
30
+ * 한 번의 호출이 left/top/zPos/rotation/rotationX/rotationY 를 동시에 갱신 →
31
+ * onchange 가 한 번만 fire → pipeline 이 obj3d 를 한 번 다시 계산. 부분 상태가
32
+ * frame 사이에 노출되지 않는다 (Phase G 의 핵심 invariant).
33
+ *
34
+ * 좌표 역매핑 (Pose6DOF → state):
35
+ * center.x = pos.x + parent.width/2 - tx
36
+ * center.y = pos.z + parent.height/2 - ty
37
+ * zPos = pos.y - tz - syncZPosOffset + parent.geometricOffsetY
38
+ * Euler decompose 'XYZ' → (rotationX = e.x, rotation = -e.y, rotationY = e.z)
39
+ *
40
+ * 기존 syncFromObject3D 의 로직과 동일 — 그것을 명시적 API 로 노출.
41
+ */
42
+ export declare function setPose(component: any, pose: Pose6DOF): void;
43
+ /**
44
+ * Component 에 world pose 를 적용. 부모의 world pose 의 inverse 로 곱해서
45
+ * parent-local 로 변환 후 setPose.
46
+ *
47
+ * 부모가 root 거나 parent.worldPose 를 못 구하면 setPose 와 동일 (world =
48
+ * parent-local 로 가정).
49
+ */
50
+ export declare function setWorldPose(component: any, worldPose: Pose6DOF): void;
51
+ //# sourceMappingURL=component-pose.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-pose.d.ts","sourceRoot":"","sources":["../../src/math/component-pose.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAOxC;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CAAC,SAAS,EAAE,GAAG,GAAG,QAAQ,CA0BhD;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,GAAG,GAAG,QAAQ,CAgBrD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,GAAG,IAAI,CAuC5D;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,GAAG,IAAI,CAStE"}
@@ -0,0 +1,3 @@
1
+ export { Pose6DOF, type PoseLike } from './pose6dof.js';
2
+ export { getPose, getWorldPose, setPose, setWorldPose } from './component-pose.js';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/math/index.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,QAAQ,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAA;AACvD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA"}
@@ -0,0 +1,93 @@
1
+ import * as THREE from 'three';
2
+ export interface PoseLike {
3
+ position: {
4
+ x: number;
5
+ y: number;
6
+ z: number;
7
+ };
8
+ rotation: {
9
+ x: number;
10
+ y: number;
11
+ z: number;
12
+ w: number;
13
+ };
14
+ }
15
+ export declare class Pose6DOF {
16
+ /**
17
+ * Position in the implied coordinate system. World, parent-local, etc — Pose6DOF
18
+ * 자체는 좌표계를 알지 않는다. 호출자가 어떤 frame 의 값인지 명시할 책임.
19
+ */
20
+ readonly position: THREE.Vector3;
21
+ /**
22
+ * Orientation as unit quaternion in the implied coordinate system.
23
+ */
24
+ readonly rotation: THREE.Quaternion;
25
+ constructor(position?: THREE.Vector3 | {
26
+ x: number;
27
+ y: number;
28
+ z: number;
29
+ }, rotation?: THREE.Quaternion | {
30
+ x: number;
31
+ y: number;
32
+ z: number;
33
+ w: number;
34
+ });
35
+ /**
36
+ * Compose: this 의 frame "안" 에서 child 를 적용. 합성된 결과는 부모(this)의
37
+ * 좌표계 기준이다.
38
+ *
39
+ * result.position = this.position + this.rotation × child.position
40
+ * result.rotation = this.rotation × child.rotation
41
+ *
42
+ * 예: holder.worldPose.compose(carrier.localPose) = carrier.worldPose
43
+ */
44
+ compose(child: Pose6DOF): Pose6DOF;
45
+ /**
46
+ * Inverse: this 가 적용 전으로 되돌리는 변환.
47
+ *
48
+ * inv.rotation = this.rotation⁻¹
49
+ * inv.position = -inv.rotation × this.position
50
+ *
51
+ * 항등식: this.compose(this.inverse()) = identity = this.inverse().compose(this).
52
+ */
53
+ inverse(): Pose6DOF;
54
+ /**
55
+ * Transform a point: p' = this.rotation × p + this.position.
56
+ * 입력은 변경하지 않는다 — 새 Vector3 반환.
57
+ */
58
+ transformPoint(p: THREE.Vector3): THREE.Vector3;
59
+ /**
60
+ * Transform a pose. compose 의 의미상 동치.
61
+ * parent.transformPose(child_local) = child_world
62
+ */
63
+ transformPose(child: Pose6DOF): Pose6DOF;
64
+ toMatrix4(out?: THREE.Matrix4): THREE.Matrix4;
65
+ /**
66
+ * Matrix4 의 translation + rotation 만 추출. scale 은 무시 (rigid).
67
+ * scale 이 1 이 아닌 행렬을 넣으면 scale 분해 후 폐기.
68
+ */
69
+ static fromMatrix4(m: THREE.Matrix4): Pose6DOF;
70
+ /**
71
+ * Object3D 의 pose 를 캡처. world=true 이면 world matrix (부모 chain 통과)
72
+ * 를, 아니면 local position/quaternion 을 사용.
73
+ *
74
+ * world=true 호출 전에 객체의 worldMatrix 가 최신이어야 한다 (호출자가
75
+ * `obj.updateWorldMatrix(true, false)` 보장).
76
+ */
77
+ static fromObject3D(obj: THREE.Object3D, world?: boolean): Pose6DOF;
78
+ /**
79
+ * Object3D 의 local position/quaternion 에 이 pose 를 적용. scale 은 건드리지
80
+ * 않는다.
81
+ */
82
+ applyToObject3D(obj: THREE.Object3D): void;
83
+ static identity(): Pose6DOF;
84
+ /**
85
+ * Numerical equality 검사. position 은 component-wise abs diff, rotation 은
86
+ * dot product (둘은 sign 다른 같은 회전 — abs(dot) ≈ 1).
87
+ */
88
+ equals(other: Pose6DOF, tol?: number): boolean;
89
+ clone(): Pose6DOF;
90
+ toJSON(): PoseLike;
91
+ static fromJSON(j: PoseLike): Pose6DOF;
92
+ }
93
+ //# sourceMappingURL=pose6dof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pose6dof.d.ts","sourceRoot":"","sources":["../../src/math/pose6dof.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAQ9B,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7C,QAAQ,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACzD;AAED,qBAAa,QAAQ;IACnB;;;OAGG;IACH,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAA;IAEhC;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAA;gBAEvB,QAAQ,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,UAAU,GAAG;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE;IAkBxJ;;;;;;;;OAQG;IACH,OAAO,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAMlC;;;;;;;OAOG;IACH,OAAO,IAAI,QAAQ;IAMnB;;;OAGG;IACH,cAAc,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO;IAI/C;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,QAAQ,GAAG,QAAQ;IAIxC,SAAS,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO;IAM7C;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,QAAQ;IAQ9C;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,GAAE,OAAe,GAAG,QAAQ;IAW1E;;;OAGG;IACH,eAAe,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI;IAK1C,MAAM,CAAC,QAAQ,IAAI,QAAQ;IAI3B;;;OAGG;IACH,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,GAAE,MAAa,GAAG,OAAO;IAapD,KAAK,IAAI,QAAQ;IAIjB,MAAM,IAAI,QAAQ;IAOlB,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,QAAQ,GAAG,QAAQ;CAGvC"}
@@ -0,0 +1,7 @@
1
+ export type { LaneGeometry, Lane, ConflictPair, Intersection, NavPolygon, OpenZone, TimeWindow, Reservation, SpeedProfile, PathSegment, PathPlan, PathPlanOptions, Navigable, YieldDecision, YieldPolicy } from './types.js';
2
+ export { ReservationTable, reservationTable, standardYieldPolicy } from './reservation-table.js';
3
+ export type { ReservationEvent, AddResult, Conflict, ConflictRecord } from './reservation-table.js';
4
+ export { NavGraph, buildNavGraph } from './nav-graph.js';
5
+ export type { NavNode, NavEdge, BuildNavGraphOptions } from './nav-graph.js';
6
+ export { planPathAStar, planToReservations } from './path-planner.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/navigation/index.ts"],"names":[],"mappings":"AAaA,YAAY,EACV,YAAY,EACZ,IAAI,EACJ,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,UAAU,EACV,WAAW,EACX,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,eAAe,EACf,SAAS,EACT,aAAa,EACb,WAAW,EACZ,MAAM,YAAY,CAAA;AAEnB,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,gBAAgB,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEnG,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AACxD,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AAE5E,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA"}