diff options
Diffstat (limited to 'src/_props.scss')
-rw-r--r-- | src/_props.scss | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/src/_props.scss b/src/_props.scss new file mode 100644 index 0000000..ffba054 --- /dev/null +++ b/src/_props.scss | |||
@@ -0,0 +1,41 @@ | |||
1 | @use 'sass:list'; | ||
2 | @use 'sass:map'; | ||
3 | @use 'sass:meta'; | ||
4 | @use 'sass:string'; | ||
5 | @use 'config'; | ||
6 | @use 'include-media/dist/include-media' as media; | ||
7 | @use 'iro-sass/src/bem'; | ||
8 | @use 'iro-sass/src/props'; | ||
9 | |||
10 | @mixin materialize-at-root($ref) { | ||
11 | @if meta.type-of($ref) == 'map' { | ||
12 | $ref: map.values($ref); | ||
13 | } | ||
14 | |||
15 | :root { | ||
16 | @include props.materialize($ref, null); | ||
17 | @include props.materialize($ref, 'color'); | ||
18 | |||
19 | @each $breakpoint in map.keys(media.$breakpoints) { | ||
20 | @include media.media('<=#{$breakpoint}') { | ||
21 | @include props.materialize($ref, $breakpoint); | ||
22 | } | ||
23 | } | ||
24 | |||
25 | @media (prefers-color-scheme: dark) { | ||
26 | @include props.materialize($ref, 'dark'); | ||
27 | } | ||
28 | } | ||
29 | |||
30 | @each $theme-name in map.keys(config.$themes) { | ||
31 | @if $theme-name != config.$theme-default { | ||
32 | @include bem.theme(string.slice($theme-name, 3)) { | ||
33 | @include props.materialize($ref, 'color'); | ||
34 | |||
35 | @media (prefers-color-scheme: dark) { | ||
36 | @include props.materialize($ref, 'dark'); | ||
37 | } | ||
38 | } | ||
39 | } | ||
40 | } | ||
41 | } | ||