@nadicodeai/ui 0.5.2 → 0.6.0
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 +12 -3
- package/README.md +18 -1
- package/dist/components/accordion.js +1 -1
- package/dist/components/alert-dialog.js +5 -5
- package/dist/components/alert.js +1 -1
- package/dist/components/badge.js +4 -4
- package/dist/components/button-group.js +4 -4
- package/dist/components/button.d.ts.map +1 -1
- package/dist/components/button.js +12 -12
- package/dist/components/calendar.js +2 -2
- package/dist/components/card.js +3 -3
- package/dist/components/chart-breakdown-table.d.ts +39 -0
- package/dist/components/chart-breakdown-table.d.ts.map +1 -0
- package/dist/components/chart-breakdown-table.js +29 -0
- package/dist/components/chart-bullet-bar.d.ts +36 -0
- package/dist/components/chart-bullet-bar.d.ts.map +1 -0
- package/dist/components/chart-bullet-bar.js +30 -0
- package/dist/components/chart-date-range-control.d.ts +12 -0
- package/dist/components/chart-date-range-control.d.ts.map +1 -0
- package/dist/components/chart-date-range-control.js +59 -0
- package/dist/components/chart-date-range.d.ts +38 -0
- package/dist/components/chart-date-range.d.ts.map +1 -0
- package/dist/components/chart-date-range.js +63 -0
- package/dist/components/chart-delta.d.ts +28 -0
- package/dist/components/chart-delta.d.ts.map +1 -0
- package/dist/components/chart-delta.js +32 -0
- package/dist/components/chart-entity-colors.d.ts +37 -0
- package/dist/components/chart-entity-colors.d.ts.map +1 -0
- package/dist/components/chart-entity-colors.js +68 -0
- package/dist/components/chart-kpi-stat.d.ts +33 -0
- package/dist/components/chart-kpi-stat.d.ts.map +1 -0
- package/dist/components/chart-kpi-stat.js +7 -0
- package/dist/components/chart-sparkline.d.ts +45 -0
- package/dist/components/chart-sparkline.d.ts.map +1 -0
- package/dist/components/chart-sparkline.js +44 -0
- package/dist/components/chart-time-series.d.ts +33 -0
- package/dist/components/chart-time-series.d.ts.map +1 -0
- package/dist/components/chart-time-series.js +136 -0
- package/dist/components/chart.js +1 -1
- package/dist/components/checkbox.js +1 -1
- package/dist/components/combobox.js +5 -5
- package/dist/components/command.js +4 -4
- package/dist/components/context-menu.js +6 -6
- package/dist/components/dialog.d.ts +8 -4
- package/dist/components/dialog.d.ts.map +1 -1
- package/dist/components/dialog.js +6 -6
- package/dist/components/drawer.d.ts.map +1 -1
- package/dist/components/drawer.js +4 -4
- package/dist/components/dropdown-menu.js +7 -7
- package/dist/components/empty.js +2 -2
- package/dist/components/field.js +3 -3
- package/dist/components/hover-card.js +1 -1
- package/dist/components/input-group.js +5 -5
- package/dist/components/input-otp.d.ts.map +1 -1
- package/dist/components/input-otp.js +8 -3
- package/dist/components/input.js +1 -1
- package/dist/components/item.d.ts.map +1 -1
- package/dist/components/item.js +5 -5
- package/dist/components/menubar.js +8 -8
- package/dist/components/native-select.js +1 -1
- package/dist/components/navigation-menu.js +5 -5
- package/dist/components/popover.js +1 -1
- package/dist/components/radio-group.js +1 -1
- package/dist/components/resizable.js +1 -1
- package/dist/components/scroll-area.js +1 -1
- package/dist/components/select.js +4 -4
- package/dist/components/sheet.d.ts +4 -2
- package/dist/components/sheet.d.ts.map +1 -1
- package/dist/components/sheet.js +5 -5
- package/dist/components/sidebar.d.ts +7 -3
- package/dist/components/sidebar.d.ts.map +1 -1
- package/dist/components/sidebar.js +16 -16
- package/dist/components/slider.js +1 -1
- package/dist/components/spinner.js +1 -1
- package/dist/components/switch.js +1 -1
- package/dist/components/tabs.js +2 -2
- package/dist/components/textarea.js +1 -1
- package/dist/components/theme-mode-switcher.js +1 -1
- package/dist/components/toggle-group.js +2 -2
- package/dist/components/toggle.js +5 -5
- package/dist/components/tooltip.js +1 -1
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -0
- package/dist/styles/globals.css +25 -3
- package/dist/styles/shadcn.tailwind.css +629 -0
- package/docs/agents/nadicodeai-ui.md +24 -1
- package/docs/component-classification.md +3 -3
- package/docs/product-compositions.md +2 -2
- package/docs/product-sections.md +2 -2
- package/llms.txt +11 -1
- package/package.json +5 -3
|
@@ -79,6 +79,15 @@ Current shipped product subpaths:
|
|
|
79
79
|
- `@nadicodeai/ui/components/agent-tool-approval`
|
|
80
80
|
- `@nadicodeai/ui/components/artifact-panel`
|
|
81
81
|
- `@nadicodeai/ui/components/automation-section`
|
|
82
|
+
- `@nadicodeai/ui/components/chart-breakdown-table`
|
|
83
|
+
- `@nadicodeai/ui/components/chart-bullet-bar`
|
|
84
|
+
- `@nadicodeai/ui/components/chart-date-range`
|
|
85
|
+
- `@nadicodeai/ui/components/chart-date-range-control`
|
|
86
|
+
- `@nadicodeai/ui/components/chart-delta`
|
|
87
|
+
- `@nadicodeai/ui/components/chart-entity-colors`
|
|
88
|
+
- `@nadicodeai/ui/components/chart-kpi-stat`
|
|
89
|
+
- `@nadicodeai/ui/components/chart-sparkline`
|
|
90
|
+
- `@nadicodeai/ui/components/chart-time-series`
|
|
82
91
|
- `@nadicodeai/ui/components/dashboard-shell`
|
|
83
92
|
- `@nadicodeai/ui/components/desktop-shell`
|
|
84
93
|
- `@nadicodeai/ui/components/feedback-state`
|
|
@@ -103,7 +112,21 @@ product-specific copy in the consuming app.
|
|
|
103
112
|
Generic data tables, command palettes, and chart cards are app-owned shadcn
|
|
104
113
|
registry adaptations. Start from `@shadcn/data-table-demo`,
|
|
105
114
|
`@shadcn/command-dialog`, `@shadcn/chart`, or the relevant `@shadcn/chart-*`
|
|
106
|
-
block/example instead of importing a NadicodeAI product abstraction.
|
|
115
|
+
block/example instead of importing a NadicodeAI product abstraction. The
|
|
116
|
+
console chart kit subpaths (`chart-*`) are the plan-approved exception
|
|
117
|
+
(issue #166, ADR 0010): use them for KPI stats, sparklines, stacked
|
|
118
|
+
time-series, cap meters, breakdown tables, entity-color assignment, and the
|
|
119
|
+
date-range control; the chart cards that arrange those widgets stay app-owned.
|
|
120
|
+
The URL codec in `chart-date-range` is server-safe; import it (not
|
|
121
|
+
`chart-date-range-control`) from Server Components.
|
|
122
|
+
|
|
123
|
+
Every data-shaped chart names a data alternative so its data is reachable
|
|
124
|
+
without vision: the time-series charts ship a visually hidden `<table>` twin,
|
|
125
|
+
`BreakdownTable` is itself a real `<table>`, and a standalone `Sparkline`
|
|
126
|
+
renders an sr-only ordered list of its point values beside the `role="img"`
|
|
127
|
+
svg. `BulletBar` (data fully in `aria-valuetext` plus the visible value) and
|
|
128
|
+
`KpiStat` (data fully in visible text) carry no separate table twin by design;
|
|
129
|
+
this narrowing is deliberate, not a gap.
|
|
107
130
|
|
|
108
131
|
Recommended migration order:
|
|
109
132
|
|
|
@@ -19,9 +19,9 @@ copy, and behavior.
|
|
|
19
19
|
|
|
20
20
|
| Component | Classification | Built on | Required states | Package-owned accessibility | Fixture |
|
|
21
21
|
| --- | --- | --- | --- | --- | --- |
|
|
22
|
-
| `SettingsSection` | Net-new NadicodeAI product composition. | shadcn `FieldGroup` plus standard section markup. | header with optional actions; field group content. | section structure; no form behavior. | `../tests/product-compositions.test.ts` |
|
|
23
|
-
| `SettingsField` | Net-new NadicodeAI product composition. | shadcn `Field`, `FieldLabel`, `FieldDescription`, and `FieldError`. | valid and invalid field rows; disabled rows. | `data-invalid`, `aria-invalid`, `aria-describedby`, label `htmlFor`. | `../tests/product-compositions.test.ts` |
|
|
24
|
-
| `FeedbackState` | Net-new central product state composition adapted from shadcn empty-state patterns. | shadcn `Empty` and lucide status icons. | `empty`, `loading`, `saving`, `error`, `permission`, `offline`, `no-results`, `fatal`. | `role="status"` for loading/saving; `role="alert"` for error, permission, offline, and fatal. | `../tests/product-compositions.test.ts` |
|
|
22
|
+
| `SettingsSection` | Net-new NadicodeAI product composition. | shadcn `FieldGroup` plus standard section markup. | header with optional actions; field group content. | section structure; no form behavior. | `../tests/guards/product-compositions.test.ts` |
|
|
23
|
+
| `SettingsField` | Net-new NadicodeAI product composition. | shadcn `Field`, `FieldLabel`, `FieldDescription`, and `FieldError`. | valid and invalid field rows; disabled rows. | `data-invalid`, `aria-invalid`, `aria-describedby`, label `htmlFor`. | `../tests/guards/product-compositions.test.ts` |
|
|
24
|
+
| `FeedbackState` | Net-new central product state composition adapted from shadcn empty-state patterns. | shadcn `Empty` and lucide status icons. | `empty`, `loading`, `saving`, `error`, `permission`, `offline`, `no-results`, `fatal`. | `role="status"` for loading/saving; `role="alert"` for error, permission, offline, and fatal. | `../tests/guards/product-compositions.test.ts` |
|
|
25
25
|
|
|
26
26
|
## App-Owned Boundaries
|
|
27
27
|
|
|
@@ -17,8 +17,8 @@ import { SettingsSection } from "@nadicodeai/ui/components/settings-section"
|
|
|
17
17
|
|
|
18
18
|
Fixtures live in:
|
|
19
19
|
|
|
20
|
-
- [`../tests/product-compositions.test.ts`](../tests/product-compositions.test.ts)
|
|
21
|
-
- [`../tests/product-compositions-ssr.test.ts`](../tests/product-compositions-ssr.test.ts)
|
|
20
|
+
- [`../tests/guards/product-compositions.test.ts`](../tests/guards/product-compositions.test.ts)
|
|
21
|
+
- [`../tests/guards/product-compositions-ssr.test.ts`](../tests/guards/product-compositions-ssr.test.ts)
|
|
22
22
|
|
|
23
23
|
## Boundaries
|
|
24
24
|
|
package/docs/product-sections.md
CHANGED
|
@@ -11,8 +11,8 @@ import { PluginSlotBoundary } from "@nadicodeai/ui/components/plugin-slot-bounda
|
|
|
11
11
|
|
|
12
12
|
Fixtures live in:
|
|
13
13
|
|
|
14
|
-
- [`../tests/product-sections.test.ts`](../tests/product-sections.test.ts)
|
|
15
|
-
- [`../tests/product-sections-ssr.test.ts`](../tests/product-sections-ssr.test.ts)
|
|
14
|
+
- [`../tests/guards/product-sections.test.ts`](../tests/guards/product-sections.test.ts)
|
|
15
|
+
- [`../tests/guards/product-sections-ssr.test.ts`](../tests/guards/product-sections-ssr.test.ts)
|
|
16
16
|
|
|
17
17
|
## Boundaries
|
|
18
18
|
|
package/llms.txt
CHANGED
|
@@ -32,6 +32,15 @@ Component surface:
|
|
|
32
32
|
- `@nadicodeai/ui/components/agent-tool-approval`
|
|
33
33
|
- `@nadicodeai/ui/components/artifact-panel`
|
|
34
34
|
- `@nadicodeai/ui/components/automation-section`
|
|
35
|
+
- `@nadicodeai/ui/components/chart-breakdown-table`
|
|
36
|
+
- `@nadicodeai/ui/components/chart-bullet-bar`
|
|
37
|
+
- `@nadicodeai/ui/components/chart-date-range`
|
|
38
|
+
- `@nadicodeai/ui/components/chart-date-range-control`
|
|
39
|
+
- `@nadicodeai/ui/components/chart-delta`
|
|
40
|
+
- `@nadicodeai/ui/components/chart-entity-colors`
|
|
41
|
+
- `@nadicodeai/ui/components/chart-kpi-stat`
|
|
42
|
+
- `@nadicodeai/ui/components/chart-sparkline`
|
|
43
|
+
- `@nadicodeai/ui/components/chart-time-series`
|
|
35
44
|
- `@nadicodeai/ui/components/dashboard-shell`
|
|
36
45
|
- `@nadicodeai/ui/components/desktop-shell`
|
|
37
46
|
- `@nadicodeai/ui/components/feedback-state`
|
|
@@ -46,7 +55,8 @@ Package surface:
|
|
|
46
55
|
- Do not add top-level exports for recipes, blocks, agent, or terminal groupings without concrete source, built files, docs, and tests in the same package API decision.
|
|
47
56
|
- App routes own routing, persistence, auth behavior, runtime adapters, server state, app-specific copy, and app-owned product features/use cases.
|
|
48
57
|
- Product-specific names such as `operator-login`, portal activation, and customer credential control stay out of package components.
|
|
49
|
-
- Generic data tables, command palettes, and chart cards are app-owned shadcn registry adaptations, not NadicodeAI package abstractions.
|
|
58
|
+
- Generic data tables, command palettes, and chart cards are app-owned shadcn registry adaptations, not NadicodeAI package abstractions. The `chart-*` console chart kit subpaths are plan-approved package surface (issue #166, ADR 0010); chart cards that arrange them stay app-owned.
|
|
59
|
+
- The date-range URL codec (`encodeDateRange`/`decodeDateRange`) ships server-safe from `@nadicodeai/ui/components/chart-date-range`; the interactive picker is `@nadicodeai/ui/components/chart-date-range-control`.
|
|
50
60
|
- Consumer migration order: web admin or portal validation slice first, installer second, desktop shell third, desktop chat last, TUI through `docs/terminal-tui-semantics.md`.
|
|
51
61
|
- Read `docs/migration/nadia-consumer-readiness.md` before migrating a consumer; it records CSS requirements, public import paths, fixture rules, and readiness gates.
|
|
52
62
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nadicodeai/ui",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
],
|
|
43
43
|
"scripts": {
|
|
44
44
|
"dev": "node scripts/dev-build.mjs --watch",
|
|
45
|
-
"build": "rm -rf dist && tsc -p tsconfig.build.json && node scripts/fix-dist-imports.mjs &&
|
|
45
|
+
"build": "rm -rf dist && tsc -p tsconfig.build.json && node scripts/fix-dist-imports.mjs && node scripts/build-styles.mjs",
|
|
46
46
|
"build:fast": "node scripts/dev-build.mjs",
|
|
47
47
|
"prepack": "npm run build",
|
|
48
48
|
"lint": "eslint --max-warnings=0",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
},
|
|
52
52
|
"dependencies": {
|
|
53
53
|
"@base-ui/react": "^1.6.0",
|
|
54
|
-
"@nadicodeai/design-system": "0.
|
|
54
|
+
"@nadicodeai/design-system": "0.6.0",
|
|
55
55
|
"@rive-app/react-webgl2": "^4.29.1",
|
|
56
56
|
"@streamdown/cjk": "^1.0.3",
|
|
57
57
|
"@streamdown/code": "^1.1.1",
|
|
@@ -80,6 +80,7 @@
|
|
|
80
80
|
"streamdown": "^2.5.0",
|
|
81
81
|
"tailwind-merge": "^3.0.0",
|
|
82
82
|
"tokenlens": "^1.3.1",
|
|
83
|
+
"tw-animate-css": "^1.4.0",
|
|
83
84
|
"use-stick-to-bottom": "^1.1.6"
|
|
84
85
|
},
|
|
85
86
|
"peerDependencies": {
|
|
@@ -95,6 +96,7 @@
|
|
|
95
96
|
"eslint": "^9.39.4",
|
|
96
97
|
"react": "19.2.7",
|
|
97
98
|
"react-dom": "19.2.7",
|
|
99
|
+
"shadcn": "4.13.0",
|
|
98
100
|
"tailwindcss": "^4.3.1",
|
|
99
101
|
"typescript": "^5",
|
|
100
102
|
"typescript-eslint": "^8.46.0",
|