@sia-ui/react-web 0.3.2 → 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/CHANGELOG.md +65 -0
- package/README.md +163 -74
- package/dist/index.cjs +568 -374
- package/dist/index.css +563 -330
- package/dist/index.d.cts +115 -14
- package/dist/index.d.ts +115 -14
- package/dist/index.js +566 -377
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,70 @@
|
|
|
1
1
|
# @sia-ui/react-web
|
|
2
2
|
|
|
3
|
+
## 0.5.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- Erreurs serveur dans les formulaires, client HTTP plus sûr, registre vérifié.
|
|
8
|
+
|
|
9
|
+
## Défauts
|
|
10
|
+
- **Registre `drawer`** — `context.ts` et la dépendance `icons` manquaient :
|
|
11
|
+
`sia-ui add app-shell` produisait un projet qui ne compilait pas. Un test
|
|
12
|
+
vérifie désormais que chaque import relatif de chaque entrée est apporté par
|
|
13
|
+
son installation.
|
|
14
|
+
- **`sia-ui.css`** pose `box-sizing: border-box` (spécificité nulle). Sans
|
|
15
|
+
reset côté projet, `AppShell` débordait de 32 px.
|
|
16
|
+
- **`@sia-ui/api`** ne rejoue plus d'office que `GET` et `HEAD`
|
|
17
|
+
(`retryMethods`). Une écriture n'est rejouée que si l'appel pose `retry`.
|
|
18
|
+
- Plus aucun avertissement `react-hooks/exhaustive-deps` dans les composants.
|
|
19
|
+
|
|
20
|
+
## Formulaires et erreurs serveur
|
|
21
|
+
- `Form` intercepte un envoi rejeté : erreurs de champ sous les champs, le
|
|
22
|
+
reste dans une alerte. `onSubmit` peut aussi rendre `{ champ: message }`
|
|
23
|
+
(`FormSubmitResult`), dans `useLocalForm`, `Form`, `CrudPage` et
|
|
24
|
+
l'adaptateur react-hook-form. `CrudPage` garde alors sa boîte ouverte.
|
|
25
|
+
- Les erreurs posées par `setErrors` survivent à la validation locale jusqu'à
|
|
26
|
+
la modification de leur champ.
|
|
27
|
+
- `HttpError.toFormErrors()`, option `fieldErrors` du client et préréglage
|
|
28
|
+
`nestFieldErrors` (class-validator). `readSubmitError` et `hasFormErrors`
|
|
29
|
+
dans `@sia-ui/headless`.
|
|
30
|
+
- La pagination à plat `{ data, total, page, limit }` est reconnue, et `get`
|
|
31
|
+
ne déballe plus `data` quand l'objet porte une pagination.
|
|
32
|
+
|
|
33
|
+
## Tableaux
|
|
34
|
+
- `searchDelay` sur `DataTable` et `CrudPage`.
|
|
35
|
+
- `CrudPage` place les `extraRowActions` avant « Supprimer ».
|
|
36
|
+
|
|
37
|
+
- Pagination, téléphone et recherche du `Select`.
|
|
38
|
+
- `Pagination` propose le nombre de lignes par page : `pageSize`,
|
|
39
|
+
`onPageSizeChange`, `pageSizeOptions`, `pageSizeLabel`, et
|
|
40
|
+
`renderPageSize` pour remplacer le contrôle. `CrudPage` transmet les trois
|
|
41
|
+
premières. Nouvelle clé de libellé `perPage` (« Par page »).
|
|
42
|
+
- La page courante de `Pagination` n'est plus blanche sur blanc au survol.
|
|
43
|
+
- `PhoneInput` choisit l'indicatif dans le `Select` du système, avec
|
|
44
|
+
recherche, à la place du `<select>` natif.
|
|
45
|
+
- `Select` : `variant="embedded"` et `renderValue` ; recherche insensible aux
|
|
46
|
+
accents ; Entrée choisit le premier résultat après un filtrage.
|
|
47
|
+
|
|
48
|
+
### Patch Changes
|
|
49
|
+
|
|
50
|
+
- Updated dependencies
|
|
51
|
+
- @sia-ui/react@0.5.0
|
|
52
|
+
- @sia-ui/tokens@0.5.0
|
|
53
|
+
- @sia-ui/utils@0.5.0
|
|
54
|
+
- @sia-ui/headless@0.5.0
|
|
55
|
+
|
|
56
|
+
## 0.4.0
|
|
57
|
+
|
|
58
|
+
### Minor Changes
|
|
59
|
+
|
|
60
|
+
- Améliore la navigation et les réglages responsives : le `Drawer` conserve ses
|
|
61
|
+
classes internes avec une `className` personnalisée, anime correctement ses
|
|
62
|
+
quatre positions et expose une fermeture explicite dans `AppShell`. Uniformise
|
|
63
|
+
les scrollbars globales, allège les sous-menus du `Sidebar`, renforce le
|
|
64
|
+
contraste du `ToggleGroup`, ajoute `SettingsIcon` et fournit `AppShellBrand`
|
|
65
|
+
ainsi qu'`AppShellRailItem` pour adapter automatiquement icônes et libellés au
|
|
66
|
+
rail réduit.
|
|
67
|
+
|
|
3
68
|
## 0.3.2
|
|
4
69
|
|
|
5
70
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -1,74 +1,162 @@
|
|
|
1
|
-
<p align="center"><img src="https://beatjo.github.io/sia-ui-site/brand/sia-ui-logo.png" alt="SIA UI" width="320"></p>
|
|
2
|
-
|
|
3
|
-
# @sia-ui/react-web
|
|
4
|
-
|
|
5
|
-
Les composants SIA UI pour le DOM.
|
|
6
|
-
|
|
7
|
-
```bash
|
|
8
|
-
pnpm add @sia-ui/react-web
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
```tsx
|
|
12
|
-
import { Button, DataTable, DatePicker } from "@sia-ui/react-web";
|
|
13
|
-
import "@sia-ui/react-web/styles.css";
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
88 composants : primitives, saisie, date et heure, affichage de données,
|
|
17
|
-
feedback et patterns applicatifs — `CrudPage`, `AppShell`, `FiltersBar`,
|
|
18
|
-
`AuthLayout`.
|
|
19
|
-
|
|
20
|
-
## Valeurs par défaut et libellés
|
|
21
|
-
|
|
22
|
-
```tsx
|
|
23
|
-
import { SiaConfigProvider } from "@sia-ui/headless";
|
|
24
|
-
|
|
25
|
-
<SiaConfigProvider
|
|
26
|
-
defaults={{ button: { variant: "outline" } }}
|
|
27
|
-
locale={{ loading: "Loading", empty: "No data" }}
|
|
28
|
-
>
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
Aucune librairie d'i18n n'est requise : toutes les chaînes sont des props, et
|
|
32
|
-
le fournisseur ne fixe que les défauts.
|
|
33
|
-
|
|
34
|
-
## Ou copier le code
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
npx sia-ui add data-table
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
Le fichier installé est **exactement** celui de ce paquet.
|
|
41
|
-
|
|
42
|
-
## Place dans SIA UI
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
@sia-ui/tokens valeurs : couleurs, espacements, mouvement, vocabulaire
|
|
46
|
-
@sia-ui/utils fonctions sans dépendance
|
|
47
|
-
@sia-ui/api client HTTP — indépendant de l'interface
|
|
48
|
-
@sia-ui/headless comportement, avec React, sans plateforme
|
|
49
|
-
@sia-ui/react primitives de runtime DOM
|
|
50
|
-
@sia-ui/react-web composants DOM
|
|
51
|
-
@sia-ui/react-native composants natifs, à venir
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
Une chose s'écrit au niveau le plus bas où elle a du sens, et une seule fois.
|
|
55
|
-
Voir [la documentation](https://beatjo.github.io/sia-ui-site).
|
|
56
|
-
|
|
57
|
-
## Contribuer
|
|
58
|
-
|
|
59
|
-
Le code source principal de SIA UI est privé pour le moment. Les retours publics passent par le dépôt `BeatJo/sia-ui-site` : bugs, demandes de composants, corrections de documentation et questions d'usage.
|
|
60
|
-
|
|
61
|
-
- Signaler un bug : https://github.com/BeatJo/sia-ui-site/issues
|
|
62
|
-
- Lire la documentation : https://beatjo.github.io/sia-ui-site/
|
|
63
|
-
- Voir la démonstration : https://beatjo.github.io/sia-ui-site/preview/
|
|
64
|
-
|
|
65
|
-
Les contributions directes au code des packages se font sur invitation dans le dépôt source privé.
|
|
66
|
-
## Journal des changements
|
|
67
|
-
|
|
68
|
-
Le contenu ci-dessous reprend intégralement `CHANGELOG.md` pour rester visible sur npm.
|
|
69
|
-
|
|
1
|
+
<p align="center"><img src="https://beatjo.github.io/sia-ui-site/brand/sia-ui-logo.png" alt="SIA UI" width="320"></p>
|
|
2
|
+
|
|
70
3
|
# @sia-ui/react-web
|
|
71
4
|
|
|
5
|
+
Les composants SIA UI pour le DOM.
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
pnpm add @sia-ui/react-web
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
import { Button, DataTable, DatePicker } from "@sia-ui/react-web";
|
|
13
|
+
import "@sia-ui/react-web/styles.css";
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
88 composants : primitives, saisie, date et heure, affichage de données,
|
|
17
|
+
feedback et patterns applicatifs — `CrudPage`, `AppShell`, `FiltersBar`,
|
|
18
|
+
`AuthLayout`.
|
|
19
|
+
|
|
20
|
+
## Valeurs par défaut et libellés
|
|
21
|
+
|
|
22
|
+
```tsx
|
|
23
|
+
import { SiaConfigProvider } from "@sia-ui/headless";
|
|
24
|
+
|
|
25
|
+
<SiaConfigProvider
|
|
26
|
+
defaults={{ button: { variant: "outline" } }}
|
|
27
|
+
locale={{ loading: "Loading", empty: "No data" }}
|
|
28
|
+
>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Aucune librairie d'i18n n'est requise : toutes les chaînes sont des props, et
|
|
32
|
+
le fournisseur ne fixe que les défauts.
|
|
33
|
+
|
|
34
|
+
## Ou copier le code
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
npx sia-ui add data-table
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
Le fichier installé est **exactement** celui de ce paquet.
|
|
41
|
+
|
|
42
|
+
## Place dans SIA UI
|
|
43
|
+
|
|
44
|
+
```
|
|
45
|
+
@sia-ui/tokens valeurs : couleurs, espacements, mouvement, vocabulaire
|
|
46
|
+
@sia-ui/utils fonctions sans dépendance
|
|
47
|
+
@sia-ui/api client HTTP — indépendant de l'interface
|
|
48
|
+
@sia-ui/headless comportement, avec React, sans plateforme
|
|
49
|
+
@sia-ui/react primitives de runtime DOM
|
|
50
|
+
@sia-ui/react-web composants DOM
|
|
51
|
+
@sia-ui/react-native composants natifs, à venir
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Une chose s'écrit au niveau le plus bas où elle a du sens, et une seule fois.
|
|
55
|
+
Voir [la documentation](https://beatjo.github.io/sia-ui-site).
|
|
56
|
+
|
|
57
|
+
## Contribuer
|
|
58
|
+
|
|
59
|
+
Le code source principal de SIA UI est privé pour le moment. Les retours publics passent par le dépôt `BeatJo/sia-ui-site` : bugs, demandes de composants, corrections de documentation et questions d'usage.
|
|
60
|
+
|
|
61
|
+
- Signaler un bug : https://github.com/BeatJo/sia-ui-site/issues
|
|
62
|
+
- Lire la documentation : https://beatjo.github.io/sia-ui-site/
|
|
63
|
+
- Voir la démonstration : https://beatjo.github.io/sia-ui-site/preview/
|
|
64
|
+
|
|
65
|
+
Les contributions directes au code des packages se font sur invitation dans le dépôt source privé.
|
|
66
|
+
## Journal des changements
|
|
67
|
+
|
|
68
|
+
Le contenu ci-dessous reprend intégralement `CHANGELOG.md` pour rester visible sur npm.
|
|
69
|
+
|
|
70
|
+
<!-- sia:changelog:start -->
|
|
71
|
+
# @sia-ui/react-web
|
|
72
|
+
|
|
73
|
+
## 0.5.0
|
|
74
|
+
|
|
75
|
+
### Minor Changes
|
|
76
|
+
|
|
77
|
+
- Erreurs serveur dans les formulaires, client HTTP plus sûr, registre vérifié.
|
|
78
|
+
|
|
79
|
+
## Défauts
|
|
80
|
+
- **Registre `drawer`** — `context.ts` et la dépendance `icons` manquaient :
|
|
81
|
+
`sia-ui add app-shell` produisait un projet qui ne compilait pas. Un test
|
|
82
|
+
vérifie désormais que chaque import relatif de chaque entrée est apporté par
|
|
83
|
+
son installation.
|
|
84
|
+
- **`sia-ui.css`** pose `box-sizing: border-box` (spécificité nulle). Sans
|
|
85
|
+
reset côté projet, `AppShell` débordait de 32 px.
|
|
86
|
+
- **`@sia-ui/api`** ne rejoue plus d'office que `GET` et `HEAD`
|
|
87
|
+
(`retryMethods`). Une écriture n'est rejouée que si l'appel pose `retry`.
|
|
88
|
+
- Plus aucun avertissement `react-hooks/exhaustive-deps` dans les composants.
|
|
89
|
+
|
|
90
|
+
## Formulaires et erreurs serveur
|
|
91
|
+
- `Form` intercepte un envoi rejeté : erreurs de champ sous les champs, le
|
|
92
|
+
reste dans une alerte. `onSubmit` peut aussi rendre `{ champ: message }`
|
|
93
|
+
(`FormSubmitResult`), dans `useLocalForm`, `Form`, `CrudPage` et
|
|
94
|
+
l'adaptateur react-hook-form. `CrudPage` garde alors sa boîte ouverte.
|
|
95
|
+
- Les erreurs posées par `setErrors` survivent à la validation locale jusqu'à
|
|
96
|
+
la modification de leur champ.
|
|
97
|
+
- `HttpError.toFormErrors()`, option `fieldErrors` du client et préréglage
|
|
98
|
+
`nestFieldErrors` (class-validator). `readSubmitError` et `hasFormErrors`
|
|
99
|
+
dans `@sia-ui/headless`.
|
|
100
|
+
- La pagination à plat `{ data, total, page, limit }` est reconnue, et `get`
|
|
101
|
+
ne déballe plus `data` quand l'objet porte une pagination.
|
|
102
|
+
|
|
103
|
+
## Tableaux
|
|
104
|
+
- `searchDelay` sur `DataTable` et `CrudPage`.
|
|
105
|
+
- `CrudPage` place les `extraRowActions` avant « Supprimer ».
|
|
106
|
+
|
|
107
|
+
- Pagination, téléphone et recherche du `Select`.
|
|
108
|
+
- `Pagination` propose le nombre de lignes par page : `pageSize`,
|
|
109
|
+
`onPageSizeChange`, `pageSizeOptions`, `pageSizeLabel`, et
|
|
110
|
+
`renderPageSize` pour remplacer le contrôle. `CrudPage` transmet les trois
|
|
111
|
+
premières. Nouvelle clé de libellé `perPage` (« Par page »).
|
|
112
|
+
- La page courante de `Pagination` n'est plus blanche sur blanc au survol.
|
|
113
|
+
- `PhoneInput` choisit l'indicatif dans le `Select` du système, avec
|
|
114
|
+
recherche, à la place du `<select>` natif.
|
|
115
|
+
- `Select` : `variant="embedded"` et `renderValue` ; recherche insensible aux
|
|
116
|
+
accents ; Entrée choisit le premier résultat après un filtrage.
|
|
117
|
+
|
|
118
|
+
### Patch Changes
|
|
119
|
+
|
|
120
|
+
- Updated dependencies
|
|
121
|
+
- @sia-ui/react@0.5.0
|
|
122
|
+
- @sia-ui/tokens@0.5.0
|
|
123
|
+
- @sia-ui/utils@0.5.0
|
|
124
|
+
- @sia-ui/headless@0.5.0
|
|
125
|
+
|
|
126
|
+
## 0.4.0
|
|
127
|
+
|
|
128
|
+
### Minor Changes
|
|
129
|
+
|
|
130
|
+
- Améliore la navigation et les réglages responsives : le `Drawer` conserve ses
|
|
131
|
+
classes internes avec une `className` personnalisée, anime correctement ses
|
|
132
|
+
quatre positions et expose une fermeture explicite dans `AppShell`. Uniformise
|
|
133
|
+
les scrollbars globales, allège les sous-menus du `Sidebar`, renforce le
|
|
134
|
+
contraste du `ToggleGroup`, ajoute `SettingsIcon` et fournit `AppShellBrand`
|
|
135
|
+
ainsi qu'`AppShellRailItem` pour adapter automatiquement icônes et libellés au
|
|
136
|
+
rail réduit.
|
|
137
|
+
|
|
138
|
+
## 0.3.2
|
|
139
|
+
|
|
140
|
+
### Patch Changes
|
|
141
|
+
|
|
142
|
+
- Ajoute l’identité visuelle officielle de SIA UI et améliore la documentation publique, les changelogs et les ressources de contribution.
|
|
143
|
+
- Updated dependencies
|
|
144
|
+
- @sia-ui/headless@0.3.2
|
|
145
|
+
- @sia-ui/react@0.3.2
|
|
146
|
+
- @sia-ui/tokens@0.3.2
|
|
147
|
+
- @sia-ui/utils@0.3.2
|
|
148
|
+
|
|
149
|
+
## 0.3.1
|
|
150
|
+
|
|
151
|
+
### Patch Changes
|
|
152
|
+
|
|
153
|
+
- Expose public contribution flow on npm
|
|
154
|
+
- Updated dependencies
|
|
155
|
+
- @sia-ui/headless@0.3.1
|
|
156
|
+
- @sia-ui/react@0.3.1
|
|
157
|
+
- @sia-ui/tokens@0.3.1
|
|
158
|
+
- @sia-ui/utils@0.3.1
|
|
159
|
+
|
|
72
160
|
## 0.3.0
|
|
73
161
|
|
|
74
162
|
### Minor Changes
|
|
@@ -228,8 +316,9 @@ Le contenu ci-dessous reprend intégralement `CHANGELOG.md` pour rester visible
|
|
|
228
316
|
- @sia-ui/headless@0.2.0
|
|
229
317
|
- @sia-ui/tokens@0.2.0
|
|
230
318
|
- @sia-ui/utils@0.2.0
|
|
231
|
-
- @sia-ui/react@0.2.0
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
319
|
+
- @sia-ui/react@0.2.0
|
|
320
|
+
<!-- sia:changelog:end -->
|
|
321
|
+
|
|
322
|
+
## Licence
|
|
323
|
+
|
|
324
|
+
MIT
|