@adobe/data 0.7.3 → 0.8.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 (488) hide show
  1. package/dist/blob/blob-handle.d.ts +2 -2
  2. package/dist/blob/blob-meta.d.ts +2 -2
  3. package/dist/cache/blob-store.d.ts +2 -2
  4. package/dist/cache/data-cache.d.ts +1 -1
  5. package/dist/cache/functions/memoize.d.ts +1 -3
  6. package/dist/cache/functions/memoize.js +1 -3
  7. package/dist/cache/functions/memoize.js.map +1 -1
  8. package/dist/cache/managed-array.d.ts +2 -2
  9. package/dist/cache/managed-array.js.map +1 -1
  10. package/dist/cache/memory-allocator.d.ts +1 -1
  11. package/dist/cache/memory-allocator.js +2 -2
  12. package/dist/cache/memory-allocator.js.map +1 -1
  13. package/dist/ecs/archetype/create-archetype.d.ts +2 -2
  14. package/dist/ecs/archetype/create-archetype.js.map +1 -1
  15. package/dist/ecs/archetype/create-archetype.test.js +9 -9
  16. package/dist/ecs/archetype/create-archetype.test.js.map +1 -1
  17. package/dist/ecs/archetype/delete-row.test.js +4 -4
  18. package/dist/ecs/archetype/delete-row.test.js.map +1 -1
  19. package/dist/ecs/component-schemas.d.ts +1 -1
  20. package/dist/ecs/database/create-database.test.js +136 -6
  21. package/dist/ecs/database/create-database.test.js.map +1 -1
  22. package/dist/ecs/database/database-schema/create-database-schema.d.ts +1 -1
  23. package/dist/ecs/database/database-schema/database-schema.d.ts +1 -1
  24. package/dist/ecs/database/database.d.ts +2 -1
  25. package/dist/ecs/database/index.d.ts +1 -1
  26. package/dist/ecs/database/index.js +0 -1
  27. package/dist/ecs/database/index.js.map +1 -1
  28. package/dist/ecs/database/observe-dependent-value.js +3 -3
  29. package/dist/ecs/database/observe-dependent-value.js.map +1 -1
  30. package/dist/ecs/database/observe-select-entities.d.ts +2 -2
  31. package/dist/ecs/database/observe-select-entities.js +2 -2
  32. package/dist/ecs/database/observe-select-entities.js.map +1 -1
  33. package/dist/ecs/database/observe-select-entities.performance.test.js +6 -6
  34. package/dist/ecs/database/observe-select-entities.performance.test.js.map +1 -1
  35. package/dist/ecs/database/observe-select-entities.test.js +6 -6
  36. package/dist/ecs/database/observe-select-entities.test.js.map +1 -1
  37. package/dist/ecs/database/observed/create-observed-database.js +10 -2
  38. package/dist/ecs/database/observed/create-observed-database.js.map +1 -1
  39. package/dist/ecs/database/reconciling/create-reconciling-database.d.ts +8 -1
  40. package/dist/ecs/database/reconciling/create-reconciling-database.js +50 -19
  41. package/dist/ecs/database/reconciling/create-reconciling-database.js.map +1 -1
  42. package/dist/ecs/database/reconciling/create-reconciling-database.test.js +297 -0
  43. package/dist/ecs/database/reconciling/create-reconciling-database.test.js.map +1 -1
  44. package/dist/ecs/database/transactional-store/coalesce-transactions.d.ts +5 -1
  45. package/dist/ecs/database/transactional-store/coalesce-transactions.js +17 -28
  46. package/dist/ecs/database/transactional-store/coalesce-transactions.js.map +1 -1
  47. package/dist/ecs/database/transactional-store/coalesce-transactions.test.js +84 -7
  48. package/dist/ecs/database/transactional-store/coalesce-transactions.test.js.map +1 -1
  49. package/dist/ecs/database/transactional-store/create-transactional-store.js +7 -2
  50. package/dist/ecs/database/transactional-store/create-transactional-store.js.map +1 -1
  51. package/dist/ecs/database/transactional-store/create-transactional-store.test.js +11 -9
  52. package/dist/ecs/database/transactional-store/create-transactional-store.test.js.map +1 -1
  53. package/dist/ecs/entity-location-table/create-entity-location-table.js +13 -1
  54. package/dist/ecs/entity-location-table/create-entity-location-table.js.map +1 -1
  55. package/dist/ecs/entity-location-table/create-entity-location-table.test.js +1 -2
  56. package/dist/ecs/entity-location-table/create-entity-location-table.test.js.map +1 -1
  57. package/dist/ecs/entity-location-table/entity-location.d.ts +2 -2
  58. package/dist/ecs/entity-location-table/entity-location.js +3 -3
  59. package/dist/ecs/entity-location-table/entity-location.js.map +1 -1
  60. package/dist/ecs/entity.d.ts +2 -2
  61. package/dist/ecs/entity.js +2 -2
  62. package/dist/ecs/entity.js.map +1 -1
  63. package/dist/ecs/index.d.ts +5 -2
  64. package/dist/ecs/index.js +3 -2
  65. package/dist/ecs/index.js.map +1 -1
  66. package/dist/ecs/resource-schemas.d.ts +1 -1
  67. package/dist/ecs/store/core/core.d.ts +14 -13
  68. package/dist/ecs/store/core/create-core.d.ts +2 -2
  69. package/dist/ecs/store/core/create-core.js +19 -13
  70. package/dist/ecs/store/core/create-core.js.map +1 -1
  71. package/dist/ecs/store/core/create-core.test.js +54 -6
  72. package/dist/ecs/store/core/create-core.test.js.map +1 -1
  73. package/dist/ecs/store/core/select-entities.d.ts +2 -1
  74. package/dist/ecs/store/core/select-entities.js.map +1 -1
  75. package/dist/ecs/store/core/select-entities.test.js +3 -3
  76. package/dist/ecs/store/core/select-entities.test.js.map +1 -1
  77. package/dist/ecs/store/create-store.d.ts +2 -2
  78. package/dist/ecs/store/create-store.js.map +1 -1
  79. package/dist/ecs/store/create-store.test.js +8 -8
  80. package/dist/ecs/store/create-store.test.js.map +1 -1
  81. package/dist/ecs/store/index.d.ts +2 -0
  82. package/dist/ecs/store/store.d.ts +10 -9
  83. package/dist/ecs/store/store.js.map +1 -1
  84. package/dist/ecs/undo-redo-service/create-undo-redo-service.js +5 -7
  85. package/dist/ecs/undo-redo-service/create-undo-redo-service.js.map +1 -1
  86. package/dist/ecs/undo-redo-service/create-undo-redo-service.test.js +27 -27
  87. package/dist/ecs/undo-redo-service/create-undo-redo-service.test.js.map +1 -1
  88. package/dist/ecs/undo-redo-service/undo-redo-service.d.ts +1 -1
  89. package/dist/index.d.ts +2 -2
  90. package/dist/is-data.d.ts +3 -4
  91. package/dist/lit/hooks/use-drag-observe.d.ts +2 -1
  92. package/dist/lit/hooks/use-drag-observe.js +2 -2
  93. package/dist/lit/hooks/use-drag-observe.js.map +1 -1
  94. package/dist/lit/hooks/use-drag-transaction.js +3 -3
  95. package/dist/lit/hooks/use-drag-transaction.js.map +1 -1
  96. package/dist/lit/hooks/use-draggable.d.ts +1 -1
  97. package/dist/lit/hooks/use-draggable.js +1 -1
  98. package/dist/lit/hooks/use-draggable.js.map +1 -1
  99. package/dist/lit/hooks/use-observable-values.d.ts +1 -2
  100. package/dist/lit/hooks/use-observable-values.js +2 -2
  101. package/dist/lit/hooks/use-observable-values.js.map +1 -1
  102. package/dist/lit/index.d.ts +1 -0
  103. package/dist/math/aabb/center.d.ts +3 -0
  104. package/dist/math/aabb/center.js +6 -0
  105. package/dist/math/aabb/center.js.map +1 -0
  106. package/dist/math/aabb/face/aabb-face.test.d.ts +1 -0
  107. package/dist/math/aabb/face/aabb-face.test.js +55 -0
  108. package/dist/math/aabb/face/aabb-face.test.js.map +1 -0
  109. package/dist/math/aabb/face/functions.d.ts +47 -0
  110. package/dist/math/aabb/face/functions.js +148 -0
  111. package/dist/math/aabb/face/functions.js.map +1 -0
  112. package/dist/math/aabb/face/index.d.ts +4 -0
  113. package/dist/math/aabb/face/index.js +23 -0
  114. package/dist/math/aabb/face/index.js.map +1 -0
  115. package/dist/math/aabb/face/public.d.ts +2 -0
  116. package/dist/math/aabb/face/public.js +24 -0
  117. package/dist/math/aabb/face/public.js.map +1 -0
  118. package/dist/math/aabb/face/schema.d.ts +5 -0
  119. package/dist/math/aabb/face/schema.js +27 -0
  120. package/dist/math/aabb/face/schema.js.map +1 -0
  121. package/dist/math/aabb/index.d.ts +4 -0
  122. package/dist/math/aabb/index.js +23 -0
  123. package/dist/math/aabb/index.js.map +1 -0
  124. package/dist/math/aabb/layout.d.ts +1 -0
  125. package/dist/math/aabb/layout.js +25 -0
  126. package/dist/math/aabb/layout.js.map +1 -0
  127. package/dist/math/aabb/line-intersection.d.ts +10 -0
  128. package/dist/math/aabb/line-intersection.js +42 -0
  129. package/dist/math/aabb/line-intersection.js.map +1 -0
  130. package/dist/math/aabb/line-intersection.test.js +1 -1
  131. package/dist/math/aabb/line-intersection.test.js.map +1 -1
  132. package/dist/math/aabb/public.d.ts +6 -0
  133. package/dist/math/aabb/public.js +28 -0
  134. package/dist/math/aabb/public.js.map +1 -0
  135. package/dist/math/aabb/schema.d.ts +33 -0
  136. package/dist/math/aabb/schema.js +36 -0
  137. package/dist/math/aabb/schema.js.map +1 -0
  138. package/dist/math/aabb/unit.d.ts +5 -0
  139. package/dist/math/aabb/unit.js +8 -0
  140. package/dist/math/aabb/unit.js.map +1 -0
  141. package/dist/math/f32/index.d.ts +4 -0
  142. package/dist/math/f32/index.js +23 -0
  143. package/dist/math/f32/index.js.map +1 -0
  144. package/dist/math/f32/public.d.ts +1 -0
  145. package/dist/math/f32/public.js +23 -0
  146. package/dist/math/f32/public.js.map +1 -0
  147. package/dist/math/f32/schema.d.ts +5 -0
  148. package/dist/math/f32/schema.js +27 -0
  149. package/dist/math/f32/schema.js.map +1 -0
  150. package/dist/math/f64/index.d.ts +4 -0
  151. package/dist/math/f64/index.js +2 -0
  152. package/dist/math/f64/index.js.map +1 -0
  153. package/dist/math/f64/public.d.ts +1 -0
  154. package/dist/math/f64/public.js +23 -0
  155. package/dist/math/f64/public.js.map +1 -0
  156. package/dist/math/f64/schema.d.ts +5 -0
  157. package/dist/math/f64/schema.js +6 -0
  158. package/dist/math/f64/schema.js.map +1 -0
  159. package/dist/math/i32/index.d.ts +4 -0
  160. package/dist/math/i32/index.js +23 -0
  161. package/dist/math/i32/index.js.map +1 -0
  162. package/dist/math/i32/public.d.ts +1 -0
  163. package/dist/math/i32/public.js +23 -0
  164. package/dist/math/i32/public.js.map +1 -0
  165. package/dist/math/i32/schema.d.ts +6 -0
  166. package/dist/math/i32/schema.js +28 -0
  167. package/dist/math/i32/schema.js.map +1 -0
  168. package/dist/math/index.d.ts +14 -13
  169. package/dist/math/index.js +14 -13
  170. package/dist/math/index.js.map +1 -1
  171. package/dist/math/line2/functions.d.ts +5 -0
  172. package/dist/math/line2/functions.js +61 -0
  173. package/dist/math/line2/functions.js.map +1 -0
  174. package/dist/math/line2/index.d.ts +4 -0
  175. package/dist/math/line2/index.js +23 -0
  176. package/dist/math/line2/index.js.map +1 -0
  177. package/dist/math/line2/layout.d.ts +1 -0
  178. package/dist/math/line2/layout.js +25 -0
  179. package/dist/math/line2/layout.js.map +1 -0
  180. package/dist/math/line2/public.d.ts +3 -0
  181. package/dist/math/line2/public.js +25 -0
  182. package/dist/math/line2/public.js.map +1 -0
  183. package/dist/math/line2/schema.d.ts +33 -0
  184. package/dist/math/line2/schema.js +37 -0
  185. package/dist/math/line2/schema.js.map +1 -0
  186. package/dist/math/line3/functions.d.ts +17 -0
  187. package/dist/math/line3/functions.js +70 -0
  188. package/dist/math/line3/functions.js.map +1 -0
  189. package/dist/math/line3/index.d.ts +4 -0
  190. package/dist/math/line3/index.js +23 -0
  191. package/dist/math/line3/index.js.map +1 -0
  192. package/dist/math/line3/layout.d.ts +1 -0
  193. package/dist/math/line3/layout.js +25 -0
  194. package/dist/math/line3/layout.js.map +1 -0
  195. package/dist/math/line3/public.d.ts +3 -0
  196. package/dist/math/line3/public.js +25 -0
  197. package/dist/math/line3/public.js.map +1 -0
  198. package/dist/math/line3/schema.d.ts +33 -0
  199. package/dist/math/line3/schema.js +37 -0
  200. package/dist/math/line3/schema.js.map +1 -0
  201. package/dist/math/mat4x4/functions.d.ts +23 -0
  202. package/dist/math/mat4x4/functions.js +236 -0
  203. package/dist/math/mat4x4/functions.js.map +1 -0
  204. package/dist/math/mat4x4/index.d.ts +26 -0
  205. package/dist/math/mat4x4/index.js +45 -0
  206. package/dist/math/mat4x4/index.js.map +1 -0
  207. package/dist/math/mat4x4/layout.d.ts +1 -0
  208. package/dist/math/mat4x4/layout.js +25 -0
  209. package/dist/math/mat4x4/layout.js.map +1 -0
  210. package/dist/math/mat4x4/public.d.ts +3 -0
  211. package/dist/math/mat4x4/public.js +25 -0
  212. package/dist/math/mat4x4/public.js.map +1 -0
  213. package/dist/math/mat4x4/schema.d.ts +11 -0
  214. package/dist/math/mat4x4/schema.js +30 -0
  215. package/dist/math/mat4x4/schema.js.map +1 -0
  216. package/dist/math/plane/functions.d.ts +16 -0
  217. package/dist/math/plane/functions.js +55 -0
  218. package/dist/math/plane/functions.js.map +1 -0
  219. package/dist/math/plane/index.d.ts +4 -0
  220. package/dist/math/plane/index.js +23 -0
  221. package/dist/math/plane/index.js.map +1 -0
  222. package/dist/math/plane/layout.d.ts +1 -0
  223. package/dist/math/plane/layout.js +25 -0
  224. package/dist/math/plane/layout.js.map +1 -0
  225. package/dist/math/plane/public.d.ts +3 -0
  226. package/dist/math/plane/public.js +25 -0
  227. package/dist/math/plane/public.js.map +1 -0
  228. package/dist/math/plane/schema.d.ts +24 -0
  229. package/dist/math/plane/schema.js +34 -0
  230. package/dist/math/plane/schema.js.map +1 -0
  231. package/dist/math/quat/constants/functions.d.ts +43 -0
  232. package/dist/math/quat/constants/functions.js +258 -0
  233. package/dist/math/quat/constants/functions.js.map +1 -0
  234. package/dist/math/quat/functions.d.ts +43 -0
  235. package/dist/math/quat/functions.js +258 -0
  236. package/dist/math/quat/functions.js.map +1 -0
  237. package/dist/math/quat/index.d.ts +4 -0
  238. package/dist/math/quat/index.js +23 -0
  239. package/dist/math/quat/index.js.map +1 -0
  240. package/dist/math/quat/layout.d.ts +1 -0
  241. package/dist/math/quat/layout.js +25 -0
  242. package/dist/math/quat/layout.js.map +1 -0
  243. package/dist/math/quat/public.d.ts +3 -0
  244. package/dist/math/quat/public.js +25 -0
  245. package/dist/math/quat/public.js.map +1 -0
  246. package/dist/math/quat/schema.d.ts +11 -0
  247. package/dist/math/quat/schema.js +30 -0
  248. package/dist/math/quat/schema.js.map +1 -0
  249. package/dist/math/u32/index.d.ts +4 -0
  250. package/dist/math/u32/index.js +23 -0
  251. package/dist/math/u32/index.js.map +1 -0
  252. package/dist/math/u32/public.d.ts +1 -0
  253. package/dist/math/u32/public.js +23 -0
  254. package/dist/math/u32/public.js.map +1 -0
  255. package/dist/math/u32/schema.d.ts +6 -0
  256. package/dist/math/u32/schema.js +28 -0
  257. package/dist/math/u32/schema.js.map +1 -0
  258. package/dist/math/vec2/functions.d.ts +48 -0
  259. package/dist/math/vec2/functions.js +104 -0
  260. package/dist/math/vec2/functions.js.map +1 -0
  261. package/dist/math/vec2/index.d.ts +4 -0
  262. package/dist/math/vec2/index.js +23 -0
  263. package/dist/math/vec2/index.js.map +1 -0
  264. package/dist/math/vec2/layout.d.ts +1 -0
  265. package/dist/math/vec2/layout.js +25 -0
  266. package/dist/math/vec2/layout.js.map +1 -0
  267. package/dist/math/vec2/public.d.ts +3 -0
  268. package/dist/math/vec2/public.js +25 -0
  269. package/dist/math/vec2/public.js.map +1 -0
  270. package/dist/math/vec2/schema.d.ts +11 -0
  271. package/dist/math/vec2/schema.js +30 -0
  272. package/dist/math/vec2/schema.js.map +1 -0
  273. package/dist/math/vec3/functions.d.ts +59 -0
  274. package/dist/math/vec3/functions.js +159 -0
  275. package/dist/math/vec3/functions.js.map +1 -0
  276. package/dist/math/vec3/index.d.ts +4 -0
  277. package/dist/math/vec3/index.js +23 -0
  278. package/dist/math/vec3/index.js.map +1 -0
  279. package/dist/math/vec3/layout.d.ts +1 -0
  280. package/dist/math/vec3/layout.js +25 -0
  281. package/dist/math/vec3/layout.js.map +1 -0
  282. package/dist/math/vec3/public.d.ts +3 -0
  283. package/dist/math/vec3/public.js +25 -0
  284. package/dist/math/vec3/public.js.map +1 -0
  285. package/dist/math/vec3/schema.d.ts +11 -0
  286. package/dist/math/vec3/schema.js +30 -0
  287. package/dist/math/vec3/schema.js.map +1 -0
  288. package/dist/math/vec4/functions.d.ts +49 -0
  289. package/dist/math/vec4/functions.js +150 -0
  290. package/dist/math/vec4/functions.js.map +1 -0
  291. package/dist/math/vec4/index.d.ts +4 -0
  292. package/dist/math/vec4/index.js +23 -0
  293. package/dist/math/vec4/index.js.map +1 -0
  294. package/dist/math/vec4/layout.d.ts +1 -0
  295. package/dist/math/vec4/layout.js +25 -0
  296. package/dist/math/vec4/layout.js.map +1 -0
  297. package/dist/math/vec4/public.d.ts +3 -0
  298. package/dist/math/vec4/public.js +25 -0
  299. package/dist/math/vec4/public.js.map +1 -0
  300. package/dist/math/vec4/schema.d.ts +11 -0
  301. package/dist/math/vec4/schema.js +30 -0
  302. package/dist/math/vec4/schema.js.map +1 -0
  303. package/dist/mutable.d.ts +3 -4
  304. package/dist/observe/create-event.d.ts +10 -0
  305. package/dist/observe/create-event.js +22 -0
  306. package/dist/observe/create-event.js.map +1 -0
  307. package/dist/observe/create-persisted-state.d.ts +1 -1
  308. package/dist/observe/create-persisted-state.js +2 -2
  309. package/dist/observe/create-persisted-state.js.map +1 -1
  310. package/dist/observe/create-query-state.d.ts +2 -3
  311. package/dist/observe/create-query-state.js +2 -2
  312. package/dist/observe/create-query-state.js.map +1 -1
  313. package/dist/observe/create-state.d.ts +7 -0
  314. package/dist/observe/create-state.js +27 -0
  315. package/dist/observe/create-state.js.map +1 -0
  316. package/dist/observe/from-array.d.ts +1 -1
  317. package/dist/observe/from-constant.d.ts +1 -1
  318. package/dist/observe/from-element-id.d.ts +1 -1
  319. package/dist/observe/from-element-properties-and-events.d.ts +1 -1
  320. package/dist/observe/from-element-property.d.ts +1 -1
  321. package/dist/observe/from-promise-with-error.d.ts +1 -1
  322. package/dist/observe/from-promise.d.ts +1 -1
  323. package/dist/observe/from-properties.d.ts +1 -1
  324. package/dist/observe/index.d.ts +16 -30
  325. package/dist/observe/index.js +1 -32
  326. package/dist/observe/index.js.map +1 -1
  327. package/dist/observe/observe.test.js +4 -4
  328. package/dist/observe/observe.test.js.map +1 -1
  329. package/dist/observe/public.d.ts +28 -0
  330. package/dist/observe/public.js +50 -0
  331. package/dist/observe/public.js.map +1 -0
  332. package/dist/observe/to-async-generator.d.ts +1 -1
  333. package/dist/observe/to-promise.d.ts +2 -2
  334. package/dist/observe/to-promise.js +1 -1
  335. package/dist/observe/to-properties.d.ts +1 -1
  336. package/dist/observe/with-async-map.d.ts +1 -1
  337. package/dist/observe/with-batch.d.ts +1 -1
  338. package/dist/observe/with-batch.test.js +5 -5
  339. package/dist/observe/with-batch.test.js.map +1 -1
  340. package/dist/observe/with-cache.d.ts +1 -1
  341. package/dist/observe/with-copy.d.ts +1 -1
  342. package/dist/observe/with-deduplicate-data.d.ts +1 -1
  343. package/dist/observe/with-deduplicate.d.ts +1 -1
  344. package/dist/observe/with-default.d.ts +1 -1
  345. package/dist/observe/with-filter.d.ts +1 -1
  346. package/dist/observe/with-lazy.d.ts +1 -1
  347. package/dist/observe/with-lazy.test.js +3 -3
  348. package/dist/observe/with-lazy.test.js.map +1 -1
  349. package/dist/observe/with-map-data.d.ts +1 -1
  350. package/dist/observe/with-map.d.ts +1 -1
  351. package/dist/observe/with-optional.d.ts +1 -1
  352. package/dist/observe/with-unwrap.d.ts +1 -1
  353. package/dist/old-ecs/action-ecs/action-ecs.js +2 -2
  354. package/dist/old-ecs/action-ecs/action-ecs.js.map +1 -1
  355. package/dist/old-ecs/action-ecs/action-ecs.test.js +3 -3
  356. package/dist/old-ecs/action-ecs/action-ecs.test.js.map +1 -1
  357. package/dist/old-ecs/action-ecs/action-types.d.ts +4 -4
  358. package/dist/old-ecs/core-ecs/core-ecs-serialization.test.js +3 -3
  359. package/dist/old-ecs/core-ecs/core-ecs-serialization.test.js.map +1 -1
  360. package/dist/old-ecs/core-ecs/core-ecs-types.d.ts +3 -3
  361. package/dist/old-ecs/core-ecs/core-ecs.js +2 -2
  362. package/dist/old-ecs/core-ecs/core-ecs.js.map +1 -1
  363. package/dist/old-ecs/core-ecs/core-ecs.test.js +2 -2
  364. package/dist/old-ecs/core-ecs/core-ecs.test.js.map +1 -1
  365. package/dist/old-ecs/ecs/ecs-types.d.ts +3 -3
  366. package/dist/old-ecs/ecs/ecs.test.js +3 -3
  367. package/dist/old-ecs/ecs/ecs.test.js.map +1 -1
  368. package/dist/old-ecs/entity.d.ts +2 -2
  369. package/dist/old-ecs/entity.js +2 -2
  370. package/dist/old-ecs/entity.js.map +1 -1
  371. package/dist/old-ecs/transaction-ecs/transaction-types.d.ts +4 -4
  372. package/dist/perftest/ecs-perf.js +11 -11
  373. package/dist/perftest/ecs-perf.js.map +1 -1
  374. package/dist/samples/todo/elements/todo-toolbar/todo-toolbar.js +3 -3
  375. package/dist/samples/todo/elements/todo-toolbar/todo-toolbar.js.map +1 -1
  376. package/dist/samples/todo/services/dependent-state-service/create-dependent-state-service.d.ts +3 -3
  377. package/dist/samples/todo/services/dependent-state-service/dependent-state/all-todos.d.ts +1 -1
  378. package/dist/samples/todo/services/dependent-state-service/dependent-state/complete-todos.d.ts +1 -1
  379. package/dist/samples/todo/services/dependent-state-service/dependent-state/incomplete-todos.d.ts +1 -1
  380. package/dist/samples/todo/services/state-service/create-todo-database.d.ts +2 -2
  381. package/dist/samples/todo/services/state-service/create-todo-store.d.ts +2 -2
  382. package/dist/samples/todo/services/state-service/create-todo-store.js +5 -4
  383. package/dist/samples/todo/services/state-service/create-todo-store.js.map +1 -1
  384. package/dist/schema/FromSchemas.d.ts +4 -0
  385. package/dist/schema/FromSchemas.js +2 -0
  386. package/dist/schema/FromSchemas.js.map +1 -0
  387. package/dist/schema/boolean/index.d.ts +4 -0
  388. package/dist/schema/boolean/index.js +23 -0
  389. package/dist/schema/boolean/index.js.map +1 -0
  390. package/dist/schema/boolean/public.d.ts +1 -0
  391. package/dist/schema/boolean/public.js +23 -0
  392. package/dist/schema/boolean/public.js.map +1 -0
  393. package/dist/schema/boolean/schema.d.ts +3 -0
  394. package/dist/schema/boolean/schema.js +4 -0
  395. package/dist/schema/boolean/schema.js.map +1 -0
  396. package/dist/schema/from-schemas.d.ts +5 -0
  397. package/dist/schema/from-schemas.js +2 -0
  398. package/dist/schema/from-schemas.js.map +1 -0
  399. package/dist/schema/index.d.ts +9 -8
  400. package/dist/schema/index.js +6 -7
  401. package/dist/schema/index.js.map +1 -1
  402. package/dist/schema/public.d.ts +4 -0
  403. package/dist/schema/public.js +26 -0
  404. package/dist/schema/public.js.map +1 -0
  405. package/dist/schema/schema copy.d.ts +147 -0
  406. package/dist/schema/schema copy.js +34 -0
  407. package/dist/schema/schema copy.js.map +1 -0
  408. package/dist/schema/schema.d.ts +2 -80
  409. package/dist/schema/schema.js +0 -10
  410. package/dist/schema/schema.js.map +1 -1
  411. package/dist/schema/time/index.d.ts +4 -0
  412. package/dist/schema/time/index.js +23 -0
  413. package/dist/schema/time/index.js.map +1 -0
  414. package/dist/schema/time/public.d.ts +1 -0
  415. package/dist/schema/time/public.js +23 -0
  416. package/dist/schema/time/public.js.map +1 -0
  417. package/dist/schema/time/schema.d.ts +5 -0
  418. package/dist/schema/time/schema.js +24 -0
  419. package/dist/schema/time/schema.js.map +1 -0
  420. package/dist/schema/to-type.d.ts +77 -0
  421. package/dist/schema/to-type.js +33 -0
  422. package/dist/schema/to-type.js.map +1 -0
  423. package/dist/schema/to-vertex-buffer-layout.d.ts +2 -2
  424. package/dist/schema/to-vertex-buffer-layout.js +28 -14
  425. package/dist/schema/to-vertex-buffer-layout.js.map +1 -1
  426. package/dist/schema/to-vertex-buffer-layout.test.js +18 -18
  427. package/dist/schema/to-vertex-buffer-layout.test.js.map +1 -1
  428. package/dist/schema/true/index.d.ts +4 -0
  429. package/dist/schema/true/index.js +23 -0
  430. package/dist/schema/true/index.js.map +1 -0
  431. package/dist/schema/true/public.d.ts +1 -0
  432. package/dist/schema/true/public.js +23 -0
  433. package/dist/schema/true/public.js.map +1 -0
  434. package/dist/schema/true/schema.d.ts +5 -0
  435. package/dist/schema/true/schema.js +2 -0
  436. package/dist/schema/true/schema.js.map +1 -0
  437. package/dist/schema/type.d.ts +76 -0
  438. package/dist/schema/type.js +33 -0
  439. package/dist/schema/type.js.map +1 -0
  440. package/dist/schema/validation/with-validation.d.ts +2 -2
  441. package/dist/schema/validation/with-validation.js.map +1 -1
  442. package/dist/schema/validation/with-validation.test.js.map +1 -1
  443. package/dist/service/add-observable-actions.d.ts +5 -5
  444. package/dist/service/add-observable-actions.js +2 -2
  445. package/dist/service/add-observable-actions.js.map +1 -1
  446. package/dist/service/index.d.ts +1 -1
  447. package/dist/service/index.js.map +1 -1
  448. package/dist/service/progressive-result.d.ts +2 -3
  449. package/dist/table/add-row.d.ts +2 -2
  450. package/dist/table/add-row.js +2 -2
  451. package/dist/table/create-table.d.ts +2 -2
  452. package/dist/table/create-table.js.map +1 -1
  453. package/dist/table/delete-row.d.ts +2 -2
  454. package/dist/table/delete-row.js +2 -2
  455. package/dist/table/row-index.d.ts +2 -2
  456. package/dist/table/row-index.js +2 -2
  457. package/dist/table/row-index.js.map +1 -1
  458. package/dist/table/table-compact.test.js +9 -9
  459. package/dist/table/table-compact.test.js.map +1 -1
  460. package/dist/table/update-row.d.ts +4 -3
  461. package/dist/table/update-row.js +4 -3
  462. package/dist/table/update-row.js.map +1 -1
  463. package/dist/tsconfig.tsbuildinfo +1 -1
  464. package/dist/typed-buffer/create-array-buffer.d.ts +2 -2
  465. package/dist/typed-buffer/create-const-buffer.d.ts +1 -1
  466. package/dist/typed-buffer/create-number-buffer.d.ts +1 -1
  467. package/dist/typed-buffer/create-number-buffer.js +4 -4
  468. package/dist/typed-buffer/create-number-buffer.js.map +1 -1
  469. package/dist/typed-buffer/create-number-buffer.test.js +2 -2
  470. package/dist/typed-buffer/create-number-buffer.test.js.map +1 -1
  471. package/dist/typed-buffer/create-struct-buffer.d.ts +3 -3
  472. package/dist/typed-buffer/create-struct-buffer.js.map +1 -1
  473. package/dist/typed-buffer/create-struct-buffer.test.js +10 -10
  474. package/dist/typed-buffer/create-struct-buffer.test.js.map +1 -1
  475. package/dist/typed-buffer/create-typed-buffer.d.ts +3 -3
  476. package/dist/typed-buffer/create-typed-buffer.js.map +1 -1
  477. package/dist/typed-buffer/index.d.ts +1 -0
  478. package/dist/typed-buffer/structs/assert-struct.d.ts +1 -1
  479. package/dist/typed-buffer/structs/get-struct-layout.d.ts +1 -1
  480. package/dist/typed-buffer/structs/get-struct-layout.js +4 -4
  481. package/dist/typed-buffer/structs/get-struct-layout.js.map +1 -1
  482. package/dist/typed-buffer/structs/get-struct-layout.test.js +12 -12
  483. package/dist/typed-buffer/structs/get-struct-layout.test.js.map +1 -1
  484. package/dist/typed-buffer/structs/struct-layout.d.ts +1 -1
  485. package/dist/typed-buffer/typed-buffer.d.ts +1 -1
  486. package/dist/types/index.d.ts +1 -0
  487. package/dist/types/types.d.ts +1 -2
  488. package/package.json +1 -1
