@texturehq/edges 1.23.2 → 1.23.4

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.
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Responsive Typography Scale
3
+ *
4
+ * Font sizes scale down on mobile for better readability on small screens.
5
+ * Desktop values match the canonical design tokens.
6
+ *
7
+ * Strategy: Keep xs/sm/base standard for legibility, compress hierarchy from lg upward.
8
+ *
9
+ * Note: Tailwind 4 uses --text-* variables (e.g., --text-4xl) for its utility classes,
10
+ * so we override those here. The --font-size-* variables are also overridden for
11
+ * any code that references them directly.
12
+ */
13
+
14
+ @layer base {
15
+ :root {
16
+ /* MOBILE scale (keep sm/base standard for legibility) */
17
+
18
+ /* Tailwind 4 utility variables (--text-*) */
19
+ --text-xs: 0.75rem; /* 12px */
20
+ --text-sm: 0.875rem; /* 14px */
21
+ --text-base: 1rem; /* 16px */
22
+ --text-lg: 1rem; /* 16px (was 18px desktop) */
23
+ --text-xl: 1.125rem; /* 18px */
24
+ --text-2xl: 1.25rem; /* 20px */
25
+ --text-3xl: 1.5rem; /* 24px */
26
+ --text-4xl: 1.875rem; /* 30px */
27
+ --text-5xl: 2.25rem; /* 36px */
28
+ --text-6xl: 3rem; /* 48px */
29
+ --text-7xl: 3.5rem; /* 56px */
30
+ --text-8xl: 4rem; /* 64px */
31
+ --text-9xl: 4.5rem; /* 72px */
32
+
33
+ /* Design token variables (--font-size-*) for direct references */
34
+ --font-size-xs: 0.75rem; /* 12px */
35
+ --font-size-sm: 0.875rem; /* 14px */
36
+ --font-size-base: 1rem; /* 16px */
37
+ --font-size-lg: 1rem; /* 16px (was 18px desktop) */
38
+ --font-size-xl: 1.125rem; /* 18px */
39
+ --font-size-2xl: 1.25rem; /* 20px */
40
+ --font-size-3xl: 1.5rem; /* 24px */
41
+ --font-size-4xl: 1.875rem; /* 30px */
42
+ --font-size-5xl: 2.25rem; /* 36px */
43
+ --font-size-6xl: 3rem; /* 48px */
44
+ --font-size-7xl: 3.5rem; /* 56px */
45
+ --font-size-8xl: 4rem; /* 64px */
46
+ --font-size-9xl: 4.5rem; /* 72px */
47
+ }
48
+
49
+ @media (min-width: 768px) {
50
+ :root {
51
+ /* DESKTOP scale (canonical token values) */
52
+
53
+ /* Tailwind 4 utility variables (--text-*) */
54
+ --text-xs: 0.75rem; /* 12px */
55
+ --text-sm: 0.875rem; /* 14px */
56
+ --text-base: 1rem; /* 16px */
57
+ --text-lg: 1.125rem; /* 18px */
58
+ --text-xl: 1.25rem; /* 20px */
59
+ --text-2xl: 1.5rem; /* 24px */
60
+ --text-3xl: 1.875rem; /* 30px */
61
+ --text-4xl: 2.25rem; /* 36px */
62
+ --text-5xl: 3rem; /* 48px */
63
+ --text-6xl: 3.75rem; /* 60px */
64
+ --text-7xl: 4.5rem; /* 72px */
65
+ --text-8xl: 6rem; /* 96px */
66
+ --text-9xl: 8rem; /* 128px */
67
+
68
+ /* Design token variables (--font-size-*) for direct references */
69
+ --font-size-xs: 0.75rem; /* 12px */
70
+ --font-size-sm: 0.875rem; /* 14px */
71
+ --font-size-base: 1rem; /* 16px */
72
+ --font-size-lg: 1.125rem; /* 18px */
73
+ --font-size-xl: 1.25rem; /* 20px */
74
+ --font-size-2xl: 1.5rem; /* 24px */
75
+ --font-size-3xl: 1.875rem; /* 30px */
76
+ --font-size-4xl: 2.25rem; /* 36px */
77
+ --font-size-5xl: 3rem; /* 48px */
78
+ --font-size-6xl: 3.75rem; /* 60px */
79
+ --font-size-7xl: 4.5rem; /* 72px */
80
+ --font-size-8xl: 6rem; /* 96px */
81
+ --font-size-9xl: 8rem; /* 128px */
82
+ }
83
+ }
84
+ }
package/dist/styles.css CHANGED
@@ -440,19 +440,6 @@
440
440
  --font-family-brand: 'TT Firs Neue', 'Helvetica Neue', Arial, system-ui, sans-serif;
