@oasys/oecs 0.5.4 → 0.6.0

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 (510) hide show
  1. package/CHANGELOG.md +1223 -266
  2. package/README.md +217 -112
  3. package/dist/core/ecs/access_check.d.cts +29 -29
  4. package/dist/core/ecs/access_check.d.ts +29 -29
  5. package/dist/core/ecs/access_check.d.ts.map +1 -1
  6. package/dist/core/ecs/archetype.d.cts +217 -209
  7. package/dist/core/ecs/archetype.d.ts +217 -209
  8. package/dist/core/ecs/archetype.d.ts.map +1 -1
  9. package/dist/core/ecs/archetype_closure.d.cts +23 -0
  10. package/dist/core/ecs/archetype_closure.d.ts +23 -0
  11. package/dist/core/ecs/archetype_closure.d.ts.map +1 -0
  12. package/dist/core/ecs/archetype_graph.d.cts +33 -33
  13. package/dist/core/ecs/archetype_graph.d.ts +33 -33
  14. package/dist/core/ecs/archetype_graph.d.ts.map +1 -1
  15. package/dist/core/ecs/archetype_types.d.cts +55 -0
  16. package/dist/core/ecs/archetype_types.d.ts +55 -0
  17. package/dist/core/ecs/archetype_types.d.ts.map +1 -0
  18. package/dist/core/ecs/change_feed.d.cts +53 -0
  19. package/dist/core/ecs/change_feed.d.ts +53 -0
  20. package/dist/core/ecs/change_feed.d.ts.map +1 -0
  21. package/dist/core/ecs/changed_query.d.cts +36 -0
  22. package/dist/core/ecs/changed_query.d.ts +36 -0
  23. package/dist/core/ecs/changed_query.d.ts.map +1 -0
  24. package/dist/core/ecs/chunk_columns.d.cts +49 -0
  25. package/dist/core/ecs/chunk_columns.d.ts +49 -0
  26. package/dist/core/ecs/chunk_columns.d.ts.map +1 -0
  27. package/dist/core/ecs/command_log.d.cts +26 -26
  28. package/dist/core/ecs/command_log.d.ts +26 -26
  29. package/dist/core/ecs/command_log.d.ts.map +1 -1
  30. package/dist/core/ecs/component.d.cts +43 -42
  31. package/dist/core/ecs/component.d.ts +43 -42
  32. package/dist/core/ecs/component.d.ts.map +1 -1
  33. package/dist/core/ecs/component_registry.d.cts +53 -0
  34. package/dist/core/ecs/component_registry.d.ts +53 -0
  35. package/dist/core/ecs/component_registry.d.ts.map +1 -0
  36. package/dist/core/ecs/compute_backend.d.cts +18 -7
  37. package/dist/core/ecs/compute_backend.d.ts +18 -7
  38. package/dist/core/ecs/compute_backend.d.ts.map +1 -1
  39. package/dist/core/ecs/deferred_commands.d.cts +15 -14
  40. package/dist/core/ecs/deferred_commands.d.ts +15 -14
  41. package/dist/core/ecs/deferred_commands.d.ts.map +1 -1
  42. package/dist/core/ecs/dispatch_trace.d.cts +32 -31
  43. package/dist/core/ecs/dispatch_trace.d.ts +32 -31
  44. package/dist/core/ecs/dispatch_trace.d.ts.map +1 -1
  45. package/dist/core/ecs/ecs.d.cts +289 -270
  46. package/dist/core/ecs/ecs.d.ts +289 -270
  47. package/dist/core/ecs/ecs.d.ts.map +1 -1
  48. package/dist/core/ecs/ecs_memory.d.cts +134 -136
  49. package/dist/core/ecs/ecs_memory.d.ts +134 -136
  50. package/dist/core/ecs/ecs_memory.d.ts.map +1 -1
  51. package/dist/core/ecs/ecs_options.d.cts +89 -0
  52. package/dist/core/ecs/ecs_options.d.ts +89 -0
  53. package/dist/core/ecs/ecs_options.d.ts.map +1 -0
  54. package/dist/core/ecs/entity.d.cts +4 -4
  55. package/dist/core/ecs/entity.d.ts +4 -4
  56. package/dist/core/ecs/entity_allocator.d.cts +20 -18
  57. package/dist/core/ecs/entity_allocator.d.ts +20 -18
  58. package/dist/core/ecs/entity_allocator.d.ts.map +1 -1
  59. package/dist/core/ecs/event.d.cts +36 -22
  60. package/dist/core/ecs/event.d.ts +36 -22
  61. package/dist/core/ecs/event.d.ts.map +1 -1
  62. package/dist/core/ecs/facades.d.cts +12 -126
  63. package/dist/core/ecs/facades.d.ts +12 -126
  64. package/dist/core/ecs/facades.d.ts.map +1 -1
  65. package/dist/core/ecs/frame_stepper.d.cts +12 -12
  66. package/dist/core/ecs/frame_stepper.d.ts +12 -12
  67. package/dist/core/ecs/frame_stepper.d.ts.map +1 -1
  68. package/dist/core/ecs/frame_trace.d.cts +32 -32
  69. package/dist/core/ecs/frame_trace.d.ts +32 -32
  70. package/dist/core/ecs/frame_trace.d.ts.map +1 -1
  71. package/dist/core/ecs/host_commands.d.cts +103 -85
  72. package/dist/core/ecs/host_commands.d.ts +103 -85
  73. package/dist/core/ecs/host_commands.d.ts.map +1 -1
  74. package/dist/core/ecs/index.d.cts +21 -11
  75. package/dist/core/ecs/index.d.ts +21 -11
  76. package/dist/core/ecs/index.d.ts.map +1 -1
  77. package/dist/core/ecs/observer.d.cts +39 -120
  78. package/dist/core/ecs/observer.d.ts +39 -120
  79. package/dist/core/ecs/observer.d.ts.map +1 -1
  80. package/dist/core/ecs/phase.d.cts +79 -0
  81. package/dist/core/ecs/phase.d.ts +79 -0
  82. package/dist/core/ecs/phase.d.ts.map +1 -0
  83. package/dist/core/ecs/plugin.d.cts +125 -0
  84. package/dist/core/ecs/plugin.d.ts +125 -0
  85. package/dist/core/ecs/plugin.d.ts.map +1 -0
  86. package/dist/core/ecs/plugin_slots.d.cts +26 -0
  87. package/dist/core/ecs/plugin_slots.d.ts +26 -0
  88. package/dist/core/ecs/plugin_slots.d.ts.map +1 -0
  89. package/dist/core/ecs/query.d.cts +208 -578
  90. package/dist/core/ecs/query.d.ts +208 -578
  91. package/dist/core/ecs/query.d.ts.map +1 -1
  92. package/dist/core/ecs/query_cache.d.cts +130 -0
  93. package/dist/core/ecs/query_cache.d.ts +130 -0
  94. package/dist/core/ecs/query_cache.d.ts.map +1 -0
  95. package/dist/core/ecs/query_registry.d.cts +47 -0
  96. package/dist/core/ecs/query_registry.d.ts +47 -0
  97. package/dist/core/ecs/query_registry.d.ts.map +1 -0
  98. package/dist/core/ecs/query_terms.d.cts +126 -0
  99. package/dist/core/ecs/query_terms.d.ts +126 -0
  100. package/dist/core/ecs/query_terms.d.ts.map +1 -0
  101. package/dist/core/ecs/ref.d.cts +100 -39
  102. package/dist/core/ecs/ref.d.ts +100 -39
  103. package/dist/core/ecs/ref.d.ts.map +1 -1
  104. package/dist/core/ecs/relation.d.cts +101 -182
  105. package/dist/core/ecs/relation.d.ts +101 -182
  106. package/dist/core/ecs/relation.d.ts.map +1 -1
  107. package/dist/core/ecs/resource.d.cts +13 -13
  108. package/dist/core/ecs/resource.d.ts +13 -13
  109. package/dist/core/ecs/resource_registry.d.cts +5 -5
  110. package/dist/core/ecs/resource_registry.d.ts +5 -5
  111. package/dist/core/ecs/resource_registry.d.ts.map +1 -1
  112. package/dist/core/ecs/row_kinds.d.cts +24 -0
  113. package/dist/core/ecs/row_kinds.d.ts +24 -0
  114. package/dist/core/ecs/row_kinds.d.ts.map +1 -0
  115. package/dist/core/ecs/run_condition.d.cts +23 -23
  116. package/dist/core/ecs/run_condition.d.ts +23 -23
  117. package/dist/core/ecs/run_condition.d.ts.map +1 -1
  118. package/dist/core/ecs/schedule.d.cts +91 -120
  119. package/dist/core/ecs/schedule.d.ts +91 -120
  120. package/dist/core/ecs/schedule.d.ts.map +1 -1
  121. package/dist/core/ecs/schedule_plan.d.cts +33 -0
  122. package/dist/core/ecs/schedule_plan.d.ts +33 -0
  123. package/dist/core/ecs/schedule_plan.d.ts.map +1 -0
  124. package/dist/core/ecs/snapshot.d.cts +77 -0
  125. package/dist/core/ecs/snapshot.d.ts +77 -0
  126. package/dist/core/ecs/snapshot.d.ts.map +1 -0
  127. package/dist/core/ecs/snapshot_mount.d.cts +42 -0
  128. package/dist/core/ecs/snapshot_mount.d.ts +42 -0
  129. package/dist/core/ecs/snapshot_mount.d.ts.map +1 -0
  130. package/dist/core/ecs/sparse_store.d.cts +108 -51
  131. package/dist/core/ecs/sparse_store.d.ts +108 -51
  132. package/dist/core/ecs/sparse_store.d.ts.map +1 -1
  133. package/dist/core/ecs/store.d.cts +527 -473
  134. package/dist/core/ecs/store.d.ts +527 -473
  135. package/dist/core/ecs/store.d.ts.map +1 -1
  136. package/dist/core/ecs/store_layout_listener.d.cts +6 -6
  137. package/dist/core/ecs/store_layout_listener.d.ts +6 -6
  138. package/dist/core/ecs/store_types.d.cts +122 -0
  139. package/dist/core/ecs/store_types.d.ts +122 -0
  140. package/dist/core/ecs/store_types.d.ts.map +1 -0
  141. package/dist/core/ecs/system.d.cts +146 -61
  142. package/dist/core/ecs/system.d.ts +146 -61
  143. package/dist/core/ecs/system.d.ts.map +1 -1
  144. package/dist/core/ecs/system_context.d.cts +296 -0
  145. package/dist/core/ecs/system_context.d.ts +296 -0
  146. package/dist/core/ecs/system_context.d.ts.map +1 -0
  147. package/dist/core/ecs/system_set.d.cts +48 -0
  148. package/dist/core/ecs/system_set.d.ts +48 -0
  149. package/dist/core/ecs/system_set.d.ts.map +1 -0
  150. package/dist/core/ecs/utils/arrays.d.cts +15 -1
  151. package/dist/core/ecs/utils/arrays.d.ts +15 -1
  152. package/dist/core/ecs/utils/arrays.d.ts.map +1 -1
  153. package/dist/core/ecs/utils/error.d.cts +82 -6
  154. package/dist/core/ecs/utils/error.d.ts +82 -6
  155. package/dist/core/ecs/utils/error.d.ts.map +1 -1
  156. package/dist/core/ecs/utils/plugin_error.d.cts +10 -0
  157. package/dist/core/ecs/utils/plugin_error.d.ts +10 -0
  158. package/dist/core/ecs/utils/plugin_error.d.ts.map +1 -0
  159. package/dist/core/restore_errors.d.cts +30 -0
  160. package/dist/core/restore_errors.d.ts +30 -0
  161. package/dist/core/restore_errors.d.ts.map +1 -0
  162. package/dist/core/store/action_ring.d.cts +44 -44
  163. package/dist/core/store/action_ring.d.ts +44 -44
  164. package/dist/core/store/action_ring.d.ts.map +1 -1
  165. package/dist/core/store/allocator.d.cts +149 -95
  166. package/dist/core/store/allocator.d.ts +149 -95
  167. package/dist/core/store/allocator.d.ts.map +1 -1
  168. package/dist/core/store/buffer_backed_column.d.cts +17 -17
  169. package/dist/core/store/buffer_backed_column.d.ts +17 -17
  170. package/dist/core/store/buffer_backed_column.d.ts.map +1 -1
  171. package/dist/core/store/column_store.d.cts +124 -86
  172. package/dist/core/store/column_store.d.ts +124 -86
  173. package/dist/core/store/column_store.d.ts.map +1 -1
  174. package/dist/core/store/command_dispatch.d.cts +14 -15
  175. package/dist/core/store/command_dispatch.d.ts +14 -15
  176. package/dist/core/store/command_dispatch.d.ts.map +1 -1
  177. package/dist/core/store/command_ring.d.cts +36 -39
  178. package/dist/core/store/command_ring.d.ts +36 -39
  179. package/dist/core/store/command_ring.d.ts.map +1 -1
  180. package/dist/core/store/descriptor.d.cts +34 -17
  181. package/dist/core/store/descriptor.d.ts +34 -17
  182. package/dist/core/store/descriptor.d.ts.map +1 -1
  183. package/dist/core/store/entity_index.d.cts +34 -35
  184. package/dist/core/store/entity_index.d.ts +34 -35
  185. package/dist/core/store/entity_index.d.ts.map +1 -1
  186. package/dist/core/store/event_ring.d.cts +36 -38
  187. package/dist/core/store/event_ring.d.ts +36 -38
  188. package/dist/core/store/event_ring.d.ts.map +1 -1
  189. package/dist/core/store/extend.d.cts +13 -7
  190. package/dist/core/store/extend.d.ts +13 -7
  191. package/dist/core/store/extend.d.ts.map +1 -1
  192. package/dist/core/store/grow.d.cts +2 -2
  193. package/dist/core/store/grow.d.ts +2 -2
  194. package/dist/core/store/grow.d.ts.map +1 -1
  195. package/dist/core/store/header.d.cts +31 -27
  196. package/dist/core/store/header.d.ts +31 -27
  197. package/dist/core/store/header.d.ts.map +1 -1
  198. package/dist/core/store/index.d.cts +10 -10
  199. package/dist/core/store/index.d.ts +10 -10
  200. package/dist/core/store/index.d.ts.map +1 -1
  201. package/dist/core/store/layout_ops.d.cts +71 -62
  202. package/dist/core/store/layout_ops.d.ts +71 -62
  203. package/dist/core/store/layout_ops.d.ts.map +1 -1
  204. package/dist/core/store/region_table.d.cts +28 -21
  205. package/dist/core/store/region_table.d.ts +28 -21
  206. package/dist/core/store/region_table.d.ts.map +1 -1
  207. package/dist/core/store/snapshot.d.cts +31 -16
  208. package/dist/core/store/snapshot.d.ts +31 -16
  209. package/dist/core/store/snapshot.d.ts.map +1 -1
  210. package/dist/core/store/state_hash.d.cts +12 -12
  211. package/dist/core/store/state_hash.d.ts +12 -12
  212. package/dist/core/store/state_hash.d.ts.map +1 -1
  213. package/dist/core/store/store_regions.d.cts +10 -10
  214. package/dist/core/store/store_regions.d.ts +10 -10
  215. package/dist/core/store/store_regions.d.ts.map +1 -1
  216. package/dist/core/store/vendored_abi/abi.d.cts +27 -2
  217. package/dist/core/store/vendored_abi/abi.d.ts +27 -2
  218. package/dist/core/store/vendored_abi/abi.d.ts.map +1 -1
  219. package/dist/host_commands-B2KMx8O2.cjs +1 -0
  220. package/dist/host_commands-ClVPvhSa.cjs +2 -0
  221. package/dist/host_commands-CwxVQS1z.js +1524 -0
  222. package/dist/host_commands-nJvTy88E.js +1667 -0
  223. package/dist/index.cjs +1 -1
  224. package/dist/index.d.cts +15 -10
  225. package/dist/index.d.ts +15 -10
  226. package/dist/index.d.ts.map +1 -1
  227. package/dist/index.development.cjs +1 -1
  228. package/dist/index.development.js +5804 -5203
  229. package/dist/index.js +5323 -4764
  230. package/dist/internal.cjs +2 -2
  231. package/dist/internal.d.cts +5 -2
  232. package/dist/internal.d.ts +5 -2
  233. package/dist/internal.d.ts.map +1 -1
  234. package/dist/internal.development.cjs +1 -1
  235. package/dist/internal.development.js +70 -20
  236. package/dist/internal.js +138 -83
  237. package/dist/plugins/abi-D3V-QUSf.cjs +1 -0
  238. package/dist/plugins/abi-NP8pNxpd.js +42 -0
  239. package/dist/plugins/arrays-Dr_1hCjL.js +28 -0
  240. package/dist/plugins/arrays-Dt-Joc4i.cjs +1 -0
  241. package/dist/plugins/assertions-gtDVfbnQ.js +6 -0
  242. package/dist/plugins/assertions-z5GQd_bB.cjs +1 -0
  243. package/dist/{extensions → plugins}/editor/editor.d.cts +54 -54
  244. package/dist/{extensions → plugins}/editor/editor.d.ts +54 -54
  245. package/dist/plugins/editor/editor.d.ts.map +1 -0
  246. package/dist/{extensions → plugins}/editor/field_handle.d.cts +12 -12
  247. package/dist/{extensions → plugins}/editor/field_handle.d.ts +12 -12
  248. package/dist/plugins/editor/field_handle.d.ts.map +1 -0
  249. package/dist/plugins/editor/index.d.cts +22 -0
  250. package/dist/plugins/editor/index.d.ts +22 -0
  251. package/dist/plugins/editor/index.d.ts.map +1 -0
  252. package/dist/plugins/editor.cjs +1 -0
  253. package/dist/plugins/editor.d.cts +1 -0
  254. package/dist/plugins/editor.d.ts +1 -0
  255. package/dist/plugins/editor.development.cjs +1 -0
  256. package/dist/{extensions/editor/index.development.js → plugins/editor.development.js} +81 -64
  257. package/dist/{extensions/editor/index.js → plugins/editor.js} +81 -64
  258. package/dist/plugins/events/event_channel.d.cts +13 -0
  259. package/dist/plugins/events/event_channel.d.ts +13 -0
  260. package/dist/plugins/events/event_channel.d.ts.map +1 -0
  261. package/dist/plugins/events/event_registry.d.cts +22 -0
  262. package/dist/plugins/events/event_registry.d.ts +22 -0
  263. package/dist/plugins/events/event_registry.d.ts.map +1 -0
  264. package/dist/plugins/events/facade.d.cts +26 -0
  265. package/dist/plugins/events/facade.d.ts +26 -0
  266. package/dist/plugins/events/facade.d.ts.map +1 -0
  267. package/dist/plugins/events/index.d.cts +10 -0
  268. package/dist/plugins/events/index.d.ts +10 -0
  269. package/dist/plugins/events/index.d.ts.map +1 -0
  270. package/dist/plugins/events.cjs +1 -0
  271. package/dist/plugins/events.d.cts +1 -0
  272. package/dist/plugins/events.d.ts +1 -0
  273. package/dist/plugins/events.development.cjs +1 -0
  274. package/dist/plugins/events.development.js +174 -0
  275. package/dist/plugins/events.js +159 -0
  276. package/dist/plugins/observers/index.d.cts +23 -0
  277. package/dist/plugins/observers/index.d.ts +23 -0
  278. package/dist/plugins/observers/index.d.ts.map +1 -0
  279. package/dist/plugins/observers/observer_registry.d.cts +101 -0
  280. package/dist/plugins/observers/observer_registry.d.ts +101 -0
  281. package/dist/plugins/observers/observer_registry.d.ts.map +1 -0
  282. package/dist/plugins/observers.cjs +1 -0
  283. package/dist/plugins/observers.d.cts +1 -0
  284. package/dist/plugins/observers.d.ts +1 -0
  285. package/dist/plugins/observers.development.cjs +1 -0
  286. package/dist/plugins/observers.development.js +431 -0
  287. package/dist/plugins/observers.js +403 -0
  288. package/dist/plugins/relation_store-BsoegrZh.js +313 -0
  289. package/dist/plugins/relation_store-DQKSnxsm.cjs +1 -0
  290. package/dist/plugins/relation_store-RBhpcE28.cjs +1 -0
  291. package/dist/plugins/relation_store-RqW5Snx6.js +328 -0
  292. package/dist/plugins/relations/builtin_relations.d.cts +48 -0
  293. package/dist/plugins/relations/builtin_relations.d.ts +48 -0
  294. package/dist/plugins/relations/builtin_relations.d.ts.map +1 -0
  295. package/dist/plugins/relations/facade.d.cts +73 -0
  296. package/dist/plugins/relations/facade.d.ts +73 -0
  297. package/dist/plugins/relations/facade.d.ts.map +1 -0
  298. package/dist/plugins/relations/index.d.cts +11 -0
  299. package/dist/plugins/relations/index.d.ts +11 -0
  300. package/dist/plugins/relations/index.d.ts.map +1 -0
  301. package/dist/{core/ecs → plugins/relations}/relation_service.d.cts +85 -97
  302. package/dist/{core/ecs → plugins/relations}/relation_service.d.ts +85 -97
  303. package/dist/plugins/relations/relation_service.d.ts.map +1 -0
  304. package/dist/plugins/relations/relation_store.d.cts +177 -0
  305. package/dist/plugins/relations/relation_store.d.ts +177 -0
  306. package/dist/plugins/relations/relation_store.d.ts.map +1 -0
  307. package/dist/plugins/relations.cjs +1 -0
  308. package/dist/plugins/relations.d.cts +1 -0
  309. package/dist/plugins/relations.d.ts +1 -0
  310. package/dist/plugins/relations.development.cjs +1 -0
  311. package/dist/plugins/relations.development.js +603 -0
  312. package/dist/plugins/relations.js +553 -0
  313. package/dist/plugins/snapshots/index.d.cts +33 -0
  314. package/dist/plugins/snapshots/index.d.ts +33 -0
  315. package/dist/plugins/snapshots/index.d.ts.map +1 -0
  316. package/dist/plugins/snapshots/resume.d.cts +57 -0
  317. package/dist/plugins/snapshots/resume.d.ts +57 -0
  318. package/dist/plugins/snapshots/resume.d.ts.map +1 -0
  319. package/dist/plugins/snapshots/snapshot_service.d.cts +59 -0
  320. package/dist/plugins/snapshots/snapshot_service.d.ts +59 -0
  321. package/dist/plugins/snapshots/snapshot_service.d.ts.map +1 -0
  322. package/dist/plugins/snapshots.cjs +1 -0
  323. package/dist/plugins/snapshots.d.cts +1 -0
  324. package/dist/plugins/snapshots.d.ts +1 -0
  325. package/dist/plugins/snapshots.development.cjs +1 -0
  326. package/dist/plugins/snapshots.development.js +737 -0
  327. package/dist/plugins/snapshots.js +737 -0
  328. package/dist/plugins/solid/index.d.cts +8 -0
  329. package/dist/plugins/solid/index.d.ts +8 -0
  330. package/dist/plugins/solid/index.d.ts.map +1 -0
  331. package/dist/plugins/solid/solid.d.cts +97 -0
  332. package/dist/plugins/solid/solid.d.ts +97 -0
  333. package/dist/plugins/solid/solid.d.ts.map +1 -0
  334. package/dist/plugins/solid.cjs +1 -0
  335. package/dist/plugins/solid.d.cts +1 -0
  336. package/dist/plugins/solid.d.ts +1 -0
  337. package/dist/plugins/solid.development.cjs +1 -0
  338. package/dist/plugins/solid.development.js +319 -0
  339. package/dist/plugins/solid.js +319 -0
  340. package/dist/plugins/workers/index.d.cts +75 -0
  341. package/dist/plugins/workers/index.d.ts +75 -0
  342. package/dist/plugins/workers/index.d.ts.map +1 -0
  343. package/dist/plugins/workers/node_threads.d.cts +25 -0
  344. package/dist/plugins/workers/node_threads.d.ts +25 -0
  345. package/dist/plugins/workers/node_threads.d.ts.map +1 -0
  346. package/dist/plugins/workers/plan.d.cts +61 -0
  347. package/dist/plugins/workers/plan.d.ts +61 -0
  348. package/dist/plugins/workers/plan.d.ts.map +1 -0
  349. package/dist/plugins/workers/pool.d.cts +144 -0
  350. package/dist/plugins/workers/pool.d.ts +144 -0
  351. package/dist/plugins/workers/pool.d.ts.map +1 -0
  352. package/dist/plugins/workers/protocol.d.cts +112 -0
  353. package/dist/plugins/workers/protocol.d.ts +112 -0
  354. package/dist/plugins/workers/protocol.d.ts.map +1 -0
  355. package/dist/plugins/workers/worker_bind.d.cts +64 -0
  356. package/dist/plugins/workers/worker_bind.d.ts +64 -0
  357. package/dist/plugins/workers/worker_bind.d.ts.map +1 -0
  358. package/dist/plugins/workers/worker_loop.d.cts +14 -0
  359. package/dist/plugins/workers/worker_loop.d.ts +14 -0
  360. package/dist/plugins/workers/worker_loop.d.ts.map +1 -0
  361. package/dist/plugins/workers.cjs +1 -0
  362. package/dist/plugins/workers.d.cts +1 -0
  363. package/dist/plugins/workers.d.ts +1 -0
  364. package/dist/plugins/workers.development.cjs +1 -0
  365. package/dist/plugins/workers.development.js +596 -0
  366. package/dist/plugins/workers.js +474 -0
  367. package/dist/primitives.cjs +1 -1
  368. package/dist/primitives.d.cts +4 -4
  369. package/dist/primitives.d.ts +4 -4
  370. package/dist/primitives.development.cjs +1 -1
  371. package/dist/primitives.development.js +66 -22
  372. package/dist/primitives.js +66 -22
  373. package/dist/shared-BKl12xF1.js +132 -0
  374. package/dist/shared-Dk-pACZT.cjs +1 -0
  375. package/dist/shared.cjs +1 -1
  376. package/dist/shared.d.cts +7 -7
  377. package/dist/shared.d.ts +7 -7
  378. package/dist/shared.d.ts.map +1 -1
  379. package/dist/shared.development.cjs +1 -1
  380. package/dist/shared.development.js +4 -3
  381. package/dist/shared.js +4 -3
  382. package/dist/topological_sort-Cc_yXqPT.js +346 -0
  383. package/dist/topological_sort-vp1imU6D.cjs +1 -0
  384. package/dist/type_primitives/assertions.d.cts +12 -16
  385. package/dist/type_primitives/assertions.d.ts +12 -16
  386. package/dist/type_primitives/assertions.d.ts.map +1 -1
  387. package/dist/type_primitives/binary_heap/binary_heap.d.cts +2 -6
  388. package/dist/type_primitives/binary_heap/binary_heap.d.ts +2 -6
  389. package/dist/type_primitives/binary_heap/binary_heap.d.ts.map +1 -1
  390. package/dist/type_primitives/bitset/bitset.d.cts +7 -11
  391. package/dist/type_primitives/bitset/bitset.d.ts +7 -11
  392. package/dist/type_primitives/bitset/bitset.d.ts.map +1 -1
  393. package/dist/type_primitives/brand.d.cts +2 -7
  394. package/dist/type_primitives/brand.d.ts +2 -7
  395. package/dist/type_primitives/brand.d.ts.map +1 -1
  396. package/dist/type_primitives/error.d.cts +1 -2
  397. package/dist/type_primitives/error.d.ts +1 -2
  398. package/dist/type_primitives/error.d.ts.map +1 -1
  399. package/dist/type_primitives/index.d.cts +1 -1
  400. package/dist/type_primitives/index.d.ts +1 -1
  401. package/dist/type_primitives/sparse_map/sparse_map.d.cts +3 -7
  402. package/dist/type_primitives/sparse_map/sparse_map.d.ts +3 -7
  403. package/dist/type_primitives/sparse_map/sparse_map.d.ts.map +1 -1
  404. package/dist/type_primitives/sparse_set/sparse_set.d.cts +2 -6
  405. package/dist/type_primitives/sparse_set/sparse_set.d.ts +2 -6
  406. package/dist/type_primitives/sparse_set/sparse_set.d.ts.map +1 -1
  407. package/dist/type_primitives/topological_sort/topological_sort.d.cts +1 -5
  408. package/dist/type_primitives/topological_sort/topological_sort.d.ts +1 -5
  409. package/dist/type_primitives/topological_sort/topological_sort.d.ts.map +1 -1
  410. package/dist/type_primitives/typed_arrays/typed_arrays.d.cts +16 -15
  411. package/dist/type_primitives/typed_arrays/typed_arrays.d.ts +16 -15
  412. package/dist/type_primitives/typed_arrays/typed_arrays.d.ts.map +1 -1
  413. package/dist/utils/error.d.ts.map +1 -1
  414. package/dist/version.d.cts +3 -3
  415. package/dist/version.d.ts +3 -3
  416. package/dist/worker.cjs +1 -0
  417. package/dist/worker.d.cts +17 -0
  418. package/dist/worker.d.ts +17 -0
  419. package/dist/worker.d.ts.map +1 -0
  420. package/dist/worker.development.cjs +1 -0
  421. package/dist/worker.development.js +253 -0
  422. package/dist/worker.js +253 -0
  423. package/package.json +363 -191
  424. package/dist/core/ecs/builtin_relations.d.cts +0 -43
  425. package/dist/core/ecs/builtin_relations.d.ts +0 -43
  426. package/dist/core/ecs/builtin_relations.d.ts.map +0 -1
  427. package/dist/core/ecs/event_registry.d.cts +0 -22
  428. package/dist/core/ecs/event_registry.d.ts +0 -22
  429. package/dist/core/ecs/event_registry.d.ts.map +0 -1
  430. package/dist/core/ecs/relation_service.d.ts.map +0 -1
  431. package/dist/core/ecs/resume.d.cts +0 -85
  432. package/dist/core/ecs/resume.d.ts +0 -85
  433. package/dist/core/ecs/resume.d.ts.map +0 -1
  434. package/dist/core/ecs/snapshot_service.d.cts +0 -94
  435. package/dist/core/ecs/snapshot_service.d.ts +0 -94
  436. package/dist/core/ecs/snapshot_service.d.ts.map +0 -1
  437. package/dist/extensions/editor/editor.d.ts.map +0 -1
  438. package/dist/extensions/editor/field_handle.d.ts.map +0 -1
  439. package/dist/extensions/editor/index.cjs +0 -1
  440. package/dist/extensions/editor/index.d.cts +0 -21
  441. package/dist/extensions/editor/index.d.ts +0 -21
  442. package/dist/extensions/editor/index.d.ts.map +0 -1
  443. package/dist/extensions/editor/index.development.cjs +0 -1
  444. package/dist/extensions/reactive/ecs_sync.d.cts +0 -214
  445. package/dist/extensions/reactive/ecs_sync.d.ts +0 -214
  446. package/dist/extensions/reactive/ecs_sync.d.ts.map +0 -1
  447. package/dist/extensions/reactive/index.cjs +0 -1
  448. package/dist/extensions/reactive/index.d.cts +0 -23
  449. package/dist/extensions/reactive/index.d.ts +0 -23
  450. package/dist/extensions/reactive/index.d.ts.map +0 -1
  451. package/dist/extensions/reactive/index.development.cjs +0 -1
  452. package/dist/extensions/reactive/index.development.js +0 -215
  453. package/dist/extensions/reactive/index.js +0 -215
  454. package/dist/extensions/solid/index.cjs +0 -1
  455. package/dist/extensions/solid/index.d.cts +0 -6
  456. package/dist/extensions/solid/index.d.ts +0 -6
  457. package/dist/extensions/solid/index.d.ts.map +0 -1
  458. package/dist/extensions/solid/index.development.cjs +0 -1
  459. package/dist/extensions/solid/index.development.js +0 -40
  460. package/dist/extensions/solid/index.js +0 -36
  461. package/dist/extensions/solid/kernel_solid.d.cts +0 -45
  462. package/dist/extensions/solid/kernel_solid.d.ts +0 -45
  463. package/dist/extensions/solid/kernel_solid.d.ts.map +0 -1
  464. package/dist/host_commands-BlR3oZ3x.js +0 -2406
  465. package/dist/host_commands-C2cpU3yC.cjs +0 -1
  466. package/dist/internal-BoxWl4dG.js +0 -2565
  467. package/dist/internal-CGBEwfeB.cjs +0 -2
  468. package/dist/interop-CT-REx0W.cjs +0 -1
  469. package/dist/interop-CcY6ASQc.js +0 -18
  470. package/dist/interop-DqxleBo7.js +0 -18
  471. package/dist/interop-T1HZ-Dpa.cjs +0 -1
  472. package/dist/kernel-Cz2Kxlwl.js +0 -240
  473. package/dist/kernel-DgyrLFjW.js +0 -227
  474. package/dist/kernel-sw7ScKWu.cjs +0 -1
  475. package/dist/kernel-yWV3XnAb.cjs +0 -1
  476. package/dist/reactive/array.d.cts +0 -24
  477. package/dist/reactive/array.d.ts +0 -24
  478. package/dist/reactive/array.d.ts.map +0 -1
  479. package/dist/reactive/index.cjs +0 -1
  480. package/dist/reactive/index.d.cts +0 -11
  481. package/dist/reactive/index.d.ts +0 -11
  482. package/dist/reactive/index.d.ts.map +0 -1
  483. package/dist/reactive/index.development.cjs +0 -1
  484. package/dist/reactive/index.development.js +0 -18
  485. package/dist/reactive/index.js +0 -18
  486. package/dist/reactive/interop.d.cts +0 -19
  487. package/dist/reactive/interop.d.ts +0 -19
  488. package/dist/reactive/interop.d.ts.map +0 -1
  489. package/dist/reactive/kernel.d.cts +0 -73
  490. package/dist/reactive/kernel.d.ts +0 -73
  491. package/dist/reactive/kernel.d.ts.map +0 -1
  492. package/dist/reactive/map.d.cts +0 -16
  493. package/dist/reactive/map.d.ts +0 -16
  494. package/dist/reactive/map.d.ts.map +0 -1
  495. package/dist/reactive/shallow.d.cts +0 -11
  496. package/dist/reactive/shallow.d.ts +0 -11
  497. package/dist/reactive/shallow.d.ts.map +0 -1
  498. package/dist/reactive/struct.d.cts +0 -10
  499. package/dist/reactive/struct.d.ts +0 -10
  500. package/dist/reactive/struct.d.ts.map +0 -1
  501. package/dist/shallow-Bs39EPh1.js +0 -150
  502. package/dist/shallow-C5YmTbtb.cjs +0 -1
  503. package/dist/shallow-CiFC70Dz.js +0 -159
  504. package/dist/shallow-DQ8aG51_.cjs +0 -1
  505. package/dist/shared-B4v0L1cw.js +0 -109
  506. package/dist/shared-DU78k0pU.cjs +0 -1
  507. package/dist/topological_sort-BDvEyb9W.cjs +0 -1
  508. package/dist/topological_sort-DK6EjpWa.js +0 -135
  509. package/dist/typed_arrays-D3NmwtCG.cjs +0 -1
  510. package/dist/typed_arrays-DIVwVy5_.js +0 -258
