@momoi-labs/kiso 0.12.0 → 0.12.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.
@@ -80,7 +80,7 @@ it, so the mark points at the corner without touching it.
80
80
  | Token | Value | Meaning |
81
81
  | --- | --- | --- |
82
82
  | `--color-corner-mark` | `--color-border-strong` | Tick colour. |
83
- | `--corner-mark` | `1` | Opacity: marks on (`1`) or off (`0`). |
83
+ | `--corner-mark` | `1` | Marks on (`1`) or off (`0`). Off marks also drop their inset, so they add no overflow to a scroll container around the panel. |
84
84
  | `--corner-mark-tick` | 4px | Length of one tick. |
85
85
  | `--corner-mark-gap` | 2px | Distance from tick end to the frame. |
86
86
 
@@ -286,7 +286,7 @@ points at the corner without touching it.
286
286
 
287
287
  | Token | Value | Meaning |
288
288
  | --- | --- | --- |
289
- | `--corner-mark` | `1` | Opacity: marks on (`1`) or off (`0`). |
289
+ | `--corner-mark` | `1` | Marks on (`1`) or off (`0`). Off marks also drop their inset, so they add no overflow to a scroll container around the panel. |
290
290
  | `--corner-mark-tick` | 4px | Length of one tick. |
291
291
  | `--corner-mark-gap` | 2px | Distance from tick end to the frame. |
292
292
 
package/kiso/ui.css CHANGED
@@ -106,9 +106,11 @@ a, .link {
106
106
  a:hover, .link:hover { text-decoration: underline; }
107
107
 
108
108
  /* --- layout helpers ------------------------------------------------------ */
109
- .stack { display: grid; gap: var(--spacing-lg); }
110
- .stack-sm{ display: grid; gap: var(--spacing-sm); }
111
- .stack-xs{ display: grid; gap: var(--spacing-xs); }
109
+ /* One explicit column of minmax(0, 1fr), so a wide table, chart, or log line
110
+ inside a stack cannot widen the page; it scrolls or wraps in place instead. */
111
+ .stack { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spacing-lg); }
112
+ .stack-sm{ display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spacing-sm); }
113
+ .stack-xs{ display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spacing-xs); }
112
114
  .row { display: flex; align-items: center; gap: var(--spacing-sm); }
113
115
  .row-md { display: flex; align-items: center; gap: var(--spacing-md); }
114
116
  .row-wrap{ display: flex; align-items: center; gap: var(--spacing-sm); flex-wrap: wrap; }
