@hatiolab/things-scene 10.0.0-beta.14 → 10.0.0-beta.140

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 (482) hide show
  1. package/CHANGELOG.md +65 -0
  2. package/README.md +56 -53
  3. package/dist-types/animation/animate.d.ts.map +1 -1
  4. package/dist-types/animation/animations/animation.d.ts +5 -3
  5. package/dist-types/animation/animations/animation.d.ts.map +1 -1
  6. package/dist-types/animation/animations/heartbeat.d.ts +0 -7
  7. package/dist-types/animation/animations/heartbeat.d.ts.map +1 -1
  8. package/dist-types/animation/animations/waypoint.d.ts +45 -4
  9. package/dist-types/animation/animations/waypoint.d.ts.map +1 -1
  10. package/dist-types/animation/interfaces.d.ts +1 -1
  11. package/dist-types/animation/interfaces.d.ts.map +1 -1
  12. package/dist-types/clock/frame-clock.d.ts +119 -0
  13. package/dist-types/clock/frame-clock.d.ts.map +1 -0
  14. package/dist-types/clock/index.d.ts +3 -0
  15. package/dist-types/clock/index.d.ts.map +1 -0
  16. package/dist-types/command/command-migrate.d.ts.map +1 -1
  17. package/dist-types/command/snapshot-commander.d.ts.map +1 -1
  18. package/dist-types/components/audio.d.ts +19 -12
  19. package/dist-types/components/audio.d.ts.map +1 -1
  20. package/dist-types/components/component-data.d.ts +24 -0
  21. package/dist-types/components/component-data.d.ts.map +1 -1
  22. package/dist-types/components/component-drawing.d.ts.map +1 -1
  23. package/dist-types/components/component-geometry.d.ts.map +1 -1
  24. package/dist-types/components/component-hierarchy.d.ts +1 -1
  25. package/dist-types/components/component-hierarchy.d.ts.map +1 -1
  26. package/dist-types/components/component.d.ts +123 -17
  27. package/dist-types/components/component.d.ts.map +1 -1
  28. package/dist-types/components/container-abstract.d.ts +74 -29
  29. package/dist-types/components/container-abstract.d.ts.map +1 -1
  30. package/dist-types/components/container.d.ts +19 -11
  31. package/dist-types/components/container.d.ts.map +1 -1
  32. package/dist-types/components/data/data.d.ts.map +1 -1
  33. package/dist-types/components/data/evaluator.d.ts +27 -0
  34. package/dist-types/components/data/evaluator.d.ts.map +1 -1
  35. package/dist-types/components/donut.d.ts.map +1 -1
  36. package/dist-types/components/drawer/fill.d.ts.map +1 -1
  37. package/dist-types/components/drawer/stroke.d.ts.map +1 -1
  38. package/dist-types/components/ellipse.d.ts +19 -12
  39. package/dist-types/components/ellipse.d.ts.map +1 -1
  40. package/dist-types/components/generic-placeholders.d.ts +294 -0
  41. package/dist-types/components/generic-placeholders.d.ts.map +1 -0
  42. package/dist-types/components/geometry/snap-guide.d.ts +45 -0
  43. package/dist-types/components/geometry/snap-guide.d.ts.map +1 -0
  44. package/dist-types/components/geometry/transcoord.d.ts.map +1 -1
  45. package/dist-types/components/global-ref.d.ts.map +1 -1
  46. package/dist-types/components/group.d.ts +2 -0
  47. package/dist-types/components/group.d.ts.map +1 -1
  48. package/dist-types/components/html/reposition.d.ts.map +1 -1
  49. package/dist-types/components/html/shadow.d.ts +33 -1
  50. package/dist-types/components/html/shadow.d.ts.map +1 -1
  51. package/dist-types/components/html-overlay-container.d.ts +19 -11
  52. package/dist-types/components/html-overlay-container.d.ts.map +1 -1
  53. package/dist-types/components/html-overlay-element.d.ts +38 -23
  54. package/dist-types/components/html-overlay-element.d.ts.map +1 -1
  55. package/dist-types/components/image-view.d.ts +19 -12
  56. package/dist-types/components/image-view.d.ts.map +1 -1
  57. package/dist-types/components/index.d.ts +7 -0
  58. package/dist-types/components/index.d.ts.map +1 -1
  59. package/dist-types/components/info-window.d.ts +19 -12
  60. package/dist-types/components/info-window.d.ts.map +1 -1
  61. package/dist-types/components/line.d.ts +2 -1
  62. package/dist-types/components/line.d.ts.map +1 -1
  63. package/dist-types/components/local-ref.d.ts +19 -12
  64. package/dist-types/components/local-ref.d.ts.map +1 -1
  65. package/dist-types/components/mixins/connectable.d.ts +19 -12
  66. package/dist-types/components/mixins/connectable.d.ts.map +1 -1
  67. package/dist-types/components/mixins/data-source.d.ts +19 -12
  68. package/dist-types/components/mixins/data-source.d.ts.map +1 -1
  69. package/dist-types/components/mixins/gltf-component.d.ts +282 -0
  70. package/dist-types/components/mixins/gltf-component.d.ts.map +1 -0
  71. package/dist-types/components/mixins/holdable.d.ts +12 -0
  72. package/dist-types/components/mixins/holdable.d.ts.map +1 -0
  73. package/dist-types/components/mixins/html-element.d.ts +28 -11
  74. package/dist-types/components/mixins/html-element.d.ts.map +1 -1
  75. package/dist-types/components/mixins/move-handle.d.ts +28 -16
  76. package/dist-types/components/mixins/move-handle.d.ts.map +1 -1
  77. package/dist-types/components/mixins/rect-path.d.ts +19 -12
  78. package/dist-types/components/mixins/rect-path.d.ts.map +1 -1
  79. package/dist-types/components/mixins/three-d-only.d.ts +256 -0
  80. package/dist-types/components/mixins/three-d-only.d.ts.map +1 -0
  81. package/dist-types/components/mixins/value-holder.d.ts +19 -12
  82. package/dist-types/components/mixins/value-holder.d.ts.map +1 -1
  83. package/dist-types/components/modeling-faint.d.ts +14 -0
  84. package/dist-types/components/modeling-faint.d.ts.map +1 -0
  85. package/dist-types/components/mutater/path.d.ts.map +1 -1
  86. package/dist-types/components/node.d.ts +19 -12
  87. package/dist-types/components/node.d.ts.map +1 -1
  88. package/dist-types/components/outline/path-outline.d.ts.map +1 -1
  89. package/dist-types/components/polygon-container.d.ts +61 -0
  90. package/dist-types/components/polygon-container.d.ts.map +1 -0
  91. package/dist-types/components/polygon.d.ts +2 -0
  92. package/dist-types/components/polygon.d.ts.map +1 -1
  93. package/dist-types/components/polyline.d.ts +6 -0
  94. package/dist-types/components/polyline.d.ts.map +1 -1
  95. package/dist-types/components/popup-container.d.ts +25 -0
  96. package/dist-types/components/popup-container.d.ts.map +1 -0
  97. package/dist-types/components/popup.d.ts +49 -12
  98. package/dist-types/components/popup.d.ts.map +1 -1
  99. package/dist-types/components/position/popup-position.d.ts +11 -0
  100. package/dist-types/components/position/popup-position.d.ts.map +1 -1
  101. package/dist-types/components/rect.d.ts +38 -24
  102. package/dist-types/components/rect.d.ts.map +1 -1
  103. package/dist-types/components/retention/retention-manager.d.ts +9 -1
  104. package/dist-types/components/retention/retention-manager.d.ts.map +1 -1
  105. package/dist-types/components/root-container.d.ts +18 -4
  106. package/dist-types/components/root-container.d.ts.map +1 -1
  107. package/dist-types/components/ruler.d.ts +19 -12
  108. package/dist-types/components/ruler.d.ts.map +1 -1
  109. package/dist-types/components/service-component.d.ts +271 -0
  110. package/dist-types/components/service-component.d.ts.map +1 -0
  111. package/dist-types/components/shape.d.ts.map +1 -1
  112. package/dist-types/components/star.d.ts.map +1 -1
  113. package/dist-types/components/text.d.ts +19 -12
  114. package/dist-types/components/text.d.ts.map +1 -1
  115. package/dist-types/core/dom-to-image.d.ts.map +1 -1
  116. package/dist-types/core/logger.d.ts.map +1 -1
  117. package/dist-types/core/memoize.d.ts.map +1 -1
  118. package/dist-types/decorator/decorator-registry.d.ts +14 -1
  119. package/dist-types/decorator/decorator-registry.d.ts.map +1 -1
  120. package/dist-types/decorator/decorators/animated-icon-decorator.d.ts.map +1 -1
  121. package/dist-types/decorator/decorators/border-highlighting-decorator.d.ts +0 -4
  122. package/dist-types/decorator/decorators/border-highlighting-decorator.d.ts.map +1 -1
  123. package/dist-types/decorator/decorators/bouncing-arrow-decorator.d.ts +0 -3
  124. package/dist-types/decorator/decorators/bouncing-arrow-decorator.d.ts.map +1 -1
  125. package/dist-types/decorator/decorators/data-spread-decorator.d.ts +16 -0
  126. package/dist-types/decorator/decorators/data-spread-decorator.d.ts.map +1 -1
  127. package/dist-types/diagnostics/contract-inspector.d.ts +110 -0
  128. package/dist-types/diagnostics/contract-inspector.d.ts.map +1 -0
  129. package/dist-types/diagnostics/data-lag-tracker.d.ts +50 -0
  130. package/dist-types/diagnostics/data-lag-tracker.d.ts.map +1 -0
  131. package/dist-types/diagnostics/inspector.d.ts +192 -5
  132. package/dist-types/diagnostics/inspector.d.ts.map +1 -1
  133. package/dist-types/diagnostics/load-tracker.d.ts +82 -0
  134. package/dist-types/diagnostics/load-tracker.d.ts.map +1 -0
  135. package/dist-types/diagnostics/loading-overlay.d.ts +98 -0
  136. package/dist-types/diagnostics/loading-overlay.d.ts.map +1 -0
  137. package/dist-types/diagnostics/metrics.d.ts +10 -0
  138. package/dist-types/diagnostics/metrics.d.ts.map +1 -1
  139. package/dist-types/effect/shadow.d.ts +3 -1
  140. package/dist-types/effect/shadow.d.ts.map +1 -1
  141. package/dist-types/event-map/index.d.ts +1 -0
  142. package/dist-types/event-map/index.d.ts.map +1 -1
  143. package/dist-types/event-map/transition-handler.d.ts +2 -0
  144. package/dist-types/event-map/transition-handler.d.ts.map +1 -0
  145. package/dist-types/flow/auto-route.d.ts +36 -0
  146. package/dist-types/flow/auto-route.d.ts.map +1 -0
  147. package/dist-types/flow/capability-inference.d.ts +19 -0
  148. package/dist-types/flow/capability-inference.d.ts.map +1 -0
  149. package/dist-types/flow/face-anchors.d.ts +26 -0
  150. package/dist-types/flow/face-anchors.d.ts.map +1 -0
  151. package/dist-types/flow/flow-engine.d.ts +122 -0
  152. package/dist-types/flow/flow-engine.d.ts.map +1 -0
  153. package/dist-types/flow/flow-graph-coordinator.d.ts +80 -0
  154. package/dist-types/flow/flow-graph-coordinator.d.ts.map +1 -0
  155. package/dist-types/flow/flow-graph-validator.d.ts +33 -0
  156. package/dist-types/flow/flow-graph-validator.d.ts.map +1 -0
  157. package/dist-types/flow/flow-graph.d.ts +76 -0
  158. package/dist-types/flow/flow-graph.d.ts.map +1 -0
  159. package/dist-types/flow/flow-introspection.d.ts +36 -0
  160. package/dist-types/flow/flow-introspection.d.ts.map +1 -0
  161. package/dist-types/flow/flow-node.d.ts +69 -0
  162. package/dist-types/flow/flow-node.d.ts.map +1 -0
  163. package/dist-types/flow/flow-orientation-coordinator.d.ts +13 -0
  164. package/dist-types/flow/flow-orientation-coordinator.d.ts.map +1 -0
  165. package/dist-types/flow/flow-orientation.d.ts +42 -0
  166. package/dist-types/flow/flow-orientation.d.ts.map +1 -0
  167. package/dist-types/flow/flow-trace.d.ts +5 -0
  168. package/dist-types/flow/flow-trace.d.ts.map +1 -0
  169. package/dist-types/flow/index.d.ts +16 -0
  170. package/dist-types/flow/index.d.ts.map +1 -0
  171. package/dist-types/flow/segment-topology.d.ts +225 -0
  172. package/dist-types/flow/segment-topology.d.ts.map +1 -0
  173. package/dist-types/interfaces/event-handler.d.ts +40 -0
  174. package/dist-types/interfaces/event-handler.d.ts.map +1 -0
  175. package/dist-types/interfaces/index.d.ts +2 -0
  176. package/dist-types/interfaces/index.d.ts.map +1 -1
  177. package/dist-types/interfaces/layout.d.ts +35 -1
  178. package/dist-types/interfaces/layout.d.ts.map +1 -1
  179. package/dist-types/interfaces/providers.d.ts +27 -3
  180. package/dist-types/interfaces/providers.d.ts.map +1 -1
  181. package/dist-types/interfaces/real-object.d.ts +8 -1
  182. package/dist-types/interfaces/real-object.d.ts.map +1 -1
  183. package/dist-types/interfaces/rendering.d.ts +86 -14
  184. package/dist-types/interfaces/rendering.d.ts.map +1 -1
  185. package/dist-types/interfaces/types.d.ts +20 -1
  186. package/dist-types/interfaces/types.d.ts.map +1 -1
  187. package/dist-types/items/arrangement/centering-queue-strategy.d.ts +10 -0
  188. package/dist-types/items/arrangement/centering-queue-strategy.d.ts.map +1 -0
  189. package/dist-types/items/arrangement/index.d.ts +2 -0
  190. package/dist-types/items/arrangement/index.d.ts.map +1 -0
  191. package/dist-types/items/capacity-mixin.d.ts +303 -0
  192. package/dist-types/items/capacity-mixin.d.ts.map +1 -0
  193. package/dist-types/items/capacity.d.ts +53 -0
  194. package/dist-types/items/capacity.d.ts.map +1 -0
  195. package/dist-types/items/index.d.ts +7 -0
  196. package/dist-types/items/index.d.ts.map +1 -0
  197. package/dist-types/items/items-data-binding.d.ts +103 -0
  198. package/dist-types/items/items-data-binding.d.ts.map +1 -0
  199. package/dist-types/items/slot-record.d.ts +23 -0
  200. package/dist-types/items/slot-record.d.ts.map +1 -0
  201. package/dist-types/items/stacking/index.d.ts +3 -0
  202. package/dist-types/items/stacking/index.d.ts.map +1 -0
  203. package/dist-types/items/stacking/stack-layout.d.ts +33 -0
  204. package/dist-types/items/stacking/stack-layout.d.ts.map +1 -0
  205. package/dist-types/items/stacking/stacking-strategy.d.ts +114 -0
  206. package/dist-types/items/stacking/stacking-strategy.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 +79 -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/clipboard.d.ts +1 -1
  270. package/dist-types/things-scene/api/clipboard.d.ts.map +1 -1
  271. package/dist-types/things-scene/api/distribute.d.ts.map +1 -1
  272. package/dist-types/things-scene/api/ids.d.ts +4 -1
  273. package/dist-types/things-scene/api/ids.d.ts.map +1 -1
  274. package/dist-types/things-scene/api/index.d.ts +1 -1
  275. package/dist-types/things-scene/api/index.d.ts.map +1 -1
  276. package/dist-types/things-scene/api/listener.d.ts +1 -1
  277. package/dist-types/things-scene/api/listener.d.ts.map +1 -1
  278. package/dist-types/things-scene/api/place.d.ts.map +1 -1
  279. package/dist-types/things-scene/api/to-data-url.d.ts +1 -1
  280. package/dist-types/things-scene/api/to-data-url.d.ts.map +1 -1
  281. package/dist-types/things-scene/api/zorder.d.ts +1 -1
  282. package/dist-types/things-scene/api/zorder.d.ts.map +1 -1
  283. package/dist-types/things-scene/application-context.d.ts +62 -0
  284. package/dist-types/things-scene/application-context.d.ts.map +1 -1
  285. package/dist-types/things-scene/create.d.ts +67 -3
  286. package/dist-types/things-scene/create.d.ts.map +1 -1
  287. package/dist-types/things-scene/index.d.ts +30 -0
  288. package/dist-types/things-scene/index.d.ts.map +1 -1
  289. package/dist-types/things-scene/scene.d.ts +196 -21
  290. package/dist-types/things-scene/scene.d.ts.map +1 -1
  291. package/dist-types/threed/arrow-3d.d.ts +13 -4
  292. package/dist-types/threed/arrow-3d.d.ts.map +1 -1
  293. package/dist-types/threed/common.d.ts +6 -1
  294. package/dist-types/threed/common.d.ts.map +1 -1
  295. package/dist-types/threed/environments/base-environment.d.ts +17 -0
  296. package/dist-types/threed/environments/base-environment.d.ts.map +1 -0
  297. package/dist-types/threed/environments/cloudy-environment.d.ts +10 -0
  298. package/dist-types/threed/environments/cloudy-environment.d.ts.map +1 -0
  299. package/dist-types/threed/environments/factory-environment.d.ts +3 -3
  300. package/dist-types/threed/environments/factory-environment.d.ts.map +1 -1
  301. package/dist-types/threed/environments/home-environment.d.ts +3 -3
  302. package/dist-types/threed/environments/home-environment.d.ts.map +1 -1
  303. package/dist-types/threed/environments/office-environment.d.ts +3 -3
  304. package/dist-types/threed/environments/office-environment.d.ts.map +1 -1
  305. package/dist-types/threed/environments/rainy-environment.d.ts +10 -0
  306. package/dist-types/threed/environments/rainy-environment.d.ts.map +1 -0
  307. package/dist-types/threed/environments/studio-environment.d.ts +2 -3
  308. package/dist-types/threed/environments/studio-environment.d.ts.map +1 -1
  309. package/dist-types/threed/environments/sunny-environment.d.ts +10 -0
  310. package/dist-types/threed/environments/sunny-environment.d.ts.map +1 -0
  311. package/dist-types/threed/environments/warehouse-environment.d.ts +3 -3
  312. package/dist-types/threed/environments/warehouse-environment.d.ts.map +1 -1
  313. package/dist-types/threed/factories/backdrop.d.ts +542 -0
  314. package/dist-types/threed/factories/backdrop.d.ts.map +1 -0
  315. package/dist-types/threed/factories/banner.d.ts +25 -13
  316. package/dist-types/threed/factories/banner.d.ts.map +1 -1
  317. package/dist-types/threed/factories/camera.d.ts +21 -12
  318. package/dist-types/threed/factories/camera.d.ts.map +1 -1
  319. package/dist-types/threed/factories/cube.d.ts +20 -12
  320. package/dist-types/threed/factories/cube.d.ts.map +1 -1
  321. package/dist-types/threed/factories/cylinder.d.ts +1 -0
  322. package/dist-types/threed/factories/cylinder.d.ts.map +1 -1
  323. package/dist-types/threed/factories/decal.d.ts +517 -0
  324. package/dist-types/threed/factories/decal.d.ts.map +1 -0
  325. package/dist-types/threed/factories/floor-plate.d.ts +12 -0
  326. package/dist-types/threed/factories/floor-plate.d.ts.map +1 -0
  327. package/dist-types/threed/factories/gltf-object.d.ts +279 -47
  328. package/dist-types/threed/factories/gltf-object.d.ts.map +1 -1
  329. package/dist-types/threed/factories/group.d.ts +2 -0
  330. package/dist-types/threed/factories/group.d.ts.map +1 -0
  331. package/dist-types/threed/factories/light.d.ts +1 -0
  332. package/dist-types/threed/factories/light.d.ts.map +1 -1
  333. package/dist-types/threed/factories/line.d.ts +10 -0
  334. package/dist-types/threed/factories/line.d.ts.map +1 -0
  335. package/dist-types/threed/factories/ortholine.d.ts +10 -0
  336. package/dist-types/threed/factories/ortholine.d.ts.map +1 -0
  337. package/dist-types/threed/factories/polygon.d.ts +19 -0
  338. package/dist-types/threed/factories/polygon.d.ts.map +1 -1
  339. package/dist-types/threed/factories/polyline.d.ts +10 -0
  340. package/dist-types/threed/factories/polyline.d.ts.map +1 -0
  341. package/dist-types/threed/factories/rect.d.ts.map +1 -1
  342. package/dist-types/threed/factories/sphere.d.ts +6 -0
  343. package/dist-types/threed/factories/sphere.d.ts.map +1 -1
  344. package/dist-types/threed/factories/sprite.d.ts +20 -12
  345. package/dist-types/threed/factories/sprite.d.ts.map +1 -1
  346. package/dist-types/threed/factories/triangle.d.ts.map +1 -1
  347. package/dist-types/threed/factories/wall.d.ts +20 -12
  348. package/dist-types/threed/factories/wall.d.ts.map +1 -1
  349. package/dist-types/threed/floor/floor.d.ts.map +1 -1
  350. package/dist-types/threed/handle-3d.d.ts +21 -0
  351. package/dist-types/threed/handle-3d.d.ts.map +1 -0
  352. package/dist-types/threed/html/elements.d.ts.map +1 -1
  353. package/dist-types/threed/index.d.ts +28 -0
  354. package/dist-types/threed/index.d.ts.map +1 -1
  355. package/dist-types/threed/managers/box-selection-manager.d.ts +26 -0
  356. package/dist-types/threed/managers/box-selection-manager.d.ts.map +1 -0
  357. package/dist-types/threed/managers/camera-bookmark-manager.d.ts +48 -37
  358. package/dist-types/threed/managers/camera-bookmark-manager.d.ts.map +1 -1
  359. package/dist-types/threed/managers/camera-manager.d.ts +9 -2
  360. package/dist-types/threed/managers/camera-manager.d.ts.map +1 -1
  361. package/dist-types/threed/managers/controls-manager.d.ts +12 -0
  362. package/dist-types/threed/managers/controls-manager.d.ts.map +1 -1
  363. package/dist-types/threed/managers/event-manager3d.d.ts +14 -0
  364. package/dist-types/threed/managers/event-manager3d.d.ts.map +1 -1
  365. package/dist-types/threed/managers/gizmo-manager.d.ts +6 -0
  366. package/dist-types/threed/managers/gizmo-manager.d.ts.map +1 -1
  367. package/dist-types/threed/managers/gizmo-operation-manager.d.ts +54 -1
  368. package/dist-types/threed/managers/gizmo-operation-manager.d.ts.map +1 -1
  369. package/dist-types/threed/managers/index.d.ts +3 -1
  370. package/dist-types/threed/managers/index.d.ts.map +1 -1
  371. package/dist-types/threed/managers/interaction-manager.d.ts +17 -0
  372. package/dist-types/threed/managers/interaction-manager.d.ts.map +1 -1
  373. package/dist-types/threed/managers/light-manager.d.ts +15 -0
  374. package/dist-types/threed/managers/light-manager.d.ts.map +1 -1
  375. package/dist-types/threed/managers/renderer-manager.d.ts +37 -0
  376. package/dist-types/threed/managers/renderer-manager.d.ts.map +1 -1
  377. package/dist-types/threed/managers/scene-manager.d.ts +12 -2
  378. package/dist-types/threed/managers/scene-manager.d.ts.map +1 -1
  379. package/dist-types/threed/managers/types.d.ts +4 -1
  380. package/dist-types/threed/managers/types.d.ts.map +1 -1
  381. package/dist-types/threed/managers/vertex-gizmo-manager.d.ts +154 -0
  382. package/dist-types/threed/managers/vertex-gizmo-manager.d.ts.map +1 -0
  383. package/dist-types/threed/material-3d.d.ts +5 -2
  384. package/dist-types/threed/material-3d.d.ts.map +1 -1
  385. package/dist-types/threed/material-bank.d.ts +42 -0
  386. package/dist-types/threed/material-bank.d.ts.map +1 -0
  387. package/dist-types/threed/material-variant.d.ts +43 -0
  388. package/dist-types/threed/material-variant.d.ts.map +1 -0
  389. package/dist-types/threed/ratio-lock-utils.d.ts +9 -0
  390. package/dist-types/threed/ratio-lock-utils.d.ts.map +1 -0
  391. package/dist-types/threed/real-object-dom-element.d.ts +9 -0
  392. package/dist-types/threed/real-object-dom-element.d.ts.map +1 -1
  393. package/dist-types/threed/real-object-dom-texture.d.ts +9 -1
  394. package/dist-types/threed/real-object-dom-texture.d.ts.map +1 -1
  395. package/dist-types/threed/real-object-external-model.d.ts +24 -0
  396. package/dist-types/threed/real-object-external-model.d.ts.map +1 -0
  397. package/dist-types/threed/real-object-extrude.d.ts +16 -1
  398. package/dist-types/threed/real-object-extrude.d.ts.map +1 -1
  399. package/dist-types/threed/real-object-gltf.d.ts +21 -11
  400. package/dist-types/threed/real-object-gltf.d.ts.map +1 -1
  401. package/dist-types/threed/real-object-group.d.ts +2 -0
  402. package/dist-types/threed/real-object-group.d.ts.map +1 -1
  403. package/dist-types/threed/real-object-line.d.ts +83 -0
  404. package/dist-types/threed/real-object-line.d.ts.map +1 -0
  405. package/dist-types/threed/real-object-mesh.d.ts +0 -1
  406. package/dist-types/threed/real-object-mesh.d.ts.map +1 -1
  407. package/dist-types/threed/real-object-plane-2d.d.ts +23 -1
  408. package/dist-types/threed/real-object-plane-2d.d.ts.map +1 -1
  409. package/dist-types/threed/real-object-service.d.ts +14 -0
  410. package/dist-types/threed/real-object-service.d.ts.map +1 -0
  411. package/dist-types/threed/real-object-sprite.d.ts +7 -2
  412. package/dist-types/threed/real-object-sprite.d.ts.map +1 -1
  413. package/dist-types/threed/real-object-text.d.ts +5 -0
  414. package/dist-types/threed/real-object-text.d.ts.map +1 -1
  415. package/dist-types/threed/real-object.d.ts +276 -7
  416. package/dist-types/threed/real-object.d.ts.map +1 -1
  417. package/dist-types/threed/text-editor-3d.d.ts +11 -0
  418. package/dist-types/threed/text-editor-3d.d.ts.map +1 -0
  419. package/dist-types/threed/texture/canvas-texture.d.ts +7 -0
  420. package/dist-types/threed/texture/canvas-texture.d.ts.map +1 -1
  421. package/dist-types/threed/texture/fillstyle-texture.d.ts +57 -0
  422. package/dist-types/threed/texture/fillstyle-texture.d.ts.map +1 -0
  423. package/dist-types/threed/texture/text-texture.d.ts +15 -0
  424. package/dist-types/threed/texture/text-texture.d.ts.map +1 -1
  425. package/dist-types/threed/three-capability.d.ts +93 -12
  426. package/dist-types/threed/three-capability.d.ts.map +1 -1
  427. package/dist-types/threed/three-container.d.ts.map +1 -1
  428. package/dist-types/threed/threed-enabled.d.ts +5 -0
  429. package/dist-types/threed/threed-enabled.d.ts.map +1 -0
  430. package/dist-types/threed/utils/anchor.d.ts +33 -0
  431. package/dist-types/threed/utils/anchor.d.ts.map +1 -0
  432. package/dist-types/threed/utils/dispose.d.ts.map +1 -1
  433. package/dist-types/threed/utils/polygon-shape.d.ts +21 -0
  434. package/dist-types/threed/utils/polygon-shape.d.ts.map +1 -0
  435. package/dist-types/threed/utils/tether.d.ts +46 -0
  436. package/dist-types/threed/utils/tether.d.ts.map +1 -0
  437. package/dist-types/threed/z-priority.d.ts +27 -0
  438. package/dist-types/threed/z-priority.d.ts.map +1 -0
  439. package/dist-types/tracker/tracker.d.ts +57 -0
  440. package/dist-types/tracker/tracker.d.ts.map +1 -0
  441. package/dist-types/transfer/carrier-line-capability.d.ts +95 -0
  442. package/dist-types/transfer/carrier-line-capability.d.ts.map +1 -0
  443. package/dist-types/transfer/centering-slot-strategy.d.ts +8 -0
  444. package/dist-types/transfer/centering-slot-strategy.d.ts.map +1 -0
  445. package/dist-types/transfer/fixed-slot-strategy.d.ts +8 -0
  446. package/dist-types/transfer/fixed-slot-strategy.d.ts.map +1 -0
  447. package/dist-types/transfer/index.d.ts +25 -0
  448. package/dist-types/transfer/index.d.ts.map +1 -0
  449. package/dist-types/transfer/pickup-helpers.d.ts +75 -0
  450. package/dist-types/transfer/pickup-helpers.d.ts.map +1 -0
  451. package/dist-types/transfer/simulation-clock.d.ts +45 -0
  452. package/dist-types/transfer/simulation-clock.d.ts.map +1 -0
  453. package/dist-types/transfer/tracer.d.ts +35 -0
  454. package/dist-types/transfer/tracer.d.ts.map +1 -0
  455. package/dist-types/transfer/transfer-helpers.d.ts +18 -0
  456. package/dist-types/transfer/transfer-helpers.d.ts.map +1 -0
  457. package/dist-types/transfer/transfer.d.ts +257 -0
  458. package/dist-types/transfer/transfer.d.ts.map +1 -0
  459. package/dist-types/transfer/transferable-mixin.d.ts +275 -0
  460. package/dist-types/transfer/transferable-mixin.d.ts.map +1 -0
  461. package/dist-types/transfer/types.d.ts +462 -0
  462. package/dist-types/transfer/types.d.ts.map +1 -0
  463. package/dist-types/transition/transition-effect.d.ts +117 -0
  464. package/dist-types/transition/transition-effect.d.ts.map +1 -0
  465. package/dist-types/types/bounding.d.ts +1 -1
  466. package/dist-types/types/bounding.d.ts.map +1 -1
  467. package/dist-types/types/capability.d.ts +65 -0
  468. package/dist-types/types/capability.d.ts.map +1 -0
  469. package/dist-types/types/component.d.ts +6 -177
  470. package/dist-types/types/component.d.ts.map +1 -1
  471. package/dist-types/types/event.d.ts +57 -0
  472. package/dist-types/types/event.d.ts.map +1 -1
  473. package/dist-types/types/polygon-path-arc.d.ts +72 -0
  474. package/dist-types/types/polygon-path-arc.d.ts.map +1 -0
  475. package/dist-types/types/polygon-path.d.ts +153 -0
  476. package/dist-types/types/polygon-path.d.ts.map +1 -0
  477. package/package.json +13 -2
  478. package/things-scene-min.js +12 -13
  479. package/things-scene-min.js.map +1 -1
  480. package/things-scene-transfer.mjs +7 -0
  481. package/things-scene.mjs +8 -9
  482. package/things-scene.mjs.map +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/transfer/index.ts"],"names":[],"mappings":"AAIA,YAAY,EACV,IAAI,EACJ,KAAK,EACL,OAAO,EACP,eAAe,EACf,SAAS,EACT,OAAO,EACP,cAAc,EACd,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,IAAI,EACJ,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,iBAAiB,EACjB,OAAO,EACP,qBAAqB,EACrB,aAAa,EACb,cAAc,EACd,eAAe,EACf,WAAW,EACX,UAAU,EACV,SAAS,EAET,QAAQ,EACR,cAAc,EACd,WAAW,EACX,eAAe,EACf,QAAQ,EAER,WAAW,EACX,gBAAgB,EAChB,WAAW,EACZ,MAAM,YAAY,CAAA;AAOnB,OAAO,EACL,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAGnF,OAAO,EACL,WAAW,EACX,0BAA0B,EAC1B,gBAAgB,EAChB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,qBAAqB,CAAA;AAC5B,YAAY,EAAE,2BAA2B,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAA;AAE1F,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAIzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAE5D,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAEtD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAI9C,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AACpE,YAAY,EACV,aAAa,EACb,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,gBAAgB,EAChB,cAAc,EACd,YAAY,EACZ,kBAAkB,EACnB,MAAM,eAAe,CAAA;AAGtB,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC5C,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAGhD,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,SAAS,EACV,MAAM,8BAA8B,CAAA;AAIrC,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAChB,mBAAmB,EACnB,QAAQ,EACR,aAAa,EACb,aAAa,EACb,kBAAkB,EACnB,MAAM,wBAAwB,CAAA;AAC/B,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,EACX,gBAAgB,EAChB,SAAS,EACT,QAAQ,EACR,cAAc,EACd,OAAO,EACP,OAAO,EACP,oBAAoB,EACrB,MAAM,wBAAwB,CAAA;AAG/B,cAAc,0BAA0B,CAAA;AACxC,cAAc,8BAA8B,CAAA;AAI5C,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,kCAAkC,CAAA"}
