context.dev 1.0.0 → 1.2.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.
@@ -97,9 +97,7 @@ module ContextDev
97
97
  # Primary colors used on the website
98
98
  sig do
99
99
  returns(
100
- T.nilable(
101
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Colors
102
- )
100
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Colors
103
101
  )
104
102
  end
105
103
  attr_reader :colors
@@ -115,9 +113,7 @@ module ContextDev
115
113
  # UI component styles
116
114
  sig do
117
115
  returns(
118
- T.nilable(
119
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Components
120
- )
116
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Components
121
117
  )
122
118
  end
123
119
  attr_reader :components
@@ -133,9 +129,7 @@ module ContextDev
133
129
  # Spacing system used on the website
134
130
  sig do
135
131
  returns(
136
- T.nilable(
137
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::ElementSpacing
138
- )
132
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::ElementSpacing
139
133
  )
140
134
  end
141
135
  attr_reader :element_spacing
@@ -151,27 +145,15 @@ module ContextDev
151
145
  # The primary color mode of the website design
152
146
  sig do
153
147
  returns(
154
- T.nilable(
155
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Mode::TaggedSymbol
156
- )
148
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Mode::TaggedSymbol
157
149
  )
158
150
  end
159
- attr_reader :mode
160
-
161
- sig do
162
- params(
163
- mode:
164
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Mode::OrSymbol
165
- ).void
166
- end
167
- attr_writer :mode
151
+ attr_accessor :mode
168
152
 
169
153
  # Shadow styles used on the website
170
154
  sig do
171
155
  returns(
172
- T.nilable(
173
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Shadows
174
- )
156
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Shadows
175
157
  )
176
158
  end
177
159
  attr_reader :shadows
@@ -187,9 +169,7 @@ module ContextDev
187
169
  # Typography styles used on the website
188
170
  sig do
189
171
  returns(
190
- T.nilable(
191
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Typography
192
- )
172
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Typography
193
173
  )
194
174
  end
195
175
  attr_reader :typography
@@ -221,17 +201,17 @@ module ContextDev
221
201
  end
222
202
  def self.new(
223
203
  # Primary colors used on the website
224
- colors: nil,
204
+ colors:,
225
205
  # UI component styles
226
- components: nil,
206
+ components:,
227
207
  # Spacing system used on the website
228
- element_spacing: nil,
208
+ element_spacing:,
229
209
  # The primary color mode of the website design
230
- mode: nil,
210
+ mode:,
231
211
  # Shadow styles used on the website
232
- shadows: nil,
212
+ shadows:,
233
213
  # Typography styles used on the website
234
- typography: nil
214
+ typography:
235
215
  )
236
216
  end
237
217
 
@@ -265,26 +245,17 @@ module ContextDev
265
245
  )
266
246
  end
267
247
 
268
- # Accent color of the website (hex format)
269
- sig { returns(T.nilable(String)) }
270
- attr_reader :accent
271
-
272
- sig { params(accent: String).void }
273
- attr_writer :accent
248
+ # Accent color (hex format)
249
+ sig { returns(String) }
250
+ attr_accessor :accent
274
251
 
275
- # Background color of the website (hex format)
276
- sig { returns(T.nilable(String)) }
277
- attr_reader :background
252
+ # Background color (hex format)
253
+ sig { returns(String) }
254
+ attr_accessor :background
278
255
 
279
- sig { params(background: String).void }
280
- attr_writer :background
281
-
282
- # Text color of the website (hex format)
283
- sig { returns(T.nilable(String)) }
284
- attr_reader :text
285
-
286
- sig { params(text: String).void }
287
- attr_writer :text
256
+ # Text color (hex format)
257
+ sig { returns(String) }
258
+ attr_accessor :text
288
259
 
289
260
  # Primary colors used on the website
290
261
  sig do
@@ -293,12 +264,12 @@ module ContextDev
293
264
  )
294
265
  end
295
266
  def self.new(
296
- # Accent color of the website (hex format)
297
- accent: nil,
298
- # Background color of the website (hex format)
299
- background: nil,
300
- # Text color of the website (hex format)
301
- text: nil
267
+ # Accent color (hex format)
268
+ accent:,
269
+ # Background color (hex format)
270
+ background:,
271
+ # Text color (hex format)
272
+ text:
302
273
  )
303
274
  end
304
275
 
@@ -323,9 +294,7 @@ module ContextDev
323
294
  # Button component styles
324
295
  sig do
325
296
  returns(
326
- T.nilable(
327
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Components::Button
328
- )
297
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Components::Button
329
298
  )
330
299
  end
331
300
  attr_reader :button
@@ -367,7 +336,7 @@ module ContextDev
367
336
  end
368
337
  def self.new(
369
338
  # Button component styles
370
- button: nil,
339
+ button:,
371
340
  # Card component style
372
341
  card: nil
373
342
  )
@@ -395,7 +364,6 @@ module ContextDev
395
364
  )
396
365
  end
397
366
 
398
- # Link button style
399
367
  sig do
