@adobe/data 0.2.3 → 0.2.5

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 (527) hide show
  1. package/dist/_/data.d.ts +11 -0
  2. package/dist/{schemas/index.js → _/data.js} +2 -2
  3. package/dist/_/data.js.map +1 -0
  4. package/dist/_/equals.d.ts +11 -0
  5. package/dist/_/equals.js +73 -0
  6. package/dist/_/equals.js.map +1 -0
  7. package/dist/_/equals.test.js +150 -0
  8. package/dist/_/equals.test.js.map +1 -0
  9. package/dist/_/index.d.ts +4 -0
  10. package/dist/{core/schema → _}/index.js +2 -4
  11. package/dist/_/index.js.map +1 -0
  12. package/dist/_/is-data.d.ts +11 -0
  13. package/dist/_/is-data.js +2 -0
  14. package/dist/_/is-data.js.map +1 -0
  15. package/dist/_/normalize.d.ts +1 -0
  16. package/dist/_/normalize.js +34 -0
  17. package/dist/_/normalize.js.map +1 -0
  18. package/dist/_/normalize.test.js +48 -0
  19. package/dist/_/normalize.test.js.map +1 -0
  20. package/dist/_/schema.test.js +16 -0
  21. package/dist/_/schema.test.js.map +1 -0
  22. package/dist/blob-store/blob-store.d.ts +94 -0
  23. package/dist/blob-store/blob-store.js +194 -0
  24. package/dist/blob-store/blob-store.js.map +1 -0
  25. package/dist/blob-store/blob-store.test.js +142 -0
  26. package/dist/blob-store/blob-store.test.js.map +1 -0
  27. package/dist/core/IsData.d.ts +6 -0
  28. package/dist/core/IsData.js +2 -0
  29. package/dist/core/IsData.js.map +1 -0
  30. package/dist/core/data.d.ts +1 -12
  31. package/dist/core/data.js +1 -30
  32. package/dist/core/data.js.map +1 -1
  33. package/dist/core/data.test.js +1 -1
  34. package/dist/core/data.test.js.map +1 -1
  35. package/dist/core/equals.d.ts +11 -0
  36. package/dist/core/equals.js +73 -0
  37. package/dist/core/equals.js.map +1 -0
  38. package/dist/core/equals.test.js +150 -0
  39. package/dist/core/equals.test.js.map +1 -0
  40. package/dist/core/functions/array-equals-shallow.d.ts +1 -0
  41. package/dist/core/functions/{array-equals.js → array-equals-shallow.js} +2 -2
  42. package/dist/core/functions/array-equals-shallow.js.map +1 -0
  43. package/dist/core/functions/deep-assign.d.ts +11 -0
  44. package/dist/core/functions/deep-assign.js +61 -0
  45. package/dist/core/functions/deep-assign.js.map +1 -0
  46. package/dist/core/functions/deep-assign.test.d.ts +1 -0
  47. package/dist/core/functions/deep-assign.test.js +180 -0
  48. package/dist/core/functions/deep-assign.test.js.map +1 -0
  49. package/dist/core/functions/index.d.ts +1 -3
  50. package/dist/core/functions/index.js +1 -3
  51. package/dist/core/functions/index.js.map +1 -1
  52. package/dist/core/functions/memoize-factory.d.ts +1 -0
  53. package/dist/core/functions/memoize-factory.js +12 -0
  54. package/dist/core/functions/memoize-factory.js.map +1 -0
  55. package/dist/core/index.d.ts +4 -3
  56. package/dist/core/index.js +2 -3
  57. package/dist/core/index.js.map +1 -1
  58. package/dist/core/is-data.d.ts +11 -0
  59. package/dist/core/is-data.js +2 -0
  60. package/dist/core/is-data.js.map +1 -0
  61. package/dist/core/normalize.d.ts +1 -0
  62. package/dist/core/normalize.js +34 -0
  63. package/dist/core/normalize.js.map +1 -0
  64. package/dist/core/normalize.test.d.ts +1 -0
  65. package/dist/core/normalize.test.js +48 -0
  66. package/dist/core/normalize.test.js.map +1 -0
  67. package/dist/ecs/action-ecs/action-ecs.js +1 -1
  68. package/dist/ecs/action-ecs/action-ecs.js.map +1 -1
  69. package/dist/ecs/action-ecs/action-ecs.test.js +4 -3
  70. package/dist/ecs/action-ecs/action-ecs.test.js.map +1 -1
  71. package/dist/ecs/action-ecs/action-types.d.ts +3 -3
  72. package/dist/ecs/action-ecs/index.d.ts +1 -0
  73. package/dist/ecs/action-ecs/index.js +1 -0
  74. package/dist/ecs/action-ecs/index.js.map +1 -1
  75. package/dist/ecs/action-ecs/sequential-action.d.ts +18 -0
  76. package/dist/{core/schema/validation/validate.js → ecs/action-ecs/sequential-action.js} +21 -14
  77. package/dist/ecs/action-ecs/sequential-action.js.map +1 -0
  78. package/dist/ecs/core-components.js +0 -21
  79. package/dist/ecs/core-components.js.map +1 -1
  80. package/dist/ecs/core-ecs/core-ecs-serialization.test.js +3 -2
  81. package/dist/ecs/core-ecs/core-ecs-serialization.test.js.map +1 -1
  82. package/dist/ecs/core-ecs/core-ecs-types.d.ts +2 -1
  83. package/dist/ecs/core-ecs/core-ecs.js +2 -2
  84. package/dist/ecs/core-ecs/core-ecs.js.map +1 -1
  85. package/dist/ecs/core-ecs/core-ecs.test.js +3 -2
  86. package/dist/ecs/core-ecs/core-ecs.test.js.map +1 -1
  87. package/dist/ecs/database/create-database.d.ts +3 -3
  88. package/dist/ecs/database/create-database.js +12 -11
  89. package/dist/ecs/database/create-database.js.map +1 -1
  90. package/dist/ecs/database/create-database.test.js +17 -13
  91. package/dist/ecs/database/create-database.test.js.map +1 -1
  92. package/dist/ecs/database/database-schema/create-database-from-schemas.d.ts +15 -0
  93. package/dist/ecs/database/database-schema/create-database-from-schemas.js +33 -0
  94. package/dist/ecs/database/database-schema/create-database-from-schemas.js.map +1 -0
  95. package/dist/ecs/database/database-schema/create-database-schema.d.ts +7 -0
  96. package/dist/ecs/database/database-schema/create-database-schema.js +5 -0
  97. package/dist/ecs/database/database-schema/create-database-schema.js.map +1 -0
  98. package/dist/ecs/database/database-schema/database-schema.d.ts +12 -0
  99. package/dist/ecs/database/database-schema/database-schema.js +2 -0
  100. package/dist/ecs/database/database-schema/database-schema.js.map +1 -0
  101. package/dist/ecs/database/database-schema/index.d.ts +3 -0
  102. package/dist/ecs/database/database-schema/index.js +3 -0
  103. package/dist/ecs/database/database-schema/index.js.map +1 -0
  104. package/dist/ecs/database/database.d.ts +7 -9
  105. package/dist/ecs/database/index.d.ts +1 -0
  106. package/dist/ecs/database/index.js +1 -0
  107. package/dist/ecs/database/index.js.map +1 -1
  108. package/dist/ecs/database/observe-dependent-value.js.map +1 -1
  109. package/dist/ecs/database/observe-dependent-value.test.js +21 -21
  110. package/dist/ecs/database/observe-dependent-value.test.js.map +1 -1
  111. package/dist/ecs/database/transactional-store/create-transactional-store.d.ts +2 -2
  112. package/dist/ecs/database/transactional-store/create-transactional-store.js +1 -0
  113. package/dist/ecs/database/transactional-store/create-transactional-store.js.map +1 -1
  114. package/dist/ecs/database/transactional-store/create-transactional-store.test.js +11 -9
  115. package/dist/ecs/database/transactional-store/create-transactional-store.test.js.map +1 -1
  116. package/dist/ecs/database/transactional-store/transactional-store.d.ts +3 -2
  117. package/dist/ecs/ecs/ecs-types.d.ts +14 -13
  118. package/dist/ecs/ecs/ecs.js.map +1 -1
  119. package/dist/ecs/ecs/ecs.test.js +1 -1
  120. package/dist/ecs/ecs/ecs.test.js.map +1 -1
  121. package/dist/ecs/ecs/index.d.ts +0 -1
  122. package/dist/ecs/ecs/index.js +21 -0
  123. package/dist/ecs/ecs/index.js.map +1 -1
  124. package/dist/ecs/index.d.ts +4 -0
  125. package/dist/ecs/index.js +4 -0
  126. package/dist/ecs/index.js.map +1 -1
  127. package/dist/ecs/resource-schemas.d.ts +6 -0
  128. package/dist/ecs/resource-schemas.js +2 -0
  129. package/dist/ecs/resource-schemas.js.map +1 -0
  130. package/dist/ecs/store/components.d.ts +1 -0
  131. package/dist/{core/schema.js → ecs/store/components.js} +1 -11
  132. package/dist/ecs/store/components.js.map +1 -0
  133. package/dist/ecs/store/core/core.d.ts +10 -9
  134. package/dist/ecs/store/core/core.js +21 -0
  135. package/dist/ecs/store/core/core.js.map +1 -1
  136. package/dist/ecs/store/core/create-core.d.ts +1 -2
  137. package/dist/ecs/store/create-store.d.ts +5 -6
  138. package/dist/ecs/store/create-store.js +5 -6
  139. package/dist/ecs/store/create-store.js.map +1 -1
  140. package/dist/ecs/store/create-store.test.js +21 -21
  141. package/dist/ecs/store/create-store.test.js.map +1 -1
  142. package/dist/ecs/store/resource-components copy.d.ts +1 -0
  143. package/dist/{core/schema/schema.js → ecs/store/resource-components copy.js } +1 -12
  144. package/dist/ecs/store/resource-components copy.js.map +1 -0
  145. package/dist/ecs/store/store.d.ts +5 -4
  146. package/dist/ecs/systems/index.d.ts +2 -0
  147. package/dist/ecs/systems/index.js +2 -0
  148. package/dist/ecs/systems/index.js.map +1 -0
  149. package/dist/ecs/systems/system-phase.d.ts +5 -0
  150. package/dist/ecs/systems/system-phase.js +16 -0
  151. package/dist/ecs/systems/system-phase.js.map +1 -0
  152. package/dist/ecs/systems/system.d.ts +7 -0
  153. package/dist/ecs/systems/system.js +2 -0
  154. package/dist/ecs/systems/system.js.map +1 -0
  155. package/dist/ecs/transaction-ecs/transaction-ecs.js +2 -2
  156. package/dist/ecs/transaction-ecs/transaction-ecs.js.map +1 -1
  157. package/dist/ecs/transaction-ecs/transaction-types.d.ts +7 -6
  158. package/dist/ecs/transaction-ecs/transactions.js.map +1 -1
  159. package/dist/equalsShallow.d.ts +1 -0
  160. package/dist/equalsShallow.js +37 -0
  161. package/dist/equalsShallow.js.map +1 -0
  162. package/dist/equalsShallow.test.d.ts +1 -0
  163. package/dist/equalsShallow.test.js +113 -0
  164. package/dist/equalsShallow.test.js.map +1 -0
  165. package/dist/functions/apply-args.d.ts +7 -0
  166. package/dist/functions/apply-args.js +19 -0
  167. package/dist/functions/apply-args.js.map +1 -0
  168. package/dist/functions/index.d.ts +1 -0
  169. package/dist/functions/index.js +2 -0
  170. package/dist/functions/index.js.map +1 -0
  171. package/dist/internal/object/mutable-clone.d.ts +5 -0
  172. package/dist/internal/object/mutable-clone.js +4 -0
  173. package/dist/internal/object/mutable-clone.js.map +1 -0
  174. package/dist/internal/typed-array/get-byte-size.d.ts +1 -1
  175. package/dist/lit/decorators/apply-service-decorators.js +1 -1
  176. package/dist/lit/decorators/apply-service-decorators.js.map +1 -1
  177. package/dist/lit/elements/service-application.d.ts +3 -2
  178. package/dist/lit/elements/service-application.js +10 -6
  179. package/dist/lit/elements/service-application.js.map +1 -1
  180. package/dist/lit/elements/service-element.d.ts +1 -1
  181. package/dist/lit/elements/service-element.js +2 -2
  182. package/dist/lit/elements/service-element.js.map +1 -1
  183. package/dist/old-ecs/ecs/ecs-where-cache.test.d.ts +1 -0
  184. package/dist/old-ecs/ecs/ecs-where-cache.test.js +164 -0
  185. package/dist/old-ecs/ecs/ecs-where-cache.test.js.map +1 -0
  186. package/dist/package.json +24 -24
  187. package/dist/schema/FromSchema.d.ts +25 -0
  188. package/dist/schema/FromSchema.js +2 -0
  189. package/dist/schema/FromSchema.js.map +1 -0
  190. package/dist/schema/index.d.ts +1 -1
  191. package/dist/schema/schema.d.ts +6 -0
  192. package/dist/schema/schema.js.map +1 -1
  193. package/dist/service/isService.d.ts +2 -0
  194. package/dist/service/isService.js +5 -0
  195. package/dist/service/isService.js.map +1 -0
  196. package/dist/table/copy-column-to-gpu-buffer.d.ts +5 -0
  197. package/dist/table/copy-column-to-gpu-buffer.js +26 -0
  198. package/dist/table/copy-column-to-gpu-buffer.js.map +1 -0
  199. package/dist/table/copy-to-gpu-buffer.d.ts +2 -0
  200. package/dist/table/copy-to-gpu-buffer.js +16 -0
  201. package/dist/table/copy-to-gpu-buffer.js.map +1 -0
  202. package/dist/table/create-composite-table.d.ts +5 -0
  203. package/dist/table/create-composite-table.js +20 -0
  204. package/dist/table/create-composite-table.js.map +1 -0
  205. package/dist/table/create-table.test.d.ts +1 -0
  206. package/dist/{core/schema/validation/is-valid.test.js → table/create-table.test.js} +17 -16
  207. package/dist/table/create-table.test.js.map +1 -0
  208. package/dist/table/index.d.ts +1 -0
  209. package/dist/table/index.js +1 -0
  210. package/dist/table/index.js.map +1 -1
  211. package/dist/tsconfig.tsbuildinfo +1 -1
  212. package/dist/typed-buffer/copy-to-gpu-buffer.js +1 -1
  213. package/dist/typed-buffer/copy-to-gpu-buffer.js.map +1 -1
  214. package/dist/typed-buffer/create-array-buffer.js +7 -2
  215. package/dist/typed-buffer/create-array-buffer.js.map +1 -1
  216. package/dist/typed-buffer/create-composite-buffer.d.ts +2 -0
  217. package/dist/typed-buffer/create-composite-buffer.js +85 -0
  218. package/dist/typed-buffer/create-composite-buffer.js.map +1 -0
  219. package/dist/typed-buffer/create-composite-buffer.test.d.ts +1 -0
  220. package/dist/typed-buffer/create-composite-buffer.test.js +291 -0
  221. package/dist/typed-buffer/create-composite-buffer.test.js.map +1 -0
  222. package/dist/typed-buffer/create-const-buffer.d.ts +2 -0
  223. package/dist/typed-buffer/create-const-buffer.js +30 -0
  224. package/dist/typed-buffer/create-const-buffer.js.map +1 -0
  225. package/dist/typed-buffer/create-const-buffer.test.d.ts +1 -0
  226. package/dist/typed-buffer/create-const-buffer.test.js +128 -0
  227. package/dist/typed-buffer/create-const-buffer.test.js.map +1 -0
  228. package/dist/typed-buffer/create-mapped-buffer.d.ts +6 -0
  229. package/dist/typed-buffer/create-mapped-buffer.js +32 -0
  230. package/dist/typed-buffer/create-mapped-buffer.js.map +1 -0
  231. package/dist/typed-buffer/create-mapped-buffer.test.d.ts +1 -0
  232. package/dist/typed-buffer/create-mapped-buffer.test.js +202 -0
  233. package/dist/typed-buffer/create-mapped-buffer.test.js.map +1 -0
  234. package/dist/typed-buffer/create-number-buffer.js +4 -2
  235. package/dist/typed-buffer/create-number-buffer.js.map +1 -1
  236. package/dist/typed-buffer/create-struct-buffer.js +8 -16
  237. package/dist/typed-buffer/create-struct-buffer.js.map +1 -1
  238. package/dist/typed-buffer/create-typed-buffer.js +4 -0
  239. package/dist/typed-buffer/create-typed-buffer.js.map +1 -1
  240. package/dist/typed-buffer/index.js.map +1 -1
  241. package/dist/typed-buffer/typed-buffer.d.ts +3 -1
  242. package/dist/typed-buffer/typed-buffer.test.js +103 -0
  243. package/dist/typed-buffer/typed-buffer.test.js.map +1 -1
  244. package/dist/types/array/equalsShallow.d.ts +1 -0
  245. package/dist/types/array/equalsShallow.js +37 -0
  246. package/dist/types/array/equalsShallow.js.map +1 -0
  247. package/dist/types/array/equalsShallow.test.d.ts +1 -0
  248. package/dist/types/array/equalsShallow.test.js +113 -0
  249. package/dist/types/array/equalsShallow.test.js.map +1 -0
  250. package/dist/types/array/index.d.ts +1 -0
  251. package/dist/types/array/index.js +2 -0
  252. package/dist/types/array/index.js.map +1 -0
  253. package/dist/types/array-buffer-like/copy.d.ts +1 -0
  254. package/dist/types/array-buffer-like/copy.js +469 -0
  255. package/dist/types/array-buffer-like/copy.js.map +1 -0
  256. package/dist/types/array-buffer-like/grow.d.ts +1 -0
  257. package/dist/types/array-buffer-like/grow.js +53 -0
  258. package/dist/types/array-buffer-like/grow.js.map +1 -0
  259. package/dist/types/array-buffer-like/index.d.ts +4 -0
  260. package/dist/types/array-buffer-like/index.js +26 -0
  261. package/dist/types/array-buffer-like/index.js.map +1 -0
  262. package/dist/types/array-buffer-like/is-array-buffer.d.ts +1 -0
  263. package/dist/types/array-buffer-like/is-array-buffer.js +445 -0
  264. package/dist/types/array-buffer-like/is-array-buffer.js.map +1 -0
  265. package/dist/types/array-buffer-like/is-shared-array-buffer.d.ts +1 -0
  266. package/dist/types/array-buffer-like/is-shared-array-buffer.js +445 -0
  267. package/dist/types/array-buffer-like/is-shared-array-buffer.js.map +1 -0
  268. package/dist/types/data-view-32/create-data-view-32.d.ts +2 -0
  269. package/dist/types/data-view-32/create-data-view-32.js +8 -0
  270. package/dist/types/data-view-32/create-data-view-32.js.map +1 -0
  271. package/dist/types/data-view-32/data-view-32.d.ts +5 -0
  272. package/dist/types/data-view-32/data-view-32.js +23 -0
  273. package/dist/types/data-view-32/data-view-32.js.map +1 -0
  274. package/dist/types/data-view-32/index.d.ts +2 -0
  275. package/dist/types/data-view-32/index.js +24 -0
  276. package/dist/types/data-view-32/index.js.map +1 -0
  277. package/dist/types/object/index.d.ts +2 -0
  278. package/dist/types/object/index.js +24 -0
  279. package/dist/types/object/index.js.map +1 -0
  280. package/dist/types/object/map-entries.d.ts +5 -0
  281. package/dist/types/object/map-entries.js +29 -0
  282. package/dist/types/object/map-entries.js.map +1 -0
  283. package/dist/types/object/mutable-clone.d.ts +5 -0
  284. package/dist/types/object/mutable-clone.js +4 -0
  285. package/dist/types/object/mutable-clone.js.map +1 -0
  286. package/dist/types/remove-readonly.d.ts +3 -0
  287. package/dist/types/remove-readonly.js +2 -0
  288. package/dist/types/remove-readonly.js.map +1 -0
  289. package/dist/types/table/add-row.d.ts +8 -0
  290. package/dist/types/table/add-row.js +40 -0
  291. package/dist/types/table/add-row.js.map +1 -0
  292. package/dist/types/table/create-table.d.ts +3 -0
  293. package/dist/types/table/create-table.js +33 -0
  294. package/dist/types/table/create-table.js.map +1 -0
  295. package/dist/types/table/delete-row.d.ts +9 -0
  296. package/dist/types/table/delete-row.js +18 -0
  297. package/dist/types/table/delete-row.js.map +1 -0
  298. package/dist/types/table/ensure-capacity.d.ts +2 -0
  299. package/dist/types/table/ensure-capacity.js +15 -0
  300. package/dist/types/table/ensure-capacity.js.map +1 -0
  301. package/dist/types/table/get-row-data.d.ts +3 -0
  302. package/dist/types/table/get-row-data.js +8 -0
  303. package/dist/types/table/get-row-data.js.map +1 -0
  304. package/dist/types/table/index.d.ts +8 -0
  305. package/dist/types/table/index.js +30 -0
  306. package/dist/types/table/index.js.map +1 -0
  307. package/dist/types/table/row-index.d.ts +8 -0
  308. package/dist/types/table/row-index.js +3 -0
  309. package/dist/types/table/row-index.js.map +1 -0
  310. package/dist/types/table/table.d.ts +13 -0
  311. package/dist/types/table/table.js +2 -0
  312. package/dist/types/table/table.js.map +1 -0
  313. package/dist/types/table/update-row.d.ts +8 -0
  314. package/dist/types/table/update-row.js +12 -0
  315. package/dist/types/table/update-row.js.map +1 -0
  316. package/dist/types/typed-array/copy-to-gpu-buffer.d.ts +2 -0
  317. package/dist/types/typed-array/copy-to-gpu-buffer.js +16 -0
  318. package/dist/types/typed-array/copy-to-gpu-buffer.js.map +1 -0
  319. package/dist/types/typed-array/get-byte-size.d.ts +2 -0
  320. package/dist/types/typed-array/get-byte-size.js +28 -0
  321. package/dist/types/typed-array/get-byte-size.js.map +1 -0
  322. package/dist/types/typed-array/index.d.ts +4 -0
  323. package/dist/types/typed-array/index.js +26 -0
  324. package/dist/types/typed-array/index.js.map +1 -0
  325. package/dist/types/typed-array/typed-array-constructer.d.ts +7 -0
  326. package/dist/types/typed-array/typed-array-constructer.js +2 -0
  327. package/dist/types/typed-array/typed-array-constructer.js.map +1 -0
  328. package/dist/types/typed-array/typed-array.d.ts +1 -0
  329. package/dist/types/typed-array/typed-array.js +23 -0
  330. package/dist/types/typed-array/typed-array.js.map +1 -0
  331. package/dist/types/typed-buffer/copy-to-gpu-buffer.d.ts +2 -0
  332. package/dist/types/typed-buffer/copy-to-gpu-buffer.js +16 -0
  333. package/dist/types/typed-buffer/copy-to-gpu-buffer.js.map +1 -0
  334. package/dist/types/typed-buffer/create-array-buffer.d.ts +4 -0
  335. package/dist/types/typed-buffer/create-array-buffer.js +29 -0
  336. package/dist/types/typed-buffer/create-array-buffer.js.map +1 -0
  337. package/dist/types/typed-buffer/create-number-buffer.d.ts +8 -0
  338. package/dist/types/typed-buffer/create-number-buffer.js +75 -0
  339. package/dist/types/typed-buffer/create-number-buffer.js.map +1 -0
  340. package/dist/types/typed-buffer/create-struct-buffer.d.ts +10 -0
  341. package/dist/types/typed-buffer/create-struct-buffer.js +78 -0
  342. package/dist/types/typed-buffer/create-struct-buffer.js.map +1 -0
  343. package/dist/types/typed-buffer/create-typed-buffer.d.ts +7 -0
  344. package/dist/types/typed-buffer/create-typed-buffer.js +17 -0
  345. package/dist/types/typed-buffer/create-typed-buffer.js.map +1 -0
  346. package/dist/types/typed-buffer/index.d.ts +6 -0
  347. package/dist/types/typed-buffer/index.js +28 -0
  348. package/dist/types/typed-buffer/index.js.map +1 -0
  349. package/dist/types/typed-buffer/structs/assert-struct.d.ts +8 -0
  350. package/dist/types/typed-buffer/structs/assert-struct.js +15 -0
  351. package/dist/types/typed-buffer/structs/assert-struct.js.map +1 -0
  352. package/dist/types/typed-buffer/structs/create-read-struct.d.ts +3 -0
  353. package/dist/types/typed-buffer/structs/create-read-struct.js +62 -0
  354. package/dist/types/typed-buffer/structs/create-read-struct.js.map +1 -0
  355. package/dist/types/typed-buffer/structs/create-read-struct.test.d.ts +1 -0
  356. package/dist/types/typed-buffer/structs/create-read-struct.test.js +189 -0
  357. package/dist/types/typed-buffer/structs/create-read-struct.test.js.map +1 -0
  358. package/dist/types/typed-buffer/structs/create-write-struct.d.ts +3 -0
  359. package/dist/types/typed-buffer/structs/create-write-struct.js +58 -0
  360. package/dist/types/typed-buffer/structs/create-write-struct.js.map +1 -0
  361. package/dist/types/typed-buffer/structs/get-field-offset.d.ts +2 -0
  362. package/dist/types/typed-buffer/structs/get-field-offset.js +14 -0
  363. package/dist/types/typed-buffer/structs/get-field-offset.js.map +1 -0
  364. package/dist/types/typed-buffer/structs/get-struct-layout.d.ts +5 -0
  365. package/dist/types/typed-buffer/structs/get-struct-layout.js +198 -0
  366. package/dist/types/typed-buffer/structs/get-struct-layout.js.map +1 -0
  367. package/dist/types/typed-buffer/structs/get-struct-layout.test.d.ts +1 -0
  368. package/dist/types/typed-buffer/structs/get-struct-layout.test.js +133 -0
  369. package/dist/types/typed-buffer/structs/get-struct-layout.test.js.map +1 -0
  370. package/dist/types/typed-buffer/structs/index.d.ts +1 -0
  371. package/dist/types/typed-buffer/structs/index.js +23 -0
  372. package/dist/types/typed-buffer/structs/index.js.map +1 -0
  373. package/dist/types/typed-buffer/structs/read-struct.d.ts +2 -0
  374. package/dist/types/typed-buffer/structs/read-struct.js +2 -0
  375. package/dist/types/typed-buffer/structs/read-struct.js.map +1 -0
  376. package/dist/types/typed-buffer/structs/struct-layout.d.ts +21 -0
  377. package/dist/types/typed-buffer/structs/struct-layout.js +23 -0
  378. package/dist/types/typed-buffer/structs/struct-layout.js.map +1 -0
  379. package/dist/types/typed-buffer/structs/write-struct.d.ts +2 -0
  380. package/dist/types/typed-buffer/structs/write-struct.js +2 -0
  381. package/dist/types/typed-buffer/structs/write-struct.js.map +1 -0
  382. package/dist/types/typed-buffer/structs/write-struct.test.d.ts +1 -0
  383. package/dist/types/typed-buffer/structs/write-struct.test.js +181 -0
  384. package/dist/types/typed-buffer/structs/write-struct.test.js.map +1 -0
  385. package/dist/types/typed-buffer/typed-buffer.d.ts +16 -0
  386. package/dist/types/typed-buffer/typed-buffer.js +2 -0
  387. package/dist/types/typed-buffer/typed-buffer.js.map +1 -0
  388. package/dist/types/typed-buffer/typed-buffer.test.d.ts +1 -0
  389. package/dist/types/typed-buffer/typed-buffer.test.js +223 -0
  390. package/dist/types/typed-buffer/typed-buffer.test.js.map +1 -0
  391. package/dist/types/types.d.ts +5 -2
  392. package/dist/types/types.js.map +1 -1
  393. package/dist/ui/decorators/apply-decorator.d.ts +1 -0
  394. package/dist/ui/decorators/apply-decorator.js +18 -0
  395. package/dist/ui/decorators/apply-decorator.js.map +1 -0
  396. package/dist/ui/decorators/apply-service-decorators.d.ts +1 -0
  397. package/dist/ui/decorators/apply-service-decorators.js +12 -0
  398. package/dist/ui/decorators/apply-service-decorators.js.map +1 -0
  399. package/dist/ui/decorators/require-service.d.ts +1 -0
  400. package/dist/ui/decorators/require-service.js +13 -0
  401. package/dist/ui/decorators/require-service.js.map +1 -0
  402. package/dist/ui/elements/index.d.ts +3 -0
  403. package/dist/ui/elements/index.js +4 -0
  404. package/dist/ui/elements/index.js.map +1 -0
  405. package/dist/ui/elements/service-application.d.ts +8 -0
  406. package/dist/ui/elements/service-application.js +27 -0
  407. package/dist/ui/elements/service-application.js.map +1 -0
  408. package/dist/ui/elements/service-context.d.ts +1 -0
  409. package/dist/ui/elements/service-context.js +3 -0
  410. package/dist/ui/elements/service-context.js.map +1 -0
  411. package/dist/ui/elements/service-element.d.ts +6 -0
  412. package/dist/ui/elements/service-element.js +22 -0
  413. package/dist/ui/elements/service-element.js.map +1 -0
  414. package/dist/ui/hooks/component/component.d.ts +9 -0
  415. package/dist/ui/hooks/component/component.js +2 -0
  416. package/dist/ui/hooks/component/component.js.map +1 -0
  417. package/dist/ui/hooks/component/stack.d.ts +6 -0
  418. package/dist/ui/hooks/component/stack.js +15 -0
  419. package/dist/ui/hooks/component/stack.js.map +1 -0
  420. package/dist/ui/hooks/index.d.ts +7 -0
  421. package/dist/ui/hooks/index.js +9 -0
  422. package/dist/ui/hooks/index.js.map +1 -0
  423. package/dist/ui/hooks/use-connected.d.ts +2 -0
  424. package/dist/ui/hooks/use-connected.js +31 -0
  425. package/dist/ui/hooks/use-connected.js.map +1 -0
  426. package/dist/ui/hooks/use-effect.d.ts +3 -0
  427. package/dist/ui/hooks/use-effect.js +13 -0
  428. package/dist/ui/hooks/use-effect.js.map +1 -0
  429. package/dist/ui/hooks/use-element.d.ts +4 -0
  430. package/dist/ui/hooks/use-element.js +8 -0
  431. package/dist/ui/hooks/use-element.js.map +1 -0
  432. package/dist/ui/hooks/use-memo.d.ts +1 -0
  433. package/dist/ui/hooks/use-memo.js +12 -0
  434. package/dist/ui/hooks/use-memo.js.map +1 -0
  435. package/dist/ui/hooks/use-observable-values.d.ts +5 -0
  436. package/dist/ui/hooks/use-observable-values.js +8 -0
  437. package/dist/ui/hooks/use-observable-values.js.map +1 -0
  438. package/dist/ui/hooks/use-observable.d.ts +2 -0
  439. package/dist/ui/hooks/use-observable.js +12 -0
  440. package/dist/ui/hooks/use-observable.js.map +1 -0
  441. package/dist/ui/hooks/use-ref.d.ts +3 -0
  442. package/dist/ui/hooks/use-ref.js +6 -0
  443. package/dist/ui/hooks/use-ref.js.map +1 -0
  444. package/dist/ui/hooks/use-resize-observer.d.ts +10 -0
  445. package/dist/ui/hooks/use-resize-observer.js +20 -0
  446. package/dist/ui/hooks/use-resize-observer.js.map +1 -0
  447. package/dist/ui/hooks/use-state.d.ts +2 -0
  448. package/dist/ui/hooks/use-state.js +14 -0
  449. package/dist/ui/hooks/use-state.js.map +1 -0
  450. package/dist/ui/hooks/use-window-event.d.ts +1 -0
  451. package/dist/ui/hooks/use-window-event.js +10 -0
  452. package/dist/ui/hooks/use-window-event.js.map +1 -0
  453. package/dist/ui/hooks/with-hooks.d.ts +2 -0
  454. package/dist/ui/hooks/with-hooks.js +15 -0
  455. package/dist/ui/hooks/with-hooks.js.map +1 -0
  456. package/dist/ui/index.d.ts +1 -0
  457. package/dist/ui/index.js +2 -0
  458. package/dist/ui/index.js.map +1 -0
  459. package/package.json +8 -1
  460. package/dist/core/functions/array-equals.d.ts +0 -1
  461. package/dist/core/functions/array-equals.js.map +0 -1
  462. package/dist/core/functions/with-validation.d.ts +0 -5
  463. package/dist/core/functions/with-validation.js +0 -38
  464. package/dist/core/functions/with-validation.js.map +0 -1
  465. package/dist/core/functions/with-validation.test.js +0 -96
  466. package/dist/core/functions/with-validation.test.js.map +0 -1
  467. package/dist/core/schema/dynamic/dynamic-schema.d.ts +0 -27
  468. package/dist/core/schema/dynamic/dynamic-schema.js +0 -2
  469. package/dist/core/schema/dynamic/dynamic-schema.js.map +0 -1
  470. package/dist/core/schema/dynamic/enumerate-patches.d.ts +0 -9
  471. package/dist/core/schema/dynamic/enumerate-patches.js +0 -50
  472. package/dist/core/schema/dynamic/enumerate-patches.js.map +0 -1
  473. package/dist/core/schema/dynamic/enumerate-patches.test.d.ts +0 -134
  474. package/dist/core/schema/dynamic/enumerate-patches.test.js +0 -209
  475. package/dist/core/schema/dynamic/enumerate-patches.test.js.map +0 -1
  476. package/dist/core/schema/dynamic/get-dynamic-schema.d.ts +0 -5
  477. package/dist/core/schema/dynamic/get-dynamic-schema.js +0 -26
  478. package/dist/core/schema/dynamic/get-dynamic-schema.js.map +0 -1
  479. package/dist/core/schema/dynamic/get-dynamic-schema.test.js +0 -94
  480. package/dist/core/schema/dynamic/get-dynamic-schema.test.js.map +0 -1
  481. package/dist/core/schema/dynamic/index.d.ts +0 -1
  482. package/dist/core/schema/dynamic/index.js +0 -2
  483. package/dist/core/schema/dynamic/index.js.map +0 -1
  484. package/dist/core/schema/dynamic/schema-path-value-path.d.ts +0 -5
  485. package/dist/core/schema/dynamic/schema-path-value-path.js +0 -12
  486. package/dist/core/schema/dynamic/schema-path-value-path.js.map +0 -1
  487. package/dist/core/schema/dynamic-schema.d.ts +0 -27
  488. package/dist/core/schema/dynamic-schema.js +0 -2
  489. package/dist/core/schema/dynamic-schema.js.map +0 -1
  490. package/dist/core/schema/index.d.ts +0 -4
  491. package/dist/core/schema/index.js.map +0 -1
  492. package/dist/core/schema/schema.d.ts +0 -122
  493. package/dist/core/schema/schema.js.map +0 -1
  494. package/dist/core/schema/schemas.d.ts +0 -45
  495. package/dist/core/schema/schemas.js +0 -39
  496. package/dist/core/schema/schemas.js.map +0 -1
  497. package/dist/core/schema/ui-schema.d.ts +0 -25
  498. package/dist/core/schema/ui-schema.js +0 -2
  499. package/dist/core/schema/ui-schema.js.map +0 -1
  500. package/dist/core/schema/validation/is-valid.d.ts +0 -2
  501. package/dist/core/schema/validation/is-valid.js +0 -14
  502. package/dist/core/schema/validation/is-valid.js.map +0 -1
  503. package/dist/core/schema/validation/is-valid.test.js.map +0 -1
  504. package/dist/core/schema/validation/validate.d.ts +0 -2
  505. package/dist/core/schema/validation/validate.js.map +0 -1
  506. package/dist/core/schema/validation/validate.test.js +0 -106
  507. package/dist/core/schema/validation/validate.test.js.map +0 -1
  508. package/dist/core/schema/validation/with-validation.d.ts +0 -5
  509. package/dist/core/schema/validation/with-validation.js +0 -16
  510. package/dist/core/schema/validation/with-validation.js.map +0 -1
  511. package/dist/core/schema/validation/with-validation.test.js +0 -96
  512. package/dist/core/schema/validation/with-validation.test.js.map +0 -1
  513. package/dist/core/schema.d.ts +0 -86
  514. package/dist/core/schema.js.map +0 -1
  515. package/dist/core/schemas.d.ts +0 -45
  516. package/dist/core/schemas.js +0 -39
  517. package/dist/core/schemas.js.map +0 -1
  518. package/dist/schemas/index.d.ts +0 -1
  519. package/dist/schemas/index.js.map +0 -1
  520. package/dist/schemas/schemas.d.ts +0 -45
  521. package/dist/schemas/schemas.js +0 -39
  522. package/dist/schemas/schemas.js.map +0 -1
  523. /package/dist/{core/functions/with-validation.test.d.ts → _/equals.test.d.ts} +0 -0
  524. /package/dist/{core/schema/dynamic/get-dynamic-schema.test.d.ts → _/normalize.test.d.ts} +0 -0
  525. /package/dist/{core/schema/validation/is-valid.test.d.ts → _/schema.test.d.ts} +0 -0
  526. /package/dist/{core/schema/validation/validate.test.d.ts → blob-store/blob-store.test.d.ts} +0 -0
  527. /package/dist/core/{schema/validation/with-validation.test.d.ts → equals.test.d.ts} +0 -0
