@nomosui/react 0.4.1 → 0.5.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/README.md +2 -1
- package/SKILL.md +42 -0
- package/dist/index.js +1361 -143
- package/dist/mcp/bin.js +10856 -7346
- package/dist/types/components/accordion/accordion.d.ts +14 -0
- package/dist/types/components/accordion/manifest.d.ts +7 -0
- package/dist/types/components/alert-dialog/alert-dialog.d.ts +26 -0
- package/dist/types/components/alert-dialog/manifest.d.ts +7 -0
- package/dist/types/components/avatar/avatar.d.ts +17 -0
- package/dist/types/components/avatar/manifest.d.ts +6 -0
- package/dist/types/components/badge/badge.d.ts +1 -1
- package/dist/types/components/button/button.d.ts +1 -1
- package/dist/types/components/collapsible/collapsible.d.ts +11 -0
- package/dist/types/components/collapsible/manifest.d.ts +7 -0
- package/dist/types/components/dialog/dialog.d.ts +30 -0
- package/dist/types/components/dialog/manifest.d.ts +7 -0
- package/dist/types/{internal → components/dropdown-menu}/dropdown-menu.d.ts +5 -0
- package/dist/types/components/dropdown-menu/manifest.d.ts +7 -0
- package/dist/types/components/popover/manifest.d.ts +7 -0
- package/dist/types/components/popover/popover.d.ts +12 -0
- package/dist/types/components/scroll-area/manifest.d.ts +6 -0
- package/dist/types/components/scroll-area/scroll-area.d.ts +10 -0
- package/dist/types/components/select/manifest.d.ts +7 -0
- package/dist/types/{internal → components/select}/select.d.ts +5 -0
- package/dist/types/components/sheet/manifest.d.ts +7 -0
- package/dist/types/{internal → components/sheet}/sheet.d.ts +23 -0
- package/dist/types/components/tabs/manifest.d.ts +6 -0
- package/dist/types/components/tabs/tabs.d.ts +12 -0
- package/dist/types/components/tooltip/manifest.d.ts +7 -0
- package/dist/types/{internal → components/tooltip}/tooltip.d.ts +6 -0
- package/dist/types/index.d.ts +26 -3
- package/package.json +8 -2
- package/tokens/theme.css +205 -0
- package/tokens/tokens.generated.css +44 -0
- package/tokens/tokens.json +46 -0
- package/tokens/tokens.resource.json +22 -0
package/README.md
CHANGED
|
@@ -58,7 +58,8 @@ npm run smoke:consumer # installs the tarball in a fresh project and exercise
|
|
|
58
58
|
|
|
59
59
|
The structural decisions live in `docs/adr/`. Start with 0002 (app-agnostic core), 0003 (the
|
|
60
60
|
theme interface), 0004 (`tokens.json` as the single source), 0005 (the catalogue manifest),
|
|
61
|
-
0017 (the name), 0024 (the public surface)
|
|
61
|
+
0017 (the name), 0024 (the public surface), 0026 (Nomos goes public) and 0027 (overlay:
|
|
62
|
+
layer, scrim and motion as tokens).
|
|
62
63
|
|
|
63
64
|
## License
|
|
64
65
|
|
package/SKILL.md
CHANGED
|
@@ -28,6 +28,11 @@ pour expliquer une brique, elle appartient à l'app, pas au cœur.
|
|
|
28
28
|
`onValueChange`, sinon un affichage.
|
|
29
29
|
- **Lister des événements datés** → `Timeline` (frise, présentation seule ; le format de
|
|
30
30
|
la date vient de l'app).
|
|
31
|
+
- **Nommer un contrôle iconique, glisser une aide courte** → `Tooltip` en famille (un
|
|
32
|
+
`TooltipProvider` autour de plusieurs, `Tooltip`, `TooltipTrigger`, `TooltipContent`).
|
|
33
|
+
Jamais pour une information essentielle : elle n'est ni au clavier seul ni au tactile.
|
|
34
|
+
- **Représenter une personne par son image** → `Avatar` (le texte alternatif et le repli
|
|
35
|
+
viennent de l'app ; natif `<img>` + `onError`, sans dépendance).
|
|
31
36
|
|
|
32
37
|
### Agir, saisir
|
|
33
38
|
|
|
@@ -40,6 +45,9 @@ pour expliquer une brique, elle appartient à l'app, pas au cœur.
|
|
|
40
45
|
**choisir une seule option parmi quelques-unes** → `RadioGroup` ; **une bascule
|
|
41
46
|
ponctuelle** (mode, filtre) → `Toggle`, **un segment** → `ToggleGroup`. Tous sont
|
|
42
47
|
contrôlés par props : l'état reste dans l'app.
|
|
48
|
+
- **Choisir une valeur unique parmi une liste d'options** → `Select` en parts
|
|
49
|
+
(`SelectTrigger`, `SelectValue`, `SelectContent`, `SelectItem` ; les libellés et les
|
|
50
|
+
valeurs viennent de l'app). Pour des actions, c'est un `DropdownMenu`.
|
|
43
51
|
|
|
44
52
|
### Structurer
|
|
45
53
|
|
|
@@ -50,8 +58,30 @@ pour expliquer une brique, elle appartient à l'app, pas au cœur.
|
|
|
50
58
|
du cœur ; `onClose` va avec `closeLabel`).
|
|
51
59
|
- **Séparer deux contenus** → `Separator` ; **tenir la place d'un contenu qui charge** →
|
|
52
60
|
`Skeleton`.
|
|
61
|
+
- **Un contenu riche ou interactif dans une surface flottante au clic** → `Popover`
|
|
62
|
+
(`PopoverTrigger`, `PopoverContent`, `PopoverAnchor` pour s'ancrer ailleurs). Pour un
|
|
63
|
+
texte court au survol, c'est une `Tooltip`.
|
|
64
|
+
- **Révéler un détail à la demande** → `Collapsible` (`CollapsibleTrigger`,
|
|
65
|
+
`CollapsibleContent`) ; **des sections repliables, une à la fois** → `Accordion`
|
|
66
|
+
(`AccordionItem`, `AccordionTrigger`, `AccordionContent`, `type` single/multiple).
|
|
67
|
+
- **Basculer entre des vues sœurs** → `Tabs` (`TabsList`, `TabsTrigger`, `TabsContent`) ;
|
|
68
|
+
**borner une sous-vue dense dans une hauteur fixe** → `ScrollArea` (purement cosmétique,
|
|
69
|
+
le défilement reste natif).
|
|
53
70
|
- **Prévenir sans bloquer** → `Toast` via `useToast().show({ message })` (la file et
|
|
54
71
|
l'auto-dismiss vivent dans `ToastProvider`).
|
|
72
|
+
- **Regrouper des actions derrière un déclencheur compact** → `DropdownMenu` en parts
|
|
73
|
+
(`DropdownMenuTrigger`, `DropdownMenuContent`, `DropdownMenuItem`, à cocher, radio,
|
|
74
|
+
sous-menu ; les libellés et les actions viennent de l'app). Pour choisir une valeur de
|
|
75
|
+
formulaire, c'est un `Select`.
|
|
76
|
+
- **Demander une décision dans une modale centrée** → `Dialog` (déclencheur, titre,
|
|
77
|
+
description, corps, pied ; le libellé de fermeture vient de l'app). L'empilement, le
|
|
78
|
+
voile et le mouvement viennent des tokens, jamais d'une valeur en dur.
|
|
79
|
+
- **Confirmer une action destructive** → `AlertDialog` (`AlertDialogTrigger`,
|
|
80
|
+
`AlertDialogContent`, `AlertDialogAction`, `AlertDialogCancel` ; deux issues
|
|
81
|
+
explicites). Il ne se ferme pas au clic hors surface.
|
|
82
|
+
- **Montrer un contenu ancré à un bord** → `Sheet` en parts (`SheetTrigger`, `SheetContent`
|
|
83
|
+
avec `side`, `SheetHeader`, `SheetFooter`) ; `side="bottom"` est le **drawer** — le même
|
|
84
|
+
panneau, un côté différent, pas un atome à part.
|
|
55
85
|
- **Parcourir une hiérarchie** → `Tree` (navigation, un nœud actif) ou `SelectionTree`
|
|
56
86
|
(sélection multiple) ; ouverture et sélection sont contrôlées par props, le focus
|
|
57
87
|
clavier (rôle `tree`, flèches) est interne.
|
|
@@ -93,15 +123,21 @@ brique ajoutée au catalogue sans être ici fait rougir, et une ligne qui n'exis
|
|
|
93
123
|
aussi.
|
|
94
124
|
|
|
95
125
|
<!-- inventaire : début — tenu par src/mcp/skill.test.ts -->
|
|
126
|
+
accordion
|
|
96
127
|
alert
|
|
128
|
+
alert-dialog
|
|
129
|
+
avatar
|
|
97
130
|
badge
|
|
98
131
|
button
|
|
99
132
|
card
|
|
100
133
|
checkbox
|
|
101
134
|
chip
|
|
135
|
+
collapsible
|
|
102
136
|
counter
|
|
103
137
|
data-table-pagination
|
|
104
138
|
data-table-toolbar
|
|
139
|
+
dialog
|
|
140
|
+
dropdown-menu
|
|
105
141
|
empty-state
|
|
106
142
|
facet-filter
|
|
107
143
|
field
|
|
@@ -112,19 +148,25 @@ input
|
|
|
112
148
|
label
|
|
113
149
|
meter
|
|
114
150
|
number-field
|
|
151
|
+
popover
|
|
115
152
|
progress-bar
|
|
116
153
|
radio
|
|
117
154
|
rating
|
|
155
|
+
scroll-area
|
|
118
156
|
search-field
|
|
157
|
+
select
|
|
119
158
|
separator
|
|
159
|
+
sheet
|
|
120
160
|
skeleton
|
|
121
161
|
switch
|
|
122
162
|
table
|
|
163
|
+
tabs
|
|
123
164
|
textarea
|
|
124
165
|
timeline
|
|
125
166
|
toast
|
|
126
167
|
toggle
|
|
127
168
|
toggle-group
|
|
169
|
+
tooltip
|
|
128
170
|
tree
|
|
129
171
|
<!-- inventaire : fin -->
|
|
130
172
|
|