@primer/primitives 11.3.2 → 11.4.0-rc.7bb41c84

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.
@@ -123,7 +123,7 @@
123
123
  "filePath": "src/tokens/functional/typography/typography.json5",
124
124
  "isSource": true,
125
125
  "original": {
126
- "$value": 1.5,
126
+ "$value": "{base.text.lineHeight.normal}",
127
127
  "$type": "number",
128
128
  "$extensions": {
129
129
  "org.primer.data": {
@@ -142,7 +142,7 @@
142
142
  },
143
143
  "text-body-lineHeight-medium": {
144
144
  "key": "{text.body.lineHeight.medium}",
145
- "$value": 1.42857,
145
+ "$value": 1.5,
146
146
  "$type": "number",
147
147
  "$extensions": {
148
148
  "org.primer.data": {
@@ -156,7 +156,7 @@
156
156
  "filePath": "src/tokens/functional/typography/typography.json5",
157
157
  "isSource": true,
158
158
  "original": {
159
- "$value": 1.42857,
159
+ "$value": "{base.text.lineHeight.normal}",
160
160
  "$type": "number",
161
161
  "$extensions": {
162
162
  "org.primer.data": {
@@ -175,7 +175,7 @@
175
175
  },
176
176
  "text-body-lineHeight-small": {
177
177
  "key": "{text.body.lineHeight.small}",
178
- "$value": 1.66667,
178
+ "$value": 1.625,
179
179
  "$type": "number",
180
180
  "$extensions": {
181
181
  "org.primer.data": {
@@ -189,7 +189,7 @@
189
189
  "filePath": "src/tokens/functional/typography/typography.json5",
190
190
  "isSource": true,
191
191
  "original": {
192
- "$value": 1.66667,
192
+ "$value": "{base.text.lineHeight.relaxed}",
193
193
  "$type": "number",
194
194
  "$extensions": {
195
195
  "org.primer.data": {
@@ -208,7 +208,7 @@
208
208
  },
209
209
  "text-body-shorthand-large": {
210
210
  "key": "{text.body.shorthand.large}",
211
- "$value": "400 1rem,16px/1.5 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
211
+ "$value": "400 ,16px/1.5 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
212
212
  "$type": "typography",
213
213
  "$description": "User-generated content, markdown rendering.",
214
214
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -230,7 +230,7 @@
230
230
  },
231
231
  "text-body-shorthand-medium": {
232
232
  "key": "{text.body.shorthand.medium}",
233
- "$value": "400 0.875rem,14px/1.42857 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
233
+ "$value": "400 ,14px/1.5 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
234
234
  "$type": "typography",
235
235
  "$description": "Default UI font. Most commonly used for body text.",
236
236
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -252,7 +252,7 @@
252
252
  },
253
253
  "text-body-shorthand-small": {
254
254
  "key": "{text.body.shorthand.small}",
255
- "$value": "400 0.75rem,12px/1.66667 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
255
+ "$value": "400 ,12px/1.625 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
256
256
  "$type": "typography",
257
257
  "$description": "Small body text for discrete UI applications, such as helper, footnote text. Should be used sparingly across pages. Line-height matches Body (medium) at 20px.",
258
258
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -274,7 +274,7 @@
274
274
  },
275
275
  "text-body-size-large": {
276
276
  "key": "{text.body.size.large}",
277
- "$value": ["1rem", "16px"],
277
+ "$value": [null, "16px"],
278
278
  "$type": "dimension",
279
279
  "$extensions": {
280
280
  "org.primer.figma": {
@@ -285,7 +285,7 @@
285
285
  "filePath": "src/tokens/functional/typography/typography.json5",
286
286
  "isSource": true,
287
287
  "original": {
288
- "$value": "16px",
288
+ "$value": "{base.text.size.md}",
289
289
  "$type": "dimension",
290
290
  "$extensions": {
291
291
  "org.primer.figma": {
@@ -301,7 +301,7 @@
301
301
  },
302
302
  "text-body-size-medium": {
303
303
  "key": "{text.body.size.medium}",
304
- "$value": ["0.875rem", "14px"],
304
+ "$value": [null, "14px"],
305
305
  "$type": "dimension",
306
306
  "$extensions": {
307
307
  "org.primer.figma": {
@@ -312,7 +312,7 @@
312
312
  "filePath": "src/tokens/functional/typography/typography.json5",
313
313
  "isSource": true,
314
314
  "original": {
315
- "$value": "14px",
315
+ "$value": "{base.text.size.sm}",
316
316
  "$type": "dimension",
317
317
  "$extensions": {
318
318
  "org.primer.figma": {
@@ -328,7 +328,7 @@
328
328
  },
329
329
  "text-body-size-small": {
330
330
  "key": "{text.body.size.small}",
331
- "$value": ["0.75rem", "12px"],
331
+ "$value": [null, "12px"],
332
332
  "$type": "dimension",
333
333
  "$extensions": {
334
334
  "org.primer.figma": {
@@ -339,7 +339,7 @@
339
339
  "filePath": "src/tokens/functional/typography/typography.json5",
340
340
  "isSource": true,
341
341
  "original": {
342
- "$value": "12px",
342
+ "$value": "{base.text.size.xs}",
343
343
  "$type": "dimension",
344
344
  "$extensions": {
345
345
  "org.primer.figma": {
@@ -382,7 +382,7 @@
382
382
  },
383
383
  "text-caption-lineHeight": {
384
384
  "key": "{text.caption.lineHeight}",
385
- "$value": 1.3333,
385
+ "$value": 1.25,
386
386
  "$type": "number",
387
387
  "$extensions": {
388
388
  "org.primer.data": {
@@ -396,7 +396,7 @@
396
396
  "filePath": "src/tokens/functional/typography/typography.json5",
397
397
  "isSource": true,
398
398
  "original": {
399
- "$value": 1.3333,
399
+ "$value": "{base.text.lineHeight.tight}",
400
400
  "$type": "number",
401
401
  "$extensions": {
402
402
  "org.primer.data": {
@@ -415,7 +415,7 @@
415
415
  },
416
416
  "text-caption-shorthand": {
417
417
  "key": "{text.caption.shorthand}",
418
- "$value": "400 0.75rem,12px/1.3333 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
418
+ "$value": "400 ,12px/1.25 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
419
419
  "$type": "typography",
420
420
  "$description": "Compact small font with a smaller line height of 16px. Use it for single-line scenarios, as the small sizing doesn’t pass accessibility requirements.",
421
421
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -437,7 +437,7 @@
437
437
  },
438
438
  "text-caption-size": {
439
439
  "key": "{text.caption.size}",
440
- "$value": ["0.75rem", "12px"],
440
+ "$value": [null, "12px"],
441
441
  "$type": "dimension",
442
442
  "$extensions": {
443
443
  "org.primer.figma": {
@@ -448,7 +448,7 @@
448
448
  "filePath": "src/tokens/functional/typography/typography.json5",
449
449
  "isSource": true,
450
450
  "original": {
451
- "$value": "12px",
451
+ "$value": "{base.text.size.xs}",
452
452
  "$type": "dimension",
453
453
  "$extensions": {
454
454
  "org.primer.figma": {
@@ -491,7 +491,7 @@
491
491
  },
492
492
  "text-codeBlock-lineHeight": {
493
493
  "key": "{text.codeBlock.lineHeight}",
494
- "$value": 1.5385,
494
+ "$value": 1.5,
495
495
  "$type": "number",
496
496
  "$extensions": {
497
497
  "org.primer.data": {
@@ -505,7 +505,7 @@
505
505
  "filePath": "src/tokens/functional/typography/typography.json5",
506
506
  "isSource": true,
507
507
  "original": {
508
- "$value": 1.5385,
508
+ "$value": "{base.text.lineHeight.normal}",
509
509
  "$type": "number",
510
510
  "$extensions": {
511
511
  "org.primer.data": {
@@ -524,7 +524,7 @@
524
524
  },
525
525
  "text-codeBlock-shorthand": {
526
526
  "key": "{text.codeBlock.shorthand}",
527
- "$value": "400 0.8125rem,13px/1.5385 ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace",
527
+ "$value": "400 0.8125rem,13px/1.5 ui-monospace, SFMono-Regular, SF Mono, Menlo, Consolas, Liberation Mono, monospace",
528
528
  "$type": "typography",
529
529
  "$description": "Default style for rendering code blocks.",
530
530
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -675,7 +675,7 @@
675
675
  },
676
676
  "text-display-lineBoxHeight": {
677
677
  "key": "{text.display.lineBoxHeight}",
678
- "$value": 1.4,
678
+ "$value": 1.375,
679
679
  "$type": "number",
680
680
  "$extensions": {
681
681
  "org.primer.data": {
@@ -690,7 +690,7 @@
690
690
  "filePath": "src/tokens/functional/typography/typography.json5",
691
691
  "isSource": true,
692
692
  "original": {
693
- "$value": 1.4,
693
+ "$value": "{base.text.lineHeight.snug}",
694
694
  "$type": "number",
695
695
  "$extensions": {
696
696
  "org.primer.data": {
@@ -710,7 +710,7 @@
710
710
  },
711
711
  "text-display-lineHeight": {
712
712
  "key": "{text.display.lineHeight}",
713
- "$value": 1.4,
713
+ "$value": 1.375,
714
714
  "$type": "number",
715
715
  "$extensions": {
716
716
  "org.primer.data": {
@@ -724,7 +724,7 @@
724
724
  "filePath": "src/tokens/functional/typography/typography.json5",
725
725
  "isSource": true,
726
726
  "original": {
727
- "$value": 1.4,
727
+ "$value": "{base.text.lineHeight.snug}",
728
728
  "$type": "number",
729
729
  "$extensions": {
730
730
  "org.primer.data": {
@@ -743,7 +743,7 @@
743
743
  },
744
744
  "text-display-shorthand": {
745
745
  "key": "{text.display.shorthand}",
746
- "$value": "500 2.5rem,40px/1.4 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
746
+ "$value": "500 ,40px/1.375 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
747
747
  "$type": "typography",
748
748
  "$description": "Hero-style text for brand to product transition pages. Utilize Title (large) styles on narrow viewports.",
749
749
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -765,7 +765,7 @@
765
765
  },
766
766
  "text-display-size": {
767
767
  "key": "{text.display.size}",
768
- "$value": ["2.5rem", "40px"],
768
+ "$value": [null, "40px"],
769
769
  "$type": "dimension",
770
770
  "$extensions": {
771
771
  "org.primer.figma": {
@@ -776,7 +776,7 @@
776
776
  "filePath": "src/tokens/functional/typography/typography.json5",
777
777
  "isSource": true,
778
778
  "original": {
779
- "$value": "40px",
779
+ "$value": "{base.text.size.2xl}",
780
780
  "$type": "dimension",
781
781
  "$extensions": {
782
782
  "org.primer.figma": {
@@ -819,7 +819,7 @@
819
819
  },
820
820
  "text-subtitle-lineHeight": {
821
821
  "key": "{text.subtitle.lineHeight}",
822
- "$value": 1.6,
822
+ "$value": 1.625,
823
823
  "$type": "number",
824
824
  "$extensions": {
825
825
  "org.primer.data": {
@@ -833,7 +833,7 @@
833
833
  "filePath": "src/tokens/functional/typography/typography.json5",
834
834
  "isSource": true,
835
835
  "original": {
836
- "$value": 1.6,
836
+ "$value": "{base.text.lineHeight.relaxed}",
837
837
  "$type": "number",
838
838
  "$extensions": {
839
839
  "org.primer.data": {
@@ -852,7 +852,7 @@
852
852
  },
853
853
  "text-subtitle-shorthand": {
854
854
  "key": "{text.subtitle.shorthand}",
855
- "$value": "400 1.25rem,20px/1.6 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
855
+ "$value": "400 ,20px/1.625 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
856
856
  "$type": "typography",
857
857
  "$description": "Page sections/sub headings, or less important object names in page titles (automated action titles, for example). Same line-height as title (medium).",
858
858
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -874,7 +874,7 @@
874
874
  },
875
875
  "text-subtitle-size": {
876
876
  "key": "{text.subtitle.size}",
877
- "$value": ["1.25rem", "20px"],
877
+ "$value": [null, "20px"],
878
878
  "$type": "dimension",
879
879
  "$extensions": {
880
880
  "org.primer.figma": {
@@ -885,7 +885,7 @@
885
885
  "filePath": "src/tokens/functional/typography/typography.json5",
886
886
  "isSource": true,
887
887
  "original": {
888
- "$value": "20px",
888
+ "$value": "{base.text.size.lg}",
889
889
  "$type": "dimension",
890
890
  "$extensions": {
891
891
  "org.primer.figma": {
@@ -942,7 +942,7 @@
942
942
  "filePath": "src/tokens/functional/typography/typography.json5",
943
943
  "isSource": true,
944
944
  "original": {
945
- "$value": 1.5,
945
+ "$value": "{base.text.lineHeight.normal}",
946
946
  "$type": "number",
947
947
  "$extensions": {
948
948
  "org.primer.data": {
@@ -961,7 +961,7 @@
961
961
  },
962
962
  "text-title-lineHeight-medium": {
963
963
  "key": "{text.title.lineHeight.medium}",
964
- "$value": 1.6,
964
+ "$value": 1.625,
965
965
  "$type": "number",
966
966
  "$extensions": {
967
967
  "org.primer.data": {
@@ -975,7 +975,7 @@
975
975
  "filePath": "src/tokens/functional/typography/typography.json5",
976
976
  "isSource": true,
977
977
  "original": {
978
- "$value": 1.6,
978
+ "$value": "{base.text.lineHeight.relaxed}",
979
979
  "$type": "number",
980
980
  "$extensions": {
981
981
  "org.primer.data": {
@@ -1008,7 +1008,7 @@
1008
1008
  "filePath": "src/tokens/functional/typography/typography.json5",
1009
1009
  "isSource": true,
1010
1010
  "original": {
1011
- "$value": 1.5,
1011
+ "$value": "{base.text.lineHeight.normal}",
1012
1012
  "$type": "number",
1013
1013
  "$extensions": {
1014
1014
  "org.primer.data": {
@@ -1027,7 +1027,7 @@
1027
1027
  },
1028
1028
  "text-title-shorthand-large": {
1029
1029
  "key": "{text.title.shorthand.large}",
1030
- "$value": "600 2rem,32px/1.5 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
1030
+ "$value": "600 ,32px/1.5 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
1031
1031
  "$type": "typography",
1032
1032
  "$description": "Page headings for user-created objects, such as issues or pull requests. Utilize title (medium) styles on narrow viewports.",
1033
1033
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -1049,7 +1049,7 @@
1049
1049
  },
1050
1050
  "text-title-shorthand-medium": {
1051
1051
  "key": "{text.title.shorthand.medium}",
1052
- "$value": "600 1.25rem,20px/1.6 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
1052
+ "$value": "600 ,20px/1.625 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
1053
1053
  "$type": "typography",
1054
1054
  "$description": "Default page title. The 32px-equivalent line-height matches with button and other medium control heights. Great for page header composition.",
1055
1055
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -1071,7 +1071,7 @@
1071
1071
  },
1072
1072
  "text-title-shorthand-small": {
1073
1073
  "key": "{text.title.shorthand.small}",
1074
- "$value": "600 1rem,16px/1.5 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
1074
+ "$value": "600 ,16px/1.5 -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji'",
1075
1075
  "$type": "typography",
1076
1076
  "$description": "Uses the same size as body (large) with a heavier weight of semibold (600).",
1077
1077
  "filePath": "src/tokens/functional/typography/typography.json5",
@@ -1093,7 +1093,7 @@
1093
1093
  },
1094
1094
  "text-title-size-large": {
1095
1095
  "key": "{text.title.size.large}",
1096
- "$value": ["2rem", "32px"],
1096
+ "$value": [null, "32px"],
1097
1097
  "$type": "dimension",
1098
1098
  "$extensions": {
1099
1099
  "org.primer.figma": {
@@ -1104,7 +1104,7 @@
1104
1104
  "filePath": "src/tokens/functional/typography/typography.json5",
1105
1105
  "isSource": true,
1106
1106
  "original": {
1107
- "$value": "32px",
1107
+ "$value": "{base.text.size.xl}",
1108
1108
  "$type": "dimension",
1109
1109
  "$extensions": {
1110
1110
  "org.primer.figma": {
@@ -1120,7 +1120,7 @@
1120
1120
  },
1121
1121
  "text-title-size-medium": {
1122
1122
  "key": "{text.title.size.medium}",
1123
- "$value": ["1.25rem", "20px"],
1123
+ "$value": [null, "20px"],
1124
1124
  "$type": "dimension",
1125
1125
  "$extensions": {
1126
1126
  "org.primer.figma": {
@@ -1131,7 +1131,7 @@
1131
1131
  "filePath": "src/tokens/functional/typography/typography.json5",
1132
1132
  "isSource": true,
1133
1133
  "original": {
1134
- "$value": "20px",
1134
+ "$value": "{base.text.size.lg}",
1135
1135
  "$type": "dimension",
1136
1136
  "$extensions": {
1137
1137
  "org.primer.figma": {
@@ -1147,7 +1147,7 @@
1147
1147
  },
1148
1148
  "text-title-size-small": {
1149
1149
  "key": "{text.title.size.small}",
1150
- "$value": ["1rem", "16px"],
1150
+ "$value": [null, "16px"],
1151
1151
  "$type": "dimension",
1152
1152
  "$extensions": {
1153
1153
  "org.primer.figma": {
@@ -1158,7 +1158,7 @@
1158
1158
  "filePath": "src/tokens/functional/typography/typography.json5",
1159
1159
  "isSource": true,
1160
1160
  "original": {
1161
- "$value": "16px",
1161
+ "$value": "{base.text.size.md}",
1162
1162
  "$type": "dimension",
1163
1163
  "$extensions": {
1164
1164
  "org.primer.figma": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primer/primitives",
3
- "version": "11.3.2",
3
+ "version": "11.4.0-rc.7bb41c84",
4
4
  "description": "Typography, spacing, and color primitives for Primer design system",
5
5
  "type": "module",
6
6
  "files": [
@@ -1,6 +1,74 @@
1
1
  {
2
2
  base: {
3
3
  text: {
4
+ size: {
5
+ xs: {
6
+ $value: '0.75rem',
7
+ $type: 'dimension',
8
+ $description: '12px - Smallest text size for captions and compact UI elements.',
9
+ $extensions: {
10
+ 'org.primer.figma': {
11
+ collection: 'base/typography',
12
+ scopes: ['fontSize'],
13
+ },
14
+ },
15
+ },
16
+ sm: {
17
+ $value: '0.875rem',
18
+ $type: 'dimension',
19
+ $description: '14px - Default body text size for UI.',
20
+ $extensions: {
21
+ 'org.primer.figma': {
22
+ collection: 'base/typography',
23
+ scopes: ['fontSize'],
24
+ },
25
+ },
26
+ },
27
+ md: {
28
+ $value: '1rem',
29
+ $type: 'dimension',
30
+ $description: '16px - Large body text and small titles.',
31
+ $extensions: {
32
+ 'org.primer.figma': {
33
+ collection: 'base/typography',
34
+ scopes: ['fontSize'],
35
+ },
36
+ },
37
+ },
38
+ lg: {
39
+ $value: '1.25rem',
40
+ $type: 'dimension',
41
+ $description: '20px - Medium titles and subtitles.',
42
+ $extensions: {
43
+ 'org.primer.figma': {
44
+ collection: 'base/typography',
45
+ scopes: ['fontSize'],
46
+ },
47
+ },
48
+ },
49
+ xl: {
50
+ $value: '2rem',
51
+ $type: 'dimension',
52
+ $description: '32px - Large titles and page headings.',
53
+ $extensions: {
54
+ 'org.primer.figma': {
55
+ collection: 'base/typography',
56
+ scopes: ['fontSize'],
57
+ },
58
+ },
59
+ },
60
+ '2xl': {
61
+ $value: '2.5rem',
62
+ $type: 'dimension',
63
+ $description: '40px - Display text for hero sections.',
64
+ $extensions: {
65
+ 'org.primer.figma': {
66
+ collection: 'base/typography',
67
+ scopes: ['fontSize'],
68
+ },
69
+ },
70
+ },
71
+ },
4
72
  weight: {
5
73
  light: {
6
74
  $type: 'fontWeight',
@@ -43,6 +111,63 @@
43
111
  },
44
112
  },
45
113
  },
114
+ lineHeight: {
115
+ tight: {
116
+ $value: 1.25,
117
+ $type: 'number',
118
+ $description: 'Use for single-line text in compact UI elements like labels, badges, buttons, or captions where vertical space is limited. Not recommended for multi-line body text due to reduced readability.',
119
+ $extensions: {
120
+ 'org.primer.figma': {
121
+ collection: 'typography',
122
+ scopes: ['lineHeight'],
123
+ },
124
+ },
125
+ },
126
+ snug: {
127
+ $value: 1.375,
128
+ $type: 'number',
129
+ $description: 'Use for display text, large headings, or short multi-line text where moderate density is needed. Good for hero sections and marketing headlines.',
130
+ $extensions: {
131
+ 'org.primer.figma': {
132
+ collection: 'typography',
133
+ scopes: ['lineHeight'],
134
+ },
135
+ },
136
+ },
137
+ normal: {
138
+ $value: 1.5,
139
+ $type: 'number',
140
+ $description: 'Default choice for body text and general UI content. Provides optimal readability for paragraphs, descriptions, and most multi-line text. Use when unsure which line-height to pick.',
141
+ $extensions: {
142
+ 'org.primer.figma': {
143
+ collection: 'typography',
144
+ scopes: ['lineHeight'],
145
+ },
146
+ },
147
+ },
148
+ relaxed: {
149
+ $value: 1.625,
150
+ $type: 'number',
151
+ $description: 'Use for longer-form content, smaller text sizes (12-13px), or when increased readability is desired. Good for text that needs extra breathing room.',
152
+ $extensions: {
153
+ 'org.primer.figma': {
154
+ collection: 'typography',
155
+ scopes: ['lineHeight'],
156
+ },
157
+ },
158
+ },
159
+ loose: {
160
+ $value: 1.75,
161
+ $type: 'number',
162
+ $description: 'Use sparingly for very small text or when maximum readability is critical. Best for footnotes, legal text, or content requiring high accessibility.',
163
+ $extensions: {
164
+ 'org.primer.figma': {
165
+ collection: 'typography',
166
+ scopes: ['lineHeight'],
167
+ },
168
+ },
169
+ },
170
+ },
46
171
  },
47
172
  },
48
173
  }