400
368
  returns(
401
369
  T.nilable(
@@ -413,7 +381,6 @@ module ContextDev
413
381
  end
414
382
  attr_writer :link
415
383
 
416
- # Primary button style
417
384
  sig do
418
385
  returns(
419
386
  T.nilable(
@@ -431,7 +398,6 @@ module ContextDev
431
398
  end
432
399
  attr_writer :primary
433
400
 
434
- # Secondary button style
435
401
  sig do
436
402
  returns(
437
403
  T.nilable(
@@ -460,14 +426,7 @@ module ContextDev
460
426
  ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Components::Button::Secondary::OrHash
461
427
  ).returns(T.attached_class)
462
428
  end
463
- def self.new(
464
- # Link button style
465
- link: nil,
466
- # Primary button style
467
- primary: nil,
468
- # Secondary button style
469
- secondary: nil
470
- )
429
+ def self.new(link: nil, primary: nil, secondary: nil)
471
430
  end
472
431
 
473
432
  sig do
@@ -494,73 +453,75 @@ module ContextDev
494
453
  )
495
454
  end
496
455
 
497
- sig { returns(T.nilable(String)) }
498
- attr_reader :background_color
456
+ sig { returns(String) }
457
+ attr_accessor :background_color
499
458
 
500
- sig { params(background_color: String).void }
501
- attr_writer :background_color
459
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
460
+ # alpha)
461
+ sig { returns(String) }
462
+ attr_accessor :border_color
502
463
 
503
- sig { returns(T.nilable(String)) }
504
- attr_reader :border_color
464
+ sig { returns(String) }
465
+ attr_accessor :border_radius
505
466
 
506
- sig { params(border_color: String).void }
507
- attr_writer :border_color
467
+ sig { returns(String) }
468
+ attr_accessor :border_style
508
469
 
509
- sig { returns(T.nilable(String)) }
510
- attr_reader :border_radius
470
+ sig { returns(String) }
471
+ attr_accessor :border_width
511
472
 
512
- sig { params(border_radius: String).void }
513
- attr_writer :border_radius
473
+ # Computed box-shadow (comma-separated layers when present)
474
+ sig { returns(String) }
475
+ attr_accessor :box_shadow
514
476
 
515
- sig { returns(T.nilable(String)) }
516
- attr_reader :border_style
517
-
518
- sig { params(border_style: String).void }
519
- attr_writer :border_style
520
-
521
- sig { returns(T.nilable(String)) }
522
- attr_reader :border_width
477
+ sig { returns(String) }
478
+ attr_accessor :color
523
479
 
524
- sig { params(border_width: String).void }
525
- attr_writer :border_width
480
+ # Ready-to-use CSS declaration block for this component style
481
+ sig { returns(String) }
482
+ attr_accessor :css
526
483
 
527
- sig { returns(T.nilable(String)) }
528
- attr_reader :box_shadow
484
+ sig { returns(String) }
485
+ attr_accessor :font_size
529
486
 
530
- sig { params(box_shadow: String).void }
531
- attr_writer :box_shadow
487
+ sig { returns(Float) }
488
+ attr_accessor :font_weight
532
489
 
533
- sig { returns(T.nilable(String)) }
534
- attr_reader :color
490
+ # Sampled minimum height of the button box (typically px)
491
+ sig { returns(String) }
492
+ attr_accessor :min_height
535
493
 
536
- sig { params(color: String).void }
537
- attr_writer :color
494
+ # Sampled minimum width of the button box (typically px)
495
+ sig { returns(String) }
496
+ attr_accessor :min_width
538
497
 
539
- sig { returns(T.nilable(String)) }
540
- attr_reader :font_size
498
+ sig { returns(String) }
499
+ attr_accessor :padding
541
500
 
542
- sig { params(font_size: String).void }
543
- attr_writer :font_size
501
+ sig { returns(String) }
502
+ attr_accessor :text_decoration
544
503
 
545
- sig { returns(T.nilable(Float)) }
546
- attr_reader :font_weight
504
+ # Full ordered font list from computed font-family
505
+ sig { returns(T.nilable(T::Array[String])) }
506
+ attr_reader :font_fallbacks
547
507
 
548
- sig { params(font_weight: Float).void }
549
- attr_writer :font_weight
508
+ sig { params(font_fallbacks: T::Array[String]).void }
509
+ attr_writer :font_fallbacks
550
510
 
511
+ # Primary button typeface (first in fontFallbacks)
551
512
  sig { returns(T.nilable(String)) }
552
- attr_reader :padding
513
+ attr_reader :font_family
553
514
 
554
- sig { params(padding: String).void }
555
- attr_writer :padding
515
+ sig { params(font_family: String).void }
516
+ attr_writer :font_family
556
517
 
518
+ # Hex color of the underline when it differs from the text color
557
519
  sig { returns(T.nilable(String)) }
558
- attr_reader :text_decoration
520
+ attr_reader :text_decoration_color
559
521
 
560
- sig { params(text_decoration: String).void }
561
- attr_writer :text_decoration
522
+ sig { params(text_decoration_color: String).void }
523
+ attr_writer :text_decoration_color
562
524
 
563
- # Link button style
564
525
  sig do
565
526
  params(
566
527
  background_color: String,
@@ -570,24 +531,45 @@ module ContextDev
570
531
  border_width: String,
571
532
  box_shadow: String,
572
533
  color: String,
534
+ css: String,
573
535
  font_size: String,
574
536
  font_weight: Float,
537
+ min_height: String,
538
+ min_width: String,
575
539
  padding: String,
576
- text_decoration: String
540
+ text_decoration: String,
541
+ font_fallbacks: T::Array[String],
542
+ font_family: String,
543
+ text_decoration_color: String
577
544
  ).returns(T.attached_class)
578
545
  end
579
546
  def self.new(
580
- background_color: nil,
581
- border_color: nil,
582
- border_radius: nil,
583
- border_style: nil,
584
- border_width: nil,
585
- box_shadow: nil,
586
- color: nil,
587
- font_size: nil,
588
- font_weight: nil,
589
- padding: nil,
590
- text_decoration: nil
547
+ background_color:,
548
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
549
+ # alpha)
550
+ border_color:,
551
+ border_radius:,
552
+ border_style:,
553
+ border_width:,
554
+ # Computed box-shadow (comma-separated layers when present)
555
+ box_shadow:,
556
+ color:,
557
+ # Ready-to-use CSS declaration block for this component style
558
+ css:,
559
+ font_size:,
560
+ font_weight:,
561
+ # Sampled minimum height of the button box (typically px)
562
+ min_height:,
563
+ # Sampled minimum width of the button box (typically px)
564
+ min_width:,
565
+ padding:,
566
+ text_decoration:,
567
+ # Full ordered font list from computed font-family
568
+ font_fallbacks: nil,
569
+ # Primary button typeface (first in fontFallbacks)
570
+ font_family: nil,
571
+ # Hex color of the underline when it differs from the text color
572
+ text_decoration_color: nil
591
573
  )
592
574
  end
593
575
 
@@ -601,10 +583,16 @@ module ContextDev
601
583
  border_width: String,
602
584
  box_shadow: String,
603
585
  color: String,
586
+ css: String,
604
587
  font_size: String,
605
588
  font_weight: Float,
589
+ min_height: String,
590
+ min_width: String,
606
591
  padding: String,
607
- text_decoration: String
592
+ text_decoration: String,
593
+ font_fallbacks: T::Array[String],
594
+ font_family: String,
595
+ text_decoration_color: String
608
596
  }
609
597
  )
610
598
  end
@@ -621,73 +609,75 @@ module ContextDev
621
609
  )
622
610
  end
623
611
 
624
- sig { returns(T.nilable(String)) }
625
- attr_reader :background_color
612
+ sig { returns(String) }
613
+ attr_accessor :background_color
626
614
 
627
- sig { params(background_color: String).void }
628
- attr_writer :background_color
615
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
616
+ # alpha)
617
+ sig { returns(String) }
618
+ attr_accessor :border_color
629
619
 
630
- sig { returns(T.nilable(String)) }
631
- attr_reader :border_color
620
+ sig { returns(String) }
621
+ attr_accessor :border_radius
632
622
 
633
- sig { params(border_color: String).void }
634
- attr_writer :border_color
623
+ sig { returns(String) }
624
+ attr_accessor :border_style
635
625
 
636
- sig { returns(T.nilable(String)) }
637
- attr_reader :border_radius
626
+ sig { returns(String) }
627
+ attr_accessor :border_width
638
628
 
639
- sig { params(border_radius: String).void }
640
- attr_writer :border_radius
629
+ # Computed box-shadow (comma-separated layers when present)
630
+ sig { returns(String) }
631
+ attr_accessor :box_shadow
641
632
 
642
- sig { returns(T.nilable(String)) }
643
- attr_reader :border_style
633
+ sig { returns(String) }
634
+ attr_accessor :color
644
635
 
645
- sig { params(border_style: String).void }
646
- attr_writer :border_style
636
+ # Ready-to-use CSS declaration block for this component style
637
+ sig { returns(String) }
638
+ attr_accessor :css
647
639
 
648
- sig { returns(T.nilable(String)) }
649
- attr_reader :border_width
640
+ sig { returns(String) }
641
+ attr_accessor :font_size
650
642
 
651
- sig { params(border_width: String).void }
652
- attr_writer :border_width
643
+ sig { returns(Float) }
644
+ attr_accessor :font_weight
653
645
 
654
- sig { returns(T.nilable(String)) }
655
- attr_reader :box_shadow
656
-
657
- sig { params(box_shadow: String).void }
658
- attr_writer :box_shadow
659
-
660
- sig { returns(T.nilable(String)) }
661
- attr_reader :color
646
+ # Sampled minimum height of the button box (typically px)
647
+ sig { returns(String) }
648
+ attr_accessor :min_height
662
649
 
663
- sig { params(color: String).void }
664
- attr_writer :color
650
+ # Sampled minimum width of the button box (typically px)
651
+ sig { returns(String) }
652
+ attr_accessor :min_width
665
653
 
666
- sig { returns(T.nilable(String)) }
667
- attr_reader :font_size
654
+ sig { returns(String) }
655
+ attr_accessor :padding
668
656
 
669
- sig { params(font_size: String).void }
670
- attr_writer :font_size
657
+ sig { returns(String) }
658
+ attr_accessor :text_decoration
671
659
 
672
- sig { returns(T.nilable(Float)) }
673
- attr_reader :font_weight
660
+ # Full ordered font list from computed font-family
661
+ sig { returns(T.nilable(T::Array[String])) }
662
+ attr_reader :font_fallbacks
674
663
 
675
- sig { params(font_weight: Float).void }
676
- attr_writer :font_weight
664
+ sig { params(font_fallbacks: T::Array[String]).void }
665
+ attr_writer :font_fallbacks
677
666
 
667
+ # Primary button typeface (first in fontFallbacks)
678
668
  sig { returns(T.nilable(String)) }
679
- attr_reader :padding
669
+ attr_reader :font_family
680
670
 
681
- sig { params(padding: String).void }
682
- attr_writer :padding
671
+ sig { params(font_family: String).void }
672
+ attr_writer :font_family
683
673
 
674
+ # Hex color of the underline when it differs from the text color
684
675
  sig { returns(T.nilable(String)) }
685
- attr_reader :text_decoration
676
+ attr_reader :text_decoration_color
686
677
 
687
- sig { params(text_decoration: String).void }
688
- attr_writer :text_decoration
678
+ sig { params(text_decoration_color: String).void }
679
+ attr_writer :text_decoration_color
689
680
 
690
- # Primary button style
691
681
  sig do
692
682
  params(
693
683
  background_color: String,
@@ -697,24 +687,45 @@ module ContextDev
697
687
  border_width: String,
698
688
  box_shadow: String,
699
689
  color: String,
690
+ css: String,
700
691
  font_size: String,
701
692
  font_weight: Float,
693
+ min_height: String,
694
+ min_width: String,
702
695
  padding: String,
703
- text_decoration: String
696
+ text_decoration: String,
697
+ font_fallbacks: T::Array[String],
698
+ font_family: String,
699
+ text_decoration_color: String
704
700
  ).returns(T.attached_class)
705
701
  end
706
702
  def self.new(
707
- background_color: nil,
708
- border_color: nil,
709
- border_radius: nil,
710
- border_style: nil,
711
- border_width: nil,
712
- box_shadow: nil,
713
- color: nil,
714
- font_size: nil,
715
- font_weight: nil,
716
- padding: nil,
717
- text_decoration: nil
703
+ background_color:,
704
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
705
+ # alpha)
706
+ border_color:,
707
+ border_radius:,
708
+ border_style:,
709
+ border_width:,
710
+ # Computed box-shadow (comma-separated layers when present)
711
+ box_shadow:,
712
+ color:,
713
+ # Ready-to-use CSS declaration block for this component style
714
+ css:,
715
+ font_size:,
716
+ font_weight:,
717
+ # Sampled minimum height of the button box (typically px)
718
+ min_height:,
719
+ # Sampled minimum width of the button box (typically px)
720
+ min_width:,
721
+ padding:,
722
+ text_decoration:,
723
+ # Full ordered font list from computed font-family
724
+ font_fallbacks: nil,
725
+ # Primary button typeface (first in fontFallbacks)
726
+ font_family: nil,
727
+ # Hex color of the underline when it differs from the text color
728
+ text_decoration_color: nil
718
729
  )
719
730
  end
720
731
 
@@ -728,10 +739,16 @@ module ContextDev
728
739
  border_width: String,
729
740
  box_shadow: String,
730
741
  color: String,
742
+ css: String,
731
743
  font_size: String,
732
744
  font_weight: Float,
745
+ min_height: String,
746
+ min_width: String,
733
747
  padding: String,
734
- text_decoration: String
748
+ text_decoration: String,
749
+ font_fallbacks: T::Array[String],
750
+ font_family: String,
751
+ text_decoration_color: String
735
752
  }