441
441
  --font-family-serif: Merriweather, serif;
442
442
  --font-family-mono: 'Fira Code', monospace;
443
- --font-size-xs: 0.75rem;
444
- --font-size-sm: 0.875rem;
445
- --font-size-base: 1rem;
446
- --font-size-lg: 1.125rem;
447
- --font-size-xl: 1.25rem;
448
- --font-size-2xl: 1.5rem;
449
- --font-size-3xl: 1.875rem;
450
- --font-size-4xl: 2.25rem;
451
- --font-size-5xl: 3rem;
452
- --font-size-6xl: 3.75rem;
453
- --font-size-7xl: 4.5rem;
454
- --font-size-8xl: 6rem;
455
- --font-size-9xl: 8rem;
456
443
  --font-weight-thin: 100;
457
444
  --font-weight-extralight: 200;
458
445
  --font-weight-light: 300;
@@ -703,6 +690,66 @@
703
690
  --color-skeleton-highlight: #4b5563;
704
691
  --color-skeleton-wave: rgba(255, 255, 255, 0.15);
705
692
  }
693
+ @layer base {
694
+ :root {
695
+ --text-xs: 0.75rem;
696
+ --text-sm: 0.875rem;
697
+ --text-base: 1rem;
698
+ --text-lg: 1rem;
699
+ --text-xl: 1.125rem;
700
+ --text-2xl: 1.25rem;
701
+ --text-3xl: 1.5rem;
702
+ --text-4xl: 1.875rem;
703
+ --text-5xl: 2.25rem;
704
+ --text-6xl: 3rem;
705
+ --text-7xl: 3.5rem;
706
+ --text-8xl: 4rem;
707
+ --text-9xl: 4.5rem;
708
+ --font-size-xs: 0.75rem;
709
+ --font-size-sm: 0.875rem;
710
+ --font-size-base: 1rem;
711
+ --font-size-lg: 1rem;
712
+ --font-size-xl: 1.125rem;
713
+ --font-size-2xl: 1.25rem;
714
+ --font-size-3xl: 1.5rem;
715
+ --font-size-4xl: 1.875rem;
716
+ --font-size-5xl: 2.25rem;
717
+ --font-size-6xl: 3rem;
718
+ --font-size-7xl: 3.5rem;
719
+ --font-size-8xl: 4rem;
720
+ --font-size-9xl: 4.5rem;
721
+ }
722
+ @media (min-width: 768px) {
723
+ :root {
724
+ --text-xs: 0.75rem;
725
+ --text-sm: 0.875rem;
726
+ --text-base: 1rem;
727
+ --text-lg: 1.125rem;
728
+ --text-xl: 1.25rem;
729
+ --text-2xl: 1.5rem;
730
+ --text-3xl: 1.875rem;
731
+ --text-4xl: 2.25rem;
732
+ --text-5xl: 3rem;
733
+ --text-6xl: 3.75rem;
734
+ --text-7xl: 4.5rem;
735
+ --text-8xl: 6rem;
736
+ --text-9xl: 8rem;
737
+ --font-size-xs: 0.75rem;
738
+ --font-size-sm: 0.875rem;
739
+ --font-size-base: 1rem;
740
+ --font-size-lg: 1.125rem;
741
+ --font-size-xl: 1.25rem;
742
+ --font-size-2xl: 1.5rem;
743
+ --font-size-3xl: 1.875rem;
744
+ --font-size-4xl: 2.25rem;
745
+ --font-size-5xl: 3rem;
746
+ --font-size-6xl: 3.75rem;
747
+ --font-size-7xl: 4.5rem;
748
+ --font-size-8xl: 6rem;
749
+ --font-size-9xl: 8rem;
750
+ }
751
+ }
752
+ }
706
753
  :root {
707
754
  --color-viz-default: #0082ff;
708
755
  --color-viz-categorical-1: #a3eae4;
@@ -1628,6 +1675,9 @@
1628
1675
  .-mt-px {
1629
1676
  margin-top: -1px;
1630
1677
  }
1678
+ .mt-0 {
1679
+ margin-top: var(--spacing-0);
1680
+ }
1631
1681
  .mt-0\.5 {
1632
1682
  margin-top: calc(var(--spacing) * 0.5);
1633
1683
  }
@@ -1664,6 +1714,9 @@
1664
1714
  .mr-3 {
1665
1715
  margin-right: var(--spacing-3);
1666
1716
  }
1717
+ .-mb-2 {
1718
+ margin-bottom: calc(var(--spacing-2) * -1);
1719
+ }
1667
1720
  .mb-0\.5 {
1668
1721
  margin-bottom: calc(var(--spacing) * 0.5);
1669
1722
  }
@@ -1835,9 +1888,6 @@
1835
1888
  .h-\[60px\] {
1836
1889
  height: 60px;
1837
1890
  }
1838
- .h-\[70vh\] {
1839
- height: 70vh;
1840
- }
1841
1891
  .h-\[100dvh\] {
1842
1892
  height: 100dvh;
1843
1893
  }
@@ -2127,10 +2177,6 @@
2127
2177
  .max-w-\[600px\] {
2128
2178
  max-width: 600px;
2129
2179
  }
2130
- .max-w-fit {
2131
- max-width: -moz-fit-content;
2132
- max-width: fit-content;
2133
- }
2134
2180
  .max-w-full {
2135
2181
  max-width: 100%;
2136
2182
  }
@@ -2328,6 +2374,9 @@
2328
2374
  .cursor-default {
2329
2375
  cursor: default;
2330
2376
  }
2377
+ .cursor-grab {
2378
+ cursor: grab;
2379
+ }
2331
2380
  .cursor-help {
2332
2381
  cursor: help;
2333
2382
  }
@@ -2343,6 +2392,9 @@
2343
2392
  .cursor-text {
2344
2393
  cursor: text;
2345
2394
  }
2395
+ .touch-none {
2396
+ touch-action: none;
2397
+ }
2346
2398
  .resize {
2347
2399
  resize: both;
2348
2400
  }
@@ -2446,6 +2498,9 @@
2446
2498
  .flex-row {
2447
2499
  flex-direction: row;
2448
2500
  }
2501
+ .flex-nowrap {
2502
+ flex-wrap: nowrap;
2503
+ }
2449
2504
  .flex-wrap {
2450
2505
  flex-wrap: wrap;
2451
2506
  }
@@ -2779,6 +2834,10 @@
2779
2834
  border-top-left-radius: var(--radius-none);
2780
2835
  border-top-right-radius: var(--radius-none);
2781
2836
  }
