@xenosystem/generate 0.0.6 โ†’ 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,33 +1,33 @@
1
- # @xenosystem/generate
2
-
3
- **Declarations โ†’ per-platform artifacts**
4
-
5
- > Status: ๐Ÿ”ต **planned** โ€” see [`../../SPEC.md`](../../SPEC.md) ยง13 for the build order.
6
-
7
- Turns `@xenosystem/elements` declarations into artifacts for each runtime โ€” the Style
8
- Dictionary model, generalised past tokens to geometry and state machines.
9
-
10
- **Not built yet** โ€” Phase 2.
11
-
12
- ## Pipeline
13
-
14
- ```
15
- Figma / XENO Canvas โ†’ SVGO (30โ€“70% reduction) โ†’ declaration generator โ†’ @xenosystem/elements โ†’ CI
16
- โ”‚
17
- โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
18
- โ–ผ โ–ผ โ–ผ
19
- elements-react XenoElementsKit xenosystem-elements
20
- (npm) (SPM) (Maven)
21
- ```
22
-
23
- Swift cannot be an npm package, which is why renderers ship on each runtime's native channel
24
- rather than pretending to be siblings in one scope.
25
-
26
- ## Rules
27
-
28
- - **Never hand-author a renderer component.** 300 hand-maintained animated components will rot.
29
- - The generator is the only writer of generated output; generated files are marked as such and
30
- are not edited by hand or by an agent.
31
-
32
- ---
33
- Part of [`xeno-elements`](../../README.md). Visual authority: [`DESIGN_SYSTEM.md`](../../DESIGN_SYSTEM.md) โ€” LOCKED.
1
+ # @xenosystem/generate
2
+
3
+ **Declarations โ†’ per-platform artifacts**
4
+
5
+ > Status: ๐Ÿ”ต **planned** โ€” see [`../../SPEC.md`](../../SPEC.md) ยง13 for the build order.
6
+
7
+ Turns `@xenosystem/elements` declarations into artifacts for each runtime โ€” the Style
8
+ Dictionary model, generalised past tokens to geometry and state machines.
9
+
10
+ **Not built yet** โ€” Phase 2.
11
+
12
+ ## Pipeline
13
+
14
+ ```
15
+ Figma / XENO Canvas โ†’ SVGO (30โ€“70% reduction) โ†’ declaration generator โ†’ @xenosystem/elements โ†’ CI
16
+ โ”‚
17
+ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
18
+ โ–ผ โ–ผ โ–ผ
19
+ elements-react XenoElementsKit xenosystem-elements
20
+ (npm) (SPM) (Maven)
21
+ ```
22
+
23
+ Swift cannot be an npm package, which is why renderers ship on each runtime's native channel
24
+ rather than pretending to be siblings in one scope.
25
+
26
+ ## Rules
27
+
28
+ - **Never hand-author a renderer component.** 300 hand-maintained animated components will rot.
29
+ - The generator is the only writer of generated output; generated files are marked as such and
30
+ are not edited by hand or by an agent.
31
+
32
+ ---
33
+ Part of [`xeno-elements`](../../README.md). Visual authority: [`DESIGN_SYSTEM.md`](../../DESIGN_SYSTEM.md) โ€” LOCKED.
@@ -12,6 +12,15 @@ export interface ManifestEntry {
12
12
  /** Axes the element honours โ€” empty for a degenerate icon. */
13
13
  readonly axes: readonly string[];
14
14
  readonly signals: readonly string[];
15
+ /**
16
+ * Per-axis value narrowing, when the element honours only some values of an axis
17
+ * (`{ selection: ['off', 'on'] }` for a two-state morph). Absent = every value of every axis.
18
+ * Surfaced because this manifest is what an agent reads: without it a consumer would infer a
19
+ * `mixed` state the element deliberately does not have.
20
+ */
21
+ readonly values?: {
22
+ readonly [axis: string]: readonly string[];
23
+ };
15
24
  /** Geometry variant keys beyond `base` (e.g. `selection:on`), sorted. */
16
25
  readonly variants: readonly string[];
17
26
  readonly tags: readonly string[];
package/dist/manifest.js CHANGED
@@ -6,6 +6,7 @@ export const toEntry = (d) => ({
6
6
  weight: d.contract.weight,
7
7
  axes: d.contract.axes,
8
8
  signals: d.contract.signals,
9
+ ...(d.contract.values ? { values: d.contract.values } : {}),
9
10
  variants: Object.keys(d.geometry)
10
11
  .filter((k) => k !== 'base')
11
12
  .sort(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xenosystem/generate",
3
- "version": "0.0.6",
3
+ "version": "0.0.8",
4
4
  "license": "UNLICENSED",
5
5
  "description": "XENO declarations โ†’ per-platform artifacts. The only writer of generated output.",
6
6
  "author": "XENO Corporation <emilian@bnkrsys.com>",
@@ -20,14 +20,14 @@
20
20
  ],
21
21
  "scripts": {
22
22
  "prebuild": "npm run build -w @xenosystem/elements",
23
- "build": "tsc -p tsconfig.json",
23
+ "build": "node -e \"require('fs').rmSync('dist',{recursive:true,force:true})\" && tsc -p tsconfig.json",
24
24
  "pretypecheck": "npm run build -w @xenosystem/elements",
25
25
  "typecheck": "tsc -p tsconfig.json --noEmit && tsc -p tsconfig.test.json --noEmit",
26
26
  "test": "vitest run",
27
27
  "artifacts": "npm run build && node scripts/build-artifacts.mjs"
28
28
  },
29
29
  "dependencies": {
30
- "@xenosystem/elements": "0.0.6"
30
+ "@xenosystem/elements": "0.0.8"
31
31
  },
32
32
  "devDependencies": {
33
33
  "typescript": "^5.4.0"