diff --git a/packages/ecs/README.md b/packages/ecs/README.md new file mode 100644 index 00000000..619a1ed3 --- /dev/null +++ b/packages/ecs/README.md @@ -0,0 +1,5 @@ +# @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](src/guide/guide.md) for how to use it. diff --git a/packages/ecs/package.json b/packages/ecs/package.json index bd8b4dd5..8c605e03 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 f66ba27b..8e8e527f 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 0e75a3b9..161675a2 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 62938ee0..8e19e05b 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 2c96836c..55148ebd 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 232c17ac..dbc7e81b 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 6aa9cd1b..21e84f4f 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 31b7582c..e91f2103 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 45dbeb2e..e27a8156 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 52c7df14..457ba502 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 d1bcf8ef..7b78cf13 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 b7542548..1f4d0ed2 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 1858fc47..7aae82c3 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 7ba9f8e6..ac41a53f 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 72123c11..609ef53d 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 f30ef85e..dbc539f1 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 ec098519..4554c0e3 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 7a59424a..6ae9f6b8 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 7cc08946..0b92863b 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 5960c4d2..88b64480 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 95c54572..70b5e2a4 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 3f50eb50..6e8db3d1 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 2995d924..cf68fe7d 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 dca73fe7..9f56085d 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 702905a9..e9b259bc 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 bd4c651c..96637b0a 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 9756468e..6cfe3dea 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 cb9ab96b..51d22f6c 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 a6005bb6..8d449146 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 0e30a622..fc3852a7 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 aa7cedfd..9f80b9d3 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 efe586ae..3a98f1c4 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 a3d7bc20..ef71e9db 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 0ee34f1f..a2e20589 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 e24de3c1..ce6096c0 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 ad1c8afd..f7444e69 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 d016e63d..48820782 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 929f9180..f5260fe1 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 78a761b8..0de2fd04 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 fb2239b4..f605c275 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 77d86204..19e8f173 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 b3e65ea7..625773b7 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 59f69958..413b6190 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 0c976a1d..8a25f5c6 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 7ded4875..58d03221 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 8bdfd179..afa9ce46 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 29890a7a..4dddc4af 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 fa08a1dc..9dea11dc 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 0dc533c0..928f760b 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 9fe87012..2201e6ba 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 df94de39..790af996 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 fd214f00..09445848 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 3da2e978..b9add2f4 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 29c9a1f4..c2bf0ac1 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 4c2fa5a2..7dbcf071 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 5a80927e..89fc66e3 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 008e941a..11a09750 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 1598d812..0466818b 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 69866261..a6615a7b 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 d1c2fa78..5db1c3cb 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 26bbe53f..25cda912 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 a0dbde69..57e7dfa3 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 d4e23eab..bd257aca 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 3fdc5c74..1bb93bb9 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 c14315a7..71ef3575 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 c5d2c125..fa35897b 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 588d8a0c..45c13f51 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 e04753d4..bc923c83 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 0452a387..1af69b6d 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 f8d62db7..fce04396 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 b91d090d..57193994 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 106012a2..7236d81a 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 8a214b05..5414fc55 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 da5f7f0a..1cd86615 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 027815aa..58fb30f4 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 077c0525..fed392c9 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 41eeed38..946bfdf4 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 2cf824d5..6909271a 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 cc7b92dd..1be07911 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 69a68e13..9d61bed7 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 569b2d9d..b3c04aa2 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 1bae5a80..38e974cb 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 9f339960..443b0b95 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 f55a5358..d5cb649b 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 68208a26..ed469262 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 8d9347a0..7c325d4f 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 ff33a688..5b33af69 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 f119ce5c..1bc393d4 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 05e7e179..2fdfdb17 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 d0a27afb..a6620763 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 96994017..ee9fc2ee 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 1873c819..c41b86b0 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 dc3a2cc7..baeaccc4 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 ecca9e0f..113efae0 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 0fd594a9..486bc158 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 a1cb8fc9..9d5272d2 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 938b9eb0..e1c2d620 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 2311769b..5fa10513 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 2c83ca31..ec892fd7 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 25de6371..867efe71 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 824decff..cd41683e 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 3dfa717a..4b81b6d7 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 79cc15c0..e380da8f 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 fe6ecdb0..e2da4b0a 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 36699bf4..c7b6932e 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 29873be5..0bbcf394 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 0408780d..0c4d09da 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 3d303942..e5b700bd 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 9e8a5b49..59e63052 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 90f041e1..556683ef 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 bc575fe7..6b748274 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 b20a2d3b..fbcd13cb 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 fc5530a5..01fbbaa8 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 4e819af6..74e0025c 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 0be2fb10..8050b1c8 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 5592d753..8610134a 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 41309e24..6092ba39 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 a79e0d19..e5f746da 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 202067d6..003233c6 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 3c5b7bf7..0b74d939 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 6ebbb814..8340898c 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 50ea59f3..b0b55d36 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 fbd257d7..60bb57e1 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 28cae065..53cb5a70 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 f09fa6eb..fa71c8a7 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 f75c136f..9fc870ed 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 184d2a5f..a28b9a40 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 cb4666af..2ca976e1 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 6768e91b..23df92ec 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 b9876726..e52d9f6c 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 d61a1216..0ad1aad5 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 1cadaeac..7426ab54 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 6c82abc8..6cfee390 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 fb311d75..801f401d 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 d8c962b8..8eb066e9 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 c2bf1411..3638409c 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 2fc6cc5a..df866c16 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 0771ce07..67b65ac5 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 c5117de7..0f8da36b 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 dff0f0e3..e35812ef 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 c7e0cf2f..e1ed3e4f 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 cd0b95f8..86250b91 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 249a7573..49e39d8b 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 e3c2c273..f94ba253 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 a3848944..577213fc 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 d78ba786..9ef3e75d 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 bdf9ede0..6bb07fd1 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 50c280ba..99b83e63 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 a6e7d026..6f5c9f0f 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 9421ee64..a29fb4b3 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 f0598355..1bf39927 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 f469850a..f7b5f879 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 612a050f..b7165918 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 82df016c..d8dcc455 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 289ce0bf..f34109b8 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 a258390a..40a8876a 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 64d423dd..cecea482 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 992f370a..e3bb8b3f 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 52b19897..2aa23f9e 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 1c08d64f..5d795d82 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 abddaf9d..7b5a56bb 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 a760b438..b415c4b5 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 5390c716..9dc793c0 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 bde64330..452baebe 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 eb48225f..a1fbd2fe 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 a3ac7cf8..47a53f2c 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 86c89887..6e128003 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 d7b1bcd4..53aae275 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 d6100a42..76d12135 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 b42be303..e505d447 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 5c68e98b..4f672b86 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 949ea320..e6d1fd9e 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 7f8efa28..e078cc02 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 ccea7f0a..7e1ea679 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 53af1a93..7a9303ff 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 cb1e3d4b..a66aa053 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 83cd0ab5..3f7f6c26 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 e4c1d317..c3131eb7 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 de46fb46..3ae273aa 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 9d52031a..c56cdcd6 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 7eecf4cc..37aed0d0 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 a6d061e2..0bf0806f 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 307b4eac..4c8c1b70 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 0b4484cf..f790f2e4 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 0631125e..40a9208c 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 1498a86d..4c4e71a5 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 7a692058..1ebae01e 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 0c469606..f27c2fa4 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 be973051..0fe9ca94 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 2fc844eb..0cf56721 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 6894c02a..b162dcdf 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 cc5466ad..a2659c75 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 b7f6e832..2456e1fa 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 3fc80894..082edbd4 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 c20a3dc0..3332da55 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 f1f0ce05..5aae1060 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 dd95ab07..1c46b9a2 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 703dabb4..2929cd36 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 818bf233..14b26e49 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 06f858f4..6ed774f2 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 255d27f8..0aadabbb 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 81576361..bb0c8fd5 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 a0297e39..33c7f43e 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 bdb900e6..a3522466 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 284694f6..dc6d379c 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 e554aa02..6de8781b 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 1ba1129b..efa93469 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 51f4af40..deba3676 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 f1f68210..d60615d2 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 f949cc09..75d3c495 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 3d5df8f2..ce5acf70 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 bf96b8be..4a5ecc22 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 90e9d177..733e9ae3 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 7df355b0..f5fdc3e9 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 aa53bafb..26d179d8 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 6b26d94f..1447de3c 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 5d1c99a5..cebf4333 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 421476d7..f2013070 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 0a41fd42..4d67de30 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 485ed926..b1f2dd2d 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 8d1940a3..5a12b072 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 a0ffc40d..ebc221ec 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 62f2f615..565b225d 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 d0759de2..f83d79a7 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 35d37ae1..5c29a1c4 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 4b96f19a..dadb9bf7 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 3535fd8c..394be711 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 e88b1655..fa1c3eff 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 bae09b4b..c5b7c057 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 2e3a05c2..dbeb61ea 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 d4dcaf58..6f22b5a2 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 872b285f..7ebe0494 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 0364ac5c..95aff7c8 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 acb07122..0845fbff 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 d223665a..ea8f99d3 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 38e2dccd..c8534718 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 f31748dd..1d952d71 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 73871c1e..eddcd11c 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 7b92abb8..71553f4a 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 101fec40..ca744140 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 32a99235..7928a14d 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 12951ace..70d0ec3b 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 0d40192a..ebe1b945 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 95fca1dc..efb05f1a 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 49c5617c..8185405f 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 a99c902e..945d3157 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 d45682f0..593d9ab6 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 5938f640..db328c33 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 fa733872..8613ad5c 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 574b9562..49ba7335 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 17307c87..4269f9fd 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 5f859626..4d9f194e 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 769291cd..8bd5f49f 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 432aaa6c..4dc78bc2 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 aa64015c..1251fa95 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 14c0d86b..73fae368 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 b12fdf01..6dfa8dbf 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 519fa0a8..59fb1ea8 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 168915e1..0d8663fc 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 0171bfa2..5f97809e 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 32dfebf0..8a5390f6 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 c2f5889f..13608233 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 da124218..14540de7 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 7c3154a3..86e9a21f 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 1fea60dd..37ffdb87 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 4fa932a7..6777bc46 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 a3565734..08b80c8b 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 7d9c5f17..deaa0de3 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 56641dc1..a0a31665 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 cd6d8bfa..76ada07b 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 9f6daad1..80736502 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 cca1e8ca..08936f55 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 80b36fcc..012667d8 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 708db7b9..a8364fe8 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 3fbf4d8c..eddbcd8f 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 7c7ec30d..220fc0a1 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 d0dabd7d..0c42a704 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 6d81c6a5..27c224a4 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 3794853f..ea6ecb2f 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 b7ebe345..a57cb0c2 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 637bb4e2..79f1f7ff 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 23d3e11c..b5a6e4dd 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 981597ea..93451c1a 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 ca219fae..96a7c547 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 87102e90..bcb38cce 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 ddbfd079..ccd08697 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 f63b2f01..a7c89510 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 c99e5dfe..c1ccb4fa 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 025cf136..19617036 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 7cef31c7..7b2cad3a 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 d3d59aeb..49e2d1a4 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 1fbd48eb..80b3c8f2 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 088c3ea4..5beb5800 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 9da48bef..d27787b6 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 1801970f..ba9fad9b 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 efa2ec1c..2b74f42e 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 3b0c93c0..98ab644f 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 b20e6687..591ae175 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 4bdf26db..a46f6b24 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 18fb480b..c38b777c 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 8757ebab..c081bee4 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 e2ed5971..e021ed25 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 f86c0005..369a0221 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 fcdba6b8..6216563b 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 47890601..d2b72a00 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 a91845a8..fe6846f8 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 a2a01922..0f60a370 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 f9ad7a3e..44a2ae7d 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 42ada9a9..62d2bea5 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 960d45be..b0ed1928 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 0405570b..d110c30e 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 1a63ad6e..0bceffef 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 f2658f37..1965e485 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 53fc4dd0..f146c518 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 e01e4058..85052666 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 3f1d23bb..c89bbf29 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 590fd881..c45e116c 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 10075306..238645fc 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 8fbd8a7e..08656ff1 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 89aaf8b7..85baa7e9 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 39ce53ef..ff1b38fd 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 7844966a..02125114 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 4ffc738f..c2cbee4f 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 780e2394..ac4e9182 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 02bfa15f..1adc3fcc 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 ac8a7237..a5582d81 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 d37229da..c2666f77 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 cb40100d..99afedc9 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 3587be0b..0fdecb25 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 0fb7d3a4..0b7c1aa2 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 0247835f..0d57c84c 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 bd3bd88c..782dc463 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 c2a34e6f..da4641d4 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 a226a565..752acab7 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 7c77fc0c..cba1ad24 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 0442de2c..170a79c6 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 3eb56d4e..4e3f68f2 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 978ff014..ded9fea9 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 af0218d8..642ca355 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 8fbd8a7e..08656ff1 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 50cbfa06..ef87e3b5 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 7c3d676a..d628fad3 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 7441c863..72ff15ce 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 2648982a..090e0711 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 43ea53b4..c3eb586c 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 fe936431..5e89cb0d 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 3fb6d90d..79237d28 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 12def83a..b9f7a39c 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 0059d6e7..1afca4f3 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 11894649..fc0fbaee 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 3cb48ade..c72b27c0 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 d498f06f..d1105a54 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 264744a3..47ea8ec0 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 98f13916..3408b13d 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 1bb0295f..39ad05d4 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 8fbd8a7e..08656ff1 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 9da5a8ca..7966ce0f 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 587cf579..2c27dcc7 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 0737147f..9fe4517f 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 20cdc26e..f525dd49 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 a0c4c0c9..1b2caf17 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 10f9e673..e85f3c59 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 166c0a85..dc94e8ba 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 b4e83702..ecfb1e4c 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 1b1da8a9..181003c0 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 bf9a4fcd..04ebb09a 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 8d732463..2b516567 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 ff401848..17137952 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 52b6537a..b2116fe1 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 70085663..fc20d823 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 65eb448b..559e862f 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 a07ee6c2..4c5893d3 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 a0850b42..d93ac856 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 c3b5c2af..795ac20a 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 76efb15b..eec80012 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 cd843fa6..5d49166f 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 c7c9bf88..c5245275 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 2828f86a..2b2db4c1 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 720c2389..ad7c7cde 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 3336b34f..ff140b6f 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 b955b331..3de5992b 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 4d036314..0946cfd6 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 0eb1eb76..74081ee8 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 86d3e206..20d8b907 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 d586414d..6f52668e 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 31d2a647..c506c87f 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 553f7ead..d969f419 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 722ed939..eb467513 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 a61f9ea9..cc8a9c06 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 1b5d34ba..36978757 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 232f6300..a992f0f3 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 bbd6c123..378ae8ab 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 98ebad40..cc51dee0 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 aff18277..6aa1bf05 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 bc3786a0..06937d2d 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 b03fdcb9..eb9bd42a 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 7dc3ee52..cce7ae07 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 2e053ef8..2353c17a 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 a58243dd..9ff4bd3d 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 10eaad3b..2fefc315 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 a8eecb74..e46e17db 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 2afd0c50..a69b1e59 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 6e21da2a..7122906e 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 2ff09939..3958fdb3 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 491234b8..5ec247ec 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 18c9f0f9..0002bffc 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 23d548c2..046caedc 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 95347819..107a2792 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 66ad089d..a6284122 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 a316c223..aa0622a3 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 73d662aa..3bb6df16 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 4888da4b..a5cbca5b 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 6f5835da..4da028aa 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 d7a0afa1..b380cbf0 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 a9511466..24bec498 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 450855e8..7ce31745 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 932de09b..5a9abacb 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 1fde23b3..6a1b0dd3 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 3c4e339c..28970d4b 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 88ce717d..a8271c11 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 8ef9fa53..0529c0e9 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 4ca97cfc..d72c53f3 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 45eb1ab7..d12d31be 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 1f7b92ef..fa1611bd 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 6456ffac..c9c88f49 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 f7e22b48..85c7f55e 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 fd9d7528..ef83e6ad 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 7b45f0e0..2aa55b1c 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 a203aaf9..d682a1bf 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 71e33064..3b02bceb 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 dbcaba73..5ba06609 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 f467ebce..d3d8872f 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 e8fc2619..4565ab42 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 63b14436..40f47bf4 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 522dd569..99c2c800 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 e8a879e3..65fdf4b3 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 08c95396..70d6dbba 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 8b4b7120..2fafa468 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 c980ec3a..984f9f59 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 b5b5ffb3..12d5d6d6 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 a1e70813..9a0fa907 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 ee95a5ad..965f0fff 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 5839cbaf..66d61db1 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 8f4a2302..935a9e1a 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 1342b298..054cada9 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 b0f72f15..8833b01b 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 107acb68..feab4915 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 e1525035..2cc1872c 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 01f3b1c3..faf7b713 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 ab0cc5ba..07617a22 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 d4a1fce1..3e7ff7c7 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 7b6baefc..96fe16de 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 784fcf99..f96670b5 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 f94945e9..3ea6c23d 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 b6667df2..1acfab64 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 54946820..77bca66c 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 dfad7eb0..3b13387c 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 4b779916..3c76821b 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 013c30a4..0f42568d 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 42c16593..d4cd394d 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 5eaf58bd..cab939cc 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 c99f9c1a..11cc1b9b 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 3e3771bd..9864ad31 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 c4c19158..c0875fd0 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 387fc553..445f467d 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 d9daac9f..0521f3a4 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 e279cdd7..483fd4d1 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 7873f722..b8cdb73b 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 3bb034d7..ef169655 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 bd351328..a279bebc 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 02fb4f4e..98aff9ea 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 4e468740..1b57c9f4 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 b38cdcfb..2d1ce8cd 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 85a139c2..fd7bbff1 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 e017c5fa..1a3d89c6 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 efd388a5..1e687e1e 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 48eacb57..accae477 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 e0ae9bd0..b082033c 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 5a1c95da..7eb09808 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 c2ad98b6..646b7c88 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 ab0cef53..7a6174b5 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 77e67215..5b819f92 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 71b092fd..452f931c 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 f80751f7..9c668c6c 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 fa427039..42ec4e50 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 17943eab..d0b69b51 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 b0f100a6..b26606a1 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 4843440e..230cf6ab 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 f37f1528..5dd189bf 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 97896b09..57d870c2 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 8cdb8804..4be65170 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 e138374c..c780da40 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 b66dde3a..e4fe1fce 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 0ca886ad..9ad6fa9d 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 73dae8c9..7a7f15d3 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 d34a0a11..b231e781 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 cae352e4..91c8d390 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 f8637112..23ced139 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 e0113466..27c03c76 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 77dbfa44..57f0edf9 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 ffaacde7..65395b71 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 c701852d..93fe90ca 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 4b81e994..7833cd34 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 f99cd8b5..ea343af9 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 c8681b85..3c2dd4c3 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 19cc5449..c628f0e2 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 e97aaf70..8c38a98f 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 6ed9774d..cd6be98b 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 21cda6ea..6b91bed9 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 272b1760..b2ce3dd4 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 aaba8e12..d7f27990 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 eadbdb6e..ed6fb184 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 e6b3d0a6..d6392b58 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 adabccf3..f06bea89 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 b1455c67..7c8e2849 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 905b86f3..640d9450 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 334f995f..b97f9316 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 d8ff8cec..7f68558c 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 122fc3c1..67d99816 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 81ede843..f51d8cea 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 ff2cf240..23b8d2b8 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 1c785e62..1ba25d6e 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 299dfb25..429d7a78 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 459e60ef..19f82c4d 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 19e38e77..4ae27efb 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 b9717197..b07b646d 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 dfca425c..cc7c53f9 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 7f4514a0..9aa80aee 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 735dbea1..5cb62979 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 85171d89..997f97d6 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 122d4af7..a023f345 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 12cdb17f..51f8c216 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 a8b51396..d21c6bb5 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 94cd2250..21ec9bbf 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 14bb6d2c..4bd48855 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 d208334a..c39e4a98 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 d2dfe959..2a5a5d77 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 396f857b..8f6f351e 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 67e5745b..3331c0c2 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 2e1b3666..e6e4c035 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 90423bf4..e652a756 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 47c5a618..bb996482 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 5a0ae3a0..2a24b469 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 228586f5..9313ba60 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 995ba6ca..32372bb7 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 fc9680c9..4eec6635 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 40ea05e1..d64b9666 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 8a5609c4..147e23a6 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 ab6ac779..e3ec42cf 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 8ee921d8..3093e7bb 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 748190cc..3aa596bc 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 87c015d9..fa54c6fb 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 872d49d7..d5a865a5 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 740e6b66..1d1bcd4d 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 a7973d65..ca8bd3e8 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 5919c5fe..d404f99e 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 2b24a264..b03c2c8e 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 65c6c984..f6b9b873 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 ead3d193..6ae0d35f 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 6c603c23..7bc1517b 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 23ec43be..61b575dc 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 8852ed6d..1cac2de0 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 4dc35f0c..b000599a 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 86020027..943cd7c0 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 cd417052..340c6254 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 19ba3bd9..7d4b3a29 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 7fe1faa6..c0b0ad8f 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 fce65caa..e1e87233 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 c58c6163..a031b882 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 a8932ed0..fb6e085d 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 f1a06c98..89aa00d0 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 16d78b87..b2a0975f 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 7e3478a3..27803f4a 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 44c28315..c0efa518 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 22cec835..27eecf95 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 d1bb8d97..d2f0e85a 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 531bf900..1c3f5325 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 a5611b03..b5c5fe38 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 01e696db..0f54ea82 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 f424815a..566647e1 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 f5e87005..a79b0dca 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 b53bb611..4fa8ae53 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 ebb58199..4be9ea89 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 554eba70..f150df02 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 43452a19..d4fcc3f6 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 bce978af..70e39c4e 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 0e15bfac..8aa947aa 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 11f3f4f7..60678ab9 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 1020d410..60ce5070 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 af49bb3b..a679345d 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 da0480d5..147bc895 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 8c844455..de95be4e 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 a716f0d1..d1fd44b0 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 7d52efe1..1bdd85e9 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 acc3c077..c308e4e6 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 5a1146fb..f6792c76 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 7f3d8aee..104673aa 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 3803c1dc..8e7eda6e 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 420e76bc..7d31abcc 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 ad3823d9..8e5d9267 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 1e4f4a11..0da589b2 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 0d7b7106..35fff16c 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 913ff016..ea09c1fe 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 6257492c..0c03d93f 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 f2e2b96a..2be85c72 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 c701852d..93fe90ca 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 88b1386e..4c7b53ec 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 f2860142..59075af9 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 b9da6c34..15902aab 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 cc5d15a2..4533aa04 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 e2b55408..907f481c 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 991062de..b14c07e4 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 290390bb..85a3c48f 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 8ca1d940..2b695ace 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 a58b16dc..bab4ea60 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 c1dd0922..4be1074b 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 db4733eb..7b694ca6 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 b7758f52..ee802f4b 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 b07d23f2..f0ee2157 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 16b9dc7e..40fe993e 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 47e4c82d..1fd73b07 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 608c2d90..e0900aef 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 a406870d..222290d7 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 61130b72..99a821dd 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 ae8a40f6..86b0a7c8 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 477cc642..2d35e191 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 b6115844..5550c491 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 1bd4f099..08318381 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 6b5032b8..c318ebd6 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 e1aa6786..e1610312 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 f20d3143..fbab9ebf 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 cf206142..8c0ba8e8 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 c5c9e460..5b2af575 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 d7757145..f4a2befa 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 a993f7ac..ee266df2 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 dd7af94c..e15e25c0 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 6b58c28a..46a3e4af 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 f8f78af5..085a9066 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 91e14369..fde3a54f 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 8b61a2a1..ffdca68d 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 e278daa8..9cc1462e 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 32798503..480c12b0 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 dbd60841..68296588 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 78d3bc75..e175daff 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 d8a00d2f..ea247d8c 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 502e1bbf..51062bce 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 c3aab765..316a014f 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 735c719b..59d94791 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 8849c42a..5ceade72 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 c6945698..b4b13067 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 82e1c96b..f40f9424 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 d1caabbe..9b215e10 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 eada272d..75af3bae 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 c9e644ff..add84022 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 b6c366fe..990ca68c 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 f00eaf7e..2680bd61 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 e7eda2e3..aaf58208 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 28fa85eb..810ba461 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 f5c8df67..6a9116ed 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 50048217..7811479c 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 6c995a17..eda642d1 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 1a5a77ea..278974c9 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 895247f2..26efda68 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 4bbf1ad1..e81496a7 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 80d31c1c..ad4d13c7 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 d9be9b78..c2426bdc 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 2ef8e12e..cf805678 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 e62f687f..b3a8f055 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 0012f510..71f90a3a 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 86d0ad18..76796c22 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 b3760735..189ca440 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 f4801bb5..5902043e 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 0fa7542c..6d4303e9 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 db467e76..508d11ba 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 5e093ce7..d8815479 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 a2ed1c0e..07c961e8 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 618c861f..ed13b0ba 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 1b5c6b44..feddeddb 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 bcdbb793..73a45d02 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 13dc8be2..656a2dca 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 760a3c11..de31f0f3 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 6ea31f64..fe737db6 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 a7bf73f6..7b7569df 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 1ded4465..7b74df5b 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 7114e859..920ec9d4 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 aedb6d55..7a5b6ead 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 03deb301..d6a8d812 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 9c41e86f..37e487be 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 9473e605..e697ce91 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 cef25d5e..4ba5d4c5 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 a8744965..d40cf1a0 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 834341ee..bc605c4b 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 9f8c954a..8ddc91e0 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 010166a2..346a9e38 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 422554ff..e6ee7c7d 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 eb7aa364..abc7a4b4 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 7f3d8aee..104673aa 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 cdb4649f..89f020f8 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 cd3a45a7..11399782 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 cf273698..4c2b5d44 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 217e8701..2c150a98 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 d30c2543..8e03d52d 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 87295232..d8be8871 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 f4df86fb..8b7900b2 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 edd622ba..6818df40 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 c701852d..93fe90ca 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 49546e47..ede1c11a 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 3fccf699..725d43be 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 a9940719..0b15cc4b 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 9b5d8c00..976b296f 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 58b7fa07..d5b0d60a 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 15d2a96b..d42d908b 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 59e8645c..005d9bca 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 b096dd37..47b2ac6f 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 960c0651..2e962dd3 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 3af26d3c..1137c754 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 a5839247..fdf9bfd7 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 42ba761d..74a64b0c 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 be13ee48..b6b685cc 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 82b07979..dd92a5c6 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 7d8f5e25..2c6b497f 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 07fd43dd..48624073 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 97c90a2b..a99b0bce 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 7764a89f..b2957dc8 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 6591fb36..c10d789a 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 79b4a7f2..250c22c8 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 3df3b554..19c580b7 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 2dbc45eb..01a8f16f 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 e0b60601..6daca429 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 6e0ba7f5..027002ad 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 601d5373..138d5440 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 4beff6eb..2f829628 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 689d66b6..2227946f 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 9a0596fd..e400dab6 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 cea8bd1b..590bfc06 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 c68f5825..af81d82d 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 d6ad0dd0..0c2cafe6 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 51cf087e..48b62f2a 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 24e7de2f..7a040a98 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 18734580..2a4bed70 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 9f19f3dd..5b419131 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 8ceeb5c4..ac995bec 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 0e373830..c3ec8e15 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 e3421bb0..a6c2be9d 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 1450f397..7ff06522 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 58d3f9ef..7cbbdeba 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 e4556e8a..0127bcd1 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 19b9776f..9bff811a 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 18fb364e..05350ba8 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 b667c574..1b36d46a 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 ebc85730..45e6145c 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 e6661f34..0016910c 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 befc83cd..ad9ab3aa 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 2168e790..e4e3a7c7 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 a31bf1c2..ac4007f4 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 f38b3c88..3735dcb7 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 28262aed..caedfdfd 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 daeb0260..e588711d 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 47a49d83..db397652 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 ab4ff9a0..9df0bcec 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 b8017c66..540c26d7 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 0a39b5f0..94fd0e0c 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 c42c2d6b..be84dce3 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 be43b663..aa81d1d8 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 4a34018f..4b5351d2 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 8a5b9d49..40e00f7d 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 4469c552..04cd4fb4 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 7561a877..75d24d70 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 1e97a829..8e4f114d 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 b64f0d15..03901815 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 f90f750e..052cab4a 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 55710aff..7ae4e342 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 538c2040..400a7a61 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 a74de9d3..66b4f80d 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 fcd1a89e..9ae43924 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 bac04893..eb4be500 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 75808cf8..42075f6c 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 f3752f11..45e69e97 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 ade032da..d48bf589 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 8fbd8a7e..08656ff1 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 50cbfa06..ef87e3b5 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 3142a2d4..f58be41f 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 409abbda..ae368506 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 84edc293..3b6dd6e7 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 5a506be1..80b4bdc9 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 51e759c4..3af7f140 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 559a8b98..09223bcf 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 b42b5e5b..b9a4fb74 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 786a0055..73cf534e 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 2bf63145..4f89a7e1 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 3f1b9d57..fb94dca8 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 2a324243..6269d7b2 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 77e13d01..82a83a58 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 141f0c52..f3c13922 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 456b9277..edd7a682 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 d7cd114e..4bb19e0a 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 8bd31485..e56d94a3 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 b6078fdd..1f78e727 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 81fe82db..3160273a 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 1c438079..1fdb39b2 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 588f4f0e..2ecc8a77 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 dba7ebd7..85322bec 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 68b2e444..9f15c759 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 c7a36121..c8b7b0f4 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 50cbfa06..ef87e3b5 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 cb157e8a..7d3581bf 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 a3832a70..f031d58a 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 9da1c108..d863ca20 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 8527cc7f..72f2c3cf 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 9da8ccd4..e000bb66 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 35439e8b..7e49f0d7 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 0b1aca33..a01cc092 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 3158fd3e..885adaa5 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 1fbcfe76..66f96242 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 073e618d..f2fa6f78 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 f495a25e..872e9929 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 07fbd4be..103e7441 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 01bc72c1..5b991244 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 08034b88..3e51d55a 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 2e96f1f0..ea883b4e 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 aad9c619..785ba3cb 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 b19e79e3..ade3778c 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 439cbc60..70ae8c11 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 f8d7cd9c..5534fc57 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 f271c17d..b0c3f05e 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 bc2887e7..f2675bc0 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 1d57ee69..58ef7729 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 27373271..ddda35e3 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 e357bae6..4d29ed06 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 99b5616f..b5b03843 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 c5bce62d..db5a1213 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 f4c86f0a..e3fa40c1 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 67f9536c..deb53cdd 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 3a536054..cbb1b88d 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 9f542914..96134838 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 9f9ea022..6e7e8c67 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 c19eaf94..e3f47830 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 c527abfa..c0414c42 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 d3a59659..9de7e34c 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 5951e5f7..6239bfa8 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 1757297d..521a0c11 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 fab3f14a..94fac06a 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 461c1def..f2b4ef6e 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 22c3266e..3751df1a 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 a32fff96..ba6cf163 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 c9f44e94..fb6db452 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 af243ba9..f73d0f4b 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 3e63990b..43ccdd5b 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 90f7b1d4..8fec9b93 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 9f938b11..e0cea84b 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 68479c04..6039cd49 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 1f06e450..26382f7c 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 f6c1e86b..27b64400 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 80ee68bd..13022cbf 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 ebe3d15d..60d97a84 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 8a87551e..20f38444 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 8151a939..18761c1b 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 d256fb96..4d865a02 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 568cffd6..71751752 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 ab941906..48b84da9 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 b172e3e2..62574114 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 0e69778b..8f02842f 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 0bde7691..7f479fa9 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 8f62badd..3eb23ad2 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 2adb8612..46224182 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 59302ac7..94653341 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 f975e348..e3b64549 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 1f8a1e64..3539549a 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 34f439ff..0873fcbd 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 70de131b..ae187419 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 0d06f880..a3ff5451 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 ad8bb6d9..4f0df466 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 cec2c741..62f10769 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 fbf4081a..c32a515c 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 ff1373df..c673a679 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 465746a8..1abfc5c0 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 c90bf9bb..4ed04278 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 fac93832..8555da41 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 e872aac6..a6925bc3 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 33138a80..843c075b 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 362d6c3e..10638d04 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 2345385f..27f71235 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 bdcfc9e1..e8e18499 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 f6077519..f927712e 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 6eeb735b..6b5bef1a 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 1c14414b..6c90e9f5 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 7ee6a95e..b71dcaa0 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 8fd8e608..b5c658f7 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 988a8831..0d2f899e 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 7d9db126..c4059df2 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 cd3e9fc3..42a9d0b4 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 1434d35d..aae76e17 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 5bdfcedc..eaabf5b4 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 5f6d9870..c5dbfa93 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 891819f0..e39abcb6 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 512940be..89616bb8 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 63faa273..d7cef8b2 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 d0cae34f..8e243c72 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 f492b1d0..91d88100 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 0d38bf4d..d571b587 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 3207398f..5973f54d 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 1bf808f2..cfd2ea2d 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 ed57ca1b..f7392c62 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 5bbc5cbf..68299fbc 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 0b693142..e03a2063 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 8641c411..d45f5eb7 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 bbc9def1..c4a0817e 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 f18137bc..60a6e967 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 7b2a4c47..0322ca02 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 b0b84cb9..bc9356fa 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 84a69b1c..9bb9fdef 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 375cfdb7..2eb763ba 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 10c1d1d4..0c3305b0 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 79398cf3..b320da28 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 768176fe..963bb770 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 c6b7bf7c..042d11c2 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 dba16616..47693641 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 66863493..496cb992 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 a589c811..d0ef7b1e 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 9f7b4c6c..35e8a7d4 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 a5c574f3..8a59ecc6 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 952fd681..3e7770db 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 6b5d1ebb..f240eb22 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 e1bba9fe..fcf27d65 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 646eb86f..da47bc2a 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 3edf9ada..c7a9b67c 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 d87ce9ed..904e2cf9 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 7db484f0..87f61933 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 3579d61d..2d0cf9a0 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 671b3ed8..aec04ca9 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 0dfb441b..df8ef70c 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 450a7184..a4d9bc25 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 c38863e1..b9798bda 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 d7caf033..3cbf2f5d 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 6c926e6e..968d3c28 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 4e7516bf..ffc26db7 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 55561f65..882954c6 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 e24621d5..923b1048 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 7709c28d..ede76466 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 be000d5b..f155b796 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 58dd2899..739150ac 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 8b2d79b3..a867f7bf 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 b4960009..d88ef229 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 fc563601..33e5f479 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 6fc978d1..200b2a7e 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 b4d1a196..ddece40f 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 b374a91a..414ff150 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 5c9ab879..6610e675 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 0eff7606..1f974836 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 5ea2af65..ebec940a 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 39af95d4..261054f1 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 e06d39fc..c790a4f7 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"; diff --git a/scripts/check-workspace-conventions.mjs b/scripts/check-workspace-conventions.mjs index a2a21592..4c0898a7 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\``); }