2837
+ .rounded-t-xl {
2838
+ border-top-left-radius: var(--radius-xl);
2839
+ border-top-right-radius: var(--radius-xl);
2840
+ }
2782
2841
  .rounded-l-sm {
2783
2842
  border-top-left-radius: var(--radius-sm);
2784
2843
  border-bottom-left-radius: var(--radius-sm);
@@ -5336,6 +5395,11 @@
5336
5395
  outline-style: none;
5337
5396
  }
5338
5397
  }
5398
+ .active\:cursor-grabbing {
5399
+ &:active {
5400
+ cursor: grabbing;
5401
+ }
5402
+ }
5339
5403
  .active\:bg-background-muted {
5340
5404
  &:active {
5341
5405
  background-color: var(--color-background-muted);
@@ -5569,6 +5633,21 @@
5569
5633
  grid-column: 1 / -1;
5570
5634
  }
5571
5635
  }
5636
+ .sm\:mx-4 {
5637
+ @media (width >= 40rem) {
5638
+ margin-inline: var(--spacing-4);
5639
+ }
5640
+ }
5641
+ .sm\:mt-4 {
5642
+ @media (width >= 40rem) {
5643
+ margin-top: var(--spacing-4);
5644
+ }
5645
+ }
5646
+ .sm\:-mb-0 {
5647
+ @media (width >= 40rem) {
5648
+ margin-bottom: calc(var(--spacing-0) * -1);
5649
+ }
5650
+ }
5572
5651
  .sm\:block {
5573
5652
  @media (width >= 40rem) {
5574
5653
  display: block;
@@ -5609,6 +5688,11 @@
5609
5688
  max-width: var(--container-sm);
5610
5689
  }
5611
5690
  }