@@ -0,0 +1,150 @@
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 { equals } from './equals.js';
23
+ import { describe, expect, it } from 'vitest';
24
+ describe('equals', () => {
25
+ describe('primitives and identical references', () => {
26
+ it('should return true for identical primitive values', () => {
27
+ expect(equals(42, 42)).toBe(true);
28
+ expect(equals('hello', 'hello')).toBe(true);
29
+ expect(equals(true, true)).toBe(true);
30
+ expect(equals(false, false)).toBe(true);
31
+ });
32
+ it('should return true for identical object references', () => {
33
+ const obj = { a: 1 };
34
+ expect(equals(obj, obj)).toBe(true);
35
+ });
36
+ it('should return false for different primitive values', () => {
37
+ expect(equals(42, 43)).toBe(false);
38
+ expect(equals('hello', 'world')).toBe(false);
39
+ expect(equals(true, false)).toBe(false);
40
+ });
41
+ });
42
+ describe('null and undefined handling', () => {
43
+ it('should return false when one value is null and other is not', () => {
44
+ expect(equals(null, 42)).toBe(false);
45
+ expect(equals(42, null)).toBe(false);
46
+ expect(equals(null, 'hello')).toBe(false);
47
+ expect(equals('hello', null)).toBe(false);
48
+ });
49
+ it('should return false when one value is undefined and other is not', () => {
50
+ expect(equals(undefined, 42)).toBe(false);
51
+ expect(equals(42, undefined)).toBe(false);
52
+ expect(equals(undefined, 'hello')).toBe(false);
53
+ expect(equals('hello', undefined)).toBe(false);
54
+ });
55
+ it('should return false when one is null and other is undefined', () => {
56
+ expect(equals(null, undefined)).toBe(false);
57
+ expect(equals(undefined, null)).toBe(false);
58
+ });
59
+ });
60
+ describe('type mismatch handling', () => {
61
+ it('should return false when one is primitive and other is object', () => {
62
+ expect(equals(42, {})).toBe(false);
63
+ expect(equals({}, 42)).toBe(false);
64
+ expect(equals('hello', [])).toBe(false);
65
+ expect(equals([], 'hello')).toBe(false);
66
+ });
67
+ });
68
+ describe('arrays', () => {
69
+ it('should return true for identical arrays', () => {
70
+ expect(equals([1, 2, 3], [1, 2, 3])).toBe(true);
71
+ expect(equals(['a', 'b'], ['a', 'b'])).toBe(true);
72
+ expect(equals([], [])).toBe(true);
73
+ });
74
+ it('should return false when one is array and other is object', () => {
75
+ expect(equals([1, 2, 3], { 0: 1, 1: 2, 2: 3 })).toBe(false);
76
+ expect(equals({ 0: 1, 1: 2, 2: 3 }, [1, 2, 3])).toBe(false);
77
+ });
78
+ it('should return false for arrays with different lengths', () => {
79
+ expect(equals([1, 2], [1, 2, 3])).toBe(false);
80
+ expect(equals([1, 2, 3], [1, 2])).toBe(false);
81
+ });
82
+ it('should return false for arrays with different values', () => {
83
+ expect(equals([1, 2, 3], [1, 2, 4])).toBe(false);
84
+ expect(equals([1, 2, 3], [1, 3, 2])).toBe(false);
85
+ });
86
+ it('should handle nested arrays', () => {
87
+ expect(equals([[1, 2], [3, 4]], [[1, 2], [3, 4]])).toBe(true);
88
+ expect(equals([[1, 2], [3, 4]], [[1, 2], [3, 5]])).toBe(false);
89
+ });
90
+ it('should handle arrays with mixed content', () => {
91
+ expect(equals([1, 'hello', { a: 1 }], [1, 'hello', { a: 1 }])).toBe(true);
92
+ expect(equals([1, 'hello', { a: 1 }], [1, 'hello', { a: 2 }])).toBe(false);
93
+ });
94
+ });
95
+ describe('objects', () => {
96
+ it('should return true for identical objects', () => {
97
+ expect(equals({ a: 1, b: 2 }, { a: 1, b: 2 })).toBe(true);
98
+ expect(equals({}, {})).toBe(true);
99
+ });
100
+ it('should return false for objects with different keys', () => {
101
+ expect(equals({ a: 1 }, { b: 1 })).toBe(false);
102
+ expect(equals({ a: 1, b: 2 }, { a: 1 })).toBe(false);
103
+ expect(equals({ a: 1 }, { a: 1, b: 2 })).toBe(false);
104
+ });
105
+ it('should return false for objects with same keys but different values', () => {
106
+ expect(equals({ a: 1, b: 2 }, { a: 1, b: 3 })).toBe(false);
107
+ expect(equals({ a: 1 }, { a: 2 })).toBe(false);
108
+ });
109
+ it('should handle nested objects', () => {
110
+ expect(equals({ a: { b: 1 } }, { a: { b: 1 } })).toBe(true);
111
+ expect(equals({ a: { b: 1 } }, { a: { b: 2 } })).toBe(false);
112
+ });
113
+ it('should handle objects with arrays', () => {
114
+ expect(equals({ a: [1, 2] }, { a: [1, 2] })).toBe(true);
115
+ expect(equals({ a: [1, 2] }, { a: [1, 3] })).toBe(false);
116
+ });
117
+ it('should handle complex nested structures', () => {
118
+ const obj1 = { a: [1, { b: 2, c: [3, 4] }], d: { e: 5 } };
119
+ const obj2 = { a: [1, { b: 2, c: [3, 4] }], d: { e: 5 } };
120
+ const obj3 = { a: [1, { b: 2, c: [3, 5] }], d: { e: 5 } };
121
+ expect(equals(obj1, obj2)).toBe(true);
122
+ expect(equals(obj1, obj3)).toBe(false);
123
+ });
124
+ });
125
+ describe('edge cases', () => {
126
+ it('should handle objects with numeric keys', () => {
127
+ expect(equals({ '0': 1, '1': 2 }, { '0': 1, '1': 2 })).toBe(true);
128
+ expect(equals({ '0': 1, '1': 2 }, { '0': 1, '1': 3 })).toBe(false);
129
+ });
130
+ it('should handle empty arrays and objects', () => {
131
+ expect(equals([], [])).toBe(true);
132
+ expect(equals({}, {})).toBe(true);
133
+ expect(equals([], {})).toBe(false);
134
+ });
135
+ it('should handle objects with undefined values', () => {
136
+ expect(equals({ a: undefined }, { a: undefined })).toBe(true);
137
+ expect(equals({ a: undefined }, { a: null })).toBe(false);
138
+ });
139
+ it('should handle objects with null values', () => {
140
+ expect(equals({ a: null }, { a: null })).toBe(true);
141
+ expect(equals({ a: null }, { a: undefined })).toBe(false);
142
+ });
143
+ it('should handle NaN values', () => {
144
+ expect(equals(NaN, NaN)).toBe(true);
145
+ expect(equals(NaN, 42)).toBe(false);
146
+ expect(equals(42, NaN)).toBe(false);
147
+ });
148
+ });
149
+ });
150
+ //# sourceMappingURL=equals.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"equals.test.js","sourceRoot":"","sources":["../../src/core/equals.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export declare function arrayEqualsShallow(a: unknown[], b: unknown[]): boolean;
@@ -19,7 +19,7 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.*/
22
- export function arrayEquals(a, b) {
22
+ export function arrayEqualsShallow(a, b) {
23
23
  const length = a.length;
24
24
  if (length !== b.length) {
25
25
  return false;
@@ -31,4 +31,4 @@ export function arrayEquals(a, b) {
31
31
  }
32
32
  return true;
33
33
  }
34
- //# sourceMappingURL=array-equals.js.map
34
+ //# sourceMappingURL=array-equals-shallow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"array-equals-shallow.js","sourceRoot":"","sources":["../../../src/core/functions/array-equals-shallow.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,MAAM,UAAU,kBAAkB,CAAC,CAAY,EAAE,CAAY;IAC3D,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;IACxB,IAAI,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACxB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Deeply assigns properties from source into target, throwing an error if attempting to overwrite any non-object value.
3
+ * Objects are merged recursively, but primitive values cannot be overwritten.
4
+ * Mutates the target object directly.
5
+ *
6
+ * @param target The target object to assign into
7
+ * @param source The source object to assign from
8
+ * @returns The modified target object
9
+ * @throws Error if attempting to overwrite a non-object value
10
+ */
11
+ export declare function deepAssign<T, S>(target: T, source: S): T & S;
@@ -0,0 +1,61 @@
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
+ * Deeply assigns properties from source into target, throwing an error if attempting to overwrite any non-object value.
24
+ * Objects are merged recursively, but primitive values cannot be overwritten.
25
+ * Mutates the target object directly.
26
+ *
27
+ * @param target The target object to assign into
28
+ * @param source The source object to assign from
29
+ * @returns The modified target object
30
+ * @throws Error if attempting to overwrite a non-object value
31
+ */
32
+ export function deepAssign(target, source) {
33
+ if (source !== undefined) {
34
+ for (const key in source) {
35
+ const targetValue = target[key];
36
+ const sourceValue = source[key];
37
+ const isTargetObject = targetValue && typeof targetValue === 'object';
38
+ const isSourceObject = sourceValue && typeof sourceValue === 'object' && !Array.isArray(sourceValue);
39
+ if (sourceValue !== undefined) {
40
+ if (key in target) {
41
+ if (isTargetObject && isSourceObject) {
42
+ deepAssign(targetValue, sourceValue);
43
+ }
44
+ else if (targetValue !== undefined) {
45
+ throw new Error(`Cannot overwrite existing value at path "${key}". ` +
46
+ `Existing value: ${JSON.stringify(targetValue)}, ` +
47
+ `New value: ${JSON.stringify(sourceValue)}`);
48
+ }
49
+ else {
50
+ target[key] = sourceValue;
51
+ }
52
+ }
53
+ else {
54
+ target[key] = sourceValue;
55
+ }
56
+ }
57
+ }
58
+ }
59
+ return target;
60
+ }
61
+ //# sourceMappingURL=deep-assign.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deep-assign.js","sourceRoot":"","sources":["../../../src/core/functions/deep-assign.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAIX;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CACtB,MAAS,EACT,MAAS;IAET,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;YACvB,MAAM,WAAW,GAAI,MAAc,CAAC,GAAU,CAAC,CAAC;YAChD,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAEhC,MAAM,cAAc,GAAG,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,CAAC;YACtE,MAAM,cAAc,GAAG,WAAW,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAErG,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAI,GAAG,IAAK,MAAc,EAAE,CAAC;oBACzB,IAAI,cAAc,IAAI,cAAc,EAAE,CAAC;wBACnC,UAAU,CACN,WAA6B,EAC7B,WAA6B,CAChC,CAAC;oBACN,CAAC;yBAAM,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;wBACnC,MAAM,IAAI,KAAK,CACX,4CAA4C,GAAG,KAAK;4BACpD,mBAAmB,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI;4BAClD,cAAc,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAC9C,CAAC;oBACN,CAAC;yBAAM,CAAC;wBACH,MAAc,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;oBACvC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACH,MAAc,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;gBACvC,CAAC;YACL,CAAC;QACL,CAAC;IACL,CAAC;IAED,OAAO,MAAe,CAAC;AAC3B,CAAC"}
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,180 @@
1
+ /*MIT License
2
+
3
+ © Copyright 2025 Adobe. All rights reserved.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.*/
22
+ import { describe, it, expect } from 'vitest';
23
+ import { deepAssign } from './deep-assign.js';
24
+ describe('deepAssign', () => {
25
+ it('should merge flat objects by mutating target', () => {
26
+ const target = { a: 1 };
27
+ const source = { b: 2 };
28
+ const result = deepAssign(target, source);
29
+ expect(result).toEqual({ a: 1, b: 2 });
30
+ // Verify target was modified
31
+ expect(target).toEqual({ a: 1, b: 2 });
32
+ // Verify result is the same object as target
33
+ expect(result).toBe(target);
34
+ // Verify source wasn't modified
35
+ expect(source).toEqual({ b: 2 });
36
+ });
37
+ it('should deeply merge nested objects by mutating target', () => {
38
+ const target = {
39
+ a: { x: 1, y: 2 },
40
+ b: { z: 3 }
41
+ };
42
+ const source = {
43
+ a: { z: 3, w: 4 },
44
+ b: { q: 5 }
45
+ };
46
+ const result = deepAssign(target, source);
47
+ const expected = {
48
+ a: { x: 1, y: 2, z: 3, w: 4 },
49
+ b: { z: 3, q: 5 }
50
+ };
51
+ expect(result).toEqual(expected);
52
+ // Verify target was modified
53
+ expect(target).toEqual(expected);
54
+ // Verify nested objects are the same instances
55
+ expect(result.a).toBe(target.a);
56
+ expect(result.b).toBe(target.b);
57
+ });
58
+ it('should deeply merge nested objects by mutating target', () => {
59
+ const target = {
60
+ a: [1, 2, 3],
61
+ b: { z: 3 }
62
+ };
63
+ const source = {
64
+ a: { z: 3, w: 4 },
65
+ b: { q: 5 }
66
+ };
67
+ const result = deepAssign(target, source);
68
+ const expected = {
69
+ a: Object.assign([1, 2, 3], { z: 3, w: 4 }),
70
+ b: { z: 3, q: 5 }
71
+ };
72
+ expect(result).toEqual(expected);
73
+ // Verify target was modified
74
+ expect(target).toEqual(expected);
75
+ // Verify nested objects are the same instances
76
+ expect(result.a).toBe(target.a);
77
+ expect(result.b).toBe(target.b);
78
+ });
79
+ it('should throw when trying to overwrite primitive values', () => {
80
+ const target = {
81
+ a: 1,
82
+ b: { x: 1 }
83
+ };
84
+ const source = {
85
+ a: 2,
86
+ b: { x: 2 }
87
+ };
88
+ expect(() => deepAssign(target, source)).toThrow('Cannot overwrite existing value at path "a"');
89
+ // Verify target wasn't modified when error thrown
90
+ expect(target).toEqual({
91
+ a: 1,
92
+ b: { x: 1 }
93
+ });
94
+ });
95
+ it('should throw when trying to overwrite arrays', () => {
96
+ const target = {
97
+ a: [1, 2, 3],
98
+ b: { x: 1 }
99
+ };
100
+ const source = {
101
+ a: [4, 5, 6],
102
+ b: { x: 2 }
103
+ };
104
+ expect(() => deepAssign(target, source)).toThrow('Cannot overwrite existing value at path "a"');
105
+ // Verify target wasn't modified when error thrown
106
+ expect(target).toEqual({
107
+ a: [1, 2, 3],
108
+ b: { x: 1 }
109
+ });
110
+ });
111
+ it('should handle undefined values correctly', () => {
112
+ const target = {
113
+ a: undefined,
114
+ b: { x: undefined }
115
+ };
116
+ const source = {
117
+ a: 1,
118
+ b: { x: 2, y: 3 }
119
+ };
120
+ const result = deepAssign(target, source);
121
+ const expected = {
122
+ a: 1,
123
+ b: { x: 2, y: 3 }
124
+ };
125
+ expect(result).toEqual(expected);
126
+ // Verify target was modified
127
+ expect(target).toEqual(expected);
128
+ // Verify result is the same object as target
129
+ expect(result).toBe(target);
130
+ });
131
+ it('should handle deeply nested merges by mutating target', () => {
132
+ const target = {
133
+ a: {
134
+ b: {
135
+ c: {
136
+ d: { x: 1 }
137
+ }
138
+ }
139
+ }
140
+ };
141
+ const source = {
142
+ a: {
143
+ b: {
144
+ c: {
145
+ d: { y: 2 }
146
+ }
147
+ }
148
+ }
149
+ };
150
+ const result = deepAssign(target, source);
151
+ const expected = {
152
+ a: {
153
+ b: {
154
+ c: {
155
+ d: { x: 1, y: 2 }
156
+ }
157
+ }
158
+ }
159
+ };
160
+ expect(result).toEqual(expected);
161
+ // Verify target was modified
162
+ expect(target).toEqual(expected);
163
+ // Verify all nested objects are the same instances
164
+ expect(result.a).toBe(target.a);
165
+ expect(result.a.b).toBe(target.a.b);
166
+ expect(result.a.b.c).toBe(target.a.b.c);
167
+ expect(result.a.b.c.d).toBe(target.a.b.c.d);
168
+ });
169
+ it('should handle empty objects', () => {
170
+ const target = {};
171
+ const source = { a: 1 };
172
+ const result = deepAssign(target, source);
173
+ expect(result).toEqual({ a: 1 });
174
+ // Verify target was modified
175
+ expect(target).toEqual({ a: 1 });
176
+ // Verify result is the same object as target
177
+ expect(result).toBe(target);
178
+ });
179
+ });
180
+ //# sourceMappingURL=deep-assign.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deep-assign.test.js","sourceRoot":"","sources":["../../../src/core/functions/deep-assign.test.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1 @@
1
- export * from './array-equals.js';
2
- export * from './is-async-generator.js';
3
- export * from './deep-merge.js';
1
+ export * from '../../internal/async-generator/is-async-generator.js';
@@ -19,7 +19,5 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.*/
22
- export * from './array-equals.js';
23
- export * from './is-async-generator.js';
24
- export * from './deep-merge.js';
22
+ export * from '../../internal/async-generator/is-async-generator.js';
25
23
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/functions/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,cAAc,mBAAmB,CAAC;AAClC,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/functions/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,cAAc,sDAAsD,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function memoizeFactory<K, V>(fn: (key: K) => V): (key: K) => V;
@@ -0,0 +1,12 @@
1
+ export function memoizeFactory(fn) {
2
+ const cache = new Map();
3
+ return (key) => {
4
+ if (cache.has(key)) {
5
+ return cache.get(key);
6
+ }
7
+ const value = fn(key);
8
+ cache.set(key, value);
9
+ return value;
10
+ };
11
+ }
12
+ //# sourceMappingURL=memoize-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memoize-factory.js","sourceRoot":"","sources":["../../../src/core/functions/memoize-factory.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,cAAc,CAAM,EAAiB;IACjD,MAAM,KAAK,GAAG,IAAI,GAAG,EAAQ,CAAC;IAC9B,OAAO,CAAC,GAAM,EAAK,EAAE;QACjB,IAAI,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACjB,OAAO,KAAK,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;QAC3B,CAAC;QACD,MAAM,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;QACtB,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtB,OAAO,KAAK,CAAC;IACjB,CAAC,CAAA;AACL,CAAC"}
@@ -1,3 +1,4 @@
1
- export * from "./data.js";
2
- export * from "./schema/index.js";
3
- export * from "./functions/index.js";
1
+ export { type Data } from "./data.js";
2
+ export { type IsData } from "./is-data.js";
3
+ export { equals } from "./equals.js";
4
+ export { normalize } from "./normalize.js";
@@ -19,7 +19,6 @@ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
19
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
20
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
21
  SOFTWARE.*/
22
- export * from "./data.js";
23
- export * from "./schema/index.js";
24
- export * from "./functions/index.js";
22
+ export { equals } from "./equals.js";
23
+ export { normalize } from "./normalize.js";
25
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAIX,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,SAAS,EAAC,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,11 @@
1
+ type Primitive = string | number | boolean | null;
2
+ /** invariant type-equality check (handles `readonly` correctly) */
3
+ type EqualReadonly<X, Y> = (<T>() => T extends X ? 1 : 2) extends (<T>() => T extends Y ? 1 : 2) ? (<T>() => T extends Y ? 1 : 2) extends (<T>() => T extends X ? 1 : 2) ? true : false : false;
4
+ /** are *all* own props already `readonly`? */
5
+ type IsFullyReadonly<T> = EqualReadonly<T, Readonly<T>>;
6
+ export type IsData<T> = [
7
+ T
8
+ ] extends [Primitive] ? true : T extends ReadonlyArray<infer U> ? EqualReadonly<T, ReadonlyArray<U>> extends true ? IsData<U> : false : T extends object ? IsFullyReadonly<T> extends true ? {
9
+ [K in keyof T]-?: IsData<T[K]>;
10
+ }[keyof T] extends false ? false : true : false : false;
11
+ export {};
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=is-data.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"is-data.js","sourceRoot":"","sources":["../../src/core/is-data.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export declare function normalize<D>(d: D): D;
@@ -0,0 +1,34 @@
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 function normalize(d) {
23
+ // we could structured clone but let's explicitly shed any keys with undefined values.
24
+ return JSON.parse(JSON.stringify(d), (_key, value) => {
25
+ if (value && !Array.isArray(value) && typeof value === "object") {
26
+ return Object.fromEntries(Object.entries(value).sort(([a], [b]) =>
27
+ // not using String.localeCompare
28
+ // we want this consistent no matter locale
29
+ a < b ? -1 : a > b ? 1 : 0));
30
+ }
31
+ return value;
32
+ });
33
+ }
34
+ //# sourceMappingURL=normalize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalize.js","sourceRoot":"","sources":["../../src/core/normalize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;WAoBW;AAEX,MAAM,UAAU,SAAS,CAAI,CAAI;IAC/B,uFAAuF;IACvF,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE;QACpE,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAChE,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YACtC,kCAAkC;YAClC,4CAA4C;YAC5C,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAC3B,CACF,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1 @@
1
+ export {};