@visns-studio/visns-components 6.15.0 → 6.15.1

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/package.json CHANGED
@@ -95,7 +95,7 @@
95
95
  "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0"
96
96
  },
97
97
  "name": "@visns-studio/visns-components",
98
- "version": "6.15.0",
98
+ "version": "6.15.1",
99
99
  "description": "Various packages to assist in the development of our Custom Applications.",
100
100
  "main": "src/index.js",
101
101
  "files": [
@@ -3945,7 +3945,16 @@ const DataGrid = forwardRef(
3945
3945
  // clamped columns exceed the container (narrow
3946
3946
  // screens) — columns then render a few px wide
3947
3947
  // with no horizontal scrollbar ever appearing.
3948
- minWidth: column.minWidth ?? grid.columnMinWidth,
3948
+ // A date filter needs room for its locale mask
3949
+ // ("dd/mm/yyyy" + the picker glyph); below ~140px
3950
+ // the native input clips its own value.
3951
+ minWidth:
3952
+ column.minWidth ??
3953
+ (['date', 'datetime', 'datetime-local'].includes(
3954
+ column.type
3955
+ )
3956
+ ? Math.max(grid.columnMinWidth, 140)
3957
+ : grid.columnMinWidth),
3949
3958
  maxWidth: column.maxWidth ?? undefined,
3950
3959
  textAlign: column.textAlign ?? undefined,
3951
3960
  textVerticalAlign:
@@ -444,6 +444,8 @@ body.tablet-mode .InovuaReactDataGrid__cell.cell-word-wrap > div {
444
444
  .visns-native-date-filter {
445
445
  position: relative;
446
446
  display: flex;
447
+ /* Lets the rules below react to the column's width, not the window's. */
448
+ container-type: inline-size;
447
449
  /* stretch, not center: the input has to fill the 32px the theme pins the
448
450
  filter to, or the clickable area is smaller than the box it draws. */
449
451
  align-items: stretch;
@@ -483,14 +485,18 @@ body.tablet-mode .InovuaReactDataGrid__cell.cell-word-wrap > div {
483
485
  min-width: 0;
484
486
  height: auto;
485
487
  margin: 0;
486
- padding: 0 2px 0 8px;
488
+ padding: 0 2px 0 6px;
487
489
  border: none;
488
490
  outline: none;
489
491
  background: none;
490
492
  color: inherit;
491
493
  font-family: inherit;
492
- font-size: inherit;
494
+ /* A notch under the grid's 14px: the locale mask is ten characters and
495
+ the default filter row is narrow. */
496
+ font-size: 13px;
497
+ letter-spacing: -0.01em;
493
498
  line-height: 1;
499
+ font-variant-numeric: tabular-nums;
494
500
  -webkit-appearance: none;
495
501
  appearance: none;
496
502
  }
@@ -516,6 +522,25 @@ body.tablet-mode .InovuaReactDataGrid__cell.cell-word-wrap > div {
516
522
  opacity: 1;
517
523
  }
518
524
 
525
+ /* In a narrow column the glyph costs the last two digits of the year; the
526
+ field still opens the picker on click/Space, so drop the glyph first and the
527
+ clear button only when there is really no room. */
528
+ @container (max-width: 128px) {
529
+ .visns-native-date-filter__input::-webkit-calendar-picker-indicator {
530
+ display: none;
531
+ }
532
+
533
+ .visns-native-date-filter__input {
534
+ padding-right: 0;
535
+ }
536
+ }
537
+
538
+ @container (max-width: 104px) {
539
+ .visns-native-date-filter__clear {
540
+ display: none;
541
+ }
542
+ }
543
+
519
544
  /* Browser-supplied clear / spin affordances are replaced by our own button,
520
545
  which is consistent across engines. */
521
546
  .visns-native-date-filter__input::-webkit-clear-button,