5691
+ .sm\:auto-rows-fr {
5692
+ @media (width >= 40rem) {
5693
+ grid-auto-rows: minmax(0, 1fr);
5694
+ }
5695
+ }
5612
5696
  .sm\:grid-cols-1 {
5613
5697
  @media (width >= 40rem) {
5614
5698
  grid-template-columns: repeat(1, minmax(0, 1fr));
@@ -5689,6 +5773,27 @@
5689
5773
  justify-content: space-between;
5690
5774
  }
5691
5775
  }
5776
+ .sm\:overflow-visible {
5777
+ @media (width >= 40rem) {
5778
+ overflow: visible;
5779
+ }
5780
+ }
5781
+ .sm\:rounded-xl {
5782
+ @media (width >= 40rem) {
5783
+ border-radius: var(--radius-xl);
5784
+ }
5785
+ }
5786
+ .sm\:border {
5787
+ @media (width >= 40rem) {
5788
+ border-style: var(--tw-border-style);
5789
+ border-width: 1px;
5790
+ }
5791
+ }
5792
+ .sm\:border-border-default {
5793
+ @media (width >= 40rem) {
5794
+ border-color: var(--color-border-default);
5795
+ }
5796
+ }
5692
5797
  .sm\:p-2 {
5693
5798
  @media (width >= 40rem) {
5694
5799
  padding: var(--spacing-2);
@@ -5699,6 +5804,11 @@
5699
5804
  padding: var(--spacing-4);
5700
5805
  }
5701
5806
  }
5807
+ .sm\:pb-0 {
5808
+ @media (width >= 40rem) {
5809
+ padding-bottom: var(--spacing-0);
5810
+ }
5811
+ }
5702
5812
  .md\:relative {
5703
5813
  @media (width >= 48rem) {
5704
5814
  position: relative;
package/dist/theme.css CHANGED
@@ -13,6 +13,10 @@
13
13
  @import "./generated/tailwind-tokens-light.css";
14
14
  @import "./generated/tailwind-tokens-dark.css";
15
15
 
16
+ /* Layer 1b: Responsive Typography
17
+ Overrides font-size tokens with responsive values (smaller on mobile, larger on desktop) */
18
+ @import "./styles/responsive-typography.css";
19
+
16
20
  /* Data visualization colors loaded separately due to Tailwind 4 @theme filtering
17
21
  See: https://github.com/tailwindlabs/tailwindcss/issues/XXXXX
18
22
  These variables are also in tailwind-tokens-light.css but Tailwind strips them
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "1.23.2",
3
- "generatedAt": "2025-11-25T23:02:10.040Z",
2
+ "version": "1.23.4",
3
+ "generatedAt": "2025-11-27T19:50:37.390Z",
4
4
  "categories": {
5
5
  "hooks": {
6
6
  "description": "React hooks for common functionality like breakpoints, debouncing, local storage, and media queries",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@texturehq/edges",
3
- "version": "1.23.2",
3
+ "version": "1.23.4",
4
4
  "author": "Nicholas Brown <nick@texturehq.com>",
5
5
  "description": "A shared component library for Texture",
6
6
  "type": "module",
@@ -14,6 +14,7 @@ try {
14
14
  "src/styles/animations.css",
15
15
  "src/styles/computed.css",
16
16
  "src/styles/utilities.css",
17
+ "src/styles/responsive-typography.css",
17
18
  ];
18
19
 
19
20
  // Create styles directory in dist