@tensor_1/tokens 2.51.0 → 2.51.2

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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tensor_1/tokens",
3
- "version": "2.51.0",
3
+ "version": "2.51.2",
4
4
  "description": "UIx v2 design tokens — the --uix-* contract for house products (Tensor, POSx, SHOPx). One DTCG source -> CSS variables, Tailwind theme, and typed TS constants.",
5
5
  "type": "module",
6
6
  "sideEffects": [
@@ -1,7 +1,8 @@
1
1
  /* uix checkbox — depends only on --uix-* tokens. Markup:
2
2
  <label class="uix-checkbox"><input type="checkbox"><span class="uix-checkbox__box">{check svg}</span> Label</label> */
3
3
  @layer uix.components {
4
- .uix-checkbox { display: inline-flex; align-items: center; gap: var(--uix-space-2); cursor: pointer; font-size: var(--uix-text-body); color: var(--uix-text); }
4
+ /* the label is the hidden input's containing block, so it scrolls with it (HAR-2708) */
5
+ .uix-checkbox { position: relative; display: inline-flex; align-items: center; gap: var(--uix-space-2); cursor: pointer; font-size: var(--uix-text-body); color: var(--uix-text); }
5
6
  .uix-checkbox > input { position: absolute; opacity: 0; width: 1px; height: 1px; }
6
7
  .uix-checkbox__box {
7
8
  width: 18px; height: 18px; flex: none; display: grid; place-items: center;
@@ -1,7 +1,9 @@
1
1
  /* uix radio + radio-group — depends only on --uix-* tokens. */
2
2
  @layer uix.components {
3
3
  .uix-radio-group { display: flex; flex-direction: column; gap: var(--uix-space-2); }
4
- .uix-radio { display: inline-flex; align-items: center; gap: var(--uix-space-2); cursor: pointer; font-size: var(--uix-text-body); color: var(--uix-text); }
4
+ /* position: relative makes the label the hidden input's containing block, so the input scrolls with
5
+ it inside any scroller (HAR-2708) */
6
+ .uix-radio { position: relative; display: inline-flex; align-items: center; gap: var(--uix-space-2); cursor: pointer; font-size: var(--uix-text-body); color: var(--uix-text); }
5
7
  .uix-radio > input { position: absolute; opacity: 0; width: 1px; height: 1px; }
6
8
  .uix-radio__dot {
7
9
  width: 18px; height: 18px; flex: none; border-radius: 50%;
@@ -1,6 +1,7 @@
1
1
  /* uix switch — depends only on --uix-* tokens. */
2
2
  @layer uix.components {
3
- .uix-switch { display: inline-flex; align-items: center; gap: var(--uix-space-2); cursor: pointer; color: var(--uix-text); font-size: var(--uix-text-body); }
3
+ /* the label is the hidden input's containing block, so it scrolls with it (HAR-2708) */
4
+ .uix-switch { position: relative; display: inline-flex; align-items: center; gap: var(--uix-space-2); cursor: pointer; color: var(--uix-text); font-size: var(--uix-text-body); }
4
5
  .uix-switch > input { position: absolute; opacity: 0; width: 1px; height: 1px; }
5
6
  .uix-switch__track {
6
7
  width: 36px; height: 20px; flex: none; border-radius: var(--uix-radius-pill);
@@ -180,6 +180,9 @@
180
180
 
181
181
  /* ── row hover actions + kebab ─────────────────────────────────────────────────── */
182
182
  .uix-table__actions { width: 84px; text-align: right; white-space: nowrap; }
183
+ /* the controls share one centre line: an icon-only button has no text baseline, so on the
184
+ baseline it sat a few px above the word buttons beside it */
185
+ .uix-table__actions :is(.uix-btn, .uix-rowact) { vertical-align: middle; }
183
186
  .uix-rowact { border: 0; background: transparent; color: var(--uix-text-muted); cursor: pointer; padding: var(--uix-space-1); border-radius: var(--uix-radius-sm); transition: opacity var(--uix-dur-fast) var(--uix-ease-out), background-color var(--uix-dur-fast) var(--uix-ease-out); }
184
187
  .uix-rowact svg { width: 16px; height: 16px; display: block; }
185
188
  /* Row actions hide until hover only where hover exists: on a touch screen they stay visible, so