@@ -667,6 +669,9 @@ table.table { width: 100%; border-collapse: collapse; font-size: var(--type-size
667
669
  .table .col-tight { width: 1%; white-space: nowrap; }
668
670
  .th-sort { display: inline-flex; align-items: center; gap: var(--spacing-xs); cursor: pointer; background: none; border: 0; font: inherit; color: inherit; padding: 0; }
669
671
  .table-toolbar { display: flex; align-items: center; gap: var(--spacing-sm); padding: var(--spacing-md); border-bottom: 1px solid var(--color-border); }
672
+ /* In a toolbar a select is an accessory to the search, not a form field, so
673
+ it takes only what its longest option needs. */
674
+ .table-toolbar > .select { width: auto; flex: none; }
670
675
  .table-footer { display: flex; align-items: center; justify-content: space-between; gap: var(--spacing-md); padding: var(--spacing-sm) var(--spacing-md); border-top: 1px solid var(--color-border); font-size: var(--type-size-label); color: var(--color-muted-foreground); }
671
676
 
672
677
  /* ===========================================================================
@@ -682,12 +687,16 @@ table.table { width: 100%; border-collapse: collapse; font-size: var(--type-size
682
687
  font-size: var(--type-size-body);
683
688
  font-weight: var(--type-weight-medium);
684
689
  color: var(--color-muted-foreground);
690
+ white-space: nowrap; /* a strip that scrolls sideways must not wrap "Last run" */
685
691
  cursor: pointer;
686
692
  }
687
693
  .tabs button:hover { color: var(--color-foreground); }
688
694
  .tabs button[aria-selected="true"] { color: var(--color-foreground); }
695
+ /* The underline stays inside the button, just above the strip's border, so a
696
+ strip that scrolls sideways has no extra pixel of block overflow to draw a
697
+ scrollbar for. */
689
698
  .tabs button[aria-selected="true"]::after {
690
- content: ""; position: absolute; inset-inline: 0; bottom: -1px; height: 2px;
699
+ content: ""; position: absolute; inset-inline: 0; bottom: 0; height: 2px;
691
700
  background: var(--color-primary);
692
701
  border-radius: var(--radius-full);
693
702
  }
@@ -989,7 +998,7 @@ table.table { width: 100%; border-collapse: collapse; font-size: var(--type-size
989
998
  font-weight: var(--type-weight-medium);
990
999
  }
991
1000
 
992
- .page { padding: var(--spacing-xl); display: grid; gap: var(--spacing-xl); align-content: start; max-width: var(--size-content-max); }
1001
+ .page { padding: var(--spacing-xl); display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spacing-xl); align-content: start; min-width: 0; max-width: var(--size-content-max); }
993
1002
  .page-header { display: grid; gap: var(--spacing-2xs); }
994
1003
 
995
1004
  /* ===========================================================================
@@ -1067,9 +1076,17 @@ pre code { display: block; overflow-x: auto; padding: 0; background: none; borde
1067
1076
  .chip-action { min-width: var(--size-touch-min); height: var(--size-touch-min); }
1068
1077
  }
1069
1078
 
1079
+ /* Narrow viewports: the sidebar stacks above main as compact navigation
1080
+ instead of disappearing, since it may be the only way to reach a
1081
+ destination. It keeps its own scroller so a long list does not push the
1082
+ page down. */
1070
1083
  @media (max-width: 1023px) {
1071
1084
  .app-shell { grid-template-columns: 1fr; }
1072
- .sidebar { display: none; }
1085
+ .sidebar {
1086
+ position: static; height: auto; max-height: 40vh;
1087
+ border-inline-end: 0;
1088
+ border-block-end: 1px solid var(--color-sidebar-border);
1089
+ }
1073
1090
  }
1074
1091
 
1075
1092
 
@@ -1190,7 +1207,10 @@ pre code { display: block; overflow-x: auto; padding: 0; background: none; borde
1190
1207
  left calc(var(--corner-mark-tick) + var(--corner-mark-gap)) bottom 0,
1191
1208
  right 0 bottom calc(var(--corner-mark-tick) + var(--corner-mark-gap)),
1192
1209
  right calc(var(--corner-mark-tick) + var(--corner-mark-gap)) bottom 0;
1193
- inset: var(--appearance-mark-inset, calc(-1 * (var(--corner-mark-tick) + var(--corner-mark-gap))));
1210
+ /* Marks that are off (`--corner-mark: 0`) also collapse the inset to 0, so
1211
+ the pseudo-element stops reaching outside the frame and a scroll container
1212
+ around the panel does not scroll for marks nobody sees. */
1213
+ inset: calc(var(--corner-mark, 1) * var(--appearance-mark-inset, calc(-1 * (var(--corner-mark-tick) + var(--corner-mark-gap)))));
1194
1214
  background-image: var(--appearance-mark-images,
1195
1215
  linear-gradient(var(--color-corner-mark), var(--color-corner-mark)),
1196
1216
  linear-gradient(var(--color-corner-mark), var(--color-corner-mark)),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@momoi-labs/kiso",
3
- "version": "0.12.0",
3
+ "version": "0.12.1",
4
4
  "description": "Kiso design-system contracts and generated design tokens",
5
5
  "license": "MIT",
6
6
  "repository": {