736
753
  )
737
754
  end
@@ -748,73 +765,75 @@ module ContextDev
748
765
  )
749
766
  end
750
767
 
751
- sig { returns(T.nilable(String)) }
752
- attr_reader :background_color
753
-
754
- sig { params(background_color: String).void }
755
- attr_writer :background_color
768
+ sig { returns(String) }
769
+ attr_accessor :background_color
756
770
 
757
- sig { returns(T.nilable(String)) }
758
- attr_reader :border_color
771
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
772
+ # alpha)
773
+ sig { returns(String) }
774
+ attr_accessor :border_color
759
775
 
760
- sig { params(border_color: String).void }
761
- attr_writer :border_color
776
+ sig { returns(String) }
777
+ attr_accessor :border_radius
762
778
 
763
- sig { returns(T.nilable(String)) }
764
- attr_reader :border_radius
779
+ sig { returns(String) }
780
+ attr_accessor :border_style
765
781
 
766
- sig { params(border_radius: String).void }
767
- attr_writer :border_radius
782
+ sig { returns(String) }
783
+ attr_accessor :border_width
768
784
 
769
- sig { returns(T.nilable(String)) }
770
- attr_reader :border_style
785
+ # Computed box-shadow (comma-separated layers when present)
786
+ sig { returns(String) }
787
+ attr_accessor :box_shadow
771
788
 
