@department-of-veterans-affairs/css-library 0.20.0 → 0.21.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.
@@ -2090,7 +2090,7 @@ template {
2090
2090
  font-size: 0.8125rem;
2091
2091
  font-weight: 400;
2092
2092
  line-height: 1.5;
2093
- text-transform: uppercase;
2093
+ text-transform: none;
2094
2094
  font-family: "Source Sans Pro Web", "Source Sans Pro", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
2095
2095
  }
2096
2096
 
@@ -3200,90 +3200,2787 @@ legend {
3200
3200
  working while we work on deprecation.
3201
3201
  **/
3202
3202
  /*
3203
- Original: @import "~uswds/src/stylesheets/elements/labels";
3204
- ***THIS IS USWDS v1***
3203
+ Original: @import "~uswds/src/stylesheets/elements/labels";
3204
+ ***THIS IS USWDS v1***
3205
+ */
3206
+ .usa-label, .usa-label-big {
3207
+ background-color: #565c65;
3208
+ border-radius: 2px;
3209
+ color: #ffffff;
3210
+ font-size: 0.9375rem;
3211
+ margin-right: 0.3125rem;
3212
+ padding: 0.0625rem 0.4375rem;
3213
+ text-transform: uppercase;
3214
+ }
3215
+ .usa-label:only-of-type, .usa-label-big:only-of-type {
3216
+ margin-right: 0;
3217
+ }
3218
+
3219
+ .usa-label-big {
3220
+ font-size: 1rem;
3221
+ padding-left: 0.5625rem;
3222
+ padding-right: 0.5625rem;
3223
+ }
3224
+
3225
+ /*
3226
+ ----------------------------------------
3227
+ append-important()
3228
+ ----------------------------------------
3229
+ Append `!important` to a list
3230
+ ----------------------------------------
3231
+ */
3232
+ /*
3233
+ ----------------------------------------
3234
+ get-last()
3235
+ ----------------------------------------
3236
+ Return the last item of a list,
3237
+ Return null if the value is null
3238
+ ----------------------------------------
3239
+ */
3240
+ /*
3241
+ ----------------------------------------
3242
+ de-list()
3243
+ ----------------------------------------
3244
+ Transform a one-element list or arglist
3245
+ into that single element.
3246
+ ----------------------------------------
3247
+ (1) => 1
3248
+ ((1)) => (1)
3249
+ ----------------------------------------
3250
+ */
3251
+ /*
3252
+ ----------------------------------------
3253
+ error-not-token()
3254
+ ----------------------------------------
3255
+ Returns a common not-a-token error.
3256
+ ----------------------------------------
3257
+ */
3258
+ /*
3259
+ ----------------------------------------
3260
+ uswds-error()
3261
+ ----------------------------------------
3262
+ Allow the system to pass an error as text
3263
+ to test error states in unit testing
3264
+ ----------------------------------------
3265
+ */
3266
+ /*
3267
+ ----------------------------------------
3268
+ get-default()
3269
+ ----------------------------------------
3270
+ Returns the default value from a map
3271
+ of project defaults
3272
+ get-default("bg-color")
3273
+ > $theme-body-background-color
3274
+ ----------------------------------------
3275
+ */
3276
+ /*
3277
+ * * * * * ==============================
3278
+ * * * * * ==============================
3279
+ * * * * * ==============================
3280
+ * * * * * ==============================
3281
+ ========================================
3282
+ ========================================
3283
+ ========================================
3284
+ ----------------------------------------
3285
+ GENERAL SETTINGS
3286
+ ----------------------------------------
3287
+ Read more about settings and
3288
+ USWDS style tokens in the documentation:
3289
+ https://designsystem.digital.gov/design-tokens
3290
+ ----------------------------------------
3291
+ */
3292
+ /*
3293
+ ----------------------------------------
3294
+ Image path
3295
+ ----------------------------------------
3296
+ Relative image file path
3297
+ ----------------------------------------
3298
+ */
3299
+ /*
3300
+ ----------------------------------------
3301
+ Show compile warnings
3302
+ ----------------------------------------
3303
+ Show Sass warnings when functions and
3304
+ mixins use non-standard tokens.
3305
+ AND
3306
+ Show updates and notifications.
3307
+ ----------------------------------------
3308
+ */
3309
+ /*
3310
+ ----------------------------------------
3311
+ Namespace
3312
+ ----------------------------------------
3313
+ */
3314
+ /*
3315
+ ----------------------------------------
3316
+ Prefix separator
3317
+ ----------------------------------------
3318
+ Set the character the separates
3319
+ responsive and state prefixes from the
3320
+ main class name.
3321
+ The default (":") needs to be preceded
3322
+ by two backslashes to be properly
3323
+ escaped.
3324
+ ----------------------------------------
3325
+ */
3326
+ /*
3327
+ ----------------------------------------
3328
+ Layout grid
3329
+ ----------------------------------------
3330
+ Should the layout grid classes output
3331
+ with !important
3332
+ ----------------------------------------
3333
+ */
3334
+ /*
3335
+ ----------------------------------------
3336
+ Border box sizing
3337
+ ----------------------------------------
3338
+ When set to true, sets the box-sizing
3339
+ property of all site elements to
3340
+ `border-box`.
3341
+ ----------------------------------------
3342
+ */
3343
+ /*
3344
+ ----------------------------------------
3345
+ Focus styles
3346
+ ----------------------------------------
3347
+ */
3348
+ /*
3349
+ ----------------------------------------
3350
+ Icons
3351
+ ----------------------------------------
3352
+ */
3353
+ /*
3354
+ * * * * * ==============================
3355
+ * * * * * ==============================
3356
+ * * * * * ==============================
3357
+ * * * * * ==============================
3358
+ ========================================
3359
+ ========================================
3360
+ ========================================
3361
+ ----------------------------------------
3362
+ TYPOGRAPHY SETTINGS
3363
+ ----------------------------------------
3364
+ Read more about settings and
3365
+ USWDS typography tokens in the documentation:
3366
+ https://designsystem.digital.gov/design-tokens/typesetting/overview/
3367
+ ----------------------------------------
3368
+ */
3369
+ /*
3370
+ ----------------------------------------
3371
+ Root font size
3372
+ ----------------------------------------
3373
+ Setting $theme-respect-user-font-size to
3374
+ true sets the root font size to 100% and
3375
+ uses ems for media queries
3376
+ ----------------------------------------
3377
+ $theme-root-font-size only applies when
3378
+ $theme-respect-user-font-size is set to
3379
+ false.
3380
+
3381
+ This will set the root font size
3382
+ as a specific px value and use px values
3383
+ for media queries.
3384
+
3385
+ Accepts true or false
3386
+ ----------------------------------------
3387
+ */
3388
+ /*
3389
+ ----------------------------------------
3390
+ Global styles
3391
+ ----------------------------------------
3392
+ Adds basic styling for the following
3393
+ unclassed elements:
3394
+
3395
+ - paragraph: paragraph text
3396
+ - link: links
3397
+ - content: paragraph text, links,
3398
+ headings, lists, and tables
3399
+ ----------------------------------------
3400
+ */
3401
+ /*
3402
+ ----------------------------------------
3403
+ Broswer compatibility mode
3404
+ ----------------------------------------
3405
+ When true, outputs woff and ttf font
3406
+ formats in addition to woff2
3407
+ ----------------------------------------
3408
+ */
3409
+ /*
3410
+ ----------------------------------------
3411
+ Font path
3412
+ ----------------------------------------
3413
+ Relative font file path
3414
+ ----------------------------------------
3415
+ */
3416
+ /*
3417
+ ----------------------------------------
3418
+ Custom typeface tokens
3419
+ ----------------------------------------
3420
+ Add a new custom typeface token if
3421
+ your project uses a typeface not already
3422
+ defined by USWDS.
3423
+ ----------------------------------------
3424
+ USWDS defines the following tokens
3425
+ by default:
3426
+ ----------------------------------------
3427
+ 'georgia'
3428
+ 'helvetica'
3429
+ 'merriweather'
3430
+ 'open-sans'
3431
+ 'public-sans'
3432
+ 'roboto-mono'
3433
+ 'source-sans-pro'
3434
+ 'system'
3435
+ 'tahoma'
3436
+ 'verdana'
3437
+ ----------------------------------------
3438
+ Add as many new tokens as you have
3439
+ custom typefaces. Reference your new
3440
+ token(s) in the type-based font settings
3441
+ using the quoted name of the token.
3442
+
3443
+ For example:
3444
+
3445
+ $theme-font-type-cond: 'example-font-token';
3446
+
3447
+ display-name:
3448
+ The display name of your font
3449
+
3450
+ cap-height:
3451
+ The height of a 500px `N` in Sketch
3452
+ ----------------------------------------
3453
+ You should change `example-[style]-token`
3454
+ names to something more descriptive.
3455
+ ----------------------------------------
3456
+ */
3457
+ /*
3458
+ ----------------------------------------
3459
+ Type-based font settings
3460
+ ----------------------------------------
3461
+ Set the type-based tokens for your
3462
+ project from the following tokens,
3463
+ or from any new font tokens you added in
3464
+ $theme-typeface-tokens.
3465
+ ----------------------------------------
3466
+ 'georgia'
3467
+ 'helvetica'
3468
+ 'merriweather'
3469
+ 'open-sans'
3470
+ 'public-sans'
3471
+ 'roboto-mono'
3472
+ 'source-sans-pro'
3473
+ 'system'
3474
+ 'tahoma'
3475
+ 'verdana'
3476
+ ----------------------------------------
3477
+ */
3478
+ /*
3479
+ ----------------------------------------
3480
+ Custom font stacks
3481
+ ----------------------------------------
3482
+ Add custom font stacks to any of the
3483
+ type-based fonts. Any USWDS typeface
3484
+ token already has a default stack.
3485
+
3486
+ Custom stacks don't need to include the
3487
+ font's display name. It will
3488
+ automatically appear at the start of
3489
+ the stack.
3490
+ ----------------------------------------
3491
+ Example:
3492
+ $theme-font-type-sans: 'source-sans-pro';
3493
+ $theme-font-sans-custom-stack: "Helvetica Neue", Helvetica, Arial, sans;
3494
+
3495
+ Output:
3496
+ font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;
3497
+ ----------------------------------------
3498
+ */
3499
+ /*
3500
+ ----------------------------------------
3501
+ Add any custom font source files
3502
+ ----------------------------------------
3503
+ If you want USWDS to generate additional
3504
+ @font-face declarations, add your font
3505
+ data below, following the example that
3506
+ follows.
3507
+ ----------------------------------------
3508
+ USWDS automatically generates @font-face
3509
+ declarations for the following
3510
+
3511
+ 'merriweather'
3512
+ 'public-sans'
3513
+ 'roboto-mono'
3514
+ 'source-sans-pro'
3515
+
3516
+ These typefaces not require custom
3517
+ source files.
3518
+ ----------------------------------------
3519
+ EXAMPLE
3520
+
3521
+ - dir:
3522
+ Directory relative to $theme-font-path
3523
+ - This directory should include fonts saved as
3524
+ .woff2
3525
+ ExampleSerif-Normal.woff2
3526
+
3527
+ $theme-font-serif-custom-src: (
3528
+ dir: 'custom/example-serif',
3529
+ roman: (
3530
+ 100: false,
3531
+ 200: false,
3532
+ 300: 'ExampleSerif-Light',
3533
+ 400: 'ExampleSerif-Normal',
3534
+ 500: false,
3535
+ 600: false,
3536
+ 700: 'ExampleSerif-Bold',
3537
+ 800: false,
3538
+ 900: false,
3539
+ ),
3540
+ italic: (
3541
+ 100: false,
3542
+ 200: false,
3543
+ 300: 'ExampleSerif-LightItalic',
3544
+ 400: 'ExampleSerif-Italic',
3545
+ 500: false,
3546
+ 600: false,
3547
+ 700: 'ExampleSerif-BoldItalic',
3548
+ 800: false,
3549
+ 900: false,
3550
+ ),
3551
+ );
3552
+ ----------------------------------------
3553
+ */
3554
+ /*
3555
+ ----------------------------------------
3556
+ Role-based font settings
3557
+ ----------------------------------------
3558
+ Set the role-based tokens for your
3559
+ project from the following font-type
3560
+ tokens.
3561
+ ----------------------------------------
3562
+ 'cond'
3563
+ 'icon'
3564
+ 'lang'
3565
+ 'mono'
3566
+ 'sans'
3567
+ 'serif'
3568
+ ----------------------------------------
3569
+ */
3570
+ /*
3571
+ ----------------------------------------
3572
+ Type scale
3573
+ ----------------------------------------
3574
+ Define your project's type scale using
3575
+ values from the USWDS system type scale
3576
+
3577
+ 1-20
3578
+ ----------------------------------------
3579
+ */
3580
+ /*
3581
+ ----------------------------------------
3582
+ Font weights
3583
+ ----------------------------------------
3584
+ Assign weights 100-900
3585
+ Or use `false` for unneeded weights.
3586
+ ----------------------------------------
3587
+ */
3588
+ /*
3589
+ ----------------------------------------
3590
+ General typography settings
3591
+ ----------------------------------------
3592
+ Type scale tokens
3593
+ ----------------------------------------
3594
+ micro: 10px
3595
+ 1: 12px
3596
+ 2: 13px
3597
+ 3: 14px
3598
+ 4: 15px
3599
+ 5: 16px
3600
+ 6: 17px
3601
+ 7: 18px
3602
+ 8: 20px
3603
+ 9: 22px
3604
+ 10: 24px
3605
+ 11: 28px
3606
+ 12: 32px
3607
+ 13: 36px
3608
+ 14: 40px
3609
+ 15: 48px
3610
+ 16: 56px
3611
+ 17: 64px
3612
+ 18: 80px
3613
+ 19: 120px
3614
+ 20: 140px
3615
+ ----------------------------------------
3616
+ Line height tokens
3617
+ ----------------------------------------
3618
+ 1: 1
3619
+ 2: 1.15
3620
+ 3: 1.35
3621
+ 4: 1.5
3622
+ 5: 1.62
3623
+ 6: 1.75
3624
+ ----------------------------------------
3625
+ Font role tokens
3626
+ ----------------------------------------
3627
+ 'ui'
3628
+ 'heading'
3629
+ 'body'
3630
+ 'code'
3631
+ 'alt'
3632
+ ----------------------------------------
3633
+ Measure (max-width) tokens
3634
+ ----------------------------------------
3635
+ 1: 44ex
3636
+ 2: 60ex
3637
+ 3: 64ex
3638
+ 4: 68ex
3639
+ 5: 74ex
3640
+ 6: 88ex
3641
+ none: none
3642
+ ----------------------------------------
3643
+ */
3644
+ /*
3645
+ * * * * * ==============================
3646
+ * * * * * ==============================
3647
+ * * * * * ==============================
3648
+ * * * * * ==============================
3649
+ ========================================
3650
+ ========================================
3651
+ ========================================
3652
+ ----------------------------------------
3653
+ COLOR SETTINGS
3654
+ ----------------------------------------
3655
+ Read more about settings and
3656
+ USWDS color tokens in the documentation:
3657
+ https://designsystem.digital.gov/design-tokens/color
3658
+ ----------------------------------------
3659
+ */
3660
+ /*
3661
+ ----------------------------------------
3662
+ Theme palette colors
3663
+ ----------------------------------------
3664
+ */
3665
+ /*
3666
+ ----------------------------------------
3667
+ State palette colors
3668
+ ----------------------------------------
3669
+ */
3670
+ /*
3671
+ ----------------------------------------
3672
+ General colors
3673
+ ----------------------------------------
3674
+ */
3675
+ /*
3676
+ * * * * * ==============================
3677
+ * * * * * ==============================
3678
+ * * * * * ==============================
3679
+ * * * * * ==============================
3680
+ ========================================
3681
+ ========================================
3682
+ ========================================
3683
+ ----------------------------------------
3684
+ COMPONENT SETTINGS
3685
+ ----------------------------------------
3686
+ Read more about settings and
3687
+ USWDS style tokens in the documentation:
3688
+ https://designsystem.digital.gov/design-tokens
3689
+ ----------------------------------------
3690
+ */
3691
+ /*
3692
+ * * * * * ==============================
3693
+ * * * * * ==============================
3694
+ * * * * * ==============================
3695
+ * * * * * ==============================
3696
+ ========================================
3697
+ ========================================
3698
+ ========================================
3699
+ ----------------------------------------
3700
+ SPACING SETTINGS
3701
+ ----------------------------------------
3702
+ Read more about settings and
3703
+ USWDS spacing units tokens in the
3704
+ documentation:
3705
+ https://designsystem.digital.gov/design-tokens/spacing-units
3706
+ ----------------------------------------
3707
+ */
3708
+ /*
3709
+ ----------------------------------------
3710
+ Border radius
3711
+ ----------------------------------------
3712
+ 2px 2px
3713
+ 0.5 4px
3714
+ 1 8px
3715
+ 1.5 12px
3716
+ 2 16px
3717
+ 2.5 20px
3718
+ 3 24px
3719
+ 4 32px
3720
+ 5 40px
3721
+ 6 48px
3722
+ 7 56px
3723
+ 8 64px
3724
+ 9 72px
3725
+ ----------------------------------------
3726
+ */
3727
+ /*
3728
+ ----------------------------------------
3729
+ Column gap
3730
+ ----------------------------------------
3731
+ 2px 2px
3732
+ 0.5 4px
3733
+ 1 8px
3734
+ 2 16px
3735
+ 3 24px
3736
+ 4 32px
3737
+ 5 40px
3738
+ 6 48px
3739
+ ----------------------------------------
3740
+ */
3741
+ /*
3742
+ ----------------------------------------
3743
+ Grid container max-width
3744
+ ----------------------------------------
3745
+ mobile
3746
+ mobile-lg
3747
+ tablet
3748
+ tablet-lg
3749
+ desktop
3750
+ desktop-lg
3751
+ widescreen
3752
+ ----------------------------------------
3753
+ */
3754
+ /*
3755
+ ----------------------------------------
3756
+ Site
3757
+ ----------------------------------------
3758
+ */
3759
+ /*
3760
+ * * * * * ==============================
3761
+ * * * * * ==============================
3762
+ * * * * * ==============================
3763
+ * * * * * ==============================
3764
+ ========================================
3765
+ ========================================
3766
+ ========================================
3767
+ ----------------------------------------
3768
+ UTILITIES SETTINGS
3769
+ ----------------------------------------
3770
+ Read more about settings and
3771
+ USWDS utilities in the documentation:
3772
+ https://designsystem.digital.gov/utilities
3773
+ ----------------------------------------
3774
+ */
3775
+ /*
3776
+ ----------------------------------------
3777
+ map-collect()
3778
+ ----------------------------------------
3779
+ Collect multiple maps into a single
3780
+ large map
3781
+ source: https://gist.github.com/bigglesrocks/d75091700f8f2be5abfe
3782
+ ----------------------------------------
3783
+ */
3784
+ /*
3785
+ ----------------------------------------
3786
+ Utility breakpoints
3787
+ ----------------------------------------
3788
+ Which breakpoints does your project
3789
+ need? Select as `true` any breakpoint
3790
+ used by utilities or layout grid
3791
+ ----------------------------------------
3792
+ */
3793
+ /*
3794
+ ----------------------------------------
3795
+ Global colors
3796
+ ----------------------------------------
3797
+ The following palettes will be added to
3798
+ - background-color
3799
+ - border-color
3800
+ - color
3801
+ - text-decoration-color
3802
+ ----------------------------------------
3803
+ */
3804
+ /*
3805
+ ----------------------------------------
3806
+ Settings
3807
+ ----------------------------------------
3808
+ */
3809
+ /*
3810
+ ----------------------------------------
3811
+ Values
3812
+ ----------------------------------------
3813
+ */
3814
+ /*
3815
+ ----------------------------------------
3816
+ has-important()
3817
+ ----------------------------------------
3818
+ Check to see if `!important` is
3819
+ being passed in a mixin's props
3820
+ ----------------------------------------
3821
+ */
3822
+ /*
3823
+ ----------------------------------------
3824
+ map-deep-get()
3825
+ ----------------------------------------
3826
+ @author Hugo Giraudel
3827
+ @access public
3828
+ @param {Map} $map - Map
3829
+ @param {Arglist} $keys - Key chain
3830
+ @return {*} - Desired value
3831
+ ----------------------------------------
3832
+ */
3833
+ /*
3834
+ ----------------------------------------
3835
+ multi-cat()
3836
+ ----------------------------------------
3837
+ Concatenate two lists
3838
+ ----------------------------------------
3839
+ */
3840
+ /*
3841
+ ----------------------------------------
3842
+ remove()
3843
+ ----------------------------------------
3844
+ Remove a value from a list
3845
+ ----------------------------------------
3846
+ */
3847
+ /*
3848
+ ----------------------------------------
3849
+ smart-quote()
3850
+ ----------------------------------------
3851
+ Quotes strings
3852
+ Inspects `px`, `xs`, and `xl` numbers
3853
+ Leaves bools as is
3854
+ ----------------------------------------
3855
+ */
3856
+ /*
3857
+ ----------------------------------------
3858
+ str-replace()
3859
+ ----------------------------------------
3860
+ Replace any substring with another
3861
+ string
3862
+ ----------------------------------------
3863
+ */
3864
+ /*
3865
+ ----------------------------------------
3866
+ str-split()
3867
+ ----------------------------------------
3868
+ Split a string at a given separator
3869
+ and convert into a list of substrings
3870
+ ----------------------------------------
3871
+ */
3872
+ /*
3873
+ ----------------------------------------
3874
+ strip-unit()
3875
+ ----------------------------------------
3876
+ Remove the unit of a length
3877
+ @author Hugo Giraudel
3878
+ @param {Number} $number - Number to remove unit from
3879
+ @return {Number} - Unitless number
3880
+ ----------------------------------------
3881
+ */
3882
+ /*
3883
+ ----------------------------------------
3884
+ base-to-map()
3885
+ @TODO: Deprecate and delete
3886
+ ----------------------------------------
3887
+ Convert a single base to a USWDS
3888
+ value map.
3889
+
3890
+ Candidate for deprecation if we remove
3891
+ isReadable
3892
+ ----------------------------------------
3893
+ */
3894
+ /*
3895
+ ----------------------------------------
3896
+ to-number()
3897
+ ----------------------------------------
3898
+ Casts a string into a number
3899
+ ----------------------------------------
3900
+ @param {String | Number} $value - Value to be parsed
3901
+ @return {Number}
3902
+ ----------------------------------------
3903
+ */
3904
+ /*
3905
+ ----------------------------------------
3906
+ unpack()
3907
+ ----------------------------------------
3908
+ Create lists of single items from lists
3909
+ of lists.
3910
+ ----------------------------------------
3911
+ (1, (2.1, 2.2), 3) -->
3912
+ (1, 2.1, 2.2, 3)
3913
+ ----------------------------------------
3914
+ */
3915
+ /*
3916
+ ----------------------------------------
3917
+ color()
3918
+ ----------------------------------------
3919
+ Derive a color from a color shortcode
3920
+ ----------------------------------------
3921
+ */
3922
+ /*
3923
+ ----------------------------------------
3924
+ get-system-color()
3925
+ ----------------------------------------
3926
+ Derive a system color from its
3927
+ family, value, and vivid or a passed
3928
+ variable that is, itself, a list
3929
+ ----------------------------------------
3930
+ */
3931
+ /*
3932
+ ----------------------------------------
3933
+ color()
3934
+ ----------------------------------------
3935
+ Derive a color from a color shortcode
3936
+ ----------------------------------------
3937
+ */
3938
+ /*
3939
+ ----------------------------------------
3940
+ advanced-color()
3941
+ ----------------------------------------
3942
+ Derive a color from a color triplet:
3943
+ [family], [grade], [variant]
3944
+ ----------------------------------------
3945
+ */
3946
+ /*
3947
+ ----------------------------------------
3948
+ Luminance ranges
3949
+ ----------------------------------------
3950
+ */
3951
+ /*
3952
+ ----------------------------------------
3953
+ calculate-grade()
3954
+ ----------------------------------------
3955
+ Derive the grade equivalent any color,
3956
+ even non-token colors
3957
+ ----------------------------------------
3958
+ */
3959
+ /*
3960
+ ----------------------------------------
3961
+ color-token-assignment()
3962
+ ----------------------------------------
3963
+ Get the system token equivalent of any
3964
+ theme color token
3965
+ ----------------------------------------
3966
+ */
3967
+ /*
3968
+ ----------------------------------------
3969
+ is-system-color-token()
3970
+ ----------------------------------------
3971
+ Return whether a token is a system
3972
+ color token
3973
+ ----------------------------------------
3974
+ */
3975
+ /*
3976
+ ----------------------------------------
3977
+ color()
3978
+ ----------------------------------------
3979
+ Derive a color from a color shortcode
3980
+ ----------------------------------------
3981
+ */
3982
+ /*
3983
+ ----------------------------------------
3984
+ color()
3985
+ ----------------------------------------
3986
+ Derive a color from a color shortcode
3987
+ ----------------------------------------
3988
+ */
3989
+ /*
3990
+ ----------------------------------------
3991
+ set-theme-color()
3992
+ ----------------------------------------
3993
+ Derive a color from a system color token
3994
+ or a hex value
3995
+ ----------------------------------------
3996
+ */
3997
+ /*
3998
+ ----------------------------------------
3999
+ is-theme-color-token()
4000
+ ----------------------------------------
4001
+ Return whether a token is a theme
4002
+ color token
4003
+ ----------------------------------------
4004
+ */
4005
+ /*
4006
+ ----------------------------------------
4007
+ color-token-family()
4008
+ ----------------------------------------
4009
+ Returns the family of a color token.
4010
+ Returns: color-family
4011
+ color-token-family("accent-warm-vivid")
4012
+ > "accent-warm"
4013
+ color-token-family("red-50v")
4014
+ > "red"
4015
+ color-token-variant(("red", 50, "vivid"))
4016
+ > "red"
4017
+ ----------------------------------------
4018
+ */
4019
+ /*
4020
+ ----------------------------------------
4021
+ decompose()
4022
+ ----------------------------------------
4023
+ Convert a color token into into a list
4024
+ of form [family], [grade], [variant]
4025
+ Vivid variants return "vivid" as the
4026
+ variant.
4027
+ If neither grade nor variant exists,
4028
+ returns 'null'
4029
+ ----------------------------------------
4030
+ */
4031
+ /*
4032
+ ----------------------------------------
4033
+ color-token-family()
4034
+ ----------------------------------------
4035
+ Returns the family of a color token.
4036
+ Returns: color-family
4037
+ color-token-family("accent-warm-vivid")
4038
+ > "accent-warm"
4039
+ color-token-family("red-50v")
4040
+ > "red"
4041
+ color-token-variant(("red", 50, "vivid"))
4042
+ > "red"
4043
+ ----------------------------------------
4044
+ */
4045
+ /*
4046
+ ----------------------------------------
4047
+ color-token-grade()
4048
+ ----------------------------------------
4049
+ Returns the grade of a USWDS color token.
4050
+ Returns: color-grade
4051
+ color-token-grade("accent-warm")
4052
+ > "root"
4053
+ color-token-grade("accent-warm-vivid")
4054
+ > "root"
4055
+ color-token-grade("accent-warm-darker")
4056
+ > "darker"
4057
+ color-token-grade("red-50v")
4058
+ > 50
4059
+ color-token-variant(("red", 50, "vivid"))
4060
+ > 50
4061
+ ----------------------------------------
4062
+ */
4063
+ /*
4064
+ ----------------------------------------
4065
+ color-token-family()
4066
+ ----------------------------------------
4067
+ Returns the family of a color token.
4068
+ Returns: color-family
4069
+ color-token-family("accent-warm-vivid")
4070
+ > "accent-warm"
4071
+ color-token-family("red-50v")
4072
+ > "red"
4073
+ color-token-variant(("red", 50, "vivid"))
4074
+ > "red"
4075
+ ----------------------------------------
4076
+ */
4077
+ /*
4078
+ ----------------------------------------
4079
+ color()
4080
+ ----------------------------------------
4081
+ Derive a color from a color shortcode
4082
+ ----------------------------------------
4083
+ */
4084
+ /*
4085
+ ----------------------------------------
4086
+ is-color-token()
4087
+ ----------------------------------------
4088
+ Returns whether a given string is a
4089
+ USWDS color token.
4090
+ ----------------------------------------
4091
+ */
4092
+ /*
4093
+ ----------------------------------------
4094
+ pow()
4095
+ ----------------------------------------
4096
+ Raises a unitless number to the power
4097
+ of another unitless number
4098
+ Includes helper functions
4099
+ ----------------------------------------
4100
+ */
4101
+ /*
4102
+ ----------------------------------------
4103
+ Helper functions
4104
+ ----------------------------------------
4105
+ */
4106
+ /* factorial()
4107
+ ----------------------------------------
4108
+ */
4109
+ /* summation()
4110
+ ----------------------------------------
4111
+ */
4112
+ /* exp-maclaurin()
4113
+ ----------------------------------------
4114
+ */
4115
+ /* ln()
4116
+ ----------------------------------------
4117
+ */
4118
+ /*
4119
+ ----------------------------------------
4120
+ color-token-type()
4121
+ ----------------------------------------
4122
+ Returns the type of a color token.
4123
+ Returns: "system" | "theme"
4124
+ ----------------------------------------
4125
+ */
4126
+ /*
4127
+ ----------------------------------------
4128
+ color-token-variant()
4129
+ ----------------------------------------
4130
+ Returns the variant of color token.
4131
+ Returns: "vivid" | false
4132
+ color-token-variant("accent-warm")
4133
+ > false
4134
+ color-token-variant("accent-warm-vivid")
4135
+ > "vivid"
4136
+ color-token-variant("red-50v")
4137
+ > "vivid"
4138
+ color-token-variant(("red", 50, "vivid"))
4139
+ > "vivid"
4140
+ ----------------------------------------
4141
+ */
4142
+ /*
4143
+ ----------------------------------------
4144
+ magic-number()
4145
+ ----------------------------------------
4146
+ Returns the magic number of two color
4147
+ grades. Takes numbers or color tokens.
4148
+ magic-number(50, 10)
4149
+ return: 40
4150
+ magic-number("red-50", "red-10")
4151
+ return: 40
4152
+ ----------------------------------------
4153
+ */
4154
+ /*
4155
+ ----------------------------------------
4156
+ is-accessible-magic-number()
4157
+ ----------------------------------------
4158
+ Returns whether two grades achieve
4159
+ specified target color contrast
4160
+ Returns: true | false
4161
+ is-accessible-magic-number(10, 50, "AA")
4162
+ > false
4163
+ is-accessible-magic-number(10, 60, "AA")
4164
+ > true
4165
+ ----------------------------------------
4166
+ */
4167
+ /*
4168
+ ----------------------------------------
4169
+ wcag-magic-number()
4170
+ ----------------------------------------
4171
+ Returns the magic number of a specific
4172
+ wcag grade:
4173
+ "AA"
4174
+ "AA-Large"
4175
+ "AAA"
4176
+ wcag-magic-number("AA")
4177
+ > 50
4178
+ ----------------------------------------
4179
+ */
4180
+ /*
4181
+ ----------------------------------------
4182
+ get-link-tokens-from-bg()
4183
+ ----------------------------------------
4184
+ Get accessible link colors for a given
4185
+ background color
4186
+ returns: link-token, hover-token
4187
+ get-link-tokens-from-bg(
4188
+ "black",
4189
+ "red-60",
4190
+ "red-10",
4191
+ "AA")
4192
+ > "red-10", "red-5"
4193
+ get-link-tokens-from-bg(
4194
+ "black",
4195
+ "red-60v",
4196
+ "red-10v",
4197
+ "AA-large")
4198
+ > "red-60v", "red-50v"
4199
+ get-link-tokens-from-bg(
4200
+ "black",
4201
+ "red-5v",
4202
+ "red-60v",
4203
+ "AA")
4204
+ > "red-5v", "white"
4205
+ get-link-tokens-from-bg(
4206
+ "black",
4207
+ "white",
4208
+ "red-60v",
4209
+ "AA")
4210
+ > "white", "white"
4211
+ ----------------------------------------
4212
+ */
4213
+ /*
4214
+ ----------------------------------------
4215
+ next-token()
4216
+ ----------------------------------------
4217
+ Returns next "darker" or "lighter" color
4218
+ token of the same token type and variant.
4219
+ Returns: color-token | false
4220
+ next-token("accent-warm", "lighter")
4221
+ > "accent-warm-light"
4222
+ next-token("gray-10", "lighter")
4223
+ > "gray-5"
4224
+ next-token("gray-5", "lighter")
4225
+ > "white"
4226
+ next-token("white", "lighter")
4227
+ > false
4228
+ next-token("red-50v", "darker")
4229
+ > "red-60v"
4230
+ next-token("red-50", "darker")
4231
+ > "red-60"
4232
+ next-token("red-80v", "darker")
4233
+ > "red-90"
4234
+ next-token("red-90", "darker")
4235
+ > "black"
4236
+ next-token("white", "darker")
4237
+ > "gray-5"
4238
+ next-token("black", "lighter")
4239
+ > "gray-90"
4240
+ ----------------------------------------
4241
+ */
4242
+ /*
4243
+ ----------------------------------------
4244
+ color()
4245
+ ----------------------------------------
4246
+ Derive a color from a color shortcode
4247
+ ----------------------------------------
4248
+ */
4249
+ /*
4250
+ ----------------------------------------
4251
+ test-colors()
4252
+ ----------------------------------------
4253
+ Check to see if all system colors
4254
+ fall between the proper relative
4255
+ luminance range for their grade.
4256
+ Has a couple quirks, as the luminance()
4257
+ function returns slightly different
4258
+ results than expected.
4259
+ ----------------------------------------
4260
+ */
4261
+ /*
4262
+ ----------------------------------------
4263
+ Line height
4264
+ ----------------------------------------
4265
+ */
4266
+ /*
4267
+ ----------------------------------------
4268
+ Measure
4269
+ ----------------------------------------
4270
+ */
4271
+ /*
4272
+ ----------------------------------------
4273
+ spacing-multiple()
4274
+ ----------------------------------------
4275
+ Converts a spacing unit multiple into
4276
+ the desired final units (currently rem)
4277
+ ----------------------------------------
4278
+ */
4279
+ /*
4280
+ ----------------------------------------
4281
+ cap-height()
4282
+ ----------------------------------------
4283
+ Get the cap height of a valid typeface
4284
+ ----------------------------------------
4285
+ */
4286
+ /*
4287
+ ----------------------------------------
4288
+ validate-typeface-token()
4289
+ ----------------------------------------
4290
+ Check to see if a typeface-token exists.
4291
+ Throw an error if a passed token does
4292
+ not exist in the typeface-token map.
4293
+ ----------------------------------------
4294
+ */
4295
+ /*
4296
+ ----------------------------------------
4297
+ convert-to-font-type()
4298
+ ----------------------------------------
4299
+ Converts a font-role token into a
4300
+ font-type token. Leaves font-type tokens
4301
+ unchanged.
4302
+ ----------------------------------------
4303
+ */
4304
+ /*
4305
+ ----------------------------------------
4306
+ font-sources()
4307
+ ----------------------------------------
4308
+ Outputs a list of font sources used in
4309
+ a @font-face declaration.
4310
+
4311
+ $theme-font-browser-compatibility: true - output woff2, woff, ttf
4312
+ $theme-font-browser-compatibility: false - output woff2
4313
+
4314
+ @param stem: string - [font path]/[custom-src.dir]/[custom-src.[style].[weight]]
4315
+ @output: string
4316
+
4317
+ filetypes must be one of the filetypes set in variables/$project-font-face-filetypes (woff, woff2, ttf)
4318
+ ----------------------------------------
4319
+ */
4320
+ /*
4321
+ ----------------------------------------
4322
+ Project fonts
4323
+ ----------------------------------------
4324
+ Collects font settings in a map for
4325
+ looping.
4326
+ ----------------------------------------
4327
+ */
4328
+ /*
4329
+ ----------------------------------------
4330
+ get-font-stack()
4331
+ ----------------------------------------
4332
+ Get a font stack from a style- or
4333
+ role-based font token.
4334
+ ----------------------------------------
4335
+ */
4336
+ /*
4337
+ ----------------------------------------
4338
+ get-typeface-token()
4339
+ ----------------------------------------
4340
+ Get a typeface token from a font-type or
4341
+ font-role token.
4342
+ ----------------------------------------
4343
+ */
4344
+ /*
4345
+ ----------------------------------------
4346
+ px-to-rem()
4347
+ ----------------------------------------
4348
+ Converts a value in px to a value in rem
4349
+ ----------------------------------------
4350
+ */
4351
+ /*
4352
+ ----------------------------------------
4353
+ rem-to-user-em()
4354
+ ----------------------------------------
4355
+ Converts a value in rem to a value in
4356
+ [user-settings] em for use in media
4357
+ queries
4358
+ ----------------------------------------
4359
+ */
4360
+ /*
4361
+ ----------------------------------------
4362
+ px-to-user-em()
4363
+ ----------------------------------------
4364
+ Converts a value in px to a value in em
4365
+ ----------------------------------------
4366
+ */
4367
+ /*
4368
+ ----------------------------------------
4369
+ rem-to-px()
4370
+ ----------------------------------------
4371
+ Converts a value in rem to a value in px
4372
+ ----------------------------------------
4373
+ */
4374
+ /*
4375
+ ----------------------------------------
4376
+ units()
4377
+ ----------------------------------------
4378
+ Converts a spacing unit into
4379
+ the desired final units (currently rem)
4380
+ ----------------------------------------
4381
+ */
4382
+ /*
4383
+ ----------------------------------------
4384
+ number-to-token()
4385
+ ----------------------------------------
4386
+ Converts an integer or numeric value
4387
+ into a system value
4388
+
4389
+ Ex: 0.5 --> '05'
4390
+ -1px --> 'neg-1px'
4391
+ ----------------------------------------
4392
+ */
4393
+ /*
4394
+ ----------------------------------------
4395
+ normalize-type-scale()
4396
+ ----------------------------------------
4397
+ Normalizes a specific face's optical size
4398
+ to a set target
4399
+ ----------------------------------------
4400
+ */
4401
+ /*
4402
+ ----------------------------------------
4403
+ system-type-scale()
4404
+ ----------------------------------------
4405
+ Get a value from the system type scale
4406
+ ----------------------------------------
4407
+ */
4408
+ /*
4409
+ ----------------------------------------
4410
+ columns()
4411
+ ----------------------------------------
4412
+ outputs a grid-col number based on
4413
+ the number of desired columns in the
4414
+ 12-column grid
4415
+
4416
+ Ex: columns(2) --> 6
4417
+ grid-col(columns(2))
4418
+ ----------------------------------------
4419
+ */
4420
+ /*
4421
+ ----------------------------------------
4422
+ USWDS Properties
4423
+ ----------------------------------------
4424
+ */
4425
+ /*
4426
+ ----------------------------------------
4427
+ get-uswds-value()
4428
+ ----------------------------------------
4429
+ Finds and outputs a value from the
4430
+ USWDS standard values.
4431
+
4432
+ Used to build other standard utility
4433
+ functions and mixins.
4434
+ ----------------------------------------
4435
+ */
4436
+ /*
4437
+ ----------------------------------------
4438
+ get-standard-values()
4439
+ ----------------------------------------
4440
+ Gets a map of USWDS standard values
4441
+ for a property
4442
+ ----------------------------------------
4443
+ */
4444
+ /*
4445
+ ----------------------------------------
4446
+ ns()
4447
+ ----------------------------------------
4448
+ Add a namesspace of $type if that
4449
+ namespace is set to output
4450
+ ----------------------------------------
4451
+ */
4452
+ /*
4453
+ ----------------------------------------
4454
+ border-radius()
4455
+ ----------------------------------------
4456
+ Get a border-radius from the system
4457
+ border-radii
4458
+ ----------------------------------------
4459
+ */
4460
+ /*
4461
+ ----------------------------------------
4462
+ font-weight()
4463
+ fw()
4464
+ ----------------------------------------
4465
+ Get a font-weight value from the
4466
+ system font-weight
4467
+ ----------------------------------------
4468
+ */
4469
+ /*
4470
+ ----------------------------------------
4471
+ feature()
4472
+ ----------------------------------------
4473
+ Gets a valid USWDS font feature setting
4474
+ ----------------------------------------
4475
+ */
4476
+ /*
4477
+ ----------------------------------------
4478
+ flex()
4479
+ ----------------------------------------
4480
+ Gets a valid USWDS flex value
4481
+ ----------------------------------------
4482
+ */
4483
+ /*
4484
+ ----------------------------------------
4485
+ font-family()
4486
+ family()
4487
+ ----------------------------------------
4488
+ Get a font-family stack from a
4489
+ role-based or type-based font family
4490
+ ----------------------------------------
4491
+ */
4492
+ /*
4493
+ ----------------------------------------
4494
+ letter-spacing()
4495
+ ls()
4496
+ ----------------------------------------
4497
+ Get a letter-spacing value from the
4498
+ system letter-spacing
4499
+ ----------------------------------------
4500
+ */
4501
+ /*
4502
+ ----------------------------------------
4503
+ measure()
4504
+ ----------------------------------------
4505
+ Gets a valid USWDS reading line length
4506
+ ----------------------------------------
4507
+ */
4508
+ /*
4509
+ ----------------------------------------
4510
+ opacity()
4511
+ ----------------------------------------
4512
+ Get an opacity from the system
4513
+ opacities
4514
+ ----------------------------------------
4515
+ */
4516
+ /*
4517
+ ----------------------------------------
4518
+ order()
4519
+ ----------------------------------------
4520
+ Get an order value from the
4521
+ system orders
4522
+ ----------------------------------------
4523
+ */
4524
+ /*
4525
+ ----------------------------------------
4526
+ radius()
4527
+ ----------------------------------------
4528
+ Get a border-radius value from the
4529
+ system letter-spacing
4530
+ ----------------------------------------
4531
+ */
4532
+ /*
4533
+ ----------------------------------------
4534
+ font-size()
4535
+ ----------------------------------------
4536
+ Get type scale value from a [family] and
4537
+ [scale]
4538
+ ----------------------------------------
4539
+ */
4540
+ /*
4541
+ ----------------------------------------
4542
+ z-index()
4543
+ z()
4544
+ ----------------------------------------
4545
+ Get a z-index value from the
4546
+ system z-index
4547
+ ----------------------------------------
4548
+ */
4549
+ /*
4550
+ ----------------------------------------
4551
+ utility-font()
4552
+ ----------------------------------------
4553
+ Get a normalized font-size in rem from
4554
+ a family and a type size in either
4555
+ system scale or project scale
4556
+ ----------------------------------------
4557
+ Not the public-facing function.
4558
+ Used for building the utilities and
4559
+ withholds certain errors.
4560
+ ----------------------------------------
4561
+ */
4562
+ /*
4563
+ ----------------------------------------
4564
+ family()
4565
+ ----------------------------------------
4566
+ Get a font-family stack
4567
+ ----------------------------------------
4568
+ */
4569
+ /*
4570
+ ----------------------------------------
4571
+ size()
4572
+ ----------------------------------------
4573
+ Get a normalized font-size in rem from
4574
+ a family and a type size in either
4575
+ system scale or project scale
4576
+ ----------------------------------------
4577
+ */
4578
+ /*
4579
+ ----------------------------------------
4580
+ font()
4581
+ ----------------------------------------
4582
+ Get a font-family stack
4583
+ AND
4584
+ Get a normalized font-size in rem from
4585
+ a family and a type size in either
4586
+ system scale or project scale
4587
+ ----------------------------------------
4588
+ */
4589
+ /*
4590
+ ----------------------------------------
4591
+ de-list()
4592
+ ----------------------------------------
4593
+ Transform a one-element list or arglist
4594
+ into that single element.
4595
+ ----------------------------------------
4596
+ (1) => 1
4597
+ ((1)) => (1)
4598
+ ----------------------------------------
4599
+ */
4600
+ /*
4601
+ ----------------------------------------
4602
+ unpack()
4603
+ ----------------------------------------
4604
+ Create lists of single items from lists
4605
+ of lists.
4606
+ ----------------------------------------
4607
+ (1, (2.1, 2.2), 3) -->
4608
+ (1, 2.1, 2.2, 3)
4609
+ ----------------------------------------
4610
+ */
4611
+ /*
4612
+ ----------------------------------------
4613
+ get-last()
4614
+ ----------------------------------------
4615
+ Return the last item of a list,
4616
+ Return null if the value is null
4617
+ ----------------------------------------
4618
+ */
4619
+ /*
4620
+ ----------------------------------------
4621
+ has-important()
4622
+ ----------------------------------------
4623
+ Check to see if `!important` is
4624
+ being passed in a mixin's props
4625
+ ----------------------------------------
4626
+ */
4627
+ /*
4628
+ ----------------------------------------
4629
+ number-to-token()
4630
+ ----------------------------------------
4631
+ Converts an integer or numeric value
4632
+ into a system value
4633
+
4634
+ Ex: 0.5 --> '05'
4635
+ -1px --> 'neg-1px'
4636
+ ----------------------------------------
4637
+ */
4638
+ /*
4639
+ ----------------------------------------
4640
+ append-important()
4641
+ ----------------------------------------
4642
+ Append `!important` to a list
4643
+ ----------------------------------------
4644
+ */
4645
+ /*
4646
+ ----------------------------------------
4647
+ error-not-token()
4648
+ ----------------------------------------
4649
+ Returns a common not-a-token error.
4650
+ ----------------------------------------
4651
+ */
4652
+ /*
4653
+ ----------------------------------------
4654
+ uswds-error()
4655
+ ----------------------------------------
4656
+ Allow the system to pass an error as text
4657
+ to test error states in unit testing
4658
+ ----------------------------------------
4659
+ */
4660
+ /*
4661
+ ----------------------------------------
4662
+ get-default()
4663
+ ----------------------------------------
4664
+ Returns the default value from a map
4665
+ of project defaults
4666
+ get-default("bg-color")
4667
+ > $theme-body-background-color
4668
+ ----------------------------------------
4669
+ */
4670
+ /*
4671
+ * * * * * ==============================
4672
+ * * * * * ==============================
4673
+ * * * * * ==============================
4674
+ * * * * * ==============================
4675
+ ========================================
4676
+ ========================================
4677
+ ========================================
4678
+ ----------------------------------------
4679
+ GENERAL SETTINGS
4680
+ ----------------------------------------
4681
+ Read more about settings and
4682
+ USWDS style tokens in the documentation:
4683
+ https://designsystem.digital.gov/design-tokens
4684
+ ----------------------------------------
4685
+ */
4686
+ /*
4687
+ ----------------------------------------
4688
+ Image path
4689
+ ----------------------------------------
4690
+ Relative image file path
4691
+ ----------------------------------------
4692
+ */
4693
+ /*
4694
+ ----------------------------------------
4695
+ Show compile warnings
4696
+ ----------------------------------------
4697
+ Show Sass warnings when functions and
4698
+ mixins use non-standard tokens.
4699
+ AND
4700
+ Show updates and notifications.
4701
+ ----------------------------------------
4702
+ */
4703
+ /*
4704
+ ----------------------------------------
4705
+ Namespace
4706
+ ----------------------------------------
4707
+ */
4708
+ /*
4709
+ ----------------------------------------
4710
+ Prefix separator
4711
+ ----------------------------------------
4712
+ Set the character the separates
4713
+ responsive and state prefixes from the
4714
+ main class name.
4715
+ The default (":") needs to be preceded
4716
+ by two backslashes to be properly
4717
+ escaped.
4718
+ ----------------------------------------
4719
+ */
4720
+ /*
4721
+ ----------------------------------------
4722
+ Layout grid
4723
+ ----------------------------------------
4724
+ Should the layout grid classes output
4725
+ with !important
4726
+ ----------------------------------------
4727
+ */
4728
+ /*
4729
+ ----------------------------------------
4730
+ Border box sizing
4731
+ ----------------------------------------
4732
+ When set to true, sets the box-sizing
4733
+ property of all site elements to
4734
+ `border-box`.
4735
+ ----------------------------------------
4736
+ */
4737
+ /*
4738
+ ----------------------------------------
4739
+ Focus styles
4740
+ ----------------------------------------
4741
+ */
4742
+ /*
4743
+ ----------------------------------------
4744
+ Icons
4745
+ ----------------------------------------
4746
+ */
4747
+ /*
4748
+ * * * * * ==============================
4749
+ * * * * * ==============================
4750
+ * * * * * ==============================
4751
+ * * * * * ==============================
4752
+ ========================================
4753
+ ========================================
4754
+ ========================================
4755
+ ----------------------------------------
4756
+ TYPOGRAPHY SETTINGS
4757
+ ----------------------------------------
4758
+ Read more about settings and
4759
+ USWDS typography tokens in the documentation:
4760
+ https://designsystem.digital.gov/design-tokens/typesetting/overview/
4761
+ ----------------------------------------
4762
+ */
4763
+ /*
4764
+ ----------------------------------------
4765
+ Root font size
4766
+ ----------------------------------------
4767
+ Setting $theme-respect-user-font-size to
4768
+ true sets the root font size to 100% and
4769
+ uses ems for media queries
4770
+ ----------------------------------------
4771
+ $theme-root-font-size only applies when
4772
+ $theme-respect-user-font-size is set to
4773
+ false.
4774
+
4775
+ This will set the root font size
4776
+ as a specific px value and use px values
4777
+ for media queries.
4778
+
4779
+ Accepts true or false
4780
+ ----------------------------------------
4781
+ */
4782
+ /*
4783
+ ----------------------------------------
4784
+ Global styles
4785
+ ----------------------------------------
4786
+ Adds basic styling for the following
4787
+ unclassed elements:
4788
+
4789
+ - paragraph: paragraph text
4790
+ - link: links
4791
+ - content: paragraph text, links,
4792
+ headings, lists, and tables
4793
+ ----------------------------------------
4794
+ */
4795
+ /*
4796
+ ----------------------------------------
4797
+ Broswer compatibility mode
4798
+ ----------------------------------------
4799
+ When true, outputs woff and ttf font
4800
+ formats in addition to woff2
4801
+ ----------------------------------------
4802
+ */
4803
+ /*
4804
+ ----------------------------------------
4805
+ Font path
4806
+ ----------------------------------------
4807
+ Relative font file path
4808
+ ----------------------------------------
4809
+ */
4810
+ /*
4811
+ ----------------------------------------
4812
+ Custom typeface tokens
4813
+ ----------------------------------------
4814
+ Add a new custom typeface token if
4815
+ your project uses a typeface not already
4816
+ defined by USWDS.
4817
+ ----------------------------------------
4818
+ USWDS defines the following tokens
4819
+ by default:
4820
+ ----------------------------------------
4821
+ 'georgia'
4822
+ 'helvetica'
4823
+ 'merriweather'
4824
+ 'open-sans'
4825
+ 'public-sans'
4826
+ 'roboto-mono'
4827
+ 'source-sans-pro'
4828
+ 'system'
4829
+ 'tahoma'
4830
+ 'verdana'
4831
+ ----------------------------------------
4832
+ Add as many new tokens as you have
4833
+ custom typefaces. Reference your new
4834
+ token(s) in the type-based font settings
4835
+ using the quoted name of the token.
4836
+
4837
+ For example:
4838
+
4839
+ $theme-font-type-cond: 'example-font-token';
4840
+
4841
+ display-name:
4842
+ The display name of your font
4843
+
4844
+ cap-height:
4845
+ The height of a 500px `N` in Sketch
4846
+ ----------------------------------------
4847
+ You should change `example-[style]-token`
4848
+ names to something more descriptive.
4849
+ ----------------------------------------
4850
+ */
4851
+ /*
4852
+ ----------------------------------------
4853
+ Type-based font settings
4854
+ ----------------------------------------
4855
+ Set the type-based tokens for your
4856
+ project from the following tokens,
4857
+ or from any new font tokens you added in
4858
+ $theme-typeface-tokens.
4859
+ ----------------------------------------
4860
+ 'georgia'
4861
+ 'helvetica'
4862
+ 'merriweather'
4863
+ 'open-sans'
4864
+ 'public-sans'
4865
+ 'roboto-mono'
4866
+ 'source-sans-pro'
4867
+ 'system'
4868
+ 'tahoma'
4869
+ 'verdana'
4870
+ ----------------------------------------
4871
+ */
4872
+ /*
4873
+ ----------------------------------------
4874
+ Custom font stacks
4875
+ ----------------------------------------
4876
+ Add custom font stacks to any of the
4877
+ type-based fonts. Any USWDS typeface
4878
+ token already has a default stack.
4879
+
4880
+ Custom stacks don't need to include the
4881
+ font's display name. It will
4882
+ automatically appear at the start of
4883
+ the stack.
4884
+ ----------------------------------------
4885
+ Example:
4886
+ $theme-font-type-sans: 'source-sans-pro';
4887
+ $theme-font-sans-custom-stack: "Helvetica Neue", Helvetica, Arial, sans;
4888
+
4889
+ Output:
4890
+ font-family: "Source Sans Pro", "Helvetica Neue", Helvetica, Arial, sans;
4891
+ ----------------------------------------
4892
+ */
4893
+ /*
4894
+ ----------------------------------------
4895
+ Add any custom font source files
4896
+ ----------------------------------------
4897
+ If you want USWDS to generate additional
4898
+ @font-face declarations, add your font
4899
+ data below, following the example that
4900
+ follows.
4901
+ ----------------------------------------
4902
+ USWDS automatically generates @font-face
4903
+ declarations for the following
4904
+
4905
+ 'merriweather'
4906
+ 'public-sans'
4907
+ 'roboto-mono'
4908
+ 'source-sans-pro'
4909
+
4910
+ These typefaces not require custom
4911
+ source files.
4912
+ ----------------------------------------
4913
+ EXAMPLE
4914
+
4915
+ - dir:
4916
+ Directory relative to $theme-font-path
4917
+ - This directory should include fonts saved as
4918
+ .woff2
4919
+ ExampleSerif-Normal.woff2
4920
+
4921
+ $theme-font-serif-custom-src: (
4922
+ dir: 'custom/example-serif',
4923
+ roman: (
4924
+ 100: false,
4925
+ 200: false,
4926
+ 300: 'ExampleSerif-Light',
4927
+ 400: 'ExampleSerif-Normal',
4928
+ 500: false,
4929
+ 600: false,
4930
+ 700: 'ExampleSerif-Bold',
4931
+ 800: false,
4932
+ 900: false,
4933
+ ),
4934
+ italic: (
4935
+ 100: false,
4936
+ 200: false,
4937
+ 300: 'ExampleSerif-LightItalic',
4938
+ 400: 'ExampleSerif-Italic',
4939
+ 500: false,
4940
+ 600: false,
4941
+ 700: 'ExampleSerif-BoldItalic',
4942
+ 800: false,
4943
+ 900: false,
4944
+ ),
4945
+ );
4946
+ ----------------------------------------
4947
+ */
4948
+ /*
4949
+ ----------------------------------------
4950
+ Role-based font settings
4951
+ ----------------------------------------
4952
+ Set the role-based tokens for your
4953
+ project from the following font-type
4954
+ tokens.
4955
+ ----------------------------------------
4956
+ 'cond'
4957
+ 'icon'
4958
+ 'lang'
4959
+ 'mono'
4960
+ 'sans'
4961
+ 'serif'
4962
+ ----------------------------------------
4963
+ */
4964
+ /*
4965
+ ----------------------------------------
4966
+ Type scale
4967
+ ----------------------------------------
4968
+ Define your project's type scale using
4969
+ values from the USWDS system type scale
4970
+
4971
+ 1-20
4972
+ ----------------------------------------
4973
+ */
4974
+ /*
4975
+ ----------------------------------------
4976
+ Font weights
4977
+ ----------------------------------------
4978
+ Assign weights 100-900
4979
+ Or use `false` for unneeded weights.
4980
+ ----------------------------------------
4981
+ */
4982
+ /*
4983
+ ----------------------------------------
4984
+ General typography settings
4985
+ ----------------------------------------
4986
+ Type scale tokens
4987
+ ----------------------------------------
4988
+ micro: 10px
4989
+ 1: 12px
4990
+ 2: 13px
4991
+ 3: 14px
4992
+ 4: 15px
4993
+ 5: 16px
4994
+ 6: 17px
4995
+ 7: 18px
4996
+ 8: 20px
4997
+ 9: 22px
4998
+ 10: 24px
4999
+ 11: 28px
5000
+ 12: 32px
5001
+ 13: 36px
5002
+ 14: 40px
5003
+ 15: 48px
5004
+ 16: 56px
5005
+ 17: 64px
5006
+ 18: 80px
5007
+ 19: 120px
5008
+ 20: 140px
5009
+ ----------------------------------------
5010
+ Line height tokens
5011
+ ----------------------------------------
5012
+ 1: 1
5013
+ 2: 1.15
5014
+ 3: 1.35
5015
+ 4: 1.5
5016
+ 5: 1.62
5017
+ 6: 1.75
5018
+ ----------------------------------------
5019
+ Font role tokens
5020
+ ----------------------------------------
5021
+ 'ui'
5022
+ 'heading'
5023
+ 'body'
5024
+ 'code'
5025
+ 'alt'
5026
+ ----------------------------------------
5027
+ Measure (max-width) tokens
5028
+ ----------------------------------------
5029
+ 1: 44ex
5030
+ 2: 60ex
5031
+ 3: 64ex
5032
+ 4: 68ex
5033
+ 5: 74ex
5034
+ 6: 88ex
5035
+ none: none
5036
+ ----------------------------------------
5037
+ */
5038
+ /*
5039
+ * * * * * ==============================
5040
+ * * * * * ==============================
5041
+ * * * * * ==============================
5042
+ * * * * * ==============================
5043
+ ========================================
5044
+ ========================================
5045
+ ========================================
5046
+ ----------------------------------------
5047
+ COLOR SETTINGS
5048
+ ----------------------------------------
5049
+ Read more about settings and
5050
+ USWDS color tokens in the documentation:
5051
+ https://designsystem.digital.gov/design-tokens/color
5052
+ ----------------------------------------
5053
+ */
5054
+ /*
5055
+ ----------------------------------------
5056
+ Theme palette colors
5057
+ ----------------------------------------
5058
+ */
5059
+ /*
5060
+ ----------------------------------------
5061
+ State palette colors
5062
+ ----------------------------------------
5063
+ */
5064
+ /*
5065
+ ----------------------------------------
5066
+ General colors
5067
+ ----------------------------------------
5068
+ */
5069
+ /*
5070
+ * * * * * ==============================
5071
+ * * * * * ==============================
5072
+ * * * * * ==============================
5073
+ * * * * * ==============================
5074
+ ========================================
5075
+ ========================================
5076
+ ========================================
5077
+ ----------------------------------------
5078
+ COMPONENT SETTINGS
5079
+ ----------------------------------------
5080
+ Read more about settings and
5081
+ USWDS style tokens in the documentation:
5082
+ https://designsystem.digital.gov/design-tokens
5083
+ ----------------------------------------
5084
+ */
5085
+ /*
5086
+ * * * * * ==============================
5087
+ * * * * * ==============================
5088
+ * * * * * ==============================
5089
+ * * * * * ==============================
5090
+ ========================================
5091
+ ========================================
5092
+ ========================================
5093
+ ----------------------------------------
5094
+ SPACING SETTINGS
5095
+ ----------------------------------------
5096
+ Read more about settings and
5097
+ USWDS spacing units tokens in the
5098
+ documentation:
5099
+ https://designsystem.digital.gov/design-tokens/spacing-units
5100
+ ----------------------------------------
5101
+ */
5102
+ /*
5103
+ ----------------------------------------
5104
+ Border radius
5105
+ ----------------------------------------
5106
+ 2px 2px
5107
+ 0.5 4px
5108
+ 1 8px
5109
+ 1.5 12px
5110
+ 2 16px
5111
+ 2.5 20px
5112
+ 3 24px
5113
+ 4 32px
5114
+ 5 40px
5115
+ 6 48px
5116
+ 7 56px
5117
+ 8 64px
5118
+ 9 72px
5119
+ ----------------------------------------
5120
+ */
5121
+ /*
5122
+ ----------------------------------------
5123
+ Column gap
5124
+ ----------------------------------------
5125
+ 2px 2px
5126
+ 0.5 4px
5127
+ 1 8px
5128
+ 2 16px
5129
+ 3 24px
5130
+ 4 32px
5131
+ 5 40px
5132
+ 6 48px
5133
+ ----------------------------------------
5134
+ */
5135
+ /*
5136
+ ----------------------------------------
5137
+ Grid container max-width
5138
+ ----------------------------------------
5139
+ mobile
5140
+ mobile-lg
5141
+ tablet
5142
+ tablet-lg
5143
+ desktop
5144
+ desktop-lg
5145
+ widescreen
5146
+ ----------------------------------------
5147
+ */
5148
+ /*
5149
+ ----------------------------------------
5150
+ Site
5151
+ ----------------------------------------
5152
+ */
5153
+ /*
5154
+ * * * * * ==============================
5155
+ * * * * * ==============================
5156
+ * * * * * ==============================
5157
+ * * * * * ==============================
5158
+ ========================================
5159
+ ========================================
5160
+ ========================================
5161
+ ----------------------------------------
5162
+ UTILITIES SETTINGS
5163
+ ----------------------------------------
5164
+ Read more about settings and
5165
+ USWDS utilities in the documentation:
5166
+ https://designsystem.digital.gov/utilities
5167
+ ----------------------------------------
5168
+ */
5169
+ /*
5170
+ ----------------------------------------
5171
+ map-collect()
5172
+ ----------------------------------------
5173
+ Collect multiple maps into a single
5174
+ large map
5175
+ source: https://gist.github.com/bigglesrocks/d75091700f8f2be5abfe
5176
+ ----------------------------------------
5177
+ */
5178
+ /*
5179
+ ----------------------------------------
5180
+ Utility breakpoints
5181
+ ----------------------------------------
5182
+ Which breakpoints does your project
5183
+ need? Select as `true` any breakpoint
5184
+ used by utilities or layout grid
5185
+ ----------------------------------------
5186
+ */
5187
+ /*
5188
+ ----------------------------------------
5189
+ Global colors
5190
+ ----------------------------------------
5191
+ The following palettes will be added to
5192
+ - background-color
5193
+ - border-color
5194
+ - color
5195
+ - text-decoration-color
5196
+ ----------------------------------------
5197
+ */
5198
+ /*
5199
+ ----------------------------------------
5200
+ Settings
5201
+ ----------------------------------------
5202
+ */
5203
+ /*
5204
+ ----------------------------------------
5205
+ Values
5206
+ ----------------------------------------
5207
+ */
5208
+ /*
5209
+ ----------------------------------------
5210
+ map-deep-get()
5211
+ ----------------------------------------
5212
+ @author Hugo Giraudel
5213
+ @access public
5214
+ @param {Map} $map - Map
5215
+ @param {Arglist} $keys - Key chain
5216
+ @return {*} - Desired value
5217
+ ----------------------------------------
5218
+ */
5219
+ /*
5220
+ ----------------------------------------
5221
+ multi-cat()
5222
+ ----------------------------------------
5223
+ Concatenate two lists
5224
+ ----------------------------------------
5225
+ */
5226
+ /*
5227
+ ----------------------------------------
5228
+ remove()
5229
+ ----------------------------------------
5230
+ Remove a value from a list
5231
+ ----------------------------------------
5232
+ */
5233
+ /*
5234
+ ----------------------------------------
5235
+ smart-quote()
5236
+ ----------------------------------------
5237
+ Quotes strings
5238
+ Inspects `px`, `xs`, and `xl` numbers
5239
+ Leaves bools as is
5240
+ ----------------------------------------
5241
+ */
5242
+ /*
5243
+ ----------------------------------------
5244
+ str-replace()
5245
+ ----------------------------------------
5246
+ Replace any substring with another
5247
+ string
5248
+ ----------------------------------------
5249
+ */
5250
+ /*
5251
+ ----------------------------------------
5252
+ str-split()
5253
+ ----------------------------------------
5254
+ Split a string at a given separator
5255
+ and convert into a list of substrings
5256
+ ----------------------------------------
5257
+ */
5258
+ /*
5259
+ ----------------------------------------
5260
+ strip-unit()
5261
+ ----------------------------------------
5262
+ Remove the unit of a length
5263
+ @author Hugo Giraudel
5264
+ @param {Number} $number - Number to remove unit from
5265
+ @return {Number} - Unitless number
5266
+ ----------------------------------------
5267
+ */
5268
+ /*
5269
+ ----------------------------------------
5270
+ base-to-map()
5271
+ @TODO: Deprecate and delete
5272
+ ----------------------------------------
5273
+ Convert a single base to a USWDS
5274
+ value map.
5275
+
5276
+ Candidate for deprecation if we remove
5277
+ isReadable
5278
+ ----------------------------------------
5279
+ */
5280
+ /*
5281
+ ----------------------------------------
5282
+ to-number()
5283
+ ----------------------------------------
5284
+ Casts a string into a number
5285
+ ----------------------------------------
5286
+ @param {String | Number} $value - Value to be parsed
5287
+ @return {Number}
5288
+ ----------------------------------------
5289
+ */
5290
+ /*
5291
+ ----------------------------------------
5292
+ spacing-multiple()
5293
+ ----------------------------------------
5294
+ Converts a spacing unit multiple into
5295
+ the desired final units (currently rem)
5296
+ ----------------------------------------
5297
+ */
5298
+ /*
5299
+ ----------------------------------------
5300
+ units()
5301
+ ----------------------------------------
5302
+ Converts a spacing unit into
5303
+ the desired final units (currently rem)
5304
+ ----------------------------------------
5305
+ */
5306
+ /*
5307
+ ----------------------------------------
5308
+ USWDS Properties
5309
+ ----------------------------------------
5310
+ */
5311
+ /*
5312
+ ----------------------------------------
5313
+ Line height
5314
+ ----------------------------------------
5315
+ */
5316
+ /*
5317
+ ----------------------------------------
5318
+ color()
5319
+ ----------------------------------------
5320
+ Derive a color from a color shortcode
5321
+ ----------------------------------------
5322
+ */
5323
+ /*
5324
+ ----------------------------------------
5325
+ color()
5326
+ ----------------------------------------
5327
+ Derive a color from a color shortcode
5328
+ ----------------------------------------
5329
+ */
5330
+ /*
5331
+ ----------------------------------------
5332
+ get-system-color()
5333
+ ----------------------------------------
5334
+ Derive a system color from its
5335
+ family, value, and vivid or a passed
5336
+ variable that is, itself, a list
5337
+ ----------------------------------------
5338
+ */
5339
+ /*
5340
+ ----------------------------------------
5341
+ color()
5342
+ ----------------------------------------
5343
+ Derive a color from a color shortcode
5344
+ ----------------------------------------
5345
+ */
5346
+ /*
5347
+ ----------------------------------------
5348
+ color()
5349
+ ----------------------------------------
5350
+ Derive a color from a color shortcode
5351
+ ----------------------------------------
5352
+ */
5353
+ /*
5354
+ ----------------------------------------
5355
+ color()
5356
+ ----------------------------------------
5357
+ Derive a color from a color shortcode
5358
+ ----------------------------------------
5359
+ */
5360
+ /*
5361
+ ----------------------------------------
5362
+ set-theme-color()
5363
+ ----------------------------------------
5364
+ Derive a color from a system color token
5365
+ or a hex value
5366
+ ----------------------------------------
5367
+ */
5368
+ /*
5369
+ ----------------------------------------
5370
+ Measure
5371
+ ----------------------------------------
5372
+ */
5373
+ /*
5374
+ ----------------------------------------
5375
+ cap-height()
5376
+ ----------------------------------------
5377
+ Get the cap height of a valid typeface
5378
+ ----------------------------------------
5379
+ */
5380
+ /*
5381
+ ----------------------------------------
5382
+ validate-typeface-token()
5383
+ ----------------------------------------
5384
+ Check to see if a typeface-token exists.
5385
+ Throw an error if a passed token does
5386
+ not exist in the typeface-token map.
5387
+ ----------------------------------------
5388
+ */
5389
+ /*
5390
+ ----------------------------------------
5391
+ convert-to-font-type()
5392
+ ----------------------------------------
5393
+ Converts a font-role token into a
5394
+ font-type token. Leaves font-type tokens
5395
+ unchanged.
5396
+ ----------------------------------------
5397
+ */
5398
+ /*
5399
+ ----------------------------------------
5400
+ font-sources()
5401
+ ----------------------------------------
5402
+ Outputs a list of font sources used in
5403
+ a @font-face declaration.
5404
+
5405
+ $theme-font-browser-compatibility: true - output woff2, woff, ttf
5406
+ $theme-font-browser-compatibility: false - output woff2
5407
+
5408
+ @param stem: string - [font path]/[custom-src.dir]/[custom-src.[style].[weight]]
5409
+ @output: string
5410
+
5411
+ filetypes must be one of the filetypes set in variables/$project-font-face-filetypes (woff, woff2, ttf)
5412
+ ----------------------------------------
5413
+ */
5414
+ /*
5415
+ ----------------------------------------
5416
+ Project fonts
5417
+ ----------------------------------------
5418
+ Collects font settings in a map for
5419
+ looping.
5420
+ ----------------------------------------
5421
+ */
5422
+ /*
5423
+ ----------------------------------------
5424
+ get-font-stack()
5425
+ ----------------------------------------
5426
+ Get a font stack from a style- or
5427
+ role-based font token.
5428
+ ----------------------------------------
5429
+ */
5430
+ /*
5431
+ ----------------------------------------
5432
+ get-typeface-token()
5433
+ ----------------------------------------
5434
+ Get a typeface token from a font-type or
5435
+ font-role token.
5436
+ ----------------------------------------
5437
+ */
5438
+ /*
5439
+ ----------------------------------------
5440
+ px-to-rem()
5441
+ ----------------------------------------
5442
+ Converts a value in px to a value in rem
5443
+ ----------------------------------------
5444
+ */
5445
+ /*
5446
+ ----------------------------------------
5447
+ rem-to-user-em()
5448
+ ----------------------------------------
5449
+ Converts a value in rem to a value in
5450
+ [user-settings] em for use in media
5451
+ queries
5452
+ ----------------------------------------
5453
+ */
5454
+ /*
5455
+ ----------------------------------------
5456
+ px-to-user-em()
5457
+ ----------------------------------------
5458
+ Converts a value in px to a value in em
5459
+ ----------------------------------------
5460
+ */
5461
+ /*
5462
+ ----------------------------------------
5463
+ rem-to-px()
5464
+ ----------------------------------------
5465
+ Converts a value in rem to a value in px
5466
+ ----------------------------------------
5467
+ */
5468
+ /*
5469
+ ----------------------------------------
5470
+ normalize-type-scale()
5471
+ ----------------------------------------
5472
+ Normalizes a specific face's optical size
5473
+ to a set target
5474
+ ----------------------------------------
5475
+ */
5476
+ /*
5477
+ ----------------------------------------
5478
+ system-type-scale()
5479
+ ----------------------------------------
5480
+ Get a value from the system type scale
5481
+ ----------------------------------------
5482
+ */
5483
+ /*
5484
+ ----------------------------------------
5485
+ get-uswds-value()
5486
+ ----------------------------------------
5487
+ Finds and outputs a value from the
5488
+ USWDS standard values.
5489
+
5490
+ Used to build other standard utility
5491
+ functions and mixins.
5492
+ ----------------------------------------
5493
+ */
5494
+ /*
5495
+ ----------------------------------------
5496
+ advanced-color()
5497
+ ----------------------------------------
5498
+ Derive a color from a color triplet:
5499
+ [family], [grade], [variant]
5500
+ ----------------------------------------
5501
+ */
5502
+ /*
5503
+ ----------------------------------------
5504
+ Luminance ranges
5505
+ ----------------------------------------
5506
+ */
5507
+ /*
5508
+ ----------------------------------------
5509
+ calculate-grade()
5510
+ ----------------------------------------
5511
+ Derive the grade equivalent any color,
5512
+ even non-token colors
5513
+ ----------------------------------------
5514
+ */
5515
+ /*
5516
+ ----------------------------------------
5517
+ color-token-assignment()
5518
+ ----------------------------------------
5519
+ Get the system token equivalent of any
5520
+ theme color token
5521
+ ----------------------------------------
5522
+ */
5523
+ /*
5524
+ ----------------------------------------
5525
+ is-system-color-token()
5526
+ ----------------------------------------
5527
+ Return whether a token is a system
5528
+ color token
5529
+ ----------------------------------------
5530
+ */
5531
+ /*
5532
+ ----------------------------------------
5533
+ is-theme-color-token()
5534
+ ----------------------------------------
5535
+ Return whether a token is a theme
5536
+ color token
5537
+ ----------------------------------------
5538
+ */
5539
+ /*
5540
+ ----------------------------------------
5541
+ color-token-family()
5542
+ ----------------------------------------
5543
+ Returns the family of a color token.
5544
+ Returns: color-family
5545
+ color-token-family("accent-warm-vivid")
5546
+ > "accent-warm"
5547
+ color-token-family("red-50v")
5548
+ > "red"
5549
+ color-token-variant(("red", 50, "vivid"))
5550
+ > "red"
5551
+ ----------------------------------------
5552
+ */
5553
+ /*
5554
+ ----------------------------------------
5555
+ decompose()
5556
+ ----------------------------------------
5557
+ Convert a color token into into a list
5558
+ of form [family], [grade], [variant]
5559
+ Vivid variants return "vivid" as the
5560
+ variant.
5561
+ If neither grade nor variant exists,
5562
+ returns 'null'
5563
+ ----------------------------------------
5564
+ */
5565
+ /*
5566
+ ----------------------------------------
5567
+ color-token-family()
5568
+ ----------------------------------------
5569
+ Returns the family of a color token.
5570
+ Returns: color-family
5571
+ color-token-family("accent-warm-vivid")
5572
+ > "accent-warm"
5573
+ color-token-family("red-50v")
5574
+ > "red"
5575
+ color-token-variant(("red", 50, "vivid"))
5576
+ > "red"
5577
+ ----------------------------------------
5578
+ */
5579
+ /*
5580
+ ----------------------------------------
5581
+ color-token-grade()
5582
+ ----------------------------------------
5583
+ Returns the grade of a USWDS color token.
5584
+ Returns: color-grade
5585
+ color-token-grade("accent-warm")
5586
+ > "root"
5587
+ color-token-grade("accent-warm-vivid")
5588
+ > "root"
5589
+ color-token-grade("accent-warm-darker")
5590
+ > "darker"
5591
+ color-token-grade("red-50v")
5592
+ > 50
5593
+ color-token-variant(("red", 50, "vivid"))
5594
+ > 50
5595
+ ----------------------------------------
5596
+ */
5597
+ /*
5598
+ ----------------------------------------
5599
+ color-token-family()
5600
+ ----------------------------------------
5601
+ Returns the family of a color token.
5602
+ Returns: color-family
5603
+ color-token-family("accent-warm-vivid")
5604
+ > "accent-warm"
5605
+ color-token-family("red-50v")
5606
+ > "red"
5607
+ color-token-variant(("red", 50, "vivid"))
5608
+ > "red"
5609
+ ----------------------------------------
5610
+ */
5611
+ /*
5612
+ ----------------------------------------
5613
+ is-color-token()
5614
+ ----------------------------------------
5615
+ Returns whether a given string is a
5616
+ USWDS color token.
5617
+ ----------------------------------------
5618
+ */
5619
+ /*
5620
+ ----------------------------------------
5621
+ pow()
5622
+ ----------------------------------------
5623
+ Raises a unitless number to the power
5624
+ of another unitless number
5625
+ Includes helper functions
5626
+ ----------------------------------------
5627
+ */
5628
+ /*
5629
+ ----------------------------------------
5630
+ Helper functions
5631
+ ----------------------------------------
5632
+ */
5633
+ /* factorial()
5634
+ ----------------------------------------
5635
+ */
5636
+ /* summation()
5637
+ ----------------------------------------
5638
+ */
5639
+ /* exp-maclaurin()
5640
+ ----------------------------------------
5641
+ */
5642
+ /* ln()
5643
+ ----------------------------------------
5644
+ */
5645
+ /*
5646
+ ----------------------------------------
5647
+ color-token-type()
5648
+ ----------------------------------------
5649
+ Returns the type of a color token.
5650
+ Returns: "system" | "theme"
5651
+ ----------------------------------------
5652
+ */
5653
+ /*
5654
+ ----------------------------------------
5655
+ color-token-variant()
5656
+ ----------------------------------------
5657
+ Returns the variant of color token.
5658
+ Returns: "vivid" | false
5659
+ color-token-variant("accent-warm")
5660
+ > false
5661
+ color-token-variant("accent-warm-vivid")
5662
+ > "vivid"
5663
+ color-token-variant("red-50v")
5664
+ > "vivid"
5665
+ color-token-variant(("red", 50, "vivid"))
5666
+ > "vivid"
5667
+ ----------------------------------------
5668
+ */
5669
+ /*
5670
+ ----------------------------------------
5671
+ magic-number()
5672
+ ----------------------------------------
5673
+ Returns the magic number of two color
5674
+ grades. Takes numbers or color tokens.
5675
+ magic-number(50, 10)
5676
+ return: 40
5677
+ magic-number("red-50", "red-10")
5678
+ return: 40
5679
+ ----------------------------------------
5680
+ */
5681
+ /*
5682
+ ----------------------------------------
5683
+ is-accessible-magic-number()
5684
+ ----------------------------------------
5685
+ Returns whether two grades achieve
5686
+ specified target color contrast
5687
+ Returns: true | false
5688
+ is-accessible-magic-number(10, 50, "AA")
5689
+ > false
5690
+ is-accessible-magic-number(10, 60, "AA")
5691
+ > true
5692
+ ----------------------------------------
5693
+ */
5694
+ /*
5695
+ ----------------------------------------
5696
+ wcag-magic-number()
5697
+ ----------------------------------------
5698
+ Returns the magic number of a specific
5699
+ wcag grade:
5700
+ "AA"
5701
+ "AA-Large"
5702
+ "AAA"
5703
+ wcag-magic-number("AA")
5704
+ > 50
5705
+ ----------------------------------------
5706
+ */
5707
+ /*
5708
+ ----------------------------------------
5709
+ get-link-tokens-from-bg()
5710
+ ----------------------------------------
5711
+ Get accessible link colors for a given
5712
+ background color
5713
+ returns: link-token, hover-token
5714
+ get-link-tokens-from-bg(
5715
+ "black",
5716
+ "red-60",
5717
+ "red-10",
5718
+ "AA")
5719
+ > "red-10", "red-5"
5720
+ get-link-tokens-from-bg(
5721
+ "black",
5722
+ "red-60v",
5723
+ "red-10v",
5724
+ "AA-large")
5725
+ > "red-60v", "red-50v"
5726
+ get-link-tokens-from-bg(
5727
+ "black",
5728
+ "red-5v",
5729
+ "red-60v",
5730
+ "AA")
5731
+ > "red-5v", "white"
5732
+ get-link-tokens-from-bg(
5733
+ "black",
5734
+ "white",
5735
+ "red-60v",
5736
+ "AA")
5737
+ > "white", "white"
5738
+ ----------------------------------------
5739
+ */
5740
+ /*
5741
+ ----------------------------------------
5742
+ next-token()
5743
+ ----------------------------------------
5744
+ Returns next "darker" or "lighter" color
5745
+ token of the same token type and variant.
5746
+ Returns: color-token | false
5747
+ next-token("accent-warm", "lighter")
5748
+ > "accent-warm-light"
5749
+ next-token("gray-10", "lighter")
5750
+ > "gray-5"
5751
+ next-token("gray-5", "lighter")
5752
+ > "white"
5753
+ next-token("white", "lighter")
5754
+ > false
5755
+ next-token("red-50v", "darker")
5756
+ > "red-60v"
5757
+ next-token("red-50", "darker")
5758
+ > "red-60"
5759
+ next-token("red-80v", "darker")
5760
+ > "red-90"
5761
+ next-token("red-90", "darker")
5762
+ > "black"
5763
+ next-token("white", "darker")
5764
+ > "gray-5"
5765
+ next-token("black", "lighter")
5766
+ > "gray-90"
5767
+ ----------------------------------------
5768
+ */
5769
+ /*
5770
+ ----------------------------------------
5771
+ color()
5772
+ ----------------------------------------
5773
+ Derive a color from a color shortcode
5774
+ ----------------------------------------
5775
+ */
5776
+ /*
5777
+ ----------------------------------------
5778
+ test-colors()
5779
+ ----------------------------------------
5780
+ Check to see if all system colors
5781
+ fall between the proper relative
5782
+ luminance range for their grade.
5783
+ Has a couple quirks, as the luminance()
5784
+ function returns slightly different
5785
+ results than expected.
5786
+ ----------------------------------------
3205
5787
  */
3206
- .usa-label, .usa-label-big {
3207
- background-color: #565c65;
3208
- border-radius: 2px;
3209
- color: #ffffff;
3210
- font-size: 0.9375rem;
3211
- margin-right: 0.3125rem;
3212
- padding: 0.0625rem 0.4375rem;
3213
- text-transform: uppercase;
3214
- }
3215
- .usa-label:only-of-type, .usa-label-big:only-of-type {
3216
- margin-right: 0;
3217
- }
3218
-
3219
- .usa-label-big {
3220
- font-size: 1rem;
3221
- padding-left: 0.5625rem;
3222
- padding-right: 0.5625rem;
3223
- }
5788
+ /*
5789
+ ----------------------------------------
5790
+ columns()
5791
+ ----------------------------------------
5792
+ outputs a grid-col number based on
5793
+ the number of desired columns in the
5794
+ 12-column grid
3224
5795
 
3225
- /**
3226
- Variables ported over from Formation so that we can keep those stylesheets
3227
- working while we work on deprecation.
3228
- **/
3229
- /**
3230
- /uswds/dist/scss/lib/addons/_margin.scss
3231
- **/
3232
- /**
3233
- uswds/src/stylesheets/lib/helpers/_directional-values.scss
3234
- **/
3235
- /**
3236
- Variables ported over from Formation so that we can keep those stylesheets
3237
- working while we work on deprecation.
3238
- **/
3239
- /**
3240
- Variables ported over from Formation so that we can keep those stylesheets
3241
- working while we work on deprecation.
3242
- **/
3243
- /**
3244
- Variables ported over from Formation so that we can keep those stylesheets
3245
- working while we work on deprecation.
3246
- **/
5796
+ Ex: columns(2) --> 6
5797
+ grid-col(columns(2))
5798
+ ----------------------------------------
5799
+ */
3247
5800
  /*
3248
- Original: @import "~uswds/src/stylesheets/core/utilities";
3249
- ***THIS IS USWDS v1***
5801
+ ----------------------------------------
5802
+ get-standard-values()
5803
+ ----------------------------------------
5804
+ Gets a map of USWDS standard values
5805
+ for a property
5806
+ ----------------------------------------
3250
5807
  */
3251
5808
  /*
3252
- Original: @import "~uswds/src/stylesheets/core/utilities";
3253
- ***THIS IS USWDS v1***
5809
+ ----------------------------------------
5810
+ ns()
5811
+ ----------------------------------------
5812
+ Add a namesspace of $type if that
5813
+ namespace is set to output
5814
+ ----------------------------------------
3254
5815
  */
3255
- .usa-sr-only {
3256
- position: absolute;
3257
- left: -999em;
3258
- }
3259
-
3260
5816
  /*
3261
- Original: @import "~uswds/src/stylesheets/elements/labels";
3262
- ***THIS IS USWDS v1***
5817
+ ----------------------------------------
5818
+ border-radius()
5819
+ ----------------------------------------
5820
+ Get a border-radius from the system
5821
+ border-radii
5822
+ ----------------------------------------
3263
5823
  */
3264
- ul,
3265
- ol {
3266
- margin-top: 1em;
5824
+ /*
5825
+ ----------------------------------------
5826
+ font-weight()
5827
+ fw()
5828
+ ----------------------------------------
5829
+ Get a font-weight value from the
5830
+ system font-weight
5831
+ ----------------------------------------
5832
+ */
5833
+ /*
5834
+ ----------------------------------------
5835
+ feature()
5836
+ ----------------------------------------
5837
+ Gets a valid USWDS font feature setting
5838
+ ----------------------------------------
5839
+ */
5840
+ /*
5841
+ ----------------------------------------
5842
+ flex()
5843
+ ----------------------------------------
5844
+ Gets a valid USWDS flex value
5845
+ ----------------------------------------
5846
+ */
5847
+ /*
5848
+ ----------------------------------------
5849
+ font-family()
5850
+ family()
5851
+ ----------------------------------------
5852
+ Get a font-family stack from a
5853
+ role-based or type-based font family
5854
+ ----------------------------------------
5855
+ */
5856
+ /*
5857
+ ----------------------------------------
5858
+ letter-spacing()
5859
+ ls()
5860
+ ----------------------------------------
5861
+ Get a letter-spacing value from the
5862
+ system letter-spacing
5863
+ ----------------------------------------
5864
+ */
5865
+ /*
5866
+ ----------------------------------------
5867
+ measure()
5868
+ ----------------------------------------
5869
+ Gets a valid USWDS reading line length
5870
+ ----------------------------------------
5871
+ */
5872
+ /*
5873
+ ----------------------------------------
5874
+ opacity()
5875
+ ----------------------------------------
5876
+ Get an opacity from the system
5877
+ opacities
5878
+ ----------------------------------------
5879
+ */
5880
+ /*
5881
+ ----------------------------------------
5882
+ order()
5883
+ ----------------------------------------
5884
+ Get an order value from the
5885
+ system orders
5886
+ ----------------------------------------
5887
+ */
5888
+ /*
5889
+ ----------------------------------------
5890
+ radius()
5891
+ ----------------------------------------
5892
+ Get a border-radius value from the
5893
+ system letter-spacing
5894
+ ----------------------------------------
5895
+ */
5896
+ /*
5897
+ ----------------------------------------
5898
+ font-size()
5899
+ ----------------------------------------
5900
+ Get type scale value from a [family] and
5901
+ [scale]
5902
+ ----------------------------------------
5903
+ */
5904
+ /*
5905
+ ----------------------------------------
5906
+ z-index()
5907
+ z()
5908
+ ----------------------------------------
5909
+ Get a z-index value from the
5910
+ system z-index
5911
+ ----------------------------------------
5912
+ */
5913
+ /*
5914
+ ----------------------------------------
5915
+ utility-font()
5916
+ ----------------------------------------
5917
+ Get a normalized font-size in rem from
5918
+ a family and a type size in either
5919
+ system scale or project scale
5920
+ ----------------------------------------
5921
+ Not the public-facing function.
5922
+ Used for building the utilities and
5923
+ withholds certain errors.
5924
+ ----------------------------------------
5925
+ */
5926
+ /*
5927
+ ----------------------------------------
5928
+ family()
5929
+ ----------------------------------------
5930
+ Get a font-family stack
5931
+ ----------------------------------------
5932
+ */
5933
+ /*
5934
+ ----------------------------------------
5935
+ size()
5936
+ ----------------------------------------
5937
+ Get a normalized font-size in rem from
5938
+ a family and a type size in either
5939
+ system scale or project scale
5940
+ ----------------------------------------
5941
+ */
5942
+ /*
5943
+ ----------------------------------------
5944
+ font()
5945
+ ----------------------------------------
5946
+ Get a font-family stack
5947
+ AND
5948
+ Get a normalized font-size in rem from
5949
+ a family and a type size in either
5950
+ system scale or project scale
5951
+ ----------------------------------------
5952
+ */
5953
+ ul, ol {
3267
5954
  margin-bottom: 1em;
3268
- padding-left: 1.94em;
3269
- }
3270
-
3271
- li {
5955
+ margin-top: 1em;
3272
5956
  line-height: 1.5;
3273
- margin-bottom: 0.5em;
5957
+ padding-left: 3ch;
5958
+ }
5959
+ ul:last-child, ol:last-child {
5960
+ margin-bottom: 0;
5961
+ }
5962
+ ul ul,
5963
+ ul ol, ol ul,
5964
+ ol ol {
5965
+ margin-top: 0.25em;
5966
+ }
5967
+ ul li, ol li {
5968
+ margin-bottom: 0.25em;
5969
+ max-width: 68ex;
3274
5970
  }
3275
- li:last-child {
5971
+ ul li:last-child, ol li:last-child {
3276
5972
  margin-bottom: 0;
3277
5973
  }
3278
5974
 
3279
5975
  .usa-unstyled-list {
3280
- margin-top: 0;
3281
5976
  margin-bottom: 0;
5977
+ margin-top: 0;
3282
5978
  list-style-type: none;
3283
5979
  padding-left: 0;
3284
5980
  }
3285
5981
  .usa-unstyled-list > li {
3286
5982
  margin-bottom: 0;
5983
+ max-width: unset;
3287
5984
  }
3288
5985
 
3289
5986
  /**
@@ -3454,14 +6151,14 @@ h6 {
3454
6151
  font-size: 0.8125rem;
3455
6152
  font-weight: 400;
3456
6153
  line-height: 1.5;
3457
- text-transform: uppercase;
6154
+ text-transform: none;
3458
6155
  font-family: Bitter, Georgia, Cambria, "Times New Roman", Times, serif;
3459
6156
  }
3460
6157
  h6 a {
3461
6158
  font-size: 0.8125rem;
3462
6159
  font-weight: 400;
3463
6160
  line-height: 1.5;
3464
- text-transform: uppercase;
6161
+ text-transform: none;
3465
6162
  font-family: Bitter, Georgia, Cambria, "Times New Roman", Times, serif;
3466
6163
  }
3467
6164
 
@@ -3615,8 +6312,8 @@ dfn {
3615
6312
  */
3616
6313
  .usa-accordion,
3617
6314
  .usa-accordion-bordered {
3618
- margin-top: 0;
3619
6315
  margin-bottom: 0;
6316
+ margin-top: 0;
3620
6317
  list-style-type: none;
3621
6318
  padding-left: 0;
3622
6319
  color: #212121;
@@ -3627,6 +6324,7 @@ dfn {
3627
6324
  .usa-accordion > li,
3628
6325
  .usa-accordion-bordered > li {
3629
6326
  margin-bottom: 0;
6327
+ max-width: unset;
3630
6328
  }
3631
6329
  .usa-accordion > ul li ul,
3632
6330
  .usa-accordion-bordered > ul li ul {
@@ -3648,8 +6346,8 @@ dfn {
3648
6346
  }
3649
6347
  .usa-accordion > ul,
3650
6348
  .usa-accordion-bordered > ul {
3651
- margin-top: 0;
3652
6349
  margin-bottom: 0;
6350
+ margin-top: 0;
3653
6351
  list-style-type: none;
3654
6352
  padding-left: 0;
3655
6353
  color: #212121;
@@ -3660,6 +6358,7 @@ dfn {
3660
6358
  .usa-accordion > ul > li,
3661
6359
  .usa-accordion-bordered > ul > li {
3662
6360
  margin-bottom: 0;
6361
+ max-width: unset;
3663
6362
  }
3664
6363
  .usa-accordion > ul > li,
3665
6364
  .usa-accordion-bordered > ul > li {
@@ -4405,8 +7104,8 @@ fieldset {
4405
7104
  ***THIS IS USWDS v1***
4406
7105
  */
4407
7106
  .usa-sidenav-list {
4408
- margin-top: 0;
4409
7107
  margin-bottom: 0;
7108
+ margin-top: 0;
4410
7109
  list-style-type: none;
4411
7110
  padding-left: 0;
4412
7111
  border-bottom: 1px solid;
@@ -4414,6 +7113,7 @@ fieldset {
4414
7113
  }
4415
7114
  .usa-sidenav-list > li {
4416
7115
  margin-bottom: 0;
7116
+ max-width: unset;
4417
7117
  }
4418
7118
  .usa-sidenav-list > li {
4419
7119
  background-color: transparent;
@@ -4466,8 +7166,8 @@ fieldset {
4466
7166
  }
4467
7167
 
4468
7168
  .usa-sidenav-sub_list {
4469
- margin-top: 0;
4470
7169
  margin-bottom: 0;
7170
+ margin-top: 0;
4471
7171
  list-style-type: none;
4472
7172
  padding-left: 0;
4473
7173
  margin: 0;
@@ -4475,6 +7175,7 @@ fieldset {
4475
7175
  }
4476
7176
  .usa-sidenav-sub_list > li {
4477
7177
  margin-bottom: 0;
7178
+ max-width: unset;
4478
7179
  }
4479
7180
  .usa-sidenav-sub_list li {
4480
7181
  border: none;
@@ -4612,23 +7313,6 @@ a:visited, a:visited abbr {
4612
7313
  color: #54278f;
4613
7314
  }
4614
7315
 
4615
- ul {
4616
- padding: 0 0 0 1.5em;
4617
- list-style: square;
4618
- }
4619
-
4620
- ol {
4621
- margin: 0 0 0 1.25em;
4622
- list-style-position: outside;
4623
- }
4624
-
4625
- ul > ul,
4626
- ul ol,
4627
- ol > ul,
4628
- ol ol {
4629
- margin: 0.5em 0 0.5em 1.2em;
4630
- }
4631
-
4632
7316
  dd {
4633
7317
  margin-left: 0;
4634
7318
  }