summaryrefslogtreecommitdiffstats
path: root/src/_core.scss
diff options
context:
space:
mode:
Diffstat (limited to 'src/_core.scss')
-rw-r--r--src/_core.scss38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/_core.scss b/src/_core.scss
new file mode 100644
index 0000000..7b7a384
--- /dev/null
+++ b/src/_core.scss
@@ -0,0 +1,38 @@
1@use 'sass:map';
2@use 'sass:meta';
3@use 'sass:string';
4@use 'iro-sass/src/bem';
5@use 'iro-sass/src/props';
6@use 'config';
7
8@use 'core.vars' as vars;
9@forward 'core.vars';
10
11@mixin styles {
12 @each $theme-name, $theme in vars.$themes {
13 @if $theme-name == config.$theme-default {
14 :root {
15 @include props.materialize(map.values(meta.module-variables('vars')));
16
17 @if map.has-key($theme, 'dark') {
18 @media (prefers-color-scheme: dark) {
19 @include props.materialize(map.get($theme, 'dark'));
20 }
21 }
22 }
23 } @else {
24 @include bem.theme(string.slice($theme-name, 3)) {
25 @include props.materialize(map.get($theme, 'light'));
26
27 color: props.get(vars.$theme, --text);
28 background-color: props.get(vars.$theme, --bg-base);
29
30 @if map.has-key($theme, 'dark') {
31 @media (prefers-color-scheme: dark) {
32 @include props.materialize(map.get($theme, 'dark'));
33 }
34 }
35 }
36 }
37 }
38}