772
- sig { params(border_style: String).void }
773
- attr_writer :border_style
789
+ sig { returns(String) }
790
+ attr_accessor :color
774
791
 
775
- sig { returns(T.nilable(String)) }
776
- attr_reader :border_width
792
+ # Ready-to-use CSS declaration block for this component style
793
+ sig { returns(String) }
794
+ attr_accessor :css
777
795
 
778
- sig { params(border_width: String).void }
779
- attr_writer :border_width
796
+ sig { returns(String) }
797
+ attr_accessor :font_size
780
798
 
781
- sig { returns(T.nilable(String)) }
782
- attr_reader :box_shadow
799
+ sig { returns(Float) }
800
+ attr_accessor :font_weight
783
801
 
784
- sig { params(box_shadow: String).void }
785
- attr_writer :box_shadow
802
+ # Sampled minimum height of the button box (typically px)
803
+ sig { returns(String) }
804
+ attr_accessor :min_height
786
805
 
787
- sig { returns(T.nilable(String)) }
788
- attr_reader :color
789
-
790
- sig { params(color: String).void }
791
- attr_writer :color
806
+ # Sampled minimum width of the button box (typically px)
807
+ sig { returns(String) }
808
+ attr_accessor :min_width
792
809
 
793
- sig { returns(T.nilable(String)) }
794
- attr_reader :font_size
810
+ sig { returns(String) }
811
+ attr_accessor :padding
795
812
 
796
- sig { params(font_size: String).void }
797
- attr_writer :font_size
813
+ sig { returns(String) }
814
+ attr_accessor :text_decoration
798
815
 
799
- sig { returns(T.nilable(Float)) }
800
- attr_reader :font_weight
816
+ # Full ordered font list from computed font-family
817
+ sig { returns(T.nilable(T::Array[String])) }
818
+ attr_reader :font_fallbacks
801
819
 
802
- sig { params(font_weight: Float).void }
803
- attr_writer :font_weight
820
+ sig { params(font_fallbacks: T::Array[String]).void }
821
+ attr_writer :font_fallbacks
804
822
 
823
+ # Primary button typeface (first in fontFallbacks)
805
824
  sig { returns(T.nilable(String)) }
806
- attr_reader :padding
825
+ attr_reader :font_family
807
826
 
808
- sig { params(padding: String).void }
809
- attr_writer :padding
827
+ sig { params(font_family: String).void }
828
+ attr_writer :font_family
810
829
 
830
+ # Hex color of the underline when it differs from the text color
811
831
  sig { returns(T.nilable(String)) }
812
- attr_reader :text_decoration
832
+ attr_reader :text_decoration_color
813
833
 
814
- sig { params(text_decoration: String).void }
815
- attr_writer :text_decoration
834
+ sig { params(text_decoration_color: String).void }
835
+ attr_writer :text_decoration_color
816
836
 
817
- # Secondary button style
818
837
  sig do
819
838
  params(
820
839
  background_color: String,
@@ -824,24 +843,45 @@ module ContextDev
824
843
  border_width: String,
825
844
  box_shadow: String,
826
845
  color: String,
846
+ css: String,
827
847
  font_size: String,
828
848
  font_weight: Float,
849
+ min_height: String,
850
+ min_width: String,
829
851
  padding: String,
830
- text_decoration: String
852
+ text_decoration: String,
853
+ font_fallbacks: T::Array[String],
854
+ font_family: String,
855
+ text_decoration_color: String
831
856
  ).returns(T.attached_class)
832
857
  end
833
858
  def self.new(
834
- background_color: nil,
835
- border_color: nil,
836
- border_radius: nil,
837
- border_style: nil,
838
- border_width: nil,
839
- box_shadow: nil,
840
- color: nil,
841
- font_size: nil,
842
- font_weight: nil,
843
- padding: nil,
844
- text_decoration: nil
859
+ background_color:,
860
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
861
+ # alpha)
862
+ border_color:,
863
+ border_radius:,
864
+ border_style:,
865
+ border_width:,
866
+ # Computed box-shadow (comma-separated layers when present)
867
+ box_shadow:,
868
+ color:,
869
+ # Ready-to-use CSS declaration block for this component style
870
+ css:,
871
+ font_size:,
872
+ font_weight:,
873
+ # Sampled minimum height of the button box (typically px)
874
+ min_height:,
875
+ # Sampled minimum width of the button box (typically px)
876
+ min_width:,
877
+ padding:,
878
+ text_decoration:,
879
+ # Full ordered font list from computed font-family
880
+ font_fallbacks: nil,
881
+ # Primary button typeface (first in fontFallbacks)
882
+ font_family: nil,
883
+ # Hex color of the underline when it differs from the text color
884
+ text_decoration_color: nil
845
885
  )
