@adobe/data 0.9.82 → 0.9.84
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.
- package/dist/cache/functions/cached.d.ts +8 -0
- package/dist/cache/functions/cached.js +13 -0
- package/dist/cache/functions/cached.js.map +1 -0
- package/dist/cache/functions/cached.test.d.ts +1 -0
- package/dist/cache/functions/cached.test.js +49 -0
- package/dist/cache/functions/cached.test.js.map +1 -0
- package/dist/cache/functions/index.d.ts +1 -0
- package/dist/cache/functions/index.js +1 -0
- package/dist/cache/functions/index.js.map +1 -1
- package/dist/ecs/archetype/archetype.d.ts +23 -0
- package/dist/ecs/archetype/archetype.js.map +1 -1
- package/dist/ecs/database/concurrency/concurrency-strategy.d.ts +4 -3
- package/dist/ecs/database/create-plugin.d.ts +2 -1
- package/dist/ecs/database/create-plugin.js.map +1 -1
- package/dist/ecs/database/database.d.ts +27 -14
- package/dist/ecs/database/database.index.performance.test.js +32 -25
- package/dist/ecs/database/database.index.performance.test.js.map +1 -1
- package/dist/ecs/database/database.index.type-test.js +25 -0
- package/dist/ecs/database/database.index.type-test.js.map +1 -1
- package/dist/ecs/database/database.js +14 -0
- package/dist/ecs/database/database.js.map +1 -1
- package/dist/ecs/database/database.partition.test.d.ts +1 -0
- package/dist/ecs/database/database.partition.test.js +45 -0
- package/dist/ecs/database/database.partition.test.js.map +1 -0
- package/dist/ecs/database/database.partition.type-test.d.ts +1 -0
- package/dist/ecs/database/database.partition.type-test.js +41 -0
- package/dist/ecs/database/database.partition.type-test.js.map +1 -0
- package/dist/ecs/database/database.reset.test.js +13 -6
- package/dist/ecs/database/database.reset.test.js.map +1 -1
- package/dist/ecs/database/deep-extends-chain.type-test.d.ts +463 -463
- package/dist/ecs/database/facets/archetypes.d.ts +17 -0
- package/dist/ecs/database/facets/archetypes.js +18 -0
- package/dist/ecs/database/facets/archetypes.js.map +1 -0
- package/dist/ecs/database/facets/components.d.ts +17 -0
- package/dist/ecs/database/facets/components.js +18 -0
- package/dist/ecs/database/facets/components.js.map +1 -0
- package/dist/ecs/database/facets/facets.test.d.ts +1 -0
- package/dist/ecs/database/facets/facets.test.js +54 -0
- package/dist/ecs/database/facets/facets.test.js.map +1 -0
- package/dist/ecs/database/facets/resources.d.ts +17 -0
- package/dist/ecs/database/facets/resources.js +18 -0
- package/dist/ecs/database/facets/resources.js.map +1 -0
- package/dist/ecs/database/facets/stamp-scopes.d.ts +46 -0
- package/dist/ecs/database/facets/stamp-scopes.js +26 -0
- package/dist/ecs/database/facets/stamp-scopes.js.map +1 -0
- package/dist/ecs/database/index.d.ts +0 -1
- package/dist/ecs/database/index.js +0 -1
- package/dist/ecs/database/index.js.map +1 -1
- package/dist/ecs/database/observe-select-entities.performance.test.js +12 -4
- package/dist/ecs/database/observe-select-entities.performance.test.js.map +1 -1
- package/dist/ecs/database/observed/observed-database.d.ts +3 -3
- package/dist/ecs/database/reconciling/create-rebase-replay-applier.js +1 -1
- package/dist/ecs/database/reconciling/create-rebase-replay-applier.js.map +1 -1
- package/dist/ecs/database/reconciling/reconciling-entry.d.ts +3 -2
- package/dist/ecs/database/reconciling/reconciling-entry.js.map +1 -1
- package/dist/ecs/database/to-system-database.d.ts +17 -0
- package/dist/ecs/database/to-system-database.js +5 -0
- package/dist/ecs/database/to-system-database.js.map +1 -0
- package/dist/ecs/database/to-system-database.test.d.ts +1 -0
- package/dist/ecs/database/to-system-database.test.js +22 -0
- package/dist/ecs/database/to-system-database.test.js.map +1 -0
- package/dist/ecs/database/transactional-store/coalesce-actions.test.js +13 -4
- package/dist/ecs/database/transactional-store/coalesce-actions.test.js.map +1 -1
- package/dist/ecs/database/transactional-store/create-transactional-store.js.map +1 -1
- package/dist/ecs/database/transactional-store/transactional-store.d.ts +5 -16
- package/dist/ecs/optional-components.d.ts +1 -0
- package/dist/ecs/store/core/core.d.ts +33 -8
- package/dist/ecs/store/core/create-core.d.ts +12 -2
- package/dist/ecs/store/core/create-core.js +144 -22
- package/dist/ecs/store/core/create-core.js.map +1 -1
- package/dist/ecs/store/core/create-core.partition.test.d.ts +1 -0
- package/dist/ecs/store/core/create-core.partition.test.js +229 -0
- package/dist/ecs/store/core/create-core.partition.test.js.map +1 -0
- package/dist/ecs/store/core/select-entities.js +87 -21
- package/dist/ecs/store/core/select-entities.js.map +1 -1
- package/dist/ecs/store/core/select-entities.partition.test.d.ts +1 -0
- package/dist/ecs/store/core/select-entities.partition.test.js +93 -0
- package/dist/ecs/store/core/select-entities.partition.test.js.map +1 -0
- package/dist/ecs/store/entity-select-options.d.ts +5 -1
- package/dist/ecs/store/partition.d.ts +63 -0
- package/dist/ecs/store/partition.js +3 -0
- package/dist/ecs/store/partition.js.map +1 -0
- package/dist/ecs/store/partition.type-test.d.ts +1 -0
- package/dist/ecs/store/partition.type-test.js +15 -0
- package/dist/ecs/store/partition.type-test.js.map +1 -0
- package/dist/ecs/store/public/create-store.d.ts +3 -1
- package/dist/ecs/store/public/create-store.js +19 -50
- package/dist/ecs/store/public/create-store.js.map +1 -1
- package/dist/ecs/store/public/create-store.partition.test.d.ts +1 -0
- package/dist/ecs/store/public/create-store.partition.test.js +111 -0
- package/dist/ecs/store/public/create-store.partition.test.js.map +1 -0
- package/dist/ecs/store/public/create-store.partition.type-test.d.ts +1 -0
- package/dist/ecs/store/public/create-store.partition.type-test.js +61 -0
- package/dist/ecs/store/public/create-store.partition.type-test.js.map +1 -0
- package/dist/ecs/store/store.d.ts +22 -10
- package/dist/ecs/store/store.js.map +1 -1
- package/dist/ecs/store/transaction-functions.d.ts +6 -5
- package/dist/equals-unordered.d.ts +13 -0
- package/dist/equals-unordered.js +64 -0
- package/dist/equals-unordered.js.map +1 -0
- package/dist/equals-unordered.test.d.ts +1 -0
- package/dist/equals-unordered.test.js +35 -0
- package/dist/equals-unordered.test.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/math/line2/interpolate.d.ts +3 -0
- package/dist/math/line2/interpolate.js +7 -0
- package/dist/math/line2/interpolate.js.map +1 -0
- package/dist/math/line2/intersects.d.ts +2 -0
- package/dist/math/line2/intersects.js +29 -0
- package/dist/math/line2/intersects.js.map +1 -0
- package/dist/math/line2/public.d.ts +3 -1
- package/dist/math/line2/public.js +3 -1
- package/dist/math/line2/public.js.map +1 -1
- package/dist/math/line2/sub-line.d.ts +2 -0
- package/dist/math/line2/sub-line.js +9 -0
- package/dist/math/line2/sub-line.js.map +1 -0
- package/dist/math/line3/closest-point-on-line.d.ts +10 -0
- package/dist/math/line3/closest-point-on-line.js +29 -0
- package/dist/math/line3/closest-point-on-line.js.map +1 -0
- package/dist/math/line3/direction.d.ts +7 -0
- package/dist/math/line3/direction.js +12 -0
- package/dist/math/line3/direction.js.map +1 -0
- package/dist/math/line3/interpolate.d.ts +3 -0
- package/dist/math/line3/interpolate.js +7 -0
- package/dist/math/line3/interpolate.js.map +1 -0
- package/dist/math/line3/public.d.ts +4 -1
- package/dist/math/line3/public.js +4 -1
- package/dist/math/line3/public.js.map +1 -1
- package/dist/math/line3/sub-line.d.ts +2 -0
- package/dist/math/line3/sub-line.js +9 -0
- package/dist/math/line3/sub-line.js.map +1 -0
- package/dist/math/mat4x4/add.d.ts +2 -0
- package/dist/math/mat4x4/add.js +8 -0
- package/dist/math/mat4x4/add.js.map +1 -0
- package/dist/math/mat4x4/determinant.d.ts +2 -0
- package/dist/math/mat4x4/determinant.js +18 -0
- package/dist/math/mat4x4/determinant.js.map +1 -0
- package/dist/math/mat4x4/identity.d.ts +2 -0
- package/dist/math/mat4x4/identity.js +8 -0
- package/dist/math/mat4x4/identity.js.map +1 -0
- package/dist/math/mat4x4/inverse.d.ts +2 -0
- package/dist/math/mat4x4/inverse.js +41 -0
- package/dist/math/mat4x4/inverse.js.map +1 -0
- package/dist/math/mat4x4/look-at.d.ts +3 -0
- package/dist/math/mat4x4/look-at.js +23 -0
- package/dist/math/mat4x4/look-at.js.map +1 -0
- package/dist/math/mat4x4/multiply-vec3.d.ts +3 -0
- package/dist/math/mat4x4/multiply-vec3.js +7 -0
- package/dist/math/mat4x4/multiply-vec3.js.map +1 -0
- package/dist/math/mat4x4/multiply-vec4.d.ts +3 -0
- package/dist/math/mat4x4/multiply-vec4.js +8 -0
- package/dist/math/mat4x4/multiply-vec4.js.map +1 -0
- package/dist/math/mat4x4/multiply.d.ts +2 -0
- package/dist/math/mat4x4/multiply.js +15 -0
- package/dist/math/mat4x4/multiply.js.map +1 -0
- package/dist/math/mat4x4/orthographic.d.ts +2 -0
- package/dist/math/mat4x4/orthographic.js +13 -0
- package/dist/math/mat4x4/orthographic.js.map +1 -0
- package/dist/math/mat4x4/perspective.d.ts +2 -0
- package/dist/math/mat4x4/perspective.js +23 -0
- package/dist/math/mat4x4/perspective.js.map +1 -0
- package/dist/math/mat4x4/public.d.ts +19 -1
- package/dist/math/mat4x4/public.js +19 -1
- package/dist/math/mat4x4/public.js.map +1 -1
- package/dist/math/mat4x4/rotation-x.d.ts +2 -0
- package/dist/math/mat4x4/rotation-x.js +12 -0
- package/dist/math/mat4x4/rotation-x.js.map +1 -0
- package/dist/math/mat4x4/rotation-y.d.ts +2 -0
- package/dist/math/mat4x4/rotation-y.js +12 -0
- package/dist/math/mat4x4/rotation-y.js.map +1 -0
- package/dist/math/mat4x4/rotation-z.d.ts +2 -0
- package/dist/math/mat4x4/rotation-z.js +12 -0
- package/dist/math/mat4x4/rotation-z.js.map +1 -0
- package/dist/math/mat4x4/scale.d.ts +2 -0
- package/dist/math/mat4x4/scale.js +8 -0
- package/dist/math/mat4x4/scale.js.map +1 -0
- package/dist/math/mat4x4/scaling.d.ts +2 -0
- package/dist/math/mat4x4/scaling.js +8 -0
- package/dist/math/mat4x4/scaling.js.map +1 -0
- package/dist/math/mat4x4/subtract.d.ts +2 -0
- package/dist/math/mat4x4/subtract.js +8 -0
- package/dist/math/mat4x4/subtract.js.map +1 -0
- package/dist/math/mat4x4/translation.d.ts +2 -0
- package/dist/math/mat4x4/translation.js +8 -0
- package/dist/math/mat4x4/translation.js.map +1 -0
- package/dist/math/mat4x4/transpose.d.ts +2 -0
- package/dist/math/mat4x4/transpose.js +8 -0
- package/dist/math/mat4x4/transpose.js.map +1 -0
- package/dist/math/mat4x4/zero.d.ts +2 -0
- package/dist/math/mat4x4/zero.js +8 -0
- package/dist/math/mat4x4/zero.js.map +1 -0
- package/dist/math/plane/contains-point.d.ts +3 -0
- package/dist/math/plane/contains-point.js +5 -0
- package/dist/math/plane/contains-point.js.map +1 -0
- package/dist/math/plane/distance.d.ts +3 -0
- package/dist/math/plane/distance.js +4 -0
- package/dist/math/plane/distance.js.map +1 -0
- package/dist/math/plane/is-point-behind.d.ts +3 -0
- package/dist/math/plane/is-point-behind.js +4 -0
- package/dist/math/plane/is-point-behind.js.map +1 -0
- package/dist/math/plane/is-point-in-front.d.ts +3 -0
- package/dist/math/plane/is-point-in-front.js +4 -0
- package/dist/math/plane/is-point-in-front.js.map +1 -0
- package/dist/math/plane/is.d.ts +2 -0
- package/dist/math/plane/is.js +5 -0
- package/dist/math/plane/is.js.map +1 -0
- package/dist/math/plane/line-intersection.d.ts +9 -0
- package/dist/math/plane/line-intersection.js +26 -0
- package/dist/math/plane/line-intersection.js.map +1 -0
- package/dist/math/plane/public.d.ts +7 -1
- package/dist/math/plane/public.js +7 -1
- package/dist/math/plane/public.js.map +1 -1
- package/dist/math/plane/signed-distance.d.ts +3 -0
- package/dist/math/plane/signed-distance.js +4 -0
- package/dist/math/plane/signed-distance.js.map +1 -0
- package/dist/math/quat/add.d.ts +2 -0
- package/dist/math/quat/add.js +8 -0
- package/dist/math/quat/add.js.map +1 -0
- package/dist/math/quat/align-to.d.ts +12 -0
- package/dist/math/quat/align-to.js +43 -0
- package/dist/math/quat/align-to.js.map +1 -0
- package/dist/math/quat/conjugate.d.ts +2 -0
- package/dist/math/quat/conjugate.js +3 -0
- package/dist/math/quat/conjugate.js.map +1 -0
- package/dist/math/quat/distance.d.ts +2 -0
- package/dist/math/quat/distance.js +5 -0
- package/dist/math/quat/distance.js.map +1 -0
- package/dist/math/quat/dot.d.ts +2 -0
- package/dist/math/quat/dot.js +3 -0
- package/dist/math/quat/dot.js.map +1 -0
- package/dist/math/quat/from-axis-angle.d.ts +3 -0
- package/dist/math/quat/from-axis-angle.js +14 -0
- package/dist/math/quat/from-axis-angle.js.map +1 -0
- package/dist/math/quat/from-euler.d.ts +2 -0
- package/dist/math/quat/from-euler.js +16 -0
- package/dist/math/quat/from-euler.js.map +1 -0
- package/dist/math/quat/identity.d.ts +2 -0
- package/dist/math/quat/identity.js +3 -0
- package/dist/math/quat/identity.js.map +1 -0
- package/dist/math/quat/inverse.d.ts +2 -0
- package/dist/math/quat/inverse.js +11 -0
- package/dist/math/quat/inverse.js.map +1 -0
- package/dist/math/quat/length-squared.d.ts +2 -0
- package/dist/math/quat/length-squared.js +3 -0
- package/dist/math/quat/length-squared.js.map +1 -0
- package/dist/math/quat/length.d.ts +2 -0
- package/dist/math/quat/length.js +3 -0
- package/dist/math/quat/length.js.map +1 -0
- package/dist/math/quat/lerp.d.ts +2 -0
- package/dist/math/quat/lerp.js +8 -0
- package/dist/math/quat/lerp.js.map +1 -0
- package/dist/math/quat/look-at.d.ts +3 -0
- package/dist/math/quat/look-at.js +49 -0
- package/dist/math/quat/look-at.js.map +1 -0
- package/dist/math/quat/multiply.d.ts +2 -0
- package/dist/math/quat/multiply.js +8 -0
- package/dist/math/quat/multiply.js.map +1 -0
- package/dist/math/quat/negate.d.ts +2 -0
- package/dist/math/quat/negate.js +3 -0
- package/dist/math/quat/negate.js.map +1 -0
- package/dist/math/quat/normalize.d.ts +2 -0
- package/dist/math/quat/normalize.js +8 -0
- package/dist/math/quat/normalize.js.map +1 -0
- package/dist/math/quat/public.d.ts +23 -1
- package/dist/math/quat/public.js +23 -1
- package/dist/math/quat/public.js.map +1 -1
- package/dist/math/quat/rotate-vec3.d.ts +3 -0
- package/dist/math/quat/rotate-vec3.js +15 -0
- package/dist/math/quat/rotate-vec3.js.map +1 -0
- package/dist/math/quat/scale.d.ts +2 -0
- package/dist/math/quat/scale.js +3 -0
- package/dist/math/quat/scale.js.map +1 -0
- package/dist/math/quat/schema.js +1 -1
- package/dist/math/quat/schema.js.map +1 -1
- package/dist/math/quat/slerp.d.ts +2 -0
- package/dist/math/quat/slerp.js +22 -0
- package/dist/math/quat/slerp.js.map +1 -0
- package/dist/math/quat/subtract.d.ts +2 -0
- package/dist/math/quat/subtract.js +8 -0
- package/dist/math/quat/subtract.js.map +1 -0
- package/dist/math/quat/to-axis-angle.d.ts +6 -0
- package/dist/math/quat/to-axis-angle.js +13 -0
- package/dist/math/quat/to-axis-angle.js.map +1 -0
- package/dist/math/quat/to-euler.d.ts +3 -0
- package/dist/math/quat/to-euler.js +22 -0
- package/dist/math/quat/to-euler.js.map +1 -0
- package/dist/math/quat/to-mat4.d.ts +8 -0
- package/dist/math/quat/to-mat4.js +25 -0
- package/dist/math/quat/to-mat4.js.map +1 -0
- package/dist/math/vec2/f32/abs.d.ts +2 -0
- package/dist/math/vec2/f32/abs.js +3 -0
- package/dist/math/vec2/f32/abs.js.map +1 -0
- package/dist/math/vec2/f32/acos.d.ts +2 -0
- package/dist/math/vec2/f32/acos.js +3 -0
- package/dist/math/vec2/f32/acos.js.map +1 -0
- package/dist/math/vec2/f32/acosh.d.ts +2 -0
- package/dist/math/vec2/f32/acosh.js +3 -0
- package/dist/math/vec2/f32/acosh.js.map +1 -0
- package/dist/math/vec2/f32/add.d.ts +2 -0
- package/dist/math/vec2/f32/add.js +3 -0
- package/dist/math/vec2/f32/add.js.map +1 -0
- package/dist/math/vec2/f32/asin.d.ts +2 -0
- package/dist/math/vec2/f32/asin.js +3 -0
- package/dist/math/vec2/f32/asin.js.map +1 -0
- package/dist/math/vec2/f32/asinh.d.ts +2 -0
- package/dist/math/vec2/f32/asinh.js +3 -0
- package/dist/math/vec2/f32/asinh.js.map +1 -0
- package/dist/math/vec2/f32/atan.d.ts +2 -0
- package/dist/math/vec2/f32/atan.js +3 -0
- package/dist/math/vec2/f32/atan.js.map +1 -0
- package/dist/math/vec2/f32/atanh.d.ts +2 -0
- package/dist/math/vec2/f32/atanh.js +3 -0
- package/dist/math/vec2/f32/atanh.js.map +1 -0
- package/dist/math/vec2/f32/ceil.d.ts +2 -0
- package/dist/math/vec2/f32/ceil.js +3 -0
- package/dist/math/vec2/f32/ceil.js.map +1 -0
- package/dist/math/vec2/f32/clamp.d.ts +2 -0
- package/dist/math/vec2/f32/clamp.js +5 -0
- package/dist/math/vec2/f32/clamp.js.map +1 -0
- package/dist/math/vec2/f32/cos.d.ts +2 -0
- package/dist/math/vec2/f32/cos.js +3 -0
- package/dist/math/vec2/f32/cos.js.map +1 -0
- package/dist/math/vec2/f32/cosh.d.ts +2 -0
- package/dist/math/vec2/f32/cosh.js +3 -0
- package/dist/math/vec2/f32/cosh.js.map +1 -0
- package/dist/math/vec2/f32/distance.d.ts +2 -0
- package/dist/math/vec2/f32/distance.js +5 -0
- package/dist/math/vec2/f32/distance.js.map +1 -0
- package/dist/math/vec2/f32/dot.d.ts +2 -0
- package/dist/math/vec2/f32/dot.js +3 -0
- package/dist/math/vec2/f32/dot.js.map +1 -0
- package/dist/math/vec2/f32/equals.d.ts +2 -0
- package/dist/math/vec2/f32/equals.js +3 -0
- package/dist/math/vec2/f32/equals.js.map +1 -0
- package/dist/math/vec2/f32/exp.d.ts +2 -0
- package/dist/math/vec2/f32/exp.js +3 -0
- package/dist/math/vec2/f32/exp.js.map +1 -0
- package/dist/math/vec2/f32/exp2.d.ts +2 -0
- package/dist/math/vec2/f32/exp2.js +3 -0
- package/dist/math/vec2/f32/exp2.js.map +1 -0
- package/dist/math/vec2/f32/faceforward.d.ts +2 -0
- package/dist/math/vec2/f32/faceforward.js +5 -0
- package/dist/math/vec2/f32/faceforward.js.map +1 -0
- package/dist/math/vec2/f32/floor.d.ts +2 -0
- package/dist/math/vec2/f32/floor.js +3 -0
- package/dist/math/vec2/f32/floor.js.map +1 -0
- package/dist/math/vec2/f32/fract.d.ts +2 -0
- package/dist/math/vec2/f32/fract.js +3 -0
- package/dist/math/vec2/f32/fract.js.map +1 -0
- package/dist/math/vec2/f32/length.d.ts +2 -0
- package/dist/math/vec2/f32/length.js +3 -0
- package/dist/math/vec2/f32/length.js.map +1 -0
- package/dist/math/vec2/f32/log.d.ts +2 -0
- package/dist/math/vec2/f32/log.js +3 -0
- package/dist/math/vec2/f32/log.js.map +1 -0
- package/dist/math/vec2/f32/log2.d.ts +2 -0
- package/dist/math/vec2/f32/log2.js +3 -0
- package/dist/math/vec2/f32/log2.js.map +1 -0
- package/dist/math/vec2/f32/max.d.ts +2 -0
- package/dist/math/vec2/f32/max.js +3 -0
- package/dist/math/vec2/f32/max.js.map +1 -0
- package/dist/math/vec2/f32/min.d.ts +2 -0
- package/dist/math/vec2/f32/min.js +3 -0
- package/dist/math/vec2/f32/min.js.map +1 -0
- package/dist/math/vec2/f32/mix.d.ts +2 -0
- package/dist/math/vec2/f32/mix.js +6 -0
- package/dist/math/vec2/f32/mix.js.map +1 -0
- package/dist/math/vec2/f32/mod.d.ts +2 -0
- package/dist/math/vec2/f32/mod.js +6 -0
- package/dist/math/vec2/f32/mod.js.map +1 -0
- package/dist/math/vec2/f32/modf.d.ts +5 -0
- package/dist/math/vec2/f32/modf.js +6 -0
- package/dist/math/vec2/f32/modf.js.map +1 -0
- package/dist/math/vec2/f32/negate.d.ts +2 -0
- package/dist/math/vec2/f32/negate.js +3 -0
- package/dist/math/vec2/f32/negate.js.map +1 -0
- package/dist/math/vec2/f32/normalize.d.ts +2 -0
- package/dist/math/vec2/f32/normalize.js +8 -0
- package/dist/math/vec2/f32/normalize.js.map +1 -0
- package/dist/math/vec2/f32/pow.d.ts +2 -0
- package/dist/math/vec2/f32/pow.js +6 -0
- package/dist/math/vec2/f32/pow.js.map +1 -0
- package/dist/math/vec2/f32/public.d.ts +46 -1
- package/dist/math/vec2/f32/public.js +46 -1
- package/dist/math/vec2/f32/public.js.map +1 -1
- package/dist/math/vec2/f32/reflect.d.ts +2 -0
- package/dist/math/vec2/f32/reflect.js +9 -0
- package/dist/math/vec2/f32/reflect.js.map +1 -0
- package/dist/math/vec2/f32/refract.d.ts +2 -0
- package/dist/math/vec2/f32/refract.js +14 -0
- package/dist/math/vec2/f32/refract.js.map +1 -0
- package/dist/math/vec2/f32/round.d.ts +2 -0
- package/dist/math/vec2/f32/round.js +3 -0
- package/dist/math/vec2/f32/round.js.map +1 -0
- package/dist/math/vec2/f32/scale.d.ts +2 -0
- package/dist/math/vec2/f32/scale.js +3 -0
- package/dist/math/vec2/f32/scale.js.map +1 -0
- package/dist/math/vec2/f32/sign.d.ts +2 -0
- package/dist/math/vec2/f32/sign.js +3 -0
- package/dist/math/vec2/f32/sign.js.map +1 -0
- package/dist/math/vec2/f32/sin.d.ts +2 -0
- package/dist/math/vec2/f32/sin.js +3 -0
- package/dist/math/vec2/f32/sin.js.map +1 -0
- package/dist/math/vec2/f32/sinh.d.ts +2 -0
- package/dist/math/vec2/f32/sinh.js +3 -0
- package/dist/math/vec2/f32/sinh.js.map +1 -0
- package/dist/math/vec2/f32/smoothstep.d.ts +2 -0
- package/dist/math/vec2/f32/smoothstep.js +7 -0
- package/dist/math/vec2/f32/smoothstep.js.map +1 -0
- package/dist/math/vec2/f32/sqrt.d.ts +2 -0
- package/dist/math/vec2/f32/sqrt.js +3 -0
- package/dist/math/vec2/f32/sqrt.js.map +1 -0
- package/dist/math/vec2/f32/step.d.ts +2 -0
- package/dist/math/vec2/f32/step.js +6 -0
- package/dist/math/vec2/f32/step.js.map +1 -0
- package/dist/math/vec2/f32/subtract.d.ts +2 -0
- package/dist/math/vec2/f32/subtract.js +3 -0
- package/dist/math/vec2/f32/subtract.js.map +1 -0
- package/dist/math/vec2/f32/tan.d.ts +2 -0
- package/dist/math/vec2/f32/tan.js +3 -0
- package/dist/math/vec2/f32/tan.js.map +1 -0
- package/dist/math/vec2/f32/tanh.d.ts +2 -0
- package/dist/math/vec2/f32/tanh.js +3 -0
- package/dist/math/vec2/f32/tanh.js.map +1 -0
- package/dist/math/vec2/f32/trunc.d.ts +2 -0
- package/dist/math/vec2/f32/trunc.js +3 -0
- package/dist/math/vec2/f32/trunc.js.map +1 -0
- package/dist/math/vec2/f32/zero.d.ts +2 -0
- package/dist/math/vec2/f32/zero.js +3 -0
- package/dist/math/vec2/f32/zero.js.map +1 -0
- package/dist/math/vec2/i32/abs.d.ts +2 -0
- package/dist/math/vec2/i32/abs.js +3 -0
- package/dist/math/vec2/i32/abs.js.map +1 -0
- package/dist/math/vec2/i32/add.d.ts +2 -0
- package/dist/math/vec2/i32/add.js +3 -0
- package/dist/math/vec2/i32/add.js.map +1 -0
- package/dist/math/vec2/i32/bitwise-and.d.ts +2 -0
- package/dist/math/vec2/i32/bitwise-and.js +3 -0
- package/dist/math/vec2/i32/bitwise-and.js.map +1 -0
- package/dist/math/vec2/i32/bitwise-not.d.ts +2 -0
- package/dist/math/vec2/i32/bitwise-not.js +3 -0
- package/dist/math/vec2/i32/bitwise-not.js.map +1 -0
- package/dist/math/vec2/i32/bitwise-or.d.ts +2 -0
- package/dist/math/vec2/i32/bitwise-or.js +3 -0
- package/dist/math/vec2/i32/bitwise-or.js.map +1 -0
- package/dist/math/vec2/i32/bitwise-xor.d.ts +2 -0
- package/dist/math/vec2/i32/bitwise-xor.js +3 -0
- package/dist/math/vec2/i32/bitwise-xor.js.map +1 -0
- package/dist/math/vec2/i32/clamp.d.ts +2 -0
- package/dist/math/vec2/i32/clamp.js +5 -0
- package/dist/math/vec2/i32/clamp.js.map +1 -0
- package/dist/math/vec2/i32/count-leading-zeros.d.ts +2 -0
- package/dist/math/vec2/i32/count-leading-zeros.js +7 -0
- package/dist/math/vec2/i32/count-leading-zeros.js.map +1 -0
- package/dist/math/vec2/i32/count-one-bits.d.ts +2 -0
- package/dist/math/vec2/i32/count-one-bits.js +7 -0
- package/dist/math/vec2/i32/count-one-bits.js.map +1 -0
- package/dist/math/vec2/i32/count-trailing-zeros.d.ts +2 -0
- package/dist/math/vec2/i32/count-trailing-zeros.js +7 -0
- package/dist/math/vec2/i32/count-trailing-zeros.js.map +1 -0
- package/dist/math/vec2/i32/equals.d.ts +2 -0
- package/dist/math/vec2/i32/equals.js +3 -0
- package/dist/math/vec2/i32/equals.js.map +1 -0
- package/dist/math/vec2/i32/max.d.ts +2 -0
- package/dist/math/vec2/i32/max.js +3 -0
- package/dist/math/vec2/i32/max.js.map +1 -0
- package/dist/math/vec2/i32/min.d.ts +2 -0
- package/dist/math/vec2/i32/min.js +3 -0
- package/dist/math/vec2/i32/min.js.map +1 -0
- package/dist/math/vec2/i32/negate.d.ts +2 -0
- package/dist/math/vec2/i32/negate.js +3 -0
- package/dist/math/vec2/i32/negate.js.map +1 -0
- package/dist/math/vec2/i32/public.d.ts +20 -1
- package/dist/math/vec2/i32/public.js +20 -1
- package/dist/math/vec2/i32/public.js.map +1 -1
- package/dist/math/vec2/i32/reverse-bits.d.ts +2 -0
- package/dist/math/vec2/i32/reverse-bits.js +7 -0
- package/dist/math/vec2/i32/reverse-bits.js.map +1 -0
- package/dist/math/vec2/i32/scale.d.ts +2 -0
- package/dist/math/vec2/i32/scale.js +3 -0
- package/dist/math/vec2/i32/scale.js.map +1 -0
- package/dist/math/vec2/i32/shift-left.d.ts +2 -0
- package/dist/math/vec2/i32/shift-left.js +3 -0
- package/dist/math/vec2/i32/shift-left.js.map +1 -0
- package/dist/math/vec2/i32/shift-right.d.ts +2 -0
- package/dist/math/vec2/i32/shift-right.js +7 -0
- package/dist/math/vec2/i32/shift-right.js.map +1 -0
- package/dist/math/vec2/i32/subtract.d.ts +2 -0
- package/dist/math/vec2/i32/subtract.js +3 -0
- package/dist/math/vec2/i32/subtract.js.map +1 -0
- package/dist/math/vec2/i32/zero.d.ts +2 -0
- package/dist/math/vec2/i32/zero.js +3 -0
- package/dist/math/vec2/i32/zero.js.map +1 -0
- package/dist/math/vec2/public.d.ts +1 -1
- package/dist/math/vec2/public.js +1 -1
- package/dist/math/vec2/public.js.map +1 -1
- package/dist/math/vec2/u32/add.d.ts +2 -0
- package/dist/math/vec2/u32/add.js +6 -0
- package/dist/math/vec2/u32/add.js.map +1 -0
- package/dist/math/vec2/u32/bitwise-and.d.ts +2 -0
- package/dist/math/vec2/u32/bitwise-and.js +6 -0
- package/dist/math/vec2/u32/bitwise-and.js.map +1 -0
- package/dist/math/vec2/u32/bitwise-not.d.ts +2 -0
- package/dist/math/vec2/u32/bitwise-not.js +3 -0
- package/dist/math/vec2/u32/bitwise-not.js.map +1 -0
- package/dist/math/vec2/u32/bitwise-or.d.ts +2 -0
- package/dist/math/vec2/u32/bitwise-or.js +6 -0
- package/dist/math/vec2/u32/bitwise-or.js.map +1 -0
- package/dist/math/vec2/u32/bitwise-xor.d.ts +2 -0
- package/dist/math/vec2/u32/bitwise-xor.js +6 -0
- package/dist/math/vec2/u32/bitwise-xor.js.map +1 -0
- package/dist/math/vec2/u32/clamp.d.ts +2 -0
- package/dist/math/vec2/u32/clamp.js +5 -0
- package/dist/math/vec2/u32/clamp.js.map +1 -0
- package/dist/math/vec2/u32/count-leading-zeros.d.ts +2 -0
- package/dist/math/vec2/u32/count-leading-zeros.js +7 -0
- package/dist/math/vec2/u32/count-leading-zeros.js.map +1 -0
- package/dist/math/vec2/u32/count-one-bits.d.ts +2 -0
- package/dist/math/vec2/u32/count-one-bits.js +7 -0
- package/dist/math/vec2/u32/count-one-bits.js.map +1 -0
- package/dist/math/vec2/u32/count-trailing-zeros.d.ts +2 -0
- package/dist/math/vec2/u32/count-trailing-zeros.js +7 -0
- package/dist/math/vec2/u32/count-trailing-zeros.js.map +1 -0
- package/dist/math/vec2/u32/equals.d.ts +2 -0
- package/dist/math/vec2/u32/equals.js +3 -0
- package/dist/math/vec2/u32/equals.js.map +1 -0
- package/dist/math/vec2/u32/max.d.ts +2 -0
- package/dist/math/vec2/u32/max.js +6 -0
- package/dist/math/vec2/u32/max.js.map +1 -0
- package/dist/math/vec2/u32/min.d.ts +2 -0
- package/dist/math/vec2/u32/min.js +6 -0
- package/dist/math/vec2/u32/min.js.map +1 -0
- package/dist/math/vec2/u32/negate.d.ts +2 -0
- package/dist/math/vec2/u32/negate.js +3 -0
- package/dist/math/vec2/u32/negate.js.map +1 -0
- package/dist/math/vec2/u32/public.d.ts +19 -1
- package/dist/math/vec2/u32/public.js +19 -1
- package/dist/math/vec2/u32/public.js.map +1 -1
- package/dist/math/vec2/u32/reverse-bits.d.ts +2 -0
- package/dist/math/vec2/u32/reverse-bits.js +7 -0
- package/dist/math/vec2/u32/reverse-bits.js.map +1 -0
- package/dist/math/vec2/u32/scale.d.ts +2 -0
- package/dist/math/vec2/u32/scale.js +3 -0
- package/dist/math/vec2/u32/scale.js.map +1 -0
- package/dist/math/vec2/u32/shift-left.d.ts +2 -0
- package/dist/math/vec2/u32/shift-left.js +3 -0
- package/dist/math/vec2/u32/shift-left.js.map +1 -0
- package/dist/math/vec2/u32/shift-right.d.ts +2 -0
- package/dist/math/vec2/u32/shift-right.js +7 -0
- package/dist/math/vec2/u32/shift-right.js.map +1 -0
- package/dist/math/vec2/u32/subtract.d.ts +2 -0
- package/dist/math/vec2/u32/subtract.js +6 -0
- package/dist/math/vec2/u32/subtract.js.map +1 -0
- package/dist/math/vec2/u32/zero.d.ts +2 -0
- package/dist/math/vec2/u32/zero.js +3 -0
- package/dist/math/vec2/u32/zero.js.map +1 -0
- package/dist/math/vec3/f32/abs.d.ts +2 -0
- package/dist/math/vec3/f32/abs.js +3 -0
- package/dist/math/vec3/f32/abs.js.map +1 -0
- package/dist/math/vec3/f32/acos.d.ts +2 -0
- package/dist/math/vec3/f32/acos.js +3 -0
- package/dist/math/vec3/f32/acos.js.map +1 -0
- package/dist/math/vec3/f32/acosh.d.ts +2 -0
- package/dist/math/vec3/f32/acosh.js +3 -0
- package/dist/math/vec3/f32/acosh.js.map +1 -0
- package/dist/math/vec3/f32/add.d.ts +2 -0
- package/dist/math/vec3/f32/add.js +7 -0
- package/dist/math/vec3/f32/add.js.map +1 -0
- package/dist/math/vec3/f32/asin.d.ts +2 -0
- package/dist/math/vec3/f32/asin.js +3 -0
- package/dist/math/vec3/f32/asin.js.map +1 -0
- package/dist/math/vec3/f32/asinh.d.ts +2 -0
- package/dist/math/vec3/f32/asinh.js +3 -0
- package/dist/math/vec3/f32/asinh.js.map +1 -0
- package/dist/math/vec3/f32/atan.d.ts +2 -0
- package/dist/math/vec3/f32/atan.js +3 -0
- package/dist/math/vec3/f32/atan.js.map +1 -0
- package/dist/math/vec3/f32/atanh.d.ts +2 -0
- package/dist/math/vec3/f32/atanh.js +3 -0
- package/dist/math/vec3/f32/atanh.js.map +1 -0
- package/dist/math/vec3/f32/ceil.d.ts +2 -0
- package/dist/math/vec3/f32/ceil.js +3 -0
- package/dist/math/vec3/f32/ceil.js.map +1 -0
- package/dist/math/vec3/f32/clamp.d.ts +2 -0
- package/dist/math/vec3/f32/clamp.js +5 -0
- package/dist/math/vec3/f32/clamp.js.map +1 -0
- package/dist/math/vec3/f32/cos.d.ts +2 -0
- package/dist/math/vec3/f32/cos.js +3 -0
- package/dist/math/vec3/f32/cos.js.map +1 -0
- package/dist/math/vec3/f32/cosh.d.ts +2 -0
- package/dist/math/vec3/f32/cosh.js +3 -0
- package/dist/math/vec3/f32/cosh.js.map +1 -0
- package/dist/math/vec3/f32/cross.d.ts +2 -0
- package/dist/math/vec3/f32/cross.js +7 -0
- package/dist/math/vec3/f32/cross.js.map +1 -0
- package/dist/math/vec3/f32/distance-squared.d.ts +2 -0
- package/dist/math/vec3/f32/distance-squared.js +8 -0
- package/dist/math/vec3/f32/distance-squared.js.map +1 -0
- package/dist/math/vec3/f32/distance.d.ts +2 -0
- package/dist/math/vec3/f32/distance.js +5 -0
- package/dist/math/vec3/f32/distance.js.map +1 -0
- package/dist/math/vec3/f32/dot.d.ts +2 -0
- package/dist/math/vec3/f32/dot.js +3 -0
- package/dist/math/vec3/f32/dot.js.map +1 -0
- package/dist/math/vec3/f32/equals.d.ts +2 -0
- package/dist/math/vec3/f32/equals.js +3 -0
- package/dist/math/vec3/f32/equals.js.map +1 -0
- package/dist/math/vec3/f32/exp.d.ts +2 -0
- package/dist/math/vec3/f32/exp.js +3 -0
- package/dist/math/vec3/f32/exp.js.map +1 -0
- package/dist/math/vec3/f32/exp2.d.ts +2 -0
- package/dist/math/vec3/f32/exp2.js +3 -0
- package/dist/math/vec3/f32/exp2.js.map +1 -0
- package/dist/math/vec3/f32/faceforward.d.ts +2 -0
- package/dist/math/vec3/f32/faceforward.js +5 -0
- package/dist/math/vec3/f32/faceforward.js.map +1 -0
- package/dist/math/vec3/f32/floor.d.ts +2 -0
- package/dist/math/vec3/f32/floor.js +3 -0
- package/dist/math/vec3/f32/floor.js.map +1 -0
- package/dist/math/vec3/f32/fract.d.ts +2 -0
- package/dist/math/vec3/f32/fract.js +7 -0
- package/dist/math/vec3/f32/fract.js.map +1 -0
- package/dist/math/vec3/f32/length-squared.d.ts +2 -0
- package/dist/math/vec3/f32/length-squared.js +3 -0
- package/dist/math/vec3/f32/length-squared.js.map +1 -0
- package/dist/math/vec3/f32/length.d.ts +2 -0
- package/dist/math/vec3/f32/length.js +3 -0
- package/dist/math/vec3/f32/length.js.map +1 -0
- package/dist/math/vec3/f32/log.d.ts +2 -0
- package/dist/math/vec3/f32/log.js +3 -0
- package/dist/math/vec3/f32/log.js.map +1 -0
- package/dist/math/vec3/f32/log2.d.ts +2 -0
- package/dist/math/vec3/f32/log2.js +3 -0
- package/dist/math/vec3/f32/log2.js.map +1 -0
- package/dist/math/vec3/f32/max.d.ts +2 -0
- package/dist/math/vec3/f32/max.js +7 -0
- package/dist/math/vec3/f32/max.js.map +1 -0
- package/dist/math/vec3/f32/min.d.ts +2 -0
- package/dist/math/vec3/f32/min.js +7 -0
- package/dist/math/vec3/f32/min.js.map +1 -0
- package/dist/math/vec3/f32/mix.d.ts +2 -0
- package/dist/math/vec3/f32/mix.js +7 -0
- package/dist/math/vec3/f32/mix.js.map +1 -0
- package/dist/math/vec3/f32/mod.d.ts +2 -0
- package/dist/math/vec3/f32/mod.js +7 -0
- package/dist/math/vec3/f32/mod.js.map +1 -0
- package/dist/math/vec3/f32/modf.d.ts +5 -0
- package/dist/math/vec3/f32/modf.js +6 -0
- package/dist/math/vec3/f32/modf.js.map +1 -0
- package/dist/math/vec3/f32/multiply.d.ts +5 -0
- package/dist/math/vec3/f32/multiply.js +10 -0
- package/dist/math/vec3/f32/multiply.js.map +1 -0
- package/dist/math/vec3/f32/negate.d.ts +2 -0
- package/dist/math/vec3/f32/negate.js +3 -0
- package/dist/math/vec3/f32/negate.js.map +1 -0
- package/dist/math/vec3/f32/normalize.d.ts +2 -0
- package/dist/math/vec3/f32/normalize.js +8 -0
- package/dist/math/vec3/f32/normalize.js.map +1 -0
- package/dist/math/vec3/f32/one.d.ts +2 -0
- package/dist/math/vec3/f32/one.js +3 -0
- package/dist/math/vec3/f32/one.js.map +1 -0
- package/dist/math/vec3/f32/pow.d.ts +2 -0
- package/dist/math/vec3/f32/pow.js +7 -0
- package/dist/math/vec3/f32/pow.js.map +1 -0
- package/dist/math/vec3/f32/public.d.ts +52 -1
- package/dist/math/vec3/f32/public.js +52 -1
- package/dist/math/vec3/f32/public.js.map +1 -1
- package/dist/math/vec3/f32/random.d.ts +2 -0
- package/dist/math/vec3/f32/random.js +5 -0
- package/dist/math/vec3/f32/random.js.map +1 -0
- package/dist/math/vec3/f32/reflect.d.ts +2 -0
- package/dist/math/vec3/f32/reflect.js +9 -0
- package/dist/math/vec3/f32/reflect.js.map +1 -0
- package/dist/math/vec3/f32/refract.d.ts +2 -0
- package/dist/math/vec3/f32/refract.js +14 -0
- package/dist/math/vec3/f32/refract.js.map +1 -0
- package/dist/math/vec3/f32/round.d.ts +2 -0
- package/dist/math/vec3/f32/round.js +3 -0
- package/dist/math/vec3/f32/round.js.map +1 -0
- package/dist/math/vec3/f32/scale.d.ts +2 -0
- package/dist/math/vec3/f32/scale.js +3 -0
- package/dist/math/vec3/f32/scale.js.map +1 -0
- package/dist/math/vec3/f32/sign.d.ts +2 -0
- package/dist/math/vec3/f32/sign.js +3 -0
- package/dist/math/vec3/f32/sign.js.map +1 -0
- package/dist/math/vec3/f32/sin.d.ts +2 -0
- package/dist/math/vec3/f32/sin.js +3 -0
- package/dist/math/vec3/f32/sin.js.map +1 -0
- package/dist/math/vec3/f32/sinh.d.ts +2 -0
- package/dist/math/vec3/f32/sinh.js +3 -0
- package/dist/math/vec3/f32/sinh.js.map +1 -0
- package/dist/math/vec3/f32/smoothstep.d.ts +2 -0
- package/dist/math/vec3/f32/smoothstep.js +12 -0
- package/dist/math/vec3/f32/smoothstep.js.map +1 -0
- package/dist/math/vec3/f32/sqrt.d.ts +2 -0
- package/dist/math/vec3/f32/sqrt.js +3 -0
- package/dist/math/vec3/f32/sqrt.js.map +1 -0
- package/dist/math/vec3/f32/step.d.ts +2 -0
- package/dist/math/vec3/f32/step.js +7 -0
- package/dist/math/vec3/f32/step.js.map +1 -0
- package/dist/math/vec3/f32/subtract.d.ts +2 -0
- package/dist/math/vec3/f32/subtract.js +7 -0
- package/dist/math/vec3/f32/subtract.js.map +1 -0
- package/dist/math/vec3/f32/tan.d.ts +2 -0
- package/dist/math/vec3/f32/tan.js +3 -0
- package/dist/math/vec3/f32/tan.js.map +1 -0
- package/dist/math/vec3/f32/tanh.d.ts +2 -0
- package/dist/math/vec3/f32/tanh.js +3 -0
- package/dist/math/vec3/f32/tanh.js.map +1 -0
- package/dist/math/vec3/f32/trunc.d.ts +2 -0
- package/dist/math/vec3/f32/trunc.js +3 -0
- package/dist/math/vec3/f32/trunc.js.map +1 -0
- package/dist/math/vec3/f32/zero.d.ts +2 -0
- package/dist/math/vec3/f32/zero.js +3 -0
- package/dist/math/vec3/f32/zero.js.map +1 -0
- package/dist/math/vec3/i32/abs.d.ts +2 -0
- package/dist/math/vec3/i32/abs.js +3 -0
- package/dist/math/vec3/i32/abs.js.map +1 -0
- package/dist/math/vec3/i32/add.d.ts +2 -0
- package/dist/math/vec3/i32/add.js +7 -0
- package/dist/math/vec3/i32/add.js.map +1 -0
- package/dist/math/vec3/i32/bitwise-and.d.ts +2 -0
- package/dist/math/vec3/i32/bitwise-and.js +7 -0
- package/dist/math/vec3/i32/bitwise-and.js.map +1 -0
- package/dist/math/vec3/i32/bitwise-not.d.ts +2 -0
- package/dist/math/vec3/i32/bitwise-not.js +3 -0
- package/dist/math/vec3/i32/bitwise-not.js.map +1 -0
- package/dist/math/vec3/i32/bitwise-or.d.ts +2 -0
- package/dist/math/vec3/i32/bitwise-or.js +7 -0
- package/dist/math/vec3/i32/bitwise-or.js.map +1 -0
- package/dist/math/vec3/i32/bitwise-xor.d.ts +2 -0
- package/dist/math/vec3/i32/bitwise-xor.js +7 -0
- package/dist/math/vec3/i32/bitwise-xor.js.map +1 -0
- package/dist/math/vec3/i32/clamp.d.ts +2 -0
- package/dist/math/vec3/i32/clamp.js +5 -0
- package/dist/math/vec3/i32/clamp.js.map +1 -0
- package/dist/math/vec3/i32/count-leading-zeros.d.ts +2 -0
- package/dist/math/vec3/i32/count-leading-zeros.js +8 -0
- package/dist/math/vec3/i32/count-leading-zeros.js.map +1 -0
- package/dist/math/vec3/i32/count-one-bits.d.ts +2 -0
- package/dist/math/vec3/i32/count-one-bits.js +8 -0
- package/dist/math/vec3/i32/count-one-bits.js.map +1 -0
- package/dist/math/vec3/i32/count-trailing-zeros.d.ts +2 -0
- package/dist/math/vec3/i32/count-trailing-zeros.js +8 -0
- package/dist/math/vec3/i32/count-trailing-zeros.js.map +1 -0
- package/dist/math/vec3/i32/equals.d.ts +2 -0
- package/dist/math/vec3/i32/equals.js +3 -0
- package/dist/math/vec3/i32/equals.js.map +1 -0
- package/dist/math/vec3/i32/max.d.ts +2 -0
- package/dist/math/vec3/i32/max.js +7 -0
- package/dist/math/vec3/i32/max.js.map +1 -0
- package/dist/math/vec3/i32/min.d.ts +2 -0
- package/dist/math/vec3/i32/min.js +7 -0
- package/dist/math/vec3/i32/min.js.map +1 -0
- package/dist/math/vec3/i32/multiply.d.ts +2 -0
- package/dist/math/vec3/i32/multiply.js +7 -0
- package/dist/math/vec3/i32/multiply.js.map +1 -0
- package/dist/math/vec3/i32/negate.d.ts +2 -0
- package/dist/math/vec3/i32/negate.js +3 -0
- package/dist/math/vec3/i32/negate.js.map +1 -0
- package/dist/math/vec3/i32/one.d.ts +2 -0
- package/dist/math/vec3/i32/one.js +3 -0
- package/dist/math/vec3/i32/one.js.map +1 -0
- package/dist/math/vec3/i32/public.d.ts +22 -1
- package/dist/math/vec3/i32/public.js +22 -1
- package/dist/math/vec3/i32/public.js.map +1 -1
- package/dist/math/vec3/i32/reverse-bits.d.ts +2 -0
- package/dist/math/vec3/i32/reverse-bits.js +8 -0
- package/dist/math/vec3/i32/reverse-bits.js.map +1 -0
- package/dist/math/vec3/i32/scale.d.ts +2 -0
- package/dist/math/vec3/i32/scale.js +3 -0
- package/dist/math/vec3/i32/scale.js.map +1 -0
- package/dist/math/vec3/i32/shift-left.d.ts +2 -0
- package/dist/math/vec3/i32/shift-left.js +3 -0
- package/dist/math/vec3/i32/shift-left.js.map +1 -0
- package/dist/math/vec3/i32/shift-right.d.ts +2 -0
- package/dist/math/vec3/i32/shift-right.js +8 -0
- package/dist/math/vec3/i32/shift-right.js.map +1 -0
- package/dist/math/vec3/i32/subtract.d.ts +2 -0
- package/dist/math/vec3/i32/subtract.js +7 -0
- package/dist/math/vec3/i32/subtract.js.map +1 -0
- package/dist/math/vec3/i32/zero.d.ts +2 -0
- package/dist/math/vec3/i32/zero.js +3 -0
- package/dist/math/vec3/i32/zero.js.map +1 -0
- package/dist/math/vec3/public.d.ts +1 -1
- package/dist/math/vec3/public.js +1 -1
- package/dist/math/vec3/public.js.map +1 -1
- package/dist/math/vec3/u32/add.d.ts +2 -0
- package/dist/math/vec3/u32/add.js +7 -0
- package/dist/math/vec3/u32/add.js.map +1 -0
- package/dist/math/vec3/u32/bitwise-and.d.ts +2 -0
- package/dist/math/vec3/u32/bitwise-and.js +7 -0
- package/dist/math/vec3/u32/bitwise-and.js.map +1 -0
- package/dist/math/vec3/u32/bitwise-not.d.ts +2 -0
- package/dist/math/vec3/u32/bitwise-not.js +3 -0
- package/dist/math/vec3/u32/bitwise-not.js.map +1 -0
- package/dist/math/vec3/u32/bitwise-or.d.ts +2 -0
- package/dist/math/vec3/u32/bitwise-or.js +7 -0
- package/dist/math/vec3/u32/bitwise-or.js.map +1 -0
- package/dist/math/vec3/u32/bitwise-xor.d.ts +2 -0
- package/dist/math/vec3/u32/bitwise-xor.js +7 -0
- package/dist/math/vec3/u32/bitwise-xor.js.map +1 -0
- package/dist/math/vec3/u32/clamp.d.ts +2 -0
- package/dist/math/vec3/u32/clamp.js +5 -0
- package/dist/math/vec3/u32/clamp.js.map +1 -0
- package/dist/math/vec3/u32/count-leading-zeros.d.ts +2 -0
- package/dist/math/vec3/u32/count-leading-zeros.js +8 -0
- package/dist/math/vec3/u32/count-leading-zeros.js.map +1 -0
- package/dist/math/vec3/u32/count-one-bits.d.ts +2 -0
- package/dist/math/vec3/u32/count-one-bits.js +8 -0
- package/dist/math/vec3/u32/count-one-bits.js.map +1 -0
- package/dist/math/vec3/u32/count-trailing-zeros.d.ts +2 -0
- package/dist/math/vec3/u32/count-trailing-zeros.js +8 -0
- package/dist/math/vec3/u32/count-trailing-zeros.js.map +1 -0
- package/dist/math/vec3/u32/equals.d.ts +2 -0
- package/dist/math/vec3/u32/equals.js +3 -0
- package/dist/math/vec3/u32/equals.js.map +1 -0
- package/dist/math/vec3/u32/max.d.ts +2 -0
- package/dist/math/vec3/u32/max.js +7 -0
- package/dist/math/vec3/u32/max.js.map +1 -0
- package/dist/math/vec3/u32/min.d.ts +2 -0
- package/dist/math/vec3/u32/min.js +7 -0
- package/dist/math/vec3/u32/min.js.map +1 -0
- package/dist/math/vec3/u32/multiply.d.ts +2 -0
- package/dist/math/vec3/u32/multiply.js +7 -0
- package/dist/math/vec3/u32/multiply.js.map +1 -0
- package/dist/math/vec3/u32/negate.d.ts +2 -0
- package/dist/math/vec3/u32/negate.js +3 -0
- package/dist/math/vec3/u32/negate.js.map +1 -0
- package/dist/math/vec3/u32/one.d.ts +2 -0
- package/dist/math/vec3/u32/one.js +3 -0
- package/dist/math/vec3/u32/one.js.map +1 -0
- package/dist/math/vec3/u32/public.d.ts +22 -1
- package/dist/math/vec3/u32/public.js +22 -1
- package/dist/math/vec3/u32/public.js.map +1 -1
- package/dist/math/vec3/u32/reverse-bits.d.ts +2 -0
- package/dist/math/vec3/u32/reverse-bits.js +8 -0
- package/dist/math/vec3/u32/reverse-bits.js.map +1 -0
- package/dist/math/vec3/u32/scale.d.ts +2 -0
- package/dist/math/vec3/u32/scale.js +7 -0
- package/dist/math/vec3/u32/scale.js.map +1 -0
- package/dist/math/vec3/u32/shift-left.d.ts +2 -0
- package/dist/math/vec3/u32/shift-left.js +7 -0
- package/dist/math/vec3/u32/shift-left.js.map +1 -0
- package/dist/math/vec3/u32/shift-right.d.ts +2 -0
- package/dist/math/vec3/u32/shift-right.js +8 -0
- package/dist/math/vec3/u32/shift-right.js.map +1 -0
- package/dist/math/vec3/u32/subtract.d.ts +2 -0
- package/dist/math/vec3/u32/subtract.js +7 -0
- package/dist/math/vec3/u32/subtract.js.map +1 -0
- package/dist/math/vec3/u32/volume.d.ts +2 -0
- package/dist/math/vec3/u32/volume.js +3 -0
- package/dist/math/vec3/u32/volume.js.map +1 -0
- package/dist/math/vec3/u32/zero.d.ts +2 -0
- package/dist/math/vec3/u32/zero.js +3 -0
- package/dist/math/vec3/u32/zero.js.map +1 -0
- package/dist/math/vec4/f32/abs.d.ts +2 -0
- package/dist/math/vec4/f32/abs.js +3 -0
- package/dist/math/vec4/f32/abs.js.map +1 -0
- package/dist/math/vec4/f32/acos.d.ts +2 -0
- package/dist/math/vec4/f32/acos.js +3 -0
- package/dist/math/vec4/f32/acos.js.map +1 -0
- package/dist/math/vec4/f32/acosh.d.ts +2 -0
- package/dist/math/vec4/f32/acosh.js +3 -0
- package/dist/math/vec4/f32/acosh.js.map +1 -0
- package/dist/math/vec4/f32/add.d.ts +2 -0
- package/dist/math/vec4/f32/add.js +8 -0
- package/dist/math/vec4/f32/add.js.map +1 -0
- package/dist/math/vec4/f32/asin.d.ts +2 -0
- package/dist/math/vec4/f32/asin.js +3 -0
- package/dist/math/vec4/f32/asin.js.map +1 -0
- package/dist/math/vec4/f32/asinh.d.ts +2 -0
- package/dist/math/vec4/f32/asinh.js +3 -0
- package/dist/math/vec4/f32/asinh.js.map +1 -0
- package/dist/math/vec4/f32/atan.d.ts +2 -0
- package/dist/math/vec4/f32/atan.js +3 -0
- package/dist/math/vec4/f32/atan.js.map +1 -0
- package/dist/math/vec4/f32/atanh.d.ts +2 -0
- package/dist/math/vec4/f32/atanh.js +3 -0
- package/dist/math/vec4/f32/atanh.js.map +1 -0
- package/dist/math/vec4/f32/ceil.d.ts +2 -0
- package/dist/math/vec4/f32/ceil.js +3 -0
- package/dist/math/vec4/f32/ceil.js.map +1 -0
- package/dist/math/vec4/f32/clamp.d.ts +2 -0
- package/dist/math/vec4/f32/clamp.js +5 -0
- package/dist/math/vec4/f32/clamp.js.map +1 -0
- package/dist/math/vec4/f32/cos.d.ts +2 -0
- package/dist/math/vec4/f32/cos.js +3 -0
- package/dist/math/vec4/f32/cos.js.map +1 -0
- package/dist/math/vec4/f32/cosh.d.ts +2 -0
- package/dist/math/vec4/f32/cosh.js +3 -0
- package/dist/math/vec4/f32/cosh.js.map +1 -0
- package/dist/math/vec4/f32/distance.d.ts +2 -0
- package/dist/math/vec4/f32/distance.js +5 -0
- package/dist/math/vec4/f32/distance.js.map +1 -0
- package/dist/math/vec4/f32/dot.d.ts +2 -0
- package/dist/math/vec4/f32/dot.js +3 -0
- package/dist/math/vec4/f32/dot.js.map +1 -0
- package/dist/math/vec4/f32/exp.d.ts +2 -0
- package/dist/math/vec4/f32/exp.js +3 -0
- package/dist/math/vec4/f32/exp.js.map +1 -0
- package/dist/math/vec4/f32/exp2.d.ts +2 -0
- package/dist/math/vec4/f32/exp2.js +3 -0
- package/dist/math/vec4/f32/exp2.js.map +1 -0
- package/dist/math/vec4/f32/faceforward.d.ts +2 -0
- package/dist/math/vec4/f32/faceforward.js +5 -0
- package/dist/math/vec4/f32/faceforward.js.map +1 -0
- package/dist/math/vec4/f32/floor.d.ts +2 -0
- package/dist/math/vec4/f32/floor.js +3 -0
- package/dist/math/vec4/f32/floor.js.map +1 -0
- package/dist/math/vec4/f32/fract.d.ts +2 -0
- package/dist/math/vec4/f32/fract.js +8 -0
- package/dist/math/vec4/f32/fract.js.map +1 -0
- package/dist/math/vec4/f32/length.d.ts +2 -0
- package/dist/math/vec4/f32/length.js +3 -0
- package/dist/math/vec4/f32/length.js.map +1 -0
- package/dist/math/vec4/f32/log.d.ts +2 -0
- package/dist/math/vec4/f32/log.js +3 -0
- package/dist/math/vec4/f32/log.js.map +1 -0
- package/dist/math/vec4/f32/log2.d.ts +2 -0
- package/dist/math/vec4/f32/log2.js +3 -0
- package/dist/math/vec4/f32/log2.js.map +1 -0
- package/dist/math/vec4/f32/max.d.ts +2 -0
- package/dist/math/vec4/f32/max.js +8 -0
- package/dist/math/vec4/f32/max.js.map +1 -0
- package/dist/math/vec4/f32/min.d.ts +2 -0
- package/dist/math/vec4/f32/min.js +8 -0
- package/dist/math/vec4/f32/min.js.map +1 -0
- package/dist/math/vec4/f32/mix.d.ts +2 -0
- package/dist/math/vec4/f32/mix.js +8 -0
- package/dist/math/vec4/f32/mix.js.map +1 -0
- package/dist/math/vec4/f32/mod.d.ts +2 -0
- package/dist/math/vec4/f32/mod.js +8 -0
- package/dist/math/vec4/f32/mod.js.map +1 -0
- package/dist/math/vec4/f32/modf.d.ts +5 -0
- package/dist/math/vec4/f32/modf.js +6 -0
- package/dist/math/vec4/f32/modf.js.map +1 -0
- package/dist/math/vec4/f32/multiply.d.ts +2 -0
- package/dist/math/vec4/f32/multiply.js +8 -0
- package/dist/math/vec4/f32/multiply.js.map +1 -0
- package/dist/math/vec4/f32/negate.d.ts +2 -0
- package/dist/math/vec4/f32/negate.js +3 -0
- package/dist/math/vec4/f32/negate.js.map +1 -0
- package/dist/math/vec4/f32/normalize.d.ts +2 -0
- package/dist/math/vec4/f32/normalize.js +8 -0
- package/dist/math/vec4/f32/normalize.js.map +1 -0
- package/dist/math/vec4/f32/pow.d.ts +2 -0
- package/dist/math/vec4/f32/pow.js +8 -0
- package/dist/math/vec4/f32/pow.js.map +1 -0
- package/dist/math/vec4/f32/public.d.ts +45 -1
- package/dist/math/vec4/f32/public.js +45 -1
- package/dist/math/vec4/f32/public.js.map +1 -1
- package/dist/math/vec4/f32/reflect.d.ts +2 -0
- package/dist/math/vec4/f32/reflect.js +9 -0
- package/dist/math/vec4/f32/reflect.js.map +1 -0
- package/dist/math/vec4/f32/refract.d.ts +2 -0
- package/dist/math/vec4/f32/refract.js +14 -0
- package/dist/math/vec4/f32/refract.js.map +1 -0
- package/dist/math/vec4/f32/round.d.ts +2 -0
- package/dist/math/vec4/f32/round.js +3 -0
- package/dist/math/vec4/f32/round.js.map +1 -0
- package/dist/math/vec4/f32/scale.d.ts +2 -0
- package/dist/math/vec4/f32/scale.js +3 -0
- package/dist/math/vec4/f32/scale.js.map +1 -0
- package/dist/math/vec4/f32/sign.d.ts +2 -0
- package/dist/math/vec4/f32/sign.js +3 -0
- package/dist/math/vec4/f32/sign.js.map +1 -0
- package/dist/math/vec4/f32/sin.d.ts +2 -0
- package/dist/math/vec4/f32/sin.js +3 -0
- package/dist/math/vec4/f32/sin.js.map +1 -0
- package/dist/math/vec4/f32/sinh.d.ts +2 -0
- package/dist/math/vec4/f32/sinh.js +3 -0
- package/dist/math/vec4/f32/sinh.js.map +1 -0
- package/dist/math/vec4/f32/smoothstep.d.ts +2 -0
- package/dist/math/vec4/f32/smoothstep.js +14 -0
- package/dist/math/vec4/f32/smoothstep.js.map +1 -0
- package/dist/math/vec4/f32/sqrt.d.ts +2 -0
- package/dist/math/vec4/f32/sqrt.js +3 -0
- package/dist/math/vec4/f32/sqrt.js.map +1 -0
- package/dist/math/vec4/f32/step.d.ts +2 -0
- package/dist/math/vec4/f32/step.js +8 -0
- package/dist/math/vec4/f32/step.js.map +1 -0
- package/dist/math/vec4/f32/subtract.d.ts +2 -0
- package/dist/math/vec4/f32/subtract.js +8 -0
- package/dist/math/vec4/f32/subtract.js.map +1 -0
- package/dist/math/vec4/f32/tan.d.ts +2 -0
- package/dist/math/vec4/f32/tan.js +3 -0
- package/dist/math/vec4/f32/tan.js.map +1 -0
- package/dist/math/vec4/f32/tanh.d.ts +2 -0
- package/dist/math/vec4/f32/tanh.js +3 -0
- package/dist/math/vec4/f32/tanh.js.map +1 -0
- package/dist/math/vec4/f32/trunc.d.ts +2 -0
- package/dist/math/vec4/f32/trunc.js +3 -0
- package/dist/math/vec4/f32/trunc.js.map +1 -0
- package/dist/math/vec4/i32/abs.d.ts +2 -0
- package/dist/math/vec4/i32/abs.js +3 -0
- package/dist/math/vec4/i32/abs.js.map +1 -0
- package/dist/math/vec4/i32/add.d.ts +2 -0
- package/dist/math/vec4/i32/add.js +8 -0
- package/dist/math/vec4/i32/add.js.map +1 -0
- package/dist/math/vec4/i32/bitwise-and.d.ts +2 -0
- package/dist/math/vec4/i32/bitwise-and.js +8 -0
- package/dist/math/vec4/i32/bitwise-and.js.map +1 -0
- package/dist/math/vec4/i32/bitwise-not.d.ts +2 -0
- package/dist/math/vec4/i32/bitwise-not.js +3 -0
- package/dist/math/vec4/i32/bitwise-not.js.map +1 -0
- package/dist/math/vec4/i32/bitwise-or.d.ts +2 -0
- package/dist/math/vec4/i32/bitwise-or.js +8 -0
- package/dist/math/vec4/i32/bitwise-or.js.map +1 -0
- package/dist/math/vec4/i32/bitwise-xor.d.ts +2 -0
- package/dist/math/vec4/i32/bitwise-xor.js +8 -0
- package/dist/math/vec4/i32/bitwise-xor.js.map +1 -0
- package/dist/math/vec4/i32/clamp.d.ts +2 -0
- package/dist/math/vec4/i32/clamp.js +5 -0
- package/dist/math/vec4/i32/clamp.js.map +1 -0
- package/dist/math/vec4/i32/count-leading-zeros.d.ts +2 -0
- package/dist/math/vec4/i32/count-leading-zeros.js +9 -0
- package/dist/math/vec4/i32/count-leading-zeros.js.map +1 -0
- package/dist/math/vec4/i32/count-one-bits.d.ts +2 -0
- package/dist/math/vec4/i32/count-one-bits.js +9 -0
- package/dist/math/vec4/i32/count-one-bits.js.map +1 -0
- package/dist/math/vec4/i32/count-trailing-zeros.d.ts +2 -0
- package/dist/math/vec4/i32/count-trailing-zeros.js +9 -0
- package/dist/math/vec4/i32/count-trailing-zeros.js.map +1 -0
- package/dist/math/vec4/i32/equals.d.ts +2 -0
- package/dist/math/vec4/i32/equals.js +3 -0
- package/dist/math/vec4/i32/equals.js.map +1 -0
- package/dist/math/vec4/i32/max.d.ts +2 -0
- package/dist/math/vec4/i32/max.js +8 -0
- package/dist/math/vec4/i32/max.js.map +1 -0
- package/dist/math/vec4/i32/min.d.ts +2 -0
- package/dist/math/vec4/i32/min.js +8 -0
- package/dist/math/vec4/i32/min.js.map +1 -0
- package/dist/math/vec4/i32/multiply.d.ts +2 -0
- package/dist/math/vec4/i32/multiply.js +8 -0
- package/dist/math/vec4/i32/multiply.js.map +1 -0
- package/dist/math/vec4/i32/negate.d.ts +2 -0
- package/dist/math/vec4/i32/negate.js +3 -0
- package/dist/math/vec4/i32/negate.js.map +1 -0
- package/dist/math/vec4/i32/one.d.ts +2 -0
- package/dist/math/vec4/i32/one.js +3 -0
- package/dist/math/vec4/i32/one.js.map +1 -0
- package/dist/math/vec4/i32/public.d.ts +22 -1
- package/dist/math/vec4/i32/public.js +22 -1
- package/dist/math/vec4/i32/public.js.map +1 -1
- package/dist/math/vec4/i32/reverse-bits.d.ts +2 -0
- package/dist/math/vec4/i32/reverse-bits.js +9 -0
- package/dist/math/vec4/i32/reverse-bits.js.map +1 -0
- package/dist/math/vec4/i32/scale.d.ts +2 -0
- package/dist/math/vec4/i32/scale.js +3 -0
- package/dist/math/vec4/i32/scale.js.map +1 -0
- package/dist/math/vec4/i32/shift-left.d.ts +2 -0
- package/dist/math/vec4/i32/shift-left.js +3 -0
- package/dist/math/vec4/i32/shift-left.js.map +1 -0
- package/dist/math/vec4/i32/shift-right.d.ts +2 -0
- package/dist/math/vec4/i32/shift-right.js +9 -0
- package/dist/math/vec4/i32/shift-right.js.map +1 -0
- package/dist/math/vec4/i32/subtract.d.ts +2 -0
- package/dist/math/vec4/i32/subtract.js +8 -0
- package/dist/math/vec4/i32/subtract.js.map +1 -0
- package/dist/math/vec4/i32/zero.d.ts +2 -0
- package/dist/math/vec4/i32/zero.js +3 -0
- package/dist/math/vec4/i32/zero.js.map +1 -0
- package/dist/math/vec4/public.d.ts +1 -1
- package/dist/math/vec4/public.js +1 -1
- package/dist/math/vec4/public.js.map +1 -1
- package/dist/math/vec4/u32/add.d.ts +2 -0
- package/dist/math/vec4/u32/add.js +8 -0
- package/dist/math/vec4/u32/add.js.map +1 -0
- package/dist/math/vec4/u32/bitwise-and.d.ts +2 -0
- package/dist/math/vec4/u32/bitwise-and.js +8 -0
- package/dist/math/vec4/u32/bitwise-and.js.map +1 -0
- package/dist/math/vec4/u32/bitwise-not.d.ts +2 -0
- package/dist/math/vec4/u32/bitwise-not.js +3 -0
- package/dist/math/vec4/u32/bitwise-not.js.map +1 -0
- package/dist/math/vec4/u32/bitwise-or.d.ts +2 -0
- package/dist/math/vec4/u32/bitwise-or.js +8 -0
- package/dist/math/vec4/u32/bitwise-or.js.map +1 -0
- package/dist/math/vec4/u32/bitwise-xor.d.ts +2 -0
- package/dist/math/vec4/u32/bitwise-xor.js +8 -0
- package/dist/math/vec4/u32/bitwise-xor.js.map +1 -0
- package/dist/math/vec4/u32/clamp.d.ts +2 -0
- package/dist/math/vec4/u32/clamp.js +5 -0
- package/dist/math/vec4/u32/clamp.js.map +1 -0
- package/dist/math/vec4/u32/count-leading-zeros.d.ts +2 -0
- package/dist/math/vec4/u32/count-leading-zeros.js +9 -0
- package/dist/math/vec4/u32/count-leading-zeros.js.map +1 -0
- package/dist/math/vec4/u32/count-one-bits.d.ts +2 -0
- package/dist/math/vec4/u32/count-one-bits.js +9 -0
- package/dist/math/vec4/u32/count-one-bits.js.map +1 -0
- package/dist/math/vec4/u32/count-trailing-zeros.d.ts +2 -0
- package/dist/math/vec4/u32/count-trailing-zeros.js +9 -0
- package/dist/math/vec4/u32/count-trailing-zeros.js.map +1 -0
- package/dist/math/vec4/u32/equals.d.ts +2 -0
- package/dist/math/vec4/u32/equals.js +3 -0
- package/dist/math/vec4/u32/equals.js.map +1 -0
- package/dist/math/vec4/u32/max.d.ts +2 -0
- package/dist/math/vec4/u32/max.js +8 -0
- package/dist/math/vec4/u32/max.js.map +1 -0
- package/dist/math/vec4/u32/min.d.ts +2 -0
- package/dist/math/vec4/u32/min.js +8 -0
- package/dist/math/vec4/u32/min.js.map +1 -0
- package/dist/math/vec4/u32/multiply.d.ts +2 -0
- package/dist/math/vec4/u32/multiply.js +8 -0
- package/dist/math/vec4/u32/multiply.js.map +1 -0
- package/dist/math/vec4/u32/negate.d.ts +2 -0
- package/dist/math/vec4/u32/negate.js +3 -0
- package/dist/math/vec4/u32/negate.js.map +1 -0
- package/dist/math/vec4/u32/one.d.ts +2 -0
- package/dist/math/vec4/u32/one.js +3 -0
- package/dist/math/vec4/u32/one.js.map +1 -0
- package/dist/math/vec4/u32/public.d.ts +21 -1
- package/dist/math/vec4/u32/public.js +21 -1
- package/dist/math/vec4/u32/public.js.map +1 -1
- package/dist/math/vec4/u32/reverse-bits.d.ts +2 -0
- package/dist/math/vec4/u32/reverse-bits.js +9 -0
- package/dist/math/vec4/u32/reverse-bits.js.map +1 -0
- package/dist/math/vec4/u32/scale.d.ts +2 -0
- package/dist/math/vec4/u32/scale.js +8 -0
- package/dist/math/vec4/u32/scale.js.map +1 -0
- package/dist/math/vec4/u32/shift-left.d.ts +2 -0
- package/dist/math/vec4/u32/shift-left.js +8 -0
- package/dist/math/vec4/u32/shift-left.js.map +1 -0
- package/dist/math/vec4/u32/shift-right.d.ts +2 -0
- package/dist/math/vec4/u32/shift-right.js +9 -0
- package/dist/math/vec4/u32/shift-right.js.map +1 -0
- package/dist/math/vec4/u32/subtract.d.ts +2 -0
- package/dist/math/vec4/u32/subtract.js +8 -0
- package/dist/math/vec4/u32/subtract.js.map +1 -0
- package/dist/math/vec4/u32/zero.d.ts +2 -0
- package/dist/math/vec4/u32/zero.js +3 -0
- package/dist/math/vec4/u32/zero.js.map +1 -0
- package/dist/schema/from-archetype.d.ts +7 -4
- package/dist/schema/from-archetype.js +3 -3
- package/dist/schema/from-archetype.js.map +1 -1
- package/dist/schema/from-object-properties.d.ts +15 -0
- package/dist/schema/from-object-properties.js +9 -0
- package/dist/schema/from-object-properties.js.map +1 -0
- package/dist/schema/from-object-properties.test.d.ts +1 -0
- package/dist/schema/from-object-properties.test.js +49 -0
- package/dist/schema/from-object-properties.test.js.map +1 -0
- package/dist/schema/from-object-properties.type-test.d.ts +1 -0
- package/dist/schema/from-object-properties.type-test.js +37 -0
- package/dist/schema/from-object-properties.type-test.js.map +1 -0
- package/dist/schema/from-struct-properties.d.ts +8 -0
- package/dist/schema/from-struct-properties.js +7 -0
- package/dist/schema/from-struct-properties.js.map +1 -0
- package/dist/schema/from-struct-properties.test.d.ts +1 -0
- package/dist/schema/from-struct-properties.test.js +28 -0
- package/dist/schema/from-struct-properties.test.js.map +1 -0
- package/dist/schema/from-struct-properties.type-test.d.ts +1 -0
- package/dist/schema/from-struct-properties.type-test.js +11 -0
- package/dist/schema/from-struct-properties.type-test.js.map +1 -0
- package/dist/schema/guid/guid.performance.test.js +0 -3
- package/dist/schema/guid/guid.performance.test.js.map +1 -1
- package/dist/schema/public.d.ts +2 -1
- package/dist/schema/public.js +2 -1
- package/dist/schema/public.js.map +1 -1
- package/dist/schema/schema.d.ts +2 -0
- package/dist/service/service.d.ts +1 -1
- package/dist/service/ui-service/from-service.d.ts +19 -3
- package/dist/service/ui-service/from-service.transaction.type-test.d.ts +1 -0
- package/dist/service/ui-service/from-service.transaction.type-test.js +14 -0
- package/dist/service/ui-service/from-service.transaction.type-test.js.map +1 -0
- package/dist/service/ui-service/is-valid.d.ts +5 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/async-args-provider.d.ts +17 -0
- package/dist/types/async-args-provider.js +3 -0
- package/dist/types/async-args-provider.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/index.js.map +1 -1
- package/package.json +1 -1
- package/references/data-lit/package.json +6 -2
- package/references/data-lit/src/elements/database-element.ts +36 -1
- package/references/data-lit/src/elements/database-element.type-test.ts +20 -0
- package/references/data-lit/src/index.ts +1 -0
- package/references/data-lit/src/testing/template/from.test.ts +47 -0
- package/references/data-lit/src/testing/template/from.ts +86 -0
- package/references/data-lit/src/testing/template/public.ts +3 -0
- package/references/data-lit/src/testing/template/query.ts +27 -0
- package/references/data-lit/src/testing/template/template.ts +4 -0
- package/references/data-lit-tictactoe/package.json +6 -2
- package/references/data-lit-tictactoe/src/features/main/data/board-cell/blank.ts +5 -0
- package/references/data-lit-tictactoe/src/features/main/data/board-cell/board-cell.ts +5 -0
- package/references/data-lit-tictactoe/src/{types/play-move-args → features/main/data/board-cell}/public.ts +1 -2
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/board-state.ts +2 -2
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/create-initial-board.ts +2 -2
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/current-player.ts +2 -2
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/derive-status.ts +4 -4
- package/references/data-lit-tictactoe/src/features/main/data/board-state/from-marks.ts +11 -0
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/get-move-count.ts +1 -1
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/get-winner.ts +4 -4
- package/references/data-lit-tictactoe/src/features/main/data/board-state/get-winning-line.ts +15 -0
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/is-board-full.ts +1 -1
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/is-game-over.ts +3 -3
- package/references/data-lit-tictactoe/src/features/main/data/board-state/public.ts +13 -0
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/schema.ts +3 -1
- package/references/data-lit-tictactoe/src/{types → features/main/data}/board-state/set-board-cell.ts +3 -3
- package/references/data-lit-tictactoe/src/features/main/data/cell-index/cell-index.ts +6 -0
- package/references/data-lit-tictactoe/src/features/main/data/cell-index/public.ts +2 -0
- package/references/data-lit-tictactoe/src/features/main/data/cell-index/schema.ts +9 -0
- package/references/data-lit-tictactoe/src/features/main/data/game-status/game-status.ts +6 -0
- package/references/data-lit-tictactoe/src/features/main/data/game-status/is-active.ts +6 -0
- package/references/data-lit-tictactoe/src/features/main/data/game-status/public.ts +3 -0
- package/references/data-lit-tictactoe/src/features/main/data/game-status/schema.ts +7 -0
- package/references/data-lit-tictactoe/src/features/main/data/move-reject-reason/move-reject-reason.ts +6 -0
- package/references/data-lit-tictactoe/src/features/main/data/move-reject-reason/public.ts +2 -0
- package/references/data-lit-tictactoe/src/features/main/data/move-reject-reason/schema.ts +7 -0
- package/references/data-lit-tictactoe/src/features/main/data/placed-mark/placed-mark.ts +6 -0
- package/references/data-lit-tictactoe/src/features/main/data/placed-mark/public.ts +2 -0
- package/references/data-lit-tictactoe/src/features/main/data/placed-mark/schema.ts +12 -0
- package/references/data-lit-tictactoe/src/{types → features/main/data}/play-move-args/can-play-move.ts +9 -5
- package/references/data-lit-tictactoe/src/{types → features/main/data}/play-move-args/play-move-args.ts +1 -1
- package/references/data-lit-tictactoe/src/features/main/data/play-move-args/public.ts +3 -0
- package/references/data-lit-tictactoe/src/{types → features/main/data}/player-mark/is.ts +2 -2
- package/references/data-lit-tictactoe/src/{types → features/main/data}/player-mark/mark-color.ts +1 -1
- package/references/data-lit-tictactoe/src/{types → features/main/data}/player-mark/opponent.ts +1 -1
- package/references/data-lit-tictactoe/src/{types → features/main/data}/player-mark/player-mark.ts +2 -2
- package/references/data-lit-tictactoe/src/features/main/data/player-mark/public.ts +7 -0
- package/references/data-lit-tictactoe/src/{types → features/main/data}/player-mark/schema.ts +1 -1
- package/references/data-lit-tictactoe/src/{types → features/main/data}/player-mark/values.ts +2 -2
- package/references/data-lit-tictactoe/src/features/main/data/score/public.ts +2 -0
- package/references/data-lit-tictactoe/src/features/main/data/score/schema.ts +9 -0
- package/references/data-lit-tictactoe/src/features/main/data/score/score.ts +6 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/conformance-case.ts +13 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/expect-state-matches.ts +36 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/play-move.cases.ts +47 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/play-move.test.ts +13 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/play-move.ts +20 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/public.ts +3 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/restart-game.cases.ts +34 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/restart-game.test.ts +13 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/restart-game.ts +18 -0
- package/references/data-lit-tictactoe/src/features/main/data/state/state.ts +15 -0
- package/references/data-lit-tictactoe/src/features/main/data/winning-line/lines.ts +14 -0
- package/references/data-lit-tictactoe/src/features/main/data/winning-line/public.ts +2 -0
- package/references/data-lit-tictactoe/src/{types → features/main/data/winning-line}/winning-line.ts +1 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/board.ts +22 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/current-player.ts +12 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/index.ts +9 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/is-game-over.ts +10 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/move-count.ts +10 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/state.ts +29 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/status.ts +10 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/winner.ts +10 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed/winning-line.ts +10 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/computed-database/computed-database.ts +18 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/conformance/create-store.ts +12 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/conformance/expect-conforms.ts +42 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/conformance/from-state.ts +31 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/conformance/projection.test.ts +38 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/conformance/to-state.ts +30 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/core-database/archetypes.ts +17 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/core-database/components.ts +11 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/core-database/core-database.ts +35 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/core-database/resources.ts +13 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/feature-database.ts +7 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/index-database/index-database.ts +16 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/index-database/indexes/by-cell.ts +9 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/index-database/indexes/index.ts +2 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/service-database/service-database.ts +26 -0
- package/references/data-lit-tictactoe/src/{state/agent-plugin.ts → features/main/ecs/service-database/services/create-agent-service.ts} +14 -40
- package/references/data-lit-tictactoe/src/features/main/ecs/service-database/services/create-root-agent-service.ts +26 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/service-database/services/index.ts +3 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/transaction-database/transaction-database.ts +18 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/transaction-database/transactions/index.ts +3 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/transaction-database/transactions/play-move.test.ts +20 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/transaction-database/transactions/play-move.ts +19 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/transaction-database/transactions/read-board.ts +20 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/transaction-database/transactions/restart-game.test.ts +19 -0
- package/references/data-lit-tictactoe/src/features/main/ecs/transaction-database/transactions/restart-game.ts +25 -0
- package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-app/tictactoe-app-element.ts +1 -1
- package/references/data-lit-tictactoe/src/features/main/ui/tictactoe-app/tictactoe-app-presentation.test.ts +15 -0
- package/references/data-lit-tictactoe/src/features/main/ui/tictactoe-app/tictactoe-app.ts +17 -0
- package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-board/tictactoe-board-element.ts +1 -1
- package/references/data-lit-tictactoe/src/features/main/ui/tictactoe-board/tictactoe-board-presentation.test.ts +16 -0
- package/references/data-lit-tictactoe/src/features/main/ui/tictactoe-cell/observe-cell.ts +32 -0
- package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-cell/tictactoe-cell-element.ts +8 -12
- package/references/data-lit-tictactoe/src/features/main/ui/tictactoe-cell/tictactoe-cell-presentation.test.ts +41 -0
- package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-cell/tictactoe-cell-presentation.ts +1 -1
- package/references/data-lit-tictactoe/src/features/main/ui/tictactoe-element.ts +20 -0
- package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-hud/tictactoe-hud-element.ts +8 -20
- package/references/data-lit-tictactoe/src/features/main/ui/tictactoe-hud/tictactoe-hud-presentation.test.ts +45 -0
- package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-hud/tictactoe-hud-presentation.ts +12 -2
- package/references/data-lit-tictactoe/src/index.ts +14 -8
- package/references/data-lit-tictactoe/src/main.ts +6 -6
- package/references/data-react/package.json +3 -2
- package/references/data-react-hello/package.json +2 -1
- package/references/data-react-pixie/package.json +2 -1
- package/references/data-lit-tictactoe/src/elements/tictactoe-app/tictactoe-app.ts +0 -18
- package/references/data-lit-tictactoe/src/state/tictactoe-plugin.ts +0 -64
- package/references/data-lit-tictactoe/src/tictactoe-element.ts +0 -15
- package/references/data-lit-tictactoe/src/types/board-cell.ts +0 -5
- package/references/data-lit-tictactoe/src/types/board-state/get-cell.ts +0 -7
- package/references/data-lit-tictactoe/src/types/board-state/get-winning-line.ts +0 -25
- package/references/data-lit-tictactoe/src/types/board-state/is-cell-playable.ts +0 -13
- package/references/data-lit-tictactoe/src/types/board-state/is-cell-winning.ts +0 -9
- package/references/data-lit-tictactoe/src/types/board-state/public.ts +0 -15
- package/references/data-lit-tictactoe/src/types/game-status.ts +0 -3
- package/references/data-lit-tictactoe/src/types/move-reject-reason.ts +0 -7
- package/references/data-lit-tictactoe/src/types/player-mark/public.ts +0 -7
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-app/tictactoe-app-presentation.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-app/tictactoe-app.css.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-board/tictactoe-board-presentation.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-board/tictactoe-board.css.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-board/tictactoe-board.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-cell/tictactoe-cell.css.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-cell/tictactoe-cell.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-hud/tictactoe-hud.css.ts +0 -0
- /package/references/data-lit-tictactoe/src/{elements → features/main/ui}/tictactoe-hud/tictactoe-hud.ts +0 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ComponentSchemas } from "../../component-schemas.js";
|
|
2
|
+
/**
|
|
3
|
+
* Declare a feature's archetypes, validating every key against `components` and
|
|
4
|
+
* preserving each archetype's literal key tuple (via a `const` type parameter),
|
|
5
|
+
* so no per-archetype `as const satisfies` is needed. `components` is passed as
|
|
6
|
+
* a value (it is imported anyway) because TypeScript can't infer the tuple type
|
|
7
|
+
* while a component-type argument is also supplied explicitly.
|
|
8
|
+
*
|
|
9
|
+
* ```ts
|
|
10
|
+
* export const archetypes = Database.archetypes(components, {
|
|
11
|
+
* Todo: ["todo", "name", "complete", "order", "dragPosition", "assignees"],
|
|
12
|
+
* });
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function archetypes<C extends ComponentSchemas, const A extends {
|
|
16
|
+
readonly [name: string]: readonly (keyof C & string)[];
|
|
17
|
+
}>(_components: C, map: A): A;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Declare a feature's archetypes, validating every key against `components` and
|
|
3
|
+
* preserving each archetype's literal key tuple (via a `const` type parameter),
|
|
4
|
+
* so no per-archetype `as const satisfies` is needed. `components` is passed as
|
|
5
|
+
* a value (it is imported anyway) because TypeScript can't infer the tuple type
|
|
6
|
+
* while a component-type argument is also supplied explicitly.
|
|
7
|
+
*
|
|
8
|
+
* ```ts
|
|
9
|
+
* export const archetypes = Database.archetypes(components, {
|
|
10
|
+
* Todo: ["todo", "name", "complete", "order", "dragPosition", "assignees"],
|
|
11
|
+
* });
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export function archetypes(_components, map) {
|
|
15
|
+
// `_components` carries the component type C for key validation; unused at runtime.
|
|
16
|
+
return map;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=archetypes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"archetypes.js","sourceRoot":"","sources":["../../../../src/ecs/database/facets/archetypes.ts"],"names":[],"mappings":"AAGA;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,UAAU,CAGxB,WAAc,EAAE,GAAM;IACpB,oFAAoF;IACpF,OAAO,GAAG,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ComponentSchemas } from "../../component-schemas.js";
|
|
2
|
+
import type { Simplify } from "../../../types/index.js";
|
|
3
|
+
import { type ScopeGroups } from "./stamp-scopes.js";
|
|
4
|
+
/**
|
|
5
|
+
* Build a feature's component facet map from its schema scopes, stamping each
|
|
6
|
+
* scope's flags (see {@link ScopeGroups}). Declare only the scopes you use —
|
|
7
|
+
* a document-only feature is just `{ document: { … } }`. Component entries are
|
|
8
|
+
* any `Schema`; no `default` required (unlike `Database.resources`).
|
|
9
|
+
*
|
|
10
|
+
* ```ts
|
|
11
|
+
* export const components = Database.components({
|
|
12
|
+
* document: { mark: PlayerMark.schema },
|
|
13
|
+
* session: { dragPosition: DragPosition.schema },
|
|
14
|
+
* });
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare function components<D extends ComponentSchemas = {}, S extends ComponentSchemas = {}, P extends ComponentSchemas = {}, Se extends ComponentSchemas = {}>(groups: ScopeGroups<D, S, P, Se>): Simplify<D & S & P & Se>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { stampScopes } from "./stamp-scopes.js";
|
|
2
|
+
/**
|
|
3
|
+
* Build a feature's component facet map from its schema scopes, stamping each
|
|
4
|
+
* scope's flags (see {@link ScopeGroups}). Declare only the scopes you use —
|
|
5
|
+
* a document-only feature is just `{ document: { … } }`. Component entries are
|
|
6
|
+
* any `Schema`; no `default` required (unlike `Database.resources`).
|
|
7
|
+
*
|
|
8
|
+
* ```ts
|
|
9
|
+
* export const components = Database.components({
|
|
10
|
+
* document: { mark: PlayerMark.schema },
|
|
11
|
+
* session: { dragPosition: DragPosition.schema },
|
|
12
|
+
* });
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export function components(groups) {
|
|
16
|
+
return stampScopes(groups);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=components.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../src/ecs/database/facets/components.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAoB,MAAM,mBAAmB,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,UAAU,CAGxB,MAAgC;IAC9B,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
// © 2026 Adobe. MIT License. See /LICENSE for details.
|
|
2
|
+
import { describe, it, expect } from "vitest";
|
|
3
|
+
import { Database } from "../database.js";
|
|
4
|
+
describe("Database.components / resources / archetypes", () => {
|
|
5
|
+
const s = { type: "number" };
|
|
6
|
+
// Typed with a `default` in its type (not just `Schema`) so it qualifies as
|
|
7
|
+
// a ResourceSchema — resources typed as bare `Schema` are rejected by design.
|
|
8
|
+
const r = { type: "boolean", default: false };
|
|
9
|
+
it("components stamps each scope's flags and merges the groups", () => {
|
|
10
|
+
const c = Database.components({
|
|
11
|
+
document: { a: s },
|
|
12
|
+
settings: { b: s },
|
|
13
|
+
presence: { c: s },
|
|
14
|
+
session: { d: s },
|
|
15
|
+
});
|
|
16
|
+
expect(Object.keys(c)).toEqual(["a", "b", "c", "d"]);
|
|
17
|
+
expect(c.a).toMatchObject({ type: "number" }); // document: no flags
|
|
18
|
+
expect(c.b).toMatchObject({ nonShared: true });
|
|
19
|
+
expect(c.b.nonPersistent).toBeUndefined();
|
|
20
|
+
expect(c.c).toMatchObject({ nonPersistent: true });
|
|
21
|
+
expect(c.c.nonShared).toBeUndefined();
|
|
22
|
+
expect(c.d).toMatchObject({ nonPersistent: true, nonShared: true });
|
|
23
|
+
});
|
|
24
|
+
it("omitted scopes default to empty — a document-only feature needs just one key", () => {
|
|
25
|
+
const c = Database.components({ document: { a: s } });
|
|
26
|
+
expect(Object.keys(c)).toEqual(["a"]);
|
|
27
|
+
expect(c.a).toMatchObject({ type: "number" });
|
|
28
|
+
expect(c.a).not.toHaveProperty("nonShared");
|
|
29
|
+
});
|
|
30
|
+
it("does not mutate the input schemas", () => {
|
|
31
|
+
const doc = { a: s };
|
|
32
|
+
Database.components({ document: doc, settings: {}, presence: {}, session: {} });
|
|
33
|
+
expect(doc.a).toBe(s);
|
|
34
|
+
expect(s).not.toHaveProperty("nonShared");
|
|
35
|
+
});
|
|
36
|
+
it("resources requires a default (and applies scope flags)", () => {
|
|
37
|
+
const res = Database.resources({
|
|
38
|
+
document: {},
|
|
39
|
+
settings: { flag: r },
|
|
40
|
+
presence: {},
|
|
41
|
+
session: {},
|
|
42
|
+
});
|
|
43
|
+
expect(res.flag).toMatchObject({ default: false, nonShared: true });
|
|
44
|
+
});
|
|
45
|
+
it("archetypes validates keys against components and preserves tuples", () => {
|
|
46
|
+
const components = Database.components({
|
|
47
|
+
document: { mark: s, index: s },
|
|
48
|
+
settings: {}, presence: {}, session: {},
|
|
49
|
+
});
|
|
50
|
+
const a = Database.archetypes(components, { PlacedMark: ["mark", "index"] });
|
|
51
|
+
expect(a.PlacedMark).toEqual(["mark", "index"]);
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
//# sourceMappingURL=facets.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"facets.test.js","sourceRoot":"","sources":["../../../../src/ecs/database/facets/facets.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { ResourceSchemas } from "../../resource-schemas.js";
|
|
2
|
+
import type { Simplify } from "../../../types/index.js";
|
|
3
|
+
import { type ScopeGroups } from "./stamp-scopes.js";
|
|
4
|
+
/**
|
|
5
|
+
* Build a feature's resource facet map from its schema scopes, stamping each
|
|
6
|
+
* scope's flags (see {@link ScopeGroups}). Declare only the scopes you use.
|
|
7
|
+
* Identical to `Database.components` except every entry must be a
|
|
8
|
+
* `ResourceSchema` (a `Schema` with a `default`) — a missing `default` is a
|
|
9
|
+
* compile error here, at the declaration site.
|
|
10
|
+
*
|
|
11
|
+
* ```ts
|
|
12
|
+
* export const resources = Database.resources({
|
|
13
|
+
* settings: { displayCompleted: Boolean.schema },
|
|
14
|
+
* });
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
export declare function resources<D extends ResourceSchemas = {}, S extends ResourceSchemas = {}, P extends ResourceSchemas = {}, Se extends ResourceSchemas = {}>(groups: ScopeGroups<D, S, P, Se>): Simplify<D & S & P & Se>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { stampScopes } from "./stamp-scopes.js";
|
|
2
|
+
/**
|
|
3
|
+
* Build a feature's resource facet map from its schema scopes, stamping each
|
|
4
|
+
* scope's flags (see {@link ScopeGroups}). Declare only the scopes you use.
|
|
5
|
+
* Identical to `Database.components` except every entry must be a
|
|
6
|
+
* `ResourceSchema` (a `Schema` with a `default`) — a missing `default` is a
|
|
7
|
+
* compile error here, at the declaration site.
|
|
8
|
+
*
|
|
9
|
+
* ```ts
|
|
10
|
+
* export const resources = Database.resources({
|
|
11
|
+
* settings: { displayCompleted: Boolean.schema },
|
|
12
|
+
* });
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export function resources(groups) {
|
|
16
|
+
return stampScopes(groups);
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=resources.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resources.js","sourceRoot":"","sources":["../../../../src/ecs/database/facets/resources.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAoB,MAAM,mBAAmB,CAAC;AAElE;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,SAAS,CAGvB,MAAgC;IAC9B,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { Schema } from "../../../schema/index.js";
|
|
2
|
+
import type { Simplify } from "../../../types/index.js";
|
|
3
|
+
type SchemaMap = {
|
|
4
|
+
readonly [key: string]: Schema;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* The four schema scopes, grouped for a facet builder ({@link stampScopes},
|
|
8
|
+
* `Database.components`, `Database.resources`). Every scope is optional and
|
|
9
|
+
* defaults to empty — declare only the scopes a feature actually uses.
|
|
10
|
+
*
|
|
11
|
+
* State divides on two orthogonal axes — **scope** (shared with peers vs. local
|
|
12
|
+
* to this client) and **lifetime** (durable across reloads vs. ephemeral) — and
|
|
13
|
+
* each group stamps the flag pair for its quadrant.
|
|
14
|
+
*/
|
|
15
|
+
export type ScopeGroups<D, S, P, Se> = {
|
|
16
|
+
/**
|
|
17
|
+
* **document** — shared + durable. The collaborative, serialized data model:
|
|
18
|
+
* replicated to every peer and saved to storage. The default home for
|
|
19
|
+
* feature state; carries no scope flags.
|
|
20
|
+
*/
|
|
21
|
+
document?: D;
|
|
22
|
+
/**
|
|
23
|
+
* **settings** — local + durable. Per-device state that persists across
|
|
24
|
+
* reloads but is never sent to peers (e.g. a view toggle, theme, panel
|
|
25
|
+
* layout). Stamped `nonShared: true`.
|
|
26
|
+
*/
|
|
27
|
+
settings?: S;
|
|
28
|
+
/**
|
|
29
|
+
* **presence** — shared + ephemeral. Live awareness replicated to peers but
|
|
30
|
+
* never saved (e.g. cursors, selections, "typing…"). Dies with the session.
|
|
31
|
+
* Stamped `nonPersistent: true`.
|
|
32
|
+
*/
|
|
33
|
+
presence?: P;
|
|
34
|
+
/**
|
|
35
|
+
* **session** — local + ephemeral. Transient UI state that is neither saved
|
|
36
|
+
* nor shared (e.g. a drag offset, hover target, focus). Stamped both
|
|
37
|
+
* `nonPersistent: true` and `nonShared: true`.
|
|
38
|
+
*/
|
|
39
|
+
session?: Se;
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* Merge the provided schema scopes into one flag-tagged map. Omitted scopes are
|
|
43
|
+
* empty. Shared by `Database.components` and `Database.resources`.
|
|
44
|
+
*/
|
|
45
|
+
export declare function stampScopes<D extends SchemaMap, S extends SchemaMap, P extends SchemaMap, Se extends SchemaMap>(groups: ScopeGroups<D, S, P, Se>): Simplify<D & S & P & Se>;
|
|
46
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// Copy a map with `flags` merged onto every schema, preserving the map type.
|
|
2
|
+
const stamp = (map, flags) => {
|
|
3
|
+
const out = {};
|
|
4
|
+
for (const [name, schema] of Object.entries(map)) {
|
|
5
|
+
out[name] = { ...schema, ...flags };
|
|
6
|
+
}
|
|
7
|
+
// Invariant: `out` has exactly `map`'s keys and Schema values — same shape as M.
|
|
8
|
+
return out;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Merge the provided schema scopes into one flag-tagged map. Omitted scopes are
|
|
12
|
+
* empty. Shared by `Database.components` and `Database.resources`.
|
|
13
|
+
*/
|
|
14
|
+
export function stampScopes(groups) {
|
|
15
|
+
const merged = {
|
|
16
|
+
// document has no flags — pass schemas through by identity so a column
|
|
17
|
+
// shared across features (same data/ schema) still dedupes in combinePlugins.
|
|
18
|
+
...(groups.document ?? {}),
|
|
19
|
+
...stamp(groups.settings ?? {}, { nonShared: true }),
|
|
20
|
+
...stamp(groups.presence ?? {}, { nonPersistent: true }),
|
|
21
|
+
...stamp(groups.session ?? {}, { nonPersistent: true, nonShared: true }),
|
|
22
|
+
};
|
|
23
|
+
// Invariant: `merged` has exactly the keys of the provided groups.
|
|
24
|
+
return merged;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=stamp-scopes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stamp-scopes.js","sourceRoot":"","sources":["../../../../src/ecs/database/facets/stamp-scopes.ts"],"names":[],"mappings":"AA0CA,6EAA6E;AAC7E,MAAM,KAAK,GAAG,CAAsB,GAAM,EAAE,KAAsB,EAAK,EAAE;IACrE,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;IACxC,CAAC;IACD,iFAAiF;IACjF,OAAO,GAAQ,CAAC;AACpB,CAAC,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,WAAW,CAEzB,MAAgC;IAC9B,MAAM,MAAM,GAAG;QACX,uEAAuE;QACvE,8EAA8E;QAC9E,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC;QAC1B,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QACpD,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;QACxD,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;KAC3E,CAAC;IACF,mEAAmE;IACnE,OAAO,MAAkC,CAAC;AAC9C,CAAC"}
|
|
@@ -7,7 +7,6 @@ export * from "./reconciling/reconciling-entry.js";
|
|
|
7
7
|
export * from "./observed/create-observed-database.js";
|
|
8
8
|
export * from "./observed/observed-database.js";
|
|
9
9
|
export * from "./database.js";
|
|
10
|
-
export * from "./observe-dependent-value.js";
|
|
11
10
|
export * from "./transactional-store/index.js";
|
|
12
11
|
export * from "./database-schema/index.js";
|
|
13
12
|
export type { Undoable } from "./undoable.js";
|
|
@@ -8,7 +8,6 @@ export * from "./reconciling/reconciling-entry.js";
|
|
|
8
8
|
export * from "./observed/create-observed-database.js";
|
|
9
9
|
export * from "./observed/observed-database.js";
|
|
10
10
|
export * from "./database.js";
|
|
11
|
-
export * from "./observe-dependent-value.js";
|
|
12
11
|
export * from "./transactional-store/index.js";
|
|
13
12
|
export * from "./database-schema/index.js";
|
|
14
13
|
export * from "./combine-plugins.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ecs/database/index.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,8CAA8C,CAAC;AAC7D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AACvD,cAAc,iCAAiC,CAAC;AAChD,cAAc,eAAe,CAAC;AAC9B,cAAc,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/ecs/database/index.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,wBAAwB,CAAC;AACvC,cAAc,8CAA8C,CAAC;AAC7D,cAAc,uCAAuC,CAAC;AACtD,cAAc,oCAAoC,CAAC;AACnD,cAAc,wCAAwC,CAAC;AACvD,cAAc,iCAAiC,CAAC;AAChD,cAAc,eAAe,CAAC;AAC9B,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAE3C,cAAc,sBAAsB,CAAC"}
|
|
@@ -3,6 +3,13 @@ import { describe, expect, it, beforeEach } from "vitest";
|
|
|
3
3
|
import { Database } from "./database.js";
|
|
4
4
|
import { F32 } from "../../math/f32/index.js";
|
|
5
5
|
import { Boolean } from "../../schema/index.js";
|
|
6
|
+
// Non-fatal perf indicator: warns on a super-linear ratio but never throws —
|
|
7
|
+
// wall-clock ratios are too noisy across machines to gate the suite on.
|
|
8
|
+
function warnIfExceeds(actual, limit, label) {
|
|
9
|
+
if (actual >= limit) {
|
|
10
|
+
console.warn(`[perf] ${label}: ratio ${actual.toFixed(2)} ≥ ${limit.toFixed(2)} — possible regression`);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
6
13
|
describe("observeSelectEntities Performance Tests", () => {
|
|
7
14
|
let database;
|
|
8
15
|
function createTestDatabase() {
|
|
@@ -119,10 +126,11 @@ describe("observeSelectEntities Performance Tests", () => {
|
|
|
119
126
|
console.log("One or more update times measured as 0ms; skipping ratio checks due to timer precision limits.");
|
|
120
127
|
return;
|
|
121
128
|
}
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
129
|
+
// Indicators only — wall-clock ratios flake across machines, so a
|
|
130
|
+
// super-linear result warns but never fails the suite.
|
|
131
|
+
warnIfExceeds(timeRatio1, sizeRatio1 * 0.1, "update time vs 100x dataset");
|
|
132
|
+
warnIfExceeds(timeRatio2, sizeRatio2 * 0.1, "update time vs 10x dataset");
|
|
133
|
+
warnIfExceeds(updateTimes[2] / updateTimes[0], 5, "update time 10→10000 entities");
|
|
126
134
|
});
|
|
127
135
|
it("should not notify observer when update does not affect result set", async () => {
|
|
128
136
|
const { testEntity } = createTestData(1000);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"observe-select-entities.performance.test.js","sourceRoot":"","sources":["../../../src/ecs/database/observe-select-entities.performance.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"observe-select-entities.performance.test.js","sourceRoot":"","sources":["../../../src/ecs/database/observe-select-entities.performance.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,9 +3,9 @@ import { Components } from "../../store/components.js";
|
|
|
3
3
|
import { ResourceComponents } from "../../store/resource-components.js";
|
|
4
4
|
import { ArchetypeComponents } from "../../store/archetype-components.js";
|
|
5
5
|
import { StringKeyof } from "../../../types/types.js";
|
|
6
|
-
import { ReadonlyStore } from "../../store/index.js";
|
|
6
|
+
import { ReadonlyStore, Store } from "../../store/index.js";
|
|
7
7
|
import { Observe } from "../../../observe/index.js";
|
|
8
|
-
import {
|
|
8
|
+
import { TransactionResult } from "../transactional-store/index.js";
|
|
9
9
|
import { RequiredComponents } from "../../required-components.js";
|
|
10
10
|
import { Entity } from "../../entity/entity.js";
|
|
11
11
|
import { EntityReadValues } from "../../store/core/index.js";
|
|
@@ -32,7 +32,7 @@ export interface ObservedDatabase<C extends Components, R extends ResourceCompon
|
|
|
32
32
|
derive<I extends Record<string, Observe<unknown>>, T>(inputs: I, compute: (db: any, inputs: {
|
|
33
33
|
readonly [K in keyof I]: I[K] extends Observe<infer U> ? U : never;
|
|
34
34
|
}) => T): Observe<T>;
|
|
35
|
-
readonly execute: (handler: (ctx:
|
|
35
|
+
readonly execute: (handler: (ctx: Store<C, R, A>) => Entity | void, options?: {
|
|
36
36
|
transient?: boolean;
|
|
37
37
|
userId?: number | string;
|
|
38
38
|
}) => TransactionResult<C>;
|
|
@@ -20,7 +20,7 @@ import { ReconcilingEntryOps } from "./reconciling-entry.js";
|
|
|
20
20
|
export function createRebaseReplayApplier(...args) {
|
|
21
21
|
const [execute, getTransaction] = args;
|
|
22
22
|
// The applier is a type-erased layer: `getTransaction` hands back
|
|
23
|
-
// transactions typed over `
|
|
23
|
+
// transactions typed over `Store<any, any, any>`, so the
|
|
24
24
|
// entries it stores are erased too. Pinning the generics to `any` keeps the
|
|
25
25
|
// stored `transaction` assignable from `getTransaction`'s result without a
|
|
26
26
|
// per-assignment cast.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-rebase-replay-applier.js","sourceRoot":"","sources":["../../../../src/ecs/database/reconciling/create-rebase-replay-applier.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAG7E,OAAO,EAAoB,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG/E;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,yBAAyB,CACrC,GAAG,IAA4C;IAQ/C,MAAM,CAAC,OAAO,EAAE,cAAc,CAAC,GAAG,IAAI,CAAC;IACvC,kEAAkE;IAClE,
|
|
1
|
+
{"version":3,"file":"create-rebase-replay-applier.js","sourceRoot":"","sources":["../../../../src/ecs/database/reconciling/create-rebase-replay-applier.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,8 @@ import { StringKeyof } from "../../../types/types.js";
|
|
|
2
2
|
import { Components } from "../../store/components.js";
|
|
3
3
|
import { ResourceComponents } from "../../store/resource-components.js";
|
|
4
4
|
import { ArchetypeComponents } from "../../store/archetype-components.js";
|
|
5
|
-
import {
|
|
5
|
+
import { Store } from "../../store/index.js";
|
|
6
|
+
import { TransactionResult } from "../transactional-store/index.js";
|
|
6
7
|
import { Entity } from "../../entity/entity.js";
|
|
7
8
|
export type ReconcilingEntry<C extends Components = Components, R extends ResourceComponents = ResourceComponents, A extends ArchetypeComponents<StringKeyof<C>> = ArchetypeComponents<StringKeyof<C>>> = {
|
|
8
9
|
readonly id: number;
|
|
@@ -14,7 +15,7 @@ export type ReconcilingEntry<C extends Components = Components, R extends Resour
|
|
|
14
15
|
*/
|
|
15
16
|
readonly userId?: number | string;
|
|
16
17
|
readonly name: string;
|
|
17
|
-
readonly transaction: (ctx:
|
|
18
|
+
readonly transaction: (ctx: Store<C, R, A>, args: unknown) => void | Entity;
|
|
18
19
|
readonly args: unknown;
|
|
19
20
|
readonly time: number;
|
|
20
21
|
result?: TransactionResult<C>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reconciling-entry.js","sourceRoot":"","sources":["../../../../src/ecs/database/reconciling/reconciling-entry.ts"],"names":[],"mappings":"AAAA,uDAAuD;
|
|
1
|
+
{"version":3,"file":"reconciling-entry.js","sourceRoot":"","sources":["../../../../src/ecs/database/reconciling/reconciling-entry.ts"],"names":[],"mappings":"AAAA,uDAAuD;AA8BvD,MAAM,CAAC,MAAM,mBAAmB,GAAG;IAE/B,OAAO,CAIL,CAA4B,EAAE,CAA4B;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;YAChB,OAAO,OAAO,CAAC;QACnB,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAC3B,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;YACf,OAAO,MAAM,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,CAAC,CAAC,CAAC;QACd,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,CAAC,CAAC;QACb,CAAC;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IACD,eAAe,CAIb,OAAoC,EAAE,KAAgC;QACpE,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;QAC1B,OAAO,GAAG,GAAG,IAAI,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;YAC9B,IAAI,mBAAmB,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvD,IAAI,GAAG,GAAG,CAAC;YACf,CAAC;iBAAM,CAAC;gBACJ,GAAG,GAAG,GAAG,GAAG,CAAC,CAAC;YAClB,CAAC;QACL,CAAC;QACD,OAAO,GAAG,CAAC;IACf,CAAC;CACJ,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Database } from "./database.js";
|
|
2
|
+
/**
|
|
3
|
+
* Re-view a created database as its **system surface** — the same
|
|
4
|
+
* `Database & { store }` type a `SystemDeclaration.create` receives — exposing
|
|
5
|
+
* the writable `store` (and writable `services`).
|
|
6
|
+
*
|
|
7
|
+
* Identity at runtime: `createDatabase` always attaches the store, so this only
|
|
8
|
+
* reveals it to the type system. It is the widening twin of `UIService.restrict`
|
|
9
|
+
* (which narrows a full database to the read-only UI view). Direct `store`
|
|
10
|
+
* access does NOT flow through observable transactions — intended for systems,
|
|
11
|
+
* and for test-support (a conformance projection seeding the store directly).
|
|
12
|
+
*
|
|
13
|
+
* Cast-free by the same overload + broadened-impl shape `restrict` uses: the
|
|
14
|
+
* public overload returns the widened `ToSystemDatabase<P>`, which is assignable
|
|
15
|
+
* to the impl's plain `Database` return, so the identity body type-checks.
|
|
16
|
+
*/
|
|
17
|
+
export declare function toSystemDatabase<P extends Database.Plugin>(db: Database.FromPlugin<P>): Database.Plugin.ToSystemDatabase<P>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"to-system-database.js","sourceRoot":"","sources":["../../../src/ecs/database/to-system-database.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAsBvD,MAAM,UAAU,gBAAgB,CAC9B,EAAoD;IAEpD,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// © 2026 Adobe. MIT License. See /LICENSE for details.
|
|
2
|
+
import { describe, it, expect } from "vitest";
|
|
3
|
+
import { Database } from "./database.js";
|
|
4
|
+
describe("Database.toSystemDatabase", () => {
|
|
5
|
+
const plugin = Database.Plugin.create({
|
|
6
|
+
components: { value: { type: "number" }, tag: { type: "boolean" } },
|
|
7
|
+
resources: { count: { default: 0 } },
|
|
8
|
+
archetypes: { Thing: ["value", "tag"] },
|
|
9
|
+
});
|
|
10
|
+
it("is identity at runtime and exposes the writable store", () => {
|
|
11
|
+
const db = Database.create(plugin);
|
|
12
|
+
const sys = Database.toSystemDatabase(db);
|
|
13
|
+
// Same instance — purely a type-level re-view.
|
|
14
|
+
expect(sys).toBe(db);
|
|
15
|
+
// The store surface is now reachable and writable.
|
|
16
|
+
sys.store.resources.count = 5;
|
|
17
|
+
expect(sys.store.resources.count).toBe(5);
|
|
18
|
+
const entity = sys.store.archetypes.Thing.insert({ value: 1, tag: true });
|
|
19
|
+
expect(sys.store.read(entity, sys.store.archetypes.Thing)?.value).toBe(1);
|
|
20
|
+
});
|
|
21
|
+
});
|
|
22
|
+
//# sourceMappingURL=to-system-database.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"to-system-database.test.js","sourceRoot":"","sources":["../../../src/ecs/database/to-system-database.test.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;IACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;QACpC,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE;QACnE,SAAS,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAW,EAAE,EAAE;QAC9C,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE;KACxC,CAAC,CAAC;IAEH,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;QAC/D,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,GAAG,GAAG,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAE1C,+CAA+C;QAC/C,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAErB,mDAAmD;QACnD,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC;QAC9B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,6 +1,13 @@
|
|
|
1
1
|
// © 2026 Adobe. MIT License. See /LICENSE for details.
|
|
2
2
|
import { describe, it, expect } from "vitest";
|
|
3
3
|
import { shouldCoalesceTransactions, coalesceTransactions, coalesceWriteOperations } from "./coalesce-actions.js";
|
|
4
|
+
// Non-fatal perf indicator: warns past budget but never throws — wall-clock
|
|
5
|
+
// timing flakes across machines and must not gate the suite.
|
|
6
|
+
const warnIfExceeds = (actual, limit, label) => {
|
|
7
|
+
if (actual >= limit) {
|
|
8
|
+
console.warn(`[perf] ${label}: ${actual.toFixed(2)} ≥ ${limit} — possible regression`);
|
|
9
|
+
}
|
|
10
|
+
};
|
|
4
11
|
describe("shouldCoalesceTransactions", () => {
|
|
5
12
|
it("should return true for actions with same coalesce values", () => {
|
|
6
13
|
const previous = {
|
|
@@ -449,11 +456,13 @@ describe("coalesceWriteOperations performance", () => {
|
|
|
449
456
|
entity: i,
|
|
450
457
|
}));
|
|
451
458
|
const start = performance.now();
|
|
452
|
-
coalesceWriteOperations(ops);
|
|
459
|
+
const result = coalesceWriteOperations(ops);
|
|
453
460
|
const elapsed = performance.now() - start;
|
|
454
|
-
//
|
|
455
|
-
|
|
456
|
-
|
|
461
|
+
// Correctness (the real gate): N distinct-entity deletes coalesce to N ops.
|
|
462
|
+
expect(result).toHaveLength(N);
|
|
463
|
+
// Timing is an indicator only — linear path ~20ms, quadratic ~450ms; warn
|
|
464
|
+
// past 100ms but never fail (wall-clock flakes across machines/CI).
|
|
465
|
+
warnIfExceeds(elapsed, 100, "coalesce N deletes (ms)");
|
|
457
466
|
});
|
|
458
467
|
it("should strip preceding updates for deleted entities", () => {
|
|
459
468
|
const ops = [
|