@trading-game/design-intelligence-layer 0.16.1 → 0.16.3

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/AGENTS.md CHANGED
@@ -61,6 +61,27 @@ cp node_modules/@trading-game/design-intelligence-layer/guides/rules/design-syst
61
61
 
62
62
  ---
63
63
 
64
+ ## Step 4 — New-component release checklist (MANDATORY)
65
+
66
+ Every time you add a new component (UI primitive or Block) to this package, **all** of the following must land in the same PR. Skipping any one of these has shipped broken releases before — npm consumers got a version where the component existed in the demo but couldn't be imported. Do not skip a step.
67
+
68
+ 1. **Source file** — `components/ui/<name>.tsx` (or `components/blocks/<name>-block.tsx`)
69
+ 2. **Public export** — add the matching `export * from "../components/<…>/<name>"` line to `src/index.ts`. **This is what gates whether npm consumers receive the component at all.** The demo at `app/page.tsx` imports via the `@/components/...` alias and will work without this — but the published package will not ship the component until this line exists.
70
+ 3. **Auto-generated registry** — run `npm run generate:registry` so `app/component-registry.generated.ts` picks the new file up.
71
+ 4. **Demo entry** — add a sidebar entry in the `componentNames` list in `app/page.tsx`, and a `case "<Name>":` block in the `SectionContent` switch that renders representative variants.
72
+ 5. **README** — add a row in the "Available components" table and a per-component section explaining variants / slots / behaviour.
73
+ 6. **Design system guide** (`guides/design-system-guide/trading-game-ds-guide.md`) — add a row in the §8 component list table and a styling-notes entry covering tokens used, edge cases, and `aria` posture.
74
+ 7. **Build verification** — run `npm run build` and confirm the component name appears in `dist/index.js` and `dist/index.d.ts` before tagging a release:
75
+ ```bash
76
+ npm run build
77
+ grep -c "<ComponentName>" dist/index.js dist/index.d.ts # both > 0
78
+ ```
79
+ 8. **Version + publish** — only after every step above is checked in, bump `package.json`, commit, push, tag `v<version>`, and let the workflow publish.
80
+
81
+ If any of these are missing at the time of release, the published package is broken — fix and re-release before moving on.
82
+
83
+ ---
84
+
64
85
  ## Reference
65
86
 
66
87
  - Full token + component reference: `node_modules/@trading-game/design-intelligence-layer/README.md`
package/README.md CHANGED
@@ -308,7 +308,8 @@ Dismissible **promotional / marketing** surface — for feature launches, offers
308
308
  layout="inline"
309
309
  title={<>Spring release <b>is here.</b></>} // wrap emphasis in <b> for brand-blue accent
310
310
  description="New features just landed — take a look at what's changed."
311
- icon={<MyIcon />} // omit to use the default 40px brand-blue gift badge
311
+ glyph={<Sparkles className="size-5" />} // swaps the icon *inside* the default brand badge (default <Gift />)
312
+ icon={<MyIcon />} // full override — replaces the brand badge entirely; null to omit
312
313
  action="Get started" // string wrapped in Button variant="primary"
313
314
  onDismiss={() => setOpen(false)} // when provided, close X is rendered
314
315
  dismissLabel="Dismiss" // aria-label for the close X
@@ -335,8 +336,8 @@ Dismissible **promotional / marketing** surface — for feature launches, offers
335
336
 
336
337
  **Visual:**
337
338
  - Surface: 135° diagonal gradient `#EBEBFF → #FFFFFF` with `border-primary/20` light-blue edge.
338
- - Default icon: 40px brand-blue circle with a white `Gift` glyph. Override via `icon` (pass any `ReactNode`) or `icon={null}` to omit.
339
- - Default action button: `Button variant="primary"` (single inline action) or `[Secondary, Primary]` pair (card actions). Pass `<Button>` elements explicitly to override variant/size.
339
+ - Default icon: 40px brand-blue square (4px corners, matches the trading.game logo) with a white `Gift` glyph. Swap just the glyph via the `glyph` prop (e.g. `<Sparkles className="size-5" />`); replace the entire badge via the `icon` prop; or `icon={null}` to omit the column entirely.
340
+ - Default action button: `Button variant="secondary"` size `sm` for every slot (inline `action` and both `actions[]` in card). Pass `<Button>` elements explicitly to override variant/size.
340
341
  - Title supports `<b>` children styled with `text-primary` for in-line brand-blue accent.
341
342
  - Close X (32px) hovers to `bg-secondary-hover`.
342
343