@nadicodeai/design-system 12.1.56 → 12.1.58

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/DESIGN.md CHANGED
@@ -404,7 +404,7 @@ Product UI sits on one continuous workspace ground, `{colors.material-workspace}
404
404
 
405
405
  **In light, shadow carries height.** Every surface is white. Each recipe is a 1 px black edge at 8%, a tight contact shadow where the object meets the surface below, and an ambient shadow pushed down with negative spread so it stays under the object. The ambient shadow grows with the height, from 8 px of blur at resting to 128 px at modal.
406
406
 
407
- **In dark, tone carries height.** Shadows cannot show on true black, so each height's surface is one fixed step lighter than the page: resting `{colors.dark-material-resting}` #0c0c0c, raised `{colors.dark-material-raised}` #121212, floating `{colors.dark-material-floating}` #181818, modal `{colors.dark-material-modal}` #1c1c1c. The steps are equal-channel greys with nothing between or above them, so dark surfaces still read as black. `{colors.dark-ink}` keeps at least 14.5:1 and `{colors.dark-muted}` at least 5.2:1 on the lightest step. Each dark recipe adds an inset white hairline and a 1 px top highlight that strengthen with the height, and an outer black edge that separates a surface from a lighter one below it. A component names only its height and its role (`bg-card`, `bg-popover`); `@nadicodeai/ui/globals.css` sets those roles to the height's tone on the element.
407
+ **In dark, tone carries height.** Shadows cannot show on true black, so each height's surface is one fixed step lighter than the page: resting `{colors.dark-material-resting}`, raised `{colors.dark-material-raised}`, floating `{colors.dark-material-floating}`, modal `{colors.dark-material-modal}`. The steps are equal-channel greys with nothing between or above them, so dark surfaces still read as black. `{colors.dark-ink}` keeps at least 14.5:1 and `{colors.dark-muted}` at least 5.2:1 on the lightest step. Each dark recipe adds an inset white hairline and a 1 px top highlight that strengthen with the height, and an outer black edge that separates a surface from a lighter one below it. A component names only its height and its role (`bg-card`, `bg-popover`); `@nadicodeai/ui/globals.css` sets those roles to the height's tone on the element.
408
408
 
409
409
  | Surface | Fill | Height | Use |
410
410
  | --- | --- | --- | --- |
@@ -579,7 +579,7 @@ The company is **nadicode**, lowercase. Its logo has three forms:
579
579
 
580
580
  On `{colors.canvas}` and the soft canvases the letters are ink and the dot is `{colors.logo-dot}`; on black and other dark grounds the letters are `{colors.identity-white}` and the dot `{colors.dark-logo-dot}`, a brighter cobalt. `logo-dot` is the only colour a consumer paints the dot with. A one-ink form exists only where a single ink prints. On a photograph, the logo sits in a quiet area or over a scrim that keeps it legible, or on an approved solid field.
581
581
 
582
- Every form is drawn from one geometry source, `@nadicodeai/design-system/assets/logo-geometry`: on a 100-unit x-height, an 18-unit stroke with flat ends, bowls and the n's arch of radius 41, and a dot of radius 14 centred 79 units above the baseline over the i's stem. Nothing re-authors, traces, typesets or rearranges it. React draws `BrandWordmark` or `BrandMark`; there is no lockup, because the mark is already inside the wordmark.
582
+ Every form is drawn from one geometry source, `@nadicodeai/design-system/assets/logo-geometry`, which holds every dimension. Nothing re-authors, traces, typesets or rearranges it. React draws `BrandWordmark` or `BrandMark`; there is no lockup, because the mark is already inside the wordmark.
583
583
 
584
584
  The clear space is one stroke width of the rendered logo on every side. The minimum sizes are 72 px wide for the wordmark, 12 px for the mark and 16 px for the favicon on screen, and 25 mm and 5 mm in print. A meaningful standalone logo is named `nadicode`; inside a link or control that already has the name, the logo is hidden from assistive technology. Never redraw, retype, stretch, crop, rotate, recolour, outline, shadow, animate or add a gradient to a logo; never add a shape to the mark or move the dot. Other companies' marks, Agent orbs and generated imagery are not nadicode logos.
585
585
 
package/GLOSSARY.md CHANGED
@@ -57,7 +57,7 @@ The five colours that mark where a piece of agentic work stands: ready, running,
57
57
  A visual family outside the conversation renderer for work output and workflow state, such as memory, run progress, identity, and handoffs.
58
58
 
59
59
  **Agent orb**:
60
- The identity of one Agent across products: one of seven forms in one chosen colour, or Nadia's striped ribbon.
60
+ The identity of one Agent across products: one of seven forms in one chosen colour, or the fixed figure of Nadia or Sofia.
61
61
  _Avoid_: Agent glyph, Agent avatar, Agent visual
62
62
 
63
63
  **Product view**:
package/README.md CHANGED
@@ -103,24 +103,19 @@ Consumer overrides belong in an explicit later layer:
103
103
  `@google/design.md` CLI exports the YAML front matter, and
104
104
  `scripts/sd/design-tokens-fence.ts` reads the one `json design-tokens` fence.
105
105
  `scripts/sd/compose-token-graph.ts` joins them into the single `nadicode` token
106
- graph, checks that every alias resolves and points the allowed way (`core`
106
+ graph and checks that every alias resolves and points the allowed way (`core`
107
107
  reaches nothing outside itself; `semantic` names only `core`; a register reaches
108
- `core` and itself), and writes the two DTCG files after validating them against
109
- the vendored schema.
108
+ `core` and itself). `scripts/build.ts` validates the graph against the vendored
109
+ schema and writes the two DTCG files.
110
110
 
111
- Style Dictionary (`scripts/sd/`) emits the CSS from that graph:
112
-
113
- | File | Holds |
114
- | --- | --- |
115
- | `src/css/tokens.generated.css` | Every token as `--nc-*`, hex colours as `oklch()`, elevation as its full `box-shadow` per mode |
116
- | `src/css/modes.generated.css` | The `.dark` remap of every `X` / `dark-X` colour pair |
117
- | `src/css/theme.generated.css` | The shadcn role maps from the `semantic` group, the Tailwind v4 `@theme` bridge, and the raw `--color-nc-*` projection |
118
- | `src/css/theme-host.generated.css` | The same projection for a host that keeps its own shadcn roles |
111
+ Style Dictionary emits the CSS from that graph into `src/css/*.generated.css`;
112
+ the header of each `scripts/sd/format-*.ts` says what its output holds, and
113
+ `scripts/build.ts` (`OUTPUT 3b`) says what `theme-host.generated.css` holds.
119
114
 
120
115
  The source graph under `src/css/` is bundled into three public stylesheets:
121
116
  `css` (everything), `css/tokens` (the token layer alone) and `css/host` (for a
122
- host with base styles of its own). The cascade is
123
- `@layer tokens, theme, reset, foundation, motion, primitives, components;`.
117
+ host with base styles of its own). `src/css/index.css` declares the cascade's
118
+ layer order.
124
119
  Generated files and `dist/` are outputs: edit `DESIGN.md` and rebuild, never the
125
120
  output. CI rebuilds and fails when a committed generated file differs from the
126
121
  fresh build, and `tests/guards/` holds the structural checks on every output.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nadicodeai/design-system",
3
- "version": "12.1.56",
3
+ "version": "12.1.58",
4
4
  "type": "module",
5
5
  "publishConfig": {
6
6
  "access": "public"