@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
@@ -0,0 +1,49 @@
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
+ * Creates a new expiring data cache with the specified underlying cache.
24
+ */
25
+ export function createExpiringDataCache(baseCache, getTime = () => Date.now()) {
26
+ const cache = baseCache;
27
+ return {
28
+ async match(key) {
29
+ const entry = await cache.match(key);
30
+ if (!entry) {
31
+ return undefined;
32
+ }
33
+ if (entry.expiration != null && entry.expiration <= getTime()) {
34
+ await cache.delete(key);
35
+ return undefined;
36
+ }
37
+ return entry.value;
38
+ },
39
+ async put(key, value, options) {
40
+ const { maximumDuration: maxDuration } = options || {};
41
+ const expiration = (maxDuration !== undefined) && maxDuration >= 0 ? getTime() + maxDuration : null;
42
+ await cache.put(key, { value, expiration });
43
+ },
44
+ async delete(key) {
45
+ await cache.delete(key);
46
+ },
47
+ };
48
+ }
49
+ //# sourceMappingURL=expiring-data-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expiring-data-cache.js","sourceRoot":"","sources":["../../src/cache/expiring-data-cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAUX;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,SAAkC,EAClC,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;IAE1B,MAAM,KAAK,GAAG,SAA6D,CAAC;IAC5E,OAAO;QACL,KAAK,CAAC,KAAK,CAAC,GAAM;YAChB,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACrC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,IAAI,KAAK,CAAC,UAAU,IAAI,IAAI,IAAI,KAAK,CAAC,UAAU,IAAI,OAAO,EAAE,EAAE,CAAC;gBAC9D,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACxB,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,KAAK,CAAC,KAAK,CAAC;QACrB,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAM,EAAE,KAAQ,EAAE,OAAO;YACjC,MAAM,EAAE,eAAe,EAAE,WAAW,EAAE,GAAG,OAAO,IAAI,EAAE,CAAC;YACvD,MAAM,UAAU,GACd,CAAC,WAAW,KAAK,SAAS,CAAC,IAAI,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;YACnF,MAAM,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,GAAM;YACjB,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,62 @@
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 { createExpiringDataCache } from "./expiring-data-cache.js"; // Adjust the import path as necessary
23
+ import { describe, expect, it } from "vitest";
24
+ import { createDataCache } from "./data-cache.js";
25
+ import { getManagedPersistentCache } from "./get-persistent-cache.js";
26
+ describe("ExpiringDataCache", () => {
27
+ it("should store and retrieve an item before it expires", async () => {
28
+ const time = Date.now();
29
+ let timePassed = 0;
30
+ const getTime = () => time + timePassed;
31
+ const cache = createExpiringDataCache(createDataCache(await getManagedPersistentCache("expiring-data-cache-test", {
32
+ maximumMemoryEntries: 10,
33
+ maximumStorageEntries: 100,
34
+ })), getTime);
35
+ cache.put("key1", "value1", { maximumDuration: 1000 }); // Expires in 1000ms
36
+ expect(await cache.match("key1")).toBe("value1");
37
+ timePassed = 500;
38
+ expect(await cache.match("key1")).toBe("value1");
39
+ timePassed = 999;
40
+ expect(await cache.match("key1")).toBe("value1");
41
+ timePassed = 1000;
42
+ expect(await cache.match("key1")).toBeUndefined();
43
+ timePassed = 1001;
44
+ expect(await cache.match("key1")).toBeUndefined();
45
+ timePassed = 2000;
46
+ expect(await cache.match("key1")).toBeUndefined();
47
+ });
48
+ it("should immediately expire items when maximumDuration is 0", async () => {
49
+ const time = Date.now();
50
+ let timePassed = 0;
51
+ const getTime = () => time + timePassed;
52
+ const cache = createExpiringDataCache(createDataCache(await getManagedPersistentCache("expiring-data-cache-test", {
53
+ maximumMemoryEntries: 10,
54
+ maximumStorageEntries: 100,
55
+ })), getTime);
56
+ cache.put("key1", "value1", { maximumDuration: 0 }); // Expires immediately
57
+ expect(await cache.match("key1")).toBeUndefined();
58
+ timePassed = 1000;
59
+ expect(await cache.match("key1")).toBeUndefined();
60
+ });
61
+ });
62
+ //# sourceMappingURL=expiring-data-cache.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expiring-data-cache.test.js","sourceRoot":"","sources":["../../src/cache/expiring-data-cache.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AACX,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC,CAAC,sCAAsC;AAC1G,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAEtE,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACjC,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACxB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,UAAU,CAAC;QACxC,MAAM,KAAK,GAAG,uBAAuB,CACnC,eAAe,CACb,MAAM,yBAAyB,CAAC,0BAA0B,EAAE;YAC1D,oBAAoB,EAAE,EAAE;YACxB,qBAAqB,EAAE,GAAG;SAC3B,CAAC,CACH,EACD,OAAO,CACR,CAAC;QAEF,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,oBAAoB;QAC5E,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEjD,UAAU,GAAG,GAAG,CAAC;QACjB,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEjD,UAAU,GAAG,GAAG,CAAC;QACjB,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEjD,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAElD,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAElD,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACxB,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,UAAU,CAAC;QACxC,MAAM,KAAK,GAAG,uBAAuB,CACnC,eAAe,CACb,MAAM,yBAAyB,CAAC,0BAA0B,EAAE;YAC1D,oBAAoB,EAAE,EAAE;YACxB,qBAAqB,EAAE,GAAG;SAC3B,CAAC,CACH,EACD,OAAO,CACR,CAAC;QAEF,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,eAAe,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,sBAAsB;QAC3E,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAElD,UAAU,GAAG,IAAI,CAAC;QAClB,MAAM,CAAC,MAAM,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { type AsyncCache } from "./async-cache.js";
2
+ /**
3
+ * Provides a combined cache interface.
4
+ * Writes to both caches.
5
+ * Prefers to read from the faster cache first before falling back to slower.
6
+ */
7
+ export declare function createFallbackAsyncCache(fasterSmaller: AsyncCache<Request, Response>, slowerLarger: AsyncCache<Request, Response>): AsyncCache<Request, Response>;
@@ -0,0 +1,22 @@
1
+ /**
2
+ * Provides a combined cache interface.
3
+ * Writes to both caches.
4
+ * Prefers to read from the faster cache first before falling back to slower.
5
+ */
6
+ export function createFallbackAsyncCache(fasterSmaller, slowerLarger) {
7
+ return {
8
+ async put(key, value) {
9
+ await Promise.all([
10
+ fasterSmaller.put(key, value),
11
+ slowerLarger.put(key, value),
12
+ ]);
13
+ },
14
+ async match(key) {
15
+ return ((await fasterSmaller.match(key)) ?? (await slowerLarger.match(key)));
16
+ },
17
+ async delete(key) {
18
+ await Promise.all([fasterSmaller.delete(key), slowerLarger.delete(key)]);
19
+ },
20
+ };
21
+ }
22
+ //# sourceMappingURL=fallback-async-cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback-async-cache.js","sourceRoot":"","sources":["../../src/cache/fallback-async-cache.ts"],"names":[],"mappings":"AAuBA;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,aAA4C,EAC5C,YAA2C;IAE3C,OAAO;QACL,KAAK,CAAC,GAAG,CAAC,GAAY,EAAE,KAAe;YACrC,MAAM,OAAO,CAAC,GAAG,CAAC;gBAChB,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;gBAC7B,YAAY,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC;aAC7B,CAAC,CAAC;QACL,CAAC;QACD,KAAK,CAAC,KAAK,CAAC,GAAY;YACtB,OAAO,CACL,CAAC,MAAM,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CACpE,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,GAAY;YACvB,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3E,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -0,0 +1 @@
1
+ export type AsyncDataFunction<InputArgs extends Array<unknown>, Output> = (...args: InputArgs) => Promise<Output>;
@@ -0,0 +1,23 @@
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 {};
23
+ //# sourceMappingURL=async-data-function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-data-function.js","sourceRoot":"","sources":["../../../src/cache/functions/async-data-function.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Binds all functions to the object containing them.
3
+ * @param obj
4
+ * @returns
5
+ */
6
+ export declare function bindFunctions<T extends object>(obj: T): void;
@@ -0,0 +1,33 @@
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
+ * Binds all functions to the object containing them.
24
+ * @param obj
25
+ * @returns
26
+ */
27
+ export function bindFunctions(obj) {
28
+ for (const key in obj) {
29
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any -- need to bind functions
30
+ obj[key] = obj[key].bind(obj);
31
+ }
32
+ }
33
+ //# sourceMappingURL=bind-functions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bind-functions.js","sourceRoot":"","sources":["../../../src/cache/functions/bind-functions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AACX;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAmB,GAAM;IAEpD,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;QACtB,wFAAwF;QACxF,GAAG,CAAC,GAAG,CAAC,GAAI,GAAG,CAAC,GAAG,CAAiB,CAAC,IAAI,CAAC,GAAG,CAAQ,CAAC;IACxD,CAAC;AACH,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,79 @@
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 { memoize } from "./memoize.js";
23
+ import { preventParallelExecution } from "./prevent-parallel-execution.js";
24
+ import { describe, expect, it } from "vitest";
25
+ describe("Function", () => {
26
+ describe("prevent parallel execution", () => {
27
+ it("should block parallel execution and return same promise", async () => {
28
+ let addCallCount = 0;
29
+ async function add(a, b) {
30
+ addCallCount++;
31
+ return new Promise((resolve) => {
32
+ setTimeout(() => {
33
+ resolve(a + b);
34
+ }, 100);
35
+ });
36
+ }
37
+ async function testAddBlocksParallelExecution(addFn) {
38
+ addCallCount = 0;
39
+ const promises = [addFn(1, 2), addFn(1, 2), addFn(1, 2)];
40
+ const results = await Promise.all(promises);
41
+ expect(results).toEqual([3, 3, 3]);
42
+ }
43
+ const addFn = preventParallelExecution(add);
44
+ await testAddBlocksParallelExecution(addFn);
45
+ // after all have completed... then another can execute
46
+ addCallCount = 0;
47
+ expect(await addFn(1, 2)).toEqual(3);
48
+ expect(addCallCount).toEqual(1);
49
+ });
50
+ });
51
+ describe("memoize", () => {
52
+ it("should block parallel execution and return same promise", async () => {
53
+ let addCallCount = 0;
54
+ async function add(a, b) {
55
+ addCallCount++;
56
+ return new Promise((resolve) => {
57
+ setTimeout(() => {
58
+ resolve(a + b);
59
+ }, 100);
60
+ });
61
+ }
62
+ async function testAddBlocksParallelExecution(addFn) {
63
+ addCallCount = 0;
64
+ const promises = [addFn(1, 2), addFn(1, 2), addFn(1, 2)];
65
+ const results = await Promise.all(promises);
66
+ expect(results).toEqual([3, 3, 3]);
67
+ }
68
+ // now memoize the addFn and verify that it is cached.
69
+ const addFn = memoize("addFn-v1", add);
70
+ await testAddBlocksParallelExecution(addFn);
71
+ // after all have completed... then another can execute
72
+ addCallCount = 0;
73
+ expect(await addFn(1, 2)).toEqual(3);
74
+ // with memoize, the count should be 0 because we get a cached result.
75
+ expect(addCallCount).toEqual(0);
76
+ });
77
+ });
78
+ });
79
+ //# sourceMappingURL=functions.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"functions.test.js","sourceRoot":"","sources":["../../../src/cache/functions/functions.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Gets a cached value for an object using a factory function.
3
+ * If the value hasn't been cached yet, the factory function will be called to create it.
4
+ * The cache is stored on the object itself using a WeakMap, allowing for garbage collection
5
+ * when the object is no longer referenced.
6
+ *
7
+ * @param context The object to cache the value on
8
+ * @param factory A function that creates the value to be cached
9
+ * @returns The cached value or a newly created value from the factory
10
+ */
11
+ export declare function getCached<A extends object, B>(context: A, factory: (obj: A) => B): B;
@@ -0,0 +1,49 @@
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
+ // Create a WeakMap to store cached values for each object
23
+ const cache = new WeakMap();
24
+ /**
25
+ * Gets a cached value for an object using a factory function.
26
+ * If the value hasn't been cached yet, the factory function will be called to create it.
27
+ * The cache is stored on the object itself using a WeakMap, allowing for garbage collection
28
+ * when the object is no longer referenced.
29
+ *
30
+ * @param context The object to cache the value on
31
+ * @param factory A function that creates the value to be cached
32
+ * @returns The cached value or a newly created value from the factory
33
+ */
34
+ export function getCached(context, factory) {
35
+ // Get or create the factory map for this object
36
+ let factoryMap = cache.get(context);
37
+ if (!factoryMap) {
38
+ factoryMap = new Map();
39
+ cache.set(context, factoryMap);
40
+ }
41
+ // Get or create the cached value for this factory
42
+ let value = factoryMap.get(factory);
43
+ if (value === undefined) {
44
+ value = factory(context);
45
+ factoryMap.set(factory, value);
46
+ }
47
+ return value;
48
+ }
49
+ //# sourceMappingURL=get-cached.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-cached.js","sourceRoot":"","sources":["../../../src/cache/functions/get-cached.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,0DAA0D;AAC1D,MAAM,KAAK,GAAG,IAAI,OAAO,EAAkC,CAAC;AAE5D;;;;;;;;;GASG;AACH,MAAM,UAAU,SAAS,CACrB,OAAU,EACV,OAAsB;IAEtB,gDAAgD;IAChD,IAAI,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CAAiC,CAAC;IACpE,IAAI,CAAC,UAAU,EAAE,CAAC;QACd,UAAU,GAAG,IAAI,GAAG,EAAE,CAAC;QACvB,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACnC,CAAC;IAED,kDAAkD;IAClD,IAAI,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACtB,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;QACzB,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,KAAK,CAAC;AACjB,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,96 @@
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 { getCached } from "./get-cached.js";
23
+ import { describe, expect, it } from "vitest";
24
+ describe("getCached", () => {
25
+ it("should cache values on objects", () => {
26
+ const obj = { id: 1 };
27
+ let factoryCallCount = 0;
28
+ const factory = (o) => {
29
+ factoryCallCount++;
30
+ return { computed: o.id * 2 };
31
+ };
32
+ // First call should invoke factory
33
+ const result1 = getCached(obj, factory);
34
+ expect(result1).toEqual({ computed: 2 });
35
+ expect(factoryCallCount).toBe(1);
36
+ // Second call should use cached value
37
+ const result2 = getCached(obj, factory);
38
+ expect(result2).toEqual({ computed: 2 });
39
+ expect(factoryCallCount).toBe(1);
40
+ });
41
+ it("should cache different values for different objects", () => {
42
+ const obj1 = { id: 1 };
43
+ const obj2 = { id: 2 };
44
+ let factoryCallCount = 0;
45
+ const factory = (o) => {
46
+ factoryCallCount++;
47
+ return { computed: o.id * 2 };
48
+ };
49
+ // Call for first object
50
+ const result1 = getCached(obj1, factory);
51
+ expect(result1).toEqual({ computed: 2 });
52
+ expect(factoryCallCount).toBe(1);
53
+ // Call for second object should invoke factory again
54
+ const result2 = getCached(obj2, factory);
55
+ expect(result2).toEqual({ computed: 4 });
56
+ expect(factoryCallCount).toBe(2);
57
+ });
58
+ it("should cache different values for different factories on same object", () => {
59
+ const obj = { id: 1 };
60
+ let factory1CallCount = 0;
61
+ let factory2CallCount = 0;
62
+ const factory1 = (o) => {
63
+ factory1CallCount++;
64
+ return { computed: o.id * 2 };
65
+ };
66
+ const factory2 = (o) => {
67
+ factory2CallCount++;
68
+ return { computed: o.id * 3 };
69
+ };
70
+ // Call first factory
71
+ const result1 = getCached(obj, factory1);
72
+ expect(result1).toEqual({ computed: 2 });
73
+ expect(factory1CallCount).toBe(1);
74
+ expect(factory2CallCount).toBe(0);
75
+ // Call second factory
76
+ const result2 = getCached(obj, factory2);
77
+ expect(result2).toEqual({ computed: 3 });
78
+ expect(factory1CallCount).toBe(1);
79
+ expect(factory2CallCount).toBe(1);
80
+ });
81
+ it("should handle primitive values", () => {
82
+ const obj = { id: 1 };
83
+ let factoryCallCount = 0;
84
+ const factory = (o) => {
85
+ factoryCallCount++;
86
+ return o.id * 2;
87
+ };
88
+ const result1 = getCached(obj, factory);
89
+ expect(result1).toBe(2);
90
+ expect(factoryCallCount).toBe(1);
91
+ const result2 = getCached(obj, factory);
92
+ expect(result2).toBe(2);
93
+ expect(factoryCallCount).toBe(1);
94
+ });
95
+ });
96
+ //# sourceMappingURL=get-cached.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-cached.test.js","sourceRoot":"","sources":["../../../src/cache/functions/get-cached.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Converts a Blob to a hash using the blob content and type using SHA-256.
3
+ */
4
+ export declare function blobToHash(blob: Blob): Promise<string>;
@@ -0,0 +1,44 @@
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 { bufferToHash } from "./buffer-to-hash.js";
23
+ /**
24
+ * Converts a Blob to a hash using the blob content and type using SHA-256.
25
+ */
26
+ export async function blobToHash(blob) {
27
+ const { type } = blob;
28
+ // create a single buffer to hold both the type and the blob
29
+ const typeByteLength = type.length * 2;
30
+ const buffer = new ArrayBuffer(typeByteLength + blob.size);
31
+ // write the type into the first part of the buffer
32
+ const charView = new Uint16Array(buffer, 0, type.length);
33
+ for (let i = 0, strLen = type.length; i < strLen; i++) {
34
+ charView[i] = type.charCodeAt(i);
35
+ }
36
+ // write the blob into the second part of the buffer
37
+ const byteView = new Uint8Array(buffer);
38
+ const blobArrayBuffer = await blob.arrayBuffer();
39
+ byteView.set(new Uint8Array(blobArrayBuffer), typeByteLength);
40
+ // finally create the hash off the combined buffer
41
+ const hash = await bufferToHash(buffer);
42
+ return hash;
43
+ }
44
+ //# sourceMappingURL=blob-to-hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blob-to-hash.js","sourceRoot":"","sources":["../../../../src/cache/functions/hashing/blob-to-hash.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AACX,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,IAAU;IACzC,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACtB,6DAA6D;IAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;IAE3D,oDAAoD;IACpD,MAAM,QAAQ,GAAG,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtD,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,qDAAqD;IACrD,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IACjD,QAAQ,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,cAAc,CAAC,CAAC;IAE9D,mDAAmD;IACnD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,CAAC;IACxC,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Converts an ArrayBuffer to a hash using SHA-256.
3
+ */
4
+ export declare function bufferToHash(buffer: ArrayBuffer): Promise<string>;
@@ -0,0 +1,33 @@
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
+ function arrayBufferToHex(buffer) {
23
+ return [...new Uint8Array(buffer)]
24
+ .map((x) => x.toString(16).padStart(2, "0"))
25
+ .join("");
26
+ }
27
+ /**
28
+ * Converts an ArrayBuffer to a hash using SHA-256.
29
+ */
30
+ export async function bufferToHash(buffer) {
31
+ return arrayBufferToHex(await crypto.subtle.digest("SHA-256", buffer));
32
+ }
33
+ //# sourceMappingURL=buffer-to-hash.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buffer-to-hash.js","sourceRoot":"","sources":["../../../../src/cache/functions/hashing/buffer-to-hash.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AACX,SAAS,gBAAgB,CAAC,MAAmB;IAC3C,OAAO,CAAC,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;SAC/B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC3C,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAmB;IACpD,OAAO,gBAAgB,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CAAC;AACzE,CAAC"}
@@ -0,0 +1 @@
1
+ export {};