@@ -0,0 +1,75 @@
1
+ import type { PickupFrame, PickupRequester, Vec3, QuatLike, PoseSerialized } from './types.js';
2
+ /**
3
+ * Y 축 (3D vertical) 회전을 quaternion 으로. Three.js 없이 직접 계산 (cross-package
4
+ * 호환성).
5
+ *
6
+ * q = (0, sin(θ/2), 0, cos(θ/2))
7
+ */
8
+ export declare function quatFromYaw(yawRad: number): QuatLike;
9
+ export interface RectangularFootprintOptions {
10
+ /** carrier 의 world pose — entry 들이 이 frame 기준으로 회전/병진된다. */
11
+ carrierWorld: PoseSerialized;
12
+ /** carrier 의 가로 (X 방향). */
13
+ width: number;
14
+ /** carrier 의 세로 (Z 방향). */
15
+ depth: number;
16
+ /** entry(grab)가 carrier 의 어느 높이에 있는가 (carrier-local Y). 도구가 닿는 지점. */
17
+ entryHeight: number;
18
+ /**
19
+ * *운반 중* carrier 가 도구에 실릴 때 도구 attach point 에 오는 하중면의 carrier-local Y
20
+ * (선택). fork 는 상판 아래면, deck 는 바닥. 미지정 시 mount 없음 → 도구 default(얹기).
21
+ */
22
+ mountLocalY?: number;
23
+ /** approach 가 engage 에서 얼마나 떨어진 거리. */
24
+ approachDistance: number;
25
+ /** 어느 면에 entry 를 둘지. 'east'+'west' = 2-way, 4 개 다 = 4-way. */
26
+ sides: ReadonlyArray<'east' | 'west' | 'north' | 'south'>;
27
+ /** entry 의 toolType. 모두 동일하면 string, 면별 다르면 map. */
28
+ toolType: string | Partial<Record<'east' | 'west' | 'north' | 'south', string>>;
29
+ /** entry 의 tolerance. */
30
+ tolerance?: PickupFrame['tolerance'];
31
+ /** entry 의 priority. */
32
+ priority?: number;
33
+ }
34
+ /**
35
+ * 직사각형 carrier 의 N-면 진입 entry 들을 한꺼번에 생성.
36
+ *
37
+ * 각 entry 의 engage 는 carrier 의 해당 면 중심 (carrier-local), approach 는
38
+ * 그 외부 approachDistance 만큼 떨어진 점. 도구는 carrier 쪽을 향한 채 (yaw)
39
+ * 다가오는 자세.
40
+ */
41
+ export declare function rectangularFootprintFrames(options: RectangularFootprintOptions): PickupFrame[];
42
+ export interface TopApproachOptions {
43
+ carrierWorld: PoseSerialized;
44
+ /** carrier 의 top 표면 Y (carrier-local). */
45
+ topY: number;
46
+ /** approach 가 top 에서 얼마나 위에 있는가. */
47
+ approachDistance: number;
48
+ toolType: string;
49
+ /**
50
+ * 운반 중 도구 attach 에 오는 하중면 carrier-local Y (선택). 위에서 집는 도구는 보통
51
+ * top 표면(=topY), 밑으로 들어가 얹는 deck 는 바닥. 미지정 시 mount 없음(도구 default).
52
+ */
53
+ mountLocalY?: number;
54
+ tolerance?: PickupFrame['tolerance'];
55
+ priority?: number;
56
+ id?: string;
57
+ }
58
+ /**
59
+ * 위쪽 한 점 진입 (예: vacuum gripper 로 box 집기, 자석으로 철판 들기).
60
+ *
61
+ * engage 는 carrier 의 top 표면 중심, approach 는 그 위 approachDistance.
62
+ * 도구는 carrier 위에서 수직 하강 — yaw 보존 (도구가 회전하지 않음).
63
+ */
64
+ export declare function topApproachFrame(options: TopApproachOptions): PickupFrame;
65
+ /**
66
+ * Pickable.pickupFramesFor 의 기본 구현. 도구 type 일치하는 entry 만 통과.
67
+ * tool footprint 까지 검사하고 싶으면 carrier 가 자체 override.
68
+ */
69
+ export declare function filterByToolType(frames: PickupFrame[], requester: PickupRequester): PickupFrame[];
70
+ /**
71
+ * 두 entry 중 source 위치에 더 가까운 것을 고르는 helper. distance 는 approach
72
+ * pose 위치 기준. priority 가 다르면 priority 우선.
73
+ */
74
+ export declare function chooseNearestPickupFrame(frames: PickupFrame[], fromWorldPosition: Vec3): PickupFrame | null;
75
+ //# sourceMappingURL=pickup-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pickup-helpers.d.ts","sourceRoot":"","sources":["../../src/transfer/pickup-helpers.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAI9F;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAQpD;AA2CD,MAAM,WAAW,2BAA2B;IAC1C,4DAA4D;IAC5D,YAAY,EAAE,cAAc,CAAA;IAC5B,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,2BAA2B;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,sEAAsE;IACtE,WAAW,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,uCAAuC;IACvC,gBAAgB,EAAE,MAAM,CAAA;IACxB,8DAA8D;IAC9D,KAAK,EAAE,aAAa,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,CAAA;IACzD,oDAAoD;IACpD,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAC/E,yBAAyB;IACzB,SAAS,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAA;IACpC,wBAAwB;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAYD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,2BAA2B,GAAG,WAAW,EAAE,CAyD9F;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,cAAc,CAAA;IAC5B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAA;IACZ,oCAAoC;IACpC,gBAAgB,EAAE,MAAM,CAAA;IACxB,QAAQ,EAAE,MAAM,CAAA;IAChB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,SAAS,CAAC,EAAE,WAAW,CAAC,WAAW,CAAC,CAAA;IACpC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,EAAE,CAAC,EAAE,MAAM,CAAA;CACZ;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAuBzE;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,WAAW,EAAE,EACrB,SAAS,EAAE,eAAe,GACzB,WAAW,EAAE,CAEf;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,WAAW,EAAE,EACrB,iBAAiB,EAAE,IAAI,GACtB,WAAW,GAAG,IAAI,CAkBpB"}
@@ -0,0 +1,45 @@
1
+ export interface SimulationClock {
2
+ /**
3
+ * Simulated time elapsed since clock creation (ms).
4
+ * Advances only when speed > 0 and the clock is running.
5
+ */
6
+ readonly now: number;
7
+ /**
8
+ * Time scale factor.
9
+ * 1.0 = real-time
10
+ * 2.0 = double speed
11
+ * 0 = paused (tick() returns 0, now stays fixed)
12
+ * Setting speed resumes a paused clock.
13
+ */
14
+ speed: number;
15
+ readonly isPaused: boolean;
16
+ pause(): void;
17
+ resume(): void;
18
+ /**
19
+ * Called from a requestAnimationFrame loop with the real wall-clock delta.
20
+ * Returns the scaled simulation delta that components should use for physics.
21
+ *
22
+ * If paused (speed === 0), returns 0 and does not advance `now`.
23
+ * Clamps realDeltaMs to 200 ms to prevent spiral-of-death on tab resume.
24
+ */
25
+ tick(realDeltaMs: number): number;
26
+ /**
27
+ * Advance the clock by exactly `dt` simulation milliseconds, bypassing speed.
28
+ * Intended for unit tests and deterministic replay — do NOT call from RAF.
29
+ */
30
+ step(dt: number): void;
31
+ /** Register a listener called after each tick / step with the scaled delta. */
32
+ onTick(listener: (dt: number) => void): () => void;
33
+ }
34
+ /**
35
+ * The scene-wide SimulationClock instance.
36
+ *
37
+ * ConveyanceContainer, Mover and all time-dependent mixins call:
38
+ * const dt = globalSimClock.tick(realDeltaMs)
39
+ *
40
+ * Tests use:
41
+ * globalSimClock.step(100) // advance 100 ms deterministically
42
+ * globalSimClock.speed = 5 // run at 5× for the next tick
43
+ */
44
+ export declare const globalSimClock: SimulationClock;
45
+ //# sourceMappingURL=simulation-clock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulation-clock.d.ts","sourceRoot":"","sources":["../../src/transfer/simulation-clock.ts"],"names":[],"mappings":"AAcA,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IAEpB;;;;;;OAMG;IACH,KAAK,EAAE,MAAM,CAAA;IAEb,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAE1B,KAAK,IAAI,IAAI,CAAA;IACb,MAAM,IAAI,IAAI,CAAA;IAEd;;;;;;OAMG;IACH,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAA;IAEjC;;;OAGG;IACH,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI,CAAA;IAEtB,+EAA+E;IAC/E,MAAM,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAAG,MAAM,IAAI,CAAA;CACnD;AAyDD;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc,EAAE,eAAwC,CAAA"}
@@ -0,0 +1,35 @@
1
+ import type { Transfer, TransferTraceEvent } from './transfer.js';
2
+ /**
3
+ * tracer.log 의 호출자가 채우는 정보. atSimMs 는 자동.
4
+ * component 인자는 *componentId/componentType 추출* 위해. 직접 안 채워도 됨.
5
+ */
6
+ export interface TraceLogInput {
7
+ role: 'source' | 'target' | 'carrier' | 'transfer';
8
+ contract: string;
9
+ component?: any;
10
+ componentId?: string;
11
+ componentType?: string;
12
+ args?: any;
13
+ result?: any;
14
+ error?: string;
15
+ }
16
+ export declare const transferTracer: {
17
+ /** Transfer 시작 시 호출 — 이후 log 호출은 *그 Transfer 의 trace 에 push*. */
18
+ beginContext(transfer: Transfer): void;
19
+ /** Transfer 완료/거부 시 호출 — standalone mode 로 복귀. */
20
+ endContext(): void;
21
+ /** 현재 active transfer (있다면). 디버깅용. */
22
+ current(): Transfer | null;
23
+ /**
24
+ * Contract 호출 시점 트레이스. FlowNode 의 각 method 안에서 호출.
25
+ * active Transfer 가 있으면 그 trace 에, 없으면 standalone stream 에 push.
26
+ */
27
+ log(input: TraceLogInput): void;
28
+ /** Standalone trace events (Transfer 우회 호출의 누적). */
29
+ standaloneEvents(): readonly TransferTraceEvent[];
30
+ /** Standalone listener 등록. */
31
+ onStandalone(listener: (event: TransferTraceEvent) => void): () => void;
32
+ /** standalone stream 초기화. */
33
+ clearStandalone(): void;
34
+ };
35
+ //# sourceMappingURL=tracer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tracer.d.ts","sourceRoot":"","sources":["../../src/transfer/tracer.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAA;AAiBjE;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAA;IAClD,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,CAAC,EAAE,GAAG,CAAA;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,IAAI,CAAC,EAAE,GAAG,CAAA;IACV,MAAM,CAAC,EAAE,GAAG,CAAA;IACZ,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,cAAc;IACzB,iEAAiE;2BAC1C,QAAQ,GAAG,IAAI;IAItC,kDAAkD;kBACpC,IAAI;IAIlB,sCAAsC;eAC3B,QAAQ,GAAG,IAAI;IAI1B;;;OAGG;eACQ,aAAa,GAAG,IAAI;IAwB/B,oDAAoD;wBAChC,SAAS,kBAAkB,EAAE;IAIjD,8BAA8B;2BACP,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,GAAG,MAAM,IAAI;IAKvE,6BAA6B;uBACV,IAAI;CAGxB,CAAA"}
@@ -0,0 +1,18 @@
1
+ export declare function _carrierSummary(carrier: any): {
2
+ id: any;
3
+ type: any;
4
+ };
5
+ /**
6
+ * Phase PS P3a — holder-local quaternion → state rotation 필드 매핑.
7
+ * (rotationX, -rotation, rotationY) 컨벤션 — RealObject.rotation getter 의 역.
8
+ * receive 의 contract 경로 / legacy 경로가 공유하는 단일 매핑 지점.
9
+ */
10
+ export declare function applySeatingRotation(update: Record<string, number>, q: {
11
+ x: number;
12
+ y: number;
13
+ z: number;
14
+ w: number;
15
+ }): void;
16
+ /** Key used to store the current slot assignment on a child component. */
17
+ export declare const TRANSFER_SLOT_KEY = "_transferSlotId";
18
+ //# sourceMappingURL=transfer-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transfer-helpers.d.ts","sourceRoot":"","sources":["../../src/transfer/transfer-helpers.ts"],"names":[],"mappings":"AASA,wBAAgB,eAAe,CAAC,OAAO,EAAE,GAAG;;;EAK3C;AAKD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAChD,IAAI,CAUN;AAED,0EAA0E;AAC1E,eAAO,MAAM,iBAAiB,oBAAoB,CAAA"}
@@ -0,0 +1,257 @@
1
+ import type { Transferable, TransferOptions } from './types.js';
2
+ export type TransferPhase = 'pending' | 'planning' | 'physical' | 'handoff' | 'committed' | 'rolled-back';
3
+ export interface TransferTimeline {
4
+ initiatedAt: number;
5
+ planStartAt?: number;
6
+ planEndAt?: number;
7
+ physicalStartAt?: number;
8
+ physicalEndAt?: number;
9
+ handoffAt?: number;
10
+ committedAt?: number;
11
+ }
12
+ /**
13
+ * Transfer 의 negotiation / interaction 세부 trace. 각 contract method 호출 시점에
14
+ * Transfer.execute 가 기록 — 어떤 컴포넌트의 어떤 contract 가 호출되었고 결과가
15
+ * 무엇이었는지 시각화.
16
+ *
17
+ * role : 'source' | 'target' | 'carrier' | 'transfer'
18
+ * contract : 호출한 contract 이름 (e.g. 'canAccept', 'findSlot', 'accept', 'physical')
19
+ * componentId: 호출 대상 컴포넌트의 id
20
+ * componentType: 컴포넌트의 type
21
+ * atSimMs : sim time 기준 호출 시점
22
+ * args : 인자의 *serializable summary* (carrier id, slot id 등)
23
+ * result : 반환값의 *serializable summary* (ok / reason / slotId 등)
24
+ * error : throw 시 메시지
25
+ */
26
+ export interface TransferTraceEvent {
27
+ role: 'source' | 'target' | 'carrier' | 'transfer';
28
+ contract: string;
29
+ componentId?: string;
30
+ componentType?: string;
31
+ atSimMs: number;
32
+ args?: any;
33
+ result?: any;
34
+ error?: string;
35
+ }
36
+ export interface TransferReceipt {
37
+ transferId: string;
38
+ source: any;
39
+ target: any;
40
+ carrier: any;
41
+ /** Phase G7 — 직렬화 용. live refs 가 GC 되어도 보존되는 식별자. */
42
+ sourceId?: string;
43
+ targetId?: string;
44
+ carrierId?: string;
45
+ phase: TransferPhase;
46
+ timeline: TransferTimeline;
47
+ slotId?: string;
48
+ rejectReason?: string;
49
+ /** Phase G10 — negotiation / interaction trace events. */
50
+ traceEvents?: TransferTraceEvent[];
51
+ /**
52
+ * Phase G11 — open-ended metadata. physical phase 가 *target-specific* 정보를
53
+ * 기록 (예: sorter 의 carrierId, cross-belt-line 의 carrier index). panel 의
54
+ * 컬럼 등 진단 시각화에서 사용.
55
+ */
56
+ meta?: Record<string, unknown>;
57
+ }
58
+ /**
59
+ * TransferReceipt 의 직렬화 형태 — live ref 제외, ID 만. JSON.stringify 안전.
60
+ * Phase G7 의 snapshot/replay 용.
61
+ */
62
+ export interface TransferReceiptJSON {
63
+ transferId: string;
64
+ sourceId?: string;
65
+ targetId?: string;
66
+ carrierId?: string;
67
+ phase: TransferPhase;
68
+ timeline: TransferTimeline;
69
+ slotId?: string;
70
+ rejectReason?: string;
71
+ }
72
+ /**
73
+ * Receipt 의 plain JSON 변환. live ref 제외, undefined 필드 omit (JSON
74
+ * round-trip 결정성 보장).
75
+ */
76
+ export declare function receiptToJSON(receipt: TransferReceipt): TransferReceiptJSON;
77
+ /**
78
+ * Source 가 physical 단계에서 사용하는 운반 함수. logical-only source
79
+ * (Conveyor.dispatch 등) 는 noop 으로 즉시 resolve.
80
+ *
81
+ * 호출 시점: Transfer 의 physical phase 진입.
82
+ * 반환: physical 운반 완료 (carrier 가 target.deliveryPose 에 도달) 시 resolve.
83
+ */
84
+ export type PhysicalRunner = () => Promise<void>;
85
+ export interface TransferLogStats {
86
+ total: number;
87
+ byPhase: Record<string, number>;
88
+ committed: number;
89
+ rolledBack: number;
90
+ rejectionRate: number;
91
+ avgTransferDurationMs: number;
92
+ }
93
+ export interface TransferInit {
94
+ source: any;
95
+ target: Transferable;
96
+ carrier: any;
97
+ options?: TransferOptions;
98
+ /** physical 운반자 (RobotArm, AGV 등). 미지정 시 즉시 통과. */
99
+ physical?: PhysicalRunner;
100
+ }
101
+ /**
102
+ * Transfer — 한 carrier 의 source → target 이동 사건.
103
+ *
104
+ * 사용:
105
+ * const t = new Transfer({ source, target, carrier, options })
106
+ * const receipt = await t.execute()
107
+ *
108
+ * 또는 Transferable.dispatch 가 내부적으로:
109
+ * const t = new Transfer({ source: this, target, carrier, options })
110
+ * await t.execute()
111
+ */
112
+ export declare class Transfer {
113
+ readonly id: string;
114
+ readonly source: any;
115
+ readonly target: Transferable;
116
+ readonly carrier: any;
117
+ readonly options: TransferOptions;
118
+ readonly physical: PhysicalRunner | null;
119
+ private _phase;
120
+ private _timeline;
121
+ private _slot;
122
+ /** Phase 4c — 라이프사이클 예약(reserve→commit). null = 예약 미사용(capability-only/비-라이프사이클 target). */
123
+ private _reservation;
124
+ private _rejectReason?;
125
+ private _traceEvents;
126
+ /**
127
+ * Phase G11 — target-specific metadata. physical phase 가 *sorter carrier
128
+ * index* 등 contract 외 진단 정보 기록. receipt 의 meta 로 시각화.
129
+ */
130
+ readonly meta: Record<string, unknown>;
131
+ constructor(init: TransferInit);
132
+ /**
133
+ * Transfer trace 에 contract 호출 이벤트 push. Transfer.execute 가 명시 contract
134
+ * 호출 시 직접 사용 + FlowNode.receive 등 *내부 contract* 도 *current
135
+ * transfer* 의 trace 에 push 가능 (currentTransfer module-level singleton).
136
+ */
137
+ pushTrace(event: Omit<TransferTraceEvent, 'atSimMs'> & {
138
+ atSimMs?: number;
139
+ }): void;
140
+ get phase(): TransferPhase;
141
+ get timeline(): Readonly<TransferTimeline>;
142
+ /** rolled-back receipt 생성 (this._rejectReason 은 호출자가 먼저 설정). */
143
+ private _rollback;
144
+ /**
145
+ * planning(canAccept verdict → slot 결정) + reserve. 조기 거부 시 rolled-back
146
+ * receipt 를, 계속 진행이면 null 을 반환. this._slot / this._reservation 설정.
147
+ *
148
+ * 협상 분기는 "메서드 존재" 추측이 아니라 홀더가 선언한 slot 모델 유무(canAccept 의
149
+ * verdict)로 나뉜다. no-slots-defined = slot 식이 아님 → capability-only(handoff 의
150
+ * holder.receive 가 자체 게이트 책임). canReceive fallback 은 canAccept 미구현 최소 mock 용.
151
+ */
152
+ private _planAndReserve;
153
+ /** physical 실패 공통 처리 — 예약 롤백 + rolled-back receipt. */
154
+ private _physicalFailed;
155
+ /** handoff 실패 공통 처리 — rolled-back receipt 등록 후 throw(호출자 전파). */
156
+ private _handoffFailed;
157
+ /**
158
+ * handoff commit 분기 — 예약이 있으면 commit(원자 확정) 후 true. 예약 없으면 false
159
+ * (호출자가 receive fallback 담당). commit throw → 예약 롤백 + _handoffFailed(throw).
160
+ */
161
+ private _commitReserved;
162
+ /** committed receipt 생성. */
163
+ private _finishCommitted;
164
+ private _runPhysicalSync;
165
+ private _runPhysicalAsync;
166
+ private _runReceiveSync;
167
+ private _runReceiveAsync;
168
+ /**
169
+ * 5-phase 실행. 각 phase 진입 시 timeline 갱신, 완료 시 receipt 반환.
170
+ *
171
+ * Negotiate / Plan 단계에서 거부 → rolled-back receipt.
172
+ * Physical 단계에서 throw → rolled-back receipt.
173
+ * Handoff 이후 throw 는 일관성 깨질 수 있으므로 그대로 propagate.
174
+ */
175
+ execute(): Promise<TransferReceipt>;
176
+ /**
177
+ * Sync 흐름 (= _tickLiveItems 매 frame iteration 안에서 dispatch) 전용 변형.
178
+ * physical / handoff 가 sync function 일 때만 동작 — async 면 *fire-and-forget*
179
+ * 으로 백그라운드 실행 (receipt 는 sync committed 표시).
180
+ *
181
+ * Async transfer 가 매 frame 동기 iteration 안에서 *sync 결과 필요* (= 박스 처리
182
+ * 끝 신호) 한 케이스. _tryDispatchToSorter / _ejectComponent 의 sync 흐름과 호환.
183
+ */
184
+ executeSync(): TransferReceipt;
185
+ private _executeImpl;
186
+ /**
187
+ * physical / planning 도중 외부 취소. handoff 이후엔 호출 금지 (이미 commit 됨).
188
+ * 현재 구현은 phase 만 표시하고 carrier 의 상태는 건드리지 않음 — physical
189
+ * 운반자가 자체 cancel 책임.
190
+ */
191
+ rollback(): void;
192
+ private _buildReceipt;
193
+ }
194
+ /**
195
+ * 모든 Transfer 의 receipt 를 기록하는 singleton. observability 의 기반.
196
+ * Phase G7 — JSON snapshot/load 지원으로 외부 도구 (Chrome extension 등) 에서
197
+ * 라이브 또는 저장된 로그를 동일하게 시각화할 수 있다.
198
+ */
199
+ /**
200
+ * TransferLogImpl — Step 1 정공 (2026-06-20):
201
+ *
202
+ * Raw receipt 1000 보관 폐기 → aggregated O(1) maintain. 본체 runtime 은 raw 사용 0
203
+ * (모든 reader 는 diagnostics — extension/devtools RPC). 본체가 extension buffer 역할
204
+ * 하던 안티패턴 제거.
205
+ *
206
+ * raw 가 필요한 도구 (carrier 별 timeline 등) 는 `subscribe` 패턴으로 extension 측
207
+ * 자체 누적 (Step 7).
208
+ */
209
+ declare class TransferLogImpl {
210
+ private _flows;
211
+ private _targetCount;
212
+ private _byPhase;
213
+ private _byRejectReason;
214
+ private _total;
215
+ private _committedDurationSum;
216
+ private _committedCount;
217
+ private _listeners;
218
+ append(receipt: TransferReceipt): void;
219
+ /** "src>tgt" → committed transfer count. inspector.topologyStats 활용. */
220
+ flows(): ReadonlyMap<string, number>;
221
+ /** targetId → 도착 count. distribution 계산 source. */
222
+ targetCounts(): ReadonlyMap<string, number>;
223
+ /** 통계 — aggregated 기반 O(1). */
224
+ stats(): TransferLogStats;
225
+ /** rejectReason 별 count — aggregated O(1). */
226
+ rejectReasonCounts(): ReadonlyMap<string, number>;
227
+ /** 새 receipt 마다 호출되는 listener 등록. extension 측 raw 누적 path. */
228
+ subscribe(listener: (receipt: TransferReceipt) => void): () => void;
229
+ clear(): void;
230
+ /** @deprecated raw entries 보관 폐기. extension 측 subscribe 패턴 사용. */
231
+ entries(): readonly TransferReceipt[];
232
+ /** @deprecated */
233
+ forCarrier(_carrier: any): readonly TransferReceipt[];
234
+ /** @deprecated */
235
+ forCarrierId(_carrierId: string): readonly TransferReceipt[];
236
+ /** @deprecated */
237
+ forSourceId(_sourceId: string): readonly TransferReceipt[];
238
+ /** @deprecated */
239
+ forTargetId(_targetId: string): readonly TransferReceipt[];
240
+ /** @deprecated */
241
+ forPhase(_phase: TransferPhase): readonly TransferReceipt[];
242
+ /** @deprecated */
243
+ inTimeRange(_startSimMs: number, _endSimMs: number, _mode?: 'init' | 'overlap'): readonly TransferReceipt[];
244
+ /** @deprecated raw entries 폐기. rejectReasonCounts() 사용. */
245
+ groupByRejectReason(): Map<string, readonly TransferReceipt[]>;
246
+ /** @deprecated raw 보관 폐기 — toJSON 빈 array. */
247
+ toJSON(): TransferReceiptJSON[];
248
+ /** @deprecated raw 보관 폐기 — fromJSON noop. */
249
+ fromJSON(_json: TransferReceiptJSON[]): void;
250
+ /** @deprecated raw 보관 폐기 — replayTo noop. */
251
+ replayTo(_listener: (receipt: TransferReceipt) => void): void;
252
+ /** @deprecated raw 보관 폐기 — setMaxEntries noop. */
253
+ setMaxEntries(_n: number): void;
254
+ }
255
+ export declare const transferLog: TransferLogImpl;
256
+ export {};
257
+ //# sourceMappingURL=transfer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transfer.d.ts","sourceRoot":"","sources":["../../src/transfer/transfer.ts"],"names":[],"mappings":"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"}