@@ -6,8 +6,7 @@ export declare enum TYPE_ERROR {
6
6
  ASSERTION_FAIL_UNREACHABLE = "ASSERTION_FAIL_UNREACHABLE"
7
7
  }
8
8
  /**
9
- * Error class thrown by std's runtime assertions. Non-operational.
10
- *
9
+ * Error class thrown by the type-primitive assertions. Non-operational.
11
10
  */
12
11
  export declare class AssertionError extends AppError {
13
12
  readonly category: TYPE_ERROR;
@@ -6,8 +6,7 @@ export declare enum TYPE_ERROR {
6
6
  ASSERTION_FAIL_UNREACHABLE = "ASSERTION_FAIL_UNREACHABLE"
7
7
  }
8
8
  /**
9
- * Error class thrown by std's runtime assertions. Non-operational.
10
- *
9
+ * Error class thrown by the type-primitive assertions. Non-operational.
11
10
  */
12
11
  export declare class AssertionError extends AppError {
13
12
  readonly category: TYPE_ERROR;
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/type_primitives/error.ts"],"names":[],"mappings":"AAAA;;;;;;KAMK;AAEL,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,oBAAY,UAAU;IACrB,wBAAwB,6BAA6B;IACrD,yBAAyB,8BAA8B;IACvD,2BAA2B,gCAAgC;IAC3D,0BAA0B,+BAA+B;CACzD;AAED;;;GAGG;AACH,qBAAa,cAAe,SAAQ,QAAQ;aAE1B,QAAQ,EAAE,UAAU;gBAApB,QAAQ,EAAE,UAAU,EACpC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAIlC"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/type_primitives/error.ts"],"names":[],"mappings":"AAAA;;;;;;KAMK;AAEL,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,oBAAY,UAAU;IACrB,wBAAwB,6BAA6B;IACrD,yBAAyB,8BAA8B;IACvD,2BAA2B,gCAAgC;IAC3D,0BAA0B,+BAA+B;CACzD;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,QAAQ;aAE1B,QAAQ,EAAE,UAAU;gBAApB,QAAQ,EAAE,UAAU,EACpC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAKlC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Type-primitives barrel assertions, brands, errors, plus data-structure primitives.
2
+ * Type-primitives barrel, assertions, brands, errors, plus data-structure primitives.
3
3
  */
4
4
  export * from './assertions.cjs';
5
5
  export * from './brand.cjs';
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Type-primitives barrel assertions, brands, errors, plus data-structure primitives.
2
+ * Type-primitives barrel, assertions, brands, errors, plus data-structure primitives.
3
3
  */
4
4
  export * from './assertions.js';
5
5
  export * from './brand.js';
@@ -1,18 +1,14 @@
1
1
  /***
2
- * SparseMap O(1) integer-keyed map with cache-friendly dense iteration.
2
+ * SparseMap. O(1) integer-keyed map with cache-friendly dense iteration.
3
3
  *
4
4
  * Keys are non-negative integers. Two parallel dense arrays (keys + values)
5
- * enable linear iteration. A sparse number[] maps key → dense index for
6
- * O(1) get/set/delete.
5
+ * enable linear iteration. A sparse number[] maps key → dense index, so get,
6
+ * set and delete are each O(1).
7
7
  *
8
8
  * Membership is verified by cross-referencing dense_keys[sparse[key]] === key,
9
9
  * so stale sparse entries are harmless. Deletion uses swap-and-pop.
10
10
  *
11
11
  ***/
12
- /**
13
- * O(1) integer-keyed map with cache-friendly dense iteration.
14
- *
15
- */
16
12
  export declare class SparseMap<V> {
17
13
  private _denseKeys;
18
14
  private _denseVals;
@@ -1,18 +1,14 @@
1
1
  /***
2
- * SparseMap O(1) integer-keyed map with cache-friendly dense iteration.
2
+ * SparseMap. O(1) integer-keyed map with cache-friendly dense iteration.
3
3
  *
4
4
  * Keys are non-negative integers. Two parallel dense arrays (keys + values)
5
- * enable linear iteration. A sparse number[] maps key → dense index for
6
- * O(1) get/set/delete.
5
+ * enable linear iteration. A sparse number[] maps key → dense index, so get,
6
+ * set and delete are each O(1).
7
7
  *
8
8
  * Membership is verified by cross-referencing dense_keys[sparse[key]] === key,
9
9
  * so stale sparse entries are harmless. Deletion uses swap-and-pop.
10
10
  *
11
11
  ***/
12
- /**
13
- * O(1) integer-keyed map with cache-friendly dense iteration.
14
- *
15
- */
16
12
  export declare class SparseMap<V> {
17
13
  private _denseKeys;
18
14
  private _denseVals;
@@ -1 +1 @@
1
- {"version":3,"file":"sparse_map.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/sparse_map/sparse_map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;KAUK;AAEL;;;GAGG;AACH,qBAAa,SAAS,CAAC,CAAC;IACvB,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,UAAU,CAAW;IAC7B,OAAO,CAAC,OAAO,CAAgB;IAE/B,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,IAAI,SAAS,MAAM,EAAE,CAEnC;IAEM,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAI/B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAUhC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAa5B,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAMzD,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAe1C"}
1
+ {"version":3,"file":"sparse_map.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/sparse_map/sparse_map.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;KAUK;AAEL,qBAAa,SAAS,CAAC,CAAC;IACvB,OAAO,CAAC,UAAU,CAAgB;IAClC,OAAO,CAAC,UAAU,CAAW;IAC7B,OAAO,CAAC,OAAO,CAAgB;IAE/B,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,IAAI,IAAI,SAAS,MAAM,EAAE,CAEnC;IAEM,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAI/B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI;IAUhC,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAa5B,KAAK,IAAI,IAAI;IAMb,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAMzD,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAe1C"}
@@ -1,19 +1,15 @@
1
1
  /***
2
- * SparseSet O(1) integer-key set with cache-friendly dense iteration.
2
+ * SparseSet. O(1) integer-key set with cache-friendly dense iteration.
3
3
  *
4
4
  * Keys are non-negative integers. A dense number[] holds members packed
5
5
  * at 0..size-1 for linear iteration. A sparse number[] maps
6
- * key → dense index for O(1) has/add/delete.
6
+ * key → dense index, so has, add and delete are each O(1).
7
7
  *
8
8
  * Membership is verified by cross-referencing dense[sparse[key]] === key,
9
9
  * so stale sparse entries are harmless (no clearing needed on delete).
10
10
  * Deletion uses swap-and-pop to keep data contiguous.
11
11
  *
12
12
  ***/
13
- /**
14
- * O(1) integer-key set with cache-friendly dense iteration.
15
- *
16
- */
17
13
  export declare class SparseSet {
18
14
  private _dense;
19
15
  private _sparse;
@@ -1,19 +1,15 @@
1
1
  /***
2
- * SparseSet O(1) integer-key set with cache-friendly dense iteration.
2
+ * SparseSet. O(1) integer-key set with cache-friendly dense iteration.
3
3
  *
4
4
  * Keys are non-negative integers. A dense number[] holds members packed
5
5
  * at 0..size-1 for linear iteration. A sparse number[] maps
6
- * key → dense index for O(1) has/add/delete.
6
+ * key → dense index, so has, add and delete are each O(1).
7
7
  *
8
8
  * Membership is verified by cross-referencing dense[sparse[key]] === key,
9
9
  * so stale sparse entries are harmless (no clearing needed on delete).
10
10
  * Deletion uses swap-and-pop to keep data contiguous.
11
11
  *
12
12
  ***/
13
- /**
14
- * O(1) integer-key set with cache-friendly dense iteration.
15
- *
16
- */
17
13
  export declare class SparseSet {
18
14
  private _dense;
19
15
  private _sparse;
@@ -1 +1 @@
1
- {"version":3,"file":"sparse_set.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/sparse_set/sparse_set.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;KAWK;AAEL;;;GAGG;AACH,qBAAa,SAAS;IACrB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAAgB;IAE/B,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,MAAM,IAAI,SAAS,MAAM,EAAE,CAErC;IAEM,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMtB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAW5B,KAAK,IAAI,IAAI;IAKpB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC;CAGrC"}
1
+ {"version":3,"file":"sparse_set.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/sparse_set/sparse_set.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;KAWK;AAEL,qBAAa,SAAS;IACrB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,OAAO,CAAgB;IAE/B,IAAW,IAAI,IAAI,MAAM,CAExB;IAED,IAAW,MAAM,IAAI,SAAS,MAAM,EAAE,CAErC;IAEM,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAIzB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAMtB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAW5B,KAAK,IAAI,IAAI;IAKpB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC;CAGrC"}
@@ -1,5 +1,5 @@
1
1
  /***
2
- * topologicalSort Kahn's algorithm with a BinaryHeap ready queue.
2
+ * topologicalSort. Kahn's algorithm with a BinaryHeap ready queue.
3
3
  *
4
4
  * Accepts an arbitrary node set, a dependency edge map, and a tiebreaker
5
5
  * comparator used to order nodes that are simultaneously ready (zero in-degree).
@@ -21,9 +21,5 @@
21
21
  * @returns Sorted array in topological order.
22
22
  * @throws {TypeError} If a cycle is detected among the nodes.
23
23
  */
24
- /**
25
- * Topologically sorts `nodes` respecting dependency edges, breaking ties with the comparator.
26
- *
27
- */
28
24
  export declare function topologicalSort<T>(nodes: readonly T[], edges: Map<T, T[]>, tiebreaker: (a: T, b: T) => number, nodeName?: (node: T) => string): T[];
29
25
  //# sourceMappingURL=topological_sort.d.ts.map
@@ -1,5 +1,5 @@
1
1
  /***
2
- * topologicalSort Kahn's algorithm with a BinaryHeap ready queue.
2
+ * topologicalSort. Kahn's algorithm with a BinaryHeap ready queue.
3
3
  *
4
4
  * Accepts an arbitrary node set, a dependency edge map, and a tiebreaker
5
5
  * comparator used to order nodes that are simultaneously ready (zero in-degree).
@@ -21,9 +21,5 @@
21
21
  * @returns Sorted array in topological order.
22
22
  * @throws {TypeError} If a cycle is detected among the nodes.
23
23
  */
24
- /**
25
- * Topologically sorts `nodes` respecting dependency edges, breaking ties with the comparator.
26
- *
27
- */
28
24
  export declare function topologicalSort<T>(nodes: readonly T[], edges: Map<T, T[]>, tiebreaker: (a: T, b: T) => number, nodeName?: (node: T) => string): T[];
29
25
  //# sourceMappingURL=topological_sort.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"topological_sort.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/topological_sort/topological_sort.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;KAWK;AAIL;;;;;;;;;;GAUG;AACH;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAChC,KAAK,EAAE,SAAS,CAAC,EAAE,EACnB,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAClB,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,EAClC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAC5B,CAAC,EAAE,CA8DL"}
1
+ {"version":3,"file":"topological_sort.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/topological_sort/topological_sort.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;KAWK;AAIL;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAChC,KAAK,EAAE,SAAS,CAAC,EAAE,EACnB,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAClB,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,MAAM,EAClC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,MAAM,GAC5B,CAAC,EAAE,CA8DL"}
@@ -1,7 +1,7 @@
1
1
  /***
2
- * GrowableTypedArray TypedArray wrapper with amortised O(1) append.
2
+ * GrowableTypedArray. TypedArray wrapper with amortised O(1) append.
3
3
  *
4
- * TypedArrays have fixed length resizing requires allocating a new
4
+ * TypedArrays have fixed length, resizing requires allocating a new
5
5
  * buffer and copying. GrowableTypedArray wraps one with a separate
6
6
  * logical length and doubles the backing buffer on overflow.
7
7
  *
@@ -16,8 +16,8 @@ export type TypedArrayTag = "f32" | "f64" | "i8" | "i16" | "i32" | "u8" | "u16"
16
16
  export type AnyTypedArray = Float32Array | Float64Array | Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array;
17
17
  /**
18
18
  * Common surface of a row-addressable column buffer. `GrowableTypedArray<T>`
19
- * implements it over a heap-allocated TypedArray; SAB-backed columns (see
20
- * `packages/engine/src/core/sab/sab_backed_column.ts`) implement it over a
19
+ * implements it over a heap-allocated TypedArray. SAB-backed columns (see
20
+ * `@oasys/oecs/shared`) implement it over a
21
21
  * `SharedArrayBuffer` view at a known offset. Archetype column storage
22
22
  * targets this interface so a single code path serves both backings.
23
23
  */
@@ -29,7 +29,11 @@ export interface ColumnBacking<T extends AnyTypedArray> {
29
29
  swapRemove(i: number): number;
30
30
  clear(): void;
31
31
  view(): T;
32
- ensureCapacity(capacity: number): void;
32
+ /** Guarantee room for `capacity` elements, or throw. An implementation that
33
+ * owns its buffer grows to fit. One that views a buffer it does not own
34
+ * cannot grow, so it throws when `capacity` passes the view. Neither name
35
+ * promises growth, thus a caller plans for the throw. */
36
+ reserve(capacity: number): void;
33
37
  bulkAppend(src: T, srcOffset: number, count: number): void;
34
38
  bulkAppendZeroes(count: number): void;
35
39
  bulkAppendValue(value: number, count: number): void;
@@ -37,13 +41,9 @@ export interface ColumnBacking<T extends AnyTypedArray> {
37
41
  * valid data. The snapshot-mount path (`Archetype.restoreHostRows`)
38
42
  * uses this: a restored SAB carries the column bytes, but the column's logical
39
43
  * length is host state that must be re-synced with `Archetype.length`. Throws
40
- * if `len` exceeds capacity. NOT a hot-path method push/pop track length. */
44
+ * if `len` exceeds capacity. Not a hot-path method, push and pop track length. */
41
45
  setLength(len: number): void;
42
46
  }
43
- /**
44
- * TypedArray wrapper with amortised O(1) append. Doubles the backing buffer on overflow.
45
- *
46
- */
47
47
  export declare class GrowableTypedArray<T extends AnyTypedArray> implements ColumnBacking<T> {
48
48
  private readonly _ctor;
49
49
  private _buf;
@@ -52,7 +52,7 @@ export declare class GrowableTypedArray<T extends AnyTypedArray> implements Colu
52
52
  get length(): number;
53
53
  push(value: number): void;
54
54
  pop(): number;
55
- get(i: number): number;
55
+ getAt(i: number): number;
56
56
  setAt(i: number, value: number): void;
57
57
  /**
58
58
  * Move the last element into slot i, decrement length.
@@ -66,18 +66,19 @@ export declare class GrowableTypedArray<T extends AnyTypedArray> implements Colu
66
66
  setLength(len: number): void;
67
67
  /**
68
68
  * Raw backing buffer. Valid data: indices 0..length-1.
69
- * This reference is stable until the next push() that triggers a grow
69
+ * This reference is stable until the next push() that triggers a grow,
70
70
  * do not cache across entity additions.
71
71
  */
72
72
  get buf(): T;
73
73
  /**
74
74
  * Zero-copy subarray view of valid data (0..length-1).
75
- * Shares the backing buffer invalidated if a subsequent push() grows.
75
+ * Shares the backing buffer, invalidated if a subsequent push() grows.
76
76
  */
77
77
  view(): T;
78
78
  [Symbol.iterator](): Iterator<number>;
79
- /** Ensure the backing buffer can hold at least `capacity` elements without growing. */
80
- ensureCapacity(capacity: number): void;
79
+ /** Grow the backing buffer to hold `capacity` elements. Reallocates and
80
+ * copies when the current buffer is short, so `buf` and `view()` go stale. */
81
+ reserve(capacity: number): void;
81
82
  /**
82
83
  * Append `count` elements from `src` starting at `srcOffset`.
83
84
  * Grows if needed. Equivalent to push() in a loop but uses TypedArray.set().
@@ -1,7 +1,7 @@
1
1
  /***
2
- * GrowableTypedArray TypedArray wrapper with amortised O(1) append.
2
+ * GrowableTypedArray. TypedArray wrapper with amortised O(1) append.
3
3
  *
4
- * TypedArrays have fixed length resizing requires allocating a new
4
+ * TypedArrays have fixed length, resizing requires allocating a new
5
5
  * buffer and copying. GrowableTypedArray wraps one with a separate
6
6
  * logical length and doubles the backing buffer on overflow.
7
7
  *
@@ -16,8 +16,8 @@ export type TypedArrayTag = "f32" | "f64" | "i8" | "i16" | "i32" | "u8" | "u16"
16
16
  export type AnyTypedArray = Float32Array | Float64Array | Int8Array | Int16Array | Int32Array | Uint8Array | Uint16Array | Uint32Array;
17
17
  /**
18
18
  * Common surface of a row-addressable column buffer. `GrowableTypedArray<T>`
19
- * implements it over a heap-allocated TypedArray; SAB-backed columns (see
20
- * `packages/engine/src/core/sab/sab_backed_column.ts`) implement it over a
19
+ * implements it over a heap-allocated TypedArray. SAB-backed columns (see
20
+ * `@oasys/oecs/shared`) implement it over a
21
21
  * `SharedArrayBuffer` view at a known offset. Archetype column storage
22
22
  * targets this interface so a single code path serves both backings.
23
23
  */
@@ -29,7 +29,11 @@ export interface ColumnBacking<T extends AnyTypedArray> {
29
29
  swapRemove(i: number): number;
30
30
  clear(): void;
31
31
  view(): T;
32
- ensureCapacity(capacity: number): void;
32
+ /** Guarantee room for `capacity` elements, or throw. An implementation that
33
+ * owns its buffer grows to fit. One that views a buffer it does not own
34
+ * cannot grow, so it throws when `capacity` passes the view. Neither name
35
+ * promises growth, thus a caller plans for the throw. */
36
+ reserve(capacity: number): void;
33
37
  bulkAppend(src: T, srcOffset: number, count: number): void;
34
38
  bulkAppendZeroes(count: number): void;
35
39
  bulkAppendValue(value: number, count: number): void;
@@ -37,13 +41,9 @@ export interface ColumnBacking<T extends AnyTypedArray> {
37
41
  * valid data. The snapshot-mount path (`Archetype.restoreHostRows`)
38
42
  * uses this: a restored SAB carries the column bytes, but the column's logical
39
43
  * length is host state that must be re-synced with `Archetype.length`. Throws
40
- * if `len` exceeds capacity. NOT a hot-path method push/pop track length. */
44
+ * if `len` exceeds capacity. Not a hot-path method, push and pop track length. */
41
45
  setLength(len: number): void;
42
46
  }
43
- /**
44
- * TypedArray wrapper with amortised O(1) append. Doubles the backing buffer on overflow.
45
- *
46
- */
47
47
  export declare class GrowableTypedArray<T extends AnyTypedArray> implements ColumnBacking<T> {
48
48
  private readonly _ctor;
49
49
  private _buf;
@@ -52,7 +52,7 @@ export declare class GrowableTypedArray<T extends AnyTypedArray> implements Colu
52
52
  get length(): number;
53
53
  push(value: number): void;
54
54
  pop(): number;
55
- get(i: number): number;
55
+ getAt(i: number): number;
56
56
  setAt(i: number, value: number): void;
57
57
  /**
58
58
  * Move the last element into slot i, decrement length.
@@ -66,18 +66,19 @@ export declare class GrowableTypedArray<T extends AnyTypedArray> implements Colu
66
66
  setLength(len: number): void;
67
67
  /**
68
68
  * Raw backing buffer. Valid data: indices 0..length-1.
69
- * This reference is stable until the next push() that triggers a grow
69
+ * This reference is stable until the next push() that triggers a grow,
70
70
  * do not cache across entity additions.
71
71
  */
72
72
  get buf(): T;
73
73
  /**
74
74
  * Zero-copy subarray view of valid data (0..length-1).
75
- * Shares the backing buffer invalidated if a subsequent push() grows.
75
+ * Shares the backing buffer, invalidated if a subsequent push() grows.
76
76
  */
77
77
  view(): T;
78
78
  [Symbol.iterator](): Iterator<number>;
79
- /** Ensure the backing buffer can hold at least `capacity` elements without growing. */
80
- ensureCapacity(capacity: number): void;
79
+ /** Grow the backing buffer to hold `capacity` elements. Reallocates and
80
+ * copies when the current buffer is short, so `buf` and `view()` go stale. */
81
+ reserve(capacity: number): void;
81
82
  /**
82
83
  * Append `count` elements from `src` starting at `srcOffset`.
83
84
  * Grows if needed. Equivalent to push() in a loop but uses TypedArray.set().
@@ -1 +1 @@
1
- {"version":3,"file":"typed_arrays.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/typed_arrays/typed_arrays.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typed_arrays.d.ts","sourceRoot":"","sources":["../../../src/type_primitives/typed_arrays/typed_arrays.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":"AAGA,8BAAsB,QAAS,SAAQ,KAAK;aAGxB,aAAa,EAAE,OAAO;aACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjD,OAAO,EAAE,MAAM,EACC,aAAa,EAAE,OAAO,EACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAMpD"}
1
+ {"version":3,"file":"error.d.ts","sourceRoot":"","sources":["../../src/utils/error.ts"],"names":[],"mappings":"AAGA,8BAAsB,QAAS,SAAQ,KAAK;aAG1B,aAAa,EAAE,OAAO;aACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFjD,OAAO,EAAE,MAAM,EACC,aAAa,EAAE,OAAO,EACtB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAYlD"}
@@ -2,9 +2,9 @@
2
2
  * The package version, readable at runtime.
3
3
  *
4
4
  * A literal, not a build-time injection, so raw-source (JSR) consumers get the
5
- * same value as the npm bundle. Kept in lock-step with `package.json` /
6
- * `jsr.json` by `src/__tests__/version_sync.test.ts` bump all three
5
+ * same value as the npm bundle. Kept in lock-step with `package.json` and
6
+ * `jsr.json` by `src/__tests__/version_sync.test.ts`, bump all three
7
7
  * together.
8
8
  */
9
- export declare const VERSION = "0.5.4";
9
+ export declare const VERSION = "0.6.0";
10
10
  //# sourceMappingURL=version.d.ts.map
package/dist/version.d.ts CHANGED
@@ -2,9 +2,9 @@
2
2
  * The package version, readable at runtime.
3
3
  *
4
4
  * A literal, not a build-time injection, so raw-source (JSR) consumers get the
5
- * same value as the npm bundle. Kept in lock-step with `package.json` /
6
- * `jsr.json` by `src/__tests__/version_sync.test.ts` bump all three
5
+ * same value as the npm bundle. Kept in lock-step with `package.json` and
6
+ * `jsr.json` by `src/__tests__/version_sync.test.ts`, bump all three
7
7
  * together.
8
8
  */
9
- export declare const VERSION = "0.5.4";
9
+ export declare const VERSION = "0.6.0";
10
10
  //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ "use strict";async function X(){const e=globalThis.process,o=e?.getBuiltinModule;return typeof o=="function"?o.call(e,"node:worker_threads"):await import(["node","worker_threads"].join(":"))}const m=4,N={view_stamp:8,archetype_count:16,layout_descriptor_off:20},F=16,O={component_id:0,field_id:2,type_tag:4,byte_off:8},P=40,U={component_mask:4,row_capacity:24,column_count:28,enabled_count:32},M=0,K=1,q=2,z=3,H=4,W=H+m,Y=W+m,Q=Y+1,Z=Q+1>>1,ee=-1,te=-2,R=16,j=65536,ne=[Uint8Array,Int8Array,Uint16Array,Int16Array,Uint32Array,Int32Array,Float32Array,Float64Array];function oe(e,o){return new DataView(e).getUint32(o+N.view_stamp,!0)}function re(e,o){return new DataView(e).getUint32(o+U.enabled_count,!0)}function se(e,o,r,d,f,p){const l=new DataView(e),y=l.getUint32(o+N.archetype_count,!0);let s=o+l.getUint32(o+N.layout_descriptor_off,!0);const h=r.length>>1,_=[];for(let E=0;E<y;E++){const b=l.getUint32(s+U.column_count,!0),A=s+P+b*F;if(b===0){s=A;continue}let T=!0;for(let n=0;n<m;n++){const a=l.getUint32(s+U.component_mask+n*4,!0);if((a&d[n])!==d[n]){T=!1;break}if(f!==null&&(a&f[n])!==0){T=!1;break}}if(!T){s=A;continue}const $=l.getUint32(s+U.row_capacity,!0),x=s+P,g=p?new Array(h):[],S=p?[]:new Array(h);let t=0;for(let n=0;n<b&&t<h;n++){const a=x+n*F,c=l.getUint16(a+O.component_id,!0),u=l.getUint16(a+O.field_id,!0);for(let i=0;i<h;i++){if(r[i*2]!==c||r[i*2+1]!==u)continue;const w=o+l.getUint32(a+O.byte_off,!0);if(p){const k=ne[l.getUint8(a+O.type_tag)];g[i]=new k(e,w,$)}else S[i]=w;t++}}t===h&&_.push({descriptorOff:s,views:g,offsets:S}),s=A}return _}function G(e){return typeof e=="object"&&e!==null&&"value"in e?e:null}function ae(e){const o=G(e),r=o===null?e:o.value;return typeof r=="number"&&Number.isFinite(r)?r:null}function ce(e,o,r,d,f,p){const l=G(e.exports.__stack_pointer);if(l===null||f===1)return;const y=ae(e.exports.__heap_base);if(y===null)throw new Error(`the kernel export '${o}' comes from a module with a '__stack_pointer' and no numeric '__heap_base', so the worker cannot find the span its stack may use. Link with --export=__heap_base.`);const s=Math.ceil(y/R)*R,h=r-s,_=p>0?p:Math.floor(h/f/R)*R;if(_<j)throw new Error(`the kernel export '${o}' needs one stack region for each of ${f} workers, and the ${h} bytes between __heap_base ${y} and the store base ${r} leave ${_} for each. Raise memory.storeBase to reserve at least ${f*j} bytes above the module's heap.`);if(f*_>h)throw new Error(`the kernel export '${o}' needs one stack region of ${_} bytes for each of ${f} workers, and the ${h} bytes between __heap_base ${y} and the store base ${r} hold fewer. Raise memory.storeBase, or lower stackBytes on workers.attach.`);try{l.value=r-d*_}catch{throw new Error(`the kernel export '${o}' comes from a module whose '__stack_pointer' is immutable, so every worker would share one stack. Build with mutable globals, or give the kernel a body that uses no stack.`)}}function V(e,o){const r=e.store instanceof SharedArrayBuffer?null:e.store,d=r===null?e.store:null,f=e.storeBase,p=e.index,l=e.count,y=e.stackBytes??0,s=new Int32Array(e.control),h=new Float64Array(e.control),_=[],E=new Uint32Array(m),b=new Uint32Array(m);function A(){return r!==null?r.buffer:d}function T(t){const n=t.specs,a=(u,i)=>{_[t.slot]={call:u,exportName:t.exportName,specs:n,wantViews:i,args:new Array((n.length>>1)+3),buffer:null,stamp:-1,masks:new Uint32Array(m*2),hasExclude:!1,bound:[]},o({type:"kernel",slot:t.slot})},c=u=>{o({type:"kernel",slot:t.slot,error:u instanceof Error?u.message:String(u)})};try{if(t.wasm!==void 0){if(r===null)throw new Error("a wasm kernel imports the world's memory, and this world is not backed by a WebAssembly.Memory. Build the world with the wasm backing, or give the system a js kernel");const u=new WebAssembly.Instance(t.wasm,{env:{memory:r}}),i=u.exports[t.exportName];if(typeof i!="function")throw new Error(`the wasm kernel exports no function named ${t.exportName}`);const w=(n.length>>1)+3;if(i.length!==w)throw new Error(`the wasm kernel export '${t.exportName}' takes ${i.length} parameters and the system declares ${n.length>>1} columns, which needs ${w}. Give the kernel one parameter for each column, then begin, end and dt.`);ce(u,t.exportName,f,p,l,y),a(i,!1);return}import(t.js).then(u=>{const i=u[t.exportName];if(typeof i!="function"){c(new Error(`the js kernel exports no function named ${t.exportName}`));return}a(i,!0)},c)}catch(u){c(u)}}function $(t){const n=s[Y]===1;let a=n!==t.hasExclude;for(let c=0;c<m;c++)E[c]=s[H+c]>>>0,b[c]=s[W+c]>>>0,(t.masks[c]!==E[c]||t.masks[m+c]!==b[c])&&(a=!0);return a&&(t.masks.set(E,0),t.masks.set(b,m),t.hasExclude=n),a}function x(t){const n=_[t];if(n===void 0)throw new Error(`no kernel is registered in slot ${t}`);const a=A(),c=oe(a,f);($(n)||n.buffer!==a||n.stamp!==c)&&(n.bound=se(a,f,n.specs,E,n.hasExclude?b:null,n.wantViews),n.buffer=a,n.stamp=c);const i=h[Z],w=n.bound,k=n.args,v=n.specs.length>>1;for(let C=0;C<w.length;C++){const D=re(a,w[C].descriptorOff),I=Math.floor(D*p/l),B=Math.floor(D*(p+1)/l);if(B<=I)continue;const J=n.wantViews?w[C].views:w[C].offsets;for(let L=0;L<v;L++)k[L]=J[L];k[v]=I,k[v+1]=B,k[v+2]=i,n.call.apply(void 0,k)}}let g=0;function S(){for(;;){for(;Atomics.load(s,M)===g;)Atomics.wait(s,M,g);g=Atomics.load(s,M);const t=Atomics.load(s,q);if(t===te)return!1;if(t===ee)return!0;try{x(t)}catch{Atomics.compareExchange(s,z,0,p+1)}Atomics.add(s,K,1)===l-1&&Atomics.notify(s,K)}}return{onMessage(t){if(t.type==="kernel"){T(t);return}S()&&o({type:"yielded"})}}}function ie(){const e=globalThis;let o=null;e.addEventListener("message",r=>{if(o===null){o=V(r.data,d=>e.postMessage(d)),e.postMessage({type:"ready"});return}o.onMessage(r.data)})}function le(){X().then(e=>{const o=e.parentPort;if(o===null)return;const r=V(e.workerData,d=>o.postMessage(d));o.on("message",d=>r.onMessage(d)),o.postMessage({type:"ready"})})}typeof globalThis.WorkerGlobalScope<"u"?ie():le();
@@ -0,0 +1,17 @@
1
+ /***
2
+ * The engine's worker entry, `@oasys/oecs/worker`.
3
+ *
4
+ * `world.workers.attach` starts this file. It picks the runtime, builds the worker
5
+ * body, and hands every message to it. It exports nothing, because a worker is
6
+ * started and not imported.
7
+ *
8
+ * Node and the node-compatible runtimes take their start payload from
9
+ * `workerData`, which is there before the first message. A browser worker takes
10
+ * it from the first message instead.
11
+ *
12
+ * Every import below names the file with its extension. This entry ships as its
13
+ * own bundle, and the tests load the source through plain node, which resolves
14
+ * a relative specifier by its extension.
15
+ ***/
16
+ export {};
17
+ //# sourceMappingURL=worker.d.ts.map
@@ -0,0 +1,17 @@
1
+ /***
2
+ * The engine's worker entry, `@oasys/oecs/worker`.
3
+ *
4
+ * `world.workers.attach` starts this file. It picks the runtime, builds the worker
5
+ * body, and hands every message to it. It exports nothing, because a worker is
6
+ * started and not imported.
7
+ *
8
+ * Node and the node-compatible runtimes take their start payload from
9
+ * `workerData`, which is there before the first message. A browser worker takes
10
+ * it from the first message instead.
11
+ *
12
+ * Every import below names the file with its extension. This entry ships as its
13
+ * own bundle, and the tests load the source through plain node, which resolves
14
+ * a relative specifier by its extension.
15
+ ***/
16
+ export {};
17
+ //# sourceMappingURL=worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../src/worker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;KAcK"}
@@ -0,0 +1 @@
1
+ "use strict";async function X(){const e=globalThis.process,o=e?.getBuiltinModule;return typeof o=="function"?o.call(e,"node:worker_threads"):await import(["node","worker_threads"].join(":"))}const m=4,N={view_stamp:8,archetype_count:16,layout_descriptor_off:20},F=16,O={component_id:0,field_id:2,type_tag:4,byte_off:8},P=40,U={component_mask:4,row_capacity:24,column_count:28,enabled_count:32},M=0,K=1,q=2,z=3,H=4,W=H+m,Y=W+m,Q=Y+1,Z=Q+1>>1,ee=-1,te=-2,R=16,j=65536,ne=[Uint8Array,Int8Array,Uint16Array,Int16Array,Uint32Array,Int32Array,Float32Array,Float64Array];function oe(e,o){return new DataView(e).getUint32(o+N.view_stamp,!0)}function re(e,o){return new DataView(e).getUint32(o+U.enabled_count,!0)}function se(e,o,r,d,f,p){const l=new DataView(e),y=l.getUint32(o+N.archetype_count,!0);let s=o+l.getUint32(o+N.layout_descriptor_off,!0);const h=r.length>>1,_=[];for(let E=0;E<y;E++){const b=l.getUint32(s+U.column_count,!0),A=s+P+b*F;if(b===0){s=A;continue}let T=!0;for(let n=0;n<m;n++){const a=l.getUint32(s+U.component_mask+n*4,!0);if((a&d[n])!==d[n]){T=!1;break}if(f!==null&&(a&f[n])!==0){T=!1;break}}if(!T){s=A;continue}const $=l.getUint32(s+U.row_capacity,!0),x=s+P,g=p?new Array(h):[],S=p?[]:new Array(h);let t=0;for(let n=0;n<b&&t<h;n++){const a=x+n*F,c=l.getUint16(a+O.component_id,!0),u=l.getUint16(a+O.field_id,!0);for(let i=0;i<h;i++){if(r[i*2]!==c||r[i*2+1]!==u)continue;const w=o+l.getUint32(a+O.byte_off,!0);if(p){const k=ne[l.getUint8(a+O.type_tag)];g[i]=new k(e,w,$)}else S[i]=w;t++}}t===h&&_.push({descriptorOff:s,views:g,offsets:S}),s=A}return _}function G(e){return typeof e=="object"&&e!==null&&"value"in e?e:null}function ae(e){const o=G(e),r=o===null?e:o.value;return typeof r=="number"&&Number.isFinite(r)?r:null}function ce(e,o,r,d,f,p){const l=G(e.exports.__stack_pointer);if(l===null||f===1)return;const y=ae(e.exports.__heap_base);if(y===null)throw new Error(`the kernel export '${o}' comes from a module with a '__stack_pointer' and no numeric '__heap_base', so the worker cannot find the span its stack may use. Link with --export=__heap_base.`);const s=Math.ceil(y/R)*R,h=r-s,_=p>0?p:Math.floor(h/f/R)*R;if(_<j)throw new Error(`the kernel export '${o}' needs one stack region for each of ${f} workers, and the ${h} bytes between __heap_base ${y} and the store base ${r} leave ${_} for each. Raise memory.storeBase to reserve at least ${f*j} bytes above the module's heap.`);if(f*_>h)throw new Error(`the kernel export '${o}' needs one stack region of ${_} bytes for each of ${f} workers, and the ${h} bytes between __heap_base ${y} and the store base ${r} hold fewer. Raise memory.storeBase, or lower stackBytes on workers.attach.`);try{l.value=r-d*_}catch{throw new Error(`the kernel export '${o}' comes from a module whose '__stack_pointer' is immutable, so every worker would share one stack. Build with mutable globals, or give the kernel a body that uses no stack.`)}}function V(e,o){const r=e.store instanceof SharedArrayBuffer?null:e.store,d=r===null?e.store:null,f=e.storeBase,p=e.index,l=e.count,y=e.stackBytes??0,s=new Int32Array(e.control),h=new Float64Array(e.control),_=[],E=new Uint32Array(m),b=new Uint32Array(m);function A(){return r!==null?r.buffer:d}function T(t){const n=t.specs,a=(u,i)=>{_[t.slot]={call:u,exportName:t.exportName,specs:n,wantViews:i,args:new Array((n.length>>1)+3),buffer:null,stamp:-1,masks:new Uint32Array(m*2),hasExclude:!1,bound:[]},o({type:"kernel",slot:t.slot})},c=u=>{o({type:"kernel",slot:t.slot,error:u instanceof Error?u.message:String(u)})};try{if(t.wasm!==void 0){if(r===null)throw new Error("a wasm kernel imports the world's memory, and this world is not backed by a WebAssembly.Memory. Build the world with the wasm backing, or give the system a js kernel");const u=new WebAssembly.Instance(t.wasm,{env:{memory:r}}),i=u.exports[t.exportName];if(typeof i!="function")throw new Error(`the wasm kernel exports no function named ${t.exportName}`);const w=(n.length>>1)+3;if(i.length!==w)throw new Error(`the wasm kernel export '${t.exportName}' takes ${i.length} parameters and the system declares ${n.length>>1} columns, which needs ${w}. Give the kernel one parameter for each column, then begin, end and dt.`);ce(u,t.exportName,f,p,l,y),a(i,!1);return}import(t.js).then(u=>{const i=u[t.exportName];if(typeof i!="function"){c(new Error(`the js kernel exports no function named ${t.exportName}`));return}a(i,!0)},c)}catch(u){c(u)}}function $(t){const n=s[Y]===1;let a=n!==t.hasExclude;for(let c=0;c<m;c++)E[c]=s[H+c]>>>0,b[c]=s[W+c]>>>0,(t.masks[c]!==E[c]||t.masks[m+c]!==b[c])&&(a=!0);return a&&(t.masks.set(E,0),t.masks.set(b,m),t.hasExclude=n),a}function x(t){const n=_[t];if(n===void 0)throw new Error(`no kernel is registered in slot ${t}`);const a=A(),c=oe(a,f);($(n)||n.buffer!==a||n.stamp!==c)&&(n.bound=se(a,f,n.specs,E,n.hasExclude?b:null,n.wantViews),n.buffer=a,n.stamp=c);const i=h[Z],w=n.bound,k=n.args,v=n.specs.length>>1;for(let C=0;C<w.length;C++){const D=re(a,w[C].descriptorOff),I=Math.floor(D*p/l),B=Math.floor(D*(p+1)/l);if(B<=I)continue;const J=n.wantViews?w[C].views:w[C].offsets;for(let L=0;L<v;L++)k[L]=J[L];k[v]=I,k[v+1]=B,k[v+2]=i,n.call.apply(void 0,k)}}let g=0;function S(){for(;;){for(;Atomics.load(s,M)===g;)Atomics.wait(s,M,g);g=Atomics.load(s,M);const t=Atomics.load(s,q);if(t===te)return!1;if(t===ee)return!0;try{x(t)}catch{Atomics.compareExchange(s,z,0,p+1)}Atomics.add(s,K,1)===l-1&&Atomics.notify(s,K)}}return{onMessage(t){if(t.type==="kernel"){T(t);return}S()&&o({type:"yielded"})}}}function ie(){const e=globalThis;let o=null;e.addEventListener("message",r=>{if(o===null){o=V(r.data,d=>e.postMessage(d)),e.postMessage({type:"ready"});return}o.onMessage(r.data)})}function le(){X().then(e=>{const o=e.parentPort;if(o===null)return;const r=V(e.workerData,d=>o.postMessage(d));o.on("message",d=>r.onMessage(d)),o.postMessage({type:"ready"})})}typeof globalThis.WorkerGlobalScope<"u"?ie():le();