846
886
  end
847
887
 
@@ -855,10 +895,16 @@ module ContextDev
855
895
  border_width: String,
856
896
  box_shadow: String,
857
897
  color: String,
898
+ css: String,
858
899
  font_size: String,
859
900
  font_weight: Float,
901
+ min_height: String,
902
+ min_width: String,
860
903
  padding: String,
861
- text_decoration: String
904
+ text_decoration: String,
905
+ font_fallbacks: T::Array[String],
906
+ font_family: String,
907
+ text_decoration_color: String
862
908
  }
863
909
  )
864
910
  end
@@ -876,53 +922,35 @@ module ContextDev
876
922
  )
877
923
  end
878
924
 
879
- sig { returns(T.nilable(String)) }
880
- attr_reader :background_color
881
-
882
- sig { params(background_color: String).void }
883
- attr_writer :background_color
884
-
885
- sig { returns(T.nilable(String)) }
886
- attr_reader :border_color
887
-
888
- sig { params(border_color: String).void }
889
- attr_writer :border_color
890
-
891
- sig { returns(T.nilable(String)) }
892
- attr_reader :border_radius
925
+ sig { returns(String) }
926
+ attr_accessor :background_color
893
927
 
894
- sig { params(border_radius: String).void }
895
- attr_writer :border_radius
928
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
929
+ # alpha)
930
+ sig { returns(String) }
931
+ attr_accessor :border_color
896
932
 
897
- sig { returns(T.nilable(String)) }
898
- attr_reader :border_style
933
+ sig { returns(String) }
934
+ attr_accessor :border_radius
899
935
 
900
- sig { params(border_style: String).void }
901
- attr_writer :border_style
936
+ sig { returns(String) }
937
+ attr_accessor :border_style
902
938
 
903
- sig { returns(T.nilable(String)) }
904
- attr_reader :border_width
939
+ sig { returns(String) }
940
+ attr_accessor :border_width
905
941
 
906
- sig { params(border_width: String).void }
907
- attr_writer :border_width
942
+ sig { returns(String) }
943
+ attr_accessor :box_shadow
908
944
 
909
- sig { returns(T.nilable(String)) }
910
- attr_reader :box_shadow
945
+ # Ready-to-use CSS declaration block for this component style
946
+ sig { returns(String) }
947
+ attr_accessor :css
911
948
 
912
- sig { params(box_shadow: String).void }
913
- attr_writer :box_shadow
949
+ sig { returns(String) }
950
+ attr_accessor :padding
914
951
 
915
- sig { returns(T.nilable(String)) }
916
- attr_reader :padding
917
-
918
- sig { params(padding: String).void }
919
- attr_writer :padding
920
-
921
- sig { returns(T.nilable(String)) }
922
- attr_reader :text_color
923
-
924
- sig { params(text_color: String).void }
925
- attr_writer :text_color
952
+ sig { returns(String) }
953
+ attr_accessor :text_color
926
954
 
927
955
  # Card component style
928
956
  sig do
@@ -933,19 +961,24 @@ module ContextDev
933
961
  border_style: String,
934
962
  border_width: String,
935
963
  box_shadow: String,
964
+ css: String,
936
965
  padding: String,
937
966
  text_color: String
938
967
  ).returns(T.attached_class)
939
968
  end
940
969
  def self.new(
941
- background_color: nil,
942
- border_color: nil,
943
- border_radius: nil,
944
- border_style: nil,
945
- border_width: nil,
946
- box_shadow: nil,
947
- padding: nil,
948
- text_color: nil
970
+ background_color:,
971
+ # Border color as CSS hex (#RRGGBB or #RRGGBBAA when computed border-color has
972
+ # alpha)
973
+ border_color:,
974
+ border_radius:,
975
+ border_style:,
976
+ border_width:,
977
+ box_shadow:,
978
+ # Ready-to-use CSS declaration block for this component style
979
+ css:,
980
+ padding:,
981
+ text_color:
949
982
  )
950
983
  end
951
984
 
@@ -958,6 +991,7 @@ module ContextDev
958
991
  border_style: String,
959
992
  border_width: String,
960
993
  box_shadow: String,
994
+ css: String,
961
995
  padding: String,
962
996
  text_color: String
963
997
  }
@@ -977,40 +1011,20 @@ module ContextDev
977
1011
  )
978
1012
  end
979
1013
 
980
- # Large spacing value
981
- sig { returns(T.nilable(String)) }
982
- attr_reader :lg
983
-
984
- sig { params(lg: String).void }
985
- attr_writer :lg
986
-
987
- # Medium spacing value
988
- sig { returns(T.nilable(String)) }
989
- attr_reader :md
1014
+ sig { returns(String) }
1015
+ attr_accessor :lg
990
1016
 
991
- sig { params(md: String).void }
992
- attr_writer :md
1017
+ sig { returns(String) }
1018
+ attr_accessor :md
993
1019
 
994
- # Small spacing value
995
- sig { returns(T.nilable(String)) }
996
- attr_reader :sm
1020
+ sig { returns(String) }
1021
+ attr_accessor :sm
997
1022
 
998
- sig { params(sm: String).void }
999
- attr_writer :sm
1023
+ sig { returns(String) }
1024
+ attr_accessor :xl
1000
1025
 
1001
- # Extra large spacing value
1002
- sig { returns(T.nilable(String)) }
1003
- attr_reader :xl
1004
-
1005
- sig { params(xl: String).void }
1006
- attr_writer :xl
1007
-
1008
- # Extra small spacing value
1009
- sig { returns(T.nilable(String)) }
1010
- attr_reader :xs
1011
-
1012
- sig { params(xs: String).void }
1013
- attr_writer :xs
1026
+ sig { returns(String) }
1027
+ attr_accessor :xs
1014
1028
 
1015
1029
  # Spacing system used on the website
1016
1030
  sig do