@@ -22,8 +22,8 @@ SOFTWARE.*/
22
22
  import { describe, it, expect } from "vitest";
23
23
  import { createStore } from "./create-store.js";
24
24
  import { createCoreTestSuite, positionSchema, healthSchema, nameSchema } from "./core/create-core.test.js";
25
- import { F32Schema } from "../../schema/f32.js";
26
- import { TimeSchema } from "../../schema/time.js";
25
+ import { F32 } from "../../math/f32/index.js";
26
+ import { Time } from "../../schema/index.js";
27
27
  describe("createStore", () => {
28
28
  // Test that store passes all core functionality tests
29
29
  createCoreTestSuite("Store core functionality", (componentSchemas) => createStore(componentSchemas, {}));
@@ -32,9 +32,9 @@ describe("createStore", () => {
32
32
  const velocitySchema = {
33
33
  type: "object",
34
34
  properties: {
35
- x: F32Schema,
36
- y: F32Schema,
37
- z: F32Schema,
35
+ x: F32.schema,
36
+ y: F32.schema,
37
+ z: F32.schema,
38
38
  }
39
39
  };
40
40
  it("should select entities from single archetype", () => {
@@ -268,8 +268,8 @@ describe("createStore", () => {
268
268
  const timeSchema = {
269
269
  type: "object",
270
270
  properties: {
271
- delta: F32Schema,
272
- elapsed: F32Schema,
271
+ delta: F32.schema,
272
+ elapsed: F32.schema,
273
273
  }
274
274
  };
275
275
  it("should create store with resources", () => {
@@ -466,7 +466,7 @@ describe("createStore", () => {
466
466
  describe("TimeSchema functionality", () => {
467
467
  it("should store and retrieve Date.now() value correctly", () => {
468
468
  const store = createStore({
469
- timestamp: TimeSchema,
469
+ timestamp: Time.schema,
470
470
  }, {});
471
471
  // Create entity with current timestamp
472
472
  const now = Date.now();
@@ -1 +1 @@
1
- {"version":3,"file":"create-store.test.js","sourceRoot":"","sources":["../../../src/ecs/store/create-store.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-store.test.js","sourceRoot":"","sources":["../../../src/ecs/store/create-store.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
1
  export * from "./store.js";
2
2
  export * from "./create-store.js";
3
3
  export * from "./archetype-components.js";
4
+ export type { EntityReadValues, EntityUpdateValues, ArchetypeQueryOptions } from "./core/core.js";
5
+ export type { EntitySelectOptions } from "./entity-select-options.js";
@@ -8,20 +8,21 @@ import { ArchetypeComponents } from "./archetype-components.js";
8
8
  import { Archetype, ReadonlyArchetype } from "../archetype/archetype.js";
9
9
  import { EntitySelectOptions } from "./entity-select-options.js";
10
10
  import { Undoable } from "../database/undoable.js";
11
- import { FromSchemas } from "../../schema/schema.js";
11
+ import { FromSchemas } from "../../schema/from-schemas.js";
12
12
  import { ComponentSchemas } from "../component-schemas.js";
13
13
  import { ResourceSchemas } from "../resource-schemas.js";
14
+ import { OptionalComponents } from "../optional-components.js";
14
15
  interface BaseStore<C extends object = never> {
15
- select<Include extends StringKeyof<C>>(include: readonly Include[] | ReadonlySet<string>, options?: EntitySelectOptions<C, Pick<C & RequiredComponents, Include>>): readonly Entity[];
16
+ select<Include extends StringKeyof<C & OptionalComponents>>(include: readonly Include[] | ReadonlySet<string>, options?: EntitySelectOptions<C & OptionalComponents, Pick<C & RequiredComponents & OptionalComponents, Include>>): readonly Entity[];
16
17
  toData(): unknown;
17
18
  }
18
- export interface ReadonlyStore<C extends Components = never, R extends ResourceComponents = never, A extends ArchetypeComponents<StringKeyof<C>> = never> extends BaseStore<C>, ReadonlyCore<C> {
19
+ export interface ReadonlyStore<C extends Components = never, R extends ResourceComponents = never, A extends ArchetypeComponents<StringKeyof<C & OptionalComponents>> = never> extends BaseStore<C>, ReadonlyCore<C> {
19
20
  readonly resources: {
20
21
  readonly [K in StringKeyof<R>]: R[K];
21
22
  };
22
23
  readonly archetypes: {
23
24
  -readonly [K in StringKeyof<A>]: ReadonlyArchetype<RequiredComponents & {
24
- [P in A[K][number]]: C[P];
25
+ [P in A[K][number]]: (C & RequiredComponents & OptionalComponents)[P];
25
26
  }>;
26
27
  };
27
28
  }
@@ -29,7 +30,7 @@ export type ToReadonlyStore<T extends Store<any, any>> = T extends Store<infer C
29
30
  /**
30
31
  * Store is the main interface for storing components, entities and resources.
31
32
  */
32
- export interface Store<C extends Components = never, R extends ResourceComponents = never, A extends ArchetypeComponents<StringKeyof<C>> = never> extends BaseStore<C>, Core<C> {
33
+ export interface Store<C extends Components = never, R extends ResourceComponents = never, A extends ArchetypeComponents<StringKeyof<C & OptionalComponents>> = never> extends BaseStore<C>, Core<C> {
33
34
  /**
34
35
  * This is used when a store is used to represent a transaction.
35
36
  * For most stores, this is ignored if it is set.
@@ -40,7 +41,7 @@ export interface Store<C extends Components = never, R extends ResourceComponent
40
41
  };
41
42
  readonly archetypes: {
42
43
  -readonly [K in StringKeyof<A>]: Archetype<RequiredComponents & {
43
- [P in A[K][number]]: C[P];
44
+ [P in A[K][number]]: (C & RequiredComponents & OptionalComponents)[P];
44
45
  }>;
45
46
  };
46
47
  fromData(data: unknown): void;
@@ -51,19 +52,19 @@ export declare namespace Store {
51
52
  type Archetypes<S extends Store<any, any, any>> = S extends Store<any, any, infer A> ? A : never;
52
53
  type EntityValues<S extends Store<any, any, any>, K extends S extends Store<any, any, infer A> ? StringKeyof<A> : never> = Simplify<Parameters<S["archetypes"][K]["insert"]>[0] & RequiredComponents>;
53
54
  type InsertValues<S extends Store<any, any, any>, K extends S extends Store<any, any, infer A> ? StringKeyof<A> : never> = Parameters<S["archetypes"][K]["insert"]>[0];
54
- type Schema<CS extends ComponentSchemas, RS extends ResourceSchemas, A extends ArchetypeComponents<StringKeyof<CS>>> = {
55
+ type Schema<CS extends ComponentSchemas, RS extends ResourceSchemas, A extends ArchetypeComponents<StringKeyof<CS & OptionalComponents>>> = {
55
56
  readonly components: CS;
56
57
  readonly resources: RS;
57
58
  readonly archetypes: A;
58
59
  };
59
60
  type FromSchema<T> = T extends Store.Schema<infer CS, infer RS, infer A> ? Store<FromSchemas<CS>, FromSchemas<RS>, A> : never;
60
61
  namespace Schema {
61
- function create<const CS extends ComponentSchemas, const RS extends ResourceSchemas, const A extends ArchetypeComponents<StringKeyof<CS>>>(components: CS, resources: RS, archetypes: A): {
62
+ function create<const CS extends ComponentSchemas, const RS extends ResourceSchemas, const A extends ArchetypeComponents<StringKeyof<CS & OptionalComponents>>>(components: CS, resources: RS, archetypes: A): {
62
63
  readonly components: CS;
63
64
  readonly resources: RS;
64
65
  readonly archetypes: A;
65
66
  };
66
67
  }
67
- function createFromSchema<const CS extends ComponentSchemas, const RS extends ResourceSchemas, const A extends ArchetypeComponents<StringKeyof<CS>>>(schema: Store.Schema<CS, RS, A>): Store<FromSchemas<CS> & import("../optional-components.js").OptionalComponents, FromSchemas<RS>, A>;
68
+ function createFromSchema<const CS extends ComponentSchemas, const RS extends ResourceSchemas, const A extends ArchetypeComponents<StringKeyof<CS>>>(schema: Store.Schema<CS, RS, A>): Store<FromSchemas<CS>, FromSchemas<RS>, A>;
68
69
  }
69
70
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/ecs/store/store.ts"],"names":[],"mappings":"AAoCA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAyChD,2DAA2D;AAC3D,MAAM,KAAW,KAAK,CA4CrB;AA5CD,WAAiB,KAAK;IAmBlB,2DAA2D;IAC3D,IAAiB,MAAM,CAatB;IAbD,WAAiB,MAAM;QACnB,SAAgB,MAAM,CAKlB,UAAc,EACd,SAAa,EACb,UAAa;YAEb,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAA6C,CAAC;QAC5F,CAAC;QAVe,aAAM,SAUrB,CAAA;IAEL,CAAC,EAbgB,MAAM,GAAN,YAAM,KAAN,YAAM,QAatB;IAED,SAAgB,gBAAgB,CAK5B,MAA+B;QAE/B,OAAO,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/E,CAAC;IARe,sBAAgB,mBAQ/B,CAAA;AACL,CAAC,EA5CgB,KAAK,KAAL,KAAK,QA4CrB"}
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../../../src/ecs/store/store.ts"],"names":[],"mappings":"AAoCA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AA0ChD,2DAA2D;AAC3D,MAAM,KAAW,KAAK,CA4CrB;AA5CD,WAAiB,KAAK;IAmBlB,2DAA2D;IAC3D,IAAiB,MAAM,CAatB;IAbD,WAAiB,MAAM;QACnB,SAAgB,MAAM,CAKlB,UAAc,EACd,SAAa,EACb,UAAa;YAEb,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAA6C,CAAC;QAC5F,CAAC;QAVe,aAAM,SAUrB,CAAA;IAEL,CAAC,EAbgB,MAAM,GAAN,YAAM,KAAN,YAAM,QAatB;IAED,SAAgB,gBAAgB,CAK5B,MAA+B;QAE/B,OAAO,WAAW,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IAC/E,CAAC;IARe,sBAAgB,mBAQ/B,CAAA;AACL,CAAC,EA5CgB,KAAK,KAAL,KAAK,QA4CrB"}
@@ -19,15 +19,13 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.*/
22
- import { createObservableState } from "../../observe/create-observable-state.js";
22
+ import { Observe } from "../../observe/index.js";
23
23
  import { shouldCoalesceTransactions, coalesceTransactions } from "../database/transactional-store/coalesce-transactions.js";
24
- import { withMap } from "../../observe/with-map.js";
25
- import { fromProperties } from "../../observe/from-properties.js";
26
24
  export const createUndoRedoService = (database) => {
27
25
  const undoStack = [];
28
26
  let stackIndex = 0;
29
- const [observeUndoStack, setObserveUndoStack] = createObservableState([]);
30
- const [observeStackIndex, setObserveStackIndex] = createObservableState(0);
27
+ const [observeUndoStack, setObserveUndoStack] = Observe.createState([]);
28
+ const [observeStackIndex, setObserveStackIndex] = Observe.createState(0);
31
29
  database.observe.transactions(t => {
32
30
  if (t.undoable && !t.transient) {
33
31
  // Check if we should coalesce with the previous transaction
@@ -49,8 +47,8 @@ export const createUndoRedoService = (database) => {
49
47
  setObserveStackIndex(stackIndex);
50
48
  }
51
49
  });
52
- const undoEnabled = withMap(observeStackIndex, (index) => index > 0);
53
- const redoEnabled = withMap(fromProperties({
50
+ const undoEnabled = Observe.withMap(observeStackIndex, (index) => index > 0);
51
+ const redoEnabled = Observe.withMap(Observe.fromProperties({
54
52
  stack: observeUndoStack,
55
53
  index: observeStackIndex,
56
54
  }), ({ stack, index }) => index < stack.length);
@@ -1 +1 @@
1
- {"version":3,"file":"create-undo-redo-service.js","sourceRoot":"","sources":["../../../src/ecs/undo-redo-service/create-undo-redo-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-undo-redo-service.js","sourceRoot":"","sources":["../../../src/ecs/undo-redo-service/create-undo-redo-service.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAGjD,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,0DAA0D,CAAC;AAG5H,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,QAA8G,EAAmB,EAAE;IACrK,MAAM,SAAS,GAA6B,EAAE,CAAC;IAC/C,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,OAAO,CAAC,WAAW,CAA+B,EAAE,CAAC,CAAC;IACtG,MAAM,CAAC,iBAAiB,EAAE,oBAAoB,CAAC,GAAG,OAAO,CAAC,WAAW,CAAS,CAAC,CAAC,CAAC;IACjF,QAAQ,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE;QAC9B,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC;YAC7B,4DAA4D;YAC5D,MAAM,cAAc,GAAG,UAAU,GAAG,CAAC,IAAI,0BAA0B,CAAC,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAElG,IAAI,cAAc,EAAE,CAAC;gBACjB,iEAAiE;gBACjE,MAAM,mBAAmB,GAAG,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;gBACtD,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;gBAEzE,gEAAgE;gBAChE,SAAS,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,mBAAmB,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACJ,wCAAwC;gBACxC,SAAS,CAAC,MAAM,GAAG,UAAU,CAAC;gBAC9B,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,UAAU,EAAE,CAAC;YACjB,CAAC;YAED,mBAAmB,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;YACpC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;IAC7E,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;QACvD,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,iBAAiB;KAC3B,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;IAEhD,OAAO;QACH,WAAW,EAAE,iBAAiB;QAC9B,SAAS,EAAE,gBAAgB;QAC3B,cAAc,EAAE,iBAAiB;QACjC,WAAW;QACX,WAAW;QACX,IAAI,EAAE,GAAG,EAAE;YACP,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACjB,UAAU,EAAE,CAAC;gBACb,QAAQ,CAAC,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClE,oBAAoB,CAAC,UAAU,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACP,IAAI,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;gBAChC,QAAQ,CAAC,YAAY,CAAC,eAAe,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClE,UAAU,EAAE,CAAC;gBACb,oBAAoB,CAAC,UAAU,CAAC,CAAC;YACrC,CAAC;QACL,CAAC;KACJ,CAAC;AACN,CAAC,CAAC"}
@@ -22,7 +22,7 @@ SOFTWARE.*/
22
22
  import { describe, it, expect, beforeEach } from "vitest";
23
23
  import { createDatabase } from "../database/create-database.js";
24
24
  import { createStore } from "../store/create-store.js";
25
- import { F32Schema } from "../../schema/f32.js";
25
+ import { F32 } from "../../math/f32/index.js";
26
26
  import { createUndoRedoService } from "./create-undo-redo-service.js";
27
27
  import { applyOperations } from "../database/transactional-store/apply-operations.js";
28
28
  import { toPromise } from "../../observe/to-promise.js";
@@ -30,9 +30,9 @@ import { toPromise } from "../../observe/to-promise.js";
30
30
  const positionSchema = {
31
31
  type: "object",
32
32
  properties: {
33
- x: F32Schema,
34
- y: F32Schema,
35
- z: F32Schema,
33
+ x: F32.schema,
34
+ y: F32.schema,
35
+ z: F32.schema,
36
36
  },
37
37
  required: ["x", "y", "z"],
38
38
  additionalProperties: false,
@@ -104,7 +104,7 @@ describe("createUndoRedoService", () => {
104
104
  // Verify entity exists
105
105
  const entityData = database.read(entity);
106
106
  expect(entityData).toBeDefined();
107
- expect(entityData?.position.x).toBe(1);
107
+ expect(entityData?.position?.x).toBe(1);
108
108
  // Undo the operation
109
109
  undoRedo.undo();
110
110
  // Verify entity is deleted
@@ -126,9 +126,9 @@ describe("createUndoRedoService", () => {
126
126
  // Verify entity is recreated
127
127
  entityData = database.read(entity);
128
128
  expect(entityData).toBeDefined();
129
- expect(entityData?.position.x).toBe(1);
130
- expect(entityData?.position.y).toBe(2);
131
- expect(entityData?.position.z).toBe(3);
129
+ expect(entityData?.position?.x).toBe(1);
130
+ expect(entityData?.position?.y).toBe(2);
131
+ expect(entityData?.position?.z).toBe(3);
132
132
  // Verify stack index is updated
133
133
  expect(await toPromise(undoRedo.undoStackIndex)).toBe(1);
134
134
  });
@@ -157,23 +157,23 @@ describe("createUndoRedoService", () => {
157
157
  database.transactions.updateEntity({ entity, values: { position: { x: 10, y: 20, z: 30 } } });
158
158
  // Verify update
159
159
  let entityData = database.read(entity);
160
- expect(entityData?.position.x).toBe(10);
161
- expect(entityData?.position.y).toBe(20);
162
- expect(entityData?.position.z).toBe(30);
160
+ expect(entityData?.position?.x).toBe(10);
161
+ expect(entityData?.position?.y).toBe(20);
162
+ expect(entityData?.position?.z).toBe(30);
163
163
  // Undo the update
164
164
  undoRedo.undo();
165
165
  // Verify original values restored
166
166
  entityData = database.read(entity);
167
- expect(entityData?.position.x).toBe(1);
168
- expect(entityData?.position.y).toBe(2);
169
- expect(entityData?.position.z).toBe(3);
167
+ expect(entityData?.position?.x).toBe(1);
168
+ expect(entityData?.position?.y).toBe(2);
169
+ expect(entityData?.position?.z).toBe(3);
170
170
  // Redo the update
171
171
  undoRedo.redo();
172
172
  // Verify update reapplied
173
173
  entityData = database.read(entity);
174
- expect(entityData?.position.x).toBe(10);
175
- expect(entityData?.position.y).toBe(20);
176
- expect(entityData?.position.z).toBe(30);
174
+ expect(entityData?.position?.x).toBe(10);
175
+ expect(entityData?.position?.y).toBe(20);
176
+ expect(entityData?.position?.z).toBe(30);
177
177
  });
178
178
  it("should handle delete operations correctly", async () => {
179
179
  // Create an entity
@@ -187,7 +187,7 @@ describe("createUndoRedoService", () => {
187
187
  // Verify entity is restored
188
188
  const entityData = database.read(entity);
189
189
  expect(entityData).toBeDefined();
190
- expect(entityData?.position.x).toBe(1);
190
+ expect(entityData?.position?.x).toBe(1);
191
191
  // Redo the delete
192
192
  undoRedo.redo();
193
193
  // Verify entity is deleted again
@@ -219,23 +219,23 @@ describe("createUndoRedoService", () => {
219
219
  database.transactions.updateEntity({ entity, values: { position: { x: 10, y: 20, z: 30 } } });
220
220
  // Verify final state
221
221
  let entityData = database.read(entity);
222
- expect(entityData?.position.x).toBe(10);
223
- expect(entityData?.position.y).toBe(20);
224
- expect(entityData?.position.z).toBe(30);
222
+ expect(entityData?.position?.x).toBe(10);
223
+ expect(entityData?.position?.y).toBe(20);
224
+ expect(entityData?.position?.z).toBe(30);
225
225
  // Undo the coalesced update operation
226
226
  undoRedo.undo();
227
227
  // Verify original state is restored
228
228
  entityData = database.read(entity);
229
- expect(entityData?.position.x).toBe(1);
230
- expect(entityData?.position.y).toBe(2);
231
- expect(entityData?.position.z).toBe(3);
229
+ expect(entityData?.position?.x).toBe(1);
230
+ expect(entityData?.position?.y).toBe(2);
231
+ expect(entityData?.position?.z).toBe(3);
232
232
  // Redo the coalesced update operation
233
233
  undoRedo.redo();
234
234
  // Verify final state is restored
235
235
  entityData = database.read(entity);
236
- expect(entityData?.position.x).toBe(10);
237
- expect(entityData?.position.y).toBe(20);
238
- expect(entityData?.position.z).toBe(30);
236
+ expect(entityData?.position?.x).toBe(10);
237
+ expect(entityData?.position?.y).toBe(20);
238
+ expect(entityData?.position?.z).toBe(30);
239
239
  });
240
240
  it("should not coalesce non-coalesceable operations", async () => {
241
241
  // Create multiple entities
@@ -1 +1 @@
1
- {"version":3,"file":"create-undo-redo-service.test.js","sourceRoot":"","sources":["../../../src/ecs/undo-redo-service/create-undo-redo-service.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create-undo-redo-service.test.js","sourceRoot":"","sources":["../../../src/ecs/undo-redo-service/create-undo-redo-service.test.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { Observe } from "../../observe/types.js";
1
+ import { Observe } from "../../observe/index.js";
2
2
  import { TransactionResult } from "../database/transactional-store/transactional-store.js";
3
3
  import { Service } from "../../service/service.js";
4
4
  export interface UndoRedoService<C = unknown> extends Service {
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export { type Data } from "./data.js";
2
- export { type IsData } from "./is-data.js";
2
+ export { type IsData, type Primitive, type EqualReadonly, type IsFullyReadonly } from "./is-data.js";
3
3
  export { equals } from "./equals.js";
4
4
  export { normalize } from "./normalize.js";
5
5
  export { mutableClone } from "./mutable-clone.js";
6
- export { type Mutable } from "./mutable.js";
6
+ export { type Mutable, type MutableArray, type MutableTuple, type MutableObject } from "./mutable.js";
package/dist/is-data.d.ts CHANGED
@@ -1,11 +1,10 @@
1
- type Primitive = string | number | boolean | null;
1
+ export type Primitive = string | number | boolean | null;
2
2
  /** invariant type-equality check (handles `readonly` correctly) */
3
- type EqualReadonly<X, Y> = (<T>() => T extends X ? 1 : 2) extends (<T>() => T extends Y ? 1 : 2) ? (<T>() => T extends Y ? 1 : 2) extends (<T>() => T extends X ? 1 : 2) ? true : false : false;
3
+ export type EqualReadonly<X, Y> = (<T>() => T extends X ? 1 : 2) extends (<T>() => T extends Y ? 1 : 2) ? (<T>() => T extends Y ? 1 : 2) extends (<T>() => T extends X ? 1 : 2) ? true : false : false;
4
4
  /** are *all* own props already `readonly`? */
5
- type IsFullyReadonly<T> = EqualReadonly<T, Readonly<T>>;
5
+ export type IsFullyReadonly<T> = EqualReadonly<T, Readonly<T>>;
6
6
  export type IsData<T> = [
7
7
  T
8
8
  ] extends [Primitive] ? true : T extends ReadonlyArray<infer U> ? EqualReadonly<T, ReadonlyArray<U>> extends true ? IsData<U> : false : T extends object ? IsFullyReadonly<T> extends true ? {
9
9
  [K in keyof T]-?: IsData<T[K]>;
10
10
  }[keyof T] extends false ? false : true : false : false;
11
- export {};
@@ -1,4 +1,5 @@
1
1
  import { DraggableProps } from './use-draggable.js';
2
+ import { Observe } from '../../observe/index.js';
2
3
  import { Vec2 } from '../../math/index.js';
3
4
  export type DragObserveProps = Pick<DraggableProps, 'minDragDistance' | 'dragCursor' | 'addPlaceholder' | 'stopPropagation'>;
4
5
  export type DragStart = {
@@ -21,4 +22,4 @@ export type DragState = DragStart | DragMove | DragEnd;
21
22
  * @param props
22
23
  * @returns
23
24
  */
24
- export declare function useDragObserve(props: DragObserveProps, dependencies: unknown[]): import("../../observe/types.js").Observe<DragState>;
25
+ export declare function useDragObserve(props: DragObserveProps, dependencies: unknown[]): Observe<DragState>;
@@ -21,7 +21,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.*/
22
22
  import { useDraggable } from './use-draggable.js';
23
23
  import { useElement } from './use-element.js';
24
- import { createObservableEvent } from '../../observe/index.js';
24
+ import { Observe } from '../../observe/index.js';
25
25
  /**
26
26
  * This hook creates a drag observe function that can be used to observe the drag state of an element.
27
27
  * This is normally not used directly, but rather through the `useDragTransaction` hook.
@@ -29,7 +29,7 @@ import { createObservableEvent } from '../../observe/index.js';
29
29
  * @returns
30
30
  */
31
31
  export function useDragObserve(props, dependencies) {
32
- const [dragState, setDragState] = createObservableEvent();
32
+ const [dragState, setDragState] = Observe.createEvent();
33
33
  const element = useElement();
34
34
  useDraggable(element, {
35
35
  ...props,
@@ -1 +1 @@
1
- {"version":3,"file":"use-drag-observe.js","sourceRoot":"","sources":["../../../src/lit/hooks/use-drag-observe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,OAAO,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAsB/D;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,KAAuB,EAAE,YAAuB;IAC3E,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,qBAAqB,EAAa,CAAC;IACrE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,YAAY,CAAC,OAAO,EAChB;QACI,GAAG,KAAK;QACR,WAAW,EAAE,EAAE,CAAC,EAAE;YACd,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC5B,YAAY,CAAC;gBACT,IAAI,EAAE,MAAM;gBACZ,QAAQ;gBACR,KAAK;aACR,CAAC,CAAC;QACP,CAAC;QACD,SAAS,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC/B,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC;KACJ,EACD,YAAY,CACf,CAAC;IACF,OAAO,SAAS,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"use-drag-observe.js","sourceRoot":"","sources":["../../../src/lit/hooks/use-drag-observe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,OAAO,EAAkB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAsBjD;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,KAAuB,EAAE,YAAuB;IAC3E,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,OAAO,CAAC,WAAW,EAAa,CAAC;IACnE,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;IAC7B,YAAY,CAAC,OAAO,EAChB;QACI,GAAG,KAAK;QACR,WAAW,EAAE,EAAE,CAAC,EAAE;YACd,YAAY,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC5B,YAAY,CAAC;gBACT,IAAI,EAAE,MAAM;gBACZ,QAAQ;gBACR,KAAK;aACR,CAAC,CAAC;QACP,CAAC;QACD,SAAS,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE;YAC/B,YAAY,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACf,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACrC,CAAC;KACJ,EACD,YAAY,CACf,CAAC;IACF,OAAO,SAAS,CAAC;AACrB,CAAC"}
@@ -21,7 +21,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.*/
22
22
  import { useDragObserve } from './use-drag-observe.js';
23
23
  import { useEffect } from "./use-effect.js";
24
- import { toAsyncGenerator, withFilter } from '../../observe/index.js';
24
+ import { Observe } from '../../observe/index.js';
25
25
  export function useDragTransaction(props, dependencies) {
26
26
  const { transaction, update } = props;
27
27
  const dragObserve = useDragObserve(props, dependencies);
@@ -30,10 +30,10 @@ export function useDragTransaction(props, dependencies) {
30
30
  // we start the transaction by calling it with an async generator that will yield the args asynchronously
31
31
  transaction(
32
32
  // we create the async generator by mapping the dragObserve state changes to transaction args
33
- () => toAsyncGenerator(
33
+ () => Observe.toAsyncGenerator(
34
34
  // this uses the withMap function and the provided update and finish functions
35
35
  // any type 'start' will just be ignored and filtered out
36
- withFilter(dragObserve, value => {
36
+ Observe.withFilter(dragObserve, value => {
37
37
  if (value.type === 'end') {
38
38
  done = true;
39
39
  return update(value);