@adobe/data 0.2.0 → 0.2.2

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 (1137) hide show
  1. package/dist/README.md +310 -0
  2. package/dist/assembly/index.d.ts +30 -0
  3. package/dist/assembly/index.js +18 -0
  4. package/dist/assembly/index.wasm +0 -0
  5. package/dist/assembly/index.wasm.map +1 -0
  6. package/dist/assembly-test/assembly.test.d.ts +1 -0
  7. package/dist/assembly-test/assembly.test.js +29 -0
  8. package/dist/assembly-test/assembly.test.js.map +1 -0
  9. package/dist/cache/async-cache.d.ts +15 -0
  10. package/dist/cache/async-cache.js +23 -0
  11. package/dist/cache/async-cache.js.map +1 -0
  12. package/dist/cache/blob-store.d.ts +94 -0
  13. package/dist/cache/blob-store.js +194 -0
  14. package/dist/cache/blob-store.js.map +1 -0
  15. package/dist/cache/blob-store.test.d.ts +1 -0
  16. package/dist/cache/blob-store.test.js +142 -0
  17. package/dist/cache/blob-store.test.js.map +1 -0
  18. package/dist/cache/data-cache.d.ts +38 -0
  19. package/dist/cache/data-cache.js +96 -0
  20. package/dist/cache/data-cache.js.map +1 -0
  21. package/dist/cache/data-cache.test.d.ts +1 -0
  22. package/dist/cache/data-cache.test.js +50 -0
  23. package/dist/cache/data-cache.test.js.map +1 -0
  24. package/dist/cache/expiring-data-cache.d.ts +6 -0
  25. package/dist/cache/expiring-data-cache.js +49 -0
  26. package/dist/cache/expiring-data-cache.js.map +1 -0
  27. package/dist/cache/expiring-data-cache.test.d.ts +1 -0
  28. package/dist/cache/expiring-data-cache.test.js +62 -0
  29. package/dist/cache/expiring-data-cache.test.js.map +1 -0
  30. package/dist/cache/fallback-async-cache.d.ts +7 -0
  31. package/dist/cache/fallback-async-cache.js +22 -0
  32. package/dist/cache/fallback-async-cache.js.map +1 -0
  33. package/dist/cache/functions/async-data-function.d.ts +1 -0
  34. package/dist/cache/functions/async-data-function.js +23 -0
  35. package/dist/cache/functions/async-data-function.js.map +1 -0
  36. package/dist/cache/functions/bind-functions.d.ts +6 -0
  37. package/dist/cache/functions/bind-functions.js +33 -0
  38. package/dist/cache/functions/bind-functions.js.map +1 -0
  39. package/dist/cache/functions/functions.test.d.ts +1 -0
  40. package/dist/cache/functions/functions.test.js +79 -0
  41. package/dist/cache/functions/functions.test.js.map +1 -0
  42. package/dist/cache/functions/get-cached.d.ts +11 -0
  43. package/dist/cache/functions/get-cached.js +49 -0
  44. package/dist/cache/functions/get-cached.js.map +1 -0
  45. package/dist/cache/functions/get-cached.test.d.ts +1 -0
  46. package/dist/cache/functions/get-cached.test.js +96 -0
  47. package/dist/cache/functions/get-cached.test.js.map +1 -0
  48. package/dist/cache/functions/hashing/blob-to-hash.d.ts +4 -0
  49. package/dist/cache/functions/hashing/blob-to-hash.js +44 -0
  50. package/dist/cache/functions/hashing/blob-to-hash.js.map +1 -0
  51. package/dist/cache/functions/hashing/buffer-to-hash.d.ts +4 -0
  52. package/dist/cache/functions/hashing/buffer-to-hash.js +33 -0
  53. package/dist/cache/functions/hashing/buffer-to-hash.js.map +1 -0
  54. package/dist/cache/functions/hashing/hashing.test.d.ts +1 -0
  55. package/dist/cache/functions/hashing/hashing.test.js +95 -0
  56. package/dist/cache/functions/hashing/hashing.test.js.map +1 -0
  57. package/dist/cache/functions/hashing/index.d.ts +4 -0
  58. package/dist/cache/functions/hashing/index.js +26 -0
  59. package/dist/cache/functions/hashing/index.js.map +1 -0
  60. package/dist/cache/functions/hashing/json-to-hash.d.ts +4 -0
  61. package/dist/cache/functions/hashing/json-to-hash.js +29 -0
  62. package/dist/cache/functions/hashing/json-to-hash.js.map +1 -0
  63. package/dist/cache/functions/hashing/string-to-hash.d.ts +4 -0
  64. package/dist/cache/functions/hashing/string-to-hash.js +37 -0
  65. package/dist/cache/functions/hashing/string-to-hash.js.map +1 -0
  66. package/dist/cache/functions/index.d.ts +5 -0
  67. package/dist/cache/functions/index.js +27 -0
  68. package/dist/cache/functions/index.js.map +1 -0
  69. package/dist/cache/functions/memoize.d.ts +12 -0
  70. package/dist/cache/functions/memoize.js +48 -0
  71. package/dist/cache/functions/memoize.js.map +1 -0
  72. package/dist/cache/functions/omit.d.ts +1 -0
  73. package/dist/cache/functions/omit.js +29 -0
  74. package/dist/cache/functions/omit.js.map +1 -0
  75. package/dist/cache/functions/prevent-parallel-execution.d.ts +7 -0
  76. package/dist/cache/functions/prevent-parallel-execution.js +25 -0
  77. package/dist/cache/functions/prevent-parallel-execution.js.map +1 -0
  78. package/dist/cache/functions/types.d.ts +1 -0
  79. package/dist/cache/functions/types.js +23 -0
  80. package/dist/cache/functions/types.js.map +1 -0
  81. package/dist/cache/get-persistent-cache.d.ts +12 -0
  82. package/dist/cache/get-persistent-cache.js +23 -0
  83. package/dist/cache/get-persistent-cache.js.map +1 -0
  84. package/dist/cache/index.d.ts +3 -0
  85. package/dist/cache/index.js +25 -0
  86. package/dist/cache/index.js.map +1 -0
  87. package/dist/cache/managed-array.d.ts +23 -0
  88. package/dist/cache/managed-array.js +160 -0
  89. package/dist/cache/managed-array.js.map +1 -0
  90. package/dist/cache/managed-async-cache.browser.test.d.ts +1 -0
  91. package/dist/cache/managed-async-cache.browser.test.js +50 -0
  92. package/dist/cache/managed-async-cache.browser.test.js.map +1 -0
  93. package/dist/cache/managed-async-cache.d.ts +4 -0
  94. package/dist/cache/managed-async-cache.js +45 -0
  95. package/dist/cache/managed-async-cache.js.map +1 -0
  96. package/dist/cache/memory-allocator.d.ts +23 -0
  97. package/dist/cache/memory-allocator.js +94 -0
  98. package/dist/cache/memory-allocator.js.map +1 -0
  99. package/dist/cache/memory-async-cache.d.ts +6 -0
  100. package/dist/cache/memory-async-cache.js +23 -0
  101. package/dist/cache/memory-async-cache.js.map +1 -0
  102. package/dist/core/data.d.ts +22 -0
  103. package/dist/core/data.js +52 -0
  104. package/dist/core/data.js.map +1 -0
  105. package/dist/core/data.test.d.ts +1 -0
  106. package/dist/core/data.test.js +48 -0
  107. package/dist/core/data.test.js.map +1 -0
  108. package/dist/core/functions/array-equals.d.ts +1 -0
  109. package/dist/core/functions/array-equals.js +34 -0
  110. package/dist/core/functions/array-equals.js.map +1 -0
  111. package/dist/core/functions/deep-merge.d.ts +32 -0
  112. package/dist/core/functions/deep-merge.js +54 -0
  113. package/dist/core/functions/deep-merge.js.map +1 -0
  114. package/dist/core/functions/deep-merge.test.d.ts +1 -0
  115. package/dist/core/functions/deep-merge.test.js +94 -0
  116. package/dist/core/functions/deep-merge.test.js.map +1 -0
  117. package/dist/core/functions/index.d.ts +3 -0
  118. package/dist/core/functions/index.js +25 -0
  119. package/dist/core/functions/index.js.map +1 -0
  120. package/dist/core/functions/is-async-generator.d.ts +1 -0
  121. package/dist/core/functions/is-async-generator.js +25 -0
  122. package/dist/core/functions/is-async-generator.js.map +1 -0
  123. package/dist/core/functions/is-promise.d.ts +1 -0
  124. package/dist/core/functions/is-promise.js +26 -0
  125. package/dist/core/functions/is-promise.js.map +1 -0
  126. package/dist/core/functions/with-validation.d.ts +5 -0
  127. package/dist/core/functions/with-validation.js +38 -0
  128. package/dist/core/functions/with-validation.js.map +1 -0
  129. package/dist/core/functions/with-validation.test.d.ts +1 -0
  130. package/dist/core/functions/with-validation.test.js +96 -0
  131. package/dist/core/functions/with-validation.test.js.map +1 -0
  132. package/dist/core/index.d.ts +3 -0
  133. package/dist/core/index.js +25 -0
  134. package/dist/core/index.js.map +1 -0
  135. package/dist/core/schema/dynamic/dynamic-schema.d.ts +27 -0
  136. package/dist/core/schema/dynamic/dynamic-schema.js +2 -0
  137. package/dist/core/schema/dynamic/dynamic-schema.js.map +1 -0
  138. package/dist/core/schema/dynamic/enumerate-patches.d.ts +9 -0
  139. package/dist/core/schema/dynamic/enumerate-patches.js +50 -0
  140. package/dist/core/schema/dynamic/enumerate-patches.js.map +1 -0
  141. package/dist/core/schema/dynamic/enumerate-patches.test.d.ts +134 -0
  142. package/dist/core/schema/dynamic/enumerate-patches.test.js +209 -0
  143. package/dist/core/schema/dynamic/enumerate-patches.test.js.map +1 -0
  144. package/dist/core/schema/dynamic/get-dynamic-schema.d.ts +5 -0
  145. package/dist/core/schema/dynamic/get-dynamic-schema.js +26 -0
  146. package/dist/core/schema/dynamic/get-dynamic-schema.js.map +1 -0
  147. package/dist/core/schema/dynamic/get-dynamic-schema.test.d.ts +1 -0
  148. package/dist/core/schema/dynamic/get-dynamic-schema.test.js +94 -0
  149. package/dist/core/schema/dynamic/get-dynamic-schema.test.js.map +1 -0
  150. package/dist/core/schema/dynamic/index.d.ts +1 -0
  151. package/dist/core/schema/dynamic/index.js +2 -0
  152. package/dist/core/schema/dynamic/index.js.map +1 -0
  153. package/dist/core/schema/dynamic/schema-path-value-path.d.ts +5 -0
  154. package/dist/core/schema/dynamic/schema-path-value-path.js +12 -0
  155. package/dist/core/schema/dynamic/schema-path-value-path.js.map +1 -0
  156. package/dist/core/schema/dynamic-schema.d.ts +27 -0
  157. package/dist/core/schema/dynamic-schema.js +2 -0
  158. package/dist/core/schema/dynamic-schema.js.map +1 -0
  159. package/dist/core/schema/index.d.ts +4 -0
  160. package/dist/core/schema/index.js +26 -0
  161. package/dist/core/schema/index.js.map +1 -0
  162. package/dist/core/schema/schema.d.ts +122 -0
  163. package/dist/core/schema/schema.js +34 -0
  164. package/dist/core/schema/schema.js.map +1 -0
  165. package/dist/core/schema/schemas.d.ts +45 -0
  166. package/dist/core/schema/schemas.js +39 -0
  167. package/dist/core/schema/schemas.js.map +1 -0
  168. package/dist/core/schema/ui-schema.d.ts +25 -0
  169. package/dist/core/schema/ui-schema.js +2 -0
  170. package/dist/core/schema/ui-schema.js.map +1 -0
  171. package/dist/core/schema/validation/is-valid.d.ts +2 -0
  172. package/dist/core/schema/validation/is-valid.js +14 -0
  173. package/dist/core/schema/validation/is-valid.js.map +1 -0
  174. package/dist/core/schema/validation/is-valid.test.d.ts +1 -0
  175. package/dist/core/schema/validation/is-valid.test.js +40 -0
  176. package/dist/core/schema/validation/is-valid.test.js.map +1 -0
  177. package/dist/core/schema/validation/validate.d.ts +2 -0
  178. package/dist/core/schema/validation/validate.js +38 -0
  179. package/dist/core/schema/validation/validate.js.map +1 -0
  180. package/dist/core/schema/validation/validate.test.d.ts +1 -0
  181. package/dist/core/schema/validation/validate.test.js +106 -0
  182. package/dist/core/schema/validation/validate.test.js.map +1 -0
  183. package/dist/core/schema/validation/with-validation.d.ts +5 -0
  184. package/dist/core/schema/validation/with-validation.js +16 -0
  185. package/dist/core/schema/validation/with-validation.js.map +1 -0
  186. package/dist/core/schema/validation/with-validation.test.d.ts +1 -0
  187. package/dist/core/schema/validation/with-validation.test.js +96 -0
  188. package/dist/core/schema/validation/with-validation.test.js.map +1 -0
  189. package/dist/core/schema.d.ts +86 -0
  190. package/dist/core/schema.js +33 -0
  191. package/dist/core/schema.js.map +1 -0
  192. package/dist/core/schema.test.d.ts +1 -0
  193. package/dist/core/schema.test.js +16 -0
  194. package/dist/core/schema.test.js.map +1 -0
  195. package/dist/core/schemas.d.ts +45 -0
  196. package/dist/core/schemas.js +39 -0
  197. package/dist/core/schemas.js.map +1 -0
  198. package/dist/data.d.ts +11 -0
  199. package/dist/data.js +23 -0
  200. package/dist/data.js.map +1 -0
  201. package/dist/ecs/action-ecs/action-ecs.d.ts +19 -0
  202. package/dist/ecs/action-ecs/action-ecs.js +203 -0
  203. package/dist/ecs/action-ecs/action-ecs.js.map +1 -0
  204. package/dist/ecs/action-ecs/action-ecs.test.d.ts +1 -0
  205. package/dist/ecs/action-ecs/action-ecs.test.js +362 -0
  206. package/dist/ecs/action-ecs/action-ecs.test.js.map +1 -0
  207. package/dist/ecs/action-ecs/action-types.d.ts +106 -0
  208. package/dist/ecs/action-ecs/action-types.js +19 -0
  209. package/dist/ecs/action-ecs/action-types.js.map +1 -0
  210. package/dist/ecs/action-ecs/index.d.ts +2 -0
  211. package/dist/ecs/action-ecs/index.js +23 -0
  212. package/dist/ecs/action-ecs/index.js.map +1 -0
  213. package/dist/ecs/archetype/archetype.d.ts +15 -0
  214. package/dist/ecs/archetype/archetype.js +2 -0
  215. package/dist/ecs/archetype/archetype.js.map +1 -0
  216. package/dist/ecs/archetype/create-archetype.d.ts +8 -0
  217. package/dist/ecs/archetype/create-archetype.js +21 -0
  218. package/dist/ecs/archetype/create-archetype.js.map +1 -0
  219. package/dist/ecs/archetype/create-archetype.test.d.ts +1 -0
  220. package/dist/ecs/archetype/create-archetype.test.js +101 -0
  221. package/dist/ecs/archetype/create-archetype.test.js.map +1 -0
  222. package/dist/ecs/archetype/delete-row.d.ts +8 -0
  223. package/dist/ecs/archetype/delete-row.js +34 -0
  224. package/dist/ecs/archetype/delete-row.js.map +1 -0
  225. package/dist/ecs/archetype/delete-row.test.d.ts +1 -0
  226. package/dist/ecs/archetype/delete-row.test.js +83 -0
  227. package/dist/ecs/archetype/delete-row.test.js.map +1 -0
  228. package/dist/ecs/archetype/index.d.ts +3 -0
  229. package/dist/ecs/archetype/index.js +25 -0
  230. package/dist/ecs/archetype/index.js.map +1 -0
  231. package/dist/ecs/component-schemas.d.ts +4 -0
  232. package/dist/ecs/component-schemas.js +2 -0
  233. package/dist/ecs/component-schemas.js.map +1 -0
  234. package/dist/ecs/core-components.d.ts +3 -0
  235. package/dist/ecs/core-components.js +23 -0
  236. package/dist/ecs/core-components.js.map +1 -0
  237. package/dist/ecs/core-ecs/core-ecs-serialization.test.d.ts +1 -0
  238. package/dist/ecs/core-ecs/core-ecs-serialization.test.js +230 -0
  239. package/dist/ecs/core-ecs/core-ecs-serialization.test.js.map +1 -0
  240. package/dist/ecs/core-ecs/core-ecs-types.d.ts +141 -0
  241. package/dist/ecs/core-ecs/core-ecs-types.js +23 -0
  242. package/dist/ecs/core-ecs/core-ecs-types.js.map +1 -0
  243. package/dist/ecs/core-ecs/core-ecs.d.ts +7 -0
  244. package/dist/ecs/core-ecs/core-ecs.js +492 -0
  245. package/dist/ecs/core-ecs/core-ecs.js.map +1 -0
  246. package/dist/ecs/core-ecs/core-ecs.test.d.ts +1 -0
  247. package/dist/ecs/core-ecs/core-ecs.test.js +425 -0
  248. package/dist/ecs/core-ecs/core-ecs.test.js.map +1 -0
  249. package/dist/ecs/core-ecs/index.d.ts +1 -0
  250. package/dist/ecs/core-ecs/index.js +2 -0
  251. package/dist/ecs/core-ecs/index.js.map +1 -0
  252. package/dist/ecs/database/create-database.d.ts +5 -0
  253. package/dist/ecs/database/create-database.js +145 -0
  254. package/dist/ecs/database/create-database.js.map +1 -0
  255. package/dist/ecs/database/create-database.test.d.ts +1 -0
  256. package/dist/ecs/database/create-database.test.js +578 -0
  257. package/dist/ecs/database/create-database.test.js.map +1 -0
  258. package/dist/ecs/database/database.d.ts +37 -0
  259. package/dist/ecs/database/database.js +2 -0
  260. package/dist/ecs/database/database.js.map +1 -0
  261. package/dist/ecs/database/index.d.ts +3 -0
  262. package/dist/ecs/database/index.js +25 -0
  263. package/dist/ecs/database/index.js.map +1 -0
  264. package/dist/ecs/database/observe-dependent-value.d.ts +7 -0
  265. package/dist/ecs/database/observe-dependent-value.js +61 -0
  266. package/dist/ecs/database/observe-dependent-value.js.map +1 -0
  267. package/dist/ecs/database/observe-dependent-value.test.d.ts +1 -0
  268. package/dist/ecs/database/observe-dependent-value.test.js +153 -0
  269. package/dist/ecs/database/observe-dependent-value.test.js.map +1 -0
  270. package/dist/ecs/database/transactional-store/create-transactional-store.d.ts +5 -0
  271. package/dist/ecs/database/transactional-store/create-transactional-store.js +209 -0
  272. package/dist/ecs/database/transactional-store/create-transactional-store.js.map +1 -0
  273. package/dist/ecs/database/transactional-store/create-transactional-store.test.d.ts +1 -0
  274. package/dist/ecs/database/transactional-store/create-transactional-store.test.js +186 -0
  275. package/dist/ecs/database/transactional-store/create-transactional-store.test.js.map +1 -0
  276. package/dist/ecs/database/transactional-store/index.d.ts +1 -0
  277. package/dist/ecs/database/transactional-store/index.js +23 -0
  278. package/dist/ecs/database/transactional-store/index.js.map +1 -0
  279. package/dist/ecs/database/transactional-store/transactional-store.d.ts +44 -0
  280. package/dist/ecs/database/transactional-store/transactional-store.js +2 -0
  281. package/dist/ecs/database/transactional-store/transactional-store.js.map +1 -0
  282. package/dist/ecs/ecs/ecs-types.d.ts +132 -0
  283. package/dist/ecs/ecs/ecs-types.js +23 -0
  284. package/dist/ecs/ecs/ecs-types.js.map +1 -0
  285. package/dist/ecs/ecs/ecs-where-functions.d.ts +6 -0
  286. package/dist/ecs/ecs/ecs-where-functions.js +91 -0
  287. package/dist/ecs/ecs/ecs-where-functions.js.map +1 -0
  288. package/dist/ecs/ecs/ecs.d.ts +13 -0
  289. package/dist/ecs/ecs/ecs.js +177 -0
  290. package/dist/ecs/ecs/ecs.js.map +1 -0
  291. package/dist/ecs/ecs/ecs.test.d.ts +1 -0
  292. package/dist/ecs/ecs/ecs.test.js +399 -0
  293. package/dist/ecs/ecs/ecs.test.js.map +1 -0
  294. package/dist/ecs/ecs/index.d.ts +3 -0
  295. package/dist/ecs/ecs/index.js +3 -0
  296. package/dist/ecs/ecs/index.js.map +1 -0
  297. package/dist/ecs/entity-location-table/create-entity-location-table.d.ts +2 -0
  298. package/dist/ecs/entity-location-table/create-entity-location-table.js +84 -0
  299. package/dist/ecs/entity-location-table/create-entity-location-table.js.map +1 -0
  300. package/dist/ecs/entity-location-table/create-entity-location-table.test.d.ts +1 -0
  301. package/dist/ecs/entity-location-table/create-entity-location-table.test.js +138 -0
  302. package/dist/ecs/entity-location-table/create-entity-location-table.test.js.map +1 -0
  303. package/dist/ecs/entity-location-table/entity-location-table.d.ts +8 -0
  304. package/dist/ecs/entity-location-table/entity-location-table.js +2 -0
  305. package/dist/ecs/entity-location-table/entity-location-table.js.map +1 -0
  306. package/dist/ecs/entity-location-table/entity-location.d.ts +20 -0
  307. package/dist/ecs/entity-location-table/entity-location.js +10 -0
  308. package/dist/ecs/entity-location-table/entity-location.js.map +1 -0
  309. package/dist/ecs/entity-location-table/index.d.ts +2 -0
  310. package/dist/ecs/entity-location-table/index.js +24 -0
  311. package/dist/ecs/entity-location-table/index.js.map +1 -0
  312. package/dist/ecs/entity.d.ts +8 -0
  313. package/dist/ecs/entity.js +3 -0
  314. package/dist/ecs/entity.js.map +1 -0
  315. package/dist/ecs/index.d.ts +3 -0
  316. package/dist/ecs/index.js +25 -0
  317. package/dist/ecs/index.js.map +1 -0
  318. package/dist/ecs/store/core/core.d.ts +37 -0
  319. package/dist/ecs/store/core/core.js +2 -0
  320. package/dist/ecs/store/core/core.js.map +1 -0
  321. package/dist/ecs/store/core/create-core.d.ts +8 -0
  322. package/dist/ecs/store/core/create-core.js +114 -0
  323. package/dist/ecs/store/core/create-core.js.map +1 -0
  324. package/dist/ecs/store/core/create-core.test.d.ts +41 -0
  325. package/dist/ecs/store/core/create-core.test.js +355 -0
  326. package/dist/ecs/store/core/create-core.test.js.map +1 -0
  327. package/dist/ecs/store/core/index.d.ts +1 -0
  328. package/dist/ecs/store/core/index.js +23 -0
  329. package/dist/ecs/store/core/index.js.map +1 -0
  330. package/dist/ecs/store/create-store.d.ts +12 -0
  331. package/dist/ecs/store/create-store.js +50 -0
  332. package/dist/ecs/store/create-store.js.map +1 -0
  333. package/dist/ecs/store/create-store.test.d.ts +1 -0
  334. package/dist/ecs/store/create-store.test.js +442 -0
  335. package/dist/ecs/store/create-store.test.js.map +1 -0
  336. package/dist/ecs/store/index.d.ts +2 -0
  337. package/dist/ecs/store/index.js +24 -0
  338. package/dist/ecs/store/index.js.map +1 -0
  339. package/dist/ecs/store/resource-components.d.ts +1 -0
  340. package/dist/ecs/store/resource-components.js +23 -0
  341. package/dist/ecs/store/resource-components.js.map +1 -0
  342. package/dist/ecs/store/store.d.ts +23 -0
  343. package/dist/ecs/store/store.js +2 -0
  344. package/dist/ecs/store/store.js.map +1 -0
  345. package/dist/ecs/transaction-ecs/index.d.ts +2 -0
  346. package/dist/ecs/transaction-ecs/index.js +24 -0
  347. package/dist/ecs/transaction-ecs/index.js.map +1 -0
  348. package/dist/ecs/transaction-ecs/transaction-ecs.d.ts +11 -0
  349. package/dist/ecs/transaction-ecs/transaction-ecs.js +184 -0
  350. package/dist/ecs/transaction-ecs/transaction-ecs.js.map +1 -0
  351. package/dist/ecs/transaction-ecs/transaction-ecs.test.d.ts +1 -0
  352. package/dist/ecs/transaction-ecs/transaction-ecs.test.js +599 -0
  353. package/dist/ecs/transaction-ecs/transaction-ecs.test.js.map +1 -0
  354. package/dist/ecs/transaction-ecs/transaction-types.d.ts +135 -0
  355. package/dist/ecs/transaction-ecs/transaction-types.js +2 -0
  356. package/dist/ecs/transaction-ecs/transaction-types.js.map +1 -0
  357. package/dist/ecs/transaction-ecs/transactions.d.ts +5 -0
  358. package/dist/ecs/transaction-ecs/transactions.js +158 -0
  359. package/dist/ecs/transaction-ecs/transactions.js.map +1 -0
  360. package/dist/equals-shallow.d.ts +1 -0
  361. package/dist/equals-shallow.js +37 -0
  362. package/dist/equals-shallow.js.map +1 -0
  363. package/dist/equals-shallow.test.d.ts +1 -0
  364. package/dist/equals-shallow.test.js +113 -0
  365. package/dist/equals-shallow.test.js.map +1 -0
  366. package/dist/equals.d.ts +11 -0
  367. package/dist/equals.js +73 -0
  368. package/dist/equals.js.map +1 -0
  369. package/dist/equals.test.d.ts +1 -0
  370. package/dist/equals.test.js +150 -0
  371. package/dist/equals.test.js.map +1 -0
  372. package/dist/index.d.ts +5 -0
  373. package/dist/index.js +25 -0
  374. package/dist/index.js.map +1 -0
  375. package/dist/internal/array-buffer-like/copy.d.ts +1 -0
  376. package/dist/internal/array-buffer-like/copy.js +469 -0
  377. package/dist/internal/array-buffer-like/copy.js.map +1 -0
  378. package/dist/internal/array-buffer-like/grow.d.ts +1 -0
  379. package/dist/internal/array-buffer-like/grow.js +53 -0
  380. package/dist/internal/array-buffer-like/grow.js.map +1 -0
  381. package/dist/internal/array-buffer-like/index.d.ts +4 -0
  382. package/dist/internal/array-buffer-like/index.js +26 -0
  383. package/dist/internal/array-buffer-like/index.js.map +1 -0
  384. package/dist/internal/array-buffer-like/is-array-buffer.d.ts +1 -0
  385. package/dist/internal/array-buffer-like/is-array-buffer.js +445 -0
  386. package/dist/internal/array-buffer-like/is-array-buffer.js.map +1 -0
  387. package/dist/internal/array-buffer-like/is-shared-array-buffer.d.ts +1 -0
  388. package/dist/internal/array-buffer-like/is-shared-array-buffer.js +445 -0
  389. package/dist/internal/array-buffer-like/is-shared-array-buffer.js.map +1 -0
  390. package/dist/internal/async-generator/is-async-generator.d.ts +1 -0
  391. package/dist/internal/async-generator/is-async-generator.js +25 -0
  392. package/dist/internal/async-generator/is-async-generator.js.map +1 -0
  393. package/dist/internal/data-view-32/create-data-view-32.d.ts +2 -0
  394. package/dist/internal/data-view-32/create-data-view-32.js +8 -0
  395. package/dist/internal/data-view-32/create-data-view-32.js.map +1 -0
  396. package/dist/internal/data-view-32/data-view-32.d.ts +5 -0
  397. package/dist/internal/data-view-32/data-view-32.js +23 -0
  398. package/dist/internal/data-view-32/data-view-32.js.map +1 -0
  399. package/dist/internal/data-view-32/index.d.ts +2 -0
  400. package/dist/internal/data-view-32/index.js +24 -0
  401. package/dist/internal/data-view-32/index.js.map +1 -0
  402. package/dist/internal/function/memoize-factory.d.ts +1 -0
  403. package/dist/internal/function/memoize-factory.js +12 -0
  404. package/dist/internal/function/memoize-factory.js.map +1 -0
  405. package/dist/internal/object/index.d.ts +1 -0
  406. package/dist/internal/object/index.js +23 -0
  407. package/dist/internal/object/index.js.map +1 -0
  408. package/dist/internal/object/map-entries.d.ts +5 -0
  409. package/dist/internal/object/map-entries.js +29 -0
  410. package/dist/internal/object/map-entries.js.map +1 -0
  411. package/dist/internal/promise/is-promise.d.ts +1 -0
  412. package/dist/internal/promise/is-promise.js +26 -0
  413. package/dist/internal/promise/is-promise.js.map +1 -0
  414. package/dist/internal/typed-array/get-byte-size.d.ts +2 -0
  415. package/dist/internal/typed-array/get-byte-size.js +28 -0
  416. package/dist/internal/typed-array/get-byte-size.js.map +1 -0
  417. package/dist/internal/typed-array/index.d.ts +3 -0
  418. package/dist/internal/typed-array/index.js +25 -0
  419. package/dist/internal/typed-array/index.js.map +1 -0
  420. package/dist/internal/typed-array/typed-array-constructer.d.ts +7 -0
  421. package/dist/internal/typed-array/typed-array-constructer.js +2 -0
  422. package/dist/internal/typed-array/typed-array-constructer.js.map +1 -0
  423. package/dist/internal/typed-array/typed-array.d.ts +1 -0
  424. package/dist/internal/typed-array/typed-array.js +23 -0
  425. package/dist/internal/typed-array/typed-array.js.map +1 -0
  426. package/dist/is-data.d.ts +11 -0
  427. package/dist/is-data.js +2 -0
  428. package/dist/is-data.js.map +1 -0
  429. package/dist/lit/decorators/apply-decorator.d.ts +1 -0
  430. package/dist/lit/decorators/apply-decorator.js +18 -0
  431. package/dist/lit/decorators/apply-decorator.js.map +1 -0
  432. package/dist/lit/decorators/apply-service-decorators.d.ts +1 -0
  433. package/dist/lit/decorators/apply-service-decorators.js +12 -0
  434. package/dist/lit/decorators/apply-service-decorators.js.map +1 -0
  435. package/dist/lit/decorators/index.d.ts +3 -0
  436. package/dist/lit/decorators/index.js +25 -0
  437. package/dist/lit/decorators/index.js.map +1 -0
  438. package/dist/lit/decorators/require-service.d.ts +1 -0
  439. package/dist/lit/decorators/require-service.js +13 -0
  440. package/dist/lit/decorators/require-service.js.map +1 -0
  441. package/dist/lit/elements/index.js +4 -0
  442. package/dist/lit/elements/index.js.map +1 -0
  443. package/dist/lit/elements/service-application.d.ts +8 -0
  444. package/dist/lit/elements/service-application.js +27 -0
  445. package/dist/lit/elements/service-application.js.map +1 -0
  446. package/dist/lit/elements/service-context.d.ts +1 -0
  447. package/dist/lit/elements/service-context.js +3 -0
  448. package/dist/lit/elements/service-context.js.map +1 -0
  449. package/dist/lit/elements/service-element.d.ts +6 -0
  450. package/dist/lit/elements/service-element.js +22 -0
  451. package/dist/lit/elements/service-element.js.map +1 -0
  452. package/dist/lit/hooks/component/component.d.ts +9 -0
  453. package/dist/lit/hooks/component/component.js +2 -0
  454. package/dist/lit/hooks/component/component.js.map +1 -0
  455. package/dist/lit/hooks/component/stack.d.ts +6 -0
  456. package/dist/lit/hooks/component/stack.js +15 -0
  457. package/dist/lit/hooks/component/stack.js.map +1 -0
  458. package/dist/lit/hooks/index.js +14 -0
  459. package/dist/lit/hooks/index.js.map +1 -0
  460. package/dist/lit/hooks/use-connected.d.ts +2 -0
  461. package/dist/lit/hooks/use-connected.js +31 -0
  462. package/dist/lit/hooks/use-connected.js.map +1 -0
  463. package/dist/lit/hooks/use-effect.d.ts +3 -0
  464. package/dist/lit/hooks/use-effect.js +13 -0
  465. package/dist/lit/hooks/use-effect.js.map +1 -0
  466. package/dist/lit/hooks/use-element.d.ts +4 -0
  467. package/dist/lit/hooks/use-element.js +8 -0
  468. package/dist/lit/hooks/use-element.js.map +1 -0
  469. package/dist/lit/hooks/use-memo.d.ts +1 -0
  470. package/dist/lit/hooks/use-memo.js +12 -0
  471. package/dist/lit/hooks/use-memo.js.map +1 -0
  472. package/dist/lit/hooks/use-observable-values.d.ts +5 -0
  473. package/dist/lit/hooks/use-observable-values.js +8 -0
  474. package/dist/lit/hooks/use-observable-values.js.map +1 -0
  475. package/dist/lit/hooks/use-observable.d.ts +2 -0
  476. package/dist/lit/hooks/use-observable.js +12 -0
  477. package/dist/lit/hooks/use-observable.js.map +1 -0
  478. package/dist/lit/hooks/use-ref.d.ts +3 -0
  479. package/dist/lit/hooks/use-ref.js +6 -0
  480. package/dist/lit/hooks/use-ref.js.map +1 -0
  481. package/dist/lit/hooks/use-resize-observer.d.ts +10 -0
  482. package/dist/lit/hooks/use-resize-observer.js +20 -0
  483. package/dist/lit/hooks/use-resize-observer.js.map +1 -0
  484. package/dist/lit/hooks/use-state.d.ts +2 -0
  485. package/dist/lit/hooks/use-state.js +14 -0
  486. package/dist/lit/hooks/use-state.js.map +1 -0
  487. package/dist/lit/hooks/use-window-event.d.ts +1 -0
  488. package/dist/lit/hooks/use-window-event.js +10 -0
  489. package/dist/lit/hooks/use-window-event.js.map +1 -0
  490. package/dist/lit/hooks/with-hooks.d.ts +2 -0
  491. package/dist/lit/hooks/with-hooks.js +15 -0
  492. package/dist/lit/hooks/with-hooks.js.map +1 -0
  493. package/dist/lit/index.js +4 -0
  494. package/dist/lit/index.js.map +1 -0
  495. package/dist/mutable-clone.d.ts +5 -0
  496. package/dist/mutable-clone.js +4 -0
  497. package/dist/mutable-clone.js.map +1 -0
  498. package/dist/normalize.d.ts +1 -0
  499. package/dist/normalize.js +34 -0
  500. package/dist/normalize.js.map +1 -0
  501. package/dist/normalize.test.d.ts +1 -0
  502. package/dist/normalize.test.js +48 -0
  503. package/dist/normalize.test.js.map +1 -0
  504. package/dist/observe/create-observable-event.d.ts +10 -0
  505. package/dist/observe/create-observable-event.js +22 -0
  506. package/dist/observe/create-observable-event.js.map +1 -0
  507. package/dist/observe/create-observable-state.d.ts +7 -0
  508. package/dist/observe/create-observable-state.js +27 -0
  509. package/dist/observe/create-observable-state.js.map +1 -0
  510. package/dist/observe/create-persisted-state.d.ts +11 -0
  511. package/dist/observe/create-persisted-state.js +31 -0
  512. package/dist/observe/create-persisted-state.js.map +1 -0
  513. package/dist/observe/create-persisted-state.test.d.ts +1 -0
  514. package/dist/observe/create-persisted-state.test.js +124 -0
  515. package/dist/observe/create-persisted-state.test.js.map +1 -0
  516. package/dist/observe/create-query-state.d.ts +16 -0
  517. package/dist/observe/create-query-state.js +49 -0
  518. package/dist/observe/create-query-state.js.map +1 -0
  519. package/dist/observe/from-array.d.ts +5 -0
  520. package/dist/observe/from-array.js +30 -0
  521. package/dist/observe/from-array.js.map +1 -0
  522. package/dist/observe/from-constant.d.ts +5 -0
  523. package/dist/observe/from-constant.js +12 -0
  524. package/dist/observe/from-constant.js.map +1 -0
  525. package/dist/observe/from-element-id.d.ts +7 -0
  526. package/dist/observe/from-element-id.js +70 -0
  527. package/dist/observe/from-element-id.js.map +1 -0
  528. package/dist/observe/from-element-properties-and-events.d.ts +2 -0
  529. package/dist/observe/from-element-properties-and-events.js +18 -0
  530. package/dist/observe/from-element-properties-and-events.js.map +1 -0
  531. package/dist/observe/from-element-property.d.ts +11 -0
  532. package/dist/observe/from-element-property.js +60 -0
  533. package/dist/observe/from-element-property.js.map +1 -0
  534. package/dist/observe/from-promise-with-error.d.ts +7 -0
  535. package/dist/observe/from-promise-with-error.js +27 -0
  536. package/dist/observe/from-promise-with-error.js.map +1 -0
  537. package/dist/observe/from-promise.d.ts +6 -0
  538. package/dist/observe/from-promise.js +22 -0
  539. package/dist/observe/from-promise.js.map +1 -0
  540. package/dist/observe/from-properties.d.ts +10 -0
  541. package/dist/observe/from-properties.js +33 -0
  542. package/dist/observe/from-properties.js.map +1 -0
  543. package/dist/observe/index.d.ts +30 -0
  544. package/dist/observe/index.js +52 -0
  545. package/dist/observe/index.js.map +1 -0
  546. package/dist/observe/observe.test.d.ts +7 -0
  547. package/dist/observe/observe.test.js +417 -0
  548. package/dist/observe/observe.test.js.map +1 -0
  549. package/dist/observe/to-promise.d.ts +8 -0
  550. package/dist/observe/to-promise.js +18 -0
  551. package/dist/observe/to-promise.js.map +1 -0
  552. package/dist/observe/to-properties.d.ts +11 -0
  553. package/dist/observe/to-properties.js +9 -0
  554. package/dist/observe/to-properties.js.map +1 -0
  555. package/dist/observe/types.d.ts +17 -0
  556. package/dist/observe/types.js +2 -0
  557. package/dist/observe/types.js.map +1 -0
  558. package/dist/observe/with-async-map.d.ts +6 -0
  559. package/dist/observe/with-async-map.js +12 -0
  560. package/dist/observe/with-async-map.js.map +1 -0
  561. package/dist/observe/with-batch.d.ts +7 -0
  562. package/dist/observe/with-batch.js +43 -0
  563. package/dist/observe/with-batch.js.map +1 -0
  564. package/dist/observe/with-batch.test.d.ts +1 -0
  565. package/dist/observe/with-batch.test.js +111 -0
  566. package/dist/observe/with-batch.test.js.map +1 -0
  567. package/dist/observe/with-cache.d.ts +6 -0
  568. package/dist/observe/with-cache.js +33 -0
  569. package/dist/observe/with-cache.js.map +1 -0
  570. package/dist/observe/with-copy.d.ts +5 -0
  571. package/dist/observe/with-copy.js +10 -0
  572. package/dist/observe/with-copy.js.map +1 -0
  573. package/dist/observe/with-deduplicate-data.d.ts +7 -0
  574. package/dist/observe/with-deduplicate-data.js +18 -0
  575. package/dist/observe/with-deduplicate-data.js.map +1 -0
  576. package/dist/observe/with-deduplicate.d.ts +6 -0
  577. package/dist/observe/with-deduplicate.js +19 -0
  578. package/dist/observe/with-deduplicate.js.map +1 -0
  579. package/dist/observe/with-default.d.ts +6 -0
  580. package/dist/observe/with-default.js +21 -0
  581. package/dist/observe/with-default.js.map +1 -0
  582. package/dist/observe/with-lazy.d.ts +7 -0
  583. package/dist/observe/with-lazy.js +15 -0
  584. package/dist/observe/with-lazy.js.map +1 -0
  585. package/dist/observe/with-lazy.test.d.ts +1 -0
  586. package/dist/observe/with-lazy.test.js +59 -0
  587. package/dist/observe/with-lazy.test.js.map +1 -0
  588. package/dist/observe/with-map-data.d.ts +7 -0
  589. package/dist/observe/with-map-data.js +32 -0
  590. package/dist/observe/with-map-data.js.map +1 -0
  591. package/dist/observe/with-map.d.ts +5 -0
  592. package/dist/observe/with-map.js +11 -0
  593. package/dist/observe/with-map.js.map +1 -0
  594. package/dist/observe/with-optional.d.ts +5 -0
  595. package/dist/observe/with-optional.js +20 -0
  596. package/dist/observe/with-optional.js.map +1 -0
  597. package/dist/observe/with-unwrap.d.ts +5 -0
  598. package/dist/observe/with-unwrap.js +26 -0
  599. package/dist/observe/with-unwrap.js.map +1 -0
  600. package/dist/old-ecs/action-ecs/action-ecs.d.ts +19 -0
  601. package/dist/old-ecs/action-ecs/action-ecs.js +203 -0
  602. package/dist/old-ecs/action-ecs/action-ecs.js.map +1 -0
  603. package/dist/old-ecs/action-ecs/action-ecs.test.d.ts +1 -0
  604. package/dist/old-ecs/action-ecs/action-ecs.test.js +363 -0
  605. package/dist/old-ecs/action-ecs/action-ecs.test.js.map +1 -0
  606. package/dist/old-ecs/action-ecs/action-types.d.ts +106 -0
  607. package/dist/old-ecs/action-ecs/action-types.js +19 -0
  608. package/dist/old-ecs/action-ecs/action-types.js.map +1 -0
  609. package/dist/old-ecs/action-ecs/index.d.ts +3 -0
  610. package/dist/old-ecs/action-ecs/index.js +24 -0
  611. package/dist/old-ecs/action-ecs/index.js.map +1 -0
  612. package/dist/old-ecs/action-ecs/sequential-action.d.ts +18 -0
  613. package/dist/old-ecs/action-ecs/sequential-action.js +45 -0
  614. package/dist/old-ecs/action-ecs/sequential-action.js.map +1 -0
  615. package/dist/old-ecs/core-ecs/core-ecs-serialization.test.d.ts +1 -0
  616. package/dist/old-ecs/core-ecs/core-ecs-serialization.test.js +231 -0
  617. package/dist/old-ecs/core-ecs/core-ecs-serialization.test.js.map +1 -0
  618. package/dist/old-ecs/core-ecs/core-ecs-types.d.ts +142 -0
  619. package/dist/old-ecs/core-ecs/core-ecs-types.js +23 -0
  620. package/dist/old-ecs/core-ecs/core-ecs-types.js.map +1 -0
  621. package/dist/old-ecs/core-ecs/core-ecs.d.ts +7 -0
  622. package/dist/old-ecs/core-ecs/core-ecs.js +492 -0
  623. package/dist/old-ecs/core-ecs/core-ecs.js.map +1 -0
  624. package/dist/old-ecs/core-ecs/core-ecs.test.d.ts +1 -0
  625. package/dist/old-ecs/core-ecs/core-ecs.test.js +426 -0
  626. package/dist/old-ecs/core-ecs/core-ecs.test.js.map +1 -0
  627. package/dist/old-ecs/core-ecs/index.d.ts +1 -0
  628. package/dist/old-ecs/core-ecs/index.js +2 -0
  629. package/dist/old-ecs/core-ecs/index.js.map +1 -0
  630. package/dist/old-ecs/ecs/ecs-types.d.ts +133 -0
  631. package/dist/old-ecs/ecs/ecs-types.js +23 -0
  632. package/dist/old-ecs/ecs/ecs-types.js.map +1 -0
  633. package/dist/old-ecs/ecs/ecs-where-functions.d.ts +6 -0
  634. package/dist/old-ecs/ecs/ecs-where-functions.js +91 -0
  635. package/dist/old-ecs/ecs/ecs-where-functions.js.map +1 -0
  636. package/dist/old-ecs/ecs/ecs.d.ts +13 -0
  637. package/dist/old-ecs/ecs/ecs.js +177 -0
  638. package/dist/old-ecs/ecs/ecs.js.map +1 -0
  639. package/dist/old-ecs/ecs/ecs.test.d.ts +1 -0
  640. package/dist/old-ecs/ecs/ecs.test.js +399 -0
  641. package/dist/old-ecs/ecs/ecs.test.js.map +1 -0
  642. package/dist/old-ecs/ecs/index.d.ts +2 -0
  643. package/dist/old-ecs/ecs/index.js +24 -0
  644. package/dist/old-ecs/ecs/index.js.map +1 -0
  645. package/dist/old-ecs/entity.d.ts +8 -0
  646. package/dist/old-ecs/entity.js +3 -0
  647. package/dist/old-ecs/entity.js.map +1 -0
  648. package/dist/old-ecs/index.d.ts +4 -0
  649. package/dist/old-ecs/index.js +26 -0
  650. package/dist/old-ecs/index.js.map +1 -0
  651. package/dist/old-ecs/transaction-ecs/index.d.ts +2 -0
  652. package/dist/old-ecs/transaction-ecs/index.js +24 -0
  653. package/dist/old-ecs/transaction-ecs/index.js.map +1 -0
  654. package/dist/old-ecs/transaction-ecs/transaction-ecs.d.ts +11 -0
  655. package/dist/old-ecs/transaction-ecs/transaction-ecs.js +184 -0
  656. package/dist/old-ecs/transaction-ecs/transaction-ecs.js.map +1 -0
  657. package/dist/old-ecs/transaction-ecs/transaction-ecs.test.d.ts +1 -0
  658. package/dist/old-ecs/transaction-ecs/transaction-ecs.test.js +599 -0
  659. package/dist/old-ecs/transaction-ecs/transaction-ecs.test.js.map +1 -0
  660. package/dist/old-ecs/transaction-ecs/transaction-types.d.ts +136 -0
  661. package/dist/old-ecs/transaction-ecs/transaction-types.js +2 -0
  662. package/dist/old-ecs/transaction-ecs/transaction-types.js.map +1 -0
  663. package/dist/old-ecs/transaction-ecs/transactions.d.ts +5 -0
  664. package/dist/old-ecs/transaction-ecs/transactions.js +158 -0
  665. package/dist/old-ecs/transaction-ecs/transactions.js.map +1 -0
  666. package/dist/package.json +129 -0
  667. package/dist/perftest/ecs-perf.d.ts +49 -0
  668. package/dist/perftest/ecs-perf.js +230 -0
  669. package/dist/perftest/ecs-perf.js.map +1 -0
  670. package/dist/perftest/helper-functions.d.ts +1 -0
  671. package/dist/perftest/helper-functions.js +31 -0
  672. package/dist/perftest/helper-functions.js.map +1 -0
  673. package/dist/perftest/horizon-perf.d.ts +22 -0
  674. package/dist/perftest/horizon-perf.js +126 -0
  675. package/dist/perftest/horizon-perf.js.map +1 -0
  676. package/dist/perftest/index.d.ts +1 -0
  677. package/dist/perftest/index.js +35 -0
  678. package/dist/perftest/index.js.map +1 -0
  679. package/dist/perftest/perf-test.d.ts +18 -0
  680. package/dist/perftest/perf-test.js +124 -0
  681. package/dist/perftest/perf-test.js.map +1 -0
  682. package/dist/perftest/vanilla-perf.d.ts +38 -0
  683. package/dist/perftest/vanilla-perf.js +128 -0
  684. package/dist/perftest/vanilla-perf.js.map +1 -0
  685. package/dist/schema/boolean.d.ts +3 -0
  686. package/dist/schema/boolean.js +4 -0
  687. package/dist/schema/boolean.js.map +1 -0
  688. package/dist/schema/dynamic/deep-merge.d.ts +23 -0
  689. package/dist/schema/dynamic/deep-merge.js +45 -0
  690. package/dist/schema/dynamic/deep-merge.js.map +1 -0
  691. package/dist/schema/dynamic/deep-merge.test.d.ts +1 -0
  692. package/dist/schema/dynamic/deep-merge.test.js +94 -0
  693. package/dist/schema/dynamic/deep-merge.test.js.map +1 -0
  694. package/dist/schema/dynamic/enumerate-patches.d.ts +9 -0
  695. package/dist/schema/dynamic/enumerate-patches.js +50 -0
  696. package/dist/schema/dynamic/enumerate-patches.js.map +1 -0
  697. package/dist/schema/dynamic/enumerate-patches.test.d.ts +134 -0
  698. package/dist/schema/dynamic/enumerate-patches.test.js +230 -0
  699. package/dist/schema/dynamic/enumerate-patches.test.js.map +1 -0
  700. package/dist/schema/dynamic/get-dynamic-schema.d.ts +5 -0
  701. package/dist/schema/dynamic/get-dynamic-schema.js +47 -0
  702. package/dist/schema/dynamic/get-dynamic-schema.js.map +1 -0
  703. package/dist/schema/dynamic/get-dynamic-schema.test.d.ts +1 -0
  704. package/dist/schema/dynamic/get-dynamic-schema.test.js +115 -0
  705. package/dist/schema/dynamic/get-dynamic-schema.test.js.map +1 -0
  706. package/dist/schema/dynamic/index.d.ts +1 -0
  707. package/dist/schema/dynamic/index.js +23 -0
  708. package/dist/schema/dynamic/index.js.map +1 -0
  709. package/dist/schema/f32.d.ts +6 -0
  710. package/dist/schema/f32.js +6 -0
  711. package/dist/schema/f32.js.map +1 -0
  712. package/dist/schema/i32.d.ts +7 -0
  713. package/dist/schema/i32.js +7 -0
  714. package/dist/schema/i32.js.map +1 -0
  715. package/dist/schema/index.d.ts +10 -0
  716. package/dist/schema/index.js +30 -0
  717. package/dist/schema/index.js.map +1 -0
  718. package/dist/schema/nullable.d.ts +6 -0
  719. package/dist/schema/nullable.js +6 -0
  720. package/dist/schema/nullable.js.map +1 -0
  721. package/dist/schema/schema.d.ts +122 -0
  722. package/dist/schema/schema.js +33 -0
  723. package/dist/schema/schema.js.map +1 -0
  724. package/dist/schema/time.d.ts +7 -0
  725. package/dist/schema/time.js +3 -0
  726. package/dist/schema/time.js.map +1 -0
  727. package/dist/schema/true.d.ts +6 -0
  728. package/dist/schema/true.js +2 -0
  729. package/dist/schema/true.js.map +1 -0
  730. package/dist/schema/tuple.d.ts +7 -0
  731. package/dist/schema/tuple.js +4 -0
  732. package/dist/schema/tuple.js.map +1 -0
  733. package/dist/schema/u32.d.ts +7 -0
  734. package/dist/schema/u32.js +7 -0
  735. package/dist/schema/u32.js.map +1 -0
  736. package/dist/schema/validation/is-valid.d.ts +2 -0
  737. package/dist/schema/validation/is-valid.js +11 -0
  738. package/dist/schema/validation/is-valid.js.map +1 -0
  739. package/dist/schema/validation/is-valid.test.d.ts +1 -0
  740. package/dist/schema/validation/is-valid.test.js +40 -0
  741. package/dist/schema/validation/is-valid.test.js.map +1 -0
  742. package/dist/schema/validation/validate.d.ts +2 -0
  743. package/dist/schema/validation/validate.js +38 -0
  744. package/dist/schema/validation/validate.js.map +1 -0
  745. package/dist/schema/validation/validate.test.d.ts +1 -0
  746. package/dist/schema/validation/validate.test.js +106 -0
  747. package/dist/schema/validation/validate.test.js.map +1 -0
  748. package/dist/schema/validation/with-validation.d.ts +5 -0
  749. package/dist/schema/validation/with-validation.js +16 -0
  750. package/dist/schema/validation/with-validation.js.map +1 -0
  751. package/dist/schema/validation/with-validation.test.d.ts +1 -0
  752. package/dist/schema/validation/with-validation.test.js +96 -0
  753. package/dist/schema/validation/with-validation.test.js.map +1 -0
  754. package/dist/schema.test.d.ts +1 -0
  755. package/dist/schema.test.js +16 -0
  756. package/dist/schema.test.js.map +1 -0
  757. package/dist/schemas/index.d.ts +1 -0
  758. package/dist/schemas/index.js +23 -0
  759. package/dist/schemas/index.js.map +1 -0
  760. package/dist/schemas/schemas.d.ts +45 -0
  761. package/dist/schemas/schemas.js +39 -0
  762. package/dist/schemas/schemas.js.map +1 -0
  763. package/dist/service/add-observable-actions.d.ts +29 -0
  764. package/dist/service/add-observable-actions.js +108 -0
  765. package/dist/service/add-observable-actions.js.map +1 -0
  766. package/dist/service/index.d.ts +4 -0
  767. package/dist/service/index.js +25 -0
  768. package/dist/service/index.js.map +1 -0
  769. package/dist/service/is-service.d.ts +2 -0
  770. package/dist/service/is-service.js +5 -0
  771. package/dist/service/is-service.js.map +1 -0
  772. package/dist/service/progressive-result.d.ts +96 -0
  773. package/dist/service/progressive-result.js +99 -0
  774. package/dist/service/progressive-result.js.map +1 -0
  775. package/dist/service/sequential-action.d.ts +18 -0
  776. package/dist/service/sequential-action.js +45 -0
  777. package/dist/service/sequential-action.js.map +1 -0
  778. package/dist/service/service.d.ts +4 -0
  779. package/dist/service/service.js +23 -0
  780. package/dist/service/service.js.map +1 -0
  781. package/dist/table/add-row.d.ts +8 -0
  782. package/dist/table/add-row.js +40 -0
  783. package/dist/table/add-row.js.map +1 -0
  784. package/dist/table/create-table.d.ts +3 -0
  785. package/dist/table/create-table.js +33 -0
  786. package/dist/table/create-table.js.map +1 -0
  787. package/dist/table/delete-row.d.ts +9 -0
  788. package/dist/table/delete-row.js +18 -0
  789. package/dist/table/delete-row.js.map +1 -0
  790. package/dist/table/ensure-capacity.d.ts +2 -0
  791. package/dist/table/ensure-capacity.js +15 -0
  792. package/dist/table/ensure-capacity.js.map +1 -0
  793. package/dist/table/get-row-data.d.ts +3 -0
  794. package/dist/table/get-row-data.js +8 -0
  795. package/dist/table/get-row-data.js.map +1 -0
  796. package/dist/table/index.d.ts +8 -0
  797. package/dist/table/index.js +30 -0
  798. package/dist/table/index.js.map +1 -0
  799. package/dist/table/row-index.d.ts +8 -0
  800. package/dist/table/row-index.js +3 -0
  801. package/dist/table/row-index.js.map +1 -0
  802. package/dist/table/table.d.ts +13 -0
  803. package/dist/table/table.js +2 -0
  804. package/dist/table/table.js.map +1 -0
  805. package/dist/table/update-row.d.ts +8 -0
  806. package/dist/table/update-row.js +12 -0
  807. package/dist/table/update-row.js.map +1 -0
  808. package/dist/tsconfig.tsbuildinfo +1 -0
  809. package/dist/typed-buffer/copy-to-gpu-buffer.d.ts +2 -0
  810. package/dist/typed-buffer/copy-to-gpu-buffer.js +16 -0
  811. package/dist/typed-buffer/copy-to-gpu-buffer.js.map +1 -0
  812. package/dist/typed-buffer/create-array-buffer.d.ts +4 -0
  813. package/dist/typed-buffer/create-array-buffer.js +29 -0
  814. package/dist/typed-buffer/create-array-buffer.js.map +1 -0
  815. package/dist/typed-buffer/create-number-buffer.d.ts +8 -0
  816. package/dist/typed-buffer/create-number-buffer.js +75 -0
  817. package/dist/typed-buffer/create-number-buffer.js.map +1 -0
  818. package/dist/typed-buffer/create-struct-buffer.d.ts +10 -0
  819. package/dist/typed-buffer/create-struct-buffer.js +78 -0
  820. package/dist/typed-buffer/create-struct-buffer.js.map +1 -0
  821. package/dist/typed-buffer/create-typed-buffer.d.ts +7 -0
  822. package/dist/typed-buffer/create-typed-buffer.js +17 -0
  823. package/dist/typed-buffer/create-typed-buffer.js.map +1 -0
  824. package/dist/typed-buffer/index.d.ts +5 -0
  825. package/dist/typed-buffer/index.js +27 -0
  826. package/dist/typed-buffer/index.js.map +1 -0
  827. package/dist/typed-buffer/structs/assert-struct.d.ts +8 -0
  828. package/dist/typed-buffer/structs/assert-struct.js +15 -0
  829. package/dist/typed-buffer/structs/assert-struct.js.map +1 -0
  830. package/dist/typed-buffer/structs/create-read-struct.d.ts +3 -0
  831. package/dist/typed-buffer/structs/create-read-struct.js +62 -0
  832. package/dist/typed-buffer/structs/create-read-struct.js.map +1 -0
  833. package/dist/typed-buffer/structs/create-read-struct.test.d.ts +1 -0
  834. package/dist/typed-buffer/structs/create-read-struct.test.js +189 -0
  835. package/dist/typed-buffer/structs/create-read-struct.test.js.map +1 -0
  836. package/dist/typed-buffer/structs/create-write-struct.d.ts +3 -0
  837. package/dist/typed-buffer/structs/create-write-struct.js +58 -0
  838. package/dist/typed-buffer/structs/create-write-struct.js.map +1 -0
  839. package/dist/typed-buffer/structs/get-field-offset.d.ts +2 -0
  840. package/dist/typed-buffer/structs/get-field-offset.js +14 -0
  841. package/dist/typed-buffer/structs/get-field-offset.js.map +1 -0
  842. package/dist/typed-buffer/structs/get-struct-layout.d.ts +5 -0
  843. package/dist/typed-buffer/structs/get-struct-layout.js +198 -0
  844. package/dist/typed-buffer/structs/get-struct-layout.js.map +1 -0
  845. package/dist/typed-buffer/structs/get-struct-layout.test.d.ts +1 -0
  846. package/dist/typed-buffer/structs/get-struct-layout.test.js +133 -0
  847. package/dist/typed-buffer/structs/get-struct-layout.test.js.map +1 -0
  848. package/dist/typed-buffer/structs/index.d.ts +1 -0
  849. package/dist/typed-buffer/structs/index.js +23 -0
  850. package/dist/typed-buffer/structs/index.js.map +1 -0
  851. package/dist/typed-buffer/structs/read-struct.d.ts +2 -0
  852. package/dist/typed-buffer/structs/read-struct.js +2 -0
  853. package/dist/typed-buffer/structs/read-struct.js.map +1 -0
  854. package/dist/typed-buffer/structs/struct-layout.d.ts +21 -0
  855. package/dist/typed-buffer/structs/struct-layout.js +23 -0
  856. package/dist/typed-buffer/structs/struct-layout.js.map +1 -0
  857. package/dist/typed-buffer/structs/write-struct.d.ts +2 -0
  858. package/dist/typed-buffer/structs/write-struct.js +2 -0
  859. package/dist/typed-buffer/structs/write-struct.js.map +1 -0
  860. package/dist/typed-buffer/structs/write-struct.test.d.ts +1 -0
  861. package/dist/typed-buffer/structs/write-struct.test.js +181 -0
  862. package/dist/typed-buffer/structs/write-struct.test.js.map +1 -0
  863. package/dist/typed-buffer/typed-buffer.d.ts +16 -0
  864. package/dist/typed-buffer/typed-buffer.js +2 -0
  865. package/dist/typed-buffer/typed-buffer.js.map +1 -0
  866. package/dist/typed-buffer/typed-buffer.test.d.ts +1 -0
  867. package/dist/typed-buffer/typed-buffer.test.js +223 -0
  868. package/dist/typed-buffer/typed-buffer.test.js.map +1 -0
  869. package/dist/types/assert.d.ts +1 -0
  870. package/dist/types/assert.js +2 -0
  871. package/dist/types/assert.js.map +1 -0
  872. package/dist/types/equal.d.ts +1 -0
  873. package/dist/types/equal.js +2 -0
  874. package/dist/types/equal.js.map +1 -0
  875. package/dist/types/index.d.ts +3 -0
  876. package/dist/types/index.js +25 -0
  877. package/dist/types/index.js.map +1 -0
  878. package/dist/types/types.d.ts +51 -0
  879. package/dist/types/types.js +27 -0
  880. package/dist/types/types.js.map +1 -0
  881. package/package.json +7 -2
  882. package/.cursorrules +0 -28
  883. package/.eslintrc.cjs +0 -48
  884. package/.github/CONTRIBUTING.md +0 -47
  885. package/CODE_OF_CONDUCT.md +0 -79
  886. package/asconfig.json +0 -22
  887. package/assembly/index.ts +0 -85
  888. package/assembly/tsconfig.json +0 -17
  889. package/c/build_run.sh +0 -2
  890. package/c/vector_addition +0 -0
  891. package/c/vector_addition.c +0 -125
  892. package/config/license.js +0 -21
  893. package/docs/perftest.html +0 -28
  894. package/index.html +0 -10
  895. package/scripts/deploy-docs.sh +0 -41
  896. package/src/assembly-test/assembly.test.ts +0 -29
  897. package/src/cache/async-cache.ts +0 -38
  898. package/src/cache/blob-store.test.ts +0 -176
  899. package/src/cache/blob-store.ts +0 -278
  900. package/src/cache/data-cache.test.ts +0 -61
  901. package/src/cache/data-cache.ts +0 -183
  902. package/src/cache/expiring-data-cache.test.ts +0 -81
  903. package/src/cache/expiring-data-cache.ts +0 -61
  904. package/src/cache/fallback-async-cache.ts +0 -49
  905. package/src/cache/functions/async-data-function.ts +0 -25
  906. package/src/cache/functions/functions.test.ts +0 -84
  907. package/src/cache/functions/get-cached.test.ts +0 -113
  908. package/src/cache/functions/get-cached.ts +0 -55
  909. package/src/cache/functions/hashing/blob-to-hash.ts +0 -46
  910. package/src/cache/functions/hashing/buffer-to-hash.ts +0 -33
  911. package/src/cache/functions/hashing/hashing.test.ts +0 -95
  912. package/src/cache/functions/hashing/index.ts +0 -26
  913. package/src/cache/functions/hashing/json-to-hash.ts +0 -29
  914. package/src/cache/functions/hashing/string-to-hash.ts +0 -38
  915. package/src/cache/functions/index.ts +0 -27
  916. package/src/cache/functions/memoize.ts +0 -55
  917. package/src/cache/functions/prevent-parallel-execution.ts +0 -50
  918. package/src/cache/get-persistent-cache.ts +0 -62
  919. package/src/cache/index.ts +0 -31
  920. package/src/cache/managed-array.ts +0 -243
  921. package/src/cache/managed-async-cache.browser.test.ts +0 -53
  922. package/src/cache/managed-async-cache.ts +0 -78
  923. package/src/cache/memory-allocator.ts +0 -176
  924. package/src/cache/memory-async-cache.ts +0 -51
  925. package/src/data.ts +0 -38
  926. package/src/ecs/README.md +0 -21
  927. package/src/ecs/archetype/archetype.ts +0 -39
  928. package/src/ecs/archetype/create-archetype.test.ts +0 -115
  929. package/src/ecs/archetype/create-archetype.ts +0 -52
  930. package/src/ecs/archetype/delete-row.test.ts +0 -110
  931. package/src/ecs/archetype/delete-row.ts +0 -37
  932. package/src/ecs/archetype/index.ts +0 -24
  933. package/src/ecs/component-schemas.ts +0 -24
  934. package/src/ecs/core-components.ts +0 -443
  935. package/src/ecs/database/create-database.test.ts +0 -745
  936. package/src/ecs/database/create-database.ts +0 -205
  937. package/src/ecs/database/database.ts +0 -81
  938. package/src/ecs/database/index.ts +0 -24
  939. package/src/ecs/database/observe-dependent-value.test.ts +0 -198
  940. package/src/ecs/database/observe-dependent-value.ts +0 -78
  941. package/src/ecs/database/transactional-store/create-transactional-store.test.ts +0 -250
  942. package/src/ecs/database/transactional-store/create-transactional-store.ts +0 -281
  943. package/src/ecs/database/transactional-store/index.ts +0 -22
  944. package/src/ecs/database/transactional-store/transactional-store.ts +0 -80
  945. package/src/ecs/entity-location-table/create-entity-location-table.test.ts +0 -170
  946. package/src/ecs/entity-location-table/create-entity-location-table.ts +0 -96
  947. package/src/ecs/entity-location-table/entity-location-table.ts +0 -30
  948. package/src/ecs/entity-location-table/entity-location.ts +0 -34
  949. package/src/ecs/entity-location-table/index.ts +0 -23
  950. package/src/ecs/entity.ts +0 -26
  951. package/src/ecs/index.ts +0 -26
  952. package/src/ecs/store/core/core.ts +0 -71
  953. package/src/ecs/store/core/create-core.test.ts +0 -440
  954. package/src/ecs/store/core/create-core.ts +0 -168
  955. package/src/ecs/store/core/index.ts +0 -22
  956. package/src/ecs/store/create-store.test.ts +0 -562
  957. package/src/ecs/store/create-store.ts +0 -97
  958. package/src/ecs/store/index.ts +0 -23
  959. package/src/ecs/store/resource-components.ts +0 -23
  960. package/src/ecs/store/store.ts +0 -55
  961. package/src/equals-shallow.test.ts +0 -133
  962. package/src/equals-shallow.ts +0 -37
  963. package/src/equals.test.ts +0 -175
  964. package/src/equals.ts +0 -70
  965. package/src/index.ts +0 -27
  966. package/src/internal/array-buffer-like/copy.ts +0 -469
  967. package/src/internal/array-buffer-like/grow.ts +0 -53
  968. package/src/internal/array-buffer-like/index.ts +0 -25
  969. package/src/internal/array-buffer-like/is-array-buffer.ts +0 -445
  970. package/src/internal/array-buffer-like/is-shared-array-buffer.ts +0 -445
  971. package/src/internal/async-generator/is-async-generator.ts +0 -25
  972. package/src/internal/data-view-32/create-data-view-32.ts +0 -30
  973. package/src/internal/data-view-32/data-view-32.ts +0 -447
  974. package/src/internal/data-view-32/index.ts +0 -23
  975. package/src/internal/function/memoize-factory.ts +0 -12
  976. package/src/internal/object/index.ts +0 -23
  977. package/src/internal/object/map-entries.ts +0 -28
  978. package/src/internal/promise/is-promise.ts +0 -28
  979. package/src/internal/typed-array/get-byte-size.ts +0 -50
  980. package/src/internal/typed-array/index.ts +0 -24
  981. package/src/internal/typed-array/typed-array-constructer.ts +0 -32
  982. package/src/internal/typed-array/typed-array.ts +0 -25
  983. package/src/is-data.ts +0 -47
  984. package/src/lit/decorators/apply-decorator.ts +0 -24
  985. package/src/lit/decorators/apply-service-decorators.ts +0 -13
  986. package/src/lit/decorators/index.ts +0 -24
  987. package/src/lit/decorators/require-service.ts +0 -19
  988. package/src/lit/elements/service-application.ts +0 -26
  989. package/src/lit/elements/service-context.ts +0 -3
  990. package/src/lit/elements/service-element.ts +0 -18
  991. package/src/lit/hooks/component/component.ts +0 -10
  992. package/src/lit/hooks/component/stack.ts +0 -17
  993. package/src/lit/hooks/use-connected.ts +0 -39
  994. package/src/lit/hooks/use-effect.ts +0 -17
  995. package/src/lit/hooks/use-element.ts +0 -8
  996. package/src/lit/hooks/use-memo.ts +0 -14
  997. package/src/lit/hooks/use-observable-values.ts +0 -9
  998. package/src/lit/hooks/use-observable.ts +0 -13
  999. package/src/lit/hooks/use-ref.ts +0 -6
  1000. package/src/lit/hooks/use-resize-observer.ts +0 -27
  1001. package/src/lit/hooks/use-state.ts +0 -17
  1002. package/src/lit/hooks/use-window-event.ts +0 -14
  1003. package/src/lit/hooks/with-hooks.ts +0 -20
  1004. package/src/mutable-clone.ts +0 -29
  1005. package/src/normalize.test.ts +0 -48
  1006. package/src/normalize.ts +0 -37
  1007. package/src/observe/create-observable-event.ts +0 -47
  1008. package/src/observe/create-observable-state.ts +0 -51
  1009. package/src/observe/create-persisted-state.test.ts +0 -143
  1010. package/src/observe/create-persisted-state.ts +0 -60
  1011. package/src/observe/create-query-state.ts +0 -70
  1012. package/src/observe/from-array.ts +0 -41
  1013. package/src/observe/from-constant.ts +0 -35
  1014. package/src/observe/from-element-id.ts +0 -75
  1015. package/src/observe/from-element-properties-and-events.ts +0 -47
  1016. package/src/observe/from-element-property.ts +0 -68
  1017. package/src/observe/from-promise-with-error.ts +0 -51
  1018. package/src/observe/from-promise.ts +0 -49
  1019. package/src/observe/from-properties.ts +0 -67
  1020. package/src/observe/index.ts +0 -52
  1021. package/src/observe/observe.test.ts +0 -467
  1022. package/src/observe/to-promise.ts +0 -40
  1023. package/src/observe/to-properties.ts +0 -41
  1024. package/src/observe/types.ts +0 -40
  1025. package/src/observe/with-async-map.ts +0 -37
  1026. package/src/observe/with-batch.test.ts +0 -141
  1027. package/src/observe/with-batch.ts +0 -67
  1028. package/src/observe/with-cache.ts +0 -58
  1029. package/src/observe/with-copy.ts +0 -32
  1030. package/src/observe/with-deduplicate-data.ts +0 -43
  1031. package/src/observe/with-deduplicate.ts +0 -41
  1032. package/src/observe/with-default.ts +0 -48
  1033. package/src/observe/with-lazy.test.ts +0 -68
  1034. package/src/observe/with-lazy.ts +0 -38
  1035. package/src/observe/with-map-data.ts +0 -38
  1036. package/src/observe/with-map.ts +0 -36
  1037. package/src/observe/with-optional.ts +0 -47
  1038. package/src/observe/with-unwrap.ts +0 -54
  1039. package/src/old-ecs/action-ecs/action-ecs.test.ts +0 -420
  1040. package/src/old-ecs/action-ecs/action-ecs.ts +0 -274
  1041. package/src/old-ecs/action-ecs/action-types.ts +0 -178
  1042. package/src/old-ecs/action-ecs/index.ts +0 -29
  1043. package/src/old-ecs/action-ecs/sequential-action.ts +0 -60
  1044. package/src/old-ecs/core-ecs/core-ecs-serialization.test.ts +0 -244
  1045. package/src/old-ecs/core-ecs/core-ecs-types.ts +0 -183
  1046. package/src/old-ecs/core-ecs/core-ecs.test.ts +0 -474
  1047. package/src/old-ecs/core-ecs/core-ecs.ts +0 -640
  1048. package/src/old-ecs/core-ecs/index.ts +0 -30
  1049. package/src/old-ecs/ecs/ecs-types.ts +0 -189
  1050. package/src/old-ecs/ecs/ecs-where-functions.ts +0 -95
  1051. package/src/old-ecs/ecs/ecs.test.ts +0 -461
  1052. package/src/old-ecs/ecs/ecs.ts +0 -279
  1053. package/src/old-ecs/ecs/index.ts +0 -23
  1054. package/src/old-ecs/entity.ts +0 -26
  1055. package/src/old-ecs/index.ts +0 -26
  1056. package/src/old-ecs/transaction-ecs/index.ts +0 -23
  1057. package/src/old-ecs/transaction-ecs/transaction-ecs.test.ts +0 -725
  1058. package/src/old-ecs/transaction-ecs/transaction-ecs.ts +0 -283
  1059. package/src/old-ecs/transaction-ecs/transaction-types.ts +0 -248
  1060. package/src/old-ecs/transaction-ecs/transactions.ts +0 -243
  1061. package/src/perftest/ecs-perf.ts +0 -255
  1062. package/src/perftest/helper-functions.ts +0 -31
  1063. package/src/perftest/horizon-perf.ts +0 -132
  1064. package/src/perftest/index.ts +0 -37
  1065. package/src/perftest/perf-test.ts +0 -193
  1066. package/src/perftest/perf.md +0 -90
  1067. package/src/perftest/vanilla-perf.ts +0 -136
  1068. package/src/schema/boolean.ts +0 -5
  1069. package/src/schema/dynamic/deep-merge.test.ts +0 -100
  1070. package/src/schema/dynamic/deep-merge.ts +0 -67
  1071. package/src/schema/dynamic/enumerate-patches.test.ts +0 -235
  1072. package/src/schema/dynamic/enumerate-patches.ts +0 -90
  1073. package/src/schema/dynamic/get-dynamic-schema.test.ts +0 -129
  1074. package/src/schema/dynamic/get-dynamic-schema.ts +0 -48
  1075. package/src/schema/dynamic/index.ts +0 -22
  1076. package/src/schema/f32.ts +0 -30
  1077. package/src/schema/i32.ts +0 -31
  1078. package/src/schema/index.ts +0 -32
  1079. package/src/schema/nullable.ts +0 -32
  1080. package/src/schema/schema.ts +0 -229
  1081. package/src/schema/time.ts +0 -5
  1082. package/src/schema/true.ts +0 -26
  1083. package/src/schema/tuple.ts +0 -5
  1084. package/src/schema/u32.ts +0 -31
  1085. package/src/schema/validation/is-valid.test.ts +0 -43
  1086. package/src/schema/validation/is-valid.ts +0 -32
  1087. package/src/schema/validation/validate.test.ts +0 -120
  1088. package/src/schema/validation/validate.ts +0 -41
  1089. package/src/schema/validation/with-validation.test.ts +0 -112
  1090. package/src/schema/validation/with-validation.ts +0 -42
  1091. package/src/schema.test.ts +0 -55
  1092. package/src/service/add-observable-actions.ts +0 -207
  1093. package/src/service/index.ts +0 -26
  1094. package/src/service/is-service.ts +0 -7
  1095. package/src/service/progressive-result.ts +0 -141
  1096. package/src/service/service.ts +0 -27
  1097. package/src/table/add-row.ts +0 -42
  1098. package/src/table/create-table.ts +0 -36
  1099. package/src/table/delete-row.ts +0 -42
  1100. package/src/table/ensure-capacity.ts +0 -37
  1101. package/src/table/get-row-data.ts +0 -31
  1102. package/src/table/index.ts +0 -29
  1103. package/src/table/row-index.ts +0 -26
  1104. package/src/table/table.ts +0 -32
  1105. package/src/table/update-row.ts +0 -35
  1106. package/src/tsconfig.json +0 -6
  1107. package/src/typed-buffer/copy-to-gpu-buffer.ts +0 -23
  1108. package/src/typed-buffer/create-array-buffer.ts +0 -55
  1109. package/src/typed-buffer/create-number-buffer.ts +0 -90
  1110. package/src/typed-buffer/create-struct-buffer.ts +0 -93
  1111. package/src/typed-buffer/create-typed-buffer.ts +0 -49
  1112. package/src/typed-buffer/index.ts +0 -26
  1113. package/src/typed-buffer/structs/assert-struct.ts +0 -37
  1114. package/src/typed-buffer/structs/create-read-struct.test.ts +0 -202
  1115. package/src/typed-buffer/structs/create-read-struct.ts +0 -77
  1116. package/src/typed-buffer/structs/create-write-struct.ts +0 -73
  1117. package/src/typed-buffer/structs/get-field-offset.ts +0 -36
  1118. package/src/typed-buffer/structs/get-struct-layout.test.ts +0 -146
  1119. package/src/typed-buffer/structs/get-struct-layout.ts +0 -222
  1120. package/src/typed-buffer/structs/index.ts +0 -22
  1121. package/src/typed-buffer/structs/read-struct.ts +0 -25
  1122. package/src/typed-buffer/structs/struct-layout.ts +0 -465
  1123. package/src/typed-buffer/structs/write-struct.test.ts +0 -195
  1124. package/src/typed-buffer/structs/write-struct.ts +0 -25
  1125. package/src/typed-buffer/typed-buffer.test.ts +0 -253
  1126. package/src/typed-buffer/typed-buffer.ts +0 -41
  1127. package/src/types/assert.ts +0 -22
  1128. package/src/types/equal.ts +0 -24
  1129. package/src/types/index.ts +0 -25
  1130. package/src/types/types.ts +0 -166
  1131. package/tsconfig-base.json +0 -25
  1132. package/tsconfig.json +0 -8
  1133. package/typedoc.json +0 -22
  1134. package/vite.config.js +0 -16
  1135. /package/{src/lit/elements/index.ts → dist/lit/elements/index.d.ts} +0 -0
  1136. /package/{src/lit/hooks/index.ts → dist/lit/hooks/index.d.ts} +0 -0
  1137. /package/{src/lit/index.ts → dist/lit/index.d.ts} +0 -0