@@ -1022,18 +1036,7 @@ module ContextDev
1022
1036
  xs: String
1023
1037
  ).returns(T.attached_class)
1024
1038
  end
1025
- def self.new(
1026
- # Large spacing value
1027
- lg: nil,
1028
- # Medium spacing value
1029
- md: nil,
1030
- # Small spacing value
1031
- sm: nil,
1032
- # Extra large spacing value
1033
- xl: nil,
1034
- # Extra small spacing value
1035
- xs: nil
1036
- )
1039
+ def self.new(lg:, md:, sm:, xl:, xs:)
1037
1040
  end
1038
1041
 
1039
1042
  sig do
@@ -1089,40 +1092,20 @@ module ContextDev
1089
1092
  )
1090
1093
  end
1091
1094
 
1092
- # Inner shadow value
1093
- sig { returns(T.nilable(String)) }
1094
- attr_reader :inner
1095
-
1096
- sig { params(inner: String).void }
1097
- attr_writer :inner
1098
-
1099
- # Large shadow value
1100
- sig { returns(T.nilable(String)) }
1101
- attr_reader :lg
1102
-
1103
- sig { params(lg: String).void }
1104
- attr_writer :lg
1105
-
1106
- # Medium shadow value
1107
- sig { returns(T.nilable(String)) }
1108
- attr_reader :md
1095
+ sig { returns(String) }
1096
+ attr_accessor :inner
1109
1097
 
1110
- sig { params(md: String).void }
1111
- attr_writer :md
1098
+ sig { returns(String) }
1099
+ attr_accessor :lg
1112
1100
 
1113
- # Small shadow value
1114
- sig { returns(T.nilable(String)) }
1115
- attr_reader :sm
1101
+ sig { returns(String) }
1102
+ attr_accessor :md
1116
1103
 
1117
- sig { params(sm: String).void }
1118
- attr_writer :sm
1104
+ sig { returns(String) }
1105
+ attr_accessor :sm
1119
1106
 
1120
- # Extra large shadow value
1121
- sig { returns(T.nilable(String)) }
1122
- attr_reader :xl
1123
-
1124
- sig { params(xl: String).void }
1125
- attr_writer :xl
1107
+ sig { returns(String) }
1108
+ attr_accessor :xl
1126
1109
 
1127
1110
  # Shadow styles used on the website
1128
1111
  sig do
@@ -1134,18 +1117,7 @@ module ContextDev
1134
1117
  xl: String
1135
1118
  ).returns(T.attached_class)
1136
1119
  end
1137
- def self.new(
1138
- # Inner shadow value
1139
- inner: nil,
1140
- # Large shadow value
1141
- lg: nil,
1142
- # Medium shadow value
1143
- md: nil,
1144
- # Small shadow value
1145
- sm: nil,
1146
- # Extra large shadow value
1147
- xl: nil
1148
- )
1120
+ def self.new(inner:, lg:, md:, sm:, xl:)
1149
1121
  end
1150
1122
 
1151
1123
  sig do
@@ -1169,9 +1141,7 @@ module ContextDev
1169
1141
  # Heading styles
1170
1142
  sig do
1171
1143
  returns(
1172
- T.nilable(
1173
- ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Typography::Headings
1174
- )
1144
+ ContextDev::Models::StyleExtractStyleguideResponse::Styleguide::Typography::Headings
1175
1145
  )
1176
1146
  end
1177
1147
  attr_reader :headings
@@ -1184,7 +1154,6 @@ module ContextDev
1184
1154
  end
1185
1155
  attr_writer :headings
1186
1156
 
1187
- # Paragraph text styles
1188
1157
  sig do
