@nadicodeai/ui 4.0.2 → 4.0.4
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 +14 -25
- package/dist/components/brand.d.ts.map +1 -1
- package/dist/components/brand.js +7 -3
- package/package.json +2 -2
package/AGENTS.md
CHANGED
|
@@ -1,30 +1,19 @@
|
|
|
1
1
|
# @nadicodeai/ui
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Shared React components, primitives, Agent interfaces, and page compositions.
|
|
4
|
+
Source lives in `src/`; consumers receive `dist/` through `package.json`
|
|
5
|
+
exports.
|
|
4
6
|
|
|
5
|
-
|
|
7
|
+
- Component changes and admission: `docs/contract.md`.
|
|
8
|
+
- Consumer setup: `docs/consuming-cross-repo.md`.
|
|
9
|
+
- Tokens, CSS, motion, and assets: `../design-system/DESIGN.md`.
|
|
10
|
+
- Agent visuals: `docs/agent-visual.md`.
|
|
11
|
+
- Package releases: `../../docs/agents/publish.md`.
|
|
6
12
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
| `npm run dev -w @nadicodeai/ui` | Watch `src/`, refresh `dist/` |
|
|
11
|
-
| `npm run build:dev -w @nadicodeai/ui` | One-shot incremental `dist/` refresh |
|
|
12
|
-
| `npm run build -w @nadicodeai/ui` | Emit `dist/` before packing or app builds |
|
|
13
|
-
| `npm run generate:brand-icons -w @nadicodeai/ui` | After editing the allow-list in `scripts/build-brand-icons.mjs` |
|
|
14
|
-
| `npm pack --dry-run -w @nadicodeai/ui` | What consumers receive, after a surface, export, CSS or docs change |
|
|
13
|
+
`npm run dev -w @nadicodeai/ui` watches source and refreshes `dist/`;
|
|
14
|
+
`build:dev` refreshes it once. Remaining commands live in `package.json`;
|
|
15
|
+
validation policy is in `../../docs/agents/develop.md`.
|
|
15
16
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
| --- | --- |
|
|
20
|
-
| Design-language terms | `../design-system/CONTEXT.md` |
|
|
21
|
-
| Invariants, component admission, section vocabulary, consumer boundary | `docs/contract.md` |
|
|
22
|
-
| Third-party brand marks | [Admission Rules](docs/contract.md#admission-rules); the NadicodeAI logo is `BrandLockup`, `BrandMark`, `BrandWordmark` |
|
|
23
|
-
| Consumer installation and stylesheet setup | `docs/consuming-cross-repo.md` |
|
|
24
|
-
| Tokens, modes, themes, cascade, the public stylesheet | `../design-system/DESIGN.md` and `../design-system/AGENTS.md` |
|
|
25
|
-
| Motion | `../design-system/DESIGN.md`, `src/lib/motion.ts`, then the `product-design` skill |
|
|
26
|
-
| Which component subpaths exist | `package.json` `exports`; the `./components/*` wildcard over `src/components/` is the whole surface |
|
|
27
|
-
| shadcn and assistant-ui discovery | the live CLIs `npx shadcn@latest` and `npx assistant-ui@latest`; `--overwrite` needs a maintainer ask |
|
|
28
|
-
| Releasing and publishing | `../../docs/agents/publish.md` |
|
|
29
|
-
| Website page assembly | `../../apps/website/AGENTS.md`. Portal screens: `../../apps/portal/AGENTS.md` |
|
|
30
|
-
| User-visible UI work | the `product-design` skill, loaded after this file |
|
|
17
|
+
When the brand-icon allow-list changes, run `generate:brand-icons`.
|
|
18
|
+
Use current shadcn or assistant-ui discovery for their components;
|
|
19
|
+
`--overwrite` requires authorization to replace the affected component.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../src/components/brand.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,KAAK,cAAc,GAAG,IAAI,CACxB,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAC3B,aAAa,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,CACnD,GAAG;IACF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC;CACpD,CAAC;AA6BF,iBAAS,SAAS,CAAC,EACjB,GAAkB,EAClB,SAAS,EACT,KAAU,EACV,MAAW,EACX,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"brand.d.ts","sourceRoot":"","sources":["../../src/components/brand.tsx"],"names":[],"mappings":"AASA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,KAAK,cAAc,GAAG,IAAI,CACxB,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,EAC3B,aAAa,GAAG,YAAY,GAAG,UAAU,GAAG,MAAM,CACnD,GAAG;IACF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,CAAC;CACpD,CAAC;AA6BF,iBAAS,SAAS,CAAC,EACjB,GAAkB,EAClB,SAAS,EACT,KAAU,EACV,MAAW,EACX,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,qBA6BhB;AAED,iBAAS,WAAW,CAAC,EACnB,GAAkB,EAClB,SAAS,EACT,KAAW,EACX,MAAW,EACX,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,qBAuBhB;AAED,iBAAS,aAAa,CAAC,EACrB,GAAkB,EAClB,SAAS,EACT,KAAU,EACV,MAAW,EACX,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,cAAc,qBAoBhB;AAED,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC"}
|
package/dist/components/brand.js
CHANGED
|
@@ -24,9 +24,13 @@ function BrandMark({ alt = "NadicodeAI", className, width = 32, height = 32, dec
|
|
|
24
24
|
// The canonical geometry contains a named clip reference. Scope it per
|
|
25
25
|
// instance so nav + footer marks never emit duplicate DOM ids; useId is SSR-safe.
|
|
26
26
|
const idPrefix = `mklip-${React.useId().replace(/[^a-zA-Z0-9]/g, "")}-`;
|
|
27
|
+
// The verde link is the brand anchor, `{colors.primary}`, never the shadcn
|
|
28
|
+
// `--primary` role: that role is the neutral action family, so painting the
|
|
29
|
+
// link with it turns the logo monochrome. The `.dark` remap flips
|
|
30
|
+
// `--nc-primary` under any dark ancestor, the always-dark nav included.
|
|
27
31
|
const geometry = resolveLogoGeometry(logoMarkGeometry, {
|
|
28
32
|
idPrefix,
|
|
29
|
-
paints: { ink: "currentColor", primary: "var(--primary)" },
|
|
33
|
+
paints: { ink: "currentColor", primary: "var(--nc-primary)" },
|
|
30
34
|
});
|
|
31
35
|
return (_jsx("svg", { "data-slot": "brand-mark", xmlns: "http://www.w3.org/2000/svg", viewBox: geometry.viewBox, width: width, height: height, className: cn("block size-6", className), ...accessibilityProps(alt), ...props, children: renderGeometryNodes(geometry.nodes) }));
|
|
32
36
|
}
|
|
@@ -35,14 +39,14 @@ function BrandLockup({ alt = "NadicodeAI", className, width = 154, height = 32,
|
|
|
35
39
|
const idPrefix = `lklip-${React.useId().replace(/[^a-zA-Z0-9]/g, "")}-`;
|
|
36
40
|
const geometry = resolveLogoGeometry(logoLockupGeometry, {
|
|
37
41
|
idPrefix,
|
|
38
|
-
paints: { ink: "currentColor", primary: "var(--primary)" },
|
|
42
|
+
paints: { ink: "currentColor", primary: "var(--nc-primary)" },
|
|
39
43
|
});
|
|
40
44
|
return (_jsx("svg", { "data-slot": "brand-lockup", xmlns: "http://www.w3.org/2000/svg", viewBox: geometry.viewBox, width: width, height: height, className: cn("block h-8 w-auto", className), ...accessibilityProps(alt), ...props, children: renderGeometryNodes(geometry.nodes) }));
|
|
41
45
|
}
|
|
42
46
|
function BrandWordmark({ alt = "NadicodeAI", className, width = 96, height = 30, decoding, ...props }) {
|
|
43
47
|
void decoding;
|
|
44
48
|
const geometry = resolveLogoGeometry(logoWordmarkGeometry, {
|
|
45
|
-
paints: { ink: "currentColor", primary: "var(--primary)" },
|
|
49
|
+
paints: { ink: "currentColor", primary: "var(--nc-primary)" },
|
|
46
50
|
});
|
|
47
51
|
return (_jsx("svg", { "data-slot": "brand-wordmark", xmlns: "http://www.w3.org/2000/svg", viewBox: geometry.viewBox, width: width, height: height, className: cn("block h-6 w-auto", className), ...accessibilityProps(alt), ...props, children: renderGeometryNodes(geometry.nodes) }));
|
|
48
52
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nadicodeai/ui",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"@assistant-ui/react": "0.15.1",
|
|
62
62
|
"@assistant-ui/react-markdown": "0.14.8",
|
|
63
63
|
"@base-ui/react": "^1.6.0",
|
|
64
|
-
"@nadicodeai/design-system": "4.0.
|
|
64
|
+
"@nadicodeai/design-system": "4.0.4",
|
|
65
65
|
"@paper-design/shaders": "0.0.78",
|
|
66
66
|
"class-variance-authority": "^0.7.1",
|
|
67
67
|
"clsx": "^2.1.1",
|