@@ -1,176 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- import { TypedArray, TypedArrayConstructor } from "../internal/typed-array/index.js";
23
- import { createObservableEvent } from "../observe/create-observable-event.js";
24
- import { Observe } from "../observe/types.js";
25
-
26
- export interface MemoryAllocator {
27
- /**
28
- * An observable event source that notifies when the memory needs to be refreshed.
29
- */
30
- needsRefresh: Observe<void>;
31
- /**
32
- * Allocate a new typed array of the specified size.
33
- */
34
- allocate<T extends TypedArrayConstructor>(
35
- typedArray: T,
36
- sizeInElements: number
37
- ): InstanceType<T>;
38
- /**
39
- * Refresh the given typed array to ensure that it is not detached.
40
- * If it is detached a new typed array is created and returned.
41
- */
42
- refresh<T extends TypedArrayConstructor>(
43
- typedArray: InstanceType<T>
44
- ): InstanceType<T>;
45
- /**
46
- * Release the memory associated with the given buffer.
47
- */
48
- release(buffer: TypedArray): void;
49
- }
50
-
51
- export function createSimpleMemoryAllocator(): MemoryAllocator {
52
- return {
53
- needsRefresh: () => () => { },
54
- allocate<T extends TypedArrayConstructor>(
55
- typedArray: T,
56
- sizeInElements: number
57
- ): InstanceType<T> {
58
- const sizeInBytes = sizeInElements * typedArray.BYTES_PER_ELEMENT;
59
- return new typedArray(
60
- new ArrayBuffer(sizeInBytes),
61
- 0,
62
- sizeInElements
63
- ) as InstanceType<T>;
64
- },
65
- refresh<T extends TypedArrayConstructor>(typedArray: InstanceType<T>) {
66
- return typedArray;
67
- },
68
- release(_buffer: TypedArray): void {
69
- return;
70
- },
71
- };
72
- }
73
-
74
- const PAGE_SIZE = 64 * 1024; // 64 KB
75
-
76
- export function createWasmMemoryAllocator(
77
- memory: WebAssembly.Memory
78
- ): MemoryAllocator {
79
- const freeList = [{ offset: 0, size: memory.buffer.byteLength }];
80
-
81
- const [needsRefresh, notifyNeedsRefresh] = createObservableEvent<void>();
82
-
83
- const mergeFreeBlocks = (): void => {
84
- // Sort the free list by offset
85
- freeList.sort((a, b) => a.offset - b.offset);
86
-
87
- let i = 0;
88
- while (i < freeList.length - 1) {
89
- const current = freeList[i];
90
- const next = freeList[i + 1];
91
- // Check if current block is adjacent to the next
92
- if (current.offset + current.size === next.offset) {
93
- // Merge the blocks
94
- current.size += next.size;
95
- // Remove the next block
96
- freeList.splice(i + 1, 1);
97
- } else {
98
- i++;
99
- }
100
- }
101
- };
102
-
103
- const growMemory = (sizeInBytes: number): number => {
104
- const currentSize = memory.buffer.byteLength;
105
- const neededPages = Math.ceil(sizeInBytes / PAGE_SIZE); // Each WebAssembly page is 65536 bytes
106
- memory.grow(neededPages);
107
- freeList.push({
108
- offset: currentSize,
109
- size: memory.buffer.byteLength - currentSize,
110
- });
111
- mergeFreeBlocks();
112
- notifyNeedsRefresh();
113
- return freeList.length - 1;
114
- };
115
-
116
- const allocate = <T extends TypedArrayConstructor>(
117
- typedArray: TypedArrayConstructor,
118
- sizeInElements: number
119
- ): InstanceType<T> => {
120
- const ALIGNMENT = 16;
121
- const sizeInBytes =
122
- Math.ceil((sizeInElements * typedArray.BYTES_PER_ELEMENT) / ALIGNMENT) *
123
- ALIGNMENT;
124
- let index = freeList.findIndex((block) => block.size >= sizeInBytes);
125
- if (index === -1) {
126
- index = growMemory(sizeInBytes);
127
- }
128
-
129
- const block = freeList[index];
130
- freeList.splice(index, 1); // Remove the block from the free list
131
- const remainingSize = block.size - sizeInBytes;
132
- if (remainingSize > 0) {
133
- freeList.push({
134
- offset: block.offset + sizeInBytes,
135
- size: remainingSize,
136
- });
137
- }
138
-
139
- return new typedArray(
140
- memory.buffer,
141
- block.offset,
142
- sizeInElements
143
- ) as InstanceType<T>;
144
- };
145
-
146
- const refresh = <T extends TypedArrayConstructor>(
147
- array: InstanceType<T>
148
- ): InstanceType<T> => {
149
- if (memory.buffer.byteLength !== array.byteLength) {
150
- return new (array.constructor as any)(
151
- memory.buffer,
152
- array.byteOffset,
153
- array.length
154
- );
155
- }
156
- return array;
157
- };
158
-
159
- const release = (memory: TypedArray): void => {
160
- if (memory.byteOffset !== undefined) {
161
- const newFreeBlock = {
162
- offset: memory.byteOffset,
163
- size: memory.byteLength,
164
- };
165
- freeList.push(newFreeBlock);
166
- mergeFreeBlocks();
167
- }
168
- };
169
-
170
- return {
171
- needsRefresh,
172
- allocate,
173
- refresh,
174
- release,
175
- };
176
- }
@@ -1,51 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- import type { AsyncCacheWithKeys } from "./async-cache.js";
23
-
24
- /**
25
- * This should never be used directly as it will never free cache entries making it leak memory.
26
- * It should only ever be used as a base cache inside of a ManagedAsyncCache.
27
- */
28
- export function createMemoryAsyncCache(): AsyncCacheWithKeys<
29
- Request,
30
- Response
31
- > {
32
- const cache = new Map<string, [Request, Response]>();
33
- return {
34
- put(key: Request, value: Response): Promise<void> {
35
- cache.set(key.url, [key, value.clone()]);
36
- return Promise.resolve();
37
- },
38
-
39
- match(key: Request): Promise<Response | undefined> {
40
- return Promise.resolve(cache.get(key.url)?.[1]?.clone());
41
- },
42
-
43
- async delete(key: Request): Promise<void> {
44
- await Promise.resolve(cache.delete(key.url));
45
- },
46
-
47
- keys(): Promise<ReadonlyArray<Request>> {
48
- return Promise.resolve([...cache.values()].map((value) => value[0]));
49
- },
50
- };
51
- }
package/src/data.ts DELETED
@@ -1,38 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
-
23
- /**
24
- * Data is readonly JSON.
25
- * This type forms the foundation for all of our internal state models and interfaces to external APIs.
26
- * It is easy to serialize/deserialize/compare/hash/cache and validate (with JSON-Schema).
27
- * These traits make it an ideal foundation for building a robust state engine which cannot enter into invalid states.
28
- * It also allows us to strongly define contracts between our application and external services.
29
- * Validation of input arguments and output results allows strict enforcement of agreed upon contracts.
30
- */
31
- export type Data =
32
- | string
33
- | number
34
- | boolean
35
- | null
36
- | undefined
37
- | ReadonlyArray<Data>
38
- | { readonly [K in string]?: Data };
package/src/ecs/README.md DELETED
@@ -1,21 +0,0 @@
1
- ## New ECS Folder
2
-
3
- ### New Features Needed
4
-
5
- ECS Core Database
6
- - [x] components can have null value, deleting components is distinct from setting to null.
7
- - [x] simplify and improve type definitions.
8
- - [x] allow to define new components with separate schema and type declarations.
9
- - [x] fix deserialization with constant columns.
10
-
11
- ECS Transactional Database
12
- - [x] .components
13
- - [x] .resources
14
- - [x] .archetypes
15
- - [ ] selectEntityValues with optional filter
16
- - [x] observations and transactions on updates
17
-
18
- ECS Action Database
19
- - [-] applied actions are stored directly within the database.
20
- - [x] logic to prune old applied actions after a certain point.
21
- - [x] action sequences
@@ -1,39 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- import { CoreComponents } from "../core-components.js";
23
- import { Entity } from "../entity.js";
24
- import { Table, ReadonlyTable } from "../../table/index.js";
25
-
26
- export type EntityInsertValues<C> = Omit<C, "id">;
27
- export type ArchetypeId = number;
28
-
29
- interface BaseArchetype<C> {
30
- readonly id: ArchetypeId;
31
- readonly components: ReadonlySet<string>;
32
- }
33
-
34
- export interface ReadonlyArchetype<C extends CoreComponents> extends BaseArchetype<C>, ReadonlyTable<C> {
35
- }
36
-
37
- export interface Archetype<C extends CoreComponents = CoreComponents> extends BaseArchetype<C>, Table<C> {
38
- insert: (rowData: EntityInsertValues<C>) => Entity;
39
- }
@@ -1,115 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- import { describe, it, expect } from 'vitest';
23
- import { createArchetype } from '../archetype/index.js';
24
- import { createEntityLocationTable } from '../entity-location-table/index.js';
25
- import { EntitySchema } from '../entity.js';
26
- import { U32Schema } from '../../schema/u32.js';
27
-
28
- describe('createArchetype', () => {
29
- it('should create an archetype with basic components', () => {
30
- const entityLocationTable = createEntityLocationTable();
31
- const components = {
32
- id: EntitySchema,
33
- value: U32Schema,
34
- };
35
- const id = 1;
36
-
37
- const archetype = createArchetype(components, id, entityLocationTable);
38
-
39
- // Verify basic properties
40
- expect(archetype.id).toBe(id);
41
- expect(archetype.rows).toBe(0);
42
- expect(archetype.components).toEqual(new Set(['id', 'value']));
43
- expect(archetype.columns).toHaveProperty('id');
44
- expect(archetype.columns).toHaveProperty('value');
45
- });
46
-
47
- it('should create entities with correct ids and data', () => {
48
- const entityLocationTable = createEntityLocationTable();
49
- const components = {
50
- id: EntitySchema,
51
- value: U32Schema,
52
- };
53
- const id = 1;
54
-
55
- const archetype = createArchetype(components, id, entityLocationTable);
56
-
57
- // Create first entity
58
- const entity1 = archetype.insert({ value: 42 });
59
- expect(entity1).toBe(0); // First entity should have id 0
60
- expect(archetype.rows).toBe(1);
61
- expect(archetype.columns.id.get(0)).toBe(0);
62
- expect(archetype.columns.value.get(0)).toBe(42);
63
-
64
- // Create second entity
65
- const entity2 = archetype.insert({ value: 100 });
66
- expect(entity2).toBe(1); // Second entity should have id 1
67
- expect(archetype.rows).toBe(2);
68
- expect(archetype.columns.id.get(1)).toBe(1);
69
- expect(archetype.columns.value.get(1)).toBe(100);
70
-
71
- // Verify entity locations in EntityLocationTable
72
- const location1 = entityLocationTable.locate(entity1);
73
- expect(location1).toEqual({ archetype: id, row: 0 });
74
-
75
- const location2 = entityLocationTable.locate(entity2);
76
- expect(location2).toEqual({ archetype: id, row: 1 });
77
- });
78
-
79
- it('should handle multiple component types', () => {
80
- const entityLocationTable = createEntityLocationTable();
81
- const components = {
82
- id: EntitySchema,
83
- health: U32Schema,
84
- mana: U32Schema,
85
- level: U32Schema,
86
- };
87
- const id = 2;
88
-
89
- const archetype = createArchetype(components, id, entityLocationTable);
90
-
91
- // Verify components are set up correctly
92
- expect(archetype.components).toEqual(new Set(['id', 'health', 'mana', 'level']));
93
- expect(archetype.columns).toHaveProperty('health');
94
- expect(archetype.columns).toHaveProperty('mana');
95
- expect(archetype.columns).toHaveProperty('level');
96
-
97
- // Create an entity with all components
98
- const entity = archetype.insert({
99
- health: 100,
100
- mana: 50,
101
- level: 5,
102
- });
103
-
104
- expect(entity).toBe(0);
105
- expect(archetype.rows).toBe(1);
106
- expect(archetype.columns.health.get(0)).toBe(100);
107
- expect(archetype.columns.mana.get(0)).toBe(50);
108
- expect(archetype.columns.level.get(0)).toBe(5);
109
- expect(archetype.columns.id.get(0)).toBe(0);
110
-
111
- // Verify entity location
112
- const location = entityLocationTable.locate(entity);
113
- expect(location).toEqual({ archetype: id, row: 0 });
114
- });
115
- });
@@ -1,52 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- import { FromSchema } from "../../schema/schema.js";
23
- import * as TABLE from "../../table/index.js";
24
- import { Archetype } from "./archetype.js";
25
- import { CoreComponents } from "../core-components.js";
26
- import { EntityLocationTable } from "../entity-location-table/entity-location-table.js";
27
- import { Entity, EntitySchema } from "../entity.js";
28
-
29
- export const createArchetype = <C extends { id: typeof EntitySchema }>(
30
- components: C,
31
- id: number,
32
- entityLocationTable: EntityLocationTable,
33
- ): Archetype<CoreComponents & { [K in keyof C]: FromSchema<C[K]> }> => {
34
- const table = TABLE.createTable(components);
35
- const createEntity = (rowData: Omit<{ [K in keyof C]: FromSchema<C[K]> }, "id">): Entity => {
36
- // add the row (excluding entity id)
37
- const row = TABLE.addRow(archetype as any, rowData);
38
- // create the entity lookup record
39
- const entity = entityLocationTable.create({ archetype: archetype.id, row });
40
- // set the entity id for the row (since it wasn't present in the row data)
41
- archetype.columns.id.set(row, entity as any);
42
- return entity;
43
- }
44
-
45
- const archetype = {
46
- id,
47
- ...table,
48
- components: new Set(Object.keys(components) as (keyof C & string)[]),
49
- insert: createEntity,
50
- } as const satisfies Archetype<{ [K in keyof C]: FromSchema<C[K]> }> as Archetype<CoreComponents & { [K in keyof C]: FromSchema<C[K]> }>;
51
- return archetype;
52
- }
@@ -1,110 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- import { describe, it, expect } from 'vitest';
23
- import { createEntityLocationTable } from '../entity-location-table/index.js';
24
- import { createArchetype, deleteRow } from './index.js';
25
- import { EntitySchema } from '../entity.js';
26
- import { U32Schema } from '../../schema/u32.js';
27
-
28
- describe('Archetype_deleteRow', () => {
29
- it('should delete a row from the middle and update moved entity location', () => {
30
- const entityLocationTable = createEntityLocationTable();
31
- const archetype = createArchetype(
32
- {
33
- id: EntitySchema,
34
- value: U32Schema
35
- },
36
- 1,
37
- entityLocationTable
38
- );
39
-
40
- // Create three entities
41
- const entity1 = archetype.insert({ value: 100 });
42
- const entity2 = archetype.insert({ value: 200 });
43
- const entity3 = archetype.insert({ value: 300 });
44
-
45
- // Delete the middle entity (entity2)
46
- deleteRow(archetype, entity2, entityLocationTable);
47
-
48
- // Verify entity3 was moved to position 1
49
- expect(archetype.columns.id.get(1)).toBe(entity3);
50
- expect(archetype.columns.value.get(1)).toBe(300);
51
-
52
- // Verify entity location table was updated for the moved entity
53
- const movedEntityLocation = entityLocationTable.locate(entity3);
54
- expect(movedEntityLocation).toEqual({ archetype: 1, row: 1 });
55
-
56
- // Verify total rows decreased
57
- expect(archetype.rows).toBe(2);
58
-
59
- // Verify entity1 is unchanged
60
- expect(archetype.columns.id.get(0)).toBe(entity1);
61
- expect(archetype.columns.value.get(0)).toBe(100);
62
- });
63
-
64
- it('should handle deleting the last row without moving entities', () => {
65
- const entityLocationTable = createEntityLocationTable();
66
- const archetype = createArchetype(
67
- {
68
- id: EntitySchema,
69
- value: U32Schema
70
- },
71
- 1,
72
- entityLocationTable
73
- );
74
-
75
- // Create two entities
76
- const entity1 = archetype.insert({ value: 100 });
77
- const entity2 = archetype.insert({ value: 200 });
78
-
79
- // Delete the last entity (entity2)
80
- deleteRow(archetype, entity2, entityLocationTable);
81
-
82
- // Verify total rows decreased
83
- expect(archetype.rows).toBe(1);
84
-
85
- // Verify entity1 is unchanged
86
- expect(archetype.columns.id.get(0)).toBe(entity1);
87
- expect(archetype.columns.value.get(0)).toBe(100);
88
- });
89
-
90
- it('should handle deleting the only row', () => {
91
- const entityLocationTable = createEntityLocationTable();
92
- const archetype = createArchetype(
93
- {
94
- id: EntitySchema,
95
- value: U32Schema
96
- },
97
- 1,
98
- entityLocationTable
99
- );
100
-
101
- // Create one entity
102
- const entity1 = archetype.insert({ value: 100 });
103
-
104
- // Delete the only entity
105
- deleteRow(archetype, 0, entityLocationTable);
106
-
107
- // Verify total rows is zero
108
- expect(archetype.rows).toBe(0);
109
- });
110
- });
@@ -1,37 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- import * as TABLE from "../../table/index.js";
23
- import { Archetype } from "./archetype.js";
24
- import { CoreComponents } from "../core-components.js";
25
- import { EntityLocationTable } from "../entity-location-table/entity-location-table.js";
26
-
27
- /**
28
- * Deletes a row from the archetype and updates the entity location table for any row which may have been moved into it's position.
29
- * Does NOT modify the deleted row's entity location.
30
- */
31
- export const deleteRow = <C extends CoreComponents>(archetype: Archetype<C>, row: number, entityLocationTable: EntityLocationTable): void => {
32
- const movedARowToFillHole = TABLE.deleteRow(archetype, row);
33
- if (movedARowToFillHole) {
34
- const movedId = archetype.columns.id.get(row);
35
- entityLocationTable.update(movedId, { archetype: archetype.id, row });
36
- }
37
- }
@@ -1,24 +0,0 @@
1
- /*MIT License
2
-
3
- © Copyright 2025 Adobe. All rights reserved.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.*/
22
- export * from "./archetype.js";
23
- export * from "./create-archetype.js";
24
- export * from "./delete-row.js";