1189
1158
  returns(
1190
1159
  T.nilable(
@@ -1213,8 +1182,7 @@ module ContextDev
1213
1182
  end
1214
1183
  def self.new(
1215
1184
  # Heading styles
1216
- headings: nil,
1217
- # Paragraph text styles
1185
+ headings:,
1218
1186
  p_: nil
1219
1187
  )
1220
1188
  end
@@ -1351,38 +1319,29 @@ module ContextDev
1351
1319
  )
1352
1320
  end
1353
1321
 
1354
- sig { returns(T.nilable(String)) }
1355
- attr_reader :font_family
1356
-
1357
- sig { params(font_family: String).void }
1358
- attr_writer :font_family
1359
-
1360
- sig { returns(T.nilable(String)) }
1361
- attr_reader :font_size
1362
-
1363
- sig { params(font_size: String).void }
1364
- attr_writer :font_size
1322
+ # Full ordered font list from resolved computed font-family
1323
+ sig { returns(T::Array[String]) }
1324
+ attr_accessor :font_fallbacks
1365
1325
 
1366
- sig { returns(T.nilable(Float)) }
1367
- attr_reader :font_weight
1326
+ # Primary face (first family in the computed stack)
1327
+ sig { returns(String) }
1328
+ attr_accessor :font_family
1368
1329
 
1369
- sig { params(font_weight: Float).void }
1370
- attr_writer :font_weight
1330
+ sig { returns(String) }
1331
+ attr_accessor :font_size
1371
1332
 
1372
- sig { returns(T.nilable(String)) }
1373
- attr_reader :letter_spacing
1374
-
1375
- sig { params(letter_spacing: String).void }
1376
- attr_writer :letter_spacing
1333
+ sig { returns(Float) }
1334
+ attr_accessor :font_weight
1377
1335
 
1378
- sig { returns(T.nilable(String)) }
1379
- attr_reader :line_height
1336
+ sig { returns(String) }
1337
+ attr_accessor :letter_spacing
1380
1338
 
1381
- sig { params(line_height: String).void }
1382
- attr_writer :line_height
1339
+ sig { returns(String) }
1340
+ attr_accessor :line_height
1383
1341
 
1384
1342
  sig do
1385
1343
  params(
1344
+ font_fallbacks: T::Array[String],
1386
1345
  font_family: String,
1387
1346
  font_size: String,
1388
1347
  font_weight: Float,
@@ -1391,17 +1350,21 @@ module ContextDev
1391
1350
  ).returns(T.attached_class)
1392
1351
  end
1393
1352
  def self.new(
1394
- font_family: nil,
1395
- font_size: nil,
1396
- font_weight: nil,
1397
- letter_spacing: nil,
1398
- line_height: nil
1353
+ # Full ordered font list from resolved computed font-family
1354
+ font_fallbacks:,
1355
+ # Primary face (first family in the computed stack)
1356
+ font_family:,
1357
+ font_size:,
1358
+ font_weight:,
1359
+ letter_spacing:,
1360
+ line_height:
1399
1361
  )
1400
1362
  end
1401
1363
 
1402
1364
  sig do
1403
1365
  override.returns(
1404
1366
  {
1367
+ font_fallbacks: T::Array[String],
1405
1368
  font_family: String,
1406
1369
  font_size: String,
1407
1370
  font_weight: Float,
@@ -1423,38 +1386,29 @@ module ContextDev
1423
1386
  )
1424
1387
  end
1425
1388
 
1426
- sig { returns(T.nilable(String)) }
1427
- attr_reader :font_family
1389
+ # Full ordered font list from resolved computed font-family
1390
+ sig { returns(T::Array[String]) }
1391
+ attr_accessor :font_fallbacks
1428
1392
 
1429
- sig { params(font_family: String).void }
1430
- attr_writer :font_family
1393
+ # Primary face (first family in the computed stack)
1394
+ sig { returns(String) }
1395
+ attr_accessor :font_family
1431
1396
 
1432
- sig { returns(T.nilable(String)) }
1433
- attr_reader :font_size
1397
+ sig { returns(String) }
1398
+ attr_accessor :font_size
1434
1399
 
1435
- sig { params(font_size: String).void }
1436
- attr_writer :font_size
1400
+ sig { returns(Float) }
1401
+ attr_accessor :font_weight
1437
1402
 
1438
- sig { returns(T.nilable(Float)) }
1439
- attr_reader :font_weight
1403
+ sig { returns(String) }
1404
+ attr_accessor :letter_spacing
1440
1405
 
1441
- sig { params(font_weight: Float).void }
1442
- attr_writer :font_weight
1443
-
1444
- sig { returns(T.nilable(String)) }
1445
- attr_reader :letter_spacing
1446
-
1447
- sig { params(letter_spacing: String).void }
1448
- attr_writer :letter_spacing
1449
-
1450
- sig { returns(T.nilable(String)) }
1451
- attr_reader :line_height
1452
-
1453
- sig { params(line_height: String).void }
1454
- attr_writer :line_height
1406
+ sig { returns(String) }
1407
+ attr_accessor :line_height
1455
1408
 
1456
1409
  sig do
1457
1410
  params(
1411
+ font_fallbacks: T::Array[String],
1458
1412
  font_family: String,
1459
1413
  font_size: String,
1460
1414
  font_weight: Float,
@@ -1463,17 +1417,21 @@ module ContextDev
1463
1417
  ).returns(T.attached_class)
1464
1418
  end
1465
1419
  def self.new(
1466
- font_family: nil,
1467
- font_size: nil,
1468
- font_weight: nil,
1469
- letter_spacing: nil,
1470
- line_height: nil
1420
+ # Full ordered font list from resolved computed font-family
1421
+ font_fallbacks:,
1422
+ # Primary face (first family in the computed stack)
1423
+ font_family:,
1424
+ font_size:,
1425
+ font_weight:,
1426
+ letter_spacing:,
1427
+ line_height:
1471
1428
  )
1472
1429
  end
1473
1430
 
1474
1431
  sig do
1475
1432
  override.returns(
1476
1433
  {
1434
+ font_fallbacks: T::Array[String],
1477
1435
  font_family: String,
1478
1436
  font_size: String,
1479
1437
  font_weight: Float,
@@ -1495,38 +1453,29 @@ module ContextDev
1495
1453
  )
1496
1454
  end
1497
1455
 
1498
- sig { returns(T.nilable(String)) }
1499
- attr_reader :font_family
1500
-
1501
- sig { params(font_family: String).void }
1502
- attr_writer :font_family
1503
-
1504
- sig { returns(T.nilable(String)) }
1505
- attr_reader :font_size
1456
+ # Full ordered font list from resolved computed font-family
1457
+ sig { returns(T::Array[String]) }
1458
+ attr_accessor :font_fallbacks
1506
1459
 
1507
- sig { params(font_size: String).void }
1508
- attr_writer :font_size
1460
+ # Primary face (first family in the computed stack)
1461
+ sig { returns(String) }
1462
+ attr_accessor :font_family
1509
1463
 
1510
- sig { returns(T.nilable(Float)) }
1511
- attr_reader :font_weight
1464
+ sig { returns(String) }
1465
+ attr_accessor :font_size
1512
1466
 
1513
- sig { params(font_weight: Float).void }
1514
- attr_writer :font_weight
1467
+ sig { returns(Float) }
1468
+ attr_accessor :font_weight
1515
1469
 
1516
- sig { returns(T.nilable(String)) }
1517
- attr_reader :letter_spacing
1518
-
1519
- sig { params(letter_spacing: String).void }
1520
- attr_writer :letter_spacing
1521
-
1522
- sig { returns(T.nilable(String)) }
1523
- attr_reader :line_height
1470
+ sig { returns(String) }
1471
+ attr_accessor :letter_spacing
1524
1472
 
1525
- sig { params(line_height: String).void }
1526
- attr_writer :line_height
1473
+ sig { returns(String) }
1474
+ attr_accessor :line_height
1527
1475
 
1528
1476
  sig do
1529
1477
  params(
1478
+ font_fallbacks: T::Array[String],
1530
1479
  font_family: String,
1531
1480
  font_size: String,
1532
1481
  font_weight: Float,
@@ -1535,17 +1484,21 @@ module ContextDev
1535
1484
  ).returns(T.attached_class)
1536
1485
  end
1537
1486
  def self.new(
1538
- font_family: nil,
1539
- font_size: nil,
1540
- font_weight: nil,
1541
- letter_spacing: nil,
1542
- line_height: nil
1487
+ # Full ordered font list from resolved computed font-family
1488
+ font_fallbacks:,
1489
+ # Primary face (first family in the computed stack)
1490
+ font_family:,
1491
+ font_size:,
1492
+ font_weight:,
1493
+ letter_spacing:,
1494
+ line_height:
1543
1495
  )
1544
1496
  end
1545
1497
 
1546
1498
  sig do
1547
1499
  override.returns(
1548
1500
  {
1501
+ font_fallbacks: T::Array[String],
1549
1502
  font_family: String,
1550
1503
  font_size: String,
1551
1504
  font_weight: Float,
@@ -1567,38 +1520,29 @@ module ContextDev
1567
1520
  )
1568
1521
  end
1569
1522
 
1570
- sig { returns(T.nilable(String)) }
1571
- attr_reader :font_family
1523
+ # Full ordered font list from resolved computed font-family
1524
+ sig { returns(T::Array[String]) }
1525
+ attr_accessor :font_fallbacks
1572
1526
 
1573
- sig { params(font_family: String).void }
1574
- attr_writer :font_family
1527
+ # Primary face (first family in the computed stack)
1528
+ sig { returns(String) }
1529
+ attr_accessor :font_family
1575
1530
 
1576
- sig { returns(T.nilable(String)) }
1577
- attr_reader :font_size
1578
-
1579
- sig { params(font_size: String).void }
1580
- attr_writer :font_size
1531
+ sig { returns(String) }
1532
+ attr_accessor :font_size
1581
1533
 
1582
- sig { returns(T.nilable(Float)) }
1583
- attr_reader :font_weight
1534
+ sig { returns(Float) }
1535
+ attr_accessor :font_weight
1584
1536
 
1585
- sig { params(font_weight: Float).void }
1586
- attr_writer :font_weight
1587
-
1588
- sig { returns(T.nilable(String)) }
1589
- attr_reader :letter_spacing
1537
+ sig { returns(String) }
1538
+ attr_accessor :letter_spacing
1590
1539
 
1591
- sig { params(letter_spacing: String).void }
1592
- attr_writer :letter_spacing
1593
-
1594
- sig { returns(T.nilable(String)) }
1595
- attr_reader :line_height
1596
-
1597
- sig { params(line_height: String).void }
1598
- attr_writer :line_height
1540
+ sig { returns(String) }
1541
+ attr_accessor :line_height
1599
1542
 
1600
1543
  sig do
1601
1544
  params(
1545
+ font_fallbacks: T::Array[String],
1602
1546
  font_family: String,
1603
1547
  font_size: String,
1604
1548
  font_weight: Float,
@@ -1607,17 +1551,21 @@ module ContextDev
1607
1551
  ).returns(T.attached_class)
1608
1552
  end
1609
1553
  def self.new(
1610
- font_family: nil,
1611
- font_size: nil,
1612
- font_weight: nil,
1613
- letter_spacing: nil,
1614
- line_height: nil
1554
+ # Full ordered font list from resolved computed font-family
1555
+ font_fallbacks:,
1556
+ # Primary face (first family in the computed stack)
1557
+ font_family:,
1558
+ font_size:,
1559
+ font_weight:,
1560
+ letter_spacing:,
1561
+ line_height:
1615
1562
  )
1616
1563
  end
1617
1564
 
1618
1565
  sig do
1619
1566
  override.returns(
1620
1567
  {
1568
+ font_fallbacks: T::Array[String],
1621
1569
  font_family: String,
1622
1570
  font_size: String,
1623
1571
  font_weight: Float,
@@ -1640,39 +1588,29 @@ module ContextDev
1640
1588
  )
1641
1589
  end
1642
1590
 
1643
- sig { returns(T.nilable(String)) }
1644
- attr_reader :font_family
1645
-
1646
- sig { params(font_family: String).void }
1647
- attr_writer :font_family
1648
-
1649
- sig { returns(T.nilable(String)) }
1650
- attr_reader :font_size
1651
-
1652
- sig { params(font_size: String).void }
1653
- attr_writer :font_size
1654
-
1655
- sig { returns(T.nilable(Float)) }
1656
- attr_reader :font_weight
1591
+ # Full ordered font list from resolved computed font-family
1592
+ sig { returns(T::Array[String]) }
1593
+ attr_accessor :font_fallbacks
1657
1594
 
1658
- sig { params(font_weight: Float).void }
1659
- attr_writer :font_weight
1595
+ # Primary face (first family in the computed stack)
1596
+ sig { returns(String) }
1597
+ attr_accessor :font_family
1660
1598
 
1661
- sig { returns(T.nilable(String)) }
1662
- attr_reader :letter_spacing
1599
+ sig { returns(String) }
1600
+ attr_accessor :font_size
1663
1601
 
1664
- sig { params(letter_spacing: String).void }
1665
- attr_writer :letter_spacing
1602
+ sig { returns(Float) }
1603
+ attr_accessor :font_weight
1666
1604
 
1667
- sig { returns(T.nilable(String)) }
1668
- attr_reader :line_height
1605
+ sig { returns(String) }
1606
+ attr_accessor :letter_spacing
1669
1607
 
1670
- sig { params(line_height: String).void }
1671
- attr_writer :line_height
1608
+ sig { returns(String) }
1609
+ attr_accessor :line_height
1672
1610
 
1673
- # Paragraph text styles
1674
1611
  sig do
1675
1612
  params(
1613
+ font_fallbacks: T::Array[String],
1676
1614
  font_family: String,
1677
1615
  font_size: String,
1678
1616
  font_weight: Float,
@@ -1681,17 +1619,21 @@ module ContextDev
1681
1619
  ).returns(T.attached_class)
1682
1620
  end
1683
1621
  def self.new(
1684
- font_family: nil,
1685
- font_size: nil,
1686
- font_weight: nil,
1687
- letter_spacing: nil,
1688
- line_height: nil
1622
+ # Full ordered font list from resolved computed font-family
1623
+ font_fallbacks:,
1624
+ # Primary face (first family in the computed stack)
1625
+ font_family:,
1626
+ font_size:,
1627
+ font_weight:,
1628
+ letter_spacing:,
1629
+ line_height:
1689
1630
  )
1690
1631
  end
1691
1632
 
1692
1633
  sig do
1693
1634
  override.returns(
1694
1635
  {
1636
+ font_fallbacks: T::Array[String],
1695
1637
  font_family: String,
1696
1638
  font_size: String,
1697
1639
  font_weight: Float,