summaryrefslogtreecommitdiffstats
path: root/src/scopes/_links.vars.scss
blob: c06789bf4fa1d29bd1d4f814aefc2ce3119739d0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
@use "sass:map";
@use "sass:string";
@use "pkg:iro-sass/props";
@use "../core.vars" as core;

$rounding: props.def(--s-links--rounding, props.get(core.$rounding)) !default;
$rounding-sm: props.def(--s-links--rounding-sm, props.get(core.$rounding--sm)) !default;
$underline-width: props.def(
	--s-links--underline-width,
	props.get(core.$border-width--thin)
) !default;
$hover--underline-width: props.def(
	--s-links--hover--underline-width,
	props.get(core.$border-width--medium)
) !default;

$key-focus--border-width: props.def(
	--s-links--key-focus--border-width,
	props.get(core.$key-focus--border-width)
) !default;
$key-focus--border-offset: props.def(
	--s-links--key-focus--border-offset,
	props.get(core.$key-focus--border-offset)
) !default;
$key-focus--outline-width: props.def(
	--s-links--key-focus--outline-width,
	props.get(core.$key-focus--outline-width)
) !default;

$underline-color: props.def(
	--s-links--underline-color,
	props.get(core.$theme, --text-mute-more),
	"color"
) !default;

$colored--text-color: props.def(
	--s-links--colored--text-color,
	props.get(core.$theme, --accent, --1100),
	"color"
) !default;
$colored--underline-color: props.def(
	--s-links--colored--underline-color,
	props.get(core.$theme, --accent, --600),
	"color"
) !default;
$colored--hover--text-color: props.def(
	--s-links--colored--hover--text-color,
	props.get(core.$theme, --accent, --1300),
	"color"
) !default;

$colored--visited--text-color: props.def(
	--s-links--colored--visited--text-color,
	props.get(core.$theme, --purple, --1100),
	"color"
) !default;
$colored--visited--underline-color: props.def(
	--s-links--colored--visited--underline-color,
	props.get(core.$theme, --purple, --600),
	"color"
) !default;
$colored--visited--hover--text-color: props.def(
	--s-links--colored--visited--hover--text-color,
	props.get(core.$theme, --purple, --1300),
	"color"
) !default;

$key-focus--text-color: props.def(
	--s-links--key-focus--text-color,
	props.get(core.$theme, --focus, --text),
	"color"
) !default;
$key-focus--border-color: props.def(
	--s-links--key-focus--border-color,
	props.get(core.$theme, --focus, --border),
	"color"
) !default;
$key-focus--outline-color: props.def(
	--s-links--key-focus--outline-color,
	props.get(core.$theme, --focus, --outline),
	"color"
) !default;

$static-themes: props.def(--s-links, (), "color");
@each $theme in map.keys(props.get(core.$transparent-colors)) {
	$link-theme: --static-#{string.slice($theme, 3)};

	$static-themes: props.merge(
		$static-themes,
		(
			$link-theme: (
					--text-color: currentColor,
					--underline-color: props.get(core.$transparent-colors, $theme, --500),
					--hover: (
							--text-color: props.get(core.$transparent-colors, $theme, --900),
						),

					--key-focus: (
							--text-color: props.get(core.$transparent-colors, $theme, --900),
							--border-color: props.get(core.$transparent-colors, $theme, --900),
							--outline-color: props.get(core.$transparent-colors, $theme, --300),
						),
				),
		)
	);
}