From db11b1747c3c15ac9c327f5823a36c3e4aece515 Mon Sep 17 00:00:00 2001 From: Kris Nye Date: Wed, 21 Oct 2026 22:57:41 -0700 Subject: [PATCH 1/4] ecs: every source file starts with Adobe's MIT license line, as @adobe/data's do, and package.json names the MIT license; the guide's links into its sources move down the line they gained. The package ships the repository's LICENSE Co-Authored-By: Claude Opus 5.5 --- packages/ecs/package.json | 1 + packages/ecs/scripts/perf.mjs | 1 + packages/ecs/src/exports.test.ts | 1 + packages/ecs/src/guide/01-resources.test.ts | 1 + packages/ecs/src/guide/02-entities.test.ts | 1 + packages/ecs/src/guide/03-systems.test.ts | 1 + packages/ecs/src/guide/04-ticks.test.ts | 1 + packages/ecs/src/guide/05-scheduling.test.ts | 1 + packages/ecs/src/guide/06-sync-points.test.ts | 1 + .../ecs/src/guide/07-change-filters.test.ts | 1 + packages/ecs/src/guide/08-input.test.ts | 1 + packages/ecs/src/guide/09-rules.test.ts | 1 + packages/ecs/src/guide/10-finalizers.test.ts | 1 + packages/ecs/src/guide/11-traits.test.ts | 1 + packages/ecs/src/guide/11-traits.type-test.ts | 1 + packages/ecs/src/guide/13-indexes.test.ts | 1 + packages/ecs/src/guide/guide.md | 44 +++++++++---------- .../ecs/src/implementation/compiler/access.ts | 1 + .../ecs/src/implementation/compiler/assign.ts | 1 + .../ecs/src/implementation/compiler/bind.ts | 1 + .../implementation/compiler/body-access.ts | 1 + .../src/implementation/compiler/booleans.ts | 1 + .../src/implementation/compiler/branches.ts | 1 + .../ecs/src/implementation/compiler/calls.ts | 1 + .../src/implementation/compiler/columns.ts | 1 + .../implementation/compiler/compile-kernel.ts | 1 + .../ecs/src/implementation/compiler/data.ts | 1 + .../ecs/src/implementation/compiler/estree.ts | 1 + .../ecs/src/implementation/compiler/exact.ts | 1 + .../src/implementation/compiler/expression.ts | 1 + .../src/implementation/compiler/failure.ts | 1 + .../implementation/compiler/hygiene.test.ts | 1 + .../implementation/compiler/identify.test.ts | 1 + .../src/implementation/compiler/identify.ts | 1 + .../ecs/src/implementation/compiler/index.ts | 1 + .../ecs/src/implementation/compiler/ir.ts | 1 + .../src/implementation/compiler/kernel-id.ts | 1 + .../ecs/src/implementation/compiler/key.ts | 1 + .../src/implementation/compiler/link.test.ts | 1 + .../ecs/src/implementation/compiler/link.ts | 1 + .../ecs/src/implementation/compiler/lists.ts | 1 + .../src/implementation/compiler/lookups.ts | 1 + .../ecs/src/implementation/compiler/math.ts | 1 + .../implementation/compiler/module-scope.ts | 1 + .../implementation/compiler/module-value.ts | 1 + .../ecs/src/implementation/compiler/out.ts | 1 + .../ecs/src/implementation/compiler/paths.ts | 1 + .../implementation/compiler/plugin.test.ts | 1 + .../ecs/src/implementation/compiler/plugin.ts | 1 + .../ecs/src/implementation/compiler/print.ts | 1 + .../src/implementation/compiler/program.ts | 1 + .../ecs/src/implementation/compiler/scalar.ts | 1 + .../ecs/src/implementation/compiler/scope.ts | 1 + .../src/implementation/compiler/serialize.ts | 1 + .../src/implementation/compiler/signature.ts | 1 + .../src/implementation/compiler/snapshot.ts | 1 + .../compiler/source-map.test.ts | 1 + .../src/implementation/compiler/source-map.ts | 1 + .../ecs/src/implementation/compiler/spawns.ts | 1 + .../ecs/src/implementation/compiler/stamps.ts | 1 + .../src/implementation/compiler/statement.ts | 1 + .../src/implementation/compiler/terminal.ts | 1 + .../implementation/compiler/transform.test.ts | 1 + .../src/implementation/compiler/transform.ts | 1 + .../ecs/src/implementation/compiler/unit.ts | 1 + .../ecs/src/implementation/compiler/value.ts | 1 + packages/ecs/src/implementation/index.ts | 1 + .../ecs/src/implementation/world/activate.ts | 1 + .../ecs/src/implementation/world/archetype.ts | 1 + .../src/implementation/world/arrays.test.ts | 1 + .../ecs/src/implementation/world/arrays.ts | 1 + .../world/async-loading.test.ts | 1 + .../world/attach-kernel.test.ts | 1 + .../src/implementation/world/attach-kernel.ts | 1 + .../src/implementation/world/batches.test.ts | 1 + .../ecs/src/implementation/world/batches.ts | 1 + .../ecs/src/implementation/world/buffer.ts | 1 + .../src/implementation/world/builtins.test.ts | 1 + .../ecs/src/implementation/world/cascade.ts | 1 + .../ecs/src/implementation/world/cells.ts | 1 + .../world/changes-finalizers.test.ts | 1 + .../src/implementation/world/check-kernel.ts | 1 + .../src/implementation/world/claims.test.ts | 1 + .../ecs/src/implementation/world/claims.ts | 1 + .../src/implementation/world/closure.test.ts | 1 + .../ecs/src/implementation/world/closure.ts | 1 + .../src/implementation/world/command-ring.ts | 1 + .../world/command-rings.cases.ts | 1 + .../world/command-rings.fixture.ts | 1 + .../src/implementation/world/commands.test.ts | 1 + .../ecs/src/implementation/world/commands.ts | 1 + .../world/composite-input.test.ts | 1 + .../implementation/world/conditions.test.ts | 1 + .../src/implementation/world/create.test.ts | 1 + .../ecs/src/implementation/world/create.ts | 1 + .../src/implementation/world/directories.ts | 1 + .../implementation/world/directory.test.ts | 1 + .../implementation/world/dispatch.cases.ts | 1 + .../implementation/world/dispatch.fixture.ts | 1 + .../ecs/src/implementation/world/entities.ts | 1 + .../world/entity-lookup-workers.cases.ts | 1 + .../world/entity-lookup-workers.fixture.ts | 1 + .../world/entity-lookups.browser.test.ts | 1 + .../world/entity-lookups.test-helper.ts | 1 + .../world/entity-lookups.test.ts | 1 + .../ecs/src/implementation/world/execute.ts | 1 + .../ecs/src/implementation/world/failures.ts | 1 + .../implementation/world/finalizers.test.ts | 1 + .../src/implementation/world/finalizers.ts | 1 + .../world/fixtures.test-helper.ts | 1 + .../implementation/world/gpu.browser.test.ts | 1 + packages/ecs/src/implementation/world/gpu.ts | 1 + .../ecs/src/implementation/world/holders.ts | 1 + .../ecs/src/implementation/world/ids.test.ts | 1 + .../world/imported-lists.test-helper.ts | 1 + .../world/imported-lists.test.ts | 1 + .../world/index-build-csp.test.ts | 1 + .../implementation/world/index-build.cases.ts | 1 + .../world/index-build.fixture.ts | 1 + .../src/implementation/world/index-build.ts | 1 + .../world/index-changed.test.ts | 1 + .../src/implementation/world/index-hash.ts | 1 + .../implementation/world/index-joined.test.ts | 1 + .../world/index-kernels.test.ts | 1 + .../world/index-keyless.test.ts | 1 + .../src/implementation/world/index-keys.ts | 1 + .../world/index-lookups-csp.test.ts | 1 + .../src/implementation/world/index-lookups.ts | 1 + .../implementation/world/index-order.test.ts | 1 + .../src/implementation/world/index-order.ts | 1 + .../src/implementation/world/index-readers.ts | 1 + .../implementation/world/index-sorted.test.ts | 1 + .../src/implementation/world/index-sorted.ts | 1 + .../world/index-workers.cases.ts | 1 + .../world/index-workers.fixture.ts | 1 + .../src/implementation/world/indexes.test.ts | 1 + .../ecs/src/implementation/world/indexes.ts | 1 + .../ecs/src/implementation/world/input.ts | 1 + .../world/intrinsics-coverage.test.ts | 1 + .../world/intrinsics.browser.test.ts | 1 + .../src/implementation/world/intrinsics.ts | 1 + .../ecs/src/implementation/world/join.test.ts | 1 + packages/ecs/src/implementation/world/join.ts | 1 + .../implementation/world/join.type-test.ts | 1 + .../implementation/world/joined-observer.ts | 1 + .../world/joining-worker.fixture.ts | 1 + .../src/implementation/world/joining.cases.ts | 1 + .../implementation/world/joining.fixture.ts | 1 + .../world/joining.test-helper.ts | 1 + .../ecs/src/implementation/world/joining.ts | 1 + .../ecs/src/implementation/world/journal.ts | 1 + .../kernel-imports-sparks.test-helper.ts | 1 + .../world/kernel-imports-steer.test-helper.ts | 1 + .../world/kernel-imports.test.ts | 1 + .../implementation/world/kernel-indexes.ts | 1 + .../world/kernel-lookup.test-helper.ts | 1 + .../world/kernel-path.test-helper.ts | 1 + .../world/kernel-spawns.test.ts | 1 + .../ecs/src/implementation/world/kernel.ts | 1 + .../implementation/world/kernels-csp.test.ts | 1 + .../src/implementation/world/kernels.test.ts | 1 + .../ecs/src/implementation/world/kernels.ts | 1 + .../world/layout-directory.browser.test.ts | 1 + .../world/layout-directory.cases.ts | 1 + .../world/layout-directory.fixture.ts | 1 + .../implementation/world/layout-directory.ts | 1 + .../implementation/world/lifetime.cases.ts | 1 + .../implementation/world/lifetime.fixture.ts | 1 + .../world/lifetime.test-helper.ts | 1 + .../src/implementation/world/lifetime.test.ts | 1 + .../ecs/src/implementation/world/lists.ts | 1 + .../src/implementation/world/lookup-keys.ts | 1 + .../ecs/src/implementation/world/loop.test.ts | 1 + packages/ecs/src/implementation/world/loop.ts | 1 + .../src/implementation/world/memory.test.ts | 1 + .../ecs/src/implementation/world/memory.ts | 1 + .../ecs/src/implementation/world/mirror.ts | 1 + .../src/implementation/world/move-log.test.ts | 1 + .../ecs/src/implementation/world/move-log.ts | 1 + .../src/implementation/world/names.test.ts | 1 + .../world/observe-cases.browser.test.ts | 1 + .../world/observe-cases.test.ts | 1 + .../world/observe-factories.test.ts | 1 + .../world/observe-joined-cases.test.ts | 1 + .../world/observe-ticks-cases.test.ts | 1 + .../world/observe.test-helper.ts | 1 + .../world/observed-workers.cases.ts | 1 + .../world/observed-workers.fixture.ts | 1 + .../observer-contained-worker.fixture.ts | 1 + .../world/observer-contained.browser.test.ts | 1 + .../world/observer-contained.cases.ts | 1 + .../world/observer-contained.fixture.ts | 1 + .../world/observer-contained.test-helper.ts | 1 + .../world/observer-contained.test.ts | 1 + .../world/observer-joined-worker.fixture.ts | 1 + .../world/observer-joined.cases.ts | 1 + .../world/observer-joined.fixture.ts | 1 + .../world/observer-joined.test-helper.ts | 1 + .../world/observer-joined.test.ts | 1 + .../world/observer.browser.test.ts | 1 + .../src/implementation/world/observer.test.ts | 1 + .../ecs/src/implementation/world/observer.ts | 1 + .../ecs/src/implementation/world/order.ts | 1 + packages/ecs/src/implementation/world/plan.ts | 1 + .../world/platforms.test-helper.ts | 1 + .../implementation/world/pool-size.cases.ts | 1 + .../implementation/world/pool-size.fixture.ts | 1 + .../src/implementation/world/pool.cases.ts | 1 + .../src/implementation/world/pool.fixture.ts | 1 + packages/ecs/src/implementation/world/pool.ts | 1 + packages/ecs/src/implementation/world/port.ts | 1 + .../src/implementation/world/ports.cases.ts | 1 + .../src/implementation/world/ports.fixture.ts | 1 + .../implementation/world/ports.type-test.ts | 1 + .../implementation/world/prepared-lookup.ts | 1 + .../implementation/world/prepared-spawn.ts | 1 + .../ecs/src/implementation/world/program.ts | 1 + .../ecs/src/implementation/world/protocol.ts | 1 + .../ecs/src/implementation/world/publish.ts | 1 + .../ecs/src/implementation/world/ranges.ts | 1 + .../implementation/world/reads.test-helper.ts | 1 + .../implementation/world/reductions.cases.ts | 1 + .../world/reductions.fixture.ts | 1 + .../implementation/world/reductions.test.ts | 1 + .../src/implementation/world/reductions.ts | 1 + .../world/reevaluation.test-helper.ts | 1 + .../implementation/world/reevaluation.test.ts | 1 + .../ecs/src/implementation/world/register.ts | 1 + .../world/remote-finalizers-worker.fixture.ts | 1 + .../world/remote-finalizers.cases.ts | 1 + .../world/remote-finalizers.fixture.ts | 1 + .../world/remote-finalizers.test-helper.ts | 1 + .../world/remote-finalizers.test.ts | 1 + .../world/remote-objects-worker.fixture.ts | 1 + .../world/remote-objects.cases.ts | 1 + .../world/remote-objects.fixture.ts | 1 + .../world/remote-objects.test-helper.ts | 1 + .../implementation/world/remote-systems.ts | 1 + .../src/implementation/world/remote.test.ts | 1 + .../ecs/src/implementation/world/remote.ts | 1 + .../world/removal-worker.fixture.ts | 1 + .../src/implementation/world/removal.cases.ts | 1 + .../implementation/world/removal.fixture.ts | 1 + .../world/remove-joined.test.ts | 1 + .../world/remove.test-helper.ts | 1 + .../src/implementation/world/remove.test.ts | 1 + .../world/reports.test-helper.ts | 1 + .../src/implementation/world/reports.test.ts | 1 + .../ecs/src/implementation/world/reports.ts | 1 + .../ecs/src/implementation/world/resources.ts | 1 + .../ecs/src/implementation/world/rows.test.ts | 1 + packages/ecs/src/implementation/world/rows.ts | 1 + .../src/implementation/world/rules.test.ts | 1 + .../ecs/src/implementation/world/runner.ts | 1 + .../src/implementation/world/schedule.test.ts | 1 + .../implementation/world/semantics.test.ts | 1 + .../src/implementation/world/share.test.ts | 1 + .../ecs/src/implementation/world/sharing.ts | 1 + .../ecs/src/implementation/world/staging.ts | 1 + .../ecs/src/implementation/world/state.ts | 1 + .../src/implementation/world/stop-lists.ts | 1 + .../src/implementation/world/strings.test.ts | 1 + .../ecs/src/implementation/world/strings.ts | 1 + .../ecs/src/implementation/world/structure.ts | 1 + .../implementation/world/synchronize.test.ts | 1 + .../src/implementation/world/synchronize.ts | 1 + .../src/implementation/world/tail-blocks.ts | 1 + .../world/tails-worker.fixture.ts | 1 + .../src/implementation/world/tails.cases.ts | 1 + .../src/implementation/world/tails.fixture.ts | 1 + .../implementation/world/tails.test-helper.ts | 1 + .../src/implementation/world/tails.test.ts | 1 + .../ecs/src/implementation/world/tails.ts | 1 + .../src/implementation/world/target.test.ts | 1 + .../ecs/src/implementation/world/terminal.ts | 1 + .../implementation/world/thread-directory.ts | 1 + .../implementation/world/thread-finalizers.ts | 1 + .../implementation/world/thread-indexes.ts | 1 + .../implementation/world/thread-observer.ts | 1 + .../world/thread-systems-worker.fixture.ts | 1 + .../world/thread-systems.cases.ts | 1 + .../world/thread-systems.fixture.ts | 1 + .../world/thread-systems.test-helper.ts | 1 + .../world/thread-systems.test.ts | 1 + .../implementation/world/thread-systems.ts | 1 + .../src/implementation/world/thread-tasks.ts | 1 + .../world/threads.browser.test.ts | 1 + .../src/implementation/world/threads.test.ts | 1 + .../world/ticks.browser.test.ts | 1 + .../src/implementation/world/ticks.test.ts | 1 + .../src/implementation/world/traits.test.ts | 1 + .../world/transfers-worker.fixture.ts | 1 + .../implementation/world/transfers.cases.ts | 1 + .../implementation/world/transfers.fixture.ts | 1 + .../world/transfers.test-helper.ts | 1 + .../implementation/world/transfers.test.ts | 1 + .../ecs/src/implementation/world/transfers.ts | 1 + .../src/implementation/world/up-tree.test.ts | 1 + .../implementation/world/up-workers.cases.ts | 1 + .../world/up-workers.fixture.ts | 1 + .../implementation/world/up.browser.test.ts | 1 + .../ecs/src/implementation/world/up.test.ts | 1 + packages/ecs/src/implementation/world/up.ts | 1 + .../implementation/world/wasm-kernels.test.ts | 1 + .../ecs/src/implementation/world/wasm.test.ts | 1 + packages/ecs/src/implementation/world/wasm.ts | 1 + .../ecs/src/implementation/world/wgsl.test.ts | 1 + packages/ecs/src/implementation/world/wgsl.ts | 1 + .../implementation/world/worker-platform.ts | 1 + .../ecs/src/implementation/world/worker.ts | 1 + .../src/implementation/world/workers.cases.ts | 1 + .../implementation/world/workers.fixture.ts | 1 + .../world/world-host.fixture.ts | 1 + packages/ecs/src/index.ts | 1 + .../ecs/src/interface/archetype/archetype.ts | 1 + .../archetype/archetype.type-test.ts | 1 + .../src/interface/archetype/create.test.ts | 1 + .../ecs/src/interface/archetype/create.ts | 1 + packages/ecs/src/interface/archetype/index.ts | 1 + .../ecs/src/interface/archetype/values-of.ts | 1 + .../ecs/src/interface/component/component.ts | 1 + .../src/interface/component/declaration.ts | 1 + .../component/declaration.type-test.ts | 1 + packages/ecs/src/interface/component/index.ts | 1 + packages/ecs/src/interface/component/key.ts | 1 + .../src/interface/component/key.type-test.ts | 1 + .../src/interface/component/register.test.ts | 1 + .../ecs/src/interface/component/register.ts | 1 + packages/ecs/src/interface/component/types.ts | 1 + packages/ecs/src/interface/component/value.ts | 1 + .../ecs/src/interface/component/values.ts | 1 + packages/ecs/src/interface/entity/entity.ts | 1 + packages/ecs/src/interface/entity/index.ts | 1 + packages/ecs/src/interface/finalizer/body.ts | 1 + .../src/interface/finalizer/create.test.ts | 1 + .../ecs/src/interface/finalizer/create.ts | 1 + .../ecs/src/interface/finalizer/created.ts | 1 + .../src/interface/finalizer/declaration.ts | 1 + .../ecs/src/interface/finalizer/finalizer.ts | 1 + packages/ecs/src/interface/finalizer/index.ts | 1 + packages/ecs/src/interface/finalizer/name.ts | 1 + packages/ecs/src/interface/gpu/accessors.ts | 1 + packages/ecs/src/interface/gpu/gpu.ts | 1 + .../ecs/src/interface/gpu/gpu.type-test.ts | 1 + packages/ecs/src/interface/gpu/index.ts | 1 + packages/ecs/src/interface/gpu/layout.ts | 1 + packages/ecs/src/interface/gpu/record.ts | 1 + packages/ecs/src/interface/gpu/wgsl.ts | 1 + packages/ecs/src/interface/index.ts | 1 + packages/ecs/src/interface/index.type-test.ts | 1 + .../ecs/src/interface/indexes/create.test.ts | 1 + packages/ecs/src/interface/indexes/create.ts | 1 + packages/ecs/src/interface/indexes/created.ts | 1 + .../ecs/src/interface/indexes/declaration.ts | 1 + .../ecs/src/interface/indexes/index-type.ts | 1 + packages/ecs/src/interface/indexes/index.ts | 1 + .../src/interface/indexes/index.type-test.ts | 1 + packages/ecs/src/interface/indexes/name.ts | 1 + packages/ecs/src/interface/math/f32/index.ts | 1 + packages/ecs/src/interface/math/f32/public.ts | 1 + .../src/interface/math/f32/round-half-even.ts | 1 + packages/ecs/src/interface/math/f32/schema.ts | 1 + packages/ecs/src/interface/math/i32/index.ts | 1 + packages/ecs/src/interface/math/i32/public.ts | 1 + packages/ecs/src/interface/math/i32/schema.ts | 1 + .../ecs/src/interface/math/i32/shift-right.ts | 1 + packages/ecs/src/interface/math/index.ts | 1 + packages/ecs/src/interface/math/intrinsic.ts | 1 + packages/ecs/src/interface/math/mat4x4/add.ts | 1 + .../src/interface/math/mat4x4/determinant.ts | 1 + .../ecs/src/interface/math/mat4x4/identity.ts | 1 + .../ecs/src/interface/math/mat4x4/index.ts | 1 + .../ecs/src/interface/math/mat4x4/inverse.ts | 1 + .../src/interface/math/mat4x4/look-at.test.ts | 1 + .../ecs/src/interface/math/mat4x4/look-at.ts | 1 + .../interface/math/mat4x4/multiply-vec3.ts | 1 + .../interface/math/mat4x4/multiply-vec4.ts | 1 + .../ecs/src/interface/math/mat4x4/multiply.ts | 1 + .../src/interface/math/mat4x4/orthographic.ts | 1 + .../src/interface/math/mat4x4/perspective.ts | 1 + .../ecs/src/interface/math/mat4x4/public.ts | 1 + .../src/interface/math/mat4x4/rotation-x.ts | 1 + .../src/interface/math/mat4x4/rotation-y.ts | 1 + .../src/interface/math/mat4x4/rotation-z.ts | 1 + .../interface/math/mat4x4/rotation.test.ts | 1 + .../ecs/src/interface/math/mat4x4/scale.ts | 1 + .../ecs/src/interface/math/mat4x4/scaling.ts | 1 + .../ecs/src/interface/math/mat4x4/schema.ts | 1 + .../ecs/src/interface/math/mat4x4/subtract.ts | 1 + .../src/interface/math/mat4x4/translation.ts | 1 + .../src/interface/math/mat4x4/transpose.ts | 1 + .../ecs/src/interface/math/mat4x4/zero.ts | 1 + .../ecs/src/interface/math/math.type-test.ts | 1 + packages/ecs/src/interface/math/quat/add.ts | 1 + .../ecs/src/interface/math/quat/align-to.ts | 1 + .../ecs/src/interface/math/quat/conjugate.ts | 1 + .../ecs/src/interface/math/quat/distance.ts | 1 + packages/ecs/src/interface/math/quat/dot.ts | 1 + .../interface/math/quat/from-axis-angle.ts | 1 + .../ecs/src/interface/math/quat/from-euler.ts | 1 + .../ecs/src/interface/math/quat/identity.ts | 1 + packages/ecs/src/interface/math/quat/index.ts | 1 + .../ecs/src/interface/math/quat/inverse.ts | 1 + .../src/interface/math/quat/length-squared.ts | 1 + .../ecs/src/interface/math/quat/length.ts | 1 + packages/ecs/src/interface/math/quat/lerp.ts | 1 + .../ecs/src/interface/math/quat/look-at.ts | 1 + .../ecs/src/interface/math/quat/multiply.ts | 1 + .../ecs/src/interface/math/quat/negate.ts | 1 + .../ecs/src/interface/math/quat/normalize.ts | 1 + .../ecs/src/interface/math/quat/public.ts | 1 + .../src/interface/math/quat/rotate-vec3.ts | 1 + packages/ecs/src/interface/math/quat/scale.ts | 1 + .../ecs/src/interface/math/quat/schema.ts | 1 + packages/ecs/src/interface/math/quat/slerp.ts | 1 + .../ecs/src/interface/math/quat/subtract.ts | 1 + .../src/interface/math/quat/to-axis-angle.ts | 1 + .../ecs/src/interface/math/quat/to-euler.ts | 1 + .../ecs/src/interface/math/quat/to-mat4.ts | 1 + .../ecs/src/interface/math/semantics.test.ts | 1 + .../interface/math/u32/count-leading-zeros.ts | 1 + .../src/interface/math/u32/count-one-bits.ts | 1 + .../math/u32/count-trailing-zeros.ts | 1 + packages/ecs/src/interface/math/u32/index.ts | 1 + packages/ecs/src/interface/math/u32/public.ts | 1 + .../src/interface/math/u32/reverse-bits.ts | 1 + packages/ecs/src/interface/math/u32/schema.ts | 1 + .../ecs/src/interface/math/u32/shift-right.ts | 1 + .../ecs/src/interface/math/vec2/f32/abs.ts | 1 + .../ecs/src/interface/math/vec2/f32/acos.ts | 1 + .../ecs/src/interface/math/vec2/f32/acosh.ts | 1 + .../ecs/src/interface/math/vec2/f32/add.ts | 1 + .../ecs/src/interface/math/vec2/f32/asin.ts | 1 + .../ecs/src/interface/math/vec2/f32/asinh.ts | 1 + .../ecs/src/interface/math/vec2/f32/atan.ts | 1 + .../ecs/src/interface/math/vec2/f32/atanh.ts | 1 + .../ecs/src/interface/math/vec2/f32/ceil.ts | 1 + .../ecs/src/interface/math/vec2/f32/clamp.ts | 1 + .../ecs/src/interface/math/vec2/f32/cos.ts | 1 + .../ecs/src/interface/math/vec2/f32/cosh.ts | 1 + .../src/interface/math/vec2/f32/distance.ts | 1 + .../ecs/src/interface/math/vec2/f32/dot.ts | 1 + .../ecs/src/interface/math/vec2/f32/equals.ts | 1 + .../ecs/src/interface/math/vec2/f32/exp.ts | 1 + .../ecs/src/interface/math/vec2/f32/exp2.ts | 1 + .../ecs/src/interface/math/vec2/f32/f32.ts | 1 + .../interface/math/vec2/f32/faceforward.ts | 1 + .../ecs/src/interface/math/vec2/f32/floor.ts | 1 + .../ecs/src/interface/math/vec2/f32/fract.ts | 1 + .../ecs/src/interface/math/vec2/f32/length.ts | 1 + .../ecs/src/interface/math/vec2/f32/log.ts | 1 + .../ecs/src/interface/math/vec2/f32/log2.ts | 1 + .../ecs/src/interface/math/vec2/f32/max.ts | 1 + .../ecs/src/interface/math/vec2/f32/min.ts | 1 + .../ecs/src/interface/math/vec2/f32/mix.ts | 1 + .../ecs/src/interface/math/vec2/f32/mod.ts | 1 + .../ecs/src/interface/math/vec2/f32/modf.ts | 1 + .../ecs/src/interface/math/vec2/f32/negate.ts | 1 + .../src/interface/math/vec2/f32/normalize.ts | 1 + .../ecs/src/interface/math/vec2/f32/pow.ts | 1 + .../ecs/src/interface/math/vec2/f32/public.ts | 1 + .../src/interface/math/vec2/f32/reflect.ts | 1 + .../src/interface/math/vec2/f32/refract.ts | 1 + .../ecs/src/interface/math/vec2/f32/round.ts | 1 + .../ecs/src/interface/math/vec2/f32/scale.ts | 1 + .../ecs/src/interface/math/vec2/f32/schema.ts | 1 + .../ecs/src/interface/math/vec2/f32/sign.ts | 1 + .../ecs/src/interface/math/vec2/f32/sin.ts | 1 + .../ecs/src/interface/math/vec2/f32/sinh.ts | 1 + .../src/interface/math/vec2/f32/smoothstep.ts | 1 + .../ecs/src/interface/math/vec2/f32/sqrt.ts | 1 + .../ecs/src/interface/math/vec2/f32/step.ts | 1 + .../src/interface/math/vec2/f32/subtract.ts | 1 + .../ecs/src/interface/math/vec2/f32/tan.ts | 1 + .../ecs/src/interface/math/vec2/f32/tanh.ts | 1 + .../ecs/src/interface/math/vec2/f32/trunc.ts | 1 + .../ecs/src/interface/math/vec2/f32/zero.ts | 1 + .../ecs/src/interface/math/vec2/i32/abs.ts | 1 + .../ecs/src/interface/math/vec2/i32/add.ts | 1 + .../interface/math/vec2/i32/bitwise-and.ts | 1 + .../interface/math/vec2/i32/bitwise-not.ts | 1 + .../src/interface/math/vec2/i32/bitwise-or.ts | 1 + .../interface/math/vec2/i32/bitwise-xor.ts | 1 + .../ecs/src/interface/math/vec2/i32/clamp.ts | 1 + .../math/vec2/i32/count-leading-zeros.ts | 1 + .../interface/math/vec2/i32/count-one-bits.ts | 1 + .../math/vec2/i32/count-trailing-zeros.ts | 1 + .../ecs/src/interface/math/vec2/i32/equals.ts | 1 + .../ecs/src/interface/math/vec2/i32/i32.ts | 1 + .../ecs/src/interface/math/vec2/i32/max.ts | 1 + .../ecs/src/interface/math/vec2/i32/min.ts | 1 + .../ecs/src/interface/math/vec2/i32/negate.ts | 1 + .../ecs/src/interface/math/vec2/i32/public.ts | 1 + .../interface/math/vec2/i32/reverse-bits.ts | 1 + .../ecs/src/interface/math/vec2/i32/scale.ts | 1 + .../ecs/src/interface/math/vec2/i32/schema.ts | 1 + .../src/interface/math/vec2/i32/shift-left.ts | 1 + .../interface/math/vec2/i32/shift-right.ts | 1 + .../src/interface/math/vec2/i32/subtract.ts | 1 + .../ecs/src/interface/math/vec2/i32/zero.ts | 1 + packages/ecs/src/interface/math/vec2/index.ts | 1 + .../ecs/src/interface/math/vec2/public.ts | 1 + .../ecs/src/interface/math/vec2/u32/add.ts | 1 + .../interface/math/vec2/u32/bitwise-and.ts | 1 + .../interface/math/vec2/u32/bitwise-not.ts | 1 + .../src/interface/math/vec2/u32/bitwise-or.ts | 1 + .../interface/math/vec2/u32/bitwise-xor.ts | 1 + .../ecs/src/interface/math/vec2/u32/clamp.ts | 1 + .../math/vec2/u32/count-leading-zeros.ts | 1 + .../interface/math/vec2/u32/count-one-bits.ts | 1 + .../math/vec2/u32/count-trailing-zeros.ts | 1 + .../ecs/src/interface/math/vec2/u32/equals.ts | 1 + .../ecs/src/interface/math/vec2/u32/max.ts | 1 + .../ecs/src/interface/math/vec2/u32/min.ts | 1 + .../ecs/src/interface/math/vec2/u32/negate.ts | 1 + .../ecs/src/interface/math/vec2/u32/public.ts | 1 + .../interface/math/vec2/u32/reverse-bits.ts | 1 + .../ecs/src/interface/math/vec2/u32/scale.ts | 1 + .../ecs/src/interface/math/vec2/u32/schema.ts | 1 + .../src/interface/math/vec2/u32/shift-left.ts | 1 + .../interface/math/vec2/u32/shift-right.ts | 1 + .../src/interface/math/vec2/u32/subtract.ts | 1 + .../ecs/src/interface/math/vec2/u32/u32.ts | 1 + .../ecs/src/interface/math/vec2/u32/zero.ts | 1 + .../ecs/src/interface/math/vec3/f32/abs.ts | 1 + .../ecs/src/interface/math/vec3/f32/acos.ts | 1 + .../ecs/src/interface/math/vec3/f32/acosh.ts | 1 + .../ecs/src/interface/math/vec3/f32/add.ts | 1 + .../ecs/src/interface/math/vec3/f32/asin.ts | 1 + .../ecs/src/interface/math/vec3/f32/asinh.ts | 1 + .../ecs/src/interface/math/vec3/f32/atan.ts | 1 + .../ecs/src/interface/math/vec3/f32/atanh.ts | 1 + .../ecs/src/interface/math/vec3/f32/ceil.ts | 1 + .../ecs/src/interface/math/vec3/f32/clamp.ts | 1 + .../ecs/src/interface/math/vec3/f32/cos.ts | 1 + .../ecs/src/interface/math/vec3/f32/cosh.ts | 1 + .../ecs/src/interface/math/vec3/f32/cross.ts | 1 + .../math/vec3/f32/distance-squared.ts | 1 + .../src/interface/math/vec3/f32/distance.ts | 1 + .../ecs/src/interface/math/vec3/f32/dot.ts | 1 + .../ecs/src/interface/math/vec3/f32/equals.ts | 1 + .../ecs/src/interface/math/vec3/f32/exp.ts | 1 + .../ecs/src/interface/math/vec3/f32/exp2.ts | 1 + .../ecs/src/interface/math/vec3/f32/f32.ts | 1 + .../interface/math/vec3/f32/faceforward.ts | 1 + .../ecs/src/interface/math/vec3/f32/floor.ts | 1 + .../ecs/src/interface/math/vec3/f32/fract.ts | 1 + .../interface/math/vec3/f32/length-squared.ts | 1 + .../ecs/src/interface/math/vec3/f32/length.ts | 1 + .../ecs/src/interface/math/vec3/f32/log.ts | 1 + .../ecs/src/interface/math/vec3/f32/log2.ts | 1 + .../ecs/src/interface/math/vec3/f32/max.ts | 1 + .../ecs/src/interface/math/vec3/f32/min.ts | 1 + .../ecs/src/interface/math/vec3/f32/mix.ts | 1 + .../ecs/src/interface/math/vec3/f32/mod.ts | 1 + .../ecs/src/interface/math/vec3/f32/modf.ts | 1 + .../src/interface/math/vec3/f32/multiply.ts | 1 + .../ecs/src/interface/math/vec3/f32/negate.ts | 1 + .../src/interface/math/vec3/f32/normalize.ts | 1 + .../ecs/src/interface/math/vec3/f32/one.ts | 1 + .../ecs/src/interface/math/vec3/f32/pow.ts | 1 + .../ecs/src/interface/math/vec3/f32/public.ts | 1 + .../ecs/src/interface/math/vec3/f32/random.ts | 1 + .../src/interface/math/vec3/f32/reflect.ts | 1 + .../src/interface/math/vec3/f32/refract.ts | 1 + .../ecs/src/interface/math/vec3/f32/round.ts | 1 + .../ecs/src/interface/math/vec3/f32/scale.ts | 1 + .../ecs/src/interface/math/vec3/f32/schema.ts | 1 + .../ecs/src/interface/math/vec3/f32/sign.ts | 1 + .../ecs/src/interface/math/vec3/f32/sin.ts | 1 + .../ecs/src/interface/math/vec3/f32/sinh.ts | 1 + .../src/interface/math/vec3/f32/smoothstep.ts | 1 + .../ecs/src/interface/math/vec3/f32/sqrt.ts | 1 + .../ecs/src/interface/math/vec3/f32/step.ts | 1 + .../src/interface/math/vec3/f32/subtract.ts | 1 + .../ecs/src/interface/math/vec3/f32/tan.ts | 1 + .../ecs/src/interface/math/vec3/f32/tanh.ts | 1 + .../ecs/src/interface/math/vec3/f32/trunc.ts | 1 + .../ecs/src/interface/math/vec3/f32/zero.ts | 1 + .../ecs/src/interface/math/vec3/i32/abs.ts | 1 + .../ecs/src/interface/math/vec3/i32/add.ts | 1 + .../interface/math/vec3/i32/bitwise-and.ts | 1 + .../interface/math/vec3/i32/bitwise-not.ts | 1 + .../src/interface/math/vec3/i32/bitwise-or.ts | 1 + .../interface/math/vec3/i32/bitwise-xor.ts | 1 + .../ecs/src/interface/math/vec3/i32/clamp.ts | 1 + .../math/vec3/i32/count-leading-zeros.ts | 1 + .../interface/math/vec3/i32/count-one-bits.ts | 1 + .../math/vec3/i32/count-trailing-zeros.ts | 1 + .../ecs/src/interface/math/vec3/i32/equals.ts | 1 + .../ecs/src/interface/math/vec3/i32/i32.ts | 1 + .../ecs/src/interface/math/vec3/i32/max.ts | 1 + .../ecs/src/interface/math/vec3/i32/min.ts | 1 + .../src/interface/math/vec3/i32/multiply.ts | 1 + .../ecs/src/interface/math/vec3/i32/negate.ts | 1 + .../ecs/src/interface/math/vec3/i32/one.ts | 1 + .../ecs/src/interface/math/vec3/i32/public.ts | 1 + .../interface/math/vec3/i32/reverse-bits.ts | 1 + .../ecs/src/interface/math/vec3/i32/scale.ts | 1 + .../ecs/src/interface/math/vec3/i32/schema.ts | 1 + .../src/interface/math/vec3/i32/shift-left.ts | 1 + .../interface/math/vec3/i32/shift-right.ts | 1 + .../src/interface/math/vec3/i32/subtract.ts | 1 + .../ecs/src/interface/math/vec3/i32/zero.ts | 1 + packages/ecs/src/interface/math/vec3/index.ts | 1 + .../ecs/src/interface/math/vec3/public.ts | 1 + .../ecs/src/interface/math/vec3/u32/add.ts | 1 + .../interface/math/vec3/u32/bitwise-and.ts | 1 + .../interface/math/vec3/u32/bitwise-not.ts | 1 + .../src/interface/math/vec3/u32/bitwise-or.ts | 1 + .../interface/math/vec3/u32/bitwise-xor.ts | 1 + .../ecs/src/interface/math/vec3/u32/clamp.ts | 1 + .../math/vec3/u32/count-leading-zeros.ts | 1 + .../interface/math/vec3/u32/count-one-bits.ts | 1 + .../math/vec3/u32/count-trailing-zeros.ts | 1 + .../ecs/src/interface/math/vec3/u32/equals.ts | 1 + .../ecs/src/interface/math/vec3/u32/max.ts | 1 + .../ecs/src/interface/math/vec3/u32/min.ts | 1 + .../src/interface/math/vec3/u32/multiply.ts | 1 + .../ecs/src/interface/math/vec3/u32/negate.ts | 1 + .../ecs/src/interface/math/vec3/u32/one.ts | 1 + .../ecs/src/interface/math/vec3/u32/public.ts | 1 + .../interface/math/vec3/u32/reverse-bits.ts | 1 + .../ecs/src/interface/math/vec3/u32/scale.ts | 1 + .../ecs/src/interface/math/vec3/u32/schema.ts | 1 + .../src/interface/math/vec3/u32/shift-left.ts | 1 + .../interface/math/vec3/u32/shift-right.ts | 1 + .../src/interface/math/vec3/u32/subtract.ts | 1 + .../ecs/src/interface/math/vec3/u32/u32.ts | 1 + .../ecs/src/interface/math/vec3/u32/volume.ts | 1 + .../ecs/src/interface/math/vec3/u32/zero.ts | 1 + .../ecs/src/interface/math/vec4/f32/abs.ts | 1 + .../ecs/src/interface/math/vec4/f32/acos.ts | 1 + .../ecs/src/interface/math/vec4/f32/acosh.ts | 1 + .../ecs/src/interface/math/vec4/f32/add.ts | 1 + .../ecs/src/interface/math/vec4/f32/asin.ts | 1 + .../ecs/src/interface/math/vec4/f32/asinh.ts | 1 + .../ecs/src/interface/math/vec4/f32/atan.ts | 1 + .../ecs/src/interface/math/vec4/f32/atanh.ts | 1 + .../ecs/src/interface/math/vec4/f32/ceil.ts | 1 + .../ecs/src/interface/math/vec4/f32/clamp.ts | 1 + .../ecs/src/interface/math/vec4/f32/cos.ts | 1 + .../ecs/src/interface/math/vec4/f32/cosh.ts | 1 + .../src/interface/math/vec4/f32/distance.ts | 1 + .../ecs/src/interface/math/vec4/f32/dot.ts | 1 + .../ecs/src/interface/math/vec4/f32/exp.ts | 1 + .../ecs/src/interface/math/vec4/f32/exp2.ts | 1 + .../ecs/src/interface/math/vec4/f32/f32.ts | 1 + .../interface/math/vec4/f32/faceforward.ts | 1 + .../ecs/src/interface/math/vec4/f32/floor.ts | 1 + .../ecs/src/interface/math/vec4/f32/fract.ts | 1 + .../ecs/src/interface/math/vec4/f32/length.ts | 1 + .../ecs/src/interface/math/vec4/f32/log.ts | 1 + .../ecs/src/interface/math/vec4/f32/log2.ts | 1 + .../ecs/src/interface/math/vec4/f32/max.ts | 1 + .../ecs/src/interface/math/vec4/f32/min.ts | 1 + .../ecs/src/interface/math/vec4/f32/mix.ts | 1 + .../ecs/src/interface/math/vec4/f32/mod.ts | 1 + .../ecs/src/interface/math/vec4/f32/modf.ts | 1 + .../src/interface/math/vec4/f32/multiply.ts | 1 + .../ecs/src/interface/math/vec4/f32/negate.ts | 1 + .../src/interface/math/vec4/f32/normalize.ts | 1 + .../ecs/src/interface/math/vec4/f32/pow.ts | 1 + .../ecs/src/interface/math/vec4/f32/public.ts | 1 + .../src/interface/math/vec4/f32/reflect.ts | 1 + .../src/interface/math/vec4/f32/refract.ts | 1 + .../ecs/src/interface/math/vec4/f32/round.ts | 1 + .../ecs/src/interface/math/vec4/f32/scale.ts | 1 + .../ecs/src/interface/math/vec4/f32/schema.ts | 1 + .../ecs/src/interface/math/vec4/f32/sign.ts | 1 + .../ecs/src/interface/math/vec4/f32/sin.ts | 1 + .../ecs/src/interface/math/vec4/f32/sinh.ts | 1 + .../src/interface/math/vec4/f32/smoothstep.ts | 1 + .../ecs/src/interface/math/vec4/f32/sqrt.ts | 1 + .../ecs/src/interface/math/vec4/f32/step.ts | 1 + .../src/interface/math/vec4/f32/subtract.ts | 1 + .../ecs/src/interface/math/vec4/f32/tan.ts | 1 + .../ecs/src/interface/math/vec4/f32/tanh.ts | 1 + .../ecs/src/interface/math/vec4/f32/trunc.ts | 1 + .../ecs/src/interface/math/vec4/i32/abs.ts | 1 + .../ecs/src/interface/math/vec4/i32/add.ts | 1 + .../interface/math/vec4/i32/bitwise-and.ts | 1 + .../interface/math/vec4/i32/bitwise-not.ts | 1 + .../src/interface/math/vec4/i32/bitwise-or.ts | 1 + .../interface/math/vec4/i32/bitwise-xor.ts | 1 + .../ecs/src/interface/math/vec4/i32/clamp.ts | 1 + .../math/vec4/i32/count-leading-zeros.ts | 1 + .../interface/math/vec4/i32/count-one-bits.ts | 1 + .../math/vec4/i32/count-trailing-zeros.ts | 1 + .../ecs/src/interface/math/vec4/i32/equals.ts | 1 + .../ecs/src/interface/math/vec4/i32/i32.ts | 1 + .../ecs/src/interface/math/vec4/i32/max.ts | 1 + .../ecs/src/interface/math/vec4/i32/min.ts | 1 + .../src/interface/math/vec4/i32/multiply.ts | 1 + .../ecs/src/interface/math/vec4/i32/negate.ts | 1 + .../ecs/src/interface/math/vec4/i32/one.ts | 1 + .../ecs/src/interface/math/vec4/i32/public.ts | 1 + .../interface/math/vec4/i32/reverse-bits.ts | 1 + .../ecs/src/interface/math/vec4/i32/scale.ts | 1 + .../ecs/src/interface/math/vec4/i32/schema.ts | 1 + .../src/interface/math/vec4/i32/shift-left.ts | 1 + .../interface/math/vec4/i32/shift-right.ts | 1 + .../src/interface/math/vec4/i32/subtract.ts | 1 + .../ecs/src/interface/math/vec4/i32/zero.ts | 1 + packages/ecs/src/interface/math/vec4/index.ts | 1 + .../ecs/src/interface/math/vec4/public.ts | 1 + .../ecs/src/interface/math/vec4/u32/add.ts | 1 + .../interface/math/vec4/u32/bitwise-and.ts | 1 + .../interface/math/vec4/u32/bitwise-not.ts | 1 + .../src/interface/math/vec4/u32/bitwise-or.ts | 1 + .../interface/math/vec4/u32/bitwise-xor.ts | 1 + .../ecs/src/interface/math/vec4/u32/clamp.ts | 1 + .../math/vec4/u32/count-leading-zeros.ts | 1 + .../interface/math/vec4/u32/count-one-bits.ts | 1 + .../math/vec4/u32/count-trailing-zeros.ts | 1 + .../ecs/src/interface/math/vec4/u32/equals.ts | 1 + .../ecs/src/interface/math/vec4/u32/max.ts | 1 + .../ecs/src/interface/math/vec4/u32/min.ts | 1 + .../src/interface/math/vec4/u32/multiply.ts | 1 + .../ecs/src/interface/math/vec4/u32/negate.ts | 1 + .../ecs/src/interface/math/vec4/u32/one.ts | 1 + .../ecs/src/interface/math/vec4/u32/public.ts | 1 + .../interface/math/vec4/u32/reverse-bits.ts | 1 + .../ecs/src/interface/math/vec4/u32/scale.ts | 1 + .../ecs/src/interface/math/vec4/u32/schema.ts | 1 + .../src/interface/math/vec4/u32/shift-left.ts | 1 + .../interface/math/vec4/u32/shift-right.ts | 1 + .../src/interface/math/vec4/u32/subtract.ts | 1 + .../ecs/src/interface/math/vec4/u32/u32.ts | 1 + .../ecs/src/interface/math/vec4/u32/zero.ts | 1 + .../ecs/src/interface/platform/platform.ts | 1 + .../ecs/src/interface/registry/archetypes.ts | 1 + .../src/interface/registry/declarations.ts | 1 + .../src/interface/registry/finalizer-order.ts | 1 + .../src/interface/registry/ids.test-helper.ts | 1 + .../ecs/src/interface/registry/ids.test.ts | 1 + packages/ecs/src/interface/registry/ids.ts | 1 + packages/ecs/src/interface/registry/index.ts | 1 + .../ecs/src/interface/registry/indexes.ts | 1 + packages/ecs/src/interface/registry/items.ts | 1 + .../ecs/src/interface/registry/layout.test.ts | 1 + packages/ecs/src/interface/registry/layout.ts | 1 + .../ecs/src/interface/registry/names.test.ts | 1 + packages/ecs/src/interface/registry/names.ts | 1 + .../ecs/src/interface/registry/program.ts | 1 + .../ecs/src/interface/registry/reduction.ts | 1 + .../ecs/src/interface/registry/schedule.ts | 1 + .../ecs/src/interface/registry/schemas.ts | 1 + packages/ecs/src/interface/registry/strata.ts | 1 + .../ecs/src/interface/registry/threads.ts | 1 + packages/ecs/src/interface/registry/traits.ts | 1 + .../ecs/src/interface/registry/written.ts | 1 + .../ecs/src/interface/report/components.ts | 1 + packages/ecs/src/interface/report/failure.ts | 1 + packages/ecs/src/interface/report/index.ts | 1 + packages/ecs/src/interface/report/report.ts | 1 + .../src/interface/report/report.type-test.ts | 1 + .../ecs/src/interface/resource/condition.ts | 1 + .../ecs/src/interface/resource/declaration.ts | 1 + .../resource/declaration.type-test.ts | 1 + packages/ecs/src/interface/resource/index.ts | 1 + packages/ecs/src/interface/resource/key.ts | 1 + .../ecs/src/interface/resource/reduction.ts | 1 + .../src/interface/resource/register.test.ts | 1 + .../ecs/src/interface/resource/register.ts | 1 + .../ecs/src/interface/resource/resource.ts | 1 + packages/ecs/src/interface/resource/types.ts | 1 + packages/ecs/src/interface/resource/value.ts | 1 + .../ecs/src/interface/resource/written.ts | 1 + .../ecs/src/interface/resources/always.ts | 1 + .../ecs/src/interface/resources/cadence.ts | 1 + packages/ecs/src/interface/resources/clock.ts | 1 + .../ecs/src/interface/resources/gpu-device.ts | 1 + packages/ecs/src/interface/resources/index.ts | 1 + packages/ecs/src/interface/resources/wake.ts | 1 + .../ecs/src/interface/resources/workers.ts | 1 + packages/ecs/src/interface/rule/create.ts | 1 + packages/ecs/src/interface/rule/created.ts | 1 + .../ecs/src/interface/rule/declaration.ts | 1 + packages/ecs/src/interface/rule/index.ts | 1 + packages/ecs/src/interface/rule/name.ts | 1 + packages/ecs/src/interface/rule/rule.ts | 1 + .../ecs/src/interface/rule/rule.type-test.ts | 1 + packages/ecs/src/interface/schema/is-data.ts | 1 + .../ecs/src/interface/schema/is-struct.ts | 1 + packages/ecs/src/interface/schema/schema.ts | 1 + .../src/interface/schema/schema.type-test.ts | 1 + .../src/interface/schema/schemas.type-test.ts | 1 + packages/ecs/src/interface/system/access.ts | 1 + packages/ecs/src/interface/system/body.ts | 1 + packages/ecs/src/interface/system/check.ts | 1 + packages/ecs/src/interface/system/commands.ts | 1 + .../interface/system/commands.type-test.ts | 1 + .../interface/system/composite-declaration.ts | 1 + .../system/composite-input.type-test.ts | 1 + .../ecs/src/interface/system/composite.ts | 1 + .../interface/system/conditions.type-test.ts | 1 + .../ecs/src/interface/system/create.test.ts | 1 + packages/ecs/src/interface/system/create.ts | 1 + .../ecs/src/interface/system/declaration.ts | 1 + .../ecs/src/interface/system/definition.ts | 1 + packages/ecs/src/interface/system/index.ts | 1 + packages/ecs/src/interface/system/input.ts | 1 + packages/ecs/src/interface/system/leaf.ts | 1 + packages/ecs/src/interface/system/name.ts | 1 + packages/ecs/src/interface/system/property.ts | 1 + packages/ecs/src/interface/system/render.ts | 1 + packages/ecs/src/interface/system/struct.ts | 1 + packages/ecs/src/interface/system/system.ts | 1 + .../src/interface/system/system.type-test.ts | 1 + packages/ecs/src/interface/system/threads.ts | 1 + .../src/interface/system/threads.type-test.ts | 1 + .../ecs/src/interface/system/up.type-test.ts | 1 + packages/ecs/src/interface/system/values.ts | 1 + packages/ecs/src/interface/thread/of.ts | 1 + packages/ecs/src/interface/thread/thread.ts | 1 + .../src/interface/thread/thread.type-test.ts | 1 + packages/ecs/src/interface/trait/index.ts | 1 + packages/ecs/src/interface/trait/key.ts | 1 + packages/ecs/src/interface/trait/register.ts | 1 + packages/ecs/src/interface/trait/required.ts | 1 + .../ecs/src/interface/trait/symbol-keys.ts | 1 + .../interface/trait/symbol-keys.type-test.ts | 1 + packages/ecs/src/interface/trait/trait.ts | 1 + .../src/interface/trait/trait.type-test.ts | 1 + packages/ecs/src/interface/trait/types.ts | 1 + packages/ecs/src/interface/world/create.ts | 1 + packages/ecs/src/interface/world/filter.ts | 1 + packages/ecs/src/interface/world/index.ts | 1 + packages/ecs/src/interface/world/join.ts | 1 + .../ecs/src/interface/world/loop.type-test.ts | 1 + .../src/interface/world/share.type-test.ts | 1 + packages/ecs/src/interface/world/world.ts | 1 + .../src/interface/world/world.type-test.ts | 1 + packages/ecs/src/observe-imports.test.ts | 1 + packages/ecs/src/observe/compare.ts | 1 + packages/ecs/src/observe/entity.ts | 1 + packages/ecs/src/observe/index.ts | 1 + packages/ecs/src/observe/members.ts | 1 + packages/ecs/src/observe/observe.ts | 1 + packages/ecs/src/observe/observe.type-test.ts | 1 + packages/ecs/src/observe/plans.ts | 1 + packages/ecs/src/observe/query.ts | 1 + packages/ecs/src/observe/resource.ts | 1 + packages/ecs/src/observe/select.ts | 1 + packages/ecs/src/observe/to-promise.ts | 1 + packages/ecs/src/observe/values.ts | 1 + packages/ecs/src/observe/world-state.ts | 1 + packages/ecs/src/perftest/benchmark.ts | 1 + packages/ecs/src/perftest/benchmarks.ts | 1 + packages/ecs/src/perftest/finalized.ts | 1 + packages/ecs/src/perftest/flat.ts | 1 + packages/ecs/src/perftest/growth.ts | 1 + packages/ecs/src/perftest/handoff.ts | 1 + packages/ecs/src/perftest/hierarchy.ts | 1 + packages/ecs/src/perftest/indexes.ts | 1 + packages/ecs/src/perftest/joined.ts | 1 + packages/ecs/src/perftest/keys.ts | 1 + packages/ecs/src/perftest/log.ts | 1 + packages/ecs/src/perftest/loop.ts | 1 + packages/ecs/src/perftest/observed-gpu.ts | 1 + packages/ecs/src/perftest/observed.ts | 1 + packages/ecs/src/perftest/observer.ts | 1 + packages/ecs/src/perftest/particles.ts | 1 + packages/ecs/src/perftest/placed.ts | 1 + packages/ecs/src/perftest/reads.ts | 1 + packages/ecs/src/perftest/remote.ts | 1 + packages/ecs/src/perftest/run.ts | 1 + packages/ecs/src/perftest/strings.ts | 1 + packages/ecs/src/perftest/structural.ts | 1 + .../src/perftest/suite.perf-browser-test.ts | 1 + packages/ecs/src/perftest/suite.perf-test.ts | 1 + packages/ecs/src/perftest/suite.ts | 1 + packages/ecs/src/perftest/systems.ts | 1 + packages/ecs/src/perftest/tails.ts | 1 + packages/ecs/src/perftest/transfers.ts | 1 + packages/ecs/src/perftest/uploads.ts | 1 + packages/ecs/src/perftest/values.ts | 1 + packages/ecs/src/perftest/wake.ts | 1 + .../ecs/src/samples/particles/build.test.ts | 1 + .../ecs/src/samples/particles/gpu/main.ts | 1 + .../src/samples/particles/gpu/particles.ts | 1 + .../src/samples/particles/particles.test.ts | 1 + .../ecs/src/samples/particles/particles.ts | 1 + .../samples/particles/particles.type-test.ts | 1 + .../src/samples/todo/app/app.browser.test.ts | 1 + packages/ecs/src/samples/todo/app/app.ts | 1 + .../src/samples/todo/app/log-failures.test.ts | 1 + .../ecs/src/samples/todo/app/log-failures.ts | 1 + packages/ecs/src/samples/todo/app/main.ts | 1 + .../todo/app/profile.perf-browser-test.ts | 1 + .../todo/app/proportional.browser.test.ts | 1 + .../todo/app/todo.perf-browser-test.ts | 1 + packages/ecs/src/samples/todo/build.test.ts | 1 + .../samples/todo/features/completion/data.ts | 1 + .../features/completion/dom.browser.test.ts | 1 + .../samples/todo/features/completion/dom.ts | 1 + .../elements/elements.browser.test.ts | 1 + .../completion/elements/todo-summary.ts | 1 + .../completion/elements/todo-toggle-all.ts | 1 + .../todo/features/completion/events.ts | 1 + .../todo/features/completion/feature.ts | 1 + .../todo/features/completion/model.test.ts | 1 + .../samples/todo/features/completion/model.ts | 1 + .../src/samples/todo/features/filter/data.ts | 1 + .../todo/features/filter/dom.browser.test.ts | 1 + .../src/samples/todo/features/filter/dom.ts | 1 + .../filter/elements/elements.browser.test.ts | 1 + .../features/filter/elements/todo-filters.ts | 1 + .../samples/todo/features/filter/events.ts | 1 + .../samples/todo/features/filter/feature.ts | 1 + .../todo/features/filter/model.test.ts | 1 + .../src/samples/todo/features/filter/model.ts | 1 + .../elements/elements.browser.test.ts | 1 + .../generate/elements/todo-generate.ts | 1 + .../samples/todo/features/generate/events.ts | 1 + .../samples/todo/features/generate/feature.ts | 1 + .../todo/features/generate/model.test.ts | 1 + .../samples/todo/features/generate/model.ts | 1 + .../ecs/src/samples/todo/features/index.ts | 1 + .../src/samples/todo/features/todos/data.ts | 1 + .../todo/features/todos/dom.browser.test.ts | 1 + .../src/samples/todo/features/todos/dom.ts | 1 + .../todos/elements/elements.browser.test.ts | 1 + .../features/todos/elements/todo-entry.ts | 1 + .../todo/features/todos/elements/todo-list.ts | 1 + .../todo/features/todos/elements/todo-row.ts | 1 + .../src/samples/todo/features/todos/events.ts | 1 + .../samples/todo/features/todos/feature.ts | 1 + .../samples/todo/features/todos/model.test.ts | 1 + .../src/samples/todo/features/todos/model.ts | 1 + .../todo/features/todos/todos.test-helper.ts | 1 + packages/ecs/src/samples/todo/imports.test.ts | 1 + .../todo/shared/attach.browser.test.ts | 1 + .../ecs/src/samples/todo/shared/attach.ts | 1 + .../ecs/src/samples/todo/shared/connect.ts | 1 + .../samples/todo/shared/elements/define.ts | 1 + .../shared/elements/elements.test-helper.ts | 1 + .../ecs/src/samples/todo/shared/feature.ts | 1 + .../samples/todo/shared/ticks.test-helper.ts | 1 + .../ecs/src/samples/transfers/build.test.ts | 1 + packages/ecs/src/samples/transfers/loader.ts | 1 + packages/ecs/src/samples/transfers/main.ts | 1 + packages/ecs/src/samples/transfers/sprites.ts | 1 + packages/ecs/src/samples/transfers/world.ts | 1 + packages/ecs/src/world.test.ts | 1 + packages/ecs/vite.perf.config.ts | 1 + packages/ecs/vite.sample.config.ts | 1 + packages/ecs/vitest.config.ts | 1 + packages/ecs/vitest.fixtures.ts | 1 + packages/ecs/vitest.perf.config.ts | 1 + packages/ecs/vitest.plugins.ts | 1 + 952 files changed, 973 insertions(+), 22 deletions(-) diff --git a/packages/ecs/package.json b/packages/ecs/package.json index bd8b4dd5b..8c605e03d 100644 --- a/packages/ecs/package.json +++ b/packages/ecs/package.json @@ -2,6 +2,7 @@ "name": "@adobe/ecs", "version": "0.1.0", "description": "Adobe ECS", + "license": "MIT", "type": "module", "sideEffects": false, "private": false, diff --git a/packages/ecs/scripts/perf.mjs b/packages/ecs/scripts/perf.mjs index f66ba27b9..8e8e527fe 100644 --- a/packages/ecs/scripts/perf.mjs +++ b/packages/ecs/scripts/perf.mjs @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. // Runs the benchmarks, compares them with what this machine recorded last, and records them. // // pnpm perf [filter] node benchmarks whose names match the regular expression filter, each in a process diff --git a/packages/ecs/src/exports.test.ts b/packages/ecs/src/exports.test.ts index 0e75a3b92..161675a29 100644 --- a/packages/ecs/src/exports.test.ts +++ b/packages/ecs/src/exports.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { cpSync, mkdtempSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs"; import { tmpdir } from "node:os"; import { dirname, join, relative } from "node:path"; diff --git a/packages/ecs/src/guide/01-resources.test.ts b/packages/ecs/src/guide/01-resources.test.ts index 62938ee01..8e19e05ba 100644 --- a/packages/ecs/src/guide/01-resources.test.ts +++ b/packages/ecs/src/guide/01-resources.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Entity, Resource, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/02-entities.test.ts b/packages/ecs/src/guide/02-entities.test.ts index 2c96836c1..55148ebd3 100644 --- a/packages/ecs/src/guide/02-entities.test.ts +++ b/packages/ecs/src/guide/02-entities.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Archetype, Component, System, Vec3, World } from "../index.js"; diff --git a/packages/ecs/src/guide/03-systems.test.ts b/packages/ecs/src/guide/03-systems.test.ts index 232c17ac0..dbc7e81b0 100644 --- a/packages/ecs/src/guide/03-systems.test.ts +++ b/packages/ecs/src/guide/03-systems.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Report, Resource, System, Vec3, World } from "../index.js"; diff --git a/packages/ecs/src/guide/04-ticks.test.ts b/packages/ecs/src/guide/04-ticks.test.ts index 6aa9cd1ba..21e84f4fe 100644 --- a/packages/ecs/src/guide/04-ticks.test.ts +++ b/packages/ecs/src/guide/04-ticks.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { always, cadence, clock, Resource, System, wake, World } from "../index.js"; diff --git a/packages/ecs/src/guide/05-scheduling.test.ts b/packages/ecs/src/guide/05-scheduling.test.ts index 31b7582cd..e91f21034 100644 --- a/packages/ecs/src/guide/05-scheduling.test.ts +++ b/packages/ecs/src/guide/05-scheduling.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/06-sync-points.test.ts b/packages/ecs/src/guide/06-sync-points.test.ts index 45dbeb2eb..e27a8156b 100644 --- a/packages/ecs/src/guide/06-sync-points.test.ts +++ b/packages/ecs/src/guide/06-sync-points.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Resource, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/07-change-filters.test.ts b/packages/ecs/src/guide/07-change-filters.test.ts index 52c7df14c..457ba502b 100644 --- a/packages/ecs/src/guide/07-change-filters.test.ts +++ b/packages/ecs/src/guide/07-change-filters.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Resource, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/08-input.test.ts b/packages/ecs/src/guide/08-input.test.ts index d1bcf8efc..7b78cf131 100644 --- a/packages/ecs/src/guide/08-input.test.ts +++ b/packages/ecs/src/guide/08-input.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Entity, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/09-rules.test.ts b/packages/ecs/src/guide/09-rules.test.ts index b75425489..1f4d0ed28 100644 --- a/packages/ecs/src/guide/09-rules.test.ts +++ b/packages/ecs/src/guide/09-rules.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Rule, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/10-finalizers.test.ts b/packages/ecs/src/guide/10-finalizers.test.ts index 1858fc470..7aae82c35 100644 --- a/packages/ecs/src/guide/10-finalizers.test.ts +++ b/packages/ecs/src/guide/10-finalizers.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Finalizer, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/11-traits.test.ts b/packages/ecs/src/guide/11-traits.test.ts index 7ba9f8e6e..ac41a53f7 100644 --- a/packages/ecs/src/guide/11-traits.test.ts +++ b/packages/ecs/src/guide/11-traits.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Entity, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/11-traits.type-test.ts b/packages/ecs/src/guide/11-traits.type-test.ts index 72123c119..609ef53dc 100644 --- a/packages/ecs/src/guide/11-traits.type-test.ts +++ b/packages/ecs/src/guide/11-traits.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, Trait } from "../index.js"; type Equal = (() => T extends X ? 1 : 2) extends (() => T extends Y ? 1 : 2) ? true : false; diff --git a/packages/ecs/src/guide/13-indexes.test.ts b/packages/ecs/src/guide/13-indexes.test.ts index f30ef85e3..dbc539f14 100644 --- a/packages/ecs/src/guide/13-indexes.test.ts +++ b/packages/ecs/src/guide/13-indexes.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Index, System, World } from "../index.js"; diff --git a/packages/ecs/src/guide/guide.md b/packages/ecs/src/guide/guide.md index ec0985197..4554c0e38 100644 --- a/packages/ecs/src/guide/guide.md +++ b/packages/ecs/src/guide/guide.md @@ -90,7 +90,7 @@ await moon.run(read); expect(values[0]).toBe(-1.6); ``` -[`01-resources.test.ts`](01-resources.test.ts#L5-L45) +[`01-resources.test.ts`](01-resources.test.ts#L6-L46) ### 2. Entities, components and archetypes @@ -143,7 +143,7 @@ expect(foes).toEqual([[0, 10, 0]]); expect(particles).toBe(1); ``` -[`02-entities.test.ts`](02-entities.test.ts#L5-L58) +[`02-entities.test.ts`](02-entities.test.ts#L6-L59) ### 3. Systems @@ -179,7 +179,7 @@ await world.run(read); expect(moved).toEqual([[1, 0, 0]]); ``` -[`03-systems.test.ts`](03-systems.test.ts#L34-L68) +[`03-systems.test.ts`](03-systems.test.ts#L35-L69) ```ts const fail = System.create({ name: "fail" }, () => { @@ -200,7 +200,7 @@ expect(run).toBe(1); expect(logged).toEqual(["fail: broken"]); ``` -[`03-systems.test.ts`](03-systems.test.ts#L70-L86) +[`03-systems.test.ts`](03-systems.test.ts#L71-L87) ### 4. Ticks and cadence @@ -228,7 +228,7 @@ expect(await ticked).toBeGreaterThanOrEqual(30); world.remove(advance); ``` -[`04-ticks.test.ts`](04-ticks.test.ts#L17-L51) +[`04-ticks.test.ts`](04-ticks.test.ts#L18-L52) ```ts // A system asks for another tick by contributing a time to wake: the first tick at or after it runs. Work that a tick's @@ -244,7 +244,7 @@ world.add(step); await world.run(System.create(() => {})); ``` -[`04-ticks.test.ts`](04-ticks.test.ts#L53-L74) +[`04-ticks.test.ts`](04-ticks.test.ts#L54-L75) ## Intermediate @@ -263,7 +263,7 @@ const heal = System.create({ components: { write: [health] }, after: [hit] }, ro const frame = System.create([heal, hit]); ``` -[`05-scheduling.test.ts`](05-scheduling.test.ts#L18-L42) +[`05-scheduling.test.ts`](05-scheduling.test.ts#L19-L43) ```ts // Phases are systems that do nothing; a system during one runs after what the phase follows and before what follows it. @@ -278,7 +278,7 @@ const report = System.create({ components: { read: [health] }, during: [render] const phased = System.create([report, poison, update, render]); ``` -[`05-scheduling.test.ts`](05-scheduling.test.ts#L44-L61) +[`05-scheduling.test.ts`](05-scheduling.test.ts#L45-L62) ### 6. Sync points @@ -298,7 +298,7 @@ const count = System.create({ components: { has: [health] }, resources: { write: const frame = System.create([spawn, count]); ``` -[`06-sync-points.test.ts`](06-sync-points.test.ts#L20-L52) +[`06-sync-points.test.ts`](06-sync-points.test.ts#L21-L53) ```ts // An observer runs after the sync point of every run and tick it's added to, reading what it left; it writes nothing. @@ -307,7 +307,7 @@ const watch = System.create({ observer: true, components: { read: [health] } }, }); ``` -[`06-sync-points.test.ts`](06-sync-points.test.ts#L35-L38) +[`06-sync-points.test.ts`](06-sync-points.test.ts#L36-L39) ### 7. Change filters and conditions @@ -323,7 +323,7 @@ const show = System.create({ components: { read: [score], write: [shown], change }); ``` -[`07-change-filters.test.ts`](07-change-filters.test.ts#L35-L65) +[`07-change-filters.test.ts`](07-change-filters.test.ts#L36-L66) ```ts // Runs only while each resource in is is neither null nor false, and each in not is; is reads it narrowed. @@ -332,7 +332,7 @@ const step = System.create({ resources: { is: [map], not: [paused], write: [step }); ``` -[`07-change-filters.test.ts`](07-change-filters.test.ts#L67-L88) +[`07-change-filters.test.ts`](07-change-filters.test.ts#L68-L89) ### 8. Input @@ -359,7 +359,7 @@ await world.run(hit, { amount: 3 }); await world.run(heal, { entity: player, amount: 1 }); ``` -[`08-input.test.ts`](08-input.test.ts#L18-L48) +[`08-input.test.ts`](08-input.test.ts#L19-L49) ### 9. Rules @@ -383,7 +383,7 @@ Rule.create({ components: { has: [sprite], not: [hidden] }, derive: [drawn] }); Rule.create({ components: { has: [drawn] }, derive: [layer] }); ``` -[`09-rules.test.ts`](09-rules.test.ts#L10-L58) +[`09-rules.test.ts`](09-rules.test.ts#L11-L59) ### 10. Finalizers and change sets @@ -397,7 +397,7 @@ Finalizer.create({ components: { read: [handle] } }, row => { await world.dispose(); ``` -[`10-finalizers.test.ts`](10-finalizers.test.ts#L15-L47) +[`10-finalizers.test.ts`](10-finalizers.test.ts#L16-L48) ```ts // Sees each sync point's structural changes to the components it watches, grouped by how entities changed, with @@ -409,7 +409,7 @@ Finalizer.changes({ watch: [handle] }, changes => { }); ``` -[`10-finalizers.test.ts`](10-finalizers.test.ts#L49-L65) +[`10-finalizers.test.ts`](10-finalizers.test.ts#L50-L66) ### 11. Traits, within and references @@ -441,7 +441,7 @@ const spawn = System.create(({ commands }) => { }); ``` -[`11-traits.test.ts`](11-traits.test.ts#L11-L59) +[`11-traits.test.ts`](11-traits.test.ts#L12-L60) ```ts // A trait of your own is a member of Traits: the value it allows on key N, or never where it doesn't apply. @@ -457,7 +457,7 @@ Trait.register(instanced); check, typeof transform | typeof name>, typeof transform>>(); ``` -[`11-traits.type-test.ts`](11-traits.type-test.ts#L6-L27) +[`11-traits.type-test.ts`](11-traits.type-test.ts#L7-L28) ## Advanced @@ -478,7 +478,7 @@ const count = System.create({ components: { read: [cell], write: [crowded] }, lo }); ``` -[`13-indexes.test.ts`](13-indexes.test.ts#L27-L34) +[`13-indexes.test.ts`](13-indexes.test.ts#L28-L35) ```ts // A sorted index keeps its key's order: lookups take a range, and `order` runs a system's rows in it. @@ -497,7 +497,7 @@ const list = System.create({ observer: true, components: { read: [player] }, ord }); ``` -[`13-indexes.test.ts`](13-indexes.test.ts#L36-L49) +[`13-indexes.test.ts`](13-indexes.test.ts#L37-L50) ```ts // A unique index gives one row, or null. @@ -508,7 +508,7 @@ const find = System.create({ input: { type: "object", properties: { id: { type: }); ``` -[`13-indexes.test.ts`](13-indexes.test.ts#L51-L56) +[`13-indexes.test.ts`](13-indexes.test.ts#L52-L57) ```ts // An index without a key holds every entity with its components, in entity order. With changed: true, this observer @@ -520,7 +520,7 @@ const countPlayers = System.create({ observer: true, lookup: { players: { index: }); ``` -[`13-indexes.test.ts`](13-indexes.test.ts#L58-L64) +[`13-indexes.test.ts`](13-indexes.test.ts#L59-L65) A list stays valid until its call site runs again. Lists and rows read only what the index holds and its lookup's `read` names, and `list.changed` tells whether an entity entered, left or moved in it since the system last ran. A diff --git a/packages/ecs/src/implementation/compiler/access.ts b/packages/ecs/src/implementation/compiler/access.ts index 7a59424a9..6ae9f6b81 100644 --- a/packages/ecs/src/implementation/compiler/access.ts +++ b/packages/ecs/src/implementation/compiler/access.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node } from 'estree'; import { entityRead } from './columns.js'; import { fail } from './failure.js'; diff --git a/packages/ecs/src/implementation/compiler/assign.ts b/packages/ecs/src/implementation/compiler/assign.ts index 7cc089464..0b92863b1 100644 --- a/packages/ecs/src/implementation/compiler/assign.ts +++ b/packages/ecs/src/implementation/compiler/assign.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { AssignmentExpression, Expression as SourceExpression, Node, Pattern, UpdateExpression } from 'estree'; import { access } from './access.js'; import { failPattern } from './bind.js'; diff --git a/packages/ecs/src/implementation/compiler/bind.ts b/packages/ecs/src/implementation/compiler/bind.ts index 5960c4d2e..88b644800 100644 --- a/packages/ecs/src/implementation/compiler/bind.ts +++ b/packages/ecs/src/implementation/compiler/bind.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Identifier, Node, Pattern } from 'estree'; import { access } from './access.js'; import { set } from './booleans.js'; diff --git a/packages/ecs/src/implementation/compiler/body-access.ts b/packages/ecs/src/implementation/compiler/body-access.ts index 95c545725..70b5e2a46 100644 --- a/packages/ecs/src/implementation/compiler/body-access.ts +++ b/packages/ecs/src/implementation/compiler/body-access.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node, ObjectExpression, Pattern } from 'estree'; import { children, declaredIn, patternNames } from './estree.js'; import type { Used } from './exact.js'; diff --git a/packages/ecs/src/implementation/compiler/booleans.ts b/packages/ecs/src/implementation/compiler/booleans.ts index 3f50eb508..6e8db3d14 100644 --- a/packages/ecs/src/implementation/compiler/booleans.ts +++ b/packages/ecs/src/implementation/compiler/booleans.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Expression, Statement } from './ir.js'; import { references } from './ir.js'; import type { Unit } from './unit.js'; diff --git a/packages/ecs/src/implementation/compiler/branches.ts b/packages/ecs/src/implementation/compiler/branches.ts index 2995d9245..cf68fe7dc 100644 --- a/packages/ecs/src/implementation/compiler/branches.ts +++ b/packages/ecs/src/implementation/compiler/branches.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node } from 'estree'; import { set } from './booleans.js'; import { dataValue, leavesOf, mapLeaves, sameShape, type Data } from './data.js'; diff --git a/packages/ecs/src/implementation/compiler/calls.ts b/packages/ecs/src/implementation/compiler/calls.ts index dca73fe7a..9f56085d9 100644 --- a/packages/ecs/src/implementation/compiler/calls.ts +++ b/packages/ecs/src/implementation/compiler/calls.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { SimpleCallExpression, Expression as SourceExpression, Node, SpreadElement, Statement as SourceStatement } from 'estree'; import { mergeBranches } from './branches.js'; import { bind } from './bind.js'; diff --git a/packages/ecs/src/implementation/compiler/columns.ts b/packages/ecs/src/implementation/compiler/columns.ts index 702905a9b..e9b259bce 100644 --- a/packages/ecs/src/implementation/compiler/columns.ts +++ b/packages/ecs/src/implementation/compiler/columns.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Path } from '../world/kernel.js'; import type { Expression } from './ir.js'; import type { Unit } from './unit.js'; diff --git a/packages/ecs/src/implementation/compiler/compile-kernel.ts b/packages/ecs/src/implementation/compiler/compile-kernel.ts index bd4c651c7..96637b0a5 100644 --- a/packages/ecs/src/implementation/compiler/compile-kernel.ts +++ b/packages/ecs/src/implementation/compiler/compile-kernel.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node, ObjectExpression } from 'estree'; import { bind } from './bind.js'; import { requireExact } from './exact.js'; diff --git a/packages/ecs/src/implementation/compiler/data.ts b/packages/ecs/src/implementation/compiler/data.ts index 9756468eb..6cfe3deab 100644 --- a/packages/ecs/src/implementation/compiler/data.ts +++ b/packages/ecs/src/implementation/compiler/data.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node } from 'estree'; import type { Path } from '../world/kernel.js'; import { fail } from './failure.js'; diff --git a/packages/ecs/src/implementation/compiler/estree.ts b/packages/ecs/src/implementation/compiler/estree.ts index cb9ab96b5..51d22f6c9 100644 --- a/packages/ecs/src/implementation/compiler/estree.ts +++ b/packages/ecs/src/implementation/compiler/estree.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node, Pattern, Program } from 'estree'; import type { parseAst } from 'vite'; diff --git a/packages/ecs/src/implementation/compiler/exact.ts b/packages/ecs/src/implementation/compiler/exact.ts index a6005bb68..8d449146d 100644 --- a/packages/ecs/src/implementation/compiler/exact.ts +++ b/packages/ecs/src/implementation/compiler/exact.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Expression, ObjectExpression, Pattern } from 'estree'; import { fail } from './failure.js'; import type { Lists } from './lists.js'; diff --git a/packages/ecs/src/implementation/compiler/expression.ts b/packages/ecs/src/implementation/compiler/expression.ts index 0e30a6221..fc3852a7b 100644 --- a/packages/ecs/src/implementation/compiler/expression.ts +++ b/packages/ecs/src/implementation/compiler/expression.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { ConditionalExpression, Identifier, LogicalExpression, Node } from 'estree'; import { access } from './access.js'; import { observe, set } from './booleans.js'; diff --git a/packages/ecs/src/implementation/compiler/failure.ts b/packages/ecs/src/implementation/compiler/failure.ts index aa7cedfd0..9f80b9d37 100644 --- a/packages/ecs/src/implementation/compiler/failure.ts +++ b/packages/ecs/src/implementation/compiler/failure.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Where an inlined function failed: the function, and the failing line in its file. */ export type Frame = { readonly name: string; readonly file: string; readonly line: number; readonly column: number }; diff --git a/packages/ecs/src/implementation/compiler/hygiene.test.ts b/packages/ecs/src/implementation/compiler/hygiene.test.ts index efe586ae3..3a98f1c4b 100644 --- a/packages/ecs/src/implementation/compiler/hygiene.test.ts +++ b/packages/ecs/src/implementation/compiler/hygiene.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, System } from "../../index.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/compiler/identify.test.ts b/packages/ecs/src/implementation/compiler/identify.test.ts index a3d7bc206..ef71e9dbf 100644 --- a/packages/ecs/src/implementation/compiler/identify.test.ts +++ b/packages/ecs/src/implementation/compiler/identify.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, test } from 'vitest'; import { parseAst } from 'vite'; import { idOfKey, takeIdOfDeclaration } from '../../interface/registry/ids.js'; diff --git a/packages/ecs/src/implementation/compiler/identify.ts b/packages/ecs/src/implementation/compiler/identify.ts index 0ee34f1f7..a2e205892 100644 --- a/packages/ecs/src/implementation/compiler/identify.ts +++ b/packages/ecs/src/implementation/compiler/identify.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import type { Expression, Node, Program } from 'estree'; import { posix } from 'node:path'; diff --git a/packages/ecs/src/implementation/compiler/index.ts b/packages/ecs/src/implementation/compiler/index.ts index e24de3c17..ce6096c04 100644 --- a/packages/ecs/src/implementation/compiler/index.ts +++ b/packages/ecs/src/implementation/compiler/index.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './plugin.js'; diff --git a/packages/ecs/src/implementation/compiler/ir.ts b/packages/ecs/src/implementation/compiler/ir.ts index ad1c8afdc..f7444e697 100644 --- a/packages/ecs/src/implementation/compiler/ir.ts +++ b/packages/ecs/src/implementation/compiler/ir.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { BinaryOperator } from 'estree'; import type { Path, Program } from '../world/kernel.js'; import type { Out } from './out.js'; diff --git a/packages/ecs/src/implementation/compiler/kernel-id.ts b/packages/ecs/src/implementation/compiler/kernel-id.ts index d016e63df..48820782a 100644 --- a/packages/ecs/src/implementation/compiler/kernel-id.ts +++ b/packages/ecs/src/implementation/compiler/kernel-id.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { createHash } from 'node:crypto'; diff --git a/packages/ecs/src/implementation/compiler/key.ts b/packages/ecs/src/implementation/compiler/key.ts index 929f9180e..f5260fe10 100644 --- a/packages/ecs/src/implementation/compiler/key.ts +++ b/packages/ecs/src/implementation/compiler/key.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { AssignmentProperty, MemberExpression, Node, Property } from 'estree'; import { fail } from './failure.js'; import type { Out } from './out.js'; diff --git a/packages/ecs/src/implementation/compiler/link.test.ts b/packages/ecs/src/implementation/compiler/link.test.ts index 78a761b86..0de2fd046 100644 --- a/packages/ecs/src/implementation/compiler/link.test.ts +++ b/packages/ecs/src/implementation/compiler/link.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, test } from 'vitest'; import { parseAst } from 'vite'; import { createLinker, isPending, resolveExport, type Link, type LinkHost } from './link.js'; diff --git a/packages/ecs/src/implementation/compiler/link.ts b/packages/ecs/src/implementation/compiler/link.ts index fb2239b4a..f605c2757 100644 --- a/packages/ecs/src/implementation/compiler/link.ts +++ b/packages/ecs/src/implementation/compiler/link.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Program } from 'estree'; import { createModule, locateIn, type Module, type ModuleBinding } from './module-scope.js'; diff --git a/packages/ecs/src/implementation/compiler/lists.ts b/packages/ecs/src/implementation/compiler/lists.ts index 77d86204a..19e8f1736 100644 --- a/packages/ecs/src/implementation/compiler/lists.ts +++ b/packages/ecs/src/implementation/compiler/lists.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { ArrayExpression, Expression, Node } from 'estree'; import { children } from './estree.js'; import { resolveBinding, resolveExport, type Link, type Resolved } from './link.js'; diff --git a/packages/ecs/src/implementation/compiler/lookups.ts b/packages/ecs/src/implementation/compiler/lookups.ts index b3e65ea7d..625773b72 100644 --- a/packages/ecs/src/implementation/compiler/lookups.ts +++ b/packages/ecs/src/implementation/compiler/lookups.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Expression, Node, ObjectExpression, Pattern, SpreadElement } from 'estree'; import { children, declaredIn } from './estree.js'; diff --git a/packages/ecs/src/implementation/compiler/math.ts b/packages/ecs/src/implementation/compiler/math.ts index 59f699581..413b61906 100644 --- a/packages/ecs/src/implementation/compiler/math.ts +++ b/packages/ecs/src/implementation/compiler/math.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** The `Math` functions allowed in kernels: pure and deterministic. */ export const mathFunctions: ReadonlySet = new Set([ "abs", "sign", "floor", "ceil", "round", "trunc", "min", "max", "sqrt", "cbrt", "hypot", diff --git a/packages/ecs/src/implementation/compiler/module-scope.ts b/packages/ecs/src/implementation/compiler/module-scope.ts index 0c976a1d9..8a25f5c69 100644 --- a/packages/ecs/src/implementation/compiler/module-scope.ts +++ b/packages/ecs/src/implementation/compiler/module-scope.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Directive, Expression, FunctionDeclaration, MaybeNamedFunctionDeclaration, ModuleDeclaration, Pattern, Program, Statement } from 'estree'; import { patternNames } from './estree.js'; diff --git a/packages/ecs/src/implementation/compiler/module-value.ts b/packages/ecs/src/implementation/compiler/module-value.ts index 7ded48757..58d03221d 100644 --- a/packages/ecs/src/implementation/compiler/module-value.ts +++ b/packages/ecs/src/implementation/compiler/module-value.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Expression as SourceExpression, Node } from 'estree'; import type { Program } from '../world/kernel.js'; import { isValueType } from '../world/intrinsics.js'; diff --git a/packages/ecs/src/implementation/compiler/out.ts b/packages/ecs/src/implementation/compiler/out.ts index 8bdfd1793..afa9ce464 100644 --- a/packages/ecs/src/implementation/compiler/out.ts +++ b/packages/ecs/src/implementation/compiler/out.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Statement } from './ir.js'; /** Emitted statements. A function is resolved last, so it can see what the rest of the body needed. */ diff --git a/packages/ecs/src/implementation/compiler/paths.ts b/packages/ecs/src/implementation/compiler/paths.ts index 29890a7a5..4dddc4af6 100644 --- a/packages/ecs/src/implementation/compiler/paths.ts +++ b/packages/ecs/src/implementation/compiler/paths.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { extname } from 'node:path'; import { fileURLToPath } from 'node:url'; diff --git a/packages/ecs/src/implementation/compiler/plugin.test.ts b/packages/ecs/src/implementation/compiler/plugin.test.ts index fa08a1dcf..9dea11dce 100644 --- a/packages/ecs/src/implementation/compiler/plugin.test.ts +++ b/packages/ecs/src/implementation/compiler/plugin.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { mkdirSync, mkdtempSync, realpathSync, rmSync, symlinkSync, writeFileSync } from 'node:fs'; import { tmpdir } from 'node:os'; diff --git a/packages/ecs/src/implementation/compiler/plugin.ts b/packages/ecs/src/implementation/compiler/plugin.ts index 0dc533c0c..928f760bd 100644 --- a/packages/ecs/src/implementation/compiler/plugin.ts +++ b/packages/ecs/src/implementation/compiler/plugin.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { readFileSync } from 'node:fs'; import { readFile } from 'node:fs/promises'; diff --git a/packages/ecs/src/implementation/compiler/print.ts b/packages/ecs/src/implementation/compiler/print.ts index 9fe87012e..2201e6ba1 100644 --- a/packages/ecs/src/implementation/compiler/print.ts +++ b/packages/ecs/src/implementation/compiler/print.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { chunkShift, type Path } from '../world/kernel.js'; import type { Expression, Statement } from './ir.js'; import { resolve, type Out } from './out.js'; diff --git a/packages/ecs/src/implementation/compiler/program.ts b/packages/ecs/src/implementation/compiler/program.ts index df94de394..790af9962 100644 --- a/packages/ecs/src/implementation/compiler/program.ts +++ b/packages/ecs/src/implementation/compiler/program.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Path, Program } from '../world/kernel.js'; import type { Expression, Statement } from './ir.js'; import { resolve } from './out.js'; diff --git a/packages/ecs/src/implementation/compiler/scalar.ts b/packages/ecs/src/implementation/compiler/scalar.ts index fd214f000..094458486 100644 --- a/packages/ecs/src/implementation/compiler/scalar.ts +++ b/packages/ecs/src/implementation/compiler/scalar.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node } from 'estree'; import { componentRead, fieldRead } from './columns.js'; import { fail } from './failure.js'; diff --git a/packages/ecs/src/implementation/compiler/scope.ts b/packages/ecs/src/implementation/compiler/scope.ts index 3da2e9783..b9add2f49 100644 --- a/packages/ecs/src/implementation/compiler/scope.ts +++ b/packages/ecs/src/implementation/compiler/scope.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Module } from './module-scope.js'; import type { Unit } from './unit.js'; import type { Value } from './value.js'; diff --git a/packages/ecs/src/implementation/compiler/serialize.ts b/packages/ecs/src/implementation/compiler/serialize.ts index 29c9a1f4c..c2bf0ac1f 100644 --- a/packages/ecs/src/implementation/compiler/serialize.ts +++ b/packages/ecs/src/implementation/compiler/serialize.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { printNumber } from './print.js'; /** Data as a JS literal; unlike JSON, it keeps NaN, infinities and -0. */ diff --git a/packages/ecs/src/implementation/compiler/signature.ts b/packages/ecs/src/implementation/compiler/signature.ts index 4c2fa5a2f..7dbcf071f 100644 --- a/packages/ecs/src/implementation/compiler/signature.ts +++ b/packages/ecs/src/implementation/compiler/signature.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Expression, ObjectExpression, Property, SpreadElement, Pattern } from 'estree'; import type { Reduction } from '../../interface/resource/reduction.js'; import { isReduction, reductionOperators } from '../../interface/registry/reduction.js'; diff --git a/packages/ecs/src/implementation/compiler/snapshot.ts b/packages/ecs/src/implementation/compiler/snapshot.ts index 5a80927e4..89fc66e3d 100644 --- a/packages/ecs/src/implementation/compiler/snapshot.ts +++ b/packages/ecs/src/implementation/compiler/snapshot.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Path } from '../world/kernel.js'; import { record } from './booleans.js'; import type { Expression, Statement } from './ir.js'; diff --git a/packages/ecs/src/implementation/compiler/source-map.test.ts b/packages/ecs/src/implementation/compiler/source-map.test.ts index 008e941a4..11a097501 100644 --- a/packages/ecs/src/implementation/compiler/source-map.test.ts +++ b/packages/ecs/src/implementation/compiler/source-map.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, test } from "vitest"; import { decodeMappings, insertInto } from "./source-map.js"; diff --git a/packages/ecs/src/implementation/compiler/source-map.ts b/packages/ecs/src/implementation/compiler/source-map.ts index 1598d812e..0466818bf 100644 --- a/packages/ecs/src/implementation/compiler/source-map.ts +++ b/packages/ecs/src/implementation/compiler/source-map.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { locateIn, type Module } from './module-scope.js'; const base64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; diff --git a/packages/ecs/src/implementation/compiler/spawns.ts b/packages/ecs/src/implementation/compiler/spawns.ts index 698662615..a6615a7b9 100644 --- a/packages/ecs/src/implementation/compiler/spawns.ts +++ b/packages/ecs/src/implementation/compiler/spawns.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Expression, Node, Property, SpreadElement } from 'estree'; import { children, declaredIn } from './estree.js'; import { fail } from './failure.js'; diff --git a/packages/ecs/src/implementation/compiler/stamps.ts b/packages/ecs/src/implementation/compiler/stamps.ts index d1c2fa78b..5db1c3cb9 100644 --- a/packages/ecs/src/implementation/compiler/stamps.ts +++ b/packages/ecs/src/implementation/compiler/stamps.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Statement } from './ir.js'; import { resolve } from './out.js'; diff --git a/packages/ecs/src/implementation/compiler/statement.ts b/packages/ecs/src/implementation/compiler/statement.ts index 26bbe53f7..25cda912b 100644 --- a/packages/ecs/src/implementation/compiler/statement.ts +++ b/packages/ecs/src/implementation/compiler/statement.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { DoWhileStatement, Expression, ForStatement, Node, WhileStatement } from 'estree'; import { assign, update } from './assign.js'; import { bind } from './bind.js'; diff --git a/packages/ecs/src/implementation/compiler/terminal.ts b/packages/ecs/src/implementation/compiler/terminal.ts index a0dbde69f..57e7dfa30 100644 --- a/packages/ecs/src/implementation/compiler/terminal.ts +++ b/packages/ecs/src/implementation/compiler/terminal.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node, Pattern } from 'estree'; import { children, declaredIn } from './estree.js'; diff --git a/packages/ecs/src/implementation/compiler/transform.test.ts b/packages/ecs/src/implementation/compiler/transform.test.ts index d4e23eabf..bd257acac 100644 --- a/packages/ecs/src/implementation/compiler/transform.test.ts +++ b/packages/ecs/src/implementation/compiler/transform.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { existsSync } from 'node:fs'; import { readFile } from 'node:fs/promises'; diff --git a/packages/ecs/src/implementation/compiler/transform.ts b/packages/ecs/src/implementation/compiler/transform.ts index 3fdc5c74c..1bb93bb95 100644 --- a/packages/ecs/src/implementation/compiler/transform.ts +++ b/packages/ecs/src/implementation/compiler/transform.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node, ObjectExpression, Program, SimpleCallExpression } from 'estree'; import { compileKernel, type CompiledKernel } from './compile-kernel.js'; import { children, isFunction } from './estree.js'; diff --git a/packages/ecs/src/implementation/compiler/unit.ts b/packages/ecs/src/implementation/compiler/unit.ts index c14315a7e..71ef3575d 100644 --- a/packages/ecs/src/implementation/compiler/unit.ts +++ b/packages/ecs/src/implementation/compiler/unit.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Node } from 'estree'; import type { Expression } from './ir.js'; import type { Link } from './link.js'; diff --git a/packages/ecs/src/implementation/compiler/value.ts b/packages/ecs/src/implementation/compiler/value.ts index c5d2c1255..fa35897bb 100644 --- a/packages/ecs/src/implementation/compiler/value.ts +++ b/packages/ecs/src/implementation/compiler/value.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { BlockStatement, Expression as SourceExpression, Pattern } from 'estree'; import type { Path, Program } from '../world/kernel.js'; import type { Expression } from './ir.js'; diff --git a/packages/ecs/src/implementation/index.ts b/packages/ecs/src/implementation/index.ts index 588d8a0c2..45c13f512 100644 --- a/packages/ecs/src/implementation/index.ts +++ b/packages/ecs/src/implementation/index.ts @@ -1,2 +1,3 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { create, createWorld, join, type CreatedWorld, type WorldOptions } from './world/create.js'; export { backToBack } from './world/loop.js'; diff --git a/packages/ecs/src/implementation/world/activate.ts b/packages/ecs/src/implementation/world/activate.ts index e04753d4c..bc923c83c 100644 --- a/packages/ecs/src/implementation/world/activate.ts +++ b/packages/ecs/src/implementation/world/activate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Finalizer } from '../../interface/finalizer/created.js'; import type { Rule } from '../../interface/rule/created.js'; import type { RuleFacts } from '../../interface/registry/strata.js'; diff --git a/packages/ecs/src/implementation/world/archetype.ts b/packages/ecs/src/implementation/world/archetype.ts index 0452a3876..1af69b6df 100644 --- a/packages/ecs/src/implementation/world/archetype.ts +++ b/packages/ecs/src/implementation/world/archetype.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Entity } from '../../interface/entity/entity.js'; import type { Layout, Views } from '../../interface/registry/layout.js'; import { allocateArray, allocateViews, emptyViews, freeArray, freeViews, growArray } from './arrays.js'; diff --git a/packages/ecs/src/implementation/world/arrays.test.ts b/packages/ecs/src/implementation/world/arrays.test.ts index f8d62db73..fce043961 100644 --- a/packages/ecs/src/implementation/world/arrays.test.ts +++ b/packages/ecs/src/implementation/world/arrays.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { allocateArray, growArray } from "./arrays.js"; import { createMemory } from "./memory.js"; diff --git a/packages/ecs/src/implementation/world/arrays.ts b/packages/ecs/src/implementation/world/arrays.ts index b91d090d1..57193994a 100644 --- a/packages/ecs/src/implementation/world/arrays.ts +++ b/packages/ecs/src/implementation/world/arrays.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { viewsOf, type Views } from '../../interface/registry/layout.js'; import type { Memory } from './memory.js'; diff --git a/packages/ecs/src/implementation/world/async-loading.test.ts b/packages/ecs/src/implementation/world/async-loading.test.ts index 106012a22..7236d81af 100644 --- a/packages/ecs/src/implementation/world/async-loading.test.ts +++ b/packages/ecs/src/implementation/world/async-loading.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Entity, Finalizer, Resource, Rule, System, World } from "../../index.js"; import { Observe } from "../../observe/index.js"; diff --git a/packages/ecs/src/implementation/world/attach-kernel.test.ts b/packages/ecs/src/implementation/world/attach-kernel.test.ts index 8a214b05c..5414fc556 100644 --- a/packages/ecs/src/implementation/world/attach-kernel.test.ts +++ b/packages/ecs/src/implementation/world/attach-kernel.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; it("rejects a kernel lookup of a string, which kernels don't read, where the kernel is declared", async () => { diff --git a/packages/ecs/src/implementation/world/attach-kernel.ts b/packages/ecs/src/implementation/world/attach-kernel.ts index da5f7f0ae..1cd866151 100644 --- a/packages/ecs/src/implementation/world/attach-kernel.ts +++ b/packages/ecs/src/implementation/world/attach-kernel.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { definitionOf, labelOfItem } from '../../interface/registry/index.js'; import type { System } from '../../interface/system/system.js'; import { checkKernel } from './check-kernel.js'; diff --git a/packages/ecs/src/implementation/world/batches.test.ts b/packages/ecs/src/implementation/world/batches.test.ts index 027815aab..58fb30f40 100644 --- a/packages/ecs/src/implementation/world/batches.test.ts +++ b/packages/ecs/src/implementation/world/batches.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/batches.ts b/packages/ecs/src/implementation/world/batches.ts index 077c05258..fed392c91 100644 --- a/packages/ecs/src/implementation/world/batches.ts +++ b/packages/ecs/src/implementation/world/batches.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { ensureCapacity, type Archetype } from './archetype.js'; import type { CommandBuffer } from './buffer.js'; import { indexOf } from './entities.js'; diff --git a/packages/ecs/src/implementation/world/buffer.ts b/packages/ecs/src/implementation/world/buffer.ts index 41eeed38e..946bfdf4b 100644 --- a/packages/ecs/src/implementation/world/buffer.ts +++ b/packages/ecs/src/implementation/world/buffer.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { viewsOf, type Layout, type Views } from '../../interface/registry/layout.js'; import type { KernelCommands } from './kernel.js'; import type { Positional, SpawnBatch } from './staging.js'; diff --git a/packages/ecs/src/implementation/world/builtins.test.ts b/packages/ecs/src/implementation/world/builtins.test.ts index 2cf824d52..6909271a7 100644 --- a/packages/ecs/src/implementation/world/builtins.test.ts +++ b/packages/ecs/src/implementation/world/builtins.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Mat4x4, Quat, Vec3 } from "../../interface/math/index.js"; diff --git a/packages/ecs/src/implementation/world/cascade.ts b/packages/ecs/src/implementation/world/cascade.ts index cc7b92dda..1be079116 100644 --- a/packages/ecs/src/implementation/world/cascade.ts +++ b/packages/ecs/src/implementation/world/cascade.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Archetype } from './archetype.js'; import { readCell } from './cells.js'; import { indexOf, locate } from './entities.js'; diff --git a/packages/ecs/src/implementation/world/cells.ts b/packages/ecs/src/implementation/world/cells.ts index 69a68e138..9d61bed76 100644 --- a/packages/ecs/src/implementation/world/cells.ts +++ b/packages/ecs/src/implementation/world/cells.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Storage } from './archetype.js'; import { readString, writeString } from './strings.js'; diff --git a/packages/ecs/src/implementation/world/changes-finalizers.test.ts b/packages/ecs/src/implementation/world/changes-finalizers.test.ts index 569b2d9dc..b3c04aa23 100644 --- a/packages/ecs/src/implementation/world/changes-finalizers.test.ts +++ b/packages/ecs/src/implementation/world/changes-finalizers.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Finalizer, Resource, System, World } from "../../index.js"; import { Observe } from "../../observe/index.js"; diff --git a/packages/ecs/src/implementation/world/check-kernel.ts b/packages/ecs/src/implementation/world/check-kernel.ts index 1bae5a80b..38e974cb2 100644 --- a/packages/ecs/src/implementation/world/check-kernel.ts +++ b/packages/ecs/src/implementation/world/check-kernel.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { declarationOf, labelOf, labelOfItem } from '../../interface/registry/index.js'; import { layoutOf, samePath, type Layout, type Path } from '../../interface/registry/layout.js'; import type { Leaf } from '../../interface/system/leaf.js'; diff --git a/packages/ecs/src/implementation/world/claims.test.ts b/packages/ecs/src/implementation/world/claims.test.ts index 9f339960c..443b0b95f 100644 --- a/packages/ecs/src/implementation/world/claims.test.ts +++ b/packages/ecs/src/implementation/world/claims.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { claimPiece, startRanges } from "./claims.js"; import { lineWords } from "./protocol.js"; diff --git a/packages/ecs/src/implementation/world/claims.ts b/packages/ecs/src/implementation/world/claims.ts index f55a53584..d5cb649ba 100644 --- a/packages/ecs/src/implementation/world/claims.ts +++ b/packages/ecs/src/implementation/world/claims.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { lineWords } from './protocol.js'; /** diff --git a/packages/ecs/src/implementation/world/closure.test.ts b/packages/ecs/src/implementation/world/closure.test.ts index 68208a26f..ed4692625 100644 --- a/packages/ecs/src/implementation/world/closure.test.ts +++ b/packages/ecs/src/implementation/world/closure.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { strataOf, type RuleFacts } from "../../interface/registry/strata.js"; import { closedComponents } from "./closure.js"; diff --git a/packages/ecs/src/implementation/world/closure.ts b/packages/ecs/src/implementation/world/closure.ts index 8d9347a0b..7c325d4fc 100644 --- a/packages/ecs/src/implementation/world/closure.ts +++ b/packages/ecs/src/implementation/world/closure.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * Structural derivation: which components an archetype's entities have once rules and `within` are applied. * Datalog with stratified negation over the components each entity has. A rule adds the components it derives where diff --git a/packages/ecs/src/implementation/world/command-ring.ts b/packages/ecs/src/implementation/world/command-ring.ts index ff33a6882..5b33af69a 100644 --- a/packages/ecs/src/implementation/world/command-ring.ts +++ b/packages/ecs/src/implementation/world/command-ring.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { viewsOf, type Layout, type Views } from '../../interface/registry/layout.js'; import { emptyViews } from './arrays.js'; import { writeF32, writeF32Lanes, writeF64, writeI32, writeOf, writeU32 } from './archetype.js'; diff --git a/packages/ecs/src/implementation/world/command-rings.cases.ts b/packages/ecs/src/implementation/world/command-rings.cases.ts index f119ce5ca..1bc393d43 100644 --- a/packages/ecs/src/implementation/world/command-rings.cases.ts +++ b/packages/ecs/src/implementation/world/command-rings.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./command-rings.fixture.js"; diff --git a/packages/ecs/src/implementation/world/command-rings.fixture.ts b/packages/ecs/src/implementation/world/command-rings.fixture.ts index 05e7e1797..2fdfdb17e 100644 --- a/packages/ecs/src/implementation/world/command-rings.fixture.ts +++ b/packages/ecs/src/implementation/world/command-rings.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import type { Schema } from "../../interface/schema/schema.js"; diff --git a/packages/ecs/src/implementation/world/commands.test.ts b/packages/ecs/src/implementation/world/commands.test.ts index d0a27afba..a66207634 100644 --- a/packages/ecs/src/implementation/world/commands.test.ts +++ b/packages/ecs/src/implementation/world/commands.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Archetype } from "../../interface/archetype/archetype.js"; import { Report } from "../../interface/report/report.js"; diff --git a/packages/ecs/src/implementation/world/commands.ts b/packages/ecs/src/implementation/world/commands.ts index 969940171..ee9fc2ee6 100644 --- a/packages/ecs/src/implementation/world/commands.ts +++ b/packages/ecs/src/implementation/world/commands.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Commands } from '../../interface/system/commands.js'; import { addCommand, despawnCommand, pushCommand, pushComponent, removeCommand, type CommandBuffer } from './buffer.js'; import { listShapeOf, spawnerOf } from './lists.js'; diff --git a/packages/ecs/src/implementation/world/composite-input.test.ts b/packages/ecs/src/implementation/world/composite-input.test.ts index 1873c819f..c41b86b02 100644 --- a/packages/ecs/src/implementation/world/composite-input.test.ts +++ b/packages/ecs/src/implementation/world/composite-input.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { System } from "../../interface/system/system.js"; import { createWorld } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/conditions.test.ts b/packages/ecs/src/implementation/world/conditions.test.ts index dc3a2cc7b..baeaccc41 100644 --- a/packages/ecs/src/implementation/world/conditions.test.ts +++ b/packages/ecs/src/implementation/world/conditions.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Resource } from "../../interface/resource/resource.js"; diff --git a/packages/ecs/src/implementation/world/create.test.ts b/packages/ecs/src/implementation/world/create.test.ts index ecca9e0f2..113efae0b 100644 --- a/packages/ecs/src/implementation/world/create.test.ts +++ b/packages/ecs/src/implementation/world/create.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { identify } from "../../interface/registry/ids.test-helper.js"; import { Component } from "../../interface/component/component.js"; diff --git a/packages/ecs/src/implementation/world/create.ts b/packages/ecs/src/implementation/world/create.ts index 0fd594a9f..486bc1580 100644 --- a/packages/ecs/src/implementation/world/create.ts +++ b/packages/ecs/src/implementation/world/create.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Finalizer } from '../../interface/finalizer/created.js'; import type { Rule } from '../../interface/rule/created.js'; import { requireDefinition, type Definition } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/directories.ts b/packages/ecs/src/implementation/world/directories.ts index a1cb8fc92..9d5272d25 100644 --- a/packages/ecs/src/implementation/world/directories.ts +++ b/packages/ecs/src/implementation/world/directories.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { allocateArray, freeArray } from './arrays.js'; import type { State } from './state.js'; diff --git a/packages/ecs/src/implementation/world/directory.test.ts b/packages/ecs/src/implementation/world/directory.test.ts index 938b9eb0a..e1c2d6205 100644 --- a/packages/ecs/src/implementation/world/directory.test.ts +++ b/packages/ecs/src/implementation/world/directory.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Resource } from "../../interface/resource/resource.js"; import { indexOf, reserve } from "./entities.js"; diff --git a/packages/ecs/src/implementation/world/dispatch.cases.ts b/packages/ecs/src/implementation/world/dispatch.cases.ts index 2311769bc..5fa10513d 100644 --- a/packages/ecs/src/implementation/world/dispatch.cases.ts +++ b/packages/ecs/src/implementation/world/dispatch.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./dispatch.fixture.js"; diff --git a/packages/ecs/src/implementation/world/dispatch.fixture.ts b/packages/ecs/src/implementation/world/dispatch.fixture.ts index 2c83ca31e..ec892fd73 100644 --- a/packages/ecs/src/implementation/world/dispatch.fixture.ts +++ b/packages/ecs/src/implementation/world/dispatch.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import type { Schema } from "../../interface/schema/schema.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/entities.ts b/packages/ecs/src/implementation/world/entities.ts index 25de6371e..867efe71c 100644 --- a/packages/ecs/src/implementation/world/entities.ts +++ b/packages/ecs/src/implementation/world/entities.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Entity } from '../../interface/entity/entity.js'; import { allocateArray, growArray } from './arrays.js'; import type { Memory } from './memory.js'; diff --git a/packages/ecs/src/implementation/world/entity-lookup-workers.cases.ts b/packages/ecs/src/implementation/world/entity-lookup-workers.cases.ts index 824decff5..cd41683ed 100644 --- a/packages/ecs/src/implementation/world/entity-lookup-workers.cases.ts +++ b/packages/ecs/src/implementation/world/entity-lookup-workers.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./entity-lookup-workers.fixture.js"; diff --git a/packages/ecs/src/implementation/world/entity-lookup-workers.fixture.ts b/packages/ecs/src/implementation/world/entity-lookup-workers.fixture.ts index 3dfa717ac..4b81b6d70 100644 --- a/packages/ecs/src/implementation/world/entity-lookup-workers.fixture.ts +++ b/packages/ecs/src/implementation/world/entity-lookup-workers.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/entity-lookups.browser.test.ts b/packages/ecs/src/implementation/world/entity-lookups.browser.test.ts index 79cc15c0b..e380da8f2 100644 --- a/packages/ecs/src/implementation/world/entity-lookups.browser.test.ts +++ b/packages/ecs/src/implementation/world/entity-lookups.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { gpuDevice } from "../../interface/resources/gpu-device.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/entity-lookups.test-helper.ts b/packages/ecs/src/implementation/world/entity-lookups.test-helper.ts index fe6ecdb0a..e2da4b0ad 100644 --- a/packages/ecs/src/implementation/world/entity-lookups.test-helper.ts +++ b/packages/ecs/src/implementation/world/entity-lookups.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/entity-lookups.test.ts b/packages/ecs/src/implementation/world/entity-lookups.test.ts index 36699bf41..c7b6932e5 100644 --- a/packages/ecs/src/implementation/world/entity-lookups.test.ts +++ b/packages/ecs/src/implementation/world/entity-lookups.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/execute.ts b/packages/ecs/src/implementation/world/execute.ts index 29873be52..0bbcf3944 100644 --- a/packages/ecs/src/implementation/world/execute.ts +++ b/packages/ecs/src/implementation/world/execute.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import type { Chunk, ChunkResult, Runner, Workers } from './runner.js'; import type { Schedule } from '../../interface/registry/schedule.js'; diff --git a/packages/ecs/src/implementation/world/failures.ts b/packages/ecs/src/implementation/world/failures.ts index 0408780d6..0c4d09da2 100644 --- a/packages/ecs/src/implementation/world/failures.ts +++ b/packages/ecs/src/implementation/world/failures.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Failure, Warning } from '../../interface/report/failure.js'; /** What went wrong in a run or tick, before the world spawns its report: empty lists and a zero when it's clean. */ diff --git a/packages/ecs/src/implementation/world/finalizers.test.ts b/packages/ecs/src/implementation/world/finalizers.test.ts index 3d303942e..e5b700bd8 100644 --- a/packages/ecs/src/implementation/world/finalizers.test.ts +++ b/packages/ecs/src/implementation/world/finalizers.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { identify } from "../../interface/registry/ids.test-helper.js"; import { Component } from "../../interface/component/component.js"; diff --git a/packages/ecs/src/implementation/world/finalizers.ts b/packages/ecs/src/implementation/world/finalizers.ts index 9e8a5b498..59e630522 100644 --- a/packages/ecs/src/implementation/world/finalizers.ts +++ b/packages/ecs/src/implementation/world/finalizers.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../../interface/component/component.js'; import type { Entity } from '../../interface/entity/entity.js'; import type { Finalizer } from '../../interface/finalizer/created.js'; diff --git a/packages/ecs/src/implementation/world/fixtures.test-helper.ts b/packages/ecs/src/implementation/world/fixtures.test-helper.ts index 90f041e13..556683ef9 100644 --- a/packages/ecs/src/implementation/world/fixtures.test-helper.ts +++ b/packages/ecs/src/implementation/world/fixtures.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { resolve } from "node:path"; import { pathToFileURL } from "node:url"; diff --git a/packages/ecs/src/implementation/world/gpu.browser.test.ts b/packages/ecs/src/implementation/world/gpu.browser.test.ts index bc575fe77..6b7482742 100644 --- a/packages/ecs/src/implementation/world/gpu.browser.test.ts +++ b/packages/ecs/src/implementation/world/gpu.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/gpu.ts b/packages/ecs/src/implementation/world/gpu.ts index b20a2d3b9..fbcd13cba 100644 --- a/packages/ecs/src/implementation/world/gpu.ts +++ b/packages/ecs/src/implementation/world/gpu.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { labelOfItem } from '../../interface/registry/index.js'; import { layout } from '../../interface/gpu/layout.js'; import { recordBytes } from '../../interface/gpu/record.js'; diff --git a/packages/ecs/src/implementation/world/holders.ts b/packages/ecs/src/implementation/world/holders.ts index fc5530a5f..01fbbaa88 100644 --- a/packages/ecs/src/implementation/world/holders.ts +++ b/packages/ecs/src/implementation/world/holders.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { indexOf } from './entities.js'; /** diff --git a/packages/ecs/src/implementation/world/ids.test.ts b/packages/ecs/src/implementation/world/ids.test.ts index 4e819af69..74e0025ca 100644 --- a/packages/ecs/src/implementation/world/ids.test.ts +++ b/packages/ecs/src/implementation/world/ids.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/imported-lists.test-helper.ts b/packages/ecs/src/implementation/world/imported-lists.test-helper.ts index 0be2fb101..8050b1c83 100644 --- a/packages/ecs/src/implementation/world/imported-lists.test-helper.ts +++ b/packages/ecs/src/implementation/world/imported-lists.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype } from '../../interface/archetype/archetype.js'; import { Component } from '../../interface/component/component.js'; diff --git a/packages/ecs/src/implementation/world/imported-lists.test.ts b/packages/ecs/src/implementation/world/imported-lists.test.ts index 5592d7530..8610134a7 100644 --- a/packages/ecs/src/implementation/world/imported-lists.test.ts +++ b/packages/ecs/src/implementation/world/imported-lists.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/index-build-csp.test.ts b/packages/ecs/src/implementation/world/index-build-csp.test.ts index 41309e24a..6092ba392 100644 --- a/packages/ecs/src/implementation/world/index-build-csp.test.ts +++ b/packages/ecs/src/implementation/world/index-build-csp.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Index } from "../../interface/indexes/index-type.js"; diff --git a/packages/ecs/src/implementation/world/index-build.cases.ts b/packages/ecs/src/implementation/world/index-build.cases.ts index a79e0d191..e5f746daf 100644 --- a/packages/ecs/src/implementation/world/index-build.cases.ts +++ b/packages/ecs/src/implementation/world/index-build.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./index-build.fixture.js"; diff --git a/packages/ecs/src/implementation/world/index-build.fixture.ts b/packages/ecs/src/implementation/world/index-build.fixture.ts index 202067d61..003233c67 100644 --- a/packages/ecs/src/implementation/world/index-build.fixture.ts +++ b/packages/ecs/src/implementation/world/index-build.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Index } from "../../interface/indexes/index-type.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/index-build.ts b/packages/ecs/src/implementation/world/index-build.ts index 3c5b7bf77..0b74d939d 100644 --- a/packages/ecs/src/implementation/world/index-build.ts +++ b/packages/ecs/src/implementation/world/index-build.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { capacityFor, entryWords, recordCapacity, recordHash, recordKey, recordLength, recordStart } from './index-hash.js'; import { hashWords, orderF32, orderF64 } from './index-keys.js'; diff --git a/packages/ecs/src/implementation/world/index-changed.test.ts b/packages/ecs/src/implementation/world/index-changed.test.ts index 6ebbb8143..8340898c5 100644 --- a/packages/ecs/src/implementation/world/index-changed.test.ts +++ b/packages/ecs/src/implementation/world/index-changed.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/index-hash.ts b/packages/ecs/src/implementation/world/index-hash.ts index 50ea59f3b..b0b55d361 100644 --- a/packages/ecs/src/implementation/world/index-hash.ts +++ b/packages/ecs/src/implementation/world/index-hash.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { allocateArray, freeArray } from './arrays.js'; import type { Memory } from './memory.js'; diff --git a/packages/ecs/src/implementation/world/index-joined.test.ts b/packages/ecs/src/implementation/world/index-joined.test.ts index fbd257d70..60bb57e1a 100644 --- a/packages/ecs/src/implementation/world/index-joined.test.ts +++ b/packages/ecs/src/implementation/world/index-joined.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/index-kernels.test.ts b/packages/ecs/src/implementation/world/index-kernels.test.ts index 28cae0656..53cb5a702 100644 --- a/packages/ecs/src/implementation/world/index-kernels.test.ts +++ b/packages/ecs/src/implementation/world/index-kernels.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/index-keyless.test.ts b/packages/ecs/src/implementation/world/index-keyless.test.ts index f09fa6eb5..fa71c8a70 100644 --- a/packages/ecs/src/implementation/world/index-keyless.test.ts +++ b/packages/ecs/src/implementation/world/index-keyless.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/index-keys.ts b/packages/ecs/src/implementation/world/index-keys.ts index f75c136f6..9fc870ed7 100644 --- a/packages/ecs/src/implementation/world/index-keys.ts +++ b/packages/ecs/src/implementation/world/index-keys.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { declarationOf } from '../../interface/registry/index.js'; import { layoutOf, type Layout, type Leaf, type Scalar } from '../../interface/registry/layout.js'; import type { Storage } from './archetype.js'; diff --git a/packages/ecs/src/implementation/world/index-lookups-csp.test.ts b/packages/ecs/src/implementation/world/index-lookups-csp.test.ts index 184d2a5f8..a28b9a407 100644 --- a/packages/ecs/src/implementation/world/index-lookups-csp.test.ts +++ b/packages/ecs/src/implementation/world/index-lookups-csp.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Index } from "../../interface/indexes/index-type.js"; diff --git a/packages/ecs/src/implementation/world/index-lookups.ts b/packages/ecs/src/implementation/world/index-lookups.ts index cb4666afa..2ca976e1d 100644 --- a/packages/ecs/src/implementation/world/index-lookups.ts +++ b/packages/ecs/src/implementation/world/index-lookups.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Scalar } from '../../interface/registry/layout.js'; import { encodeScalar, encodeValue, hashWords, orderF32, orderF64, partWords, type KeyPart } from './index-keys.js'; import { entryWords, findBucket, lengthOf, recordKey, recordLength, recordStart, startOf, type HashView } from './index-hash.js'; diff --git a/packages/ecs/src/implementation/world/index-order.test.ts b/packages/ecs/src/implementation/world/index-order.test.ts index 6768e91b5..23df92ecf 100644 --- a/packages/ecs/src/implementation/world/index-order.test.ts +++ b/packages/ecs/src/implementation/world/index-order.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Index } from "../../interface/indexes/index-type.js"; diff --git a/packages/ecs/src/implementation/world/index-order.ts b/packages/ecs/src/implementation/world/index-order.ts index b9876726b..e52d9f6c3 100644 --- a/packages/ecs/src/implementation/world/index-order.ts +++ b/packages/ecs/src/implementation/world/index-order.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Archetype } from './archetype.js'; import { allocateArray, freeArray } from './arrays.js'; import { blockAt, blockBase, firstPosition, type SortedTable } from './index-sorted.js'; diff --git a/packages/ecs/src/implementation/world/index-readers.ts b/packages/ecs/src/implementation/world/index-readers.ts index d61a12167..0ad1aad54 100644 --- a/packages/ecs/src/implementation/world/index-readers.ts +++ b/packages/ecs/src/implementation/world/index-readers.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { TypedArray, View } from '../../interface/registry/layout.js'; import { encodeScalar } from './index-keys.js'; import type { WasmKeyValue, WasmProbe } from './wasm.js'; diff --git a/packages/ecs/src/implementation/world/index-sorted.test.ts b/packages/ecs/src/implementation/world/index-sorted.test.ts index 1cadaeacc..7426ab547 100644 --- a/packages/ecs/src/implementation/world/index-sorted.test.ts +++ b/packages/ecs/src/implementation/world/index-sorted.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { blockAt, blockBase, coverSortedEntities, createSortedTable, firstPosition, insertSorted, removeSorted, stampWatched, treeMaximum, watchSortedComponent, type SortedTable } from "./index-sorted.js"; import { createMemory } from "./memory.js"; diff --git a/packages/ecs/src/implementation/world/index-sorted.ts b/packages/ecs/src/implementation/world/index-sorted.ts index 6c82abc8b..6cfee3907 100644 --- a/packages/ecs/src/implementation/world/index-sorted.ts +++ b/packages/ecs/src/implementation/world/index-sorted.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { allocateArray, freeArray } from './arrays.js'; import { compareObjects, type KeyPart } from './index-keys.js'; import type { Memory } from './memory.js'; diff --git a/packages/ecs/src/implementation/world/index-workers.cases.ts b/packages/ecs/src/implementation/world/index-workers.cases.ts index fb311d751..801f401d0 100644 --- a/packages/ecs/src/implementation/world/index-workers.cases.ts +++ b/packages/ecs/src/implementation/world/index-workers.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./index-workers.fixture.js"; diff --git a/packages/ecs/src/implementation/world/index-workers.fixture.ts b/packages/ecs/src/implementation/world/index-workers.fixture.ts index d8c962b8f..8eb066e9b 100644 --- a/packages/ecs/src/implementation/world/index-workers.fixture.ts +++ b/packages/ecs/src/implementation/world/index-workers.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { Index } from "../../interface/indexes/index-type.js"; diff --git a/packages/ecs/src/implementation/world/indexes.test.ts b/packages/ecs/src/implementation/world/indexes.test.ts index c2bf14116..3638409c6 100644 --- a/packages/ecs/src/implementation/world/indexes.test.ts +++ b/packages/ecs/src/implementation/world/indexes.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/indexes.ts b/packages/ecs/src/implementation/world/indexes.ts index 2fc6cc5a1..df866c167 100644 --- a/packages/ecs/src/implementation/world/indexes.ts +++ b/packages/ecs/src/implementation/world/indexes.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { IndexDefinition } from '../../interface/registry/index.js'; import { indexDefinitionOf, indexOfLookup, labelOfItem, watchedBy, watchesEntries } from '../../interface/registry/index.js'; import type { Failure } from '../../interface/report/failure.js'; diff --git a/packages/ecs/src/implementation/world/input.ts b/packages/ecs/src/implementation/world/input.ts index 0771ce07c..67b65ac5b 100644 --- a/packages/ecs/src/implementation/world/input.ts +++ b/packages/ecs/src/implementation/world/input.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; /** The fields of a run's input that a leaf declares, so other members' fields aren't copied to its workers. */ diff --git a/packages/ecs/src/implementation/world/intrinsics-coverage.test.ts b/packages/ecs/src/implementation/world/intrinsics-coverage.test.ts index c5117de70..0f8da36be 100644 --- a/packages/ecs/src/implementation/world/intrinsics-coverage.test.ts +++ b/packages/ecs/src/implementation/world/intrinsics-coverage.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { readdirSync, readFileSync } from 'node:fs'; import { join, relative } from 'node:path'; diff --git a/packages/ecs/src/implementation/world/intrinsics.browser.test.ts b/packages/ecs/src/implementation/world/intrinsics.browser.test.ts index dff0f0e3a..e35812efe 100644 --- a/packages/ecs/src/implementation/world/intrinsics.browser.test.ts +++ b/packages/ecs/src/implementation/world/intrinsics.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { F32, Mat4x4, Quat, U32, Vec2, Vec3, Vec4 } from "../../interface/math/index.js"; diff --git a/packages/ecs/src/implementation/world/intrinsics.ts b/packages/ecs/src/implementation/world/intrinsics.ts index c7e0cf2fa..e1ed3e4fe 100644 --- a/packages/ecs/src/implementation/world/intrinsics.ts +++ b/packages/ecs/src/implementation/world/intrinsics.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Program } from './kernel.js'; type Expression = Program.Expression; diff --git a/packages/ecs/src/implementation/world/join.test.ts b/packages/ecs/src/implementation/world/join.test.ts index cd0b95f85..86250b914 100644 --- a/packages/ecs/src/implementation/world/join.test.ts +++ b/packages/ecs/src/implementation/world/join.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { labelOfItem } from "../../interface/registry/index.js"; diff --git a/packages/ecs/src/implementation/world/join.ts b/packages/ecs/src/implementation/world/join.ts index 249a7573c..49e39d8bf 100644 --- a/packages/ecs/src/implementation/world/join.ts +++ b/packages/ecs/src/implementation/world/join.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Thread } from '../../interface/thread/thread.js'; import type { World } from '../../interface/world/world.js'; import { declarationOf, identifiedItems, idOfItem, idOfKey, indexOfLookup, keyOfId, labelOf, labelOfItem, requireDefinition, threadOf, threadOfDeclaration, watchedBy, type Definition } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/join.type-test.ts b/packages/ecs/src/implementation/world/join.type-test.ts index e3c2c2734..f94ba2531 100644 --- a/packages/ecs/src/implementation/world/join.type-test.ts +++ b/packages/ecs/src/implementation/world/join.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { World } from '../../interface/world/world.js'; import { System } from '../../interface/system/system.js'; import { join } from './create.js'; diff --git a/packages/ecs/src/implementation/world/joined-observer.ts b/packages/ecs/src/implementation/world/joined-observer.ts index a38489448..577213fc5 100644 --- a/packages/ecs/src/implementation/world/joined-observer.ts +++ b/packages/ecs/src/implementation/world/joined-observer.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import type { SystemLookup } from '../../interface/system/access.js'; import { idOfItem, idOfKey, indexOfLookup, labelOf, labelOfItem, threadOf, watchedBy, watchesEntries } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/joining-worker.fixture.ts b/packages/ecs/src/implementation/world/joining-worker.fixture.ts index d78ba786e..9ef3e75d7 100644 --- a/packages/ecs/src/implementation/world/joining-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/joining-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { workers } from "../../interface/resources/workers.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/joining.cases.ts b/packages/ecs/src/implementation/world/joining.cases.ts index bdf9ede05..6bb07fd1c 100644 --- a/packages/ecs/src/implementation/world/joining.cases.ts +++ b/packages/ecs/src/implementation/world/joining.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./joining.fixture.js"; diff --git a/packages/ecs/src/implementation/world/joining.fixture.ts b/packages/ecs/src/implementation/world/joining.fixture.ts index 50c280ba1..99b83e632 100644 --- a/packages/ecs/src/implementation/world/joining.fixture.ts +++ b/packages/ecs/src/implementation/world/joining.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Observe } from "../../observe/index.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/joining.test-helper.ts b/packages/ecs/src/implementation/world/joining.test-helper.ts index a6e7d026c..6f5c9f0f9 100644 --- a/packages/ecs/src/implementation/world/joining.test-helper.ts +++ b/packages/ecs/src/implementation/world/joining.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Resource } from "../../interface/resource/resource.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/joining.ts b/packages/ecs/src/implementation/world/joining.ts index 9421ee646..a29fb4b3c 100644 --- a/packages/ecs/src/implementation/world/joining.ts +++ b/packages/ecs/src/implementation/world/joining.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { World } from '../../interface/world/world.js'; import type { WorkerError } from './protocol.js'; import type { Schema } from '../../interface/schema/schema.js'; diff --git a/packages/ecs/src/implementation/world/journal.ts b/packages/ecs/src/implementation/world/journal.ts index f0598355c..1bf39927c 100644 --- a/packages/ecs/src/implementation/world/journal.ts +++ b/packages/ecs/src/implementation/world/journal.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * Entity indexes whose archetype or references sync points changed: spawned, despawned, moved to another archetype, * or written a reference. Kept only while some reader, an `up` system or an index, needs it. Positions count every diff --git a/packages/ecs/src/implementation/world/kernel-imports-sparks.test-helper.ts b/packages/ecs/src/implementation/world/kernel-imports-sparks.test-helper.ts index f469850ab..f7b5f8799 100644 --- a/packages/ecs/src/implementation/world/kernel-imports-sparks.test-helper.ts +++ b/packages/ecs/src/implementation/world/kernel-imports-sparks.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype, Component, Vec3 } from "../../index.js"; export const position = Symbol("kernelImports/position"); diff --git a/packages/ecs/src/implementation/world/kernel-imports-steer.test-helper.ts b/packages/ecs/src/implementation/world/kernel-imports-steer.test-helper.ts index 612a050fb..b71659189 100644 --- a/packages/ecs/src/implementation/world/kernel-imports-steer.test-helper.ts +++ b/packages/ecs/src/implementation/world/kernel-imports-steer.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Vec3 } from "../../index.js"; /** A pure helper a kernel imports: the build inlines it, and it still runs as written everywhere else. */ diff --git a/packages/ecs/src/implementation/world/kernel-imports.test.ts b/packages/ecs/src/implementation/world/kernel-imports.test.ts index 82df016c0..d8dcc4550 100644 --- a/packages/ecs/src/implementation/world/kernel-imports.test.ts +++ b/packages/ecs/src/implementation/world/kernel-imports.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component, Entity, System, Vec3, World } from "../../index.js"; import { Observe } from "../../observe/index.js"; diff --git a/packages/ecs/src/implementation/world/kernel-indexes.ts b/packages/ecs/src/implementation/world/kernel-indexes.ts index 289ce0bf9..f34109b84 100644 --- a/packages/ecs/src/implementation/world/kernel-indexes.ts +++ b/packages/ecs/src/implementation/world/kernel-indexes.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { samePath, type Path } from '../../interface/registry/layout.js'; import { labelOf, watchedBy } from '../../interface/registry/index.js'; import type { KernelDescription } from './kernel.js'; diff --git a/packages/ecs/src/implementation/world/kernel-lookup.test-helper.ts b/packages/ecs/src/implementation/world/kernel-lookup.test-helper.ts index a258390a3..40a8876a2 100644 --- a/packages/ecs/src/implementation/world/kernel-lookup.test-helper.ts +++ b/packages/ecs/src/implementation/world/kernel-lookup.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../../interface/component/component.js'; import { Entity } from '../../interface/entity/entity.js'; import { System } from '../../interface/system/system.js'; diff --git a/packages/ecs/src/implementation/world/kernel-path.test-helper.ts b/packages/ecs/src/implementation/world/kernel-path.test-helper.ts index 64d423dd5..cecea482d 100644 --- a/packages/ecs/src/implementation/world/kernel-path.test-helper.ts +++ b/packages/ecs/src/implementation/world/kernel-path.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../../interface/component/component.js'; import { System } from '../../interface/system/system.js'; diff --git a/packages/ecs/src/implementation/world/kernel-spawns.test.ts b/packages/ecs/src/implementation/world/kernel-spawns.test.ts index 992f370a7..e3bb8b3f8 100644 --- a/packages/ecs/src/implementation/world/kernel-spawns.test.ts +++ b/packages/ecs/src/implementation/world/kernel-spawns.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Archetype } from "../../interface/archetype/archetype.js"; import { Component } from "../../interface/component/component.js"; diff --git a/packages/ecs/src/implementation/world/kernel.ts b/packages/ecs/src/implementation/world/kernel.ts index 52b19897e..2aa23f9e1 100644 --- a/packages/ecs/src/implementation/world/kernel.ts +++ b/packages/ecs/src/implementation/world/kernel.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { WgslType } from '../../interface/math/intrinsic.js'; import type { Entity } from '../../interface/entity/entity.js'; import type { Reduction } from '../../interface/resource/reduction.js'; diff --git a/packages/ecs/src/implementation/world/kernels-csp.test.ts b/packages/ecs/src/implementation/world/kernels-csp.test.ts index 1c08d64f1..5d795d825 100644 --- a/packages/ecs/src/implementation/world/kernels-csp.test.ts +++ b/packages/ecs/src/implementation/world/kernels-csp.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/kernels.test.ts b/packages/ecs/src/implementation/world/kernels.test.ts index abddaf9d4..7b5a56bb6 100644 --- a/packages/ecs/src/implementation/world/kernels.test.ts +++ b/packages/ecs/src/implementation/world/kernels.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Resource } from "../../interface/resource/resource.js"; diff --git a/packages/ecs/src/implementation/world/kernels.ts b/packages/ecs/src/implementation/world/kernels.ts index a760b4388..b415c4b50 100644 --- a/packages/ecs/src/implementation/world/kernels.ts +++ b/packages/ecs/src/implementation/world/kernels.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import type { Archetype } from './archetype.js'; import type { Kernel, KernelDescription, KernelModule } from './kernel.js'; diff --git a/packages/ecs/src/implementation/world/layout-directory.browser.test.ts b/packages/ecs/src/implementation/world/layout-directory.browser.test.ts index 5390c7169..9dc793c05 100644 --- a/packages/ecs/src/implementation/world/layout-directory.browser.test.ts +++ b/packages/ecs/src/implementation/world/layout-directory.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/layout-directory.cases.ts b/packages/ecs/src/implementation/world/layout-directory.cases.ts index bde64330b..452baebe1 100644 --- a/packages/ecs/src/implementation/world/layout-directory.cases.ts +++ b/packages/ecs/src/implementation/world/layout-directory.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./layout-directory.fixture.js"; diff --git a/packages/ecs/src/implementation/world/layout-directory.fixture.ts b/packages/ecs/src/implementation/world/layout-directory.fixture.ts index eb48225fb..a1fbd2feb 100644 --- a/packages/ecs/src/implementation/world/layout-directory.fixture.ts +++ b/packages/ecs/src/implementation/world/layout-directory.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/layout-directory.ts b/packages/ecs/src/implementation/world/layout-directory.ts index a3ac7cf87..47a53f2c9 100644 --- a/packages/ecs/src/implementation/world/layout-directory.ts +++ b/packages/ecs/src/implementation/world/layout-directory.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { allocateArray, growArray } from './arrays.js'; import type { Archetype } from './archetype.js'; import type { Entities } from './entities.js'; diff --git a/packages/ecs/src/implementation/world/lifetime.cases.ts b/packages/ecs/src/implementation/world/lifetime.cases.ts index 86c898878..6e128003c 100644 --- a/packages/ecs/src/implementation/world/lifetime.cases.ts +++ b/packages/ecs/src/implementation/world/lifetime.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./lifetime.fixture.js"; diff --git a/packages/ecs/src/implementation/world/lifetime.fixture.ts b/packages/ecs/src/implementation/world/lifetime.fixture.ts index d7b1bcd41..53aae275c 100644 --- a/packages/ecs/src/implementation/world/lifetime.fixture.ts +++ b/packages/ecs/src/implementation/world/lifetime.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { Resource } from "../../interface/resource/resource.js"; diff --git a/packages/ecs/src/implementation/world/lifetime.test-helper.ts b/packages/ecs/src/implementation/world/lifetime.test-helper.ts index d6100a42a..76d121353 100644 --- a/packages/ecs/src/implementation/world/lifetime.test-helper.ts +++ b/packages/ecs/src/implementation/world/lifetime.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { System } from "../../interface/system/system.js"; import type { Leaf } from "../../interface/system/leaf.js"; import { definitionOf } from "../../interface/registry/index.js"; diff --git a/packages/ecs/src/implementation/world/lifetime.test.ts b/packages/ecs/src/implementation/world/lifetime.test.ts index b42be3038..e505d447d 100644 --- a/packages/ecs/src/implementation/world/lifetime.test.ts +++ b/packages/ecs/src/implementation/world/lifetime.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/lists.ts b/packages/ecs/src/implementation/world/lists.ts index 5c68e98b7..4f672b86f 100644 --- a/packages/ecs/src/implementation/world/lists.ts +++ b/packages/ecs/src/implementation/world/lists.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Entity } from '../../interface/entity/entity.js'; import { archetypeIndexOf, labelOf } from '../../interface/registry/index.js'; import { batchOf } from './batches.js'; diff --git a/packages/ecs/src/implementation/world/lookup-keys.ts b/packages/ecs/src/implementation/world/lookup-keys.ts index 949ea320c..e6d1fd9e1 100644 --- a/packages/ecs/src/implementation/world/lookup-keys.ts +++ b/packages/ecs/src/implementation/world/lookup-keys.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { SystemLookup } from '../../interface/system/access.js'; import { indexDefinitionOf, indexOfLookup, watchedBy } from '../../interface/registry/index.js'; import type { Component } from '../../interface/component/component.js'; diff --git a/packages/ecs/src/implementation/world/loop.test.ts b/packages/ecs/src/implementation/world/loop.test.ts index 7f8efa289..e078cc029 100644 --- a/packages/ecs/src/implementation/world/loop.test.ts +++ b/packages/ecs/src/implementation/world/loop.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component, System } from "../../index.js"; import { requireDefinition, type Composite } from "../../interface/registry/index.js"; diff --git a/packages/ecs/src/implementation/world/loop.ts b/packages/ecs/src/implementation/world/loop.ts index ccea7f0a6..7e1ea679f 100644 --- a/packages/ecs/src/implementation/world/loop.ts +++ b/packages/ecs/src/implementation/world/loop.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Cadence } from '../../interface/resources/cadence.js'; import type { Composite, Definition } from '../../interface/registry/index.js'; import { labelOfItem } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/memory.test.ts b/packages/ecs/src/implementation/world/memory.test.ts index 53af1a935..7a9303ff8 100644 --- a/packages/ecs/src/implementation/world/memory.test.ts +++ b/packages/ecs/src/implementation/world/memory.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { coveringBuffer, createMemory, pageBytes } from "./memory.js"; diff --git a/packages/ecs/src/implementation/world/memory.ts b/packages/ecs/src/implementation/world/memory.ts index cb1e3d4b5..a66aa053a 100644 --- a/packages/ecs/src/implementation/world/memory.ts +++ b/packages/ecs/src/implementation/world/memory.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Bytes per WebAssembly page. */ export const pageBytes = 65536; /** 4 GiB, the wasm32 limit. Shared memory reserves address space up front, not physical memory. */ diff --git a/packages/ecs/src/implementation/world/mirror.ts b/packages/ecs/src/implementation/world/mirror.ts index 83cd0ab51..3f7f6c26b 100644 --- a/packages/ecs/src/implementation/world/mirror.ts +++ b/packages/ecs/src/implementation/world/mirror.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { indexOf } from './entities.js'; import { cursorField, entitiesWord, recordCount, recordEntities, recordStorages, recordWords, diff --git a/packages/ecs/src/implementation/world/move-log.test.ts b/packages/ecs/src/implementation/world/move-log.test.ts index e4c1d3170..c3131eb7e 100644 --- a/packages/ecs/src/implementation/world/move-log.test.ts +++ b/packages/ecs/src/implementation/world/move-log.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { createBuffer, addCommand, pushCommand, pushComponent, removeCommand, type CommandBuffer } from "./buffer.js"; diff --git a/packages/ecs/src/implementation/world/move-log.ts b/packages/ecs/src/implementation/world/move-log.ts index de46fb46a..3ae273aaa 100644 --- a/packages/ecs/src/implementation/world/move-log.ts +++ b/packages/ecs/src/implementation/world/move-log.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Archetype } from './archetype.js'; import type { Memory } from './memory.js'; diff --git a/packages/ecs/src/implementation/world/names.test.ts b/packages/ecs/src/implementation/world/names.test.ts index 9d52031a2..c56cdcd6b 100644 --- a/packages/ecs/src/implementation/world/names.test.ts +++ b/packages/ecs/src/implementation/world/names.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Finalizer } from "../../interface/finalizer/finalizer.js"; diff --git a/packages/ecs/src/implementation/world/observe-cases.browser.test.ts b/packages/ecs/src/implementation/world/observe-cases.browser.test.ts index 7eecf4cc6..37aed0d06 100644 --- a/packages/ecs/src/implementation/world/observe-cases.browser.test.ts +++ b/packages/ecs/src/implementation/world/observe-cases.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/observe-cases.test.ts b/packages/ecs/src/implementation/world/observe-cases.test.ts index a6d061e2a..0bf0806ff 100644 --- a/packages/ecs/src/implementation/world/observe-cases.test.ts +++ b/packages/ecs/src/implementation/world/observe-cases.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it, vi } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/observe-factories.test.ts b/packages/ecs/src/implementation/world/observe-factories.test.ts index 307b4eacc..4c8c1b702 100644 --- a/packages/ecs/src/implementation/world/observe-factories.test.ts +++ b/packages/ecs/src/implementation/world/observe-factories.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it, vi } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/observe-joined-cases.test.ts b/packages/ecs/src/implementation/world/observe-joined-cases.test.ts index 0b4484cfd..f790f2e4a 100644 --- a/packages/ecs/src/implementation/world/observe-joined-cases.test.ts +++ b/packages/ecs/src/implementation/world/observe-joined-cases.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it, vi } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/observe-ticks-cases.test.ts b/packages/ecs/src/implementation/world/observe-ticks-cases.test.ts index 0631125ef..40a9208cb 100644 --- a/packages/ecs/src/implementation/world/observe-ticks-cases.test.ts +++ b/packages/ecs/src/implementation/world/observe-ticks-cases.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component, Resource, System, always, cadence, clock, wake, workers } from "../../index.js"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/observe.test-helper.ts b/packages/ecs/src/implementation/world/observe.test-helper.ts index 1498a86d5..4c4e71a50 100644 --- a/packages/ecs/src/implementation/world/observe.test-helper.ts +++ b/packages/ecs/src/implementation/world/observe.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { System } from "../../interface/system/system.js"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/observed-workers.cases.ts b/packages/ecs/src/implementation/world/observed-workers.cases.ts index 7a692058c..1ebae01e0 100644 --- a/packages/ecs/src/implementation/world/observed-workers.cases.ts +++ b/packages/ecs/src/implementation/world/observed-workers.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./observed-workers.fixture.js"; diff --git a/packages/ecs/src/implementation/world/observed-workers.fixture.ts b/packages/ecs/src/implementation/world/observed-workers.fixture.ts index 0c4696062..f27c2fa45 100644 --- a/packages/ecs/src/implementation/world/observed-workers.fixture.ts +++ b/packages/ecs/src/implementation/world/observed-workers.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { System } from "../../interface/system/system.js"; import { readEach, select } from "./reads.test-helper.js"; diff --git a/packages/ecs/src/implementation/world/observer-contained-worker.fixture.ts b/packages/ecs/src/implementation/world/observer-contained-worker.fixture.ts index be9730515..0fe9ca948 100644 --- a/packages/ecs/src/implementation/world/observer-contained-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/observer-contained-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { System } from "../../interface/system/system.js"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/observer-contained.browser.test.ts b/packages/ecs/src/implementation/world/observer-contained.browser.test.ts index 2fc844ebc..0cf567217 100644 --- a/packages/ecs/src/implementation/world/observer-contained.browser.test.ts +++ b/packages/ecs/src/implementation/world/observer-contained.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { observerContainedCases } from "./observer-contained.cases.js"; // A real worker in chromium, over the fixture's source. diff --git a/packages/ecs/src/implementation/world/observer-contained.cases.ts b/packages/ecs/src/implementation/world/observer-contained.cases.ts index 6894c02a7..b162dcdfc 100644 --- a/packages/ecs/src/implementation/world/observer-contained.cases.ts +++ b/packages/ecs/src/implementation/world/observer-contained.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./observer-contained.fixture.js"; diff --git a/packages/ecs/src/implementation/world/observer-contained.fixture.ts b/packages/ecs/src/implementation/world/observer-contained.fixture.ts index cc5466ad9..a2659c752 100644 --- a/packages/ecs/src/implementation/world/observer-contained.fixture.ts +++ b/packages/ecs/src/implementation/world/observer-contained.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { workers } from "../../interface/resources/workers.js"; import { createWorld, type CreatedWorld } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/observer-contained.test-helper.ts b/packages/ecs/src/implementation/world/observer-contained.test-helper.ts index b7f6e8321..2456e1fa4 100644 --- a/packages/ecs/src/implementation/world/observer-contained.test-helper.ts +++ b/packages/ecs/src/implementation/world/observer-contained.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from "../../interface/resource/resource.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/observer-contained.test.ts b/packages/ecs/src/implementation/world/observer-contained.test.ts index 3fc80894c..082edbd40 100644 --- a/packages/ecs/src/implementation/world/observer-contained.test.ts +++ b/packages/ecs/src/implementation/world/observer-contained.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Resource, System, workers } from "../../index.js"; import { createWorld, join } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/observer-joined-worker.fixture.ts b/packages/ecs/src/implementation/world/observer-joined-worker.fixture.ts index c20a3dc03..3332da55e 100644 --- a/packages/ecs/src/implementation/world/observer-joined-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/observer-joined-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import type { Entity } from "../../interface/entity/entity.js"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/observer-joined.cases.ts b/packages/ecs/src/implementation/world/observer-joined.cases.ts index f1f0ce058..5aae10601 100644 --- a/packages/ecs/src/implementation/world/observer-joined.cases.ts +++ b/packages/ecs/src/implementation/world/observer-joined.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./observer-joined.fixture.js"; diff --git a/packages/ecs/src/implementation/world/observer-joined.fixture.ts b/packages/ecs/src/implementation/world/observer-joined.fixture.ts index dd95ab078..1c46b9a21 100644 --- a/packages/ecs/src/implementation/world/observer-joined.fixture.ts +++ b/packages/ecs/src/implementation/world/observer-joined.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/observer-joined.test-helper.ts b/packages/ecs/src/implementation/world/observer-joined.test-helper.ts index 703dabb4f..2929cd364 100644 --- a/packages/ecs/src/implementation/world/observer-joined.test-helper.ts +++ b/packages/ecs/src/implementation/world/observer-joined.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Index } from "../../interface/indexes/index-type.js"; import { Resource } from "../../interface/resource/resource.js"; diff --git a/packages/ecs/src/implementation/world/observer-joined.test.ts b/packages/ecs/src/implementation/world/observer-joined.test.ts index 818bf233c..14b26e499 100644 --- a/packages/ecs/src/implementation/world/observer-joined.test.ts +++ b/packages/ecs/src/implementation/world/observer-joined.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component, Index, Resource, System, workers } from "../../index.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/observer.browser.test.ts b/packages/ecs/src/implementation/world/observer.browser.test.ts index 06f858f4b..6ed774f2e 100644 --- a/packages/ecs/src/implementation/world/observer.browser.test.ts +++ b/packages/ecs/src/implementation/world/observer.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Index } from "../../interface/indexes/index-type.js"; diff --git a/packages/ecs/src/implementation/world/observer.test.ts b/packages/ecs/src/implementation/world/observer.test.ts index 255d27f82..0aadabbb1 100644 --- a/packages/ecs/src/implementation/world/observer.test.ts +++ b/packages/ecs/src/implementation/world/observer.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component, Index, Report, Resource, System, workers } from "../../index.js"; import { isObserver, requireDefinition } from "../../interface/registry/index.js"; diff --git a/packages/ecs/src/implementation/world/observer.ts b/packages/ecs/src/implementation/world/observer.ts index 815763613..bb0c8fd5a 100644 --- a/packages/ecs/src/implementation/world/observer.ts +++ b/packages/ecs/src/implementation/world/observer.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import type { Failure } from '../../interface/report/failure.js'; import { labelOfItem } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/order.ts b/packages/ecs/src/implementation/world/order.ts index a0297e390..33c7f43e7 100644 --- a/packages/ecs/src/implementation/world/order.ts +++ b/packages/ecs/src/implementation/world/order.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { allocateArray, freeArray } from './arrays.js'; import type { Memory } from './memory.js'; diff --git a/packages/ecs/src/implementation/world/plan.ts b/packages/ecs/src/implementation/world/plan.ts index bdb900e6e..a35224665 100644 --- a/packages/ecs/src/implementation/world/plan.ts +++ b/packages/ecs/src/implementation/world/plan.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * A sync point's plan: each touched entity's net change, as reusable parallel arrays rather than an object per entity. * `to` is where it ends up; its values are command ranges, applied in issue order so later values win. Each world has diff --git a/packages/ecs/src/implementation/world/platforms.test-helper.ts b/packages/ecs/src/implementation/world/platforms.test-helper.ts index 284694f64..dc6d379ca 100644 --- a/packages/ecs/src/implementation/world/platforms.test-helper.ts +++ b/packages/ecs/src/implementation/world/platforms.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import type { ToWorker } from './protocol.js'; import { browserPort, nodePort, platformWorkers, type WorkerPlatform, type WorkerPort } from './worker-platform.js'; diff --git a/packages/ecs/src/implementation/world/pool-size.cases.ts b/packages/ecs/src/implementation/world/pool-size.cases.ts index e554aa023..6de8781be 100644 --- a/packages/ecs/src/implementation/world/pool-size.cases.ts +++ b/packages/ecs/src/implementation/world/pool-size.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./pool-size.fixture.js"; diff --git a/packages/ecs/src/implementation/world/pool-size.fixture.ts b/packages/ecs/src/implementation/world/pool-size.fixture.ts index 1ba1129b6..efa934697 100644 --- a/packages/ecs/src/implementation/world/pool-size.fixture.ts +++ b/packages/ecs/src/implementation/world/pool-size.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { workers } from "../../interface/resources/workers.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/pool.cases.ts b/packages/ecs/src/implementation/world/pool.cases.ts index 51f4af406..deba36766 100644 --- a/packages/ecs/src/implementation/world/pool.cases.ts +++ b/packages/ecs/src/implementation/world/pool.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./pool.fixture.js"; diff --git a/packages/ecs/src/implementation/world/pool.fixture.ts b/packages/ecs/src/implementation/world/pool.fixture.ts index f1f682105..d60615d22 100644 --- a/packages/ecs/src/implementation/world/pool.fixture.ts +++ b/packages/ecs/src/implementation/world/pool.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { createMemory, pageBytes, pagesWord, type Memory } from "./memory.js"; import { createPool } from "./pool.js"; import { idleKernel } from "./protocol.js"; diff --git a/packages/ecs/src/implementation/world/pool.ts b/packages/ecs/src/implementation/world/pool.ts index f949cc092..75d3c495e 100644 --- a/packages/ecs/src/implementation/world/pool.ts +++ b/packages/ecs/src/implementation/world/pool.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { allocateArray, freeArray } from './arrays.js'; import { emptyBuffer, type CommandBuffer } from './buffer.js'; import type { Memory } from './memory.js'; diff --git a/packages/ecs/src/implementation/world/port.ts b/packages/ecs/src/implementation/world/port.ts index 3d5df8f2a..ce5acf70b 100644 --- a/packages/ecs/src/implementation/world/port.ts +++ b/packages/ecs/src/implementation/world/port.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** One end of a channel between threads: messages each way, in the order they were posted. */ export type Channel = { /** Posts a message, moving the buffers in `transfer`. */ diff --git a/packages/ecs/src/implementation/world/ports.cases.ts b/packages/ecs/src/implementation/world/ports.cases.ts index bf96b8beb..4a5ecc229 100644 --- a/packages/ecs/src/implementation/world/ports.cases.ts +++ b/packages/ecs/src/implementation/world/ports.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./ports.fixture.js"; diff --git a/packages/ecs/src/implementation/world/ports.fixture.ts b/packages/ecs/src/implementation/world/ports.fixture.ts index 90e9d1776..733e9ae32 100644 --- a/packages/ecs/src/implementation/world/ports.fixture.ts +++ b/packages/ecs/src/implementation/world/ports.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Component } from "../../interface/component/component.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/ports.type-test.ts b/packages/ecs/src/implementation/world/ports.type-test.ts index 7df355b01..f5fdc3e95 100644 --- a/packages/ecs/src/implementation/world/ports.type-test.ts +++ b/packages/ecs/src/implementation/world/ports.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import type { MessagePort as NodeMessagePort, Worker as NodeWorker } from "node:worker_threads"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/prepared-lookup.ts b/packages/ecs/src/implementation/world/prepared-lookup.ts index aa53bafbb..26d179d86 100644 --- a/packages/ecs/src/implementation/world/prepared-lookup.ts +++ b/packages/ecs/src/implementation/world/prepared-lookup.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { createSite, indexLookupOf, type Shape, type Site } from './index-lookups.js'; /** Arguments a site passes at most: its key's scalars, flattened from literals. */ diff --git a/packages/ecs/src/implementation/world/prepared-spawn.ts b/packages/ecs/src/implementation/world/prepared-spawn.ts index 6b26d94f7..1447de3ca 100644 --- a/packages/ecs/src/implementation/world/prepared-spawn.ts +++ b/packages/ecs/src/implementation/world/prepared-spawn.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Commands } from '../../interface/system/commands.js'; import type { Essential } from '../../interface/component/value.js'; import type { Entity } from '../../interface/entity/entity.js'; diff --git a/packages/ecs/src/implementation/world/program.ts b/packages/ecs/src/implementation/world/program.ts index 5d1c99a5e..cebf43333 100644 --- a/packages/ecs/src/implementation/world/program.ts +++ b/packages/ecs/src/implementation/world/program.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Finalizer } from '../../interface/finalizer/created.js'; import type { Rule } from '../../interface/rule/created.js'; import type { Key } from './state.js'; diff --git a/packages/ecs/src/implementation/world/protocol.ts b/packages/ecs/src/implementation/world/protocol.ts index 421476d74..f2013070a 100644 --- a/packages/ecs/src/implementation/world/protocol.ts +++ b/packages/ecs/src/implementation/world/protocol.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../../interface/schema/schema.js'; import type { Endpoint } from './port.js'; import type { WasmScalar } from './wasm.js'; diff --git a/packages/ecs/src/implementation/world/publish.ts b/packages/ecs/src/implementation/world/publish.ts index 0a41fd42f..4d67de306 100644 --- a/packages/ecs/src/implementation/world/publish.ts +++ b/packages/ecs/src/implementation/world/publish.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../../interface/schema/schema.js'; import { schemaOf } from '../../interface/registry/index.js'; import { flushBetween } from './layout-directory.js'; diff --git a/packages/ecs/src/implementation/world/ranges.ts b/packages/ecs/src/implementation/world/ranges.ts index 485ed9269..b1f2dd2df 100644 --- a/packages/ecs/src/implementation/world/ranges.ts +++ b/packages/ecs/src/implementation/world/ranges.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { chunkShift } from './kernel.js'; /** One `added` or `changed` filter: per-row ticks, and the newest tick of each chunk of rows. */ diff --git a/packages/ecs/src/implementation/world/reads.test-helper.ts b/packages/ecs/src/implementation/world/reads.test-helper.ts index 8d1940a3b..5a12b072f 100644 --- a/packages/ecs/src/implementation/world/reads.test-helper.ts +++ b/packages/ecs/src/implementation/world/reads.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../../interface/component/component.js'; import type { ReadonlyValue } from '../../interface/component/value.js'; import type { Entity } from '../../interface/entity/entity.js'; diff --git a/packages/ecs/src/implementation/world/reductions.cases.ts b/packages/ecs/src/implementation/world/reductions.cases.ts index a0ffc40dc..ebc221eca 100644 --- a/packages/ecs/src/implementation/world/reductions.cases.ts +++ b/packages/ecs/src/implementation/world/reductions.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./reductions.fixture.js"; diff --git a/packages/ecs/src/implementation/world/reductions.fixture.ts b/packages/ecs/src/implementation/world/reductions.fixture.ts index 62f2f615b..565b225de 100644 --- a/packages/ecs/src/implementation/world/reductions.fixture.ts +++ b/packages/ecs/src/implementation/world/reductions.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Resource } from "../../interface/resource/resource.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/reductions.test.ts b/packages/ecs/src/implementation/world/reductions.test.ts index d0759de2d..f83d79a7a 100644 --- a/packages/ecs/src/implementation/world/reductions.test.ts +++ b/packages/ecs/src/implementation/world/reductions.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Vec3 } from "../../interface/math/index.js"; diff --git a/packages/ecs/src/implementation/world/reductions.ts b/packages/ecs/src/implementation/world/reductions.ts index 35d37ae19..5c29a1c47 100644 --- a/packages/ecs/src/implementation/world/reductions.ts +++ b/packages/ecs/src/implementation/world/reductions.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Reduction } from '../../interface/resource/reduction.js'; import type { Declaration } from '../../interface/system/declaration.js'; import { isReduction } from '../../interface/registry/reduction.js'; diff --git a/packages/ecs/src/implementation/world/reevaluation.test-helper.ts b/packages/ecs/src/implementation/world/reevaluation.test-helper.ts index 4b96f19ae..dadb9bf72 100644 --- a/packages/ecs/src/implementation/world/reevaluation.test-helper.ts +++ b/packages/ecs/src/implementation/world/reevaluation.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, System } from "../../index.js"; // A module the identity example evaluates twice, as a dev server does after an edit. diff --git a/packages/ecs/src/implementation/world/reevaluation.test.ts b/packages/ecs/src/implementation/world/reevaluation.test.ts index 3535fd8c6..394be7114 100644 --- a/packages/ecs/src/implementation/world/reevaluation.test.ts +++ b/packages/ecs/src/implementation/world/reevaluation.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { System } from "../../index.js"; import { Observe } from "../../observe/index.js"; diff --git a/packages/ecs/src/implementation/world/register.ts b/packages/ecs/src/implementation/world/register.ts index e88b16553..fa1c3eff9 100644 --- a/packages/ecs/src/implementation/world/register.ts +++ b/packages/ecs/src/implementation/world/register.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import { idOfItem, idOfKey, labelOf, requireDefinition, threadOf, type Definition } from '../../interface/registry/index.js'; import { createRemoteRunner, unplaceable } from './remote-systems.js'; diff --git a/packages/ecs/src/implementation/world/remote-finalizers-worker.fixture.ts b/packages/ecs/src/implementation/world/remote-finalizers-worker.fixture.ts index bae09b4b2..c5b7c0574 100644 --- a/packages/ecs/src/implementation/world/remote-finalizers-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/remote-finalizers-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { join } from "./create.js"; import { scopeChannel } from "./port.js"; diff --git a/packages/ecs/src/implementation/world/remote-finalizers.cases.ts b/packages/ecs/src/implementation/world/remote-finalizers.cases.ts index 2e3a05c24..dbeb61eae 100644 --- a/packages/ecs/src/implementation/world/remote-finalizers.cases.ts +++ b/packages/ecs/src/implementation/world/remote-finalizers.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./remote-finalizers.fixture.js"; diff --git a/packages/ecs/src/implementation/world/remote-finalizers.fixture.ts b/packages/ecs/src/implementation/world/remote-finalizers.fixture.ts index d4dcaf58a..6f22b5a24 100644 --- a/packages/ecs/src/implementation/world/remote-finalizers.fixture.ts +++ b/packages/ecs/src/implementation/world/remote-finalizers.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import type { Entity } from "../../interface/entity/entity.js"; import { Observe } from "../../observe/index.js"; diff --git a/packages/ecs/src/implementation/world/remote-finalizers.test-helper.ts b/packages/ecs/src/implementation/world/remote-finalizers.test-helper.ts index 872b285f6..7ebe04943 100644 --- a/packages/ecs/src/implementation/world/remote-finalizers.test-helper.ts +++ b/packages/ecs/src/implementation/world/remote-finalizers.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; import { Finalizer } from "../../interface/finalizer/finalizer.js"; diff --git a/packages/ecs/src/implementation/world/remote-finalizers.test.ts b/packages/ecs/src/implementation/world/remote-finalizers.test.ts index 0364ac5c1..95aff7c84 100644 --- a/packages/ecs/src/implementation/world/remote-finalizers.test.ts +++ b/packages/ecs/src/implementation/world/remote-finalizers.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type { Entity } from "../../interface/entity/entity.js"; import { Finalizer } from "../../interface/finalizer/finalizer.js"; diff --git a/packages/ecs/src/implementation/world/remote-objects-worker.fixture.ts b/packages/ecs/src/implementation/world/remote-objects-worker.fixture.ts index acb071221..0845fbffb 100644 --- a/packages/ecs/src/implementation/world/remote-objects-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/remote-objects-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { asEntity } from "./entities.js"; import { join } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/remote-objects.cases.ts b/packages/ecs/src/implementation/world/remote-objects.cases.ts index d223665ab..ea8f99d3e 100644 --- a/packages/ecs/src/implementation/world/remote-objects.cases.ts +++ b/packages/ecs/src/implementation/world/remote-objects.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./remote-objects.fixture.js"; diff --git a/packages/ecs/src/implementation/world/remote-objects.fixture.ts b/packages/ecs/src/implementation/world/remote-objects.fixture.ts index 38e2dccd2..c85347185 100644 --- a/packages/ecs/src/implementation/world/remote-objects.fixture.ts +++ b/packages/ecs/src/implementation/world/remote-objects.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/remote-objects.test-helper.ts b/packages/ecs/src/implementation/world/remote-objects.test-helper.ts index f31748dd8..1d952d719 100644 --- a/packages/ecs/src/implementation/world/remote-objects.test-helper.ts +++ b/packages/ecs/src/implementation/world/remote-objects.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/remote-systems.ts b/packages/ecs/src/implementation/world/remote-systems.ts index 73871c1ea..eddcd11cc 100644 --- a/packages/ecs/src/implementation/world/remote-systems.ts +++ b/packages/ecs/src/implementation/world/remote-systems.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import { entityWatchesOf, lookupComponentsOf } from './lookup-keys.js'; import type { Leaf as FinalizerLeaf } from '../../interface/finalizer/created.js'; diff --git a/packages/ecs/src/implementation/world/remote.test.ts b/packages/ecs/src/implementation/world/remote.test.ts index 7b92abb8c..71553f4a2 100644 --- a/packages/ecs/src/implementation/world/remote.test.ts +++ b/packages/ecs/src/implementation/world/remote.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/remote.ts b/packages/ecs/src/implementation/world/remote.ts index 101fec406..ca744140d 100644 --- a/packages/ecs/src/implementation/world/remote.ts +++ b/packages/ecs/src/implementation/world/remote.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { declarationOf, labelOf, threadOfDeclaration } from '../../interface/registry/index.js'; import { makeLocal, makeRemote } from './archetype.js'; import type { CommandBuffer } from './buffer.js'; diff --git a/packages/ecs/src/implementation/world/removal-worker.fixture.ts b/packages/ecs/src/implementation/world/removal-worker.fixture.ts index 32a992353..7928a14d7 100644 --- a/packages/ecs/src/implementation/world/removal-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/removal-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { join } from "./create.js"; import { scopeChannel } from "./port.js"; diff --git a/packages/ecs/src/implementation/world/removal.cases.ts b/packages/ecs/src/implementation/world/removal.cases.ts index 12951ace4..70d0ec3b2 100644 --- a/packages/ecs/src/implementation/world/removal.cases.ts +++ b/packages/ecs/src/implementation/world/removal.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./removal.fixture.js"; diff --git a/packages/ecs/src/implementation/world/removal.fixture.ts b/packages/ecs/src/implementation/world/removal.fixture.ts index 0d40192a1..ebe1b9456 100644 --- a/packages/ecs/src/implementation/world/removal.fixture.ts +++ b/packages/ecs/src/implementation/world/removal.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/remove-joined.test.ts b/packages/ecs/src/implementation/world/remove-joined.test.ts index 95fca1dc2..efb05f1a9 100644 --- a/packages/ecs/src/implementation/world/remove-joined.test.ts +++ b/packages/ecs/src/implementation/world/remove-joined.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/remove.test-helper.ts b/packages/ecs/src/implementation/world/remove.test-helper.ts index 49c5617cf..8185405f7 100644 --- a/packages/ecs/src/implementation/world/remove.test-helper.ts +++ b/packages/ecs/src/implementation/world/remove.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from "../../interface/resource/resource.js"; import { System } from "../../interface/system/system.js"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/remove.test.ts b/packages/ecs/src/implementation/world/remove.test.ts index a99c902eb..945d3157d 100644 --- a/packages/ecs/src/implementation/world/remove.test.ts +++ b/packages/ecs/src/implementation/world/remove.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/reports.test-helper.ts b/packages/ecs/src/implementation/world/reports.test-helper.ts index d45682f00..593d9ab67 100644 --- a/packages/ecs/src/implementation/world/reports.test-helper.ts +++ b/packages/ecs/src/implementation/world/reports.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Report } from "../../interface/report/report.js"; import { retainedRuns } from "./reports.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/reports.test.ts b/packages/ecs/src/implementation/world/reports.test.ts index 5938f6409..db328c337 100644 --- a/packages/ecs/src/implementation/world/reports.test.ts +++ b/packages/ecs/src/implementation/world/reports.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component, Index, Report, Resource, System, clock, workers } from "../../index.js"; import { createWorld } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/reports.ts b/packages/ecs/src/implementation/world/reports.ts index fa733872d..8613ad5cd 100644 --- a/packages/ecs/src/implementation/world/reports.ts +++ b/packages/ecs/src/implementation/world/reports.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Report } from '../../interface/report/report.js'; import type { Failure, Warning } from '../../interface/report/failure.js'; import { stampChanged } from './archetype.js'; diff --git a/packages/ecs/src/implementation/world/resources.ts b/packages/ecs/src/implementation/world/resources.ts index 574b9562b..49ba73351 100644 --- a/packages/ecs/src/implementation/world/resources.ts +++ b/packages/ecs/src/implementation/world/resources.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Storage } from './archetype.js'; import { indexOf, reserve } from './entities.js'; import { defaultOf, idOf, type Key, type State } from './state.js'; diff --git a/packages/ecs/src/implementation/world/rows.test.ts b/packages/ecs/src/implementation/world/rows.test.ts index 17307c875..4269f9fdc 100644 --- a/packages/ecs/src/implementation/world/rows.test.ts +++ b/packages/ecs/src/implementation/world/rows.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/rows.ts b/packages/ecs/src/implementation/world/rows.ts index 5f859626f..4d9f194ee 100644 --- a/packages/ecs/src/implementation/world/rows.ts +++ b/packages/ecs/src/implementation/world/rows.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Entity } from '../../interface/entity/entity.js'; import type { Declaration } from '../../interface/system/declaration.js'; import type { SystemLookup } from '../../interface/system/access.js'; diff --git a/packages/ecs/src/implementation/world/rules.test.ts b/packages/ecs/src/implementation/world/rules.test.ts index 769291cd8..8bd5f49fc 100644 --- a/packages/ecs/src/implementation/world/rules.test.ts +++ b/packages/ecs/src/implementation/world/rules.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/runner.ts b/packages/ecs/src/implementation/world/runner.ts index 432aaa6c6..4dc78bc2a 100644 --- a/packages/ecs/src/implementation/world/runner.ts +++ b/packages/ecs/src/implementation/world/runner.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import type { Archetype } from './archetype.js'; import { kernelOf } from './attach-kernel.js'; diff --git a/packages/ecs/src/implementation/world/schedule.test.ts b/packages/ecs/src/implementation/world/schedule.test.ts index aa64015ce..1251fa95b 100644 --- a/packages/ecs/src/implementation/world/schedule.test.ts +++ b/packages/ecs/src/implementation/world/schedule.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Composite } from "../../interface/system/composite.js"; diff --git a/packages/ecs/src/implementation/world/semantics.test.ts b/packages/ecs/src/implementation/world/semantics.test.ts index 14c0d86b4..73fae368c 100644 --- a/packages/ecs/src/implementation/world/semantics.test.ts +++ b/packages/ecs/src/implementation/world/semantics.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/share.test.ts b/packages/ecs/src/implementation/world/share.test.ts index b12fdf01d..6dfa8dbfb 100644 --- a/packages/ecs/src/implementation/world/share.test.ts +++ b/packages/ecs/src/implementation/world/share.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it, vi } from "vitest"; import { workers } from "../../interface/resources/workers.js"; import { createWorld, join } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/sharing.ts b/packages/ecs/src/implementation/world/sharing.ts index 519fa0a88..59fb1ea82 100644 --- a/packages/ecs/src/implementation/world/sharing.ts +++ b/packages/ecs/src/implementation/world/sharing.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { World } from '../../interface/world/world.js'; import type { Failure } from '../../interface/report/failure.js'; import { definitionOf, idOfKey, indexDefinitionOf, itemOfId, keyOfId, labelOfItem, requireDefinition, type Definition } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/staging.ts b/packages/ecs/src/implementation/world/staging.ts index 168915e11..0d8663fc2 100644 --- a/packages/ecs/src/implementation/world/staging.ts +++ b/packages/ecs/src/implementation/world/staging.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Entity } from '../../interface/entity/entity.js'; import { viewsOf, type Layout, type Views } from '../../interface/registry/layout.js'; import { writeF32, writeF32Lanes, writeF64, writeI32, writeOf, writeU32, type Archetype } from './archetype.js'; diff --git a/packages/ecs/src/implementation/world/state.ts b/packages/ecs/src/implementation/world/state.ts index 0171bfa25..5f97809e9 100644 --- a/packages/ecs/src/implementation/world/state.ts +++ b/packages/ecs/src/implementation/world/state.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { createHolds, type Holds } from './stop-lists.js'; import type { Entity } from '../../interface/entity/entity.js'; import { declarationOf, firstKeyOf, kindOf, labelOf } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/stop-lists.ts b/packages/ecs/src/implementation/world/stop-lists.ts index 32dfebf01..8a5390f6e 100644 --- a/packages/ecs/src/implementation/world/stop-lists.ts +++ b/packages/ecs/src/implementation/world/stop-lists.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Finalizer } from '../../interface/finalizer/created.js'; import type { Memory } from './memory.js'; import type { StringStore } from './strings.js'; diff --git a/packages/ecs/src/implementation/world/strings.test.ts b/packages/ecs/src/implementation/world/strings.test.ts index c2f5889fc..13608233e 100644 --- a/packages/ecs/src/implementation/world/strings.test.ts +++ b/packages/ecs/src/implementation/world/strings.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it, vi } from "vitest"; import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/strings.ts b/packages/ecs/src/implementation/world/strings.ts index da1242184..14540de73 100644 --- a/packages/ecs/src/implementation/world/strings.ts +++ b/packages/ecs/src/implementation/world/strings.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { coveringBuffer, type Memory } from './memory.js'; // Strings in shared memory (design.md, "A string's storage"): a string component's column holds a handle per row, to diff --git a/packages/ecs/src/implementation/world/structure.ts b/packages/ecs/src/implementation/world/structure.ts index 7c3154a3b..86e9a21f1 100644 --- a/packages/ecs/src/implementation/world/structure.ts +++ b/packages/ecs/src/implementation/world/structure.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Archetype } from './archetype.js'; import type { Holders } from './holders.js'; import { strataOf, type RuleFacts, type Strata } from '../../interface/registry/strata.js'; diff --git a/packages/ecs/src/implementation/world/synchronize.test.ts b/packages/ecs/src/implementation/world/synchronize.test.ts index 1fea60ddb..37ffdb87e 100644 --- a/packages/ecs/src/implementation/world/synchronize.test.ts +++ b/packages/ecs/src/implementation/world/synchronize.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { createBlock, endBlock, generationOf, indexOf, reserve, reserveFrom } from "./entities.js"; import { createState } from "./state.js"; diff --git a/packages/ecs/src/implementation/world/synchronize.ts b/packages/ecs/src/implementation/world/synchronize.ts index 4fa932a74..6777bc463 100644 --- a/packages/ecs/src/implementation/world/synchronize.ts +++ b/packages/ecs/src/implementation/world/synchronize.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Views } from '../../interface/registry/layout.js'; import { copyValue, ensureCapacity, swapRemove, writeF32, writeF32Lanes, writeF64, writeI32, writeU32, type Archetype, type Storage } from './archetype.js'; import { chunkShift } from './kernel.js'; diff --git a/packages/ecs/src/implementation/world/tail-blocks.ts b/packages/ecs/src/implementation/world/tail-blocks.ts index a3565734e..08b80c8b2 100644 --- a/packages/ecs/src/implementation/world/tail-blocks.ts +++ b/packages/ecs/src/implementation/world/tail-blocks.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { lineWords } from './protocol.js'; // What the world's thread and a joined thread share to run a tail (threads.md, "Tails"): a block per tail system, of diff --git a/packages/ecs/src/implementation/world/tails-worker.fixture.ts b/packages/ecs/src/implementation/world/tails-worker.fixture.ts index 7d9c5f178..deaa0de35 100644 --- a/packages/ecs/src/implementation/world/tails-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/tails-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { requireDefinition } from "../../interface/registry/index.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/tails.cases.ts b/packages/ecs/src/implementation/world/tails.cases.ts index 56641dc1d..a0a316655 100644 --- a/packages/ecs/src/implementation/world/tails.cases.ts +++ b/packages/ecs/src/implementation/world/tails.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./tails.fixture.js"; diff --git a/packages/ecs/src/implementation/world/tails.fixture.ts b/packages/ecs/src/implementation/world/tails.fixture.ts index cd6d8bfac..76ada07b4 100644 --- a/packages/ecs/src/implementation/world/tails.fixture.ts +++ b/packages/ecs/src/implementation/world/tails.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/tails.test-helper.ts b/packages/ecs/src/implementation/world/tails.test-helper.ts index 9f6daad12..807365023 100644 --- a/packages/ecs/src/implementation/world/tails.test-helper.ts +++ b/packages/ecs/src/implementation/world/tails.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Resource } from "../../interface/resource/resource.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/tails.test.ts b/packages/ecs/src/implementation/world/tails.test.ts index cca1e8ca8..08936f553 100644 --- a/packages/ecs/src/implementation/world/tails.test.ts +++ b/packages/ecs/src/implementation/world/tails.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/tails.ts b/packages/ecs/src/implementation/world/tails.ts index 80b36fcc7..012667d87 100644 --- a/packages/ecs/src/implementation/world/tails.ts +++ b/packages/ecs/src/implementation/world/tails.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/system/leaf.js'; import type { Failure } from '../../interface/report/failure.js'; import { declarationOf, firstKeyOf, labelOfItem } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/target.test.ts b/packages/ecs/src/implementation/world/target.test.ts index 708db7b94..a8364fe8a 100644 --- a/packages/ecs/src/implementation/world/target.test.ts +++ b/packages/ecs/src/implementation/world/target.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component, Entity, System, workers } from "../../index.js"; import { createWorld } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/terminal.ts b/packages/ecs/src/implementation/world/terminal.ts index 3fbf4d8c6..eddbcd8f3 100644 --- a/packages/ecs/src/implementation/world/terminal.ts +++ b/packages/ecs/src/implementation/world/terminal.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The `Symbol.for` name of the global `WeakSet` of system bodies the plugin proved never reach their context's * `commands`. Its version changes with the set's format. diff --git a/packages/ecs/src/implementation/world/thread-directory.ts b/packages/ecs/src/implementation/world/thread-directory.ts index 7c7ec30d9..220fc0a15 100644 --- a/packages/ecs/src/implementation/world/thread-directory.ts +++ b/packages/ecs/src/implementation/world/thread-directory.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { declarationOf, firstKeyOf, keyOfId, labelOf } from '../../interface/registry/index.js'; import { layoutOf, viewsOf, type Layout, type Views } from '../../interface/registry/layout.js'; import { writeOf } from './archetype.js'; diff --git a/packages/ecs/src/implementation/world/thread-finalizers.ts b/packages/ecs/src/implementation/world/thread-finalizers.ts index d0dabd7db..0c42a704f 100644 --- a/packages/ecs/src/implementation/world/thread-finalizers.ts +++ b/packages/ecs/src/implementation/world/thread-finalizers.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Leaf } from '../../interface/finalizer/created.js'; import { labelOf } from '../../interface/registry/index.js'; import { objectLayout, viewsOf, type Layout } from '../../interface/registry/layout.js'; diff --git a/packages/ecs/src/implementation/world/thread-indexes.ts b/packages/ecs/src/implementation/world/thread-indexes.ts index 6d81c6a53..27c224a4c 100644 --- a/packages/ecs/src/implementation/world/thread-indexes.ts +++ b/packages/ecs/src/implementation/world/thread-indexes.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Layout } from '../../interface/registry/layout.js'; import { recordKey, type HashView } from './index-hash.js'; import { keyPartsOf } from './index-keys.js'; diff --git a/packages/ecs/src/implementation/world/thread-observer.ts b/packages/ecs/src/implementation/world/thread-observer.ts index 3794853f4..ea6ecb2fd 100644 --- a/packages/ecs/src/implementation/world/thread-observer.ts +++ b/packages/ecs/src/implementation/world/thread-observer.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Commands } from '../../interface/system/commands.js'; import type { Leaf } from '../../interface/system/leaf.js'; import { definitionOf, isLeaf, itemOfId, labelOfItem } from '../../interface/registry/index.js'; diff --git a/packages/ecs/src/implementation/world/thread-systems-worker.fixture.ts b/packages/ecs/src/implementation/world/thread-systems-worker.fixture.ts index b7ebe345f..a57cb0c2d 100644 --- a/packages/ecs/src/implementation/world/thread-systems-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/thread-systems-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import type { World } from "../../interface/world/world.js"; import { asEntity } from "./entities.js"; diff --git a/packages/ecs/src/implementation/world/thread-systems.cases.ts b/packages/ecs/src/implementation/world/thread-systems.cases.ts index 637bb4e23..79f1f7ffc 100644 --- a/packages/ecs/src/implementation/world/thread-systems.cases.ts +++ b/packages/ecs/src/implementation/world/thread-systems.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./thread-systems.fixture.js"; diff --git a/packages/ecs/src/implementation/world/thread-systems.fixture.ts b/packages/ecs/src/implementation/world/thread-systems.fixture.ts index 23d3e11ce..b5a6e4dd0 100644 --- a/packages/ecs/src/implementation/world/thread-systems.fixture.ts +++ b/packages/ecs/src/implementation/world/thread-systems.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Observe } from "../../observe/index.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/thread-systems.test-helper.ts b/packages/ecs/src/implementation/world/thread-systems.test-helper.ts index 981597eac..93451c1a8 100644 --- a/packages/ecs/src/implementation/world/thread-systems.test-helper.ts +++ b/packages/ecs/src/implementation/world/thread-systems.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import type { Entity } from "../../interface/entity/entity.js"; import { Observe } from "../../observe/index.js"; diff --git a/packages/ecs/src/implementation/world/thread-systems.test.ts b/packages/ecs/src/implementation/world/thread-systems.test.ts index ca219fae6..96a7c5475 100644 --- a/packages/ecs/src/implementation/world/thread-systems.test.ts +++ b/packages/ecs/src/implementation/world/thread-systems.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { workers } from "../../interface/resources/workers.js"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/thread-systems.ts b/packages/ecs/src/implementation/world/thread-systems.ts index 87102e902..bcb38ccee 100644 --- a/packages/ecs/src/implementation/world/thread-systems.ts +++ b/packages/ecs/src/implementation/world/thread-systems.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Entity } from '../../interface/entity/entity.js'; import type { Commands } from '../../interface/system/commands.js'; import type { Leaf } from '../../interface/system/leaf.js'; diff --git a/packages/ecs/src/implementation/world/thread-tasks.ts b/packages/ecs/src/implementation/world/thread-tasks.ts index ddbfd0797..ccd086973 100644 --- a/packages/ecs/src/implementation/world/thread-tasks.ts +++ b/packages/ecs/src/implementation/world/thread-tasks.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { lineWords } from './protocol.js'; // What the world's thread and a joined thread filling objects share to run that thread's systems (threads.md, "Systems diff --git a/packages/ecs/src/implementation/world/threads.browser.test.ts b/packages/ecs/src/implementation/world/threads.browser.test.ts index f63b2f018..a7c89510f 100644 --- a/packages/ecs/src/implementation/world/threads.browser.test.ts +++ b/packages/ecs/src/implementation/world/threads.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { workersCases } from "./workers.cases.js"; import { layoutDirectoryCases } from "./layout-directory.cases.js"; import { poolCases } from "./pool.cases.js"; diff --git a/packages/ecs/src/implementation/world/threads.test.ts b/packages/ecs/src/implementation/world/threads.test.ts index c99e5dfe2..c1ccb4fad 100644 --- a/packages/ecs/src/implementation/world/threads.test.ts +++ b/packages/ecs/src/implementation/world/threads.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { builtFixture } from "./fixtures.test-helper.js"; import type * as Workers from "./workers.fixture.js"; import { workersCases } from "./workers.cases.js"; diff --git a/packages/ecs/src/implementation/world/ticks.browser.test.ts b/packages/ecs/src/implementation/world/ticks.browser.test.ts index 025cf136e..196170362 100644 --- a/packages/ecs/src/implementation/world/ticks.browser.test.ts +++ b/packages/ecs/src/implementation/world/ticks.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Resource } from "../../interface/resource/resource.js"; import { always } from "../../interface/resources/always.js"; diff --git a/packages/ecs/src/implementation/world/ticks.test.ts b/packages/ecs/src/implementation/world/ticks.test.ts index 7cef31c7a..7b2cad3a1 100644 --- a/packages/ecs/src/implementation/world/ticks.test.ts +++ b/packages/ecs/src/implementation/world/ticks.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Resource, System, clock, workers } from "../../index.js"; import { createWorld } from "./create.js"; diff --git a/packages/ecs/src/implementation/world/traits.test.ts b/packages/ecs/src/implementation/world/traits.test.ts index d3d59aebb..49e2d1a47 100644 --- a/packages/ecs/src/implementation/world/traits.test.ts +++ b/packages/ecs/src/implementation/world/traits.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/transfers-worker.fixture.ts b/packages/ecs/src/implementation/world/transfers-worker.fixture.ts index 1fbd48eb0..80b3c8f2a 100644 --- a/packages/ecs/src/implementation/world/transfers-worker.fixture.ts +++ b/packages/ecs/src/implementation/world/transfers-worker.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { requireDefinition } from "../../interface/registry/index.js"; import type { World } from "../../interface/world/world.js"; diff --git a/packages/ecs/src/implementation/world/transfers.cases.ts b/packages/ecs/src/implementation/world/transfers.cases.ts index 088c3ea42..5beb58006 100644 --- a/packages/ecs/src/implementation/world/transfers.cases.ts +++ b/packages/ecs/src/implementation/world/transfers.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./transfers.fixture.js"; diff --git a/packages/ecs/src/implementation/world/transfers.fixture.ts b/packages/ecs/src/implementation/world/transfers.fixture.ts index 9da48befd..d27787b68 100644 --- a/packages/ecs/src/implementation/world/transfers.fixture.ts +++ b/packages/ecs/src/implementation/world/transfers.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Observe } from "../../observe/index.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/transfers.test-helper.ts b/packages/ecs/src/implementation/world/transfers.test-helper.ts index 1801970fb..ba9fad9b0 100644 --- a/packages/ecs/src/implementation/world/transfers.test-helper.ts +++ b/packages/ecs/src/implementation/world/transfers.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { Resource } from "../../interface/resource/resource.js"; diff --git a/packages/ecs/src/implementation/world/transfers.test.ts b/packages/ecs/src/implementation/world/transfers.test.ts index efa2ec1c9..2b74f42e8 100644 --- a/packages/ecs/src/implementation/world/transfers.test.ts +++ b/packages/ecs/src/implementation/world/transfers.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type { Observe } from "../../observe/index.js"; import { workers } from "../../interface/resources/workers.js"; diff --git a/packages/ecs/src/implementation/world/transfers.ts b/packages/ecs/src/implementation/world/transfers.ts index 3b0c93c0f..98ab644fe 100644 --- a/packages/ecs/src/implementation/world/transfers.ts +++ b/packages/ecs/src/implementation/world/transfers.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { TaskChannel } from './remote-systems.js'; // Transfers (threads.md, "Transfers"): a run's input holding Transferable values moves them to the thread its system diff --git a/packages/ecs/src/implementation/world/up-tree.test.ts b/packages/ecs/src/implementation/world/up-tree.test.ts index b20e66878..591ae1757 100644 --- a/packages/ecs/src/implementation/world/up-tree.test.ts +++ b/packages/ecs/src/implementation/world/up-tree.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/up-workers.cases.ts b/packages/ecs/src/implementation/world/up-workers.cases.ts index 4bdf26dbe..a46f6b242 100644 --- a/packages/ecs/src/implementation/world/up-workers.cases.ts +++ b/packages/ecs/src/implementation/world/up-workers.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./up-workers.fixture.js"; diff --git a/packages/ecs/src/implementation/world/up-workers.fixture.ts b/packages/ecs/src/implementation/world/up-workers.fixture.ts index 18fb480bc..c38b777c9 100644 --- a/packages/ecs/src/implementation/world/up-workers.fixture.ts +++ b/packages/ecs/src/implementation/world/up-workers.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { System } from "../../interface/system/system.js"; diff --git a/packages/ecs/src/implementation/world/up.browser.test.ts b/packages/ecs/src/implementation/world/up.browser.test.ts index 8757ebab8..c081bee47 100644 --- a/packages/ecs/src/implementation/world/up.browser.test.ts +++ b/packages/ecs/src/implementation/world/up.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/up.test.ts b/packages/ecs/src/implementation/world/up.test.ts index e2ed5971f..e021ed25c 100644 --- a/packages/ecs/src/implementation/world/up.test.ts +++ b/packages/ecs/src/implementation/world/up.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/up.ts b/packages/ecs/src/implementation/world/up.ts index f86c00051..369a0221d 100644 --- a/packages/ecs/src/implementation/world/up.ts +++ b/packages/ecs/src/implementation/world/up.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Up } from '../../interface/system/access.js'; import type { Archetype, Storage } from './archetype.js'; import { generationOf, indexOf } from './entities.js'; diff --git a/packages/ecs/src/implementation/world/wasm-kernels.test.ts b/packages/ecs/src/implementation/world/wasm-kernels.test.ts index fcdba6b89..6216563bc 100644 --- a/packages/ecs/src/implementation/world/wasm-kernels.test.ts +++ b/packages/ecs/src/implementation/world/wasm-kernels.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; diff --git a/packages/ecs/src/implementation/world/wasm.test.ts b/packages/ecs/src/implementation/world/wasm.test.ts index 478906012..d2b72a00e 100644 --- a/packages/ecs/src/implementation/world/wasm.test.ts +++ b/packages/ecs/src/implementation/world/wasm.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type { Program } from "./kernel.js"; import { generateWasm, importsOf, type WasmColumn } from "./wasm.js"; diff --git a/packages/ecs/src/implementation/world/wasm.ts b/packages/ecs/src/implementation/world/wasm.ts index a91845a81..fe6846f86 100644 --- a/packages/ecs/src/implementation/world/wasm.ts +++ b/packages/ecs/src/implementation/world/wasm.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { chunkShift, type Program } from './kernel.js'; import type { Reduction } from '../../interface/resource/reduction.js'; import type { View } from '../../interface/registry/layout.js'; diff --git a/packages/ecs/src/implementation/world/wgsl.test.ts b/packages/ecs/src/implementation/world/wgsl.test.ts index a2a019224..0f60a3702 100644 --- a/packages/ecs/src/implementation/world/wgsl.test.ts +++ b/packages/ecs/src/implementation/world/wgsl.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, test } from "vitest"; import type { Program } from "./kernel.js"; import { generateWgsl } from "./wgsl.js"; diff --git a/packages/ecs/src/implementation/world/wgsl.ts b/packages/ecs/src/implementation/world/wgsl.ts index f9ad7a3e8..44a2ae7d0 100644 --- a/packages/ecs/src/implementation/world/wgsl.ts +++ b/packages/ecs/src/implementation/world/wgsl.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { laneCount } from './intrinsics.js'; import type { Program } from './kernel.js'; import type { WasmColumn, WasmScalar } from './wasm.js'; diff --git a/packages/ecs/src/implementation/world/worker-platform.ts b/packages/ecs/src/implementation/world/worker-platform.ts index 42ada9a9c..62d2bea5d 100644 --- a/packages/ecs/src/implementation/world/worker-platform.ts +++ b/packages/ecs/src/implementation/world/worker-platform.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import type { MessagePort as NodeMessagePort, Worker as NodeWorker } from 'node:worker_threads'; import type { FromWorker, ToWorker } from './protocol.js'; diff --git a/packages/ecs/src/implementation/world/worker.ts b/packages/ecs/src/implementation/world/worker.ts index 960d45be7..b0ed19286 100644 --- a/packages/ecs/src/implementation/world/worker.ts +++ b/packages/ecs/src/implementation/world/worker.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { buildKernel, buildViews, phases, readPlan, runBuildStep } from './index-build.js'; import type { Entity } from '../../interface/entity/entity.js'; import { createBlock, endBlock, locate, reserveFrom, tableLength, type Block } from './entities.js'; diff --git a/packages/ecs/src/implementation/world/workers.cases.ts b/packages/ecs/src/implementation/world/workers.cases.ts index 0405570b4..d110c30e1 100644 --- a/packages/ecs/src/implementation/world/workers.cases.ts +++ b/packages/ecs/src/implementation/world/workers.cases.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type * as Fixture from "./workers.fixture.js"; diff --git a/packages/ecs/src/implementation/world/workers.fixture.ts b/packages/ecs/src/implementation/world/workers.fixture.ts index 1a63ad6e2..0bceffef7 100644 --- a/packages/ecs/src/implementation/world/workers.fixture.ts +++ b/packages/ecs/src/implementation/world/workers.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../../interface/component/component.js"; import { Entity } from "../../interface/entity/entity.js"; import { Resource } from "../../interface/resource/resource.js"; diff --git a/packages/ecs/src/implementation/world/world-host.fixture.ts b/packages/ecs/src/implementation/world/world-host.fixture.ts index f2658f37a..1965e4852 100644 --- a/packages/ecs/src/implementation/world/world-host.fixture.ts +++ b/packages/ecs/src/implementation/world/world-host.fixture.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { scopeChannel } from "./port.js"; import { lentWorkers } from "./worker-platform.js"; import { simulate } from "./workers.fixture.js"; diff --git a/packages/ecs/src/index.ts b/packages/ecs/src/index.ts index 53fc4dd00..f146c518f 100644 --- a/packages/ecs/src/index.ts +++ b/packages/ecs/src/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { create, join } from './implementation/index.js'; import type { Create } from './interface/world/create.js'; import type { Join } from './interface/world/join.js'; diff --git a/packages/ecs/src/interface/archetype/archetype.ts b/packages/ecs/src/interface/archetype/archetype.ts index e01e40585..850526668 100644 --- a/packages/ecs/src/interface/archetype/archetype.ts +++ b/packages/ecs/src/interface/archetype/archetype.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Archetype = never; export * as Archetype from './index.js'; diff --git a/packages/ecs/src/interface/archetype/archetype.type-test.ts b/packages/ecs/src/interface/archetype/archetype.type-test.ts index 3f1d23bb1..c89bbf297 100644 --- a/packages/ecs/src/interface/archetype/archetype.type-test.ts +++ b/packages/ecs/src/interface/archetype/archetype.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; import { Component } from '../component/component.js'; import { Archetype, System } from "@adobe/ecs"; diff --git a/packages/ecs/src/interface/archetype/create.test.ts b/packages/ecs/src/interface/archetype/create.test.ts index 590fd881a..c45e116cf 100644 --- a/packages/ecs/src/interface/archetype/create.test.ts +++ b/packages/ecs/src/interface/archetype/create.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../component/component.js"; import { archetypeIndexOf } from "../registry/index.js"; diff --git a/packages/ecs/src/interface/archetype/create.ts b/packages/ecs/src/interface/archetype/create.ts index 10075306a..238645fca 100644 --- a/packages/ecs/src/interface/archetype/create.ts +++ b/packages/ecs/src/interface/archetype/create.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import { indexArchetype } from '../registry/archetypes.js'; diff --git a/packages/ecs/src/interface/archetype/index.ts b/packages/ecs/src/interface/archetype/index.ts index 8fbd8a7ef..08656ff16 100644 --- a/packages/ecs/src/interface/archetype/index.ts +++ b/packages/ecs/src/interface/archetype/index.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './create.js'; diff --git a/packages/ecs/src/interface/archetype/values-of.ts b/packages/ecs/src/interface/archetype/values-of.ts index 89aaf8b76..85baa7e95 100644 --- a/packages/ecs/src/interface/archetype/values-of.ts +++ b/packages/ecs/src/interface/archetype/values-of.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; /** Components a spawn or add may leave out: a tag, whose value is `true`, and one whose type allows `null`, its start. */ diff --git a/packages/ecs/src/interface/component/component.ts b/packages/ecs/src/interface/component/component.ts index 39ce53ef8..ff1b38fd6 100644 --- a/packages/ecs/src/interface/component/component.ts +++ b/packages/ecs/src/interface/component/component.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Component = never; diff --git a/packages/ecs/src/interface/component/declaration.ts b/packages/ecs/src/interface/component/declaration.ts index 7844966a3..021251142 100644 --- a/packages/ecs/src/interface/component/declaration.ts +++ b/packages/ecs/src/interface/component/declaration.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { IsData } from "../schema/is-data.js"; import type { Schema } from "../schema/schema.js"; import type { Key as TraitKey } from "../trait/key.js"; diff --git a/packages/ecs/src/interface/component/declaration.type-test.ts b/packages/ecs/src/interface/component/declaration.type-test.ts index 4ffc738f4..c2cbee4fc 100644 --- a/packages/ecs/src/interface/component/declaration.type-test.ts +++ b/packages/ecs/src/interface/component/declaration.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Entity } from '../entity/entity.js'; import { Vec3 } from '../math/index.js'; import { Component } from './component.js'; diff --git a/packages/ecs/src/interface/component/index.ts b/packages/ecs/src/interface/component/index.ts index 780e23943..ac4e91828 100644 --- a/packages/ecs/src/interface/component/index.ts +++ b/packages/ecs/src/interface/component/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './register.js'; export type { Key } from './key.js'; export type { Value, With } from './value.js'; diff --git a/packages/ecs/src/interface/component/key.ts b/packages/ecs/src/interface/component/key.ts index 02bfa15f0..1adc3fcc0 100644 --- a/packages/ecs/src/interface/component/key.ts +++ b/packages/ecs/src/interface/component/key.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Components } from './types.js'; export type Key = keyof Components; diff --git a/packages/ecs/src/interface/component/key.type-test.ts b/packages/ecs/src/interface/component/key.type-test.ts index ac8a72377..a5582d817 100644 --- a/packages/ecs/src/interface/component/key.type-test.ts +++ b/packages/ecs/src/interface/component/key.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, Resource } from "@adobe/ecs"; import type { Key as TraitKey } from "../trait/key.js"; diff --git a/packages/ecs/src/interface/component/register.test.ts b/packages/ecs/src/interface/component/register.test.ts index d37229da9..c2666f77b 100644 --- a/packages/ecs/src/interface/component/register.test.ts +++ b/packages/ecs/src/interface/component/register.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Entity } from "../entity/entity.js"; import { declarationOf, kindOf, threadOfDeclaration } from "../registry/index.js"; diff --git a/packages/ecs/src/interface/component/register.ts b/packages/ecs/src/interface/component/register.ts index cb40100dc..99afedc9e 100644 --- a/packages/ecs/src/interface/component/register.ts +++ b/packages/ecs/src/interface/component/register.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { createRegistry, type AnyDeclaration } from "../registry/declarations.js"; import type { Resource } from "../resource/resource.js"; import type { Schema } from "../schema/schema.js"; diff --git a/packages/ecs/src/interface/component/types.ts b/packages/ecs/src/interface/component/types.ts index 3587be0b9..0fdecb25e 100644 --- a/packages/ecs/src/interface/component/types.ts +++ b/packages/ecs/src/interface/component/types.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * Each component's traits, `type` included, by augmentation: `[position]: { type: Vec3 }`, * `[slot]: { type: Slot; derived: true }`. Registration must give exactly these. diff --git a/packages/ecs/src/interface/component/value.ts b/packages/ecs/src/interface/component/value.ts index 0fb7d3a41..0b7c1aa21 100644 --- a/packages/ecs/src/interface/component/value.ts +++ b/packages/ecs/src/interface/component/value.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { ThreadOf } from '../thread/of.js'; import type { Key as TraitKey } from "../trait/key.js"; import type { Key } from "./key.js"; diff --git a/packages/ecs/src/interface/component/values.ts b/packages/ecs/src/interface/component/values.ts index 0247835f4..0d57c84c0 100644 --- a/packages/ecs/src/interface/component/values.ts +++ b/packages/ecs/src/interface/component/values.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Key } from "./key.js"; import type { Value } from './value.js'; diff --git a/packages/ecs/src/interface/entity/entity.ts b/packages/ecs/src/interface/entity/entity.ts index bd3bd88cc..782dc4631 100644 --- a/packages/ecs/src/interface/entity/entity.ts +++ b/packages/ecs/src/interface/entity/entity.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. declare const entityBrand: unique symbol; /** diff --git a/packages/ecs/src/interface/entity/index.ts b/packages/ecs/src/interface/entity/index.ts index c2a34e6fa..da4641d4b 100644 --- a/packages/ecs/src/interface/entity/index.ts +++ b/packages/ecs/src/interface/entity/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../schema/schema.js'; import type { Entity } from './entity.js'; diff --git a/packages/ecs/src/interface/finalizer/body.ts b/packages/ecs/src/interface/finalizer/body.ts index a226a5654..752acab74 100644 --- a/packages/ecs/src/interface/finalizer/body.ts +++ b/packages/ecs/src/interface/finalizer/body.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Entity } from '../entity/entity.js'; import type { Resource } from '../resource/resource.js'; diff --git a/packages/ecs/src/interface/finalizer/create.test.ts b/packages/ecs/src/interface/finalizer/create.test.ts index 7c77fc0c1..cba1ad24f 100644 --- a/packages/ecs/src/interface/finalizer/create.test.ts +++ b/packages/ecs/src/interface/finalizer/create.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../component/component.js"; import { identify } from "../registry/ids.test-helper.js"; diff --git a/packages/ecs/src/interface/finalizer/create.ts b/packages/ecs/src/interface/finalizer/create.ts index 0442de2ce..170a79c6d 100644 --- a/packages/ecs/src/interface/finalizer/create.ts +++ b/packages/ecs/src/interface/finalizer/create.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { declarationOf, kindOf, labelOf } from '../registry/names.js'; import { takeIdOfDeclaration } from '../registry/ids.js'; import { firstItemOf, labelOfItem, nameOf } from '../registry/items.js'; diff --git a/packages/ecs/src/interface/finalizer/created.ts b/packages/ecs/src/interface/finalizer/created.ts index 3eb56d4e0..4e3f68f2c 100644 --- a/packages/ecs/src/interface/finalizer/created.ts +++ b/packages/ecs/src/interface/finalizer/created.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { ChangesDeclaration, Declaration } from './declaration.js'; // Bodies' parameters are checked where they're created, so a finalizer holds any body. diff --git a/packages/ecs/src/interface/finalizer/declaration.ts b/packages/ecs/src/interface/finalizer/declaration.ts index 978ff0146..ded9fea99 100644 --- a/packages/ecs/src/interface/finalizer/declaration.ts +++ b/packages/ecs/src/interface/finalizer/declaration.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Resource } from '../resource/resource.js'; import type { Lookup } from '../system/access.js'; diff --git a/packages/ecs/src/interface/finalizer/finalizer.ts b/packages/ecs/src/interface/finalizer/finalizer.ts index af0218d8f..642ca3559 100644 --- a/packages/ecs/src/interface/finalizer/finalizer.ts +++ b/packages/ecs/src/interface/finalizer/finalizer.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * A finalizer, the value `Finalizer.create` or `Finalizer.changes` returned: identified by that value, labeled by its * name, and listed in other finalizers' `before` and `after`. diff --git a/packages/ecs/src/interface/finalizer/index.ts b/packages/ecs/src/interface/finalizer/index.ts index 8fbd8a7ef..08656ff16 100644 --- a/packages/ecs/src/interface/finalizer/index.ts +++ b/packages/ecs/src/interface/finalizer/index.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './create.js'; diff --git a/packages/ecs/src/interface/finalizer/name.ts b/packages/ecs/src/interface/finalizer/name.ts index 50cbfa06d..ef87e3b53 100644 --- a/packages/ecs/src/interface/finalizer/name.ts +++ b/packages/ecs/src/interface/finalizer/name.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The label reports and errors give it, which needn't be unique: the value its constructor returns is its identity, so * separately written code can't collide by name. Namespacing it (`"physics/integrate"`) keeps labels short. Without diff --git a/packages/ecs/src/interface/gpu/accessors.ts b/packages/ecs/src/interface/gpu/accessors.ts index 7c3d676ab..d628fad30 100644 --- a/packages/ecs/src/interface/gpu/accessors.ts +++ b/packages/ecs/src/interface/gpu/accessors.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { layoutOf, type Leaf } from '../registry/layout.js'; import { declarationOf } from '../registry/index.js'; import type { Shader } from '../system/render.js'; diff --git a/packages/ecs/src/interface/gpu/gpu.ts b/packages/ecs/src/interface/gpu/gpu.ts index 7441c863a..72ff15cec 100644 --- a/packages/ecs/src/interface/gpu/gpu.ts +++ b/packages/ecs/src/interface/gpu/gpu.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** `Gpu.wgsl` and `Gpu.layout` give render systems' shaders and pipelines what they need from schemas alone. */ export type Gpu = never; diff --git a/packages/ecs/src/interface/gpu/gpu.type-test.ts b/packages/ecs/src/interface/gpu/gpu.type-test.ts index 2648982a4..090e07113 100644 --- a/packages/ecs/src/interface/gpu/gpu.type-test.ts +++ b/packages/ecs/src/interface/gpu/gpu.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../component/component.js'; import type { Gpu } from '../index.js'; import { System } from '../system/system.js'; diff --git a/packages/ecs/src/interface/gpu/index.ts b/packages/ecs/src/interface/gpu/index.ts index 43ea53b4a..c3eb586ce 100644 --- a/packages/ecs/src/interface/gpu/index.ts +++ b/packages/ecs/src/interface/gpu/index.ts @@ -1,2 +1,3 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { layout } from './layout.js'; export { wgsl } from './wgsl.js'; diff --git a/packages/ecs/src/interface/gpu/layout.ts b/packages/ecs/src/interface/gpu/layout.ts index fe9364314..5e89cb0d8 100644 --- a/packages/ecs/src/interface/gpu/layout.ts +++ b/packages/ecs/src/interface/gpu/layout.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { recordBytes } from './record.js'; const layouts = new WeakMap(); diff --git a/packages/ecs/src/interface/gpu/record.ts b/packages/ecs/src/interface/gpu/record.ts index 3fb6d90d3..79237d280 100644 --- a/packages/ecs/src/interface/gpu/record.ts +++ b/packages/ecs/src/interface/gpu/record.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * Bytes per parameter or table record, the dynamic offset alignment WebGPU guarantees. A record is `u32` words: a * row count, then a word address in the heap per column, then, for kernels, scalars as f32 bits. diff --git a/packages/ecs/src/interface/gpu/wgsl.ts b/packages/ecs/src/interface/gpu/wgsl.ts index 12def83a6..b9f7a39c1 100644 --- a/packages/ecs/src/interface/gpu/wgsl.ts +++ b/packages/ecs/src/interface/gpu/wgsl.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { definitionOf } from '../registry/index.js'; import type { Name } from '../system/name.js'; import type { System } from '../system/system.js'; diff --git a/packages/ecs/src/interface/index.ts b/packages/ecs/src/interface/index.ts index 0059d6e72..1afca4f3d 100644 --- a/packages/ecs/src/interface/index.ts +++ b/packages/ecs/src/interface/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { Archetype } from './archetype/archetype.js'; export { Component } from './component/component.js'; export { Entity } from './entity/entity.js'; diff --git a/packages/ecs/src/interface/index.type-test.ts b/packages/ecs/src/interface/index.type-test.ts index 11894649d..fc0fbaee5 100644 --- a/packages/ecs/src/interface/index.type-test.ts +++ b/packages/ecs/src/interface/index.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, Finalizer, Resource, Rule, System, gpuDevice, workers, type Gpu } from "@adobe/ecs"; import type * as Ecs from "@adobe/ecs"; import type { Create } from "./world/create.js"; diff --git a/packages/ecs/src/interface/indexes/create.test.ts b/packages/ecs/src/interface/indexes/create.test.ts index 3cb48ade3..c72b27c0c 100644 --- a/packages/ecs/src/interface/indexes/create.test.ts +++ b/packages/ecs/src/interface/indexes/create.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../component/component.js"; import { Entity } from "../entity/entity.js"; diff --git a/packages/ecs/src/interface/indexes/create.ts b/packages/ecs/src/interface/indexes/create.ts index d498f06f6..d1105a542 100644 --- a/packages/ecs/src/interface/indexes/create.ts +++ b/packages/ecs/src/interface/indexes/create.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import { threadOfDeclaration } from '../registry/declarations.js'; import { takeIdOfDeclaration } from '../registry/ids.js'; diff --git a/packages/ecs/src/interface/indexes/created.ts b/packages/ecs/src/interface/indexes/created.ts index 264744a3d..47ea8ec0c 100644 --- a/packages/ecs/src/interface/indexes/created.ts +++ b/packages/ecs/src/interface/indexes/created.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Declaration } from './declaration.js'; /** What `Index.create` records: its kind, its label and its declaration. */ diff --git a/packages/ecs/src/interface/indexes/declaration.ts b/packages/ecs/src/interface/indexes/declaration.ts index 98f139165..3408b13d2 100644 --- a/packages/ecs/src/interface/indexes/declaration.ts +++ b/packages/ecs/src/interface/indexes/declaration.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Name } from './name.js'; diff --git a/packages/ecs/src/interface/indexes/index-type.ts b/packages/ecs/src/interface/indexes/index-type.ts index 1bb0295fa..39ad05d4b 100644 --- a/packages/ecs/src/interface/indexes/index-type.ts +++ b/packages/ecs/src/interface/indexes/index-type.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Declaration } from './declaration.js'; declare const declared: unique symbol; diff --git a/packages/ecs/src/interface/indexes/index.ts b/packages/ecs/src/interface/indexes/index.ts index 8fbd8a7ef..08656ff16 100644 --- a/packages/ecs/src/interface/indexes/index.ts +++ b/packages/ecs/src/interface/indexes/index.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './create.js'; diff --git a/packages/ecs/src/interface/indexes/index.type-test.ts b/packages/ecs/src/interface/indexes/index.type-test.ts index 9da5a8ca5..7966ce0f3 100644 --- a/packages/ecs/src/interface/indexes/index.type-test.ts +++ b/packages/ecs/src/interface/indexes/index.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../component/component.js'; import { Entity } from '../entity/entity.js'; import { Finalizer } from '../finalizer/finalizer.js'; diff --git a/packages/ecs/src/interface/indexes/name.ts b/packages/ecs/src/interface/indexes/name.ts index 587cf579c..2c27dcc79 100644 --- a/packages/ecs/src/interface/indexes/name.ts +++ b/packages/ecs/src/interface/indexes/name.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The label reports and errors give it, which needn't be unique: the value `Index.create` returns is its identity. * Without one, it's labeled by its binding and the id the plugin gave it, or else by its kind numbered. diff --git a/packages/ecs/src/interface/math/f32/index.ts b/packages/ecs/src/interface/math/f32/index.ts index 0737147fa..9fe4517f3 100644 --- a/packages/ecs/src/interface/math/f32/index.ts +++ b/packages/ecs/src/interface/math/f32/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type F32 = number; export * as F32 from "./public.js"; diff --git a/packages/ecs/src/interface/math/f32/public.ts b/packages/ecs/src/interface/math/f32/public.ts index 20cdc26e1..f525dd499 100644 --- a/packages/ecs/src/interface/math/f32/public.ts +++ b/packages/ecs/src/interface/math/f32/public.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./schema.js"; diff --git a/packages/ecs/src/interface/math/f32/round-half-even.ts b/packages/ecs/src/interface/math/f32/round-half-even.ts index a0c4c0c9d..1b2caf175 100644 --- a/packages/ecs/src/interface/math/f32/round-half-even.ts +++ b/packages/ecs/src/interface/math/f32/round-half-even.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Rounds to the nearest integer, and halfway values to the even one, as WGSL's `round` does. */ export const roundHalfEven = (x: number): number => { const rounded = Math.round(x); diff --git a/packages/ecs/src/interface/math/f32/schema.ts b/packages/ecs/src/interface/math/f32/schema.ts index 10f9e6734..e85f3c59d 100644 --- a/packages/ecs/src/interface/math/f32/schema.ts +++ b/packages/ecs/src/interface/math/f32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../schema/schema.js"; export const schema = { type: "number", precision: 1 } as const satisfies Schema; diff --git a/packages/ecs/src/interface/math/i32/index.ts b/packages/ecs/src/interface/math/i32/index.ts index 166c0a857..dc94e8ba1 100644 --- a/packages/ecs/src/interface/math/i32/index.ts +++ b/packages/ecs/src/interface/math/i32/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Integers in [-2^31, 2^31). Functions wrap as WGSL's i32 does; for other values their results are indeterminate. */ export type I32 = number; diff --git a/packages/ecs/src/interface/math/i32/public.ts b/packages/ecs/src/interface/math/i32/public.ts index b4e83702b..ecfb1e4cd 100644 --- a/packages/ecs/src/interface/math/i32/public.ts +++ b/packages/ecs/src/interface/math/i32/public.ts @@ -1,2 +1,3 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { schema } from "./schema.js"; export { shiftRight } from "./shift-right.js"; diff --git a/packages/ecs/src/interface/math/i32/schema.ts b/packages/ecs/src/interface/math/i32/schema.ts index 1b1da8a97..181003c02 100644 --- a/packages/ecs/src/interface/math/i32/schema.ts +++ b/packages/ecs/src/interface/math/i32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../schema/schema.js"; export const schema = { type: "integer", minimum: -2147483648, maximum: 2147483647 } as const satisfies Schema; diff --git a/packages/ecs/src/interface/math/i32/shift-right.ts b/packages/ecs/src/interface/math/i32/shift-right.ts index bf9a4fcd5..04ebb09ae 100644 --- a/packages/ecs/src/interface/math/i32/shift-right.ts +++ b/packages/ecs/src/interface/math/i32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 } from "./index.js"; export const shiftRight = (n: I32, shift: number): I32 => n >> shift; diff --git a/packages/ecs/src/interface/math/index.ts b/packages/ecs/src/interface/math/index.ts index 8d7324630..2b516567a 100644 --- a/packages/ecs/src/interface/math/index.ts +++ b/packages/ecs/src/interface/math/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./f32/index.js"; export * from "./i32/index.js"; export * from "./u32/index.js"; diff --git a/packages/ecs/src/interface/math/intrinsic.ts b/packages/ecs/src/interface/math/intrinsic.ts index ff4018489..171379524 100644 --- a/packages/ecs/src/interface/math/intrinsic.ts +++ b/packages/ecs/src/interface/math/intrinsic.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** A WGSL value type an intrinsic takes or returns, made of one lane per scalar leaf. */ export type WgslType = | "f32" | "i32" | "u32" diff --git a/packages/ecs/src/interface/math/mat4x4/add.ts b/packages/ecs/src/interface/math/mat4x4/add.ts index 52b6537ac..b2116fe18 100644 --- a/packages/ecs/src/interface/math/mat4x4/add.ts +++ b/packages/ecs/src/interface/math/mat4x4/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/determinant.ts b/packages/ecs/src/interface/math/mat4x4/determinant.ts index 70085663b..fc20d8238 100644 --- a/packages/ecs/src/interface/math/mat4x4/determinant.ts +++ b/packages/ecs/src/interface/math/mat4x4/determinant.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/identity.ts b/packages/ecs/src/interface/math/mat4x4/identity.ts index 65eb448b3..559e862f5 100644 --- a/packages/ecs/src/interface/math/mat4x4/identity.ts +++ b/packages/ecs/src/interface/math/mat4x4/identity.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const identity: Mat4x4 = [ diff --git a/packages/ecs/src/interface/math/mat4x4/index.ts b/packages/ecs/src/interface/math/mat4x4/index.ts index a07ee6c28..4c5893d33 100644 --- a/packages/ecs/src/interface/math/mat4x4/index.ts +++ b/packages/ecs/src/interface/math/mat4x4/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Mat4x4 = readonly [number, number, number, number, number, number, number, number, number, number, number, number, number, number, number, number]; diff --git a/packages/ecs/src/interface/math/mat4x4/inverse.ts b/packages/ecs/src/interface/math/mat4x4/inverse.ts index a0850b420..d93ac856f 100644 --- a/packages/ecs/src/interface/math/mat4x4/inverse.ts +++ b/packages/ecs/src/interface/math/mat4x4/inverse.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import { determinant } from "./determinant.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/look-at.test.ts b/packages/ecs/src/interface/math/mat4x4/look-at.test.ts index c3b5c2af1..795ac20ae 100644 --- a/packages/ecs/src/interface/math/mat4x4/look-at.test.ts +++ b/packages/ecs/src/interface/math/mat4x4/look-at.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, test } from "vitest"; import { Mat4x4 } from "./index.js"; import { Quat } from "../quat/index.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/look-at.ts b/packages/ecs/src/interface/math/mat4x4/look-at.ts index 76efb15b6..eec800121 100644 --- a/packages/ecs/src/interface/math/mat4x4/look-at.ts +++ b/packages/ecs/src/interface/math/mat4x4/look-at.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import type { Vec3 } from "../vec3/index.js"; import { Vec3 as Vec3Namespace } from "../vec3/index.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/multiply-vec3.ts b/packages/ecs/src/interface/math/mat4x4/multiply-vec3.ts index cd843fa6c..5d49166fe 100644 --- a/packages/ecs/src/interface/math/mat4x4/multiply-vec3.ts +++ b/packages/ecs/src/interface/math/mat4x4/multiply-vec3.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import type { Vec3 } from "../vec3/index.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/multiply-vec4.ts b/packages/ecs/src/interface/math/mat4x4/multiply-vec4.ts index c7c9bf882..c5245275a 100644 --- a/packages/ecs/src/interface/math/mat4x4/multiply-vec4.ts +++ b/packages/ecs/src/interface/math/mat4x4/multiply-vec4.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import type { Vec4 } from "../vec4/index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/multiply.ts b/packages/ecs/src/interface/math/mat4x4/multiply.ts index 2828f86a5..2b2db4c15 100644 --- a/packages/ecs/src/interface/math/mat4x4/multiply.ts +++ b/packages/ecs/src/interface/math/mat4x4/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/orthographic.ts b/packages/ecs/src/interface/math/mat4x4/orthographic.ts index 720c23897..ad7c7cde8 100644 --- a/packages/ecs/src/interface/math/mat4x4/orthographic.ts +++ b/packages/ecs/src/interface/math/mat4x4/orthographic.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const orthographic = ( diff --git a/packages/ecs/src/interface/math/mat4x4/perspective.ts b/packages/ecs/src/interface/math/mat4x4/perspective.ts index 3336b34fa..ff140b6f9 100644 --- a/packages/ecs/src/interface/math/mat4x4/perspective.ts +++ b/packages/ecs/src/interface/math/mat4x4/perspective.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const perspective = (fovy: number, aspect: number, near: number, far: number): Mat4x4 => { diff --git a/packages/ecs/src/interface/math/mat4x4/public.ts b/packages/ecs/src/interface/math/mat4x4/public.ts index b955b331a..3de5992b0 100644 --- a/packages/ecs/src/interface/math/mat4x4/public.ts +++ b/packages/ecs/src/interface/math/mat4x4/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./add.js"; export * from "./determinant.js"; export * from "./identity.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/rotation-x.ts b/packages/ecs/src/interface/math/mat4x4/rotation-x.ts index 4d0363146..0946cfd66 100644 --- a/packages/ecs/src/interface/math/mat4x4/rotation-x.ts +++ b/packages/ecs/src/interface/math/mat4x4/rotation-x.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const rotationX = (angle: number): Mat4x4 => { diff --git a/packages/ecs/src/interface/math/mat4x4/rotation-y.ts b/packages/ecs/src/interface/math/mat4x4/rotation-y.ts index 0eb1eb768..74081ee89 100644 --- a/packages/ecs/src/interface/math/mat4x4/rotation-y.ts +++ b/packages/ecs/src/interface/math/mat4x4/rotation-y.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const rotationY = (angle: number): Mat4x4 => { diff --git a/packages/ecs/src/interface/math/mat4x4/rotation-z.ts b/packages/ecs/src/interface/math/mat4x4/rotation-z.ts index 86d3e206c..20d8b9075 100644 --- a/packages/ecs/src/interface/math/mat4x4/rotation-z.ts +++ b/packages/ecs/src/interface/math/mat4x4/rotation-z.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const rotationZ = (angle: number): Mat4x4 => { diff --git a/packages/ecs/src/interface/math/mat4x4/rotation.test.ts b/packages/ecs/src/interface/math/mat4x4/rotation.test.ts index d586414d4..6f52668e4 100644 --- a/packages/ecs/src/interface/math/mat4x4/rotation.test.ts +++ b/packages/ecs/src/interface/math/mat4x4/rotation.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, test } from "vitest"; import { Mat4x4 } from "./index.js"; import { Quat } from "../quat/index.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/scale.ts b/packages/ecs/src/interface/math/mat4x4/scale.ts index 31d2a6479..c506c87fc 100644 --- a/packages/ecs/src/interface/math/mat4x4/scale.ts +++ b/packages/ecs/src/interface/math/mat4x4/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/scaling.ts b/packages/ecs/src/interface/math/mat4x4/scaling.ts index 553f7eadf..d969f4191 100644 --- a/packages/ecs/src/interface/math/mat4x4/scaling.ts +++ b/packages/ecs/src/interface/math/mat4x4/scaling.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const scaling = (x: number, y: number, z: number): Mat4x4 => [ diff --git a/packages/ecs/src/interface/math/mat4x4/schema.ts b/packages/ecs/src/interface/math/mat4x4/schema.ts index 722ed939c..eb4675139 100644 --- a/packages/ecs/src/interface/math/mat4x4/schema.ts +++ b/packages/ecs/src/interface/math/mat4x4/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../schema/schema.js"; import { schema as item } from "../f32/schema.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/subtract.ts b/packages/ecs/src/interface/math/mat4x4/subtract.ts index a61f9ea93..cc8a9c061 100644 --- a/packages/ecs/src/interface/math/mat4x4/subtract.ts +++ b/packages/ecs/src/interface/math/mat4x4/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/translation.ts b/packages/ecs/src/interface/math/mat4x4/translation.ts index 1b5d34ba1..36978757b 100644 --- a/packages/ecs/src/interface/math/mat4x4/translation.ts +++ b/packages/ecs/src/interface/math/mat4x4/translation.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const translation = (x: number, y: number, z: number): Mat4x4 => [ diff --git a/packages/ecs/src/interface/math/mat4x4/transpose.ts b/packages/ecs/src/interface/math/mat4x4/transpose.ts index 232f63002..a992f0f3d 100644 --- a/packages/ecs/src/interface/math/mat4x4/transpose.ts +++ b/packages/ecs/src/interface/math/mat4x4/transpose.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/mat4x4/zero.ts b/packages/ecs/src/interface/math/mat4x4/zero.ts index bbd6c1231..378ae8ab7 100644 --- a/packages/ecs/src/interface/math/mat4x4/zero.ts +++ b/packages/ecs/src/interface/math/mat4x4/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Mat4x4 } from "./index.js"; export const zero: Mat4x4 = [ diff --git a/packages/ecs/src/interface/math/math.type-test.ts b/packages/ecs/src/interface/math/math.type-test.ts index 98ebad40b..cc51dee09 100644 --- a/packages/ecs/src/interface/math/math.type-test.ts +++ b/packages/ecs/src/interface/math/math.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Mat4x4, Quat, Vec2, Vec3, Vec4 } from '../index.js'; // Each type is also a namespace of functions; `Vec3` is `Vec3.F32`, with integer vectors nested beside it. diff --git a/packages/ecs/src/interface/math/quat/add.ts b/packages/ecs/src/interface/math/quat/add.ts index aff18277f..6aa1bf059 100644 --- a/packages/ecs/src/interface/math/quat/add.ts +++ b/packages/ecs/src/interface/math/quat/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/quat/align-to.ts b/packages/ecs/src/interface/math/quat/align-to.ts index bc3786a0f..06937d2d0 100644 --- a/packages/ecs/src/interface/math/quat/align-to.ts +++ b/packages/ecs/src/interface/math/quat/align-to.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import type { Vec3 } from "../vec3/index.js"; import { Vec3 as Vec3Namespace } from "../vec3/index.js"; diff --git a/packages/ecs/src/interface/math/quat/conjugate.ts b/packages/ecs/src/interface/math/quat/conjugate.ts index b03fdcb9c..eb9bd42a4 100644 --- a/packages/ecs/src/interface/math/quat/conjugate.ts +++ b/packages/ecs/src/interface/math/quat/conjugate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; export const conjugate = ([x, y, z, w]: Quat): Quat => [-x, -y, -z, w]; diff --git a/packages/ecs/src/interface/math/quat/distance.ts b/packages/ecs/src/interface/math/quat/distance.ts index 7dc3ee525..cce7ae071 100644 --- a/packages/ecs/src/interface/math/quat/distance.ts +++ b/packages/ecs/src/interface/math/quat/distance.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { length } from "./length.js"; import { subtract } from "./subtract.js"; diff --git a/packages/ecs/src/interface/math/quat/dot.ts b/packages/ecs/src/interface/math/quat/dot.ts index 2e053ef84..2353c17a2 100644 --- a/packages/ecs/src/interface/math/quat/dot.ts +++ b/packages/ecs/src/interface/math/quat/dot.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/quat/from-axis-angle.ts b/packages/ecs/src/interface/math/quat/from-axis-angle.ts index a58243dd9..9ff4bd3d0 100644 --- a/packages/ecs/src/interface/math/quat/from-axis-angle.ts +++ b/packages/ecs/src/interface/math/quat/from-axis-angle.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import type { Vec3 } from "../vec3/index.js"; import { identity } from "./identity.js"; diff --git a/packages/ecs/src/interface/math/quat/from-euler.ts b/packages/ecs/src/interface/math/quat/from-euler.ts index 10eaad3b7..2fefc3152 100644 --- a/packages/ecs/src/interface/math/quat/from-euler.ts +++ b/packages/ecs/src/interface/math/quat/from-euler.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; export const fromEuler = (x: number, y: number, z: number): Quat => { diff --git a/packages/ecs/src/interface/math/quat/identity.ts b/packages/ecs/src/interface/math/quat/identity.ts index a8eecb747..e46e17dbd 100644 --- a/packages/ecs/src/interface/math/quat/identity.ts +++ b/packages/ecs/src/interface/math/quat/identity.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; export const identity: Quat = [0, 0, 0, 1]; diff --git a/packages/ecs/src/interface/math/quat/index.ts b/packages/ecs/src/interface/math/quat/index.ts index 2afd0c50e..a69b1e594 100644 --- a/packages/ecs/src/interface/math/quat/index.ts +++ b/packages/ecs/src/interface/math/quat/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Quat = readonly [number, number, number, number]; export * as Quat from "./public.js"; diff --git a/packages/ecs/src/interface/math/quat/inverse.ts b/packages/ecs/src/interface/math/quat/inverse.ts index 6e21da2a4..7122906e8 100644 --- a/packages/ecs/src/interface/math/quat/inverse.ts +++ b/packages/ecs/src/interface/math/quat/inverse.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { conjugate } from "./conjugate.js"; import { lengthSquared } from "./length-squared.js"; diff --git a/packages/ecs/src/interface/math/quat/length-squared.ts b/packages/ecs/src/interface/math/quat/length-squared.ts index 2ff099398..3958fdb34 100644 --- a/packages/ecs/src/interface/math/quat/length-squared.ts +++ b/packages/ecs/src/interface/math/quat/length-squared.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; export const lengthSquared = ([x, y, z, w]: Quat): number => x * x + y * y + z * z + w * w; diff --git a/packages/ecs/src/interface/math/quat/length.ts b/packages/ecs/src/interface/math/quat/length.ts index 491234b80..5ec247ec3 100644 --- a/packages/ecs/src/interface/math/quat/length.ts +++ b/packages/ecs/src/interface/math/quat/length.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/quat/lerp.ts b/packages/ecs/src/interface/math/quat/lerp.ts index 18c9f0f94..0002bffc9 100644 --- a/packages/ecs/src/interface/math/quat/lerp.ts +++ b/packages/ecs/src/interface/math/quat/lerp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { add } from "./add.js"; import { normalize } from "./normalize.js"; diff --git a/packages/ecs/src/interface/math/quat/look-at.ts b/packages/ecs/src/interface/math/quat/look-at.ts index 23d548c21..046caedc8 100644 --- a/packages/ecs/src/interface/math/quat/look-at.ts +++ b/packages/ecs/src/interface/math/quat/look-at.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import type { Vec3 } from "../vec3/index.js"; import { Vec3 as Vec3Namespace } from "../vec3/index.js"; diff --git a/packages/ecs/src/interface/math/quat/multiply.ts b/packages/ecs/src/interface/math/quat/multiply.ts index 953478194..107a27928 100644 --- a/packages/ecs/src/interface/math/quat/multiply.ts +++ b/packages/ecs/src/interface/math/quat/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; export const multiply = ([x1, y1, z1, w1]: Quat, [x2, y2, z2, w2]: Quat): Quat => [ diff --git a/packages/ecs/src/interface/math/quat/negate.ts b/packages/ecs/src/interface/math/quat/negate.ts index 66ad089df..a6284122d 100644 --- a/packages/ecs/src/interface/math/quat/negate.ts +++ b/packages/ecs/src/interface/math/quat/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/quat/normalize.ts b/packages/ecs/src/interface/math/quat/normalize.ts index a316c2235..aa0622a37 100644 --- a/packages/ecs/src/interface/math/quat/normalize.ts +++ b/packages/ecs/src/interface/math/quat/normalize.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { length } from "./length.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/quat/public.ts b/packages/ecs/src/interface/math/quat/public.ts index 73d662aa3..3bb6df16b 100644 --- a/packages/ecs/src/interface/math/quat/public.ts +++ b/packages/ecs/src/interface/math/quat/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./add.js"; export * from "./align-to.js"; export * from "./conjugate.js"; diff --git a/packages/ecs/src/interface/math/quat/rotate-vec3.ts b/packages/ecs/src/interface/math/quat/rotate-vec3.ts index 4888da4bb..a5cbca5b6 100644 --- a/packages/ecs/src/interface/math/quat/rotate-vec3.ts +++ b/packages/ecs/src/interface/math/quat/rotate-vec3.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import type { Vec3 } from "../vec3/index.js"; import { Vec3 as Vec3Namespace } from "../vec3/index.js"; diff --git a/packages/ecs/src/interface/math/quat/scale.ts b/packages/ecs/src/interface/math/quat/scale.ts index 6f5835da3..4da028aaf 100644 --- a/packages/ecs/src/interface/math/quat/scale.ts +++ b/packages/ecs/src/interface/math/quat/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/quat/schema.ts b/packages/ecs/src/interface/math/quat/schema.ts index d7a0afa1a..b380cbf03 100644 --- a/packages/ecs/src/interface/math/quat/schema.ts +++ b/packages/ecs/src/interface/math/quat/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../schema/schema.js"; import { schema as item } from "../f32/schema.js"; diff --git a/packages/ecs/src/interface/math/quat/slerp.ts b/packages/ecs/src/interface/math/quat/slerp.ts index a95114663..24bec498d 100644 --- a/packages/ecs/src/interface/math/quat/slerp.ts +++ b/packages/ecs/src/interface/math/quat/slerp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { add } from "./add.js"; import { dot } from "./dot.js"; diff --git a/packages/ecs/src/interface/math/quat/subtract.ts b/packages/ecs/src/interface/math/quat/subtract.ts index 450855e84..7ce31745a 100644 --- a/packages/ecs/src/interface/math/quat/subtract.ts +++ b/packages/ecs/src/interface/math/quat/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/quat/to-axis-angle.ts b/packages/ecs/src/interface/math/quat/to-axis-angle.ts index 932de09b8..5a9abacb7 100644 --- a/packages/ecs/src/interface/math/quat/to-axis-angle.ts +++ b/packages/ecs/src/interface/math/quat/to-axis-angle.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import type { Vec3 } from "../vec3/index.js"; diff --git a/packages/ecs/src/interface/math/quat/to-euler.ts b/packages/ecs/src/interface/math/quat/to-euler.ts index 1fde23b3a..6a1b0dd3a 100644 --- a/packages/ecs/src/interface/math/quat/to-euler.ts +++ b/packages/ecs/src/interface/math/quat/to-euler.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import type { Vec3 } from "../vec3/index.js"; diff --git a/packages/ecs/src/interface/math/quat/to-mat4.ts b/packages/ecs/src/interface/math/quat/to-mat4.ts index 3c4e339c7..28970d4b3 100644 --- a/packages/ecs/src/interface/math/quat/to-mat4.ts +++ b/packages/ecs/src/interface/math/quat/to-mat4.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Quat } from "../index.js"; import type { Mat4x4 } from "../mat4x4/index.js"; diff --git a/packages/ecs/src/interface/math/semantics.test.ts b/packages/ecs/src/interface/math/semantics.test.ts index 88ce717d7..a8271c11c 100644 --- a/packages/ecs/src/interface/math/semantics.test.ts +++ b/packages/ecs/src/interface/math/semantics.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, test } from "vitest"; import { U32, Vec2, Vec3, Vec4 } from "./index.js"; diff --git a/packages/ecs/src/interface/math/u32/count-leading-zeros.ts b/packages/ecs/src/interface/math/u32/count-leading-zeros.ts index 8ef9fa53b..0529c0e9f 100644 --- a/packages/ecs/src/interface/math/u32/count-leading-zeros.ts +++ b/packages/ecs/src/interface/math/u32/count-leading-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/u32/count-one-bits.ts b/packages/ecs/src/interface/math/u32/count-one-bits.ts index 4ca97cfcc..d72c53f30 100644 --- a/packages/ecs/src/interface/math/u32/count-one-bits.ts +++ b/packages/ecs/src/interface/math/u32/count-one-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/u32/count-trailing-zeros.ts b/packages/ecs/src/interface/math/u32/count-trailing-zeros.ts index 45eb1ab7c..d12d31be7 100644 --- a/packages/ecs/src/interface/math/u32/count-trailing-zeros.ts +++ b/packages/ecs/src/interface/math/u32/count-trailing-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/u32/index.ts b/packages/ecs/src/interface/math/u32/index.ts index 1f7b92ef6..fa1611bd2 100644 --- a/packages/ecs/src/interface/math/u32/index.ts +++ b/packages/ecs/src/interface/math/u32/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Integers in [0, 2^32). Functions wrap as WGSL's u32 does; for other values their results are indeterminate. */ export type U32 = number; diff --git a/packages/ecs/src/interface/math/u32/public.ts b/packages/ecs/src/interface/math/u32/public.ts index 6456ffac4..c9c88f493 100644 --- a/packages/ecs/src/interface/math/u32/public.ts +++ b/packages/ecs/src/interface/math/u32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { schema } from "./schema.js"; export { countLeadingZeros } from "./count-leading-zeros.js"; export { countTrailingZeros } from "./count-trailing-zeros.js"; diff --git a/packages/ecs/src/interface/math/u32/reverse-bits.ts b/packages/ecs/src/interface/math/u32/reverse-bits.ts index f7e22b487..85c7f55e9 100644 --- a/packages/ecs/src/interface/math/u32/reverse-bits.ts +++ b/packages/ecs/src/interface/math/u32/reverse-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 } from "./index.js"; import { intrinsic } from "../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/u32/schema.ts b/packages/ecs/src/interface/math/u32/schema.ts index fd9d75284..ef83e6ad2 100644 --- a/packages/ecs/src/interface/math/u32/schema.ts +++ b/packages/ecs/src/interface/math/u32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../schema/schema.js"; export const schema = { type: "integer", minimum: 0, maximum: 0xFFFFFFFF } as const satisfies Schema; diff --git a/packages/ecs/src/interface/math/u32/shift-right.ts b/packages/ecs/src/interface/math/u32/shift-right.ts index 7b45f0e09..2aa55b1cd 100644 --- a/packages/ecs/src/interface/math/u32/shift-right.ts +++ b/packages/ecs/src/interface/math/u32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 } from "./index.js"; export const shiftRight = (n: U32, shift: number): U32 => (n >>> shift) >>> 0; diff --git a/packages/ecs/src/interface/math/vec2/f32/abs.ts b/packages/ecs/src/interface/math/vec2/f32/abs.ts index a203aaf9a..d682a1bf7 100644 --- a/packages/ecs/src/interface/math/vec2/f32/abs.ts +++ b/packages/ecs/src/interface/math/vec2/f32/abs.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/acos.ts b/packages/ecs/src/interface/math/vec2/f32/acos.ts index 71e330649..3b02bcebe 100644 --- a/packages/ecs/src/interface/math/vec2/f32/acos.ts +++ b/packages/ecs/src/interface/math/vec2/f32/acos.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/acosh.ts b/packages/ecs/src/interface/math/vec2/f32/acosh.ts index dbcaba733..5ba06609a 100644 --- a/packages/ecs/src/interface/math/vec2/f32/acosh.ts +++ b/packages/ecs/src/interface/math/vec2/f32/acosh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/add.ts b/packages/ecs/src/interface/math/vec2/f32/add.ts index f467ebce9..d3d8872fb 100644 --- a/packages/ecs/src/interface/math/vec2/f32/add.ts +++ b/packages/ecs/src/interface/math/vec2/f32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/asin.ts b/packages/ecs/src/interface/math/vec2/f32/asin.ts index e8fc2619a..4565ab42d 100644 --- a/packages/ecs/src/interface/math/vec2/f32/asin.ts +++ b/packages/ecs/src/interface/math/vec2/f32/asin.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/asinh.ts b/packages/ecs/src/interface/math/vec2/f32/asinh.ts index 63b14436a..40f47bf4c 100644 --- a/packages/ecs/src/interface/math/vec2/f32/asinh.ts +++ b/packages/ecs/src/interface/math/vec2/f32/asinh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/atan.ts b/packages/ecs/src/interface/math/vec2/f32/atan.ts index 522dd5697..99c2c800e 100644 --- a/packages/ecs/src/interface/math/vec2/f32/atan.ts +++ b/packages/ecs/src/interface/math/vec2/f32/atan.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/atanh.ts b/packages/ecs/src/interface/math/vec2/f32/atanh.ts index e8a879e31..65fdf4b36 100644 --- a/packages/ecs/src/interface/math/vec2/f32/atanh.ts +++ b/packages/ecs/src/interface/math/vec2/f32/atanh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/ceil.ts b/packages/ecs/src/interface/math/vec2/f32/ceil.ts index 08c953967..70d6dbba7 100644 --- a/packages/ecs/src/interface/math/vec2/f32/ceil.ts +++ b/packages/ecs/src/interface/math/vec2/f32/ceil.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/clamp.ts b/packages/ecs/src/interface/math/vec2/f32/clamp.ts index 8b4b71206..2fafa4684 100644 --- a/packages/ecs/src/interface/math/vec2/f32/clamp.ts +++ b/packages/ecs/src/interface/math/vec2/f32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/cos.ts b/packages/ecs/src/interface/math/vec2/f32/cos.ts index c980ec3a2..984f9f590 100644 --- a/packages/ecs/src/interface/math/vec2/f32/cos.ts +++ b/packages/ecs/src/interface/math/vec2/f32/cos.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/cosh.ts b/packages/ecs/src/interface/math/vec2/f32/cosh.ts index b5b5ffb30..12d5d6d69 100644 --- a/packages/ecs/src/interface/math/vec2/f32/cosh.ts +++ b/packages/ecs/src/interface/math/vec2/f32/cosh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/distance.ts b/packages/ecs/src/interface/math/vec2/f32/distance.ts index a1e708135..9a0fa9071 100644 --- a/packages/ecs/src/interface/math/vec2/f32/distance.ts +++ b/packages/ecs/src/interface/math/vec2/f32/distance.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { length } from "./length.js"; import { subtract } from "./subtract.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/dot.ts b/packages/ecs/src/interface/math/vec2/f32/dot.ts index ee95a5ad1..965f0fffd 100644 --- a/packages/ecs/src/interface/math/vec2/f32/dot.ts +++ b/packages/ecs/src/interface/math/vec2/f32/dot.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/equals.ts b/packages/ecs/src/interface/math/vec2/f32/equals.ts index 5839cbaf0..66d61db14 100644 --- a/packages/ecs/src/interface/math/vec2/f32/equals.ts +++ b/packages/ecs/src/interface/math/vec2/f32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const equals = ([x1, y1]: F32, [x2, y2]: F32): boolean => x1 === x2 && y1 === y2; diff --git a/packages/ecs/src/interface/math/vec2/f32/exp.ts b/packages/ecs/src/interface/math/vec2/f32/exp.ts index 8f4a23026..935a9e1ab 100644 --- a/packages/ecs/src/interface/math/vec2/f32/exp.ts +++ b/packages/ecs/src/interface/math/vec2/f32/exp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/exp2.ts b/packages/ecs/src/interface/math/vec2/f32/exp2.ts index 1342b2980..054cada93 100644 --- a/packages/ecs/src/interface/math/vec2/f32/exp2.ts +++ b/packages/ecs/src/interface/math/vec2/f32/exp2.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/f32.ts b/packages/ecs/src/interface/math/vec2/f32/f32.ts index b0f72f15b..8833b01bb 100644 --- a/packages/ecs/src/interface/math/vec2/f32/f32.ts +++ b/packages/ecs/src/interface/math/vec2/f32/f32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type F32 = readonly [number, number]; export * as F32 from "./public.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/faceforward.ts b/packages/ecs/src/interface/math/vec2/f32/faceforward.ts index 107acb687..feab49158 100644 --- a/packages/ecs/src/interface/math/vec2/f32/faceforward.ts +++ b/packages/ecs/src/interface/math/vec2/f32/faceforward.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { negate } from "./negate.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/floor.ts b/packages/ecs/src/interface/math/vec2/f32/floor.ts index e15250352..2cc1872c1 100644 --- a/packages/ecs/src/interface/math/vec2/f32/floor.ts +++ b/packages/ecs/src/interface/math/vec2/f32/floor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/fract.ts b/packages/ecs/src/interface/math/vec2/f32/fract.ts index 01f3b1c3e..faf7b713b 100644 --- a/packages/ecs/src/interface/math/vec2/f32/fract.ts +++ b/packages/ecs/src/interface/math/vec2/f32/fract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/length.ts b/packages/ecs/src/interface/math/vec2/f32/length.ts index ab0cc5ba7..07617a228 100644 --- a/packages/ecs/src/interface/math/vec2/f32/length.ts +++ b/packages/ecs/src/interface/math/vec2/f32/length.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/log.ts b/packages/ecs/src/interface/math/vec2/f32/log.ts index d4a1fce1c..3e7ff7c76 100644 --- a/packages/ecs/src/interface/math/vec2/f32/log.ts +++ b/packages/ecs/src/interface/math/vec2/f32/log.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/log2.ts b/packages/ecs/src/interface/math/vec2/f32/log2.ts index 7b6baefcc..96fe16de9 100644 --- a/packages/ecs/src/interface/math/vec2/f32/log2.ts +++ b/packages/ecs/src/interface/math/vec2/f32/log2.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/max.ts b/packages/ecs/src/interface/math/vec2/f32/max.ts index 784fcf996..f96670b5f 100644 --- a/packages/ecs/src/interface/math/vec2/f32/max.ts +++ b/packages/ecs/src/interface/math/vec2/f32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/min.ts b/packages/ecs/src/interface/math/vec2/f32/min.ts index f94945e95..3ea6c23d1 100644 --- a/packages/ecs/src/interface/math/vec2/f32/min.ts +++ b/packages/ecs/src/interface/math/vec2/f32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/mix.ts b/packages/ecs/src/interface/math/vec2/f32/mix.ts index b6667df20..1acfab64c 100644 --- a/packages/ecs/src/interface/math/vec2/f32/mix.ts +++ b/packages/ecs/src/interface/math/vec2/f32/mix.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/mod.ts b/packages/ecs/src/interface/math/vec2/f32/mod.ts index 54946820d..77bca66c4 100644 --- a/packages/ecs/src/interface/math/vec2/f32/mod.ts +++ b/packages/ecs/src/interface/math/vec2/f32/mod.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const mod = ([x, y]: F32, m: number): F32 => [x - m * Math.floor(x / m), y - m * Math.floor(y / m)]; diff --git a/packages/ecs/src/interface/math/vec2/f32/modf.ts b/packages/ecs/src/interface/math/vec2/f32/modf.ts index dfad7eb03..3b13387ca 100644 --- a/packages/ecs/src/interface/math/vec2/f32/modf.ts +++ b/packages/ecs/src/interface/math/vec2/f32/modf.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { fract } from "./fract.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/negate.ts b/packages/ecs/src/interface/math/vec2/f32/negate.ts index 4b7799162..3c76821b0 100644 --- a/packages/ecs/src/interface/math/vec2/f32/negate.ts +++ b/packages/ecs/src/interface/math/vec2/f32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/normalize.ts b/packages/ecs/src/interface/math/vec2/f32/normalize.ts index 013c30a42..0f42568d0 100644 --- a/packages/ecs/src/interface/math/vec2/f32/normalize.ts +++ b/packages/ecs/src/interface/math/vec2/f32/normalize.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { length } from "./length.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/pow.ts b/packages/ecs/src/interface/math/vec2/f32/pow.ts index 42c16593e..d4cd394d7 100644 --- a/packages/ecs/src/interface/math/vec2/f32/pow.ts +++ b/packages/ecs/src/interface/math/vec2/f32/pow.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/public.ts b/packages/ecs/src/interface/math/vec2/f32/public.ts index 5eaf58bd6..cab939cc8 100644 --- a/packages/ecs/src/interface/math/vec2/f32/public.ts +++ b/packages/ecs/src/interface/math/vec2/f32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./abs.js"; export * from "./acos.js"; export * from "./acosh.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/reflect.ts b/packages/ecs/src/interface/math/vec2/f32/reflect.ts index c99f9c1a8..11cc1b9bb 100644 --- a/packages/ecs/src/interface/math/vec2/f32/reflect.ts +++ b/packages/ecs/src/interface/math/vec2/f32/reflect.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/refract.ts b/packages/ecs/src/interface/math/vec2/f32/refract.ts index 3e3771bd8..9864ad319 100644 --- a/packages/ecs/src/interface/math/vec2/f32/refract.ts +++ b/packages/ecs/src/interface/math/vec2/f32/refract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/round.ts b/packages/ecs/src/interface/math/vec2/f32/round.ts index c4c19158a..c0875fd05 100644 --- a/packages/ecs/src/interface/math/vec2/f32/round.ts +++ b/packages/ecs/src/interface/math/vec2/f32/round.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { roundHalfEven } from "../../f32/round-half-even.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/scale.ts b/packages/ecs/src/interface/math/vec2/f32/scale.ts index 387fc5537..445f467da 100644 --- a/packages/ecs/src/interface/math/vec2/f32/scale.ts +++ b/packages/ecs/src/interface/math/vec2/f32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/schema.ts b/packages/ecs/src/interface/math/vec2/f32/schema.ts index d9daac9fc..0521f3a44 100644 --- a/packages/ecs/src/interface/math/vec2/f32/schema.ts +++ b/packages/ecs/src/interface/math/vec2/f32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../f32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/sign.ts b/packages/ecs/src/interface/math/vec2/f32/sign.ts index e279cdd71..483fd4d16 100644 --- a/packages/ecs/src/interface/math/vec2/f32/sign.ts +++ b/packages/ecs/src/interface/math/vec2/f32/sign.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/sin.ts b/packages/ecs/src/interface/math/vec2/f32/sin.ts index 7873f722d..b8cdb73bc 100644 --- a/packages/ecs/src/interface/math/vec2/f32/sin.ts +++ b/packages/ecs/src/interface/math/vec2/f32/sin.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/sinh.ts b/packages/ecs/src/interface/math/vec2/f32/sinh.ts index 3bb034d70..ef1696556 100644 --- a/packages/ecs/src/interface/math/vec2/f32/sinh.ts +++ b/packages/ecs/src/interface/math/vec2/f32/sinh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/smoothstep.ts b/packages/ecs/src/interface/math/vec2/f32/smoothstep.ts index bd351328f..a279bebcc 100644 --- a/packages/ecs/src/interface/math/vec2/f32/smoothstep.ts +++ b/packages/ecs/src/interface/math/vec2/f32/smoothstep.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/sqrt.ts b/packages/ecs/src/interface/math/vec2/f32/sqrt.ts index 02fb4f4eb..98aff9eac 100644 --- a/packages/ecs/src/interface/math/vec2/f32/sqrt.ts +++ b/packages/ecs/src/interface/math/vec2/f32/sqrt.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/step.ts b/packages/ecs/src/interface/math/vec2/f32/step.ts index 4e468740f..1b57c9f40 100644 --- a/packages/ecs/src/interface/math/vec2/f32/step.ts +++ b/packages/ecs/src/interface/math/vec2/f32/step.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/subtract.ts b/packages/ecs/src/interface/math/vec2/f32/subtract.ts index b38cdcfb1..2d1ce8cd8 100644 --- a/packages/ecs/src/interface/math/vec2/f32/subtract.ts +++ b/packages/ecs/src/interface/math/vec2/f32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/tan.ts b/packages/ecs/src/interface/math/vec2/f32/tan.ts index 85a139c29..fd7bbff19 100644 --- a/packages/ecs/src/interface/math/vec2/f32/tan.ts +++ b/packages/ecs/src/interface/math/vec2/f32/tan.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/tanh.ts b/packages/ecs/src/interface/math/vec2/f32/tanh.ts index e017c5fa9..1a3d89c6d 100644 --- a/packages/ecs/src/interface/math/vec2/f32/tanh.ts +++ b/packages/ecs/src/interface/math/vec2/f32/tanh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/trunc.ts b/packages/ecs/src/interface/math/vec2/f32/trunc.ts index efd388a56..1e687e1ee 100644 --- a/packages/ecs/src/interface/math/vec2/f32/trunc.ts +++ b/packages/ecs/src/interface/math/vec2/f32/trunc.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/f32/zero.ts b/packages/ecs/src/interface/math/vec2/f32/zero.ts index 48eacb574..accae477d 100644 --- a/packages/ecs/src/interface/math/vec2/f32/zero.ts +++ b/packages/ecs/src/interface/math/vec2/f32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const zero: F32 = [0, 0]; diff --git a/packages/ecs/src/interface/math/vec2/i32/abs.ts b/packages/ecs/src/interface/math/vec2/i32/abs.ts index e0ae9bd02..b082033c6 100644 --- a/packages/ecs/src/interface/math/vec2/i32/abs.ts +++ b/packages/ecs/src/interface/math/vec2/i32/abs.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/add.ts b/packages/ecs/src/interface/math/vec2/i32/add.ts index 5a1c95da4..7eb09808a 100644 --- a/packages/ecs/src/interface/math/vec2/i32/add.ts +++ b/packages/ecs/src/interface/math/vec2/i32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/bitwise-and.ts b/packages/ecs/src/interface/math/vec2/i32/bitwise-and.ts index c2ad98b62..646b7c88c 100644 --- a/packages/ecs/src/interface/math/vec2/i32/bitwise-and.ts +++ b/packages/ecs/src/interface/math/vec2/i32/bitwise-and.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/bitwise-not.ts b/packages/ecs/src/interface/math/vec2/i32/bitwise-not.ts index ab0cef53c..7a6174b52 100644 --- a/packages/ecs/src/interface/math/vec2/i32/bitwise-not.ts +++ b/packages/ecs/src/interface/math/vec2/i32/bitwise-not.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/bitwise-or.ts b/packages/ecs/src/interface/math/vec2/i32/bitwise-or.ts index 77e67215c..5b819f92d 100644 --- a/packages/ecs/src/interface/math/vec2/i32/bitwise-or.ts +++ b/packages/ecs/src/interface/math/vec2/i32/bitwise-or.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/bitwise-xor.ts b/packages/ecs/src/interface/math/vec2/i32/bitwise-xor.ts index 71b092fd3..452f931cc 100644 --- a/packages/ecs/src/interface/math/vec2/i32/bitwise-xor.ts +++ b/packages/ecs/src/interface/math/vec2/i32/bitwise-xor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/clamp.ts b/packages/ecs/src/interface/math/vec2/i32/clamp.ts index f80751f76..9c668c6c7 100644 --- a/packages/ecs/src/interface/math/vec2/i32/clamp.ts +++ b/packages/ecs/src/interface/math/vec2/i32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/count-leading-zeros.ts b/packages/ecs/src/interface/math/vec2/i32/count-leading-zeros.ts index fa427039c..42ec4e504 100644 --- a/packages/ecs/src/interface/math/vec2/i32/count-leading-zeros.ts +++ b/packages/ecs/src/interface/math/vec2/i32/count-leading-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/count-one-bits.ts b/packages/ecs/src/interface/math/vec2/i32/count-one-bits.ts index 17943eabb..d0b69b515 100644 --- a/packages/ecs/src/interface/math/vec2/i32/count-one-bits.ts +++ b/packages/ecs/src/interface/math/vec2/i32/count-one-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/count-trailing-zeros.ts b/packages/ecs/src/interface/math/vec2/i32/count-trailing-zeros.ts index b0f100a61..b26606a17 100644 --- a/packages/ecs/src/interface/math/vec2/i32/count-trailing-zeros.ts +++ b/packages/ecs/src/interface/math/vec2/i32/count-trailing-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/equals.ts b/packages/ecs/src/interface/math/vec2/i32/equals.ts index 4843440ec..230cf6ab8 100644 --- a/packages/ecs/src/interface/math/vec2/i32/equals.ts +++ b/packages/ecs/src/interface/math/vec2/i32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; export const equals = ([x1, y1]: Vec2_I32, [x2, y2]: Vec2_I32): boolean => x1 === x2 && y1 === y2; diff --git a/packages/ecs/src/interface/math/vec2/i32/i32.ts b/packages/ecs/src/interface/math/vec2/i32/i32.ts index f37f1528b..5dd189bf0 100644 --- a/packages/ecs/src/interface/math/vec2/i32/i32.ts +++ b/packages/ecs/src/interface/math/vec2/i32/i32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Vectors of integers in [-2^31, 2^31). Functions wrap as WGSL's i32 does; for other values their results are indeterminate. */ export type I32 = readonly [number, number]; diff --git a/packages/ecs/src/interface/math/vec2/i32/max.ts b/packages/ecs/src/interface/math/vec2/i32/max.ts index 97896b094..57d870c2e 100644 --- a/packages/ecs/src/interface/math/vec2/i32/max.ts +++ b/packages/ecs/src/interface/math/vec2/i32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/min.ts b/packages/ecs/src/interface/math/vec2/i32/min.ts index 8cdb8804e..4be651707 100644 --- a/packages/ecs/src/interface/math/vec2/i32/min.ts +++ b/packages/ecs/src/interface/math/vec2/i32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/negate.ts b/packages/ecs/src/interface/math/vec2/i32/negate.ts index e138374c7..c780da40a 100644 --- a/packages/ecs/src/interface/math/vec2/i32/negate.ts +++ b/packages/ecs/src/interface/math/vec2/i32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/public.ts b/packages/ecs/src/interface/math/vec2/i32/public.ts index b66dde3a2..e4fe1fce3 100644 --- a/packages/ecs/src/interface/math/vec2/i32/public.ts +++ b/packages/ecs/src/interface/math/vec2/i32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./abs.js"; export * from "./add.js"; export * from "./bitwise-and.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/reverse-bits.ts b/packages/ecs/src/interface/math/vec2/i32/reverse-bits.ts index 0ca886ad7..9ad6fa9d3 100644 --- a/packages/ecs/src/interface/math/vec2/i32/reverse-bits.ts +++ b/packages/ecs/src/interface/math/vec2/i32/reverse-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/scale.ts b/packages/ecs/src/interface/math/vec2/i32/scale.ts index 73dae8c99..7a7f15d35 100644 --- a/packages/ecs/src/interface/math/vec2/i32/scale.ts +++ b/packages/ecs/src/interface/math/vec2/i32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; import type { I32 } from "../../i32/index.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/schema.ts b/packages/ecs/src/interface/math/vec2/i32/schema.ts index d34a0a114..b231e7816 100644 --- a/packages/ecs/src/interface/math/vec2/i32/schema.ts +++ b/packages/ecs/src/interface/math/vec2/i32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../i32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/shift-left.ts b/packages/ecs/src/interface/math/vec2/i32/shift-left.ts index cae352e47..91c8d390a 100644 --- a/packages/ecs/src/interface/math/vec2/i32/shift-left.ts +++ b/packages/ecs/src/interface/math/vec2/i32/shift-left.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; export const shiftLeft = ([x, y]: Vec2_I32, s: number): Vec2_I32 => [x << s, y << s]; diff --git a/packages/ecs/src/interface/math/vec2/i32/shift-right.ts b/packages/ecs/src/interface/math/vec2/i32/shift-right.ts index f86371128..23ced139e 100644 --- a/packages/ecs/src/interface/math/vec2/i32/shift-right.ts +++ b/packages/ecs/src/interface/math/vec2/i32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { I32 } from "../../i32/index.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/subtract.ts b/packages/ecs/src/interface/math/vec2/i32/subtract.ts index e01134668..27c03c760 100644 --- a/packages/ecs/src/interface/math/vec2/i32/subtract.ts +++ b/packages/ecs/src/interface/math/vec2/i32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/i32/zero.ts b/packages/ecs/src/interface/math/vec2/i32/zero.ts index 77dbfa44e..57f0edf92 100644 --- a/packages/ecs/src/interface/math/vec2/i32/zero.ts +++ b/packages/ecs/src/interface/math/vec2/i32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec2_I32 } from "./i32.js"; export const zero: Vec2_I32 = [0, 0]; diff --git a/packages/ecs/src/interface/math/vec2/index.ts b/packages/ecs/src/interface/math/vec2/index.ts index ffaacde7f..65395b716 100644 --- a/packages/ecs/src/interface/math/vec2/index.ts +++ b/packages/ecs/src/interface/math/vec2/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32/f32.js"; /** Vec2 is `Vec2.F32`; `Vec2.I32` and `Vec2.U32` hold integer vectors. */ diff --git a/packages/ecs/src/interface/math/vec2/public.ts b/packages/ecs/src/interface/math/vec2/public.ts index c701852dd..93fe90cad 100644 --- a/packages/ecs/src/interface/math/vec2/public.ts +++ b/packages/ecs/src/interface/math/vec2/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { F32 } from "./f32/f32.js"; export { I32 } from "./i32/i32.js"; export { U32 } from "./u32/u32.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/add.ts b/packages/ecs/src/interface/math/vec2/u32/add.ts index 4b81e994e..7833cd340 100644 --- a/packages/ecs/src/interface/math/vec2/u32/add.ts +++ b/packages/ecs/src/interface/math/vec2/u32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/bitwise-and.ts b/packages/ecs/src/interface/math/vec2/u32/bitwise-and.ts index f99cd8b5b..ea343af99 100644 --- a/packages/ecs/src/interface/math/vec2/u32/bitwise-and.ts +++ b/packages/ecs/src/interface/math/vec2/u32/bitwise-and.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/bitwise-not.ts b/packages/ecs/src/interface/math/vec2/u32/bitwise-not.ts index c8681b85a..3c2dd4c33 100644 --- a/packages/ecs/src/interface/math/vec2/u32/bitwise-not.ts +++ b/packages/ecs/src/interface/math/vec2/u32/bitwise-not.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/bitwise-or.ts b/packages/ecs/src/interface/math/vec2/u32/bitwise-or.ts index 19cc5449d..c628f0e21 100644 --- a/packages/ecs/src/interface/math/vec2/u32/bitwise-or.ts +++ b/packages/ecs/src/interface/math/vec2/u32/bitwise-or.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/bitwise-xor.ts b/packages/ecs/src/interface/math/vec2/u32/bitwise-xor.ts index e97aaf70a..8c38a98fd 100644 --- a/packages/ecs/src/interface/math/vec2/u32/bitwise-xor.ts +++ b/packages/ecs/src/interface/math/vec2/u32/bitwise-xor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/clamp.ts b/packages/ecs/src/interface/math/vec2/u32/clamp.ts index 6ed9774db..cd6be98b0 100644 --- a/packages/ecs/src/interface/math/vec2/u32/clamp.ts +++ b/packages/ecs/src/interface/math/vec2/u32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/count-leading-zeros.ts b/packages/ecs/src/interface/math/vec2/u32/count-leading-zeros.ts index 21cda6eae..6b91bed9e 100644 --- a/packages/ecs/src/interface/math/vec2/u32/count-leading-zeros.ts +++ b/packages/ecs/src/interface/math/vec2/u32/count-leading-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/count-one-bits.ts b/packages/ecs/src/interface/math/vec2/u32/count-one-bits.ts index 272b1760f..b2ce3dd48 100644 --- a/packages/ecs/src/interface/math/vec2/u32/count-one-bits.ts +++ b/packages/ecs/src/interface/math/vec2/u32/count-one-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/count-trailing-zeros.ts b/packages/ecs/src/interface/math/vec2/u32/count-trailing-zeros.ts index aaba8e123..d7f279901 100644 --- a/packages/ecs/src/interface/math/vec2/u32/count-trailing-zeros.ts +++ b/packages/ecs/src/interface/math/vec2/u32/count-trailing-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/equals.ts b/packages/ecs/src/interface/math/vec2/u32/equals.ts index eadbdb6e7..ed6fb1844 100644 --- a/packages/ecs/src/interface/math/vec2/u32/equals.ts +++ b/packages/ecs/src/interface/math/vec2/u32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; export const equals = ([x1, y1]: Vec2_U32, [x2, y2]: Vec2_U32): boolean => x1 === x2 && y1 === y2; diff --git a/packages/ecs/src/interface/math/vec2/u32/max.ts b/packages/ecs/src/interface/math/vec2/u32/max.ts index e6b3d0a60..d6392b588 100644 --- a/packages/ecs/src/interface/math/vec2/u32/max.ts +++ b/packages/ecs/src/interface/math/vec2/u32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/min.ts b/packages/ecs/src/interface/math/vec2/u32/min.ts index adabccf3d..f06bea895 100644 --- a/packages/ecs/src/interface/math/vec2/u32/min.ts +++ b/packages/ecs/src/interface/math/vec2/u32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/negate.ts b/packages/ecs/src/interface/math/vec2/u32/negate.ts index b1455c671..7c8e28495 100644 --- a/packages/ecs/src/interface/math/vec2/u32/negate.ts +++ b/packages/ecs/src/interface/math/vec2/u32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; export const negate = ([x, y]: Vec2_U32): Vec2_U32 => [(-x) >>> 0, (-y) >>> 0]; diff --git a/packages/ecs/src/interface/math/vec2/u32/public.ts b/packages/ecs/src/interface/math/vec2/u32/public.ts index 905b86f32..640d94504 100644 --- a/packages/ecs/src/interface/math/vec2/u32/public.ts +++ b/packages/ecs/src/interface/math/vec2/u32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./add.js"; export * from "./bitwise-and.js"; export * from "./bitwise-not.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/reverse-bits.ts b/packages/ecs/src/interface/math/vec2/u32/reverse-bits.ts index 334f995f7..b97f93160 100644 --- a/packages/ecs/src/interface/math/vec2/u32/reverse-bits.ts +++ b/packages/ecs/src/interface/math/vec2/u32/reverse-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/scale.ts b/packages/ecs/src/interface/math/vec2/u32/scale.ts index d8ff8cec5..7f68558cd 100644 --- a/packages/ecs/src/interface/math/vec2/u32/scale.ts +++ b/packages/ecs/src/interface/math/vec2/u32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; import type { U32 } from "../../u32/index.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/schema.ts b/packages/ecs/src/interface/math/vec2/u32/schema.ts index 122fc3c1b..67d99816d 100644 --- a/packages/ecs/src/interface/math/vec2/u32/schema.ts +++ b/packages/ecs/src/interface/math/vec2/u32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../u32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/shift-left.ts b/packages/ecs/src/interface/math/vec2/u32/shift-left.ts index 81ede8430..f51d8cea8 100644 --- a/packages/ecs/src/interface/math/vec2/u32/shift-left.ts +++ b/packages/ecs/src/interface/math/vec2/u32/shift-left.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; export const shiftLeft = ([x, y]: Vec2_U32, s: number): Vec2_U32 => [(x << s) >>> 0, (y << s) >>> 0]; diff --git a/packages/ecs/src/interface/math/vec2/u32/shift-right.ts b/packages/ecs/src/interface/math/vec2/u32/shift-right.ts index ff2cf2402..23b8d2b84 100644 --- a/packages/ecs/src/interface/math/vec2/u32/shift-right.ts +++ b/packages/ecs/src/interface/math/vec2/u32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/subtract.ts b/packages/ecs/src/interface/math/vec2/u32/subtract.ts index 1c785e62f..1ba25d6e0 100644 --- a/packages/ecs/src/interface/math/vec2/u32/subtract.ts +++ b/packages/ecs/src/interface/math/vec2/u32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec2/u32/u32.ts b/packages/ecs/src/interface/math/vec2/u32/u32.ts index 299dfb25e..429d7a78e 100644 --- a/packages/ecs/src/interface/math/vec2/u32/u32.ts +++ b/packages/ecs/src/interface/math/vec2/u32/u32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Vectors of integers in [0, 2^32). Functions wrap as WGSL's u32 does; for other values their results are indeterminate. */ export type U32 = readonly [number, number]; diff --git a/packages/ecs/src/interface/math/vec2/u32/zero.ts b/packages/ecs/src/interface/math/vec2/u32/zero.ts index 459e60ef7..19f82c4d9 100644 --- a/packages/ecs/src/interface/math/vec2/u32/zero.ts +++ b/packages/ecs/src/interface/math/vec2/u32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec2_U32 } from "./u32.js"; export const zero: Vec2_U32 = [0, 0]; diff --git a/packages/ecs/src/interface/math/vec3/f32/abs.ts b/packages/ecs/src/interface/math/vec3/f32/abs.ts index 19e38e77e..4ae27efbf 100644 --- a/packages/ecs/src/interface/math/vec3/f32/abs.ts +++ b/packages/ecs/src/interface/math/vec3/f32/abs.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/acos.ts b/packages/ecs/src/interface/math/vec3/f32/acos.ts index b97171978..b07b646de 100644 --- a/packages/ecs/src/interface/math/vec3/f32/acos.ts +++ b/packages/ecs/src/interface/math/vec3/f32/acos.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/acosh.ts b/packages/ecs/src/interface/math/vec3/f32/acosh.ts index dfca425c6..cc7c53f97 100644 --- a/packages/ecs/src/interface/math/vec3/f32/acosh.ts +++ b/packages/ecs/src/interface/math/vec3/f32/acosh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/add.ts b/packages/ecs/src/interface/math/vec3/f32/add.ts index 7f4514a0a..9aa80aeeb 100644 --- a/packages/ecs/src/interface/math/vec3/f32/add.ts +++ b/packages/ecs/src/interface/math/vec3/f32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/asin.ts b/packages/ecs/src/interface/math/vec3/f32/asin.ts index 735dbea1c..5cb629790 100644 --- a/packages/ecs/src/interface/math/vec3/f32/asin.ts +++ b/packages/ecs/src/interface/math/vec3/f32/asin.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/asinh.ts b/packages/ecs/src/interface/math/vec3/f32/asinh.ts index 85171d894..997f97d66 100644 --- a/packages/ecs/src/interface/math/vec3/f32/asinh.ts +++ b/packages/ecs/src/interface/math/vec3/f32/asinh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/atan.ts b/packages/ecs/src/interface/math/vec3/f32/atan.ts index 122d4af70..a023f3458 100644 --- a/packages/ecs/src/interface/math/vec3/f32/atan.ts +++ b/packages/ecs/src/interface/math/vec3/f32/atan.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/atanh.ts b/packages/ecs/src/interface/math/vec3/f32/atanh.ts index 12cdb17f0..51f8c2166 100644 --- a/packages/ecs/src/interface/math/vec3/f32/atanh.ts +++ b/packages/ecs/src/interface/math/vec3/f32/atanh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/ceil.ts b/packages/ecs/src/interface/math/vec3/f32/ceil.ts index a8b513963..d21c6bb59 100644 --- a/packages/ecs/src/interface/math/vec3/f32/ceil.ts +++ b/packages/ecs/src/interface/math/vec3/f32/ceil.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/clamp.ts b/packages/ecs/src/interface/math/vec3/f32/clamp.ts index 94cd2250e..21ec9bbf3 100644 --- a/packages/ecs/src/interface/math/vec3/f32/clamp.ts +++ b/packages/ecs/src/interface/math/vec3/f32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/cos.ts b/packages/ecs/src/interface/math/vec3/f32/cos.ts index 14bb6d2cc..4bd488553 100644 --- a/packages/ecs/src/interface/math/vec3/f32/cos.ts +++ b/packages/ecs/src/interface/math/vec3/f32/cos.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/cosh.ts b/packages/ecs/src/interface/math/vec3/f32/cosh.ts index d208334a7..c39e4a98e 100644 --- a/packages/ecs/src/interface/math/vec3/f32/cosh.ts +++ b/packages/ecs/src/interface/math/vec3/f32/cosh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/cross.ts b/packages/ecs/src/interface/math/vec3/f32/cross.ts index d2dfe959c..2a5a5d779 100644 --- a/packages/ecs/src/interface/math/vec3/f32/cross.ts +++ b/packages/ecs/src/interface/math/vec3/f32/cross.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/distance-squared.ts b/packages/ecs/src/interface/math/vec3/f32/distance-squared.ts index 396f857b4..8f6f351ea 100644 --- a/packages/ecs/src/interface/math/vec3/f32/distance-squared.ts +++ b/packages/ecs/src/interface/math/vec3/f32/distance-squared.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const distanceSquared = (a: F32, b: F32): number => { diff --git a/packages/ecs/src/interface/math/vec3/f32/distance.ts b/packages/ecs/src/interface/math/vec3/f32/distance.ts index 67e5745bb..3331c0c20 100644 --- a/packages/ecs/src/interface/math/vec3/f32/distance.ts +++ b/packages/ecs/src/interface/math/vec3/f32/distance.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { length } from "./length.js"; import { subtract } from "./subtract.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/dot.ts b/packages/ecs/src/interface/math/vec3/f32/dot.ts index 2e1b3666d..e6e4c0357 100644 --- a/packages/ecs/src/interface/math/vec3/f32/dot.ts +++ b/packages/ecs/src/interface/math/vec3/f32/dot.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/equals.ts b/packages/ecs/src/interface/math/vec3/f32/equals.ts index 90423bf42..e652a7567 100644 --- a/packages/ecs/src/interface/math/vec3/f32/equals.ts +++ b/packages/ecs/src/interface/math/vec3/f32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const equals = (a: F32, b: F32): boolean => a[0] === b[0] && a[1] === b[1] && a[2] === b[2]; diff --git a/packages/ecs/src/interface/math/vec3/f32/exp.ts b/packages/ecs/src/interface/math/vec3/f32/exp.ts index 47c5a618f..bb9964827 100644 --- a/packages/ecs/src/interface/math/vec3/f32/exp.ts +++ b/packages/ecs/src/interface/math/vec3/f32/exp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/exp2.ts b/packages/ecs/src/interface/math/vec3/f32/exp2.ts index 5a0ae3a03..2a24b4690 100644 --- a/packages/ecs/src/interface/math/vec3/f32/exp2.ts +++ b/packages/ecs/src/interface/math/vec3/f32/exp2.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/f32.ts b/packages/ecs/src/interface/math/vec3/f32/f32.ts index 228586f50..9313ba605 100644 --- a/packages/ecs/src/interface/math/vec3/f32/f32.ts +++ b/packages/ecs/src/interface/math/vec3/f32/f32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type F32 = readonly [number, number, number]; export * as F32 from "./public.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/faceforward.ts b/packages/ecs/src/interface/math/vec3/f32/faceforward.ts index 995ba6cad..32372bb7a 100644 --- a/packages/ecs/src/interface/math/vec3/f32/faceforward.ts +++ b/packages/ecs/src/interface/math/vec3/f32/faceforward.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { negate } from "./negate.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/floor.ts b/packages/ecs/src/interface/math/vec3/f32/floor.ts index fc9680c98..4eec66357 100644 --- a/packages/ecs/src/interface/math/vec3/f32/floor.ts +++ b/packages/ecs/src/interface/math/vec3/f32/floor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/fract.ts b/packages/ecs/src/interface/math/vec3/f32/fract.ts index 40ea05e11..d64b96667 100644 --- a/packages/ecs/src/interface/math/vec3/f32/fract.ts +++ b/packages/ecs/src/interface/math/vec3/f32/fract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/length-squared.ts b/packages/ecs/src/interface/math/vec3/f32/length-squared.ts index 8a5609c4f..147e23a6a 100644 --- a/packages/ecs/src/interface/math/vec3/f32/length-squared.ts +++ b/packages/ecs/src/interface/math/vec3/f32/length-squared.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/length.ts b/packages/ecs/src/interface/math/vec3/f32/length.ts index ab6ac7795..e3ec42cff 100644 --- a/packages/ecs/src/interface/math/vec3/f32/length.ts +++ b/packages/ecs/src/interface/math/vec3/f32/length.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/log.ts b/packages/ecs/src/interface/math/vec3/f32/log.ts index 8ee921d8d..3093e7bb9 100644 --- a/packages/ecs/src/interface/math/vec3/f32/log.ts +++ b/packages/ecs/src/interface/math/vec3/f32/log.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/log2.ts b/packages/ecs/src/interface/math/vec3/f32/log2.ts index 748190cc0..3aa596bc6 100644 --- a/packages/ecs/src/interface/math/vec3/f32/log2.ts +++ b/packages/ecs/src/interface/math/vec3/f32/log2.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/max.ts b/packages/ecs/src/interface/math/vec3/f32/max.ts index 87c015d9d..fa54c6fbc 100644 --- a/packages/ecs/src/interface/math/vec3/f32/max.ts +++ b/packages/ecs/src/interface/math/vec3/f32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/min.ts b/packages/ecs/src/interface/math/vec3/f32/min.ts index 872d49d7a..d5a865a50 100644 --- a/packages/ecs/src/interface/math/vec3/f32/min.ts +++ b/packages/ecs/src/interface/math/vec3/f32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/mix.ts b/packages/ecs/src/interface/math/vec3/f32/mix.ts index 740e6b66d..1d1bcd4d2 100644 --- a/packages/ecs/src/interface/math/vec3/f32/mix.ts +++ b/packages/ecs/src/interface/math/vec3/f32/mix.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/mod.ts b/packages/ecs/src/interface/math/vec3/f32/mod.ts index a7973d657..ca8bd3e88 100644 --- a/packages/ecs/src/interface/math/vec3/f32/mod.ts +++ b/packages/ecs/src/interface/math/vec3/f32/mod.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const mod = ([x, y, z]: F32, m: number): F32 => [ diff --git a/packages/ecs/src/interface/math/vec3/f32/modf.ts b/packages/ecs/src/interface/math/vec3/f32/modf.ts index 5919c5fed..d404f99e6 100644 --- a/packages/ecs/src/interface/math/vec3/f32/modf.ts +++ b/packages/ecs/src/interface/math/vec3/f32/modf.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { fract } from "./fract.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/multiply.ts b/packages/ecs/src/interface/math/vec3/f32/multiply.ts index 2b24a2646..b03c2c8e8 100644 --- a/packages/ecs/src/interface/math/vec3/f32/multiply.ts +++ b/packages/ecs/src/interface/math/vec3/f32/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/negate.ts b/packages/ecs/src/interface/math/vec3/f32/negate.ts index 65c6c984a..f6b9b8738 100644 --- a/packages/ecs/src/interface/math/vec3/f32/negate.ts +++ b/packages/ecs/src/interface/math/vec3/f32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/normalize.ts b/packages/ecs/src/interface/math/vec3/f32/normalize.ts index ead3d1933..6ae0d35f7 100644 --- a/packages/ecs/src/interface/math/vec3/f32/normalize.ts +++ b/packages/ecs/src/interface/math/vec3/f32/normalize.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { length } from "./length.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/one.ts b/packages/ecs/src/interface/math/vec3/f32/one.ts index 6c603c23a..7bc1517b1 100644 --- a/packages/ecs/src/interface/math/vec3/f32/one.ts +++ b/packages/ecs/src/interface/math/vec3/f32/one.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const one: F32 = [1, 1, 1]; diff --git a/packages/ecs/src/interface/math/vec3/f32/pow.ts b/packages/ecs/src/interface/math/vec3/f32/pow.ts index 23ec43bec..61b575dcf 100644 --- a/packages/ecs/src/interface/math/vec3/f32/pow.ts +++ b/packages/ecs/src/interface/math/vec3/f32/pow.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/public.ts b/packages/ecs/src/interface/math/vec3/f32/public.ts index 8852ed6df..1cac2de00 100644 --- a/packages/ecs/src/interface/math/vec3/f32/public.ts +++ b/packages/ecs/src/interface/math/vec3/f32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./abs.js"; export * from "./acos.js"; export * from "./acosh.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/random.ts b/packages/ecs/src/interface/math/vec3/f32/random.ts index 4dc35f0c2..b000599a4 100644 --- a/packages/ecs/src/interface/math/vec3/f32/random.ts +++ b/packages/ecs/src/interface/math/vec3/f32/random.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const random = (): F32 => { diff --git a/packages/ecs/src/interface/math/vec3/f32/reflect.ts b/packages/ecs/src/interface/math/vec3/f32/reflect.ts index 860200276..943cd7c01 100644 --- a/packages/ecs/src/interface/math/vec3/f32/reflect.ts +++ b/packages/ecs/src/interface/math/vec3/f32/reflect.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/refract.ts b/packages/ecs/src/interface/math/vec3/f32/refract.ts index cd4170526..340c62542 100644 --- a/packages/ecs/src/interface/math/vec3/f32/refract.ts +++ b/packages/ecs/src/interface/math/vec3/f32/refract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/round.ts b/packages/ecs/src/interface/math/vec3/f32/round.ts index 19ba3bd9a..7d4b3a298 100644 --- a/packages/ecs/src/interface/math/vec3/f32/round.ts +++ b/packages/ecs/src/interface/math/vec3/f32/round.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { roundHalfEven } from "../../f32/round-half-even.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/scale.ts b/packages/ecs/src/interface/math/vec3/f32/scale.ts index 7fe1faa63..c0b0ad8f1 100644 --- a/packages/ecs/src/interface/math/vec3/f32/scale.ts +++ b/packages/ecs/src/interface/math/vec3/f32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/schema.ts b/packages/ecs/src/interface/math/vec3/f32/schema.ts index fce65caa6..e1e87233c 100644 --- a/packages/ecs/src/interface/math/vec3/f32/schema.ts +++ b/packages/ecs/src/interface/math/vec3/f32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../f32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/sign.ts b/packages/ecs/src/interface/math/vec3/f32/sign.ts index c58c61636..a031b8826 100644 --- a/packages/ecs/src/interface/math/vec3/f32/sign.ts +++ b/packages/ecs/src/interface/math/vec3/f32/sign.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/sin.ts b/packages/ecs/src/interface/math/vec3/f32/sin.ts index a8932ed02..fb6e085df 100644 --- a/packages/ecs/src/interface/math/vec3/f32/sin.ts +++ b/packages/ecs/src/interface/math/vec3/f32/sin.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/sinh.ts b/packages/ecs/src/interface/math/vec3/f32/sinh.ts index f1a06c985..89aa00d06 100644 --- a/packages/ecs/src/interface/math/vec3/f32/sinh.ts +++ b/packages/ecs/src/interface/math/vec3/f32/sinh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/smoothstep.ts b/packages/ecs/src/interface/math/vec3/f32/smoothstep.ts index 16d78b878..b2a0975f3 100644 --- a/packages/ecs/src/interface/math/vec3/f32/smoothstep.ts +++ b/packages/ecs/src/interface/math/vec3/f32/smoothstep.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/sqrt.ts b/packages/ecs/src/interface/math/vec3/f32/sqrt.ts index 7e3478a35..27803f4a5 100644 --- a/packages/ecs/src/interface/math/vec3/f32/sqrt.ts +++ b/packages/ecs/src/interface/math/vec3/f32/sqrt.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/step.ts b/packages/ecs/src/interface/math/vec3/f32/step.ts index 44c283151..c0efa5186 100644 --- a/packages/ecs/src/interface/math/vec3/f32/step.ts +++ b/packages/ecs/src/interface/math/vec3/f32/step.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/subtract.ts b/packages/ecs/src/interface/math/vec3/f32/subtract.ts index 22cec835a..27eecf953 100644 --- a/packages/ecs/src/interface/math/vec3/f32/subtract.ts +++ b/packages/ecs/src/interface/math/vec3/f32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/tan.ts b/packages/ecs/src/interface/math/vec3/f32/tan.ts index d1bb8d978..d2f0e85af 100644 --- a/packages/ecs/src/interface/math/vec3/f32/tan.ts +++ b/packages/ecs/src/interface/math/vec3/f32/tan.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/tanh.ts b/packages/ecs/src/interface/math/vec3/f32/tanh.ts index 531bf9005..1c3f53256 100644 --- a/packages/ecs/src/interface/math/vec3/f32/tanh.ts +++ b/packages/ecs/src/interface/math/vec3/f32/tanh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/trunc.ts b/packages/ecs/src/interface/math/vec3/f32/trunc.ts index a5611b03a..b5c5fe380 100644 --- a/packages/ecs/src/interface/math/vec3/f32/trunc.ts +++ b/packages/ecs/src/interface/math/vec3/f32/trunc.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/f32/zero.ts b/packages/ecs/src/interface/math/vec3/f32/zero.ts index 01e696db6..0f54ea828 100644 --- a/packages/ecs/src/interface/math/vec3/f32/zero.ts +++ b/packages/ecs/src/interface/math/vec3/f32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const zero: F32 = [0, 0, 0]; diff --git a/packages/ecs/src/interface/math/vec3/i32/abs.ts b/packages/ecs/src/interface/math/vec3/i32/abs.ts index f424815ac..566647e17 100644 --- a/packages/ecs/src/interface/math/vec3/i32/abs.ts +++ b/packages/ecs/src/interface/math/vec3/i32/abs.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/add.ts b/packages/ecs/src/interface/math/vec3/i32/add.ts index f5e87005f..a79b0dca1 100644 --- a/packages/ecs/src/interface/math/vec3/i32/add.ts +++ b/packages/ecs/src/interface/math/vec3/i32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/bitwise-and.ts b/packages/ecs/src/interface/math/vec3/i32/bitwise-and.ts index b53bb6115..4fa8ae536 100644 --- a/packages/ecs/src/interface/math/vec3/i32/bitwise-and.ts +++ b/packages/ecs/src/interface/math/vec3/i32/bitwise-and.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/bitwise-not.ts b/packages/ecs/src/interface/math/vec3/i32/bitwise-not.ts index ebb58199a..4be9ea898 100644 --- a/packages/ecs/src/interface/math/vec3/i32/bitwise-not.ts +++ b/packages/ecs/src/interface/math/vec3/i32/bitwise-not.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/bitwise-or.ts b/packages/ecs/src/interface/math/vec3/i32/bitwise-or.ts index 554eba70e..f150df02b 100644 --- a/packages/ecs/src/interface/math/vec3/i32/bitwise-or.ts +++ b/packages/ecs/src/interface/math/vec3/i32/bitwise-or.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/bitwise-xor.ts b/packages/ecs/src/interface/math/vec3/i32/bitwise-xor.ts index 43452a19d..d4fcc3f60 100644 --- a/packages/ecs/src/interface/math/vec3/i32/bitwise-xor.ts +++ b/packages/ecs/src/interface/math/vec3/i32/bitwise-xor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/clamp.ts b/packages/ecs/src/interface/math/vec3/i32/clamp.ts index bce978af1..70e39c4e7 100644 --- a/packages/ecs/src/interface/math/vec3/i32/clamp.ts +++ b/packages/ecs/src/interface/math/vec3/i32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/count-leading-zeros.ts b/packages/ecs/src/interface/math/vec3/i32/count-leading-zeros.ts index 0e15bfaca..8aa947aab 100644 --- a/packages/ecs/src/interface/math/vec3/i32/count-leading-zeros.ts +++ b/packages/ecs/src/interface/math/vec3/i32/count-leading-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/count-one-bits.ts b/packages/ecs/src/interface/math/vec3/i32/count-one-bits.ts index 11f3f4f79..60678ab9a 100644 --- a/packages/ecs/src/interface/math/vec3/i32/count-one-bits.ts +++ b/packages/ecs/src/interface/math/vec3/i32/count-one-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/count-trailing-zeros.ts b/packages/ecs/src/interface/math/vec3/i32/count-trailing-zeros.ts index 1020d410e..60ce5070c 100644 --- a/packages/ecs/src/interface/math/vec3/i32/count-trailing-zeros.ts +++ b/packages/ecs/src/interface/math/vec3/i32/count-trailing-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/equals.ts b/packages/ecs/src/interface/math/vec3/i32/equals.ts index af49bb3b3..a679345d2 100644 --- a/packages/ecs/src/interface/math/vec3/i32/equals.ts +++ b/packages/ecs/src/interface/math/vec3/i32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; export const equals = (a: Vec3_I32, b: Vec3_I32): boolean => a[0] === b[0] && a[1] === b[1] && a[2] === b[2]; diff --git a/packages/ecs/src/interface/math/vec3/i32/i32.ts b/packages/ecs/src/interface/math/vec3/i32/i32.ts index da0480d5f..147bc8956 100644 --- a/packages/ecs/src/interface/math/vec3/i32/i32.ts +++ b/packages/ecs/src/interface/math/vec3/i32/i32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Vectors of integers in [-2^31, 2^31). Functions wrap as WGSL's i32 does; for other values their results are indeterminate. */ export type I32 = readonly [number, number, number]; diff --git a/packages/ecs/src/interface/math/vec3/i32/max.ts b/packages/ecs/src/interface/math/vec3/i32/max.ts index 8c844455c..de95be4e3 100644 --- a/packages/ecs/src/interface/math/vec3/i32/max.ts +++ b/packages/ecs/src/interface/math/vec3/i32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/min.ts b/packages/ecs/src/interface/math/vec3/i32/min.ts index a716f0d1e..d1fd44b0c 100644 --- a/packages/ecs/src/interface/math/vec3/i32/min.ts +++ b/packages/ecs/src/interface/math/vec3/i32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/multiply.ts b/packages/ecs/src/interface/math/vec3/i32/multiply.ts index 7d52efe10..1bdd85e98 100644 --- a/packages/ecs/src/interface/math/vec3/i32/multiply.ts +++ b/packages/ecs/src/interface/math/vec3/i32/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/negate.ts b/packages/ecs/src/interface/math/vec3/i32/negate.ts index acc3c0774..c308e4e6e 100644 --- a/packages/ecs/src/interface/math/vec3/i32/negate.ts +++ b/packages/ecs/src/interface/math/vec3/i32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/one.ts b/packages/ecs/src/interface/math/vec3/i32/one.ts index 5a1146fb0..f6792c76a 100644 --- a/packages/ecs/src/interface/math/vec3/i32/one.ts +++ b/packages/ecs/src/interface/math/vec3/i32/one.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; export const one: Vec3_I32 = [1, 1, 1]; diff --git a/packages/ecs/src/interface/math/vec3/i32/public.ts b/packages/ecs/src/interface/math/vec3/i32/public.ts index 7f3d8aee4..104673aaf 100644 --- a/packages/ecs/src/interface/math/vec3/i32/public.ts +++ b/packages/ecs/src/interface/math/vec3/i32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./abs.js"; export * from "./add.js"; export * from "./bitwise-and.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/reverse-bits.ts b/packages/ecs/src/interface/math/vec3/i32/reverse-bits.ts index 3803c1dcc..8e7eda6ee 100644 --- a/packages/ecs/src/interface/math/vec3/i32/reverse-bits.ts +++ b/packages/ecs/src/interface/math/vec3/i32/reverse-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/scale.ts b/packages/ecs/src/interface/math/vec3/i32/scale.ts index 420e76bc8..7d31abcc5 100644 --- a/packages/ecs/src/interface/math/vec3/i32/scale.ts +++ b/packages/ecs/src/interface/math/vec3/i32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; import type { I32 } from "../../i32/index.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/schema.ts b/packages/ecs/src/interface/math/vec3/i32/schema.ts index ad3823d9e..8e5d92670 100644 --- a/packages/ecs/src/interface/math/vec3/i32/schema.ts +++ b/packages/ecs/src/interface/math/vec3/i32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../i32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/shift-left.ts b/packages/ecs/src/interface/math/vec3/i32/shift-left.ts index 1e4f4a110..0da589b28 100644 --- a/packages/ecs/src/interface/math/vec3/i32/shift-left.ts +++ b/packages/ecs/src/interface/math/vec3/i32/shift-left.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; export const shiftLeft = ([x, y, z]: Vec3_I32, s: number): Vec3_I32 => [x << s, y << s, z << s]; diff --git a/packages/ecs/src/interface/math/vec3/i32/shift-right.ts b/packages/ecs/src/interface/math/vec3/i32/shift-right.ts index 0d7b71061..35fff16cb 100644 --- a/packages/ecs/src/interface/math/vec3/i32/shift-right.ts +++ b/packages/ecs/src/interface/math/vec3/i32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { I32 } from "../../i32/index.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/subtract.ts b/packages/ecs/src/interface/math/vec3/i32/subtract.ts index 913ff0168..ea09c1fed 100644 --- a/packages/ecs/src/interface/math/vec3/i32/subtract.ts +++ b/packages/ecs/src/interface/math/vec3/i32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/i32/zero.ts b/packages/ecs/src/interface/math/vec3/i32/zero.ts index 6257492ca..0c03d93f9 100644 --- a/packages/ecs/src/interface/math/vec3/i32/zero.ts +++ b/packages/ecs/src/interface/math/vec3/i32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec3_I32 } from "./i32.js"; export const zero: Vec3_I32 = [0, 0, 0]; diff --git a/packages/ecs/src/interface/math/vec3/index.ts b/packages/ecs/src/interface/math/vec3/index.ts index f2e2b96a0..2be85c727 100644 --- a/packages/ecs/src/interface/math/vec3/index.ts +++ b/packages/ecs/src/interface/math/vec3/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32/f32.js"; /** Vec3 is `Vec3.F32`; `Vec3.I32` and `Vec3.U32` hold integer vectors. */ diff --git a/packages/ecs/src/interface/math/vec3/public.ts b/packages/ecs/src/interface/math/vec3/public.ts index c701852dd..93fe90cad 100644 --- a/packages/ecs/src/interface/math/vec3/public.ts +++ b/packages/ecs/src/interface/math/vec3/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { F32 } from "./f32/f32.js"; export { I32 } from "./i32/i32.js"; export { U32 } from "./u32/u32.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/add.ts b/packages/ecs/src/interface/math/vec3/u32/add.ts index 88b1386e3..4c7b53ecd 100644 --- a/packages/ecs/src/interface/math/vec3/u32/add.ts +++ b/packages/ecs/src/interface/math/vec3/u32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/bitwise-and.ts b/packages/ecs/src/interface/math/vec3/u32/bitwise-and.ts index f2860142d..59075af9f 100644 --- a/packages/ecs/src/interface/math/vec3/u32/bitwise-and.ts +++ b/packages/ecs/src/interface/math/vec3/u32/bitwise-and.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/bitwise-not.ts b/packages/ecs/src/interface/math/vec3/u32/bitwise-not.ts index b9da6c345..15902aab3 100644 --- a/packages/ecs/src/interface/math/vec3/u32/bitwise-not.ts +++ b/packages/ecs/src/interface/math/vec3/u32/bitwise-not.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/bitwise-or.ts b/packages/ecs/src/interface/math/vec3/u32/bitwise-or.ts index cc5d15a20..4533aa044 100644 --- a/packages/ecs/src/interface/math/vec3/u32/bitwise-or.ts +++ b/packages/ecs/src/interface/math/vec3/u32/bitwise-or.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/bitwise-xor.ts b/packages/ecs/src/interface/math/vec3/u32/bitwise-xor.ts index e2b554084..907f481c1 100644 --- a/packages/ecs/src/interface/math/vec3/u32/bitwise-xor.ts +++ b/packages/ecs/src/interface/math/vec3/u32/bitwise-xor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/clamp.ts b/packages/ecs/src/interface/math/vec3/u32/clamp.ts index 991062deb..b14c07e49 100644 --- a/packages/ecs/src/interface/math/vec3/u32/clamp.ts +++ b/packages/ecs/src/interface/math/vec3/u32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/count-leading-zeros.ts b/packages/ecs/src/interface/math/vec3/u32/count-leading-zeros.ts index 290390bbd..85a3c48f1 100644 --- a/packages/ecs/src/interface/math/vec3/u32/count-leading-zeros.ts +++ b/packages/ecs/src/interface/math/vec3/u32/count-leading-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/count-one-bits.ts b/packages/ecs/src/interface/math/vec3/u32/count-one-bits.ts index 8ca1d9409..2b695ace9 100644 --- a/packages/ecs/src/interface/math/vec3/u32/count-one-bits.ts +++ b/packages/ecs/src/interface/math/vec3/u32/count-one-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/count-trailing-zeros.ts b/packages/ecs/src/interface/math/vec3/u32/count-trailing-zeros.ts index a58b16dc6..bab4ea60e 100644 --- a/packages/ecs/src/interface/math/vec3/u32/count-trailing-zeros.ts +++ b/packages/ecs/src/interface/math/vec3/u32/count-trailing-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/equals.ts b/packages/ecs/src/interface/math/vec3/u32/equals.ts index c1dd0922f..4be1074bd 100644 --- a/packages/ecs/src/interface/math/vec3/u32/equals.ts +++ b/packages/ecs/src/interface/math/vec3/u32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; export const equals = (a: Vec3_U32, b: Vec3_U32): boolean => a[0] === b[0] && a[1] === b[1] && a[2] === b[2]; diff --git a/packages/ecs/src/interface/math/vec3/u32/max.ts b/packages/ecs/src/interface/math/vec3/u32/max.ts index db4733eb3..7b694ca6f 100644 --- a/packages/ecs/src/interface/math/vec3/u32/max.ts +++ b/packages/ecs/src/interface/math/vec3/u32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/min.ts b/packages/ecs/src/interface/math/vec3/u32/min.ts index b7758f52f..ee802f4b7 100644 --- a/packages/ecs/src/interface/math/vec3/u32/min.ts +++ b/packages/ecs/src/interface/math/vec3/u32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/multiply.ts b/packages/ecs/src/interface/math/vec3/u32/multiply.ts index b07d23f21..f0ee2157c 100644 --- a/packages/ecs/src/interface/math/vec3/u32/multiply.ts +++ b/packages/ecs/src/interface/math/vec3/u32/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/negate.ts b/packages/ecs/src/interface/math/vec3/u32/negate.ts index 16b9dc7e7..40fe993e7 100644 --- a/packages/ecs/src/interface/math/vec3/u32/negate.ts +++ b/packages/ecs/src/interface/math/vec3/u32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; export const negate = ([x, y, z]: Vec3_U32): Vec3_U32 => [(-x) >>> 0, (-y) >>> 0, (-z) >>> 0]; diff --git a/packages/ecs/src/interface/math/vec3/u32/one.ts b/packages/ecs/src/interface/math/vec3/u32/one.ts index 47e4c82d7..1fd73b07d 100644 --- a/packages/ecs/src/interface/math/vec3/u32/one.ts +++ b/packages/ecs/src/interface/math/vec3/u32/one.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; export const one: Vec3_U32 = [1, 1, 1]; diff --git a/packages/ecs/src/interface/math/vec3/u32/public.ts b/packages/ecs/src/interface/math/vec3/u32/public.ts index 608c2d903..e0900aef0 100644 --- a/packages/ecs/src/interface/math/vec3/u32/public.ts +++ b/packages/ecs/src/interface/math/vec3/u32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./add.js"; export * from "./bitwise-and.js"; export * from "./bitwise-not.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/reverse-bits.ts b/packages/ecs/src/interface/math/vec3/u32/reverse-bits.ts index a406870d6..222290d7e 100644 --- a/packages/ecs/src/interface/math/vec3/u32/reverse-bits.ts +++ b/packages/ecs/src/interface/math/vec3/u32/reverse-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/scale.ts b/packages/ecs/src/interface/math/vec3/u32/scale.ts index 61130b72c..99a821dd8 100644 --- a/packages/ecs/src/interface/math/vec3/u32/scale.ts +++ b/packages/ecs/src/interface/math/vec3/u32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; import type { U32 } from "../../u32/index.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/schema.ts b/packages/ecs/src/interface/math/vec3/u32/schema.ts index ae8a40f6a..86b0a7c80 100644 --- a/packages/ecs/src/interface/math/vec3/u32/schema.ts +++ b/packages/ecs/src/interface/math/vec3/u32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../u32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/shift-left.ts b/packages/ecs/src/interface/math/vec3/u32/shift-left.ts index 477cc6420..2d35e1916 100644 --- a/packages/ecs/src/interface/math/vec3/u32/shift-left.ts +++ b/packages/ecs/src/interface/math/vec3/u32/shift-left.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; export const shiftLeft = ([x, y, z]: Vec3_U32, s: number): Vec3_U32 => [ diff --git a/packages/ecs/src/interface/math/vec3/u32/shift-right.ts b/packages/ecs/src/interface/math/vec3/u32/shift-right.ts index b61158440..5550c4913 100644 --- a/packages/ecs/src/interface/math/vec3/u32/shift-right.ts +++ b/packages/ecs/src/interface/math/vec3/u32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/subtract.ts b/packages/ecs/src/interface/math/vec3/u32/subtract.ts index 1bd4f099c..083183817 100644 --- a/packages/ecs/src/interface/math/vec3/u32/subtract.ts +++ b/packages/ecs/src/interface/math/vec3/u32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec3/u32/u32.ts b/packages/ecs/src/interface/math/vec3/u32/u32.ts index 6b5032b8f..c318ebd6b 100644 --- a/packages/ecs/src/interface/math/vec3/u32/u32.ts +++ b/packages/ecs/src/interface/math/vec3/u32/u32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Vectors of integers in [0, 2^32). Functions wrap as WGSL's u32 does; for other values their results are indeterminate. */ export type U32 = readonly [number, number, number]; diff --git a/packages/ecs/src/interface/math/vec3/u32/volume.ts b/packages/ecs/src/interface/math/vec3/u32/volume.ts index e1aa67864..e16103121 100644 --- a/packages/ecs/src/interface/math/vec3/u32/volume.ts +++ b/packages/ecs/src/interface/math/vec3/u32/volume.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; export const volume = ([x, y, z]: Vec3_U32): number => Math.imul(Math.imul(x, y), z) >>> 0; diff --git a/packages/ecs/src/interface/math/vec3/u32/zero.ts b/packages/ecs/src/interface/math/vec3/u32/zero.ts index f20d31433..fbab9ebf4 100644 --- a/packages/ecs/src/interface/math/vec3/u32/zero.ts +++ b/packages/ecs/src/interface/math/vec3/u32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec3_U32 } from "./u32.js"; export const zero: Vec3_U32 = [0, 0, 0]; diff --git a/packages/ecs/src/interface/math/vec4/f32/abs.ts b/packages/ecs/src/interface/math/vec4/f32/abs.ts index cf2061426..8c0ba8e86 100644 --- a/packages/ecs/src/interface/math/vec4/f32/abs.ts +++ b/packages/ecs/src/interface/math/vec4/f32/abs.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/acos.ts b/packages/ecs/src/interface/math/vec4/f32/acos.ts index c5c9e460f..5b2af5751 100644 --- a/packages/ecs/src/interface/math/vec4/f32/acos.ts +++ b/packages/ecs/src/interface/math/vec4/f32/acos.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/acosh.ts b/packages/ecs/src/interface/math/vec4/f32/acosh.ts index d77571455..f4a2befa4 100644 --- a/packages/ecs/src/interface/math/vec4/f32/acosh.ts +++ b/packages/ecs/src/interface/math/vec4/f32/acosh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/add.ts b/packages/ecs/src/interface/math/vec4/f32/add.ts index a993f7ac8..ee266df2a 100644 --- a/packages/ecs/src/interface/math/vec4/f32/add.ts +++ b/packages/ecs/src/interface/math/vec4/f32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/asin.ts b/packages/ecs/src/interface/math/vec4/f32/asin.ts index dd7af94c5..e15e25c05 100644 --- a/packages/ecs/src/interface/math/vec4/f32/asin.ts +++ b/packages/ecs/src/interface/math/vec4/f32/asin.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/asinh.ts b/packages/ecs/src/interface/math/vec4/f32/asinh.ts index 6b58c28a1..46a3e4afc 100644 --- a/packages/ecs/src/interface/math/vec4/f32/asinh.ts +++ b/packages/ecs/src/interface/math/vec4/f32/asinh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/atan.ts b/packages/ecs/src/interface/math/vec4/f32/atan.ts index f8f78af53..085a90667 100644 --- a/packages/ecs/src/interface/math/vec4/f32/atan.ts +++ b/packages/ecs/src/interface/math/vec4/f32/atan.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/atanh.ts b/packages/ecs/src/interface/math/vec4/f32/atanh.ts index 91e14369b..fde3a54f6 100644 --- a/packages/ecs/src/interface/math/vec4/f32/atanh.ts +++ b/packages/ecs/src/interface/math/vec4/f32/atanh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/ceil.ts b/packages/ecs/src/interface/math/vec4/f32/ceil.ts index 8b61a2a15..ffdca68d6 100644 --- a/packages/ecs/src/interface/math/vec4/f32/ceil.ts +++ b/packages/ecs/src/interface/math/vec4/f32/ceil.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/clamp.ts b/packages/ecs/src/interface/math/vec4/f32/clamp.ts index e278daa8b..9cc1462ef 100644 --- a/packages/ecs/src/interface/math/vec4/f32/clamp.ts +++ b/packages/ecs/src/interface/math/vec4/f32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/cos.ts b/packages/ecs/src/interface/math/vec4/f32/cos.ts index 32798503d..480c12b00 100644 --- a/packages/ecs/src/interface/math/vec4/f32/cos.ts +++ b/packages/ecs/src/interface/math/vec4/f32/cos.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/cosh.ts b/packages/ecs/src/interface/math/vec4/f32/cosh.ts index dbd608414..68296588b 100644 --- a/packages/ecs/src/interface/math/vec4/f32/cosh.ts +++ b/packages/ecs/src/interface/math/vec4/f32/cosh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/distance.ts b/packages/ecs/src/interface/math/vec4/f32/distance.ts index 78d3bc75b..e175daff6 100644 --- a/packages/ecs/src/interface/math/vec4/f32/distance.ts +++ b/packages/ecs/src/interface/math/vec4/f32/distance.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { length } from "./length.js"; import { subtract } from "./subtract.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/dot.ts b/packages/ecs/src/interface/math/vec4/f32/dot.ts index d8a00d2fa..ea247d8cf 100644 --- a/packages/ecs/src/interface/math/vec4/f32/dot.ts +++ b/packages/ecs/src/interface/math/vec4/f32/dot.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/exp.ts b/packages/ecs/src/interface/math/vec4/f32/exp.ts index 502e1bbf6..51062bce7 100644 --- a/packages/ecs/src/interface/math/vec4/f32/exp.ts +++ b/packages/ecs/src/interface/math/vec4/f32/exp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/exp2.ts b/packages/ecs/src/interface/math/vec4/f32/exp2.ts index c3aab7651..316a014f7 100644 --- a/packages/ecs/src/interface/math/vec4/f32/exp2.ts +++ b/packages/ecs/src/interface/math/vec4/f32/exp2.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/f32.ts b/packages/ecs/src/interface/math/vec4/f32/f32.ts index 735c719b3..59d94791a 100644 --- a/packages/ecs/src/interface/math/vec4/f32/f32.ts +++ b/packages/ecs/src/interface/math/vec4/f32/f32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type F32 = readonly [number, number, number, number]; export * as F32 from "./public.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/faceforward.ts b/packages/ecs/src/interface/math/vec4/f32/faceforward.ts index 8849c42ac..5ceade72b 100644 --- a/packages/ecs/src/interface/math/vec4/f32/faceforward.ts +++ b/packages/ecs/src/interface/math/vec4/f32/faceforward.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { negate } from "./negate.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/floor.ts b/packages/ecs/src/interface/math/vec4/f32/floor.ts index c6945698c..b4b130672 100644 --- a/packages/ecs/src/interface/math/vec4/f32/floor.ts +++ b/packages/ecs/src/interface/math/vec4/f32/floor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/fract.ts b/packages/ecs/src/interface/math/vec4/f32/fract.ts index 82e1c96bd..f40f9424e 100644 --- a/packages/ecs/src/interface/math/vec4/f32/fract.ts +++ b/packages/ecs/src/interface/math/vec4/f32/fract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/length.ts b/packages/ecs/src/interface/math/vec4/f32/length.ts index d1caabbee..9b215e105 100644 --- a/packages/ecs/src/interface/math/vec4/f32/length.ts +++ b/packages/ecs/src/interface/math/vec4/f32/length.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/log.ts b/packages/ecs/src/interface/math/vec4/f32/log.ts index eada272de..75af3bae2 100644 --- a/packages/ecs/src/interface/math/vec4/f32/log.ts +++ b/packages/ecs/src/interface/math/vec4/f32/log.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/log2.ts b/packages/ecs/src/interface/math/vec4/f32/log2.ts index c9e644ffa..add840221 100644 --- a/packages/ecs/src/interface/math/vec4/f32/log2.ts +++ b/packages/ecs/src/interface/math/vec4/f32/log2.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/max.ts b/packages/ecs/src/interface/math/vec4/f32/max.ts index b6c366fee..990ca68c6 100644 --- a/packages/ecs/src/interface/math/vec4/f32/max.ts +++ b/packages/ecs/src/interface/math/vec4/f32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/min.ts b/packages/ecs/src/interface/math/vec4/f32/min.ts index f00eaf7e4..2680bd619 100644 --- a/packages/ecs/src/interface/math/vec4/f32/min.ts +++ b/packages/ecs/src/interface/math/vec4/f32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/mix.ts b/packages/ecs/src/interface/math/vec4/f32/mix.ts index e7eda2e36..aaf58208c 100644 --- a/packages/ecs/src/interface/math/vec4/f32/mix.ts +++ b/packages/ecs/src/interface/math/vec4/f32/mix.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/mod.ts b/packages/ecs/src/interface/math/vec4/f32/mod.ts index 28fa85eb3..810ba4611 100644 --- a/packages/ecs/src/interface/math/vec4/f32/mod.ts +++ b/packages/ecs/src/interface/math/vec4/f32/mod.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; export const mod = ([x, y, z, w]: F32, m: number): F32 => [ diff --git a/packages/ecs/src/interface/math/vec4/f32/modf.ts b/packages/ecs/src/interface/math/vec4/f32/modf.ts index f5c8df67b..6a9116eda 100644 --- a/packages/ecs/src/interface/math/vec4/f32/modf.ts +++ b/packages/ecs/src/interface/math/vec4/f32/modf.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { fract } from "./fract.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/multiply.ts b/packages/ecs/src/interface/math/vec4/f32/multiply.ts index 50048217d..7811479c1 100644 --- a/packages/ecs/src/interface/math/vec4/f32/multiply.ts +++ b/packages/ecs/src/interface/math/vec4/f32/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/negate.ts b/packages/ecs/src/interface/math/vec4/f32/negate.ts index 6c995a176..eda642d18 100644 --- a/packages/ecs/src/interface/math/vec4/f32/negate.ts +++ b/packages/ecs/src/interface/math/vec4/f32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/normalize.ts b/packages/ecs/src/interface/math/vec4/f32/normalize.ts index 1a5a77ea2..278974c98 100644 --- a/packages/ecs/src/interface/math/vec4/f32/normalize.ts +++ b/packages/ecs/src/interface/math/vec4/f32/normalize.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { length } from "./length.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/pow.ts b/packages/ecs/src/interface/math/vec4/f32/pow.ts index 895247f28..26efda68b 100644 --- a/packages/ecs/src/interface/math/vec4/f32/pow.ts +++ b/packages/ecs/src/interface/math/vec4/f32/pow.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/public.ts b/packages/ecs/src/interface/math/vec4/f32/public.ts index 4bbf1ad14..e81496a79 100644 --- a/packages/ecs/src/interface/math/vec4/f32/public.ts +++ b/packages/ecs/src/interface/math/vec4/f32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./abs.js"; export * from "./acos.js"; export * from "./acosh.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/reflect.ts b/packages/ecs/src/interface/math/vec4/f32/reflect.ts index 80d31c1ca..ad4d13c7a 100644 --- a/packages/ecs/src/interface/math/vec4/f32/reflect.ts +++ b/packages/ecs/src/interface/math/vec4/f32/reflect.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/refract.ts b/packages/ecs/src/interface/math/vec4/f32/refract.ts index d9be9b782..c2426bdc7 100644 --- a/packages/ecs/src/interface/math/vec4/f32/refract.ts +++ b/packages/ecs/src/interface/math/vec4/f32/refract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { dot } from "./dot.js"; import { scale } from "./scale.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/round.ts b/packages/ecs/src/interface/math/vec4/f32/round.ts index 2ef8e12ea..cf8056783 100644 --- a/packages/ecs/src/interface/math/vec4/f32/round.ts +++ b/packages/ecs/src/interface/math/vec4/f32/round.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { roundHalfEven } from "../../f32/round-half-even.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/scale.ts b/packages/ecs/src/interface/math/vec4/f32/scale.ts index e62f687f1..b3a8f055a 100644 --- a/packages/ecs/src/interface/math/vec4/f32/scale.ts +++ b/packages/ecs/src/interface/math/vec4/f32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/schema.ts b/packages/ecs/src/interface/math/vec4/f32/schema.ts index 0012f510d..71f90a3a5 100644 --- a/packages/ecs/src/interface/math/vec4/f32/schema.ts +++ b/packages/ecs/src/interface/math/vec4/f32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../f32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/sign.ts b/packages/ecs/src/interface/math/vec4/f32/sign.ts index 86d0ad189..76796c228 100644 --- a/packages/ecs/src/interface/math/vec4/f32/sign.ts +++ b/packages/ecs/src/interface/math/vec4/f32/sign.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/sin.ts b/packages/ecs/src/interface/math/vec4/f32/sin.ts index b37607355..189ca4402 100644 --- a/packages/ecs/src/interface/math/vec4/f32/sin.ts +++ b/packages/ecs/src/interface/math/vec4/f32/sin.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/sinh.ts b/packages/ecs/src/interface/math/vec4/f32/sinh.ts index f4801bb56..5902043e5 100644 --- a/packages/ecs/src/interface/math/vec4/f32/sinh.ts +++ b/packages/ecs/src/interface/math/vec4/f32/sinh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/smoothstep.ts b/packages/ecs/src/interface/math/vec4/f32/smoothstep.ts index 0fa7542c1..6d4303e95 100644 --- a/packages/ecs/src/interface/math/vec4/f32/smoothstep.ts +++ b/packages/ecs/src/interface/math/vec4/f32/smoothstep.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/sqrt.ts b/packages/ecs/src/interface/math/vec4/f32/sqrt.ts index db467e769..508d11ba2 100644 --- a/packages/ecs/src/interface/math/vec4/f32/sqrt.ts +++ b/packages/ecs/src/interface/math/vec4/f32/sqrt.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/step.ts b/packages/ecs/src/interface/math/vec4/f32/step.ts index 5e093ce79..d8815479f 100644 --- a/packages/ecs/src/interface/math/vec4/f32/step.ts +++ b/packages/ecs/src/interface/math/vec4/f32/step.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/subtract.ts b/packages/ecs/src/interface/math/vec4/f32/subtract.ts index a2ed1c0ee..07c961e81 100644 --- a/packages/ecs/src/interface/math/vec4/f32/subtract.ts +++ b/packages/ecs/src/interface/math/vec4/f32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/tan.ts b/packages/ecs/src/interface/math/vec4/f32/tan.ts index 618c861f8..ed13b0bad 100644 --- a/packages/ecs/src/interface/math/vec4/f32/tan.ts +++ b/packages/ecs/src/interface/math/vec4/f32/tan.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/tanh.ts b/packages/ecs/src/interface/math/vec4/f32/tanh.ts index 1b5c6b44e..feddeddb3 100644 --- a/packages/ecs/src/interface/math/vec4/f32/tanh.ts +++ b/packages/ecs/src/interface/math/vec4/f32/tanh.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/f32/trunc.ts b/packages/ecs/src/interface/math/vec4/f32/trunc.ts index bcdbb793a..73a45d02b 100644 --- a/packages/ecs/src/interface/math/vec4/f32/trunc.ts +++ b/packages/ecs/src/interface/math/vec4/f32/trunc.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/abs.ts b/packages/ecs/src/interface/math/vec4/i32/abs.ts index 13dc8be25..656a2dca7 100644 --- a/packages/ecs/src/interface/math/vec4/i32/abs.ts +++ b/packages/ecs/src/interface/math/vec4/i32/abs.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/add.ts b/packages/ecs/src/interface/math/vec4/i32/add.ts index 760a3c114..de31f0f31 100644 --- a/packages/ecs/src/interface/math/vec4/i32/add.ts +++ b/packages/ecs/src/interface/math/vec4/i32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/bitwise-and.ts b/packages/ecs/src/interface/math/vec4/i32/bitwise-and.ts index 6ea31f64b..fe737db64 100644 --- a/packages/ecs/src/interface/math/vec4/i32/bitwise-and.ts +++ b/packages/ecs/src/interface/math/vec4/i32/bitwise-and.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/bitwise-not.ts b/packages/ecs/src/interface/math/vec4/i32/bitwise-not.ts index a7bf73f69..7b7569df6 100644 --- a/packages/ecs/src/interface/math/vec4/i32/bitwise-not.ts +++ b/packages/ecs/src/interface/math/vec4/i32/bitwise-not.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/bitwise-or.ts b/packages/ecs/src/interface/math/vec4/i32/bitwise-or.ts index 1ded4465f..7b74df5bf 100644 --- a/packages/ecs/src/interface/math/vec4/i32/bitwise-or.ts +++ b/packages/ecs/src/interface/math/vec4/i32/bitwise-or.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/bitwise-xor.ts b/packages/ecs/src/interface/math/vec4/i32/bitwise-xor.ts index 7114e8598..920ec9d44 100644 --- a/packages/ecs/src/interface/math/vec4/i32/bitwise-xor.ts +++ b/packages/ecs/src/interface/math/vec4/i32/bitwise-xor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/clamp.ts b/packages/ecs/src/interface/math/vec4/i32/clamp.ts index aedb6d55e..7a5b6eada 100644 --- a/packages/ecs/src/interface/math/vec4/i32/clamp.ts +++ b/packages/ecs/src/interface/math/vec4/i32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/count-leading-zeros.ts b/packages/ecs/src/interface/math/vec4/i32/count-leading-zeros.ts index 03deb3018..d6a8d8120 100644 --- a/packages/ecs/src/interface/math/vec4/i32/count-leading-zeros.ts +++ b/packages/ecs/src/interface/math/vec4/i32/count-leading-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/count-one-bits.ts b/packages/ecs/src/interface/math/vec4/i32/count-one-bits.ts index 9c41e86ff..37e487be0 100644 --- a/packages/ecs/src/interface/math/vec4/i32/count-one-bits.ts +++ b/packages/ecs/src/interface/math/vec4/i32/count-one-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/count-trailing-zeros.ts b/packages/ecs/src/interface/math/vec4/i32/count-trailing-zeros.ts index 9473e605f..e697ce919 100644 --- a/packages/ecs/src/interface/math/vec4/i32/count-trailing-zeros.ts +++ b/packages/ecs/src/interface/math/vec4/i32/count-trailing-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/equals.ts b/packages/ecs/src/interface/math/vec4/i32/equals.ts index cef25d5ea..4ba5d4c54 100644 --- a/packages/ecs/src/interface/math/vec4/i32/equals.ts +++ b/packages/ecs/src/interface/math/vec4/i32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; export const equals = (a: Vec4_I32, b: Vec4_I32): boolean => diff --git a/packages/ecs/src/interface/math/vec4/i32/i32.ts b/packages/ecs/src/interface/math/vec4/i32/i32.ts index a87449656..d40cf1a01 100644 --- a/packages/ecs/src/interface/math/vec4/i32/i32.ts +++ b/packages/ecs/src/interface/math/vec4/i32/i32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Vectors of integers in [-2^31, 2^31). Functions wrap as WGSL's i32 does; for other values their results are indeterminate. */ export type I32 = readonly [number, number, number, number]; diff --git a/packages/ecs/src/interface/math/vec4/i32/max.ts b/packages/ecs/src/interface/math/vec4/i32/max.ts index 834341eea..bc605c4b7 100644 --- a/packages/ecs/src/interface/math/vec4/i32/max.ts +++ b/packages/ecs/src/interface/math/vec4/i32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/min.ts b/packages/ecs/src/interface/math/vec4/i32/min.ts index 9f8c954af..8ddc91e04 100644 --- a/packages/ecs/src/interface/math/vec4/i32/min.ts +++ b/packages/ecs/src/interface/math/vec4/i32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/multiply.ts b/packages/ecs/src/interface/math/vec4/i32/multiply.ts index 010166a27..346a9e38a 100644 --- a/packages/ecs/src/interface/math/vec4/i32/multiply.ts +++ b/packages/ecs/src/interface/math/vec4/i32/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/negate.ts b/packages/ecs/src/interface/math/vec4/i32/negate.ts index 422554ffb..e6ee7c7d0 100644 --- a/packages/ecs/src/interface/math/vec4/i32/negate.ts +++ b/packages/ecs/src/interface/math/vec4/i32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/one.ts b/packages/ecs/src/interface/math/vec4/i32/one.ts index eb7aa3642..abc7a4b48 100644 --- a/packages/ecs/src/interface/math/vec4/i32/one.ts +++ b/packages/ecs/src/interface/math/vec4/i32/one.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; export const one: Vec4_I32 = [1, 1, 1, 1]; diff --git a/packages/ecs/src/interface/math/vec4/i32/public.ts b/packages/ecs/src/interface/math/vec4/i32/public.ts index 7f3d8aee4..104673aaf 100644 --- a/packages/ecs/src/interface/math/vec4/i32/public.ts +++ b/packages/ecs/src/interface/math/vec4/i32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./abs.js"; export * from "./add.js"; export * from "./bitwise-and.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/reverse-bits.ts b/packages/ecs/src/interface/math/vec4/i32/reverse-bits.ts index cdb4649fe..89f020f89 100644 --- a/packages/ecs/src/interface/math/vec4/i32/reverse-bits.ts +++ b/packages/ecs/src/interface/math/vec4/i32/reverse-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/scale.ts b/packages/ecs/src/interface/math/vec4/i32/scale.ts index cd3a45a72..11399782a 100644 --- a/packages/ecs/src/interface/math/vec4/i32/scale.ts +++ b/packages/ecs/src/interface/math/vec4/i32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; import type { I32 } from "../../i32/index.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/schema.ts b/packages/ecs/src/interface/math/vec4/i32/schema.ts index cf2736981..4c2b5d447 100644 --- a/packages/ecs/src/interface/math/vec4/i32/schema.ts +++ b/packages/ecs/src/interface/math/vec4/i32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../i32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/shift-left.ts b/packages/ecs/src/interface/math/vec4/i32/shift-left.ts index 217e87019..2c150a989 100644 --- a/packages/ecs/src/interface/math/vec4/i32/shift-left.ts +++ b/packages/ecs/src/interface/math/vec4/i32/shift-left.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; export const shiftLeft = ([x, y, z, w]: Vec4_I32, s: number): Vec4_I32 => [x << s, y << s, z << s, w << s]; diff --git a/packages/ecs/src/interface/math/vec4/i32/shift-right.ts b/packages/ecs/src/interface/math/vec4/i32/shift-right.ts index d30c25431..8e03d52d1 100644 --- a/packages/ecs/src/interface/math/vec4/i32/shift-right.ts +++ b/packages/ecs/src/interface/math/vec4/i32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { I32 } from "../../i32/index.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/subtract.ts b/packages/ecs/src/interface/math/vec4/i32/subtract.ts index 872952329..d8be8871d 100644 --- a/packages/ecs/src/interface/math/vec4/i32/subtract.ts +++ b/packages/ecs/src/interface/math/vec4/i32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/i32/zero.ts b/packages/ecs/src/interface/math/vec4/i32/zero.ts index f4df86fb9..8b7900b2b 100644 --- a/packages/ecs/src/interface/math/vec4/i32/zero.ts +++ b/packages/ecs/src/interface/math/vec4/i32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { I32 as Vec4_I32 } from "./i32.js"; export const zero: Vec4_I32 = [0, 0, 0, 0]; diff --git a/packages/ecs/src/interface/math/vec4/index.ts b/packages/ecs/src/interface/math/vec4/index.ts index edd622ba2..6818df409 100644 --- a/packages/ecs/src/interface/math/vec4/index.ts +++ b/packages/ecs/src/interface/math/vec4/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { F32 } from "./f32/f32.js"; /** Vec4 is `Vec4.F32`; `Vec4.I32` and `Vec4.U32` hold integer vectors. */ diff --git a/packages/ecs/src/interface/math/vec4/public.ts b/packages/ecs/src/interface/math/vec4/public.ts index c701852dd..93fe90cad 100644 --- a/packages/ecs/src/interface/math/vec4/public.ts +++ b/packages/ecs/src/interface/math/vec4/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { F32 } from "./f32/f32.js"; export { I32 } from "./i32/i32.js"; export { U32 } from "./u32/u32.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/add.ts b/packages/ecs/src/interface/math/vec4/u32/add.ts index 49546e474..ede1c11a9 100644 --- a/packages/ecs/src/interface/math/vec4/u32/add.ts +++ b/packages/ecs/src/interface/math/vec4/u32/add.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/bitwise-and.ts b/packages/ecs/src/interface/math/vec4/u32/bitwise-and.ts index 3fccf6991..725d43be2 100644 --- a/packages/ecs/src/interface/math/vec4/u32/bitwise-and.ts +++ b/packages/ecs/src/interface/math/vec4/u32/bitwise-and.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/bitwise-not.ts b/packages/ecs/src/interface/math/vec4/u32/bitwise-not.ts index a99407197..0b15cc4b9 100644 --- a/packages/ecs/src/interface/math/vec4/u32/bitwise-not.ts +++ b/packages/ecs/src/interface/math/vec4/u32/bitwise-not.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/bitwise-or.ts b/packages/ecs/src/interface/math/vec4/u32/bitwise-or.ts index 9b5d8c001..976b296f0 100644 --- a/packages/ecs/src/interface/math/vec4/u32/bitwise-or.ts +++ b/packages/ecs/src/interface/math/vec4/u32/bitwise-or.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/bitwise-xor.ts b/packages/ecs/src/interface/math/vec4/u32/bitwise-xor.ts index 58b7fa07f..d5b0d60a6 100644 --- a/packages/ecs/src/interface/math/vec4/u32/bitwise-xor.ts +++ b/packages/ecs/src/interface/math/vec4/u32/bitwise-xor.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/clamp.ts b/packages/ecs/src/interface/math/vec4/u32/clamp.ts index 15d2a96b3..d42d908bf 100644 --- a/packages/ecs/src/interface/math/vec4/u32/clamp.ts +++ b/packages/ecs/src/interface/math/vec4/u32/clamp.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { max } from "./max.js"; import { min } from "./min.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/count-leading-zeros.ts b/packages/ecs/src/interface/math/vec4/u32/count-leading-zeros.ts index 59e8645c5..005d9bca6 100644 --- a/packages/ecs/src/interface/math/vec4/u32/count-leading-zeros.ts +++ b/packages/ecs/src/interface/math/vec4/u32/count-leading-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/count-one-bits.ts b/packages/ecs/src/interface/math/vec4/u32/count-one-bits.ts index b096dd379..47b2ac6fd 100644 --- a/packages/ecs/src/interface/math/vec4/u32/count-one-bits.ts +++ b/packages/ecs/src/interface/math/vec4/u32/count-one-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/count-trailing-zeros.ts b/packages/ecs/src/interface/math/vec4/u32/count-trailing-zeros.ts index 960c06516..2e962dd33 100644 --- a/packages/ecs/src/interface/math/vec4/u32/count-trailing-zeros.ts +++ b/packages/ecs/src/interface/math/vec4/u32/count-trailing-zeros.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/equals.ts b/packages/ecs/src/interface/math/vec4/u32/equals.ts index 3af26d3c0..1137c754c 100644 --- a/packages/ecs/src/interface/math/vec4/u32/equals.ts +++ b/packages/ecs/src/interface/math/vec4/u32/equals.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; export const equals = (a: Vec4_U32, b: Vec4_U32): boolean => diff --git a/packages/ecs/src/interface/math/vec4/u32/max.ts b/packages/ecs/src/interface/math/vec4/u32/max.ts index a5839247d..fdf9bfd7f 100644 --- a/packages/ecs/src/interface/math/vec4/u32/max.ts +++ b/packages/ecs/src/interface/math/vec4/u32/max.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/min.ts b/packages/ecs/src/interface/math/vec4/u32/min.ts index 42ba761d1..74a64b0cf 100644 --- a/packages/ecs/src/interface/math/vec4/u32/min.ts +++ b/packages/ecs/src/interface/math/vec4/u32/min.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/multiply.ts b/packages/ecs/src/interface/math/vec4/u32/multiply.ts index be13ee48e..b6b685ccf 100644 --- a/packages/ecs/src/interface/math/vec4/u32/multiply.ts +++ b/packages/ecs/src/interface/math/vec4/u32/multiply.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/negate.ts b/packages/ecs/src/interface/math/vec4/u32/negate.ts index 82b079796..dd92a5c69 100644 --- a/packages/ecs/src/interface/math/vec4/u32/negate.ts +++ b/packages/ecs/src/interface/math/vec4/u32/negate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; export const negate = ([x, y, z, w]: Vec4_U32): Vec4_U32 => [(-x) >>> 0, (-y) >>> 0, (-z) >>> 0, (-w) >>> 0]; diff --git a/packages/ecs/src/interface/math/vec4/u32/one.ts b/packages/ecs/src/interface/math/vec4/u32/one.ts index 7d8f5e250..2c6b497fe 100644 --- a/packages/ecs/src/interface/math/vec4/u32/one.ts +++ b/packages/ecs/src/interface/math/vec4/u32/one.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; export const one: Vec4_U32 = [1, 1, 1, 1]; diff --git a/packages/ecs/src/interface/math/vec4/u32/public.ts b/packages/ecs/src/interface/math/vec4/u32/public.ts index 07fd43ddd..486240733 100644 --- a/packages/ecs/src/interface/math/vec4/u32/public.ts +++ b/packages/ecs/src/interface/math/vec4/u32/public.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from "./add.js"; export * from "./bitwise-and.js"; export * from "./bitwise-not.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/reverse-bits.ts b/packages/ecs/src/interface/math/vec4/u32/reverse-bits.ts index 97c90a2b9..a99b0bce2 100644 --- a/packages/ecs/src/interface/math/vec4/u32/reverse-bits.ts +++ b/packages/ecs/src/interface/math/vec4/u32/reverse-bits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/scale.ts b/packages/ecs/src/interface/math/vec4/u32/scale.ts index 7764a89fa..b2957dc8e 100644 --- a/packages/ecs/src/interface/math/vec4/u32/scale.ts +++ b/packages/ecs/src/interface/math/vec4/u32/scale.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; import type { U32 } from "../../u32/index.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/schema.ts b/packages/ecs/src/interface/math/vec4/u32/schema.ts index 6591fb363..c10d789ac 100644 --- a/packages/ecs/src/interface/math/vec4/u32/schema.ts +++ b/packages/ecs/src/interface/math/vec4/u32/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "../../../schema/schema.js"; import { schema as item } from "../../u32/schema.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/shift-left.ts b/packages/ecs/src/interface/math/vec4/u32/shift-left.ts index 79b4a7f25..250c22c8f 100644 --- a/packages/ecs/src/interface/math/vec4/u32/shift-left.ts +++ b/packages/ecs/src/interface/math/vec4/u32/shift-left.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; export const shiftLeft = ([x, y, z, w]: Vec4_U32, s: number): Vec4_U32 => [ diff --git a/packages/ecs/src/interface/math/vec4/u32/shift-right.ts b/packages/ecs/src/interface/math/vec4/u32/shift-right.ts index 3df3b5540..19c580b7e 100644 --- a/packages/ecs/src/interface/math/vec4/u32/shift-right.ts +++ b/packages/ecs/src/interface/math/vec4/u32/shift-right.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { U32 } from "../../u32/index.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/subtract.ts b/packages/ecs/src/interface/math/vec4/u32/subtract.ts index 2dbc45eb4..01a8f16ff 100644 --- a/packages/ecs/src/interface/math/vec4/u32/subtract.ts +++ b/packages/ecs/src/interface/math/vec4/u32/subtract.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; import { intrinsic } from "../../intrinsic.js"; diff --git a/packages/ecs/src/interface/math/vec4/u32/u32.ts b/packages/ecs/src/interface/math/vec4/u32/u32.ts index e0b60601d..6daca429c 100644 --- a/packages/ecs/src/interface/math/vec4/u32/u32.ts +++ b/packages/ecs/src/interface/math/vec4/u32/u32.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Vectors of integers in [0, 2^32). Functions wrap as WGSL's u32 does; for other values their results are indeterminate. */ export type U32 = readonly [number, number, number, number]; diff --git a/packages/ecs/src/interface/math/vec4/u32/zero.ts b/packages/ecs/src/interface/math/vec4/u32/zero.ts index 6e0ba7f5f..027002ad4 100644 --- a/packages/ecs/src/interface/math/vec4/u32/zero.ts +++ b/packages/ecs/src/interface/math/vec4/u32/zero.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { U32 as Vec4_U32 } from "./u32.js"; export const zero: Vec4_U32 = [0, 0, 0, 0]; diff --git a/packages/ecs/src/interface/platform/platform.ts b/packages/ecs/src/interface/platform/platform.ts index 601d5373c..138d54408 100644 --- a/packages/ecs/src/interface/platform/platform.ts +++ b/packages/ecs/src/interface/platform/platform.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The instance type of the global constructor `Name`, or `never` where the loaded libraries don't declare it, so types * that name platform classes compile with or without the DOM and worker libraries. diff --git a/packages/ecs/src/interface/registry/archetypes.ts b/packages/ecs/src/interface/registry/archetypes.ts index 4beff6eb2..2f8296281 100644 --- a/packages/ecs/src/interface/registry/archetypes.ts +++ b/packages/ecs/src/interface/registry/archetypes.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { labelOf } from './names.js'; /** Where an archetype holds its program-wide index: a property no other code names. */ diff --git a/packages/ecs/src/interface/registry/declarations.ts b/packages/ecs/src/interface/registry/declarations.ts index 689d66b6e..2227946fd 100644 --- a/packages/ecs/src/interface/registry/declarations.ts +++ b/packages/ecs/src/interface/registry/declarations.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../schema/schema.js'; import type { Key as TraitKey } from '../trait/key.js'; import { layoutOf } from './layout.js'; diff --git a/packages/ecs/src/interface/registry/finalizer-order.ts b/packages/ecs/src/interface/registry/finalizer-order.ts index 9a0596fdb..e400dab6d 100644 --- a/packages/ecs/src/interface/registry/finalizer-order.ts +++ b/packages/ecs/src/interface/registry/finalizer-order.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Finalizer } from '../finalizer/created.js'; import { firstItemOf, labelOfItem } from './items.js'; import { firstKeyOf, labelOf } from './names.js'; diff --git a/packages/ecs/src/interface/registry/ids.test-helper.ts b/packages/ecs/src/interface/registry/ids.test-helper.ts index cea8bd1bb..590bfc069 100644 --- a/packages/ecs/src/interface/registry/ids.test-helper.ts +++ b/packages/ecs/src/interface/registry/ids.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { idsName } from './ids.js'; /** diff --git a/packages/ecs/src/interface/registry/ids.test.ts b/packages/ecs/src/interface/registry/ids.test.ts index c68f58252..af81d82da 100644 --- a/packages/ecs/src/interface/registry/ids.test.ts +++ b/packages/ecs/src/interface/registry/ids.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../component/component.js"; import { Finalizer } from "../finalizer/finalizer.js"; diff --git a/packages/ecs/src/interface/registry/ids.ts b/packages/ecs/src/interface/registry/ids.ts index d6ad0dd0a..0c2cafe68 100644 --- a/packages/ecs/src/interface/registry/ids.ts +++ b/packages/ecs/src/interface/registry/ids.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The `Symbol.for` name of the global `Map` that code the plugin generates fills: from key to id, and from a * system's, rule's or finalizer's declaration to id. Its version changes with the map's format. diff --git a/packages/ecs/src/interface/registry/index.ts b/packages/ecs/src/interface/registry/index.ts index 51cf087ee..48b62f2aa 100644 --- a/packages/ecs/src/interface/registry/index.ts +++ b/packages/ecs/src/interface/registry/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** What registration recorded, for the implementation to read. Not part of the public interface. */ export type { AnyDeclaration } from './declarations.js'; export { schemaOf, threadOfDeclaration } from './declarations.js'; diff --git a/packages/ecs/src/interface/registry/indexes.ts b/packages/ecs/src/interface/registry/indexes.ts index 24e7de2ff..7a040a98e 100644 --- a/packages/ecs/src/interface/registry/indexes.ts +++ b/packages/ecs/src/interface/registry/indexes.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Created } from '../indexes/created.js'; import { labelOfItem, recordItem, registeredAs } from './items.js'; import { firstKeyOf, labelOf, sameDeclaration } from './names.js'; diff --git a/packages/ecs/src/interface/registry/items.ts b/packages/ecs/src/interface/registry/items.ts index 187345807..2a4bed700 100644 --- a/packages/ecs/src/interface/registry/items.ts +++ b/packages/ecs/src/interface/registry/items.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** A registered system, rule or finalizer: what each constructor records, told apart by `kind`. */ type Registered = { readonly kind: string; readonly name: string; readonly declaration: object }; diff --git a/packages/ecs/src/interface/registry/layout.test.ts b/packages/ecs/src/interface/registry/layout.test.ts index 9f19f3dd4..5b4191311 100644 --- a/packages/ecs/src/interface/registry/layout.test.ts +++ b/packages/ecs/src/interface/registry/layout.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type { Schema } from "../schema/schema.js"; import { threadOfDeclaration } from "./declarations.js"; diff --git a/packages/ecs/src/interface/registry/layout.ts b/packages/ecs/src/interface/registry/layout.ts index 8ceeb5c48..ac995bec2 100644 --- a/packages/ecs/src/interface/registry/layout.ts +++ b/packages/ecs/src/interface/registry/layout.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../schema/schema.js'; import { isString } from './schemas.js'; diff --git a/packages/ecs/src/interface/registry/names.test.ts b/packages/ecs/src/interface/registry/names.test.ts index 0e3738303..c3ec8e159 100644 --- a/packages/ecs/src/interface/registry/names.test.ts +++ b/packages/ecs/src/interface/registry/names.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import type { AnyDeclaration } from "./declarations.js"; import { identify } from "./ids.test-helper.js"; diff --git a/packages/ecs/src/interface/registry/names.ts b/packages/ecs/src/interface/registry/names.ts index e3421bb05..a6c2be9d9 100644 --- a/packages/ecs/src/interface/registry/names.ts +++ b/packages/ecs/src/interface/registry/names.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { AnyDeclaration } from './declarations.js'; import { idOfKey } from './ids.js'; import { sameItem } from './items.js'; diff --git a/packages/ecs/src/interface/registry/program.ts b/packages/ecs/src/interface/registry/program.ts index 1450f3976..7ff06522d 100644 --- a/packages/ecs/src/interface/registry/program.ts +++ b/packages/ecs/src/interface/registry/program.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Finalizer } from '../finalizer/created.js'; import type { Rule } from '../rule/created.js'; import type { Definition } from '../system/definition.js'; diff --git a/packages/ecs/src/interface/registry/reduction.ts b/packages/ecs/src/interface/registry/reduction.ts index 58d3f9efe..7cbbdebaa 100644 --- a/packages/ecs/src/interface/registry/reduction.ts +++ b/packages/ecs/src/interface/registry/reduction.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Reduction } from '../resource/reduction.js'; /** Every reduction operator. */ diff --git a/packages/ecs/src/interface/registry/schedule.ts b/packages/ecs/src/interface/registry/schedule.ts index e4556e8aa..0127bcd13 100644 --- a/packages/ecs/src/interface/registry/schedule.ts +++ b/packages/ecs/src/interface/registry/schedule.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../schema/schema.js'; import type { Definition } from '../system/definition.js'; import type { Leaf } from '../system/leaf.js'; diff --git a/packages/ecs/src/interface/registry/schemas.ts b/packages/ecs/src/interface/registry/schemas.ts index 19b9776f7..9bff811a2 100644 --- a/packages/ecs/src/interface/registry/schemas.ts +++ b/packages/ecs/src/interface/registry/schemas.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../schema/schema.js'; /** Whether a constant is a struct's value: numbers and booleans, in fixed arrays and objects. */ diff --git a/packages/ecs/src/interface/registry/strata.ts b/packages/ecs/src/interface/registry/strata.ts index 18fb364e7..05350ba84 100644 --- a/packages/ecs/src/interface/registry/strata.ts +++ b/packages/ecs/src/interface/registry/strata.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * Structural derivation: which components an archetype's entities have once rules and `within` are applied. * Datalog with stratified negation over the components each entity has. A rule adds the components it derives where diff --git a/packages/ecs/src/interface/registry/threads.ts b/packages/ecs/src/interface/registry/threads.ts index b667c574e..1b36d46a1 100644 --- a/packages/ecs/src/interface/registry/threads.ts +++ b/packages/ecs/src/interface/registry/threads.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { threadOfDeclaration } from './declarations.js'; import { lookupKeysOf, orderKeysOf } from './indexes.js'; import { declarationOf, kindOf, labelOf } from './names.js'; diff --git a/packages/ecs/src/interface/registry/traits.ts b/packages/ecs/src/interface/registry/traits.ts index ebc857306..45e6145c0 100644 --- a/packages/ecs/src/interface/registry/traits.ts +++ b/packages/ecs/src/interface/registry/traits.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { claimKey, kindOf } from './names.js'; import type { BuiltIn } from '../trait/key.js'; diff --git a/packages/ecs/src/interface/registry/written.ts b/packages/ecs/src/interface/registry/written.ts index e6661f343..0016910c1 100644 --- a/packages/ecs/src/interface/registry/written.ts +++ b/packages/ecs/src/interface/registry/written.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { clock } from '../resources/clock.js'; import { labelOf } from './names.js'; diff --git a/packages/ecs/src/interface/report/components.ts b/packages/ecs/src/interface/report/components.ts index befc83cdb..ad9ab3aab 100644 --- a/packages/ecs/src/interface/report/components.ts +++ b/packages/ecs/src/interface/report/components.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { register } from '../component/register.js'; import type { Failure, Warning } from './failure.js'; diff --git a/packages/ecs/src/interface/report/failure.ts b/packages/ecs/src/interface/report/failure.ts index 2168e7902..e4e3a7c79 100644 --- a/packages/ecs/src/interface/report/failure.ts +++ b/packages/ecs/src/interface/report/failure.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** What failed in a run: a system, finalizer, GPU work, thread or unique index. */ export type Failure = { /** diff --git a/packages/ecs/src/interface/report/index.ts b/packages/ecs/src/interface/report/index.ts index a31bf1c20..ac4007f4e 100644 --- a/packages/ecs/src/interface/report/index.ts +++ b/packages/ecs/src/interface/report/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { create as createArchetype } from '../archetype/create.js'; import { run } from './components.js'; diff --git a/packages/ecs/src/interface/report/report.ts b/packages/ecs/src/interface/report/report.ts index f38b3c882..3735dcb75 100644 --- a/packages/ecs/src/interface/report/report.ts +++ b/packages/ecs/src/interface/report/report.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { errors, run } from './components.js'; diff --git a/packages/ecs/src/interface/report/report.type-test.ts b/packages/ecs/src/interface/report/report.type-test.ts index 28262aedd..caedfdfd1 100644 --- a/packages/ecs/src/interface/report/report.type-test.ts +++ b/packages/ecs/src/interface/report/report.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import * as resources from '../resources/index.js'; import { System } from '../system/system.js'; diff --git a/packages/ecs/src/interface/resource/condition.ts b/packages/ecs/src/interface/resource/condition.ts index daeb02603..e588711df 100644 --- a/packages/ecs/src/interface/resource/condition.ts +++ b/packages/ecs/src/interface/resource/condition.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Key } from "./key.js"; import type { Value } from './value.js'; diff --git a/packages/ecs/src/interface/resource/declaration.ts b/packages/ecs/src/interface/resource/declaration.ts index 47a49d83b..db397652d 100644 --- a/packages/ecs/src/interface/resource/declaration.ts +++ b/packages/ecs/src/interface/resource/declaration.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Describing, Starting } from "../component/declaration.js"; import type { IsData } from "../schema/is-data.js"; import type { Schema } from "../schema/schema.js"; diff --git a/packages/ecs/src/interface/resource/declaration.type-test.ts b/packages/ecs/src/interface/resource/declaration.type-test.ts index ab4ff9a02..9df0bcec0 100644 --- a/packages/ecs/src/interface/resource/declaration.type-test.ts +++ b/packages/ecs/src/interface/resource/declaration.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from './resource.js'; const gravity = Symbol("declarationTypeTest/gravity"); diff --git a/packages/ecs/src/interface/resource/index.ts b/packages/ecs/src/interface/resource/index.ts index b8017c664..540c26d77 100644 --- a/packages/ecs/src/interface/resource/index.ts +++ b/packages/ecs/src/interface/resource/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './register.js'; export type { Key } from './key.js'; export type { Value } from './value.js'; diff --git a/packages/ecs/src/interface/resource/key.ts b/packages/ecs/src/interface/resource/key.ts index 0a39b5f0d..94fd0e0c9 100644 --- a/packages/ecs/src/interface/resource/key.ts +++ b/packages/ecs/src/interface/resource/key.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Resources } from './types.js'; export type Key = keyof Resources; diff --git a/packages/ecs/src/interface/resource/reduction.ts b/packages/ecs/src/interface/resource/reduction.ts index c42c2d6b2..be84dce3c 100644 --- a/packages/ecs/src/interface/resource/reduction.ts +++ b/packages/ecs/src/interface/resource/reduction.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Key } from "./key.js"; import type { Resources } from './types.js'; diff --git a/packages/ecs/src/interface/resource/register.test.ts b/packages/ecs/src/interface/resource/register.test.ts index be43b6632..aa81d1d86 100644 --- a/packages/ecs/src/interface/resource/register.test.ts +++ b/packages/ecs/src/interface/resource/register.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../component/component.js"; import { declarationOf, kindOf, threadOfDeclaration } from "../registry/index.js"; diff --git a/packages/ecs/src/interface/resource/register.ts b/packages/ecs/src/interface/resource/register.ts index 4a34018f9..4b5351d25 100644 --- a/packages/ecs/src/interface/resource/register.ts +++ b/packages/ecs/src/interface/resource/register.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from "../component/component.js"; import { createRegistry, type AnyDeclaration } from "../registry/declarations.js"; import type { Schema } from "../schema/schema.js"; diff --git a/packages/ecs/src/interface/resource/resource.ts b/packages/ecs/src/interface/resource/resource.ts index 8a5b9d49e..40e00f7d0 100644 --- a/packages/ecs/src/interface/resource/resource.ts +++ b/packages/ecs/src/interface/resource/resource.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Resource = never; diff --git a/packages/ecs/src/interface/resource/types.ts b/packages/ecs/src/interface/resource/types.ts index 4469c5523..04cd4fb4b 100644 --- a/packages/ecs/src/interface/resource/types.ts +++ b/packages/ecs/src/interface/resource/types.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Each resource's traits, `type` included, by augmentation: `[time]: { type: number }`. Registration must give exactly these. */ export interface Resources { } diff --git a/packages/ecs/src/interface/resource/value.ts b/packages/ecs/src/interface/resource/value.ts index 7561a877a..75d24d70f 100644 --- a/packages/ecs/src/interface/resource/value.ts +++ b/packages/ecs/src/interface/resource/value.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { ThreadOf } from '../thread/of.js'; import type { Key } from "./key.js"; import type { Resources } from "./types.js"; diff --git a/packages/ecs/src/interface/resource/written.ts b/packages/ecs/src/interface/resource/written.ts index 1e97a8291..8e4f114d0 100644 --- a/packages/ecs/src/interface/resource/written.ts +++ b/packages/ecs/src/interface/resource/written.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { clock } from '../resources/clock.js'; /** Resources only the world writes: systems and finalizers read them, and worlds don't start them at other values. */ diff --git a/packages/ecs/src/interface/resources/always.ts b/packages/ecs/src/interface/resources/always.ts index b64f0d158..03901815c 100644 --- a/packages/ecs/src/interface/resources/always.ts +++ b/packages/ecs/src/interface/resources/always.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; /** Whether every beat of the cadence runs a tick, not only beats where `wake` is due or a run arrived. False by default. */ diff --git a/packages/ecs/src/interface/resources/cadence.ts b/packages/ecs/src/interface/resources/cadence.ts index f90f750e1..052cab4a5 100644 --- a/packages/ecs/src/interface/resources/cadence.ts +++ b/packages/ecs/src/interface/resources/cadence.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; /** The cadence's value, for the implementation: `Resource.Value`. */ diff --git a/packages/ecs/src/interface/resources/clock.ts b/packages/ecs/src/interface/resources/clock.ts index 55710affa..7ae4e3426 100644 --- a/packages/ecs/src/interface/resources/clock.ts +++ b/packages/ecs/src/interface/resources/clock.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; /** diff --git a/packages/ecs/src/interface/resources/gpu-device.ts b/packages/ecs/src/interface/resources/gpu-device.ts index 538c2040e..400a7a61a 100644 --- a/packages/ecs/src/interface/resources/gpu-device.ts +++ b/packages/ecs/src/interface/resources/gpu-device.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; /** diff --git a/packages/ecs/src/interface/resources/index.ts b/packages/ecs/src/interface/resources/index.ts index a74de9d30..66b4f80d9 100644 --- a/packages/ecs/src/interface/resources/index.ts +++ b/packages/ecs/src/interface/resources/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './always.js'; export { cadence } from './cadence.js'; export * from './clock.js'; diff --git a/packages/ecs/src/interface/resources/wake.ts b/packages/ecs/src/interface/resources/wake.ts index fcd1a89e4..9ae439241 100644 --- a/packages/ecs/src/interface/resources/wake.ts +++ b/packages/ecs/src/interface/resources/wake.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; /** diff --git a/packages/ecs/src/interface/resources/workers.ts b/packages/ecs/src/interface/resources/workers.ts index bac048934..eb4be500e 100644 --- a/packages/ecs/src/interface/resources/workers.ts +++ b/packages/ecs/src/interface/resources/workers.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; /** The kernel pool's size, 0 for none, or `null`, the default, for the platform's choice. The pool follows it at sync points. */ diff --git a/packages/ecs/src/interface/rule/create.ts b/packages/ecs/src/interface/rule/create.ts index 75808cf82..42075f6c4 100644 --- a/packages/ecs/src/interface/rule/create.ts +++ b/packages/ecs/src/interface/rule/create.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { declarationOf, kindOf, labelOf } from '../registry/names.js'; import { takeIdOfDeclaration } from '../registry/ids.js'; import { nameOf } from '../registry/items.js'; diff --git a/packages/ecs/src/interface/rule/created.ts b/packages/ecs/src/interface/rule/created.ts index f3752f11f..45e69e97e 100644 --- a/packages/ecs/src/interface/rule/created.ts +++ b/packages/ecs/src/interface/rule/created.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Declaration } from './declaration.js'; /** A rule: entities matching its components have the components it derives. */ diff --git a/packages/ecs/src/interface/rule/declaration.ts b/packages/ecs/src/interface/rule/declaration.ts index ade032da1..d48bf589d 100644 --- a/packages/ecs/src/interface/rule/declaration.ts +++ b/packages/ecs/src/interface/rule/declaration.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Name } from './name.js'; import type { Derived } from '../component/value.js'; diff --git a/packages/ecs/src/interface/rule/index.ts b/packages/ecs/src/interface/rule/index.ts index 8fbd8a7ef..08656ff16 100644 --- a/packages/ecs/src/interface/rule/index.ts +++ b/packages/ecs/src/interface/rule/index.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export * from './create.js'; diff --git a/packages/ecs/src/interface/rule/name.ts b/packages/ecs/src/interface/rule/name.ts index 50cbfa06d..ef87e3b53 100644 --- a/packages/ecs/src/interface/rule/name.ts +++ b/packages/ecs/src/interface/rule/name.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The label reports and errors give it, which needn't be unique: the value its constructor returns is its identity, so * separately written code can't collide by name. Namespacing it (`"physics/integrate"`) keeps labels short. Without diff --git a/packages/ecs/src/interface/rule/rule.ts b/packages/ecs/src/interface/rule/rule.ts index 3142a2d4d..f58be41f6 100644 --- a/packages/ecs/src/interface/rule/rule.ts +++ b/packages/ecs/src/interface/rule/rule.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Rule = never; export * as Rule from './index.js'; diff --git a/packages/ecs/src/interface/rule/rule.type-test.ts b/packages/ecs/src/interface/rule/rule.type-test.ts index 409abbda8..ae3685062 100644 --- a/packages/ecs/src/interface/rule/rule.type-test.ts +++ b/packages/ecs/src/interface/rule/rule.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; import { Component } from '../component/component.js'; import { Entity } from '../entity/entity.js'; diff --git a/packages/ecs/src/interface/schema/is-data.ts b/packages/ecs/src/interface/schema/is-data.ts index 84edc293b..3b6dd6e74 100644 --- a/packages/ecs/src/interface/schema/is-data.ts +++ b/packages/ecs/src/interface/schema/is-data.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. type Method = (...parameters: never[]) => unknown; /** How deep `NotData` looks into members: deeper ones count as data, so recursive types stay finite. */ diff --git a/packages/ecs/src/interface/schema/is-struct.ts b/packages/ecs/src/interface/schema/is-struct.ts index 5a506be10..80b4bdc90 100644 --- a/packages/ecs/src/interface/schema/is-struct.ts +++ b/packages/ecs/src/interface/schema/is-struct.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. type Method = (...parameters: never[]) => unknown; /** Whether an object type has a method of its own, so it isn't data, looked at without recursing. */ diff --git a/packages/ecs/src/interface/schema/schema.ts b/packages/ecs/src/interface/schema/schema.ts index 51e759c4b..3af7f1405 100644 --- a/packages/ecs/src/interface/schema/schema.ts +++ b/packages/ecs/src/interface/schema/schema.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Entity } from '../entity/entity.js'; /** Any value representable in JSON. */ diff --git a/packages/ecs/src/interface/schema/schema.type-test.ts b/packages/ecs/src/interface/schema/schema.type-test.ts index 559a8b984..09223bcf7 100644 --- a/packages/ecs/src/interface/schema/schema.type-test.ts +++ b/packages/ecs/src/interface/schema/schema.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { IsData } from "./is-data.js"; import type { IsStruct } from "./is-struct.js"; import type { Schema } from "./schema.js"; diff --git a/packages/ecs/src/interface/schema/schemas.type-test.ts b/packages/ecs/src/interface/schema/schemas.type-test.ts index b42b5e5bd..b9a4fb74f 100644 --- a/packages/ecs/src/interface/schema/schemas.type-test.ts +++ b/packages/ecs/src/interface/schema/schemas.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from "./schema.js"; const ok: Schema.ForType = { const: true }; diff --git a/packages/ecs/src/interface/system/access.ts b/packages/ecs/src/interface/system/access.ts index 786a00559..73cf534e3 100644 --- a/packages/ecs/src/interface/system/access.ts +++ b/packages/ecs/src/interface/system/access.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Resource } from '../resource/resource.js'; import type { Writable } from '../component/value.js'; diff --git a/packages/ecs/src/interface/system/body.ts b/packages/ecs/src/interface/system/body.ts index 2bf63145d..4f89a7e19 100644 --- a/packages/ecs/src/interface/system/body.ts +++ b/packages/ecs/src/interface/system/body.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Entity } from '../entity/entity.js'; import type { Resource } from '../resource/resource.js'; diff --git a/packages/ecs/src/interface/system/check.ts b/packages/ecs/src/interface/system/check.ts index 3f1b9d57a..fb94dca85 100644 --- a/packages/ecs/src/interface/system/check.ts +++ b/packages/ecs/src/interface/system/check.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { layoutOf } from '../registry/layout.js'; import { declarationOf, kindOf, labelOf } from '../registry/names.js'; import { definitionOf } from '../registry/program.js'; diff --git a/packages/ecs/src/interface/system/commands.ts b/packages/ecs/src/interface/system/commands.ts index 2a3242437..6269d7b26 100644 --- a/packages/ecs/src/interface/system/commands.ts +++ b/packages/ecs/src/interface/system/commands.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Entity } from '../entity/entity.js'; import type { Essential } from '../component/value.js'; diff --git a/packages/ecs/src/interface/system/commands.type-test.ts b/packages/ecs/src/interface/system/commands.type-test.ts index 77e13d01c..82a83a58f 100644 --- a/packages/ecs/src/interface/system/commands.type-test.ts +++ b/packages/ecs/src/interface/system/commands.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; import { Component } from '../component/component.js'; import { Archetype } from '../archetype/archetype.js'; diff --git a/packages/ecs/src/interface/system/composite-declaration.ts b/packages/ecs/src/interface/system/composite-declaration.ts index 141f0c52e..f3c139222 100644 --- a/packages/ecs/src/interface/system/composite-declaration.ts +++ b/packages/ecs/src/interface/system/composite-declaration.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Name } from './name.js'; import type { System } from './system.js'; diff --git a/packages/ecs/src/interface/system/composite-input.type-test.ts b/packages/ecs/src/interface/system/composite-input.type-test.ts index 456b92774..edd7a682f 100644 --- a/packages/ecs/src/interface/system/composite-input.type-test.ts +++ b/packages/ecs/src/interface/system/composite-input.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { World } from '../world/world.js'; import { System } from './system.js'; diff --git a/packages/ecs/src/interface/system/composite.ts b/packages/ecs/src/interface/system/composite.ts index d7cd114e7..4bb19e0ab 100644 --- a/packages/ecs/src/interface/system/composite.ts +++ b/packages/ecs/src/interface/system/composite.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { CompositeDeclaration } from './composite-declaration.js'; import type { Name } from './name.js'; diff --git a/packages/ecs/src/interface/system/conditions.type-test.ts b/packages/ecs/src/interface/system/conditions.type-test.ts index 8bd314857..e56d94a37 100644 --- a/packages/ecs/src/interface/system/conditions.type-test.ts +++ b/packages/ecs/src/interface/system/conditions.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; import { Component } from '../component/component.js'; import { System } from './system.js'; diff --git a/packages/ecs/src/interface/system/create.test.ts b/packages/ecs/src/interface/system/create.test.ts index b6078fdd6..1f78e7278 100644 --- a/packages/ecs/src/interface/system/create.test.ts +++ b/packages/ecs/src/interface/system/create.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component } from "../component/component.js"; import { Entity } from "../entity/entity.js"; diff --git a/packages/ecs/src/interface/system/create.ts b/packages/ecs/src/interface/system/create.ts index 81fe82db3..3160273a3 100644 --- a/packages/ecs/src/interface/system/create.ts +++ b/packages/ecs/src/interface/system/create.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Entity } from '../entity/entity.js'; import type { Index } from '../indexes/index-type.js'; diff --git a/packages/ecs/src/interface/system/declaration.ts b/packages/ecs/src/interface/system/declaration.ts index 1c4380796..1fdb39b2b 100644 --- a/packages/ecs/src/interface/system/declaration.ts +++ b/packages/ecs/src/interface/system/declaration.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Index } from '../indexes/index-type.js'; import type { Resource } from '../resource/resource.js'; import type { Schema } from '../schema/schema.js'; diff --git a/packages/ecs/src/interface/system/definition.ts b/packages/ecs/src/interface/system/definition.ts index 588f4f0e0..2ecc8a774 100644 --- a/packages/ecs/src/interface/system/definition.ts +++ b/packages/ecs/src/interface/system/definition.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Composite } from './composite.js'; import type { Leaf } from './leaf.js'; diff --git a/packages/ecs/src/interface/system/index.ts b/packages/ecs/src/interface/system/index.ts index dba7ebd75..85322bec3 100644 --- a/packages/ecs/src/interface/system/index.ts +++ b/packages/ecs/src/interface/system/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type { Commands } from './commands.js'; export * from './create.js'; export { render, type RenderContext, type RenderTable } from './render.js'; diff --git a/packages/ecs/src/interface/system/input.ts b/packages/ecs/src/interface/system/input.ts index 68b2e4442..9f15c7594 100644 --- a/packages/ecs/src/interface/system/input.ts +++ b/packages/ecs/src/interface/system/input.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Schema } from '../schema/schema.js'; import type { System } from './system.js'; diff --git a/packages/ecs/src/interface/system/leaf.ts b/packages/ecs/src/interface/system/leaf.ts index c7a361212..c8b7b0f46 100644 --- a/packages/ecs/src/interface/system/leaf.ts +++ b/packages/ecs/src/interface/system/leaf.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Declaration } from './declaration.js'; import type { Name } from './name.js'; diff --git a/packages/ecs/src/interface/system/name.ts b/packages/ecs/src/interface/system/name.ts index 50cbfa06d..ef87e3b53 100644 --- a/packages/ecs/src/interface/system/name.ts +++ b/packages/ecs/src/interface/system/name.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The label reports and errors give it, which needn't be unique: the value its constructor returns is its identity, so * separately written code can't collide by name. Namespacing it (`"physics/integrate"`) keeps labels short. Without diff --git a/packages/ecs/src/interface/system/property.ts b/packages/ecs/src/interface/system/property.ts index cb157e8a9..7d3581bf5 100644 --- a/packages/ecs/src/interface/system/property.ts +++ b/packages/ecs/src/interface/system/property.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Property = T extends { readonly [P in K]?: infer V } ? V : undefined; diff --git a/packages/ecs/src/interface/system/render.ts b/packages/ecs/src/interface/system/render.ts index a3832a706..f031d58a0 100644 --- a/packages/ecs/src/interface/system/render.ts +++ b/packages/ecs/src/interface/system/render.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import { takeIdOfDeclaration } from '../registry/ids.js'; import { nameOf } from '../registry/items.js'; diff --git a/packages/ecs/src/interface/system/struct.ts b/packages/ecs/src/interface/system/struct.ts index 9da1c1080..d863ca206 100644 --- a/packages/ecs/src/interface/system/struct.ts +++ b/packages/ecs/src/interface/system/struct.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Resource } from '../resource/resource.js'; import type { IsStruct } from '../schema/is-struct.js'; diff --git a/packages/ecs/src/interface/system/system.ts b/packages/ecs/src/interface/system/system.ts index 8527cc7f2..72f2c3cf5 100644 --- a/packages/ecs/src/interface/system/system.ts +++ b/packages/ecs/src/interface/system/system.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. declare const input: unique symbol; /** diff --git a/packages/ecs/src/interface/system/system.type-test.ts b/packages/ecs/src/interface/system/system.type-test.ts index 9da8ccd47..e000bb668 100644 --- a/packages/ecs/src/interface/system/system.type-test.ts +++ b/packages/ecs/src/interface/system/system.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; import { Component } from '../component/component.js'; import { Entity } from '../entity/entity.js'; diff --git a/packages/ecs/src/interface/system/threads.ts b/packages/ecs/src/interface/system/threads.ts index 35439e8b2..7e49f0d76 100644 --- a/packages/ecs/src/interface/system/threads.ts +++ b/packages/ecs/src/interface/system/threads.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { ThreadOfComponent } from '../component/value.js'; import type { Resource } from '../resource/resource.js'; diff --git a/packages/ecs/src/interface/system/threads.type-test.ts b/packages/ecs/src/interface/system/threads.type-test.ts index 0b1aca33e..a01cc0921 100644 --- a/packages/ecs/src/interface/system/threads.type-test.ts +++ b/packages/ecs/src/interface/system/threads.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../resource/resource.js'; import { Component } from '../component/component.js'; import { Finalizer } from '../finalizer/finalizer.js'; diff --git a/packages/ecs/src/interface/system/up.type-test.ts b/packages/ecs/src/interface/system/up.type-test.ts index 3158fd3eb..885adaa58 100644 --- a/packages/ecs/src/interface/system/up.type-test.ts +++ b/packages/ecs/src/interface/system/up.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../component/component.js'; import { Entity } from '../entity/entity.js'; import { System } from './system.js'; diff --git a/packages/ecs/src/interface/system/values.ts b/packages/ecs/src/interface/system/values.ts index 1fbcfe76a..66f96242c 100644 --- a/packages/ecs/src/interface/system/values.ts +++ b/packages/ecs/src/interface/system/values.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Entity } from '../entity/entity.js'; import type { Index } from '../indexes/index-type.js'; diff --git a/packages/ecs/src/interface/thread/of.ts b/packages/ecs/src/interface/thread/of.ts index 073e618df..f2fa6f781 100644 --- a/packages/ecs/src/interface/thread/of.ts +++ b/packages/ecs/src/interface/thread/of.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { IsShared } from '../schema/is-struct.js'; import type { Thread } from './thread.js'; diff --git a/packages/ecs/src/interface/thread/thread.ts b/packages/ecs/src/interface/thread/thread.ts index f495a25e6..872e99295 100644 --- a/packages/ecs/src/interface/thread/thread.ts +++ b/packages/ecs/src/interface/thread/thread.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * The logical threads, by augmentation: `interface Threads { audio: true }`. A logical thread is where object values * live and where the code touching them runs. A worker can fill several; one that no thread claims is filled by `world`. diff --git a/packages/ecs/src/interface/thread/thread.type-test.ts b/packages/ecs/src/interface/thread/thread.type-test.ts index 07fbd4be5..103e7441d 100644 --- a/packages/ecs/src/interface/thread/thread.type-test.ts +++ b/packages/ecs/src/interface/thread/thread.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../component/component.js'; import type { IsNode, IsTransferable } from '../platform/platform.js'; import { Resource } from '../resource/resource.js'; diff --git a/packages/ecs/src/interface/trait/index.ts b/packages/ecs/src/interface/trait/index.ts index 01bc72c1a..5b9912448 100644 --- a/packages/ecs/src/interface/trait/index.ts +++ b/packages/ecs/src/interface/trait/index.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { register } from './register.js'; diff --git a/packages/ecs/src/interface/trait/key.ts b/packages/ecs/src/interface/trait/key.ts index 08034b882..3e51d55ac 100644 --- a/packages/ecs/src/interface/trait/key.ts +++ b/packages/ecs/src/interface/trait/key.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Traits } from './types.js'; export type Key = keyof Traits; diff --git a/packages/ecs/src/interface/trait/register.ts b/packages/ecs/src/interface/trait/register.ts index 2e96f1f02..ea883b4e1 100644 --- a/packages/ecs/src/interface/trait/register.ts +++ b/packages/ecs/src/interface/trait/register.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { addTrait } from '../registry/traits.js'; import type { BuiltIn, Key } from './key.js'; diff --git a/packages/ecs/src/interface/trait/required.ts b/packages/ecs/src/interface/trait/required.ts index aad9c6195..785ba3cba 100644 --- a/packages/ecs/src/interface/trait/required.ts +++ b/packages/ecs/src/interface/trait/required.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { IsNode } from '../platform/platform.js'; /** diff --git a/packages/ecs/src/interface/trait/symbol-keys.ts b/packages/ecs/src/interface/trait/symbol-keys.ts index b19e79e3a..ade3778cc 100644 --- a/packages/ecs/src/interface/trait/symbol-keys.ts +++ b/packages/ecs/src/interface/trait/symbol-keys.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Components } from '../component/types.js'; import type { Resources } from '../resource/types.js'; import type { BuiltIn } from './key.js'; diff --git a/packages/ecs/src/interface/trait/symbol-keys.type-test.ts b/packages/ecs/src/interface/trait/symbol-keys.type-test.ts index 439cbc60a..70ae8c113 100644 --- a/packages/ecs/src/interface/trait/symbol-keys.type-test.ts +++ b/packages/ecs/src/interface/trait/symbol-keys.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { KeysMustBeSymbols } from './symbol-keys.js'; type Equal = (() => T extends X ? 1 : 2) extends (() => T extends Y ? 1 : 2) ? true : false; diff --git a/packages/ecs/src/interface/trait/trait.ts b/packages/ecs/src/interface/trait/trait.ts index f8d7cd9cc..5534fc570 100644 --- a/packages/ecs/src/interface/trait/trait.ts +++ b/packages/ecs/src/interface/trait/trait.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Trait = never; export * as Trait from './index.js'; diff --git a/packages/ecs/src/interface/trait/trait.type-test.ts b/packages/ecs/src/interface/trait/trait.type-test.ts index f271c17db..b0c3f05e4 100644 --- a/packages/ecs/src/interface/trait/trait.type-test.ts +++ b/packages/ecs/src/interface/trait/trait.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../component/component.js'; import { Entity } from '../entity/entity.js'; import { Resource } from '../resource/resource.js'; diff --git a/packages/ecs/src/interface/trait/types.ts b/packages/ecs/src/interface/trait/types.ts index bc2887e71..f2675bc00 100644 --- a/packages/ecs/src/interface/trait/types.ts +++ b/packages/ecs/src/interface/trait/types.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../component/component.js'; import type { Components } from '../component/types.js'; import type { Entity } from '../entity/entity.js'; diff --git a/packages/ecs/src/interface/world/create.ts b/packages/ecs/src/interface/world/create.ts index 1d57ee692..58ef77299 100644 --- a/packages/ecs/src/interface/world/create.ts +++ b/packages/ecs/src/interface/world/create.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Resource } from '../resource/resource.js'; import type { WorldWritten } from '../resource/written.js'; import type { World } from './world.js'; diff --git a/packages/ecs/src/interface/world/filter.ts b/packages/ecs/src/interface/world/filter.ts index 273732712..ddda35e3c 100644 --- a/packages/ecs/src/interface/world/filter.ts +++ b/packages/ecs/src/interface/world/filter.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export type Comparison = { readonly "=="?: T; diff --git a/packages/ecs/src/interface/world/index.ts b/packages/ecs/src/interface/world/index.ts index e357bae62..4d29ed06a 100644 --- a/packages/ecs/src/interface/world/index.ts +++ b/packages/ecs/src/interface/world/index.ts @@ -1,2 +1,3 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. // The `World` namespace's members: none, since a consumer declares nothing more with it. export {}; diff --git a/packages/ecs/src/interface/world/join.ts b/packages/ecs/src/interface/world/join.ts index 99b5616f6..b5b03843f 100644 --- a/packages/ecs/src/interface/world/join.ts +++ b/packages/ecs/src/interface/world/join.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Thread } from '../thread/thread.js'; import type { World } from './world.js'; diff --git a/packages/ecs/src/interface/world/loop.type-test.ts b/packages/ecs/src/interface/world/loop.type-test.ts index c5bce62d5..db5a1213c 100644 --- a/packages/ecs/src/interface/world/loop.type-test.ts +++ b/packages/ecs/src/interface/world/loop.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Finalizer, System, always, cadence, clock, gpuDevice, wake, workers, type Component, type Resource, type World, diff --git a/packages/ecs/src/interface/world/share.type-test.ts b/packages/ecs/src/interface/world/share.type-test.ts index f4c86f0a7..e3fa40c15 100644 --- a/packages/ecs/src/interface/world/share.type-test.ts +++ b/packages/ecs/src/interface/world/share.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { World } from './world.js'; declare const world: World; diff --git a/packages/ecs/src/interface/world/world.ts b/packages/ecs/src/interface/world/world.ts index 67f9536c6..deb53cdde 100644 --- a/packages/ecs/src/interface/world/world.ts +++ b/packages/ecs/src/interface/world/world.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Input } from '../system/input.js'; import type { System } from '../system/system.js'; diff --git a/packages/ecs/src/interface/world/world.type-test.ts b/packages/ecs/src/interface/world/world.type-test.ts index 3a5360542..cbb1b88d8 100644 --- a/packages/ecs/src/interface/world/world.type-test.ts +++ b/packages/ecs/src/interface/world/world.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from '../component/component.js'; import type { Entity } from '../entity/entity.js'; import { System } from '../system/system.js'; diff --git a/packages/ecs/src/observe-imports.test.ts b/packages/ecs/src/observe-imports.test.ts index 9f542914c..96134838c 100644 --- a/packages/ecs/src/observe-imports.test.ts +++ b/packages/ecs/src/observe-imports.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { readdirSync, readFileSync } from "node:fs"; import { dirname, join, relative, resolve } from "node:path"; import { fileURLToPath } from "node:url"; diff --git a/packages/ecs/src/observe/compare.ts b/packages/ecs/src/observe/compare.ts index 9f9ea0229..6e7e8c676 100644 --- a/packages/ecs/src/observe/compare.ts +++ b/packages/ecs/src/observe/compare.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. // Comparing and testing component values for queries: equality, order, and `where` conditions compiled once. /** Whether two values are equal: primitives by identity, objects and arrays by their own keys, recursively. */ diff --git a/packages/ecs/src/observe/entity.ts b/packages/ecs/src/observe/entity.ts index c19eaf94f..e3f478306 100644 --- a/packages/ecs/src/observe/entity.ts +++ b/packages/ecs/src/observe/entity.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Index, System, type Component, type Entity, type World } from '../interface/index.js'; import type { Observe } from './observe.js'; import { createEntry, give, giveFirst, keysId, labelOf, none, noDelivery, ownName, passed, scheduleDelivery, scheduleRead, stateOf, subscribe, sweepSubscribers, throwFailed, type Entry, type Read, type Shape, type WorldState } from './world-state.js'; diff --git a/packages/ecs/src/observe/index.ts b/packages/ecs/src/observe/index.ts index c527abfa5..c0414c420 100644 --- a/packages/ecs/src/observe/index.ts +++ b/packages/ecs/src/observe/index.ts @@ -1 +1,2 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { Observe } from './observe.js'; diff --git a/packages/ecs/src/observe/members.ts b/packages/ecs/src/observe/members.ts index d3a596594..9de7e34c9 100644 --- a/packages/ecs/src/observe/members.ts +++ b/packages/ecs/src/observe/members.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component, Components, Entity, Resource, World } from '../interface/index.js'; import { observeEntity } from './entity.js'; import type { Observe } from './observe.js'; diff --git a/packages/ecs/src/observe/observe.ts b/packages/ecs/src/observe/observe.ts index 5951e5f7c..6239bfa8e 100644 --- a/packages/ecs/src/observe/observe.ts +++ b/packages/ecs/src/observe/observe.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * Observes a sequence of values: `notify` is called zero or more times, possibly during the call that subscribes, * possibly later; an observer mustn't depend on either. Returns the function that stops it. diff --git a/packages/ecs/src/observe/observe.type-test.ts b/packages/ecs/src/observe/observe.type-test.ts index 1757297d4..521a0c116 100644 --- a/packages/ecs/src/observe/observe.type-test.ts +++ b/packages/ecs/src/observe/observe.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, Resource, type Entity, type World } from '../interface/index.js'; import { Observe } from './index.js'; diff --git a/packages/ecs/src/observe/plans.ts b/packages/ecs/src/observe/plans.ts index fab3f14a4..94fac06a7 100644 --- a/packages/ecs/src/observe/plans.ts +++ b/packages/ecs/src/observe/plans.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component, Entity } from '../interface/index.js'; import { compare, compareNumbers } from './compare.js'; diff --git a/packages/ecs/src/observe/query.ts b/packages/ecs/src/observe/query.ts index 461c1defd..f2b4ef6ee 100644 --- a/packages/ecs/src/observe/query.ts +++ b/packages/ecs/src/observe/query.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from '../interface/index.js'; type Comparison = { diff --git a/packages/ecs/src/observe/resource.ts b/packages/ecs/src/observe/resource.ts index 22c3266e7..3751df1a3 100644 --- a/packages/ecs/src/observe/resource.ts +++ b/packages/ecs/src/observe/resource.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { System, type Resource, type World } from '../interface/index.js'; import type { Observe } from './observe.js'; import { createEntry, give, giveFirst, none, noDelivery, ownName, passed, scheduleRead, stateOf, subscribe, sweepSubscribers, throwFailed, type Entry, type Read, type Shape, type WorldState } from './world-state.js'; diff --git a/packages/ecs/src/observe/select.ts b/packages/ecs/src/observe/select.ts index a32fff96c..ba6cf1630 100644 --- a/packages/ecs/src/observe/select.ts +++ b/packages/ecs/src/observe/select.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Index, System, type Component, type Entity, type World } from '../interface/index.js'; import { compare, predicateOf } from './compare.js'; import type { Observe } from './observe.js'; diff --git a/packages/ecs/src/observe/to-promise.ts b/packages/ecs/src/observe/to-promise.ts index c9f44e946..fb6db4524 100644 --- a/packages/ecs/src/observe/to-promise.ts +++ b/packages/ecs/src/observe/to-promise.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Observe } from './observe.js'; /** The first value an observer gets; it stops observing after it, even when that value comes during the subscribing call. */ diff --git a/packages/ecs/src/observe/values.ts b/packages/ecs/src/observe/values.ts index af243ba94..f73d0f4b9 100644 --- a/packages/ecs/src/observe/values.ts +++ b/packages/ecs/src/observe/values.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component, Resource } from '../interface/index.js'; type Primitive = string | number | boolean | bigint | symbol | null | undefined; diff --git a/packages/ecs/src/observe/world-state.ts b/packages/ecs/src/observe/world-state.ts index 3e63990bb..43ccdd5bf 100644 --- a/packages/ecs/src/observe/world-state.ts +++ b/packages/ecs/src/observe/world-state.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Report, System, type World } from '../interface/index.js'; // What the factories keep for each world: the values observers share, their subscribers, and the observer systems that diff --git a/packages/ecs/src/perftest/benchmark.ts b/packages/ecs/src/perftest/benchmark.ts index 90f7b1d4e..8fec9b938 100644 --- a/packages/ecs/src/perftest/benchmark.ts +++ b/packages/ecs/src/perftest/benchmark.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** A benchmark and what it stands for, so its results read without its code. */ export type Benchmark = { /** Stable across runs: results are tracked by it. */ diff --git a/packages/ecs/src/perftest/benchmarks.ts b/packages/ecs/src/perftest/benchmarks.ts index 9f938b114..e0cea84bc 100644 --- a/packages/ecs/src/perftest/benchmarks.ts +++ b/packages/ecs/src/perftest/benchmarks.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from "../interface/component/component.js"; import type { Entity } from "../interface/entity/entity.js"; import { World } from "../interface/world/world.js"; diff --git a/packages/ecs/src/perftest/finalized.ts b/packages/ecs/src/perftest/finalized.ts index 68479c044..6039cd491 100644 --- a/packages/ecs/src/perftest/finalized.ts +++ b/packages/ecs/src/perftest/finalized.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Component } from "../interface/component/component.js"; import { Finalizer } from "../interface/finalizer/finalizer.js"; diff --git a/packages/ecs/src/perftest/flat.ts b/packages/ecs/src/perftest/flat.ts index 1f06e4505..26382f7c3 100644 --- a/packages/ecs/src/perftest/flat.ts +++ b/packages/ecs/src/perftest/flat.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import { System } from "../interface/system/system.js"; import { Archetype } from '../interface/archetype/archetype.js'; diff --git a/packages/ecs/src/perftest/growth.ts b/packages/ecs/src/perftest/growth.ts index f6c1e86bb..27b644003 100644 --- a/packages/ecs/src/perftest/growth.ts +++ b/packages/ecs/src/perftest/growth.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype } from "../interface/archetype/archetype.js"; import { Component } from "../interface/component/component.js"; import { System } from "../interface/system/system.js"; diff --git a/packages/ecs/src/perftest/handoff.ts b/packages/ecs/src/perftest/handoff.ts index 80ee68bd0..13022cbf0 100644 --- a/packages/ecs/src/perftest/handoff.ts +++ b/packages/ecs/src/perftest/handoff.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Resource } from "../interface/resource/resource.js"; import { always } from "../interface/resources/always.js"; diff --git a/packages/ecs/src/perftest/hierarchy.ts b/packages/ecs/src/perftest/hierarchy.ts index ebe3d15dc..60d97a844 100644 --- a/packages/ecs/src/perftest/hierarchy.ts +++ b/packages/ecs/src/perftest/hierarchy.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype } from "../interface/archetype/archetype.js"; import { Component } from "../interface/component/component.js"; import { Entity } from "../interface/entity/entity.js"; diff --git a/packages/ecs/src/perftest/indexes.ts b/packages/ecs/src/perftest/indexes.ts index 8a87551ea..20f38444d 100644 --- a/packages/ecs/src/perftest/indexes.ts +++ b/packages/ecs/src/perftest/indexes.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import { Entity } from "../interface/entity/entity.js"; import { Index } from "../interface/indexes/index-type.js"; diff --git a/packages/ecs/src/perftest/joined.ts b/packages/ecs/src/perftest/joined.ts index 8151a939c..18761c1be 100644 --- a/packages/ecs/src/perftest/joined.ts +++ b/packages/ecs/src/perftest/joined.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import type { MessagePort as NodeMessagePort } from "node:worker_threads"; import { join } from "../implementation/index.js"; diff --git a/packages/ecs/src/perftest/keys.ts b/packages/ecs/src/perftest/keys.ts index d256fb96f..4d865a02f 100644 --- a/packages/ecs/src/perftest/keys.ts +++ b/packages/ecs/src/perftest/keys.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * A microbenchmark of reading a values object's symbol keys, as commands and spawns do: each round builds the * object literal a spawn site would, then reads every key and its value. Run with `node dist/perf/run.js --keys` diff --git a/packages/ecs/src/perftest/log.ts b/packages/ecs/src/perftest/log.ts index 568cffd60..717517521 100644 --- a/packages/ecs/src/perftest/log.ts +++ b/packages/ecs/src/perftest/log.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import { createBuffer } from "../implementation/world/buffer.js"; import { createCommands } from "../implementation/world/commands.js"; diff --git a/packages/ecs/src/perftest/loop.ts b/packages/ecs/src/perftest/loop.ts index ab9419065..48b84da9e 100644 --- a/packages/ecs/src/perftest/loop.ts +++ b/packages/ecs/src/perftest/loop.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { always } from "../interface/resources/always.js"; import { System } from "../interface/system/system.js"; import { backToBack, createWorld } from "../implementation/index.js"; diff --git a/packages/ecs/src/perftest/observed-gpu.ts b/packages/ecs/src/perftest/observed-gpu.ts index b172e3e23..625741140 100644 --- a/packages/ecs/src/perftest/observed-gpu.ts +++ b/packages/ecs/src/perftest/observed-gpu.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import type { Entity } from "../interface/entity/entity.js"; import { gpuDevice } from "../interface/resources/gpu-device.js"; diff --git a/packages/ecs/src/perftest/observed.ts b/packages/ecs/src/perftest/observed.ts index 0e69778b3..8f02842f1 100644 --- a/packages/ecs/src/perftest/observed.ts +++ b/packages/ecs/src/perftest/observed.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import type { Entity } from "../interface/entity/entity.js"; import { Resource } from "../interface/resource/resource.js"; diff --git a/packages/ecs/src/perftest/observer.ts b/packages/ecs/src/perftest/observer.ts index 0bde76913..7f479fa9c 100644 --- a/packages/ecs/src/perftest/observer.ts +++ b/packages/ecs/src/perftest/observer.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Component } from "../interface/component/component.js"; import type { Entity } from "../interface/entity/entity.js"; import { clock } from "../interface/resources/clock.js"; diff --git a/packages/ecs/src/perftest/particles.ts b/packages/ecs/src/perftest/particles.ts index 8f62badd5..3eb23ad2a 100644 --- a/packages/ecs/src/perftest/particles.ts +++ b/packages/ecs/src/perftest/particles.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype } from "../interface/archetype/archetype.js"; import { Component } from "../interface/component/component.js"; import type { Schema } from "../interface/schema/schema.js"; diff --git a/packages/ecs/src/perftest/placed.ts b/packages/ecs/src/perftest/placed.ts index 2adb8612c..462241825 100644 --- a/packages/ecs/src/perftest/placed.ts +++ b/packages/ecs/src/perftest/placed.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { World } from "../interface/world/world.js"; import { workers } from "../interface/resources/workers.js"; import { createWorld } from "../implementation/world/create.js"; diff --git a/packages/ecs/src/perftest/reads.ts b/packages/ecs/src/perftest/reads.ts index 59302ac72..94653341a 100644 --- a/packages/ecs/src/perftest/reads.ts +++ b/packages/ecs/src/perftest/reads.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import type { Entity } from "../interface/entity/entity.js"; import { Resource } from "../interface/resource/resource.js"; diff --git a/packages/ecs/src/perftest/remote.ts b/packages/ecs/src/perftest/remote.ts index f975e3484..e3b645497 100644 --- a/packages/ecs/src/perftest/remote.ts +++ b/packages/ecs/src/perftest/remote.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Component } from "../interface/component/component.js"; import { Index } from "../interface/indexes/index-type.js"; diff --git a/packages/ecs/src/perftest/run.ts b/packages/ecs/src/perftest/run.ts index 1f8a1e64d..3539549ae 100644 --- a/packages/ecs/src/perftest/run.ts +++ b/packages/ecs/src/perftest/run.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { calibrationSource, copyBandwidth, environmentLine, resultLine, threadsBandwidth, type Curve } from "./benchmark.js"; import { benchmarks } from "./benchmarks.js"; diff --git a/packages/ecs/src/perftest/strings.ts b/packages/ecs/src/perftest/strings.ts index 34f439ffb..0873fcbdf 100644 --- a/packages/ecs/src/perftest/strings.ts +++ b/packages/ecs/src/perftest/strings.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import { workers } from "../interface/resources/workers.js"; import { System } from "../interface/system/system.js"; diff --git a/packages/ecs/src/perftest/structural.ts b/packages/ecs/src/perftest/structural.ts index 70de131b0..ae1874190 100644 --- a/packages/ecs/src/perftest/structural.ts +++ b/packages/ecs/src/perftest/structural.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype } from "../interface/archetype/archetype.js"; import { Component } from "../interface/component/component.js"; import type { Entity } from "../interface/entity/entity.js"; diff --git a/packages/ecs/src/perftest/suite.perf-browser-test.ts b/packages/ecs/src/perftest/suite.perf-browser-test.ts index 0d06f880e..a3ff5451a 100644 --- a/packages/ecs/src/perftest/suite.perf-browser-test.ts +++ b/packages/ecs/src/perftest/suite.perf-browser-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { it } from "vitest"; import { gpuDevice } from "../interface/resources/gpu-device.js"; import { createWorld } from "../implementation/world/create.js"; diff --git a/packages/ecs/src/perftest/suite.perf-test.ts b/packages/ecs/src/perftest/suite.perf-test.ts index ad8bb6d9a..4f0df466b 100644 --- a/packages/ecs/src/perftest/suite.perf-test.ts +++ b/packages/ecs/src/perftest/suite.perf-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { it } from "vitest"; import { benchmarks } from "./benchmarks.js"; import { report } from "./suite.js"; diff --git a/packages/ecs/src/perftest/suite.ts b/packages/ecs/src/perftest/suite.ts index cec2c7412..62f10769c 100644 --- a/packages/ecs/src/perftest/suite.ts +++ b/packages/ecs/src/perftest/suite.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype } from "../interface/archetype/archetype.js"; import { Component } from "../interface/component/component.js"; import { Resource } from "../interface/resource/resource.js"; diff --git a/packages/ecs/src/perftest/systems.ts b/packages/ecs/src/perftest/systems.ts index fbf4081a6..c32a515ca 100644 --- a/packages/ecs/src/perftest/systems.ts +++ b/packages/ecs/src/perftest/systems.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import { always } from "../interface/resources/always.js"; import { eachTick, ticksAfter } from "./observer.js"; diff --git a/packages/ecs/src/perftest/tails.ts b/packages/ecs/src/perftest/tails.ts index ff1373df0..c673a6795 100644 --- a/packages/ecs/src/perftest/tails.ts +++ b/packages/ecs/src/perftest/tails.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { Component } from "../interface/component/component.js"; import { Resource } from "../interface/resource/resource.js"; diff --git a/packages/ecs/src/perftest/transfers.ts b/packages/ecs/src/perftest/transfers.ts index 465746a8a..1abfc5c0c 100644 --- a/packages/ecs/src/perftest/transfers.ts +++ b/packages/ecs/src/perftest/transfers.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from "../interface/resource/resource.js"; import { workers } from "../interface/resources/workers.js"; import { System } from "../interface/system/system.js"; diff --git a/packages/ecs/src/perftest/uploads.ts b/packages/ecs/src/perftest/uploads.ts index c90bf9bba..4ed04278a 100644 --- a/packages/ecs/src/perftest/uploads.ts +++ b/packages/ecs/src/perftest/uploads.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component } from "../interface/component/component.js"; import { Entity } from "../interface/entity/entity.js"; import { gpuDevice } from "../interface/resources/gpu-device.js"; diff --git a/packages/ecs/src/perftest/values.ts b/packages/ecs/src/perftest/values.ts index fac938328..8555da417 100644 --- a/packages/ecs/src/perftest/values.ts +++ b/packages/ecs/src/perftest/values.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype } from "../interface/archetype/archetype.js"; import { Component } from "../interface/component/component.js"; import { Finalizer } from "../interface/finalizer/finalizer.js"; diff --git a/packages/ecs/src/perftest/wake.ts b/packages/ecs/src/perftest/wake.ts index e872aac6b..a6925bc30 100644 --- a/packages/ecs/src/perftest/wake.ts +++ b/packages/ecs/src/perftest/wake.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { createMemory } from "../implementation/world/memory.js"; import { createPool, type FastTask } from "../implementation/world/pool.js"; import { idleKernel } from "../implementation/world/protocol.js"; diff --git a/packages/ecs/src/samples/particles/build.test.ts b/packages/ecs/src/samples/particles/build.test.ts index 33138a80c..843c075b4 100644 --- a/packages/ecs/src/samples/particles/build.test.ts +++ b/packages/ecs/src/samples/particles/build.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { mkdtempSync, realpathSync, rmSync } from "node:fs"; import { tmpdir } from "node:os"; diff --git a/packages/ecs/src/samples/particles/gpu/main.ts b/packages/ecs/src/samples/particles/gpu/main.ts index 362d6c3e9..10638d046 100644 --- a/packages/ecs/src/samples/particles/gpu/main.ts +++ b/packages/ecs/src/samples/particles/gpu/main.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Gpu, System, World, gpuDevice } from '../../../index.js'; import { createDraw, enabled, move, moveOnCpu, position, spawn, visible } from './particles.js'; diff --git a/packages/ecs/src/samples/particles/gpu/particles.ts b/packages/ecs/src/samples/particles/gpu/particles.ts index 2345385fe..27f712357 100644 --- a/packages/ecs/src/samples/particles/gpu/particles.ts +++ b/packages/ecs/src/samples/particles/gpu/particles.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype, Component, Gpu, System, Vec3 } from '../../../index.js'; // The perf particles (src/perftest/particles.ts) on screen: 1M particles over four archetypes by visible and diff --git a/packages/ecs/src/samples/particles/particles.test.ts b/packages/ecs/src/samples/particles/particles.test.ts index bdcfc9e1e..e8e184995 100644 --- a/packages/ecs/src/samples/particles/particles.test.ts +++ b/packages/ecs/src/samples/particles/particles.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { System, World, workers } from "../../index.js"; import { count, frame } from "./particles.js"; diff --git a/packages/ecs/src/samples/particles/particles.ts b/packages/ecs/src/samples/particles/particles.ts index f6077519b..f927712ef 100644 --- a/packages/ecs/src/samples/particles/particles.ts +++ b/packages/ecs/src/samples/particles/particles.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, Resource, System, Vec3, type World } from '../../index.js'; export const position = Symbol("particles/position"); diff --git a/packages/ecs/src/samples/particles/particles.type-test.ts b/packages/ecs/src/samples/particles/particles.type-test.ts index 6eeb735b8..6b5bef1aa 100644 --- a/packages/ecs/src/samples/particles/particles.type-test.ts +++ b/packages/ecs/src/samples/particles/particles.type-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from '../../index.js'; import { count } from './particles.js'; diff --git a/packages/ecs/src/samples/todo/app/app.browser.test.ts b/packages/ecs/src/samples/todo/app/app.browser.test.ts index 1c14414b9..6c90e9f5e 100644 --- a/packages/ecs/src/samples/todo/app/app.browser.test.ts +++ b/packages/ecs/src/samples/todo/app/app.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, beforeEach, describe, expect, it } from "vitest"; import { System } from "../../../index.js"; import { todo } from "../features/todos/data.js"; diff --git a/packages/ecs/src/samples/todo/app/app.ts b/packages/ecs/src/samples/todo/app/app.ts index 7ee6a95e9..b71dcaa00 100644 --- a/packages/ecs/src/samples/todo/app/app.ts +++ b/packages/ecs/src/samples/todo/app/app.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { World, workers } from "../../../index.js"; import * as exported from "../features/index.js"; import { all } from "../shared/connect.js"; diff --git a/packages/ecs/src/samples/todo/app/log-failures.test.ts b/packages/ecs/src/samples/todo/app/log-failures.test.ts index 8fd8e608a..b5c658f71 100644 --- a/packages/ecs/src/samples/todo/app/log-failures.test.ts +++ b/packages/ecs/src/samples/todo/app/log-failures.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, expect, it, vi } from "vitest"; import { System, World, workers } from "../../../index.js"; import { logFailures } from "./log-failures.js"; diff --git a/packages/ecs/src/samples/todo/app/log-failures.ts b/packages/ecs/src/samples/todo/app/log-failures.ts index 988a8831c..0d2f899e4 100644 --- a/packages/ecs/src/samples/todo/app/log-failures.ts +++ b/packages/ecs/src/samples/todo/app/log-failures.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Report, System } from "../../../index.js"; /** Logs what reports say failed, a run's an event started and a tick's alike: each report's errors are written once. */ diff --git a/packages/ecs/src/samples/todo/app/main.ts b/packages/ecs/src/samples/todo/app/main.ts index 7d9db1263..c4059df2e 100644 --- a/packages/ecs/src/samples/todo/app/main.ts +++ b/packages/ecs/src/samples/todo/app/main.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { createApp } from "./app.js"; /** The todo sample's page: its markup holds the fixed elements, and the app's world drives them. */ diff --git a/packages/ecs/src/samples/todo/app/profile.perf-browser-test.ts b/packages/ecs/src/samples/todo/app/profile.perf-browser-test.ts index cd3e9fc3b..42a9d0b4d 100644 --- a/packages/ecs/src/samples/todo/app/profile.perf-browser-test.ts +++ b/packages/ecs/src/samples/todo/app/profile.perf-browser-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { it } from "vitest"; import { cdp } from "vitest/browser"; diff --git a/packages/ecs/src/samples/todo/app/proportional.browser.test.ts b/packages/ecs/src/samples/todo/app/proportional.browser.test.ts index 1434d35de..aae76e176 100644 --- a/packages/ecs/src/samples/todo/app/proportional.browser.test.ts +++ b/packages/ecs/src/samples/todo/app/proportional.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, expect, it } from "vitest"; import { Entity, type World } from "../../../index.js"; import { toggleAll } from "../features/completion/model.js"; diff --git a/packages/ecs/src/samples/todo/app/todo.perf-browser-test.ts b/packages/ecs/src/samples/todo/app/todo.perf-browser-test.ts index 5bdfcedcd..eaabf5b4c 100644 --- a/packages/ecs/src/samples/todo/app/todo.perf-browser-test.ts +++ b/packages/ecs/src/samples/todo/app/todo.perf-browser-test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { it } from "vitest"; import { Entity, Report, System, workers, World } from "../../../index.js"; import { toggleAll } from "../features/completion/model.js"; diff --git a/packages/ecs/src/samples/todo/build.test.ts b/packages/ecs/src/samples/todo/build.test.ts index 5f6d98708..c5dbfa932 100644 --- a/packages/ecs/src/samples/todo/build.test.ts +++ b/packages/ecs/src/samples/todo/build.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { mkdtempSync, readFileSync, realpathSync, rmSync } from "node:fs"; import { tmpdir } from "node:os"; diff --git a/packages/ecs/src/samples/todo/features/completion/data.ts b/packages/ecs/src/samples/todo/features/completion/data.ts index 891819f09..e39abcb6c 100644 --- a/packages/ecs/src/samples/todo/features/completion/data.ts +++ b/packages/ecs/src/samples/todo/features/completion/data.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Index } from "../../../../index.js"; import { done, todo } from "../todos/data.js"; diff --git a/packages/ecs/src/samples/todo/features/completion/dom.browser.test.ts b/packages/ecs/src/samples/todo/features/completion/dom.browser.test.ts index 512940be4..89616bb8e 100644 --- a/packages/ecs/src/samples/todo/features/completion/dom.browser.test.ts +++ b/packages/ecs/src/samples/todo/features/completion/dom.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, expect, it } from "vitest"; import { Entity, workers, World } from "../../../../index.js"; import { entityOfElement } from "../../shared/attach.js"; diff --git a/packages/ecs/src/samples/todo/features/completion/dom.ts b/packages/ecs/src/samples/todo/features/completion/dom.ts index 63faa2736..d7cef8b2c 100644 --- a/packages/ecs/src/samples/todo/features/completion/dom.ts +++ b/packages/ecs/src/samples/todo/features/completion/dom.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource, System } from "../../../../index.js"; import { byDone } from "./data.js"; import { TodoSummary } from "./elements/todo-summary.js"; diff --git a/packages/ecs/src/samples/todo/features/completion/elements/elements.browser.test.ts b/packages/ecs/src/samples/todo/features/completion/elements/elements.browser.test.ts index d0cae34f5..8e243c72e 100644 --- a/packages/ecs/src/samples/todo/features/completion/elements/elements.browser.test.ts +++ b/packages/ecs/src/samples/todo/features/completion/elements/elements.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it } from "vitest"; import { part, record } from "../../../shared/elements/elements.test-helper.js"; import { TodoSummary } from "./todo-summary.js"; diff --git a/packages/ecs/src/samples/todo/features/completion/elements/todo-summary.ts b/packages/ecs/src/samples/todo/features/completion/elements/todo-summary.ts index f492b1d08..91d881000 100644 --- a/packages/ecs/src/samples/todo/features/completion/elements/todo-summary.ts +++ b/packages/ecs/src/samples/todo/features/completion/elements/todo-summary.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * ``: how many todos are left, and the button that clears those done, shown only while some are. * Properties `remaining` and `completed` drive it; `empty`, reflected as an attribute, is set while both are 0. The diff --git a/packages/ecs/src/samples/todo/features/completion/elements/todo-toggle-all.ts b/packages/ecs/src/samples/todo/features/completion/elements/todo-toggle-all.ts index 0d38bf4d5..d571b587c 100644 --- a/packages/ecs/src/samples/todo/features/completion/elements/todo-toggle-all.ts +++ b/packages/ecs/src/samples/todo/features/completion/elements/todo-toggle-all.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * ``: the checkbox that marks every todo done, or none. Property `checked` is whether all are done, * and `empty`, reflected as an attribute, hides it while there are none. A click dispatches `todo-toggle-all` with diff --git a/packages/ecs/src/samples/todo/features/completion/events.ts b/packages/ecs/src/samples/todo/features/completion/events.ts index 3207398fa..5973f54de 100644 --- a/packages/ecs/src/samples/todo/features/completion/events.ts +++ b/packages/ecs/src/samples/todo/features/completion/events.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { all, on, type Connect } from "../../shared/connect.js"; import { clearCompleted, toggleAll } from "./model.js"; diff --git a/packages/ecs/src/samples/todo/features/completion/feature.ts b/packages/ecs/src/samples/todo/features/completion/feature.ts index 1bf808f2b..cfd2ea2df 100644 --- a/packages/ecs/src/samples/todo/features/completion/feature.ts +++ b/packages/ecs/src/samples/todo/features/completion/feature.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Feature } from "../../shared/feature.js"; import { dom, summary, toggleAllBox } from "./dom.js"; import { TodoSummary } from "./elements/todo-summary.js"; diff --git a/packages/ecs/src/samples/todo/features/completion/model.test.ts b/packages/ecs/src/samples/todo/features/completion/model.test.ts index ed57ca1b4..f7392c62c 100644 --- a/packages/ecs/src/samples/todo/features/completion/model.test.ts +++ b/packages/ecs/src/samples/todo/features/completion/model.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { System } from "../../../../index.js"; import { toggleTodo } from "../todos/model.js"; diff --git a/packages/ecs/src/samples/todo/features/completion/model.ts b/packages/ecs/src/samples/todo/features/completion/model.ts index 5bbc5cbf9..68299fbcd 100644 --- a/packages/ecs/src/samples/todo/features/completion/model.ts +++ b/packages/ecs/src/samples/todo/features/completion/model.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { System } from "../../../../index.js"; import { done, todo } from "../todos/data.js"; import { byDone } from "./data.js"; diff --git a/packages/ecs/src/samples/todo/features/filter/data.ts b/packages/ecs/src/samples/todo/features/filter/data.ts index 0b6931425..e03a20631 100644 --- a/packages/ecs/src/samples/todo/features/filter/data.ts +++ b/packages/ecs/src/samples/todo/features/filter/data.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource } from "../../../../index.js"; export type Filter = "all" | "active" | "completed"; diff --git a/packages/ecs/src/samples/todo/features/filter/dom.browser.test.ts b/packages/ecs/src/samples/todo/features/filter/dom.browser.test.ts index 8641c411f..d45f5eb7c 100644 --- a/packages/ecs/src/samples/todo/features/filter/dom.browser.test.ts +++ b/packages/ecs/src/samples/todo/features/filter/dom.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, expect, it } from "vitest"; import { Entity, workers, World } from "../../../../index.js"; import { entityOfElement } from "../../shared/attach.js"; diff --git a/packages/ecs/src/samples/todo/features/filter/dom.ts b/packages/ecs/src/samples/todo/features/filter/dom.ts index bbc9def1b..c4a0817e0 100644 --- a/packages/ecs/src/samples/todo/features/filter/dom.ts +++ b/packages/ecs/src/samples/todo/features/filter/dom.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Resource, System } from "../../../../index.js"; import { done } from "../todos/data.js"; import { row } from "../todos/dom.js"; diff --git a/packages/ecs/src/samples/todo/features/filter/elements/elements.browser.test.ts b/packages/ecs/src/samples/todo/features/filter/elements/elements.browser.test.ts index f18137bc7..60a6e9679 100644 --- a/packages/ecs/src/samples/todo/features/filter/elements/elements.browser.test.ts +++ b/packages/ecs/src/samples/todo/features/filter/elements/elements.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it } from "vitest"; import { mutationsOf, part, record } from "../../../shared/elements/elements.test-helper.js"; import { TodoFilters } from "./todo-filters.js"; diff --git a/packages/ecs/src/samples/todo/features/filter/elements/todo-filters.ts b/packages/ecs/src/samples/todo/features/filter/elements/todo-filters.ts index 7b2a4c477..0322ca02b 100644 --- a/packages/ecs/src/samples/todo/features/filter/elements/todo-filters.ts +++ b/packages/ecs/src/samples/todo/features/filter/elements/todo-filters.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * ``: the choice of which todos to show. Its `filter` property marks the chosen button; a click * dispatches `todo-filter` with the button's filter, and the owner writes `filter` back. diff --git a/packages/ecs/src/samples/todo/features/filter/events.ts b/packages/ecs/src/samples/todo/features/filter/events.ts index b0b84cb98..bc9356fa8 100644 --- a/packages/ecs/src/samples/todo/features/filter/events.ts +++ b/packages/ecs/src/samples/todo/features/filter/events.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { on, type Connect } from "../../shared/connect.js"; import { setFilter } from "./model.js"; diff --git a/packages/ecs/src/samples/todo/features/filter/feature.ts b/packages/ecs/src/samples/todo/features/filter/feature.ts index 84a69b1c7..9bb9fdef0 100644 --- a/packages/ecs/src/samples/todo/features/filter/feature.ts +++ b/packages/ecs/src/samples/todo/features/filter/feature.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Feature } from "../../shared/feature.js"; import { dom, filters } from "./dom.js"; import { TodoFilters } from "./elements/todo-filters.js"; diff --git a/packages/ecs/src/samples/todo/features/filter/model.test.ts b/packages/ecs/src/samples/todo/features/filter/model.test.ts index 375cfdb77..2eb763bad 100644 --- a/packages/ecs/src/samples/todo/features/filter/model.test.ts +++ b/packages/ecs/src/samples/todo/features/filter/model.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { System, workers, World } from "../../../../index.js"; import { filter, type Filter } from "./data.js"; diff --git a/packages/ecs/src/samples/todo/features/filter/model.ts b/packages/ecs/src/samples/todo/features/filter/model.ts index 10c1d1d42..0c3305b0c 100644 --- a/packages/ecs/src/samples/todo/features/filter/model.ts +++ b/packages/ecs/src/samples/todo/features/filter/model.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { System } from "../../../../index.js"; import { filter, filterSchema } from "./data.js"; diff --git a/packages/ecs/src/samples/todo/features/generate/elements/elements.browser.test.ts b/packages/ecs/src/samples/todo/features/generate/elements/elements.browser.test.ts index 79398cf3c..b320da284 100644 --- a/packages/ecs/src/samples/todo/features/generate/elements/elements.browser.test.ts +++ b/packages/ecs/src/samples/todo/features/generate/elements/elements.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { part, record } from "../../../shared/elements/elements.test-helper.js"; import { TodoGenerate } from "./todo-generate.js"; diff --git a/packages/ecs/src/samples/todo/features/generate/elements/todo-generate.ts b/packages/ecs/src/samples/todo/features/generate/elements/todo-generate.ts index 768176fe4..963bb7707 100644 --- a/packages/ecs/src/samples/todo/features/generate/elements/todo-generate.ts +++ b/packages/ecs/src/samples/todo/features/generate/elements/todo-generate.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** ``: buttons that ask for generated todos, each dispatching `todo-generate` with its count. */ const counts = [10, 1000]; diff --git a/packages/ecs/src/samples/todo/features/generate/events.ts b/packages/ecs/src/samples/todo/features/generate/events.ts index c6b7bf7c0..042d11c28 100644 --- a/packages/ecs/src/samples/todo/features/generate/events.ts +++ b/packages/ecs/src/samples/todo/features/generate/events.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { on, type Connect } from "../../shared/connect.js"; import { addGenerated } from "./model.js"; diff --git a/packages/ecs/src/samples/todo/features/generate/feature.ts b/packages/ecs/src/samples/todo/features/generate/feature.ts index dba166169..476936415 100644 --- a/packages/ecs/src/samples/todo/features/generate/feature.ts +++ b/packages/ecs/src/samples/todo/features/generate/feature.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Feature } from "../../shared/feature.js"; import { TodoGenerate } from "./elements/todo-generate.js"; import { connect } from "./events.js"; diff --git a/packages/ecs/src/samples/todo/features/generate/model.test.ts b/packages/ecs/src/samples/todo/features/generate/model.test.ts index 66863493d..496cb9923 100644 --- a/packages/ecs/src/samples/todo/features/generate/model.test.ts +++ b/packages/ecs/src/samples/todo/features/generate/model.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { expect, it } from "vitest"; import { labelsOf, todosOf, withTodos } from "../todos/todos.test-helper.js"; import { addGenerated, generatedLabel } from "./model.js"; diff --git a/packages/ecs/src/samples/todo/features/generate/model.ts b/packages/ecs/src/samples/todo/features/generate/model.ts index a589c8110..d0ef7b1eb 100644 --- a/packages/ecs/src/samples/todo/features/generate/model.ts +++ b/packages/ecs/src/samples/todo/features/generate/model.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { System } from "../../../../index.js"; import { Todo, done, label, order, orderAfter, ordered } from "../todos/data.js"; diff --git a/packages/ecs/src/samples/todo/features/index.ts b/packages/ecs/src/samples/todo/features/index.ts index 9f7b4c6c9..35e8a7d40 100644 --- a/packages/ecs/src/samples/todo/features/index.ts +++ b/packages/ecs/src/samples/todo/features/index.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. export { completion } from "./completion/feature.js"; export { filter } from "./filter/feature.js"; export { generate } from "./generate/feature.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/data.ts b/packages/ecs/src/samples/todo/features/todos/data.ts index a5c574f3c..8a59ecc61 100644 --- a/packages/ecs/src/samples/todo/features/todos/data.ts +++ b/packages/ecs/src/samples/todo/features/todos/data.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Archetype, Component, Index } from "../../../../index.js"; /** A todo's text. */ diff --git a/packages/ecs/src/samples/todo/features/todos/dom.browser.test.ts b/packages/ecs/src/samples/todo/features/todos/dom.browser.test.ts index 952fd6819..3e7770db2 100644 --- a/packages/ecs/src/samples/todo/features/todos/dom.browser.test.ts +++ b/packages/ecs/src/samples/todo/features/todos/dom.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it } from "vitest"; import { Entity, System, workers, World } from "../../../../index.js"; import { entityOfElement } from "../../shared/attach.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/dom.ts b/packages/ecs/src/samples/todo/features/todos/dom.ts index 6b5d1ebb0..f240eb22e 100644 --- a/packages/ecs/src/samples/todo/features/todos/dom.ts +++ b/packages/ecs/src/samples/todo/features/todos/dom.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, Finalizer, Index, Resource, System } from "../../../../index.js"; import { attach } from "../../shared/attach.js"; import { done, label, order, todo } from "./data.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/elements/elements.browser.test.ts b/packages/ecs/src/samples/todo/features/todos/elements/elements.browser.test.ts index e1bba9fe9..fcf27d655 100644 --- a/packages/ecs/src/samples/todo/features/todos/elements/elements.browser.test.ts +++ b/packages/ecs/src/samples/todo/features/todos/elements/elements.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it } from "vitest"; import { mutationsOf, part, record } from "../../../shared/elements/elements.test-helper.js"; import { TodoEntry } from "./todo-entry.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/elements/todo-entry.ts b/packages/ecs/src/samples/todo/features/todos/elements/todo-entry.ts index 646eb86fc..da47bc2a3 100644 --- a/packages/ecs/src/samples/todo/features/todos/elements/todo-entry.ts +++ b/packages/ecs/src/samples/todo/features/todos/elements/todo-entry.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * ``: the field a new todo is typed into. Enter dispatches `todo-add` with the text and clears the field, * unless it holds only whitespace; Escape clears it. The draft is its own state. diff --git a/packages/ecs/src/samples/todo/features/todos/elements/todo-list.ts b/packages/ecs/src/samples/todo/features/todos/elements/todo-list.ts index 3edf9adab..c7a9b67ca 100644 --- a/packages/ecs/src/samples/todo/features/todos/elements/todo-list.ts +++ b/packages/ecs/src/samples/todo/features/todos/elements/todo-list.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * ``: holds rows as its children, in the order they're placed. Dragging a child onto another, or * Alt+ArrowUp and Alt+ArrowDown on a focused child, dispatches `todo-move` with the child and the one it should go diff --git a/packages/ecs/src/samples/todo/features/todos/elements/todo-row.ts b/packages/ecs/src/samples/todo/features/todos/elements/todo-row.ts index d87ce9ed6..904e2cf9c 100644 --- a/packages/ecs/src/samples/todo/features/todos/elements/todo-row.ts +++ b/packages/ecs/src/samples/todo/features/todos/elements/todo-row.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** * ``: one todo. Properties `label` and `done` drive it, and `done` is reflected as an attribute for styling; * `hidden` hides it, as it does any element. It dispatches `todo-toggle`, `todo-delete` and `todo-edit`, and never diff --git a/packages/ecs/src/samples/todo/features/todos/events.ts b/packages/ecs/src/samples/todo/features/todos/events.ts index 7db484f0d..87f619336 100644 --- a/packages/ecs/src/samples/todo/features/todos/events.ts +++ b/packages/ecs/src/samples/todo/features/todos/events.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { entityOf, entityOfElement } from "../../shared/attach.js"; import { all, on, type Connect } from "../../shared/connect.js"; import { addTodo, deleteTodo, editTodo, moveTodo, toggleTodo } from "./model.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/feature.ts b/packages/ecs/src/samples/todo/features/todos/feature.ts index 3579d61d4..2d0cf9a08 100644 --- a/packages/ecs/src/samples/todo/features/todos/feature.ts +++ b/packages/ecs/src/samples/todo/features/todos/feature.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { Feature } from "../../shared/feature.js"; import { dom, list } from "./dom.js"; import { TodoEntry } from "./elements/todo-entry.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/model.test.ts b/packages/ecs/src/samples/todo/features/todos/model.test.ts index 671b3ed86..aec04ca97 100644 --- a/packages/ecs/src/samples/todo/features/todos/model.test.ts +++ b/packages/ecs/src/samples/todo/features/todos/model.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Entity } from "../../../../index.js"; import { addTodo, deleteTodo, editTodo, moveTodo, toggleTodo } from "./model.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/model.ts b/packages/ecs/src/samples/todo/features/todos/model.ts index 0dfb441be..df8ef70ce 100644 --- a/packages/ecs/src/samples/todo/features/todos/model.ts +++ b/packages/ecs/src/samples/todo/features/todos/model.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Entity, System } from "../../../../index.js"; import { Todo, done, label, order, orderAfter, ordered, todo } from "./data.js"; diff --git a/packages/ecs/src/samples/todo/features/todos/todos.test-helper.ts b/packages/ecs/src/samples/todo/features/todos/todos.test-helper.ts index 450a71847..a4d9bc25c 100644 --- a/packages/ecs/src/samples/todo/features/todos/todos.test-helper.ts +++ b/packages/ecs/src/samples/todo/features/todos/todos.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Entity, System, workers, World } from "../../../../index.js"; import { done, label, order, ordered } from "./data.js"; import { addTodo } from "./model.js"; diff --git a/packages/ecs/src/samples/todo/imports.test.ts b/packages/ecs/src/samples/todo/imports.test.ts index c38863e1c..b9798bda6 100644 --- a/packages/ecs/src/samples/todo/imports.test.ts +++ b/packages/ecs/src/samples/todo/imports.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { readdirSync, readFileSync } from "node:fs"; import { dirname, join, relative, resolve, sep } from "node:path"; import { fileURLToPath } from "node:url"; diff --git a/packages/ecs/src/samples/todo/shared/attach.browser.test.ts b/packages/ecs/src/samples/todo/shared/attach.browser.test.ts index d7caf033b..3cbf2f5de 100644 --- a/packages/ecs/src/samples/todo/shared/attach.browser.test.ts +++ b/packages/ecs/src/samples/todo/shared/attach.browser.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { afterEach, describe, expect, it } from "vitest"; import { Entity, System, workers, World } from "../../../index.js"; import { attach, entityOf, entityOfElement } from "./attach.js"; diff --git a/packages/ecs/src/samples/todo/shared/attach.ts b/packages/ecs/src/samples/todo/shared/attach.ts index 6c926e6e2..968d3c286 100644 --- a/packages/ecs/src/samples/todo/shared/attach.ts +++ b/packages/ecs/src/samples/todo/shared/attach.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Entity } from "../../../index.js"; /** The key an element holds the entity it shows under: only `attach` writes it. */ diff --git a/packages/ecs/src/samples/todo/shared/connect.ts b/packages/ecs/src/samples/todo/shared/connect.ts index 4e7516bfa..ffc26db71 100644 --- a/packages/ecs/src/samples/todo/shared/connect.ts +++ b/packages/ecs/src/samples/todo/shared/connect.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { World } from "../../../index.js"; /** Stops what `connect` started. */ diff --git a/packages/ecs/src/samples/todo/shared/elements/define.ts b/packages/ecs/src/samples/todo/shared/elements/define.ts index 55561f651..882954c69 100644 --- a/packages/ecs/src/samples/todo/shared/elements/define.ts +++ b/packages/ecs/src/samples/todo/shared/elements/define.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** Elements by their tag names, as a feature lists those it creates or finds on the page. */ export type Elements = { readonly [name: string]: CustomElementConstructor }; diff --git a/packages/ecs/src/samples/todo/shared/elements/elements.test-helper.ts b/packages/ecs/src/samples/todo/shared/elements/elements.test-helper.ts index e24621d55..923b10486 100644 --- a/packages/ecs/src/samples/todo/shared/elements/elements.test-helper.ts +++ b/packages/ecs/src/samples/todo/shared/elements/elements.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /** What tests of elements share: no world, only the DOM. */ export type Recorded = { readonly type: string; readonly detail: unknown; readonly target: EventTarget | null }; diff --git a/packages/ecs/src/samples/todo/shared/feature.ts b/packages/ecs/src/samples/todo/shared/feature.ts index 7709c28d3..ede764660 100644 --- a/packages/ecs/src/samples/todo/shared/feature.ts +++ b/packages/ecs/src/samples/todo/shared/feature.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import type { System, World } from "../../../index.js"; import type { Connect } from "./connect.js"; import type { Elements } from "./elements/define.js"; diff --git a/packages/ecs/src/samples/todo/shared/ticks.test-helper.ts b/packages/ecs/src/samples/todo/shared/ticks.test-helper.ts index be000d5bc..f155b7966 100644 --- a/packages/ecs/src/samples/todo/shared/ticks.test-helper.ts +++ b/packages/ecs/src/samples/todo/shared/ticks.test-helper.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { System, clock, type World } from "../../../index.js"; const waiting: (() => void)[] = []; diff --git a/packages/ecs/src/samples/transfers/build.test.ts b/packages/ecs/src/samples/transfers/build.test.ts index 58dd2899f..739150ac7 100644 --- a/packages/ecs/src/samples/transfers/build.test.ts +++ b/packages/ecs/src/samples/transfers/build.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. /// import { mkdtempSync, realpathSync, rmSync } from "node:fs"; import { tmpdir } from "node:os"; diff --git a/packages/ecs/src/samples/transfers/loader.ts b/packages/ecs/src/samples/transfers/loader.ts index 8b2d79b3d..a867f7bf7 100644 --- a/packages/ecs/src/samples/transfers/loader.ts +++ b/packages/ecs/src/samples/transfers/loader.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { World } from '../../index.js'; import { addSprite } from './sprites.js'; diff --git a/packages/ecs/src/samples/transfers/main.ts b/packages/ecs/src/samples/transfers/main.ts index b4960009a..d88ef229e 100644 --- a/packages/ecs/src/samples/transfers/main.ts +++ b/packages/ecs/src/samples/transfers/main.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { System, World } from '../../index.js'; import { attachSurface, stats } from './sprites.js'; diff --git a/packages/ecs/src/samples/transfers/sprites.ts b/packages/ecs/src/samples/transfers/sprites.ts index fc5636010..33e5f479a 100644 --- a/packages/ecs/src/samples/transfers/sprites.ts +++ b/packages/ecs/src/samples/transfers/sprites.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { Component, Resource, System, Vec2, clock } from '../../index.js'; // The transfers sample's keys and systems, which every thread imports: the world, on a worker, draws sprites into the diff --git a/packages/ecs/src/samples/transfers/world.ts b/packages/ecs/src/samples/transfers/world.ts index 6fc978d16..200b2a7e5 100644 --- a/packages/ecs/src/samples/transfers/world.ts +++ b/packages/ecs/src/samples/transfers/world.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { World, always } from '../../index.js'; import { frame } from './sprites.js'; diff --git a/packages/ecs/src/world.test.ts b/packages/ecs/src/world.test.ts index b4d1a1966..ddece40fc 100644 --- a/packages/ecs/src/world.test.ts +++ b/packages/ecs/src/world.test.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { describe, expect, it } from "vitest"; import { Component, Resource, System, World, workers } from "./index.js"; diff --git a/packages/ecs/vite.perf.config.ts b/packages/ecs/vite.perf.config.ts index b374a91ab..414ff150b 100644 --- a/packages/ecs/vite.perf.config.ts +++ b/packages/ecs/vite.perf.config.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { defineConfig } from "vite"; import { kernelPlugin } from "./src/implementation/compiler/index.ts"; diff --git a/packages/ecs/vite.sample.config.ts b/packages/ecs/vite.sample.config.ts index 5c9ab8791..6610e6751 100644 --- a/packages/ecs/vite.sample.config.ts +++ b/packages/ecs/vite.sample.config.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { defineConfig } from "vite"; import { kernelPlugin } from "./src/implementation/compiler/index.ts"; import { isolation, sources } from "./vitest.plugins.ts"; diff --git a/packages/ecs/vitest.config.ts b/packages/ecs/vitest.config.ts index 0eff7606e..1f9748369 100644 --- a/packages/ecs/vitest.config.ts +++ b/packages/ecs/vitest.config.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { playwright } from "@vitest/browser-playwright"; import { defineConfig } from "vitest/config"; import { kernelPlugin } from "./src/implementation/compiler/index.ts"; diff --git a/packages/ecs/vitest.fixtures.ts b/packages/ecs/vitest.fixtures.ts index 5ea2af654..ebec940af 100644 --- a/packages/ecs/vitest.fixtures.ts +++ b/packages/ecs/vitest.fixtures.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { mkdirSync, mkdtempSync, readdirSync, rmSync } from "node:fs"; import { basename, dirname, join, relative, resolve } from "node:path"; import { fileURLToPath } from "node:url"; diff --git a/packages/ecs/vitest.perf.config.ts b/packages/ecs/vitest.perf.config.ts index 39af95d44..261054f1b 100644 --- a/packages/ecs/vitest.perf.config.ts +++ b/packages/ecs/vitest.perf.config.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { playwright } from "@vitest/browser-playwright"; import { defineConfig } from "vitest/config"; import { kernelPlugin } from "./src/implementation/compiler/index.ts"; diff --git a/packages/ecs/vitest.plugins.ts b/packages/ecs/vitest.plugins.ts index e06d39fc8..c790a4f70 100644 --- a/packages/ecs/vitest.plugins.ts +++ b/packages/ecs/vitest.plugins.ts @@ -1,3 +1,4 @@ +// © 2026 Adobe. MIT License. See /LICENSE for details. import { existsSync } from "node:fs"; import { dirname, resolve } from "node:path"; import { fileURLToPath } from "node:url"; From 7cdb3893fac8d6d33fc8a5607f665b2eeb6137ee Mon Sep 17 00:00:00 2001 From: Kris Nye Date: Wed, 21 Oct 2026 22:58:40 -0700 Subject: [PATCH 2/4] ecs: a README naming the package and linking to its guide Co-Authored-By: Claude Opus 5.5 --- packages/ecs/README.md | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 packages/ecs/README.md diff --git a/packages/ecs/README.md b/packages/ecs/README.md new file mode 100644 index 000000000..d052e4c22 --- /dev/null +++ b/packages/ecs/README.md @@ -0,0 +1,6 @@ +# @adobe/ecs + +A data-oriented entity component system. Systems run on the main thread, on worker threads, as WASM kernels or on the GPU. + +See the [guide](https://github.com/adobe/data/blob/main/packages/ecs/src/guide/guide.md) for how to use it. The +package ships its sources, so the guide is also at `src/guide/guide.md`. From bfdcb8073ec4ef7753c20847362c4b110fac74b1 Mon Sep 17 00:00:00 2001 From: Kris Nye Date: Wed, 21 Oct 2026 23:03:20 -0700 Subject: [PATCH 3/4] ecs: the README links to the guide the package ships, relative to it Co-Authored-By: Claude Opus 5.5 --- packages/ecs/README.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/ecs/README.md b/packages/ecs/README.md index d052e4c22..619a1ed35 100644 --- a/packages/ecs/README.md +++ b/packages/ecs/README.md @@ -2,5 +2,4 @@ A data-oriented entity component system. Systems run on the main thread, on worker threads, as WASM kernels or on the GPU. -See the [guide](https://github.com/adobe/data/blob/main/packages/ecs/src/guide/guide.md) for how to use it. The -package ships its sources, so the guide is also at `src/guide/guide.md`. +See the [guide](src/guide/guide.md) for how to use it. From 670e0565fc18e40b1f40f3355b90c2b37af15d32 Mon Sep 17 00:00:00 2001 From: Kris Nye Date: Wed, 21 Oct 2026 23:07:59 -0700 Subject: [PATCH 4/4] ecs: the workspace conventions check requires every publishable package to hold a LICENSE identical to the monorepo's, which npm always packs; all eleven do, and a changed copy fails the check Co-Authored-By: Claude Opus 5.5 --- scripts/check-workspace-conventions.mjs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/scripts/check-workspace-conventions.mjs b/scripts/check-workspace-conventions.mjs index a2a215926..4c0898a76 100644 --- a/scripts/check-workspace-conventions.mjs +++ b/scripts/check-workspace-conventions.mjs @@ -13,6 +13,9 @@ // 2. Publishing is governed solely by `private` + `pnpm -r publish`. A // per-package `publish-public` script would reintroduce identity-specific // publish logic, so it is forbidden. +// 3. Every publishable package (private: false) holds a LICENSE identical to +// the monorepo's, which npm always packs, so each published package carries +// the license its source headers point to. // 3. In a feature-layered package, no runtime file imports the test tier: a // feature's `spec/` or `ecs/conformance/`, `@adobe/data-testing`, or `vitest`. // TS project references enforce this for data/services/ecs; this covers the @@ -25,6 +28,8 @@ import { dirname, join, relative, resolve } from "node:path"; const root = join(dirname(fileURLToPath(import.meta.url)), ".."); const packagesDir = join(root, "packages"); +const license = readFileSync(join(root, "LICENSE"), "utf8"); + const errors = []; for (const name of readdirSync(packagesDir)) { let pkg; @@ -36,6 +41,17 @@ for (const name of readdirSync(packagesDir)) { if (typeof pkg.private !== "boolean") { errors.push(`${name}: must set "private": true or false explicitly (absent must not mean publishable)`); } + if (pkg.private === false) { + let own = null; + try { + own = readFileSync(join(packagesDir, name, "LICENSE"), "utf8"); + } catch { + // checked below + } + if (own !== license) { + errors.push(`${name}: publishable packages hold a LICENSE identical to the monorepo's (copy ../../LICENSE)`); + } + } if (pkg.scripts?.["publish-public"]) { errors.push(`${name}: remove the "publish-public" script — publishing is governed by the "private" field and \`pnpm -r publish\``); }