@zevra/ui 0.43.1 → 0.44.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/src/data.css CHANGED
@@ -1039,8 +1039,8 @@
1039
1039
  * du cadre pendant que les cellules continuent. --zv-cols-somme et
1040
1040
  * --zv-cols-n sont posés par le composant (largeurs choisies par
1041
1041
  * l'utilisateur, pas des valeurs de charte). */
1042
- .zv-table--grille > .zv-table__head,
1043
- .zv-table--grille > .zv-row {
1042
+ .zv-table--grille .zv-table__head,
1043
+ .zv-table--grille .zv-row {
1044
1044
  min-width: calc(
1045
1045
  var(--zv-cols-somme, 0px) + 2 * var(--zv-grille-pad) +
1046
1046
  (var(--zv-cols-n, 1) - 1) * var(--zv-grille-gap)
@@ -1360,6 +1360,74 @@
1360
1360
  padding-inline: 8px;
1361
1361
  }
1362
1362
 
1363
+ /* ─── Remplir son parent ────────────────────────────────────────────────
1364
+ * La grille prend la hauteur d'une colonne flex bornée : seules les lignes
1365
+ * défilent. Les intitulés et les filtres sont groupés dans un bloc COLLANT
1366
+ * (.zv-table__haut) : collées une à une, les deux rangées se poseraient au
1367
+ * même endroit et la seconde recouvrirait la première. */
1368
+ .zv-grille--remplir {
1369
+ display: flex;
1370
+ flex: 1;
1371
+ flex-direction: column;
1372
+ min-height: 0;
1373
+ }
1374
+
1375
+ .zv-table--remplir {
1376
+ flex: 1;
1377
+ min-height: 0;
1378
+ overflow: auto;
1379
+ }
1380
+
1381
+ .zv-table__haut {
1382
+ position: sticky;
1383
+ top: 0;
1384
+ z-index: 2;
1385
+ }
1386
+
1387
+ /* ─── Densité ───────────────────────────────────────────────────────────
1388
+ * Un tableau secondaire, posé dans une fiche : les rangées se resserrent,
1389
+ * rien d'autre ne change. Dérivé (6 px : la rangée de filtres). */
1390
+ .zv-table--dense .zv-row,
1391
+ .zv-table--dense .zv-table__head {
1392
+ padding-block: 6px;
1393
+ }
1394
+
1395
+ /* ─── Rangées qui ne sont pas des lignes ────────────────────────────────
1396
+ * Un intitulé de groupe, une ligne de saisie, un pied de totaux : sur le
1397
+ * fond du survol, et inertes (ni pointeur ni survol). */
1398
+ .zv-row--groupe,
1399
+ .zv-row--saisie,
1400
+ .zv-row--pied {
1401
+ background: var(--panel);
1402
+ cursor: default;
1403
+ }
1404
+
1405
+ .zv-row--groupe:hover,
1406
+ .zv-row--saisie:hover,
1407
+ .zv-row--pied:hover {
1408
+ background: var(--panel);
1409
+ }
1410
+
1411
+ .zv-row--groupe {
1412
+ display: block;
1413
+ padding-block: 6px;
1414
+ }
1415
+
1416
+ .zv-row--pied {
1417
+ font-weight: 600;
1418
+ }
1419
+
1420
+ /* Des champs à la hauteur d'une ligne, pas d'un formulaire. */
1421
+ .zv-row--saisie .zv-input {
1422
+ padding-block: 5px;
1423
+ }
1424
+
1425
+ /* Le nombre de lignes d'une valeur, au bout de son option. */
1426
+ .zv-grille__compte {
1427
+ margin-left: auto;
1428
+ flex: none;
1429
+ }
1430
+
1363
1431
  /* Le pied : compte à gauche, taille de page et sens à droite. */
1364
1432
  .zv-grille__pied {
1365
1433
  display: flex;
@@ -1370,7 +1438,7 @@
1370
1438
  @media (max-width: 767px) {
1371
1439
  /* En cartes, l'épinglage, les poignées et la largeur minimale n'ont plus
1372
1440
  * de sens : la carte prend la largeur de l'écran. */
1373
- .zv-table--grille > .zv-row {
1441
+ .zv-table--grille .zv-row {
1374
1442
  min-width: 0;
1375
1443
  }
1376
1444