summaryrefslogtreecommitdiffstats
path: root/src/objects/_icon-nav.scss
diff options
context:
space:
mode:
Diffstat (limited to 'src/objects/_icon-nav.scss')
-rw-r--r--src/objects/_icon-nav.scss68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/objects/_icon-nav.scss b/src/objects/_icon-nav.scss
new file mode 100644
index 0000000..25f4a57
--- /dev/null
+++ b/src/objects/_icon-nav.scss
@@ -0,0 +1,68 @@
1@use 'iro-sass/src/index' as iro;
2@use '../functions' as fn;
3
4@include iro.props-namespace('icon-nav') {
5 @include iro.props-store((
6 --dims: (
7 --spacing: fn.global-dim(--size --100),
8 --item: (
9 --pad: fn.global-dim(--size --125),
10 )
11 )
12 ), 'dims');
13
14 @include iro.props-store((
15 --colors: (
16 --item: (
17 --hover: (
18 --bg: fn.global-color(--obj-hi),
19 --label: fn.global-color(--fg-lo),
20 ),
21 --disabled: (
22 --label: fn.global-color(--fg-hi3),
23 ),
24 --key-focus: (
25 --border: fn.global-color(--focus --fill),
26 --shadow: fn.global-color(--focus --shadow),
27 ),
28 ),
29 ),
30 ), 'colors');
31
32 @include iro.bem-object(iro.props-namespace()) {
33 display: flex;
34 align-items: center;
35 gap: fn.dim(--spacing);
36
37 @include iro.bem-elem('item') {
38 padding: fn.dim(--item --pad);
39 border: 2px solid transparent;
40 border-radius: 10em;
41 color: fn.color(--item --disabled --label);
42
43 &:link,
44 &:visited,
45 &:enabled {
46 color: currentColor;
47
48 @include iro.bem-multi('&:hover, &:active', 'is' 'selected') {
49 background-color: fn.color(--item --hover --bg);
50 color: fn.color(--item --hover --label);
51 }
52
53 @include iro.bem-at-theme('keyboard') {
54 &:focus {
55 border-color: fn.color(--item --key-focus --border);
56 background-color: fn.color(--item --hover --bg);
57 box-shadow: fn.color(--item --key-focus --shadow);
58 color: fn.color(--item --hover --label);
59 }
60 }
61 }
62 }
63
64 @include iro.bem-modifier('vertical') {
65 flex-direction: column;
66 }
67 }
68}