@rebasepro/ui 0.15.0 → 0.16.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/dist/index.css +17 -16
- package/dist/index.es.js +3 -3
- package/dist/index.es.js.map +1 -1
- package/dist/src/index.css +17 -16
- package/dist/src/theme.css +1 -1
- package/dist/theme.css +1 -1
- package/package.json +1 -1
- package/src/components/Select.tsx +1 -1
- package/src/components/Sheet.tsx +10 -2
- package/src/components/VirtualTable/VirtualTableHeader.tsx +1 -1
- package/src/index.css +17 -16
- package/src/theme.css +1 -1
package/dist/src/index.css
CHANGED
|
@@ -37,28 +37,28 @@ html.dark {
|
|
|
37
37
|
and holding 600 all the way down to text-sm made every heading shout equally
|
|
38
38
|
— a heading stops being a headline somewhere, and the scale should say where.
|
|
39
39
|
|
|
40
|
-
The ladder
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
whole weight axis is already in the file that ships. The earlier "never above
|
|
49
|
-
600" rule was written when static weights meant every step was another
|
|
50
|
-
download; that constraint no longer exists.
|
|
40
|
+
The ladder spans three weights — 400/500/600 — and 600 is the ceiling. No
|
|
41
|
+
tier goes to 700: the display end separates itself by SIZE and tracking, not
|
|
42
|
+
by weight, and a 30px 700 next to a 30px 500 elsewhere on the same product
|
|
43
|
+
reads as two different type systems rather than one ladder.
|
|
44
|
+
|
|
45
|
+
Both faces load as VARIABLE fonts (@fontsource-variable/inter,
|
|
46
|
+
@fontsource-variable/instrument-sans), so the whole axis ships either way —
|
|
47
|
+
the 600 ceiling is a design decision, not a payload one.
|
|
51
48
|
|
|
52
49
|
With a single face carrying both headings and body, weight and tracking are
|
|
53
50
|
the only things separating a heading from the copy around it — so the tiers
|
|
54
51
|
have to actually differ, rather than all sitting at 600. */
|
|
55
52
|
|
|
53
|
+
/* 500, not 700. This reverses the 2026-08 "700 for display" decision on
|
|
54
|
+
purpose: the marketing site and the panel were running different display
|
|
55
|
+
weights, which is the single most visible incoherence between them. */
|
|
56
56
|
.typography-h1 {
|
|
57
|
-
@apply text-4xl font-headers font-
|
|
57
|
+
@apply text-4xl font-headers font-medium tracking-display;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
.typography-h2 {
|
|
61
|
-
@apply text-3xl font-headers font-
|
|
61
|
+
@apply text-3xl font-headers font-medium tracking-display;
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
.typography-h3 {
|
|
@@ -144,10 +144,11 @@ html.dark {
|
|
|
144
144
|
@apply font-mono tabular-nums;
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
/* The headline number on a stat tile. Display
|
|
148
|
-
|
|
147
|
+
/* The headline number on a stat tile. Display tracking and tabular figures so a
|
|
148
|
+
row of tiles shares a baseline grid. Semibold, not bold: the number is
|
|
149
|
+
already the largest thing on the tile, and 600 is the system ceiling. */
|
|
149
150
|
.typography-stat {
|
|
150
|
-
@apply text-3xl font-headers font-
|
|
151
|
+
@apply text-3xl font-headers font-semibold tracking-display tabular-nums;
|
|
151
152
|
}
|
|
152
153
|
|
|
153
154
|
:focus-visible {
|
package/dist/src/theme.css
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
console and the marketing site all spell the same intent the same way
|
|
27
27
|
instead of each hardcoding its own em value. Pair display/title with
|
|
28
28
|
font-semibold and heading with font-medium. */
|
|
29
|
-
--tracking-display: -0.
|
|
29
|
+
--tracking-display: -0.022em; /* >= 30px — the headline tier; matches the marketing site */
|
|
30
30
|
--tracking-title: -0.018em; /* 20-24px — section titles */
|
|
31
31
|
--tracking-heading: -0.01em; /* <= 18px — labels; still a heading, not a headline */
|
|
32
32
|
|
package/dist/theme.css
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
console and the marketing site all spell the same intent the same way
|
|
27
27
|
instead of each hardcoding its own em value. Pair display/title with
|
|
28
28
|
font-semibold and heading with font-medium. */
|
|
29
|
-
--tracking-display: -0.
|
|
29
|
+
--tracking-display: -0.022em; /* >= 30px — the headline tier; matches the marketing site */
|
|
30
30
|
--tracking-title: -0.018em; /* 20-24px — section titles */
|
|
31
31
|
--tracking-heading: -0.01em; /* <= 18px — labels; still a heading, not a headline */
|
|
32
32
|
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rebasepro/ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.16.0",
|
|
5
5
|
"description": "Rebase design system — React components and design tokens built on Radix UI, Tailwind CSS and lucide-react",
|
|
6
6
|
"funding": {
|
|
7
7
|
"url": "https://github.com/sponsors/rebaseco"
|
|
@@ -304,7 +304,7 @@ export const SelectGroup = React.memo(function SelectGroup({
|
|
|
304
304
|
return <>
|
|
305
305
|
<SelectPrimitive.Group
|
|
306
306
|
className={cls(
|
|
307
|
-
"text-xs text-surface-accent-900 dark:text-white uppercase tracking-wider font-
|
|
307
|
+
"text-xs text-surface-accent-900 dark:text-white uppercase tracking-wider font-semibold mt-6 first:mt-2",
|
|
308
308
|
"px-2 py-2",
|
|
309
309
|
className
|
|
310
310
|
)}>
|
package/src/components/Sheet.tsx
CHANGED
|
@@ -99,8 +99,16 @@ export const Sheet: React.FC<SheetProps> = ({
|
|
|
99
99
|
"outline-none",
|
|
100
100
|
borderClass[side],
|
|
101
101
|
defaultBorderMixin,
|
|
102
|
-
|
|
103
|
-
|
|
102
|
+
// No `will-change: transform` / `transform-gpu` here, however
|
|
103
|
+
// tempting the layer hint is on a panel this size. Either one
|
|
104
|
+
// makes this element a *containing block* for its
|
|
105
|
+
// `position: fixed` descendants, and everything portaled into
|
|
106
|
+
// the panel below — a Select dropdown, above all — is fixed and
|
|
107
|
+
// positioned in viewport coordinates. Inside a containing block
|
|
108
|
+
// those coordinates are resolved against the panel instead, so
|
|
109
|
+
// every popup was displaced by the panel's own offset and a
|
|
110
|
+
// right-hand Select opened its list off the edge of the screen:
|
|
111
|
+
// the dropdown was open, just nowhere anyone could see it.
|
|
104
112
|
"text-surface-accent-900 dark:text-white",
|
|
105
113
|
"fixed transform z-50 transition-[transform,opacity] ease-in-out",
|
|
106
114
|
!displayed ? "duration-150" : "duration-100",
|
|
@@ -194,7 +194,7 @@ export const VirtualTableHeader = React.memo<VirtualTableHeaderProps<Record<stri
|
|
|
194
194
|
and nothing about which one decides. */}
|
|
195
195
|
{sort && sortPosition !== undefined && (
|
|
196
196
|
<span
|
|
197
|
-
className="flex-shrink-0 -ml-0.5 mr-0.5 text-[10px] font-
|
|
197
|
+
className="flex-shrink-0 -ml-0.5 mr-0.5 text-[10px] font-semibold leading-none tabular-nums text-text-secondary dark:text-text-secondary-dark"
|
|
198
198
|
aria-hidden={true}
|
|
199
199
|
>
|
|
200
200
|
{sortPosition + 1}
|
package/src/index.css
CHANGED
|
@@ -37,28 +37,28 @@ html.dark {
|
|
|
37
37
|
and holding 600 all the way down to text-sm made every heading shout equally
|
|
38
38
|
— a heading stops being a headline somewhere, and the scale should say where.
|
|
39
39
|
|
|
40
|
-
The ladder
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
whole weight axis is already in the file that ships. The earlier "never above
|
|
49
|
-
600" rule was written when static weights meant every step was another
|
|
50
|
-
download; that constraint no longer exists.
|
|
40
|
+
The ladder spans three weights — 400/500/600 — and 600 is the ceiling. No
|
|
41
|
+
tier goes to 700: the display end separates itself by SIZE and tracking, not
|
|
42
|
+
by weight, and a 30px 700 next to a 30px 500 elsewhere on the same product
|
|
43
|
+
reads as two different type systems rather than one ladder.
|
|
44
|
+
|
|
45
|
+
Both faces load as VARIABLE fonts (@fontsource-variable/inter,
|
|
46
|
+
@fontsource-variable/instrument-sans), so the whole axis ships either way —
|
|
47
|
+
the 600 ceiling is a design decision, not a payload one.
|
|
51
48
|
|
|
52
49
|
With a single face carrying both headings and body, weight and tracking are
|
|
53
50
|
the only things separating a heading from the copy around it — so the tiers
|
|
54
51
|
have to actually differ, rather than all sitting at 600. */
|
|
55
52
|
|
|
53
|
+
/* 500, not 700. This reverses the 2026-08 "700 for display" decision on
|
|
54
|
+
purpose: the marketing site and the panel were running different display
|
|
55
|
+
weights, which is the single most visible incoherence between them. */
|
|
56
56
|
.typography-h1 {
|
|
57
|
-
@apply text-4xl font-headers font-
|
|
57
|
+
@apply text-4xl font-headers font-medium tracking-display;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
.typography-h2 {
|
|
61
|
-
@apply text-3xl font-headers font-
|
|
61
|
+
@apply text-3xl font-headers font-medium tracking-display;
|
|
62
62
|
}
|
|
63
63
|
|
|
64
64
|
.typography-h3 {
|
|
@@ -144,10 +144,11 @@ html.dark {
|
|
|
144
144
|
@apply font-mono tabular-nums;
|
|
145
145
|
}
|
|
146
146
|
|
|
147
|
-
/* The headline number on a stat tile. Display
|
|
148
|
-
|
|
147
|
+
/* The headline number on a stat tile. Display tracking and tabular figures so a
|
|
148
|
+
row of tiles shares a baseline grid. Semibold, not bold: the number is
|
|
149
|
+
already the largest thing on the tile, and 600 is the system ceiling. */
|
|
149
150
|
.typography-stat {
|
|
150
|
-
@apply text-3xl font-headers font-
|
|
151
|
+
@apply text-3xl font-headers font-semibold tracking-display tabular-nums;
|
|
151
152
|
}
|
|
152
153
|
|
|
153
154
|
:focus-visible {
|
package/src/theme.css
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
console and the marketing site all spell the same intent the same way
|
|
27
27
|
instead of each hardcoding its own em value. Pair display/title with
|
|
28
28
|
font-semibold and heading with font-medium. */
|
|
29
|
-
--tracking-display: -0.
|
|
29
|
+
--tracking-display: -0.022em; /* >= 30px — the headline tier; matches the marketing site */
|
|
30
30
|
--tracking-title: -0.018em; /* 20-24px — section titles */
|
|
31
31
|
--tracking-heading: -0.01em; /* <= 18px — labels; still a heading, not a headline */
|
|
32
32
|
|