@adobe/ecs 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/implementation/world/create.js.map +1 -1
  2. package/dist/implementation/world/finalizers.js.map +1 -1
  3. package/dist/index.d.ts +20 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/interface/component/component.d.ts +7 -1
  6. package/dist/interface/component/component.js +0 -1
  7. package/dist/interface/component/component.js.map +1 -1
  8. package/dist/interface/component/index.d.ts +1 -1
  9. package/dist/interface/component/value.d.ts +5 -5
  10. package/dist/interface/component/values.d.ts +2 -2
  11. package/dist/interface/finalizer/body.d.ts +5 -5
  12. package/dist/interface/resource/condition.d.ts +3 -3
  13. package/dist/interface/resource/index.d.ts +0 -1
  14. package/dist/interface/resource/resource.d.ts +4 -1
  15. package/dist/interface/resource/resource.js +0 -1
  16. package/dist/interface/resource/resource.js.map +1 -1
  17. package/dist/interface/resource/value.d.ts +5 -5
  18. package/dist/interface/resources/cadence.d.ts +1 -1
  19. package/dist/interface/system/access.d.ts +1 -1
  20. package/dist/interface/system/body.d.ts +2 -2
  21. package/dist/interface/system/commands.d.ts +4 -4
  22. package/dist/interface/system/struct.d.ts +2 -2
  23. package/dist/interface/system/values-of.d.ts +4 -4
  24. package/dist/interface/system/values.d.ts +5 -5
  25. package/dist/interface/trait/types.d.ts +4 -4
  26. package/dist/interface/world/create.d.ts +3 -7
  27. package/dist/interface/world/declarations.d.ts +2 -2
  28. package/dist/interface/world/join.d.ts +2 -10
  29. package/package.json +1 -1
  30. package/src/exports.test.ts +2 -2
  31. package/src/guide/03-systems.out +1 -1
  32. package/src/guide/11-traits.type-test.ts +1 -1
  33. package/src/guide/18-identity.out +1 -1
  34. package/src/implementation/world/create.ts +3 -3
  35. package/src/implementation/world/finalizers.ts +3 -3
  36. package/src/implementation/world/pool-size.cases.ts +3 -1
  37. package/src/implementation/world/reads.test-helper.ts +6 -6
  38. package/src/index.ts +24 -1
  39. package/src/interface/component/component.ts +7 -1
  40. package/src/interface/component/index.ts +1 -1
  41. package/src/interface/component/value.ts +5 -5
  42. package/src/interface/component/values.ts +2 -2
  43. package/src/interface/finalizer/body.ts +5 -5
  44. package/src/interface/index.type-test.ts +1 -1
  45. package/src/interface/resource/condition.ts +3 -3
  46. package/src/interface/resource/index.ts +0 -1
  47. package/src/interface/resource/resource.ts +4 -1
  48. package/src/interface/resource/value.ts +5 -5
  49. package/src/interface/resources/cadence.ts +1 -1
  50. package/src/interface/system/access.ts +1 -1
  51. package/src/interface/system/body.ts +2 -2
  52. package/src/interface/system/commands.ts +4 -4
  53. package/src/interface/system/struct.ts +2 -2
  54. package/src/interface/system/values-of.ts +4 -4
  55. package/src/interface/system/values.ts +5 -5
  56. package/src/interface/thread/thread.type-test.ts +1 -1
  57. package/src/interface/trait/trait.type-test.ts +4 -4
  58. package/src/interface/trait/types.ts +4 -4
  59. package/src/interface/world/create.ts +3 -7
  60. package/src/interface/world/declarations.ts +2 -2
  61. package/src/interface/world/join.ts +2 -10
  62. package/src/interface/world/loop.type-test.ts +6 -6
  63. package/src/observe/members.ts +3 -3
  64. package/src/observe/query.ts +1 -1
  65. package/src/observe/select.ts +1 -1
  66. package/src/observe/values.ts +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/implementation/world/create.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../src/implementation/world/create.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"finalizers.js","sourceRoot":"","sources":["../../../src/implementation/world/finalizers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"finalizers.js","sourceRoot":"","sources":["../../../src/implementation/world/finalizers.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -10,6 +10,26 @@ export type World = Created;
10
10
  * `World.join(port, { threads })`.
11
11
  */
12
12
  export declare const World: {
13
+ /**
14
+ * Creates a world on this thread, synchronously, with resources starting at the given values in place of their
15
+ * defaults. This thread is its `"world"` thread for the world's life: it runs the sync points, the ticks and the GPU
16
+ * device, and fills every logical thread no joined thread claims. Keys are the resources' symbols, built-in ones
17
+ * included (`{ [workers]: 0 }`); string keys are never a resource's, so they're ignored. Throws for a symbol that isn't
18
+ * a resource, or is one only the world writes. While a declaration's trait or default doesn't hold, each call fails to
19
+ * compile, once, naming each such key, its members and what's wrong with them.
20
+ */
13
21
  readonly create: Create;
22
+ /**
23
+ * Joins, from another thread, a world that `share` let join through the other end of `port`, claiming the logical
24
+ * `threads` this thread fills: their objects live here, and the systems and finalizers reading them run here. Resolves,
25
+ * once the world accepted the claim, to the same world: its `run` runs systems there, and its `add` and `remove` take
26
+ * observer systems, which run here after the world's sync points. Add them before awaiting anything else, so the
27
+ * world's `share` resolves with them in place. Its `dispose` disconnects this thread. Rejects with an `Error` saying
28
+ * why it didn't join: the world refused the claim, was disposed, or its thread ended first, as the platform reports it:
29
+ * the world's `Worker` failing to start or throwing first, a port closed, as in node, or, in a browser, the world's
30
+ * thread ending once it was shared through a port this thread listened on. A browser world's worker that the page ended
31
+ * before this thread heard from it isn't reported, so the join stays pending. Rejects too where memory can't be shared,
32
+ * as without cross-origin isolation.
33
+ */
14
34
  readonly join: Join;
15
35
  };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAKzD,cAAc,sBAAsB,CAAC;AAKrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,KAAK,GAAqD,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,uDAAuD;AACvD;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAKzD,cAAc,sBAAsB,CAAC;AAKrC;;;;GAIG;AACH,MAAM,CAAC,MAAM,KAAK,GAuBd,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC"}
@@ -1,2 +1,8 @@
1
- export type Component = never;
1
+ import type { Key } from './key.js';
2
+ import type { Type } from './value.js';
3
+ /**
4
+ * The type of component `K`'s value, as its record in `Components` declares it: `Component<typeof position>`. The
5
+ * namespace's `Key` and `With` name components' keys.
6
+ */
7
+ export type Component<K extends Key> = Type<K>;
2
8
  export * as Component from './index.js';
@@ -1,3 +1,2 @@
1
- // © 2026 Adobe. MIT License. See /LICENSE for details.
2
1
  export * as Component from './index.js';
3
2
  //# sourceMappingURL=component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/interface/component/component.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAIvD,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/interface/component/component.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC"}
@@ -1,2 +1,2 @@
1
1
  export type { Key } from './key.js';
2
- export type { Value, With } from './value.js';
2
+ export type { With } from './value.js';
@@ -2,17 +2,17 @@ import type { ThreadOf } from '../thread/of.js';
2
2
  import type { Key as TraitKey } from "../trait/key.js";
3
3
  import type { Key } from "./key.js";
4
4
  import type { Components } from "./types.js";
5
- /** Every component's value type, computed once so `Value` is a lookup. */
6
- type ValueTypes = {
5
+ /** Every component's value type, computed once so `Type` is a lookup. */
6
+ type Types = {
7
7
  readonly [K in Key]: Components[K] extends {
8
8
  readonly type: infer T;
9
9
  } ? T : never;
10
10
  };
11
11
  /** The value type of component `K`. */
12
- export type Value<K extends Key> = ValueTypes[K];
12
+ export type Type<K extends Key> = Types[K];
13
13
  type Primitive = string | number | boolean | bigint | symbol | null | undefined;
14
14
  /** Component `K`'s value as reads return it: read-only, with branded primitives such as `Entity` as they are. */
15
- export type ReadonlyValue<K extends Key> = Value<K> extends Primitive ? Value<K> : Readonly<Value<K>>;
15
+ export type ReadonlyType<K extends Key> = Type<K> extends Primitive ? Type<K> : Readonly<Type<K>>;
16
16
  /** Components that declare trait `T`, with a value assignable to `V`. */
17
17
  export type With<T extends TraitKey, V = unknown> = {
18
18
  [K in Key]: Components[K] extends {
@@ -32,7 +32,7 @@ export type Shared = With<"shared">;
32
32
  export type Writable = Exclude<Key, With<"reference"> | Shared>;
33
33
  /** Every component's thread, computed once so `ThreadOf` is a lookup. */
34
34
  type Threads = {
35
- readonly [K in Key]: ThreadOf<Components[K], Value<K>>;
35
+ readonly [K in Key]: ThreadOf<Components[K], Type<K>>;
36
36
  };
37
37
  /** The thread component `K` lives on, or `never` for a struct, which lives in shared memory. */
38
38
  export type ThreadOfComponent<K extends Key> = Threads[K];
@@ -1,6 +1,6 @@
1
1
  import type { Key } from "./key.js";
2
- import type { Value } from './value.js';
2
+ import type { Type } from './value.js';
3
3
  /** Values for any subset of components, keyed by component. */
4
4
  export type Values = {
5
- readonly [K in Key]?: Value<K>;
5
+ readonly [K in Key]?: Type<K>;
6
6
  };
@@ -5,7 +5,7 @@ import type { Listed, Property } from '../system/property.js';
5
5
  import type { LookupFunction } from '../system/values.js';
6
6
  import type { WriteResources } from '../system/body.js';
7
7
  import type { ChangesDeclaration, Declaration } from './declaration.js';
8
- import type { Essential, ReadonlyValue } from '../component/value.js';
8
+ import type { Essential, ReadonlyType } from '../component/value.js';
9
9
  import type { Elsewhere, ThreadsOf } from '../system/threads.js';
10
10
  /**
11
11
  * The entity that stopped matching, with the values of its `with` as they are before the sync point applies, and of
@@ -14,9 +14,9 @@ import type { Elsewhere, ThreadsOf } from '../system/threads.js';
14
14
  export type Row<D extends Declaration> = {
15
15
  readonly entity: Entity;
16
16
  } & {
17
- readonly [K in Listed<Property<D, "components">, "with"> & Component.Key]: Component.Value<K>;
17
+ readonly [K in Listed<Property<D, "components">, "with"> & Component.Key]: Component<K>;
18
18
  } & {
19
- readonly [K in Exclude<Listed<Property<D, "components">, "optional">, Listed<Property<D, "components">, "with">> & Component.Key]: Component.Value<K> | undefined;
19
+ readonly [K in Exclude<Listed<Property<D, "components">, "optional">, Listed<Property<D, "components">, "with">> & Component.Key]: Component<K> | undefined;
20
20
  };
21
21
  /**
22
22
  * Every resource, its lookups when declared, and the commands it issues for the next sync point: none on another
@@ -47,7 +47,7 @@ export type Group<C extends Component.Key> = {
47
47
  export type ChangeSet<C extends Component.Key> = {
48
48
  readonly groups: readonly Group<C>[];
49
49
  /** The value before the sync point, or null if the entity didn't have it. */
50
- previous<K extends C>(entity: Entity, component: K): ReadonlyValue<K> | null;
50
+ previous<K extends C>(entity: Entity, component: K): ReadonlyType<K> | null;
51
51
  /** The value after it, or null if the entity won't have it. */
52
- next<K extends C>(entity: Entity, component: K): ReadonlyValue<K> | null;
52
+ next<K extends C>(entity: Entity, component: K): ReadonlyType<K> | null;
53
53
  };
@@ -1,8 +1,8 @@
1
1
  import type { Key } from "./key.js";
2
- import type { Value } from './value.js';
2
+ import type { Type } from './value.js';
3
3
  /** The resources a system can run on the condition of: their type allows `null` or `false`. */
4
4
  export type Condition = {
5
- [K in Key]: null extends Value<K> ? K : false extends Value<K> ? K : never;
5
+ [K in Key]: null extends Type<K> ? K : false extends Type<K> ? K : never;
6
6
  }[Key];
7
7
  /** A condition's value while `is` holds: neither `null` nor `false`. */
8
- export type Holding<K extends Key> = Exclude<Value<K>, null | false>;
8
+ export type Holding<K extends Key> = Exclude<Type<K>, null | false>;
@@ -1,2 +1 @@
1
1
  export type { Key } from './key.js';
2
- export type { Value } from './value.js';
@@ -1,2 +1,5 @@
1
- export type Resource = never;
1
+ import type { Key } from './key.js';
2
+ import type { Type } from './value.js';
3
+ /** The type of resource `K`'s value, as its record in `Resources` declares it: `Resource<typeof clock>`. */
4
+ export type Resource<K extends Key> = Type<K>;
2
5
  export * as Resource from './index.js';
@@ -1,3 +1,2 @@
1
- // © 2026 Adobe. MIT License. See /LICENSE for details.
2
1
  export * as Resource from './index.js';
3
2
  //# sourceMappingURL=resource.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../../src/interface/resource/resource.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAIvD,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"resource.js","sourceRoot":"","sources":["../../../src/interface/resource/resource.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC"}
@@ -1,20 +1,20 @@
1
1
  import type { ThreadOf } from '../thread/of.js';
2
2
  import type { Key } from "./key.js";
3
3
  import type { Resources } from "./types.js";
4
- /** Every resource's value type, computed once so `Value` is a lookup. */
5
- type ValueTypes = {
4
+ /** Every resource's value type, computed once so `Type` is a lookup. */
5
+ type Types = {
6
6
  readonly [K in Key]: Resources[K] extends {
7
7
  readonly type: infer T;
8
8
  } ? T : never;
9
9
  };
10
10
  /** The value type of resource `K`. */
11
- export type Value<K extends Key> = ValueTypes[K];
11
+ export type Type<K extends Key> = Types[K];
12
12
  type Primitive = string | number | boolean | bigint | symbol | null | undefined;
13
13
  /** Resource `K`'s value as reads return it: read-only, with branded primitives such as `Entity` as they are. */
14
- export type ReadonlyValue<K extends Key> = Value<K> extends Primitive ? Value<K> : Readonly<Value<K>>;
14
+ export type ReadonlyType<K extends Key> = Type<K> extends Primitive ? Type<K> : Readonly<Type<K>>;
15
15
  /** Every resource's thread, computed once so `ThreadOf` is a lookup. */
16
16
  type Threads = {
17
- readonly [K in Key]: ThreadOf<Resources[K], Value<K>>;
17
+ readonly [K in Key]: ThreadOf<Resources[K], Type<K>>;
18
18
  };
19
19
  /** The thread resource `K` lives on, or `never` for a struct, which lives in shared memory. */
20
20
  export type ThreadOfResource<K extends Key> = Threads[K];
@@ -1,4 +1,4 @@
1
- /** The cadence's value, for the implementation: `Resource.Value<typeof cadence>`. */
1
+ /** The cadence's value, for the implementation: `Resource<typeof cadence>`. */
2
2
  export type Cadence = {
3
3
  readonly kind: "frame";
4
4
  } | {
@@ -25,7 +25,7 @@ export type ComponentAccess = {
25
25
  * change filters, an archetype it skipped keeps its rows unseen until it passes again.
26
26
  */
27
27
  readonly where?: {
28
- readonly [K in Shared]?: Component.Value<K> | ((value: Component.Value<K>, context: {
28
+ readonly [K in Shared]?: Component<K> | ((value: Component<K>, context: {
29
29
  readonly resources: ReadResources;
30
30
  }) => boolean);
31
31
  };
@@ -22,7 +22,7 @@ type Reading<D> = D extends {
22
22
  export type Optional<D> = Exclude<Listed<Property<D, "components">, "optional">, Members<D>>;
23
23
  /** Each optional component's value or `undefined`, as `ComponentValues` gives members'. */
24
24
  type OptionalValues = {
25
- readonly [K in Component.Key]: Component.Value<K> | undefined;
25
+ readonly [K in Component.Key]: Component<K> | undefined;
26
26
  };
27
27
  /**
28
28
  * Its members' values, writable but for references and shared components, and in a system that only reads; its
@@ -40,7 +40,7 @@ export type ReadResources = Values<Resource.Key, never, Resource.Key, ResourceVa
40
40
  export type WriteResources = Values<Resource.Key, Writes, Resource.Key, ResourceValues>;
41
41
  /** Each reduced resource, as a function contributing a value to the run's fold. */
42
42
  type Reductions = {
43
- readonly [K in Reduced]: (value: Resource.Value<K>) => void;
43
+ readonly [K in Reduced]: (value: Resource<K>) => void;
44
44
  };
45
45
  type Is<D> = Listed<Property<D, "resources">, "is">;
46
46
  /**
@@ -3,14 +3,14 @@ import type { Entity } from '../entity/entity.js';
3
3
  import type { Essential, Shared } from '../component/value.js';
4
4
  import type { ValuesOf } from './values-of.js';
5
5
  /** The value an `add` of one component takes: none for a tag. */
6
- type ValueArgument<K extends Essential> = Component.Value<K> extends true ? [value?: true] : [value: Component.Value<K>];
6
+ type ValueArgument<K extends Essential> = Component<K> extends true ? [value?: true] : [value: Component<K>];
7
7
  /** Values of components of `C` a spawner's first call may give, constant for every entity it spawns. */
8
8
  type Preset<C extends readonly Essential[]> = {
9
- readonly [K in C[number]]?: Component.Value<K>;
9
+ readonly [K in C[number]]?: Component<K>;
10
10
  };
11
11
  /** The value of each shared component of `C`, which a spawner's first call must give, since they choose the archetype. */
12
12
  type SharedPreset<C extends readonly Essential[]> = {
13
- readonly [K in C[number] & Shared]: Component.Value<K>;
13
+ readonly [K in C[number] & Shared]: Component<K>;
14
14
  };
15
15
  /**
16
16
  * Whether `C` names a shared component, so a spawner of it takes its constants: a list that isn't a tuple, whose
@@ -31,7 +31,7 @@ type Named<C extends readonly Essential[], P> = {
31
31
  */
32
32
  type Spawned<C extends readonly Essential[], P> = RequiresPreset<C> extends true ? [keyof P] extends [never] ? C & {
33
33
  readonly "error: a spawn of a shared component takes its value first, in its constants": {
34
- readonly [K in C[number] & Shared]: Component.Value<K>;
34
+ readonly [K in C[number] & Shared]: Component<K>;
35
35
  };
36
36
  } : C : C;
37
37
  /** Each component of `C` the constants `P` gave, whose value a spawn's values give again as a message naming it. */
@@ -3,9 +3,9 @@ import type { Resource } from '../resource/resource.js';
3
3
  import type { IsStruct } from '../schema/is-struct.js';
4
4
  /** Components whose values are structs, which kernels read and write. */
5
5
  export type StructComponent = {
6
- [K in Component.Key]: IsStruct<Component.Value<K>> extends true ? K : never;
6
+ [K in Component.Key]: IsStruct<Component<K>> extends true ? K : never;
7
7
  }[Component.Key];
8
8
  /** Resources whose values are structs, which kernels read. */
9
9
  export type StructResource = {
10
- [K in Resource.Key]: IsStruct<Resource.Value<K>> extends true ? K : never;
10
+ [K in Resource.Key]: IsStruct<Resource<K>> extends true ? K : never;
11
11
  }[Resource.Key];
@@ -1,6 +1,6 @@
1
1
  import type { Component } from '../component/component.js';
2
2
  /** Components a spawn or add may leave out: a tag, whose value is `true`, and one whose type allows `null`, its start. */
3
- type Omissible<K extends Component.Key> = Component.Value<K> extends true ? K : null extends Component.Value<K> ? K : never;
3
+ type Omissible<K extends Component.Key> = Component<K> extends true ? K : null extends Component<K> ? K : never;
4
4
  /**
5
5
  * The values a spawn or add of the components `C` takes, keyed by component and exact against `C`, but those `Given`
6
6
  * already: a tag needs no value, a component whose type allows `null` may be left out to start at `null`, and every
@@ -8,10 +8,10 @@ type Omissible<K extends Component.Key> = Component.Value<K> extends true ? K :
8
8
  * tuple takes any of its components' values.
9
9
  */
10
10
  export type ValuesOf<C extends readonly Component.Key[], Given extends PropertyKey = never> = number extends C["length"] ? {
11
- readonly [K in Exclude<C[number], Given>]?: Component.Value<K>;
11
+ readonly [K in Exclude<C[number], Given>]?: Component<K>;
12
12
  } : {
13
- readonly [K in Exclude<C[number], Given> as K extends Omissible<K> ? never : K]: Component.Value<K>;
13
+ readonly [K in Exclude<C[number], Given> as K extends Omissible<K> ? never : K]: Component<K>;
14
14
  } & {
15
- readonly [K in Exclude<C[number], Given> as K extends Omissible<K> ? K : never]?: Component.Value<K>;
15
+ readonly [K in Exclude<C[number], Given> as K extends Omissible<K> ? K : never]?: Component<K>;
16
16
  };
17
17
  export {};