vgapp 1.4.3 → 1.4.5

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.
Files changed (71) hide show
  1. package/README.md +251 -162
  2. package/app/modules/vgalert/scss/_variables.scss +6 -4
  3. package/app/modules/vgalert/scss/vgalert.scss +7 -8
  4. package/app/modules/vgcollapse/scss/_variables.scss +7 -5
  5. package/app/modules/vgcollapse/scss/vgcollapse.scss +5 -6
  6. package/app/modules/vgdropdown/scss/_variables.scss +14 -12
  7. package/app/modules/vgdropdown/scss/vgdropdown.scss +5 -6
  8. package/app/modules/vgdynamictable/scss/_actions.scss +19 -16
  9. package/app/modules/vgdynamictable/scss/_pagination.scss +5 -2
  10. package/app/modules/vgdynamictable/scss/_skeleton.scss +5 -2
  11. package/app/modules/vgdynamictable/scss/_sortable.scss +4 -1
  12. package/app/modules/vgdynamictable/scss/_table.scss +4 -1
  13. package/app/modules/vgdynamictable/scss/_variables.scss +46 -38
  14. package/app/modules/vgdynamictable/scss/vgdynamictable.scss +14 -10
  15. package/app/modules/vgfilepreview/scss/_variables.scss +20 -18
  16. package/app/modules/vgfilepreview/scss/vgfilepreview.scss +4 -5
  17. package/app/modules/vgfiles/scss/_mixins.scss +9 -9
  18. package/app/modules/vgfiles/scss/_variables.scss +28 -26
  19. package/app/modules/vgfiles/scss/vgfiles.scss +13 -14
  20. package/app/modules/vgformsender/js/hideshowpass.js +6 -1
  21. package/app/modules/vgformsender/js/vgformsender.js +7 -9
  22. package/app/modules/vgformsender/readme.md +1 -1
  23. package/app/modules/vgformsender/scss/_variables.scss +5 -3
  24. package/app/modules/vgformsender/scss/vgformsender.scss +10 -11
  25. package/app/modules/vglawcookie/js/vglawcookie.js +19 -16
  26. package/app/modules/vglawcookie/scss/_variables.scss +13 -11
  27. package/app/modules/vglawcookie/scss/vglawcookie.scss +5 -6
  28. package/app/modules/vgmodal/scss/_variables.scss +17 -15
  29. package/app/modules/vgmodal/scss/vgmodal.scss +10 -11
  30. package/app/modules/vgnav/scss/_breakpoints.scss +36 -20
  31. package/app/modules/vgnav/scss/_hamburger.scss +5 -2
  32. package/app/modules/vgnav/scss/_placement.scss +5 -2
  33. package/app/modules/vgnav/scss/_toggle.scss +5 -2
  34. package/app/modules/vgnav/scss/_variables.scss +26 -23
  35. package/app/modules/vgnav/scss/vgnav.scss +20 -16
  36. package/app/modules/vgnestable/scss/_variables.scss +29 -27
  37. package/app/modules/vgnestable/scss/vgnestable.scss +4 -5
  38. package/app/modules/vgrangeslider/scss/_variables.scss +23 -21
  39. package/app/modules/vgrangeslider/scss/vgrangeslider.scss +4 -5
  40. package/app/modules/vgrollup/scss/_variables.scss +15 -8
  41. package/app/modules/vgrollup/scss/vgrollup.scss +6 -7
  42. package/app/modules/vgselect/scss/_variables.scss +50 -48
  43. package/app/modules/vgselect/scss/vgselect.scss +26 -27
  44. package/app/modules/vgsidebar/scss/_variables.scss +10 -8
  45. package/app/modules/vgsidebar/scss/vgsidebar.scss +5 -6
  46. package/app/modules/vgtabs/scss/_variables.scss +23 -20
  47. package/app/modules/vgtabs/scss/vgtabs.scss +5 -6
  48. package/app/modules/vgtoast/scss/_variables.scss +13 -11
  49. package/app/modules/vgtoast/scss/vgtoast.scss +5 -6
  50. package/app/modules/vgtooltip/scss/_variables.scss +10 -8
  51. package/app/modules/vgtooltip/scss/vgtooltip.scss +5 -6
  52. package/app/utils/scss/_backdrop.scss +19 -0
  53. package/app/utils/scss/_closable.scss +22 -0
  54. package/app/utils/scss/_collapsable.scss +13 -0
  55. package/app/utils/scss/_loaders.scss +22 -0
  56. package/app/utils/scss/_theme-default.scss +12 -0
  57. package/app/utils/scss/_theme.scss +7 -0
  58. package/app/utils/scss/_tokens.scss +170 -0
  59. package/app/utils/scss/default.scss +11 -78
  60. package/app/utils/scss/functions.scss +21 -39
  61. package/app/utils/scss/index.scss +4 -0
  62. package/app/utils/scss/mixin.scss +16 -13
  63. package/app/utils/scss/variables.scss +105 -77
  64. package/build/vgapp.css +2 -4492
  65. package/build/vgapp.css.map +1 -1
  66. package/build/vgapp.js +3 -32145
  67. package/build/vgapp.js.map +1 -1
  68. package/index.scss +20 -23
  69. package/package.json +4 -1
  70. /package/app/utils/scss/{animation.scss → _animation.scss} +0 -0
  71. /package/app/utils/scss/{placement.scss → _placement.scss} +0 -0
@@ -1,20 +1,22 @@
1
- $toast-map: (
1
+ @use "../../../utils/scss" as vg;
2
+
3
+ $toast-map: (
2
4
  indent: 1rem,
3
5
  height: auto,
4
6
  width: auto,
5
- z-index: $toast-index,
7
+ z-index: vg.$toast-index,
6
8
  transition: all .3s ease-in-out,
7
9
  padding: 8px 22px,
8
10
  font-size: 1.125rem,
9
- background-color: $bg-color,
10
- color: $color,
11
- border-width: $border-width,
12
- border-color: transparent,
13
- border-style: $border-style,
14
- border-radius: 20px,
15
- box-shadow: $box-shadow,
11
+ background-color: var(--vg-surface-bg, #{vg.$surface-bg}),
12
+ color: var(--vg-text-color, #{vg.$color}),
13
+ border-width: vg.$border-width,
14
+ border-color: transparent,
15
+ border-style: vg.$border-style,
16
+ border-radius: 20px,
17
+ box-shadow: var(--vg-box-shadow, #{vg.$box-shadow}),
16
18
  header-font-weight: 500,
17
19
  header-font-size: .975rem,
18
20
  body-font-size: 1rem,
19
- body-font-weight: 400,
20
- );
21
+ body-font-weight: 400,
22
+ ) !default;
@@ -6,14 +6,13 @@
6
6
  *--------------------------------------------------------------------------
7
7
  **/
8
8
 
9
- @import "../../../utils/scss/functions";
10
- @import "../../../utils/scss/mixin";
11
- @import "../../../utils/scss/variables";
12
- @import "variables";
9
+ @forward "variables";
10
+ @use "../../../utils/scss" as vg;
11
+ @use "variables" as vars;
13
12
 
14
13
  .vg-toast {
15
- @include mix-vars('toast', $toast-map);
16
- @include mix-alert-color-mode($class: vg-toast);
14
+ @include vg.mix-vars('toast', vars.$toast-map);
15
+ @include vg.mix-alert-color-mode($class: vg-toast);
17
16
  position: fixed;
18
17
  width: var(--vg-toast-width);
19
18
  height: var(--vg-toast-height);
@@ -1,15 +1,17 @@
1
- $tooltip-map: (
2
- zindex: 1080,
1
+ @use "../../../utils/scss" as vg;
2
+
3
+ $tooltip-map: (
4
+ zindex: 1080,
3
5
  max-width: 260px,
4
6
  padding: 8px 12px,
5
7
  font-size: 13px,
6
8
  line-height: 1.4,
7
- color: #fff,
8
- background: rgba(30, 30, 30, .95),
9
- border-radius: 6px,
10
- box-shadow: 0 6px 20px rgba(0, 0, 0, .18),
9
+ color: var(--vg-text-inverse-color, #ffffff),
10
+ background: var(--vg-surface-inverse-bg, rgba(30, 30, 30, .95)),
11
+ border-radius: 6px,
12
+ box-shadow: 0 6px 20px var(--vg-shadow-soft-color, rgba(0, 0, 0, .18)),
11
13
  word-break: break-word,
12
14
  arrow-width: 8px,
13
15
  arrow-height: 8px,
14
- border-color: $border-color,
15
- );
16
+ border-color: var(--vg-border-color, #{vg.$border-color}),
17
+ ) !default;
@@ -6,13 +6,12 @@
6
6
  *--------------------------------------------------------------------------
7
7
  **/
8
8
 
9
- @import "../../../utils/scss/functions";
10
- @import "../../../utils/scss/mixin";
11
- @import "../../../utils/scss/variables";
12
- @import "variables";
9
+ @forward "variables";
10
+ @use "../../../utils/scss" as vg;
11
+ @use "variables" as vars;
13
12
 
14
13
  .vg-tooltip {
15
- @include mix-vars('tooltip', $tooltip-map );
14
+ @include vg.mix-vars('tooltip', vars.$tooltip-map);
16
15
  position: absolute;
17
16
  z-index: var(--vg-tooltip-zindex);
18
17
  pointer-events: none;
@@ -61,4 +60,4 @@
61
60
  }
62
61
  }
63
62
  }
64
- }
63
+ }
@@ -0,0 +1,19 @@
1
+ @use "mixin" as mix;
2
+ @use "variables" as vars;
3
+
4
+ .vg-backdrop {
5
+ @include mix.mix-vars('backdrop', vars.$backdrop-map);
6
+ position: fixed;
7
+ top: 0;
8
+ left: 0;
9
+ width: 100vw;
10
+ height: 100vh;
11
+ background: var(--vg-backdrop-bg);
12
+ transition: var(--vg-backdrop-transition);
13
+ opacity: 0;
14
+ z-index: var(--vg-backdrop-z-index);
15
+
16
+ &.fade.show {
17
+ opacity: var(--vg-backdrop-opacity);
18
+ }
19
+ }
@@ -0,0 +1,22 @@
1
+ @use "variables" as vars;
2
+
3
+ .vg-btn-close {
4
+ position: absolute;
5
+ width: 30px;
6
+ height: 30px;
7
+ right: 15px;
8
+ top: 15px;
9
+ border: none;
10
+ background: transparent;
11
+ border-radius: 50%;
12
+ padding: 0;
13
+ display: flex;
14
+ align-items: center;
15
+ justify-content: center;
16
+
17
+ svg {
18
+ width: 20px;
19
+ height: 20px;
20
+ fill: var(--vg-text-color, #{vars.$color});
21
+ }
22
+ }
@@ -0,0 +1,13 @@
1
+ @use "variables" as vars;
2
+
3
+ .vg-collapse {
4
+ &:not(.show) {
5
+ display: none;
6
+ }
7
+ }
8
+
9
+ .vg-collapsing {
10
+ height: 0;
11
+ overflow: hidden;
12
+ transition: vars.$transition-base;
13
+ }
@@ -0,0 +1,22 @@
1
+ @use "mixin" as mix;
2
+ @use "variables" as vars;
3
+
4
+ .vg-loader, .vg.loader:after {
5
+ border-radius: 50%;
6
+ width: 7em;
7
+ height: 7em;
8
+ }
9
+
10
+ .vg-loader {
11
+ @include mix.mix-vars('loader', vars.$loader-map);
12
+ margin: var(--vg-loader-margin);
13
+ font-size: var(--vg-loader-font-size);
14
+ position: relative;
15
+ text-indent: -9999em;
16
+ border-top: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-border-color);
17
+ border-right: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-border-color);
18
+ border-bottom: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-border-color);
19
+ border-left: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-color);
20
+ transform: var(--vg-loader-transform);
21
+ animation: var(--vg-loader-animation);
22
+ }
@@ -0,0 +1,12 @@
1
+ @use "theme";
2
+
3
+ // Default adapter for the ready-made VGApp stylesheet. Projects that own
4
+ // their theme selector can use vgapp/theme and emit the same variables there.
5
+ :root,
6
+ [data-vg-theme="light"] {
7
+ @include theme.theme-variables(theme.$theme-light);
8
+ }
9
+
10
+ [data-vg-theme="dark"] {
11
+ @include theme.theme-variables(theme.$theme-dark);
12
+ }
@@ -0,0 +1,7 @@
1
+ @forward "tokens";
2
+
3
+ @mixin theme-variables($theme) {
4
+ @each $token, $value in $theme {
5
+ --vg-#{$token}: #{$value};
6
+ }
7
+ }
@@ -0,0 +1,170 @@
1
+ @use "sass:map";
2
+
3
+ // Semantic color tokens. Components should consume the generated --vg-* custom
4
+ // properties instead of binding themselves to a concrete palette.
5
+ $theme-light: (
6
+ body-bg: #ffffff,
7
+ body-bg-rgb: 255 255 255,
8
+ surface-bg: #ffffff,
9
+ surface-bg-rgb: 255 255 255,
10
+ surface-transparent: rgba(255, 255, 255, 0),
11
+ surface-raised-bg: #ffffff,
12
+ surface-muted-bg: #f5f5f5,
13
+ surface-hover-bg: #f7f7f7,
14
+ surface-active-bg: #c7dcf6,
15
+ surface-inverse-bg: rgba(30, 30, 30, .95),
16
+ surface-subtle-bg: rgba(0, 0, 0, .025),
17
+ surface-subtle-hover-bg: rgba(0, 0, 0, .07),
18
+ text-color: #000000,
19
+ text-emphasis-color: #3c3c3c,
20
+ text-muted-color: #6b7280,
21
+ text-disabled-color: rgba(0, 0, 0, .5),
22
+ text-placeholder-color: rgba(0, 0, 0, .32),
23
+ text-inverse-color: #ffffff,
24
+ border-color: rgba(0, 0, 0, .2),
25
+ border-strong-color: rgba(0, 0, 0, .32),
26
+ border-disabled-color: rgba(0, 0, 0, .1),
27
+ primary-color: #0065ff,
28
+ primary-hover-color: #0057db,
29
+ primary-active-color: #0047b3,
30
+ primary-contrast-color: #ffffff,
31
+ primary-subtle-bg: rgba(0, 101, 255, .06),
32
+ primary-muted-bg: rgba(0, 101, 255, .1),
33
+ primary-outline-color: rgba(0, 101, 255, .55),
34
+ primary-strong-border-color: rgba(0, 101, 255, .72),
35
+ secondary-color: #6b7280,
36
+ secondary-rgb: 107 114 128,
37
+ secondary-bg: #f5f5f5,
38
+ secondary-bg-rgb: 245 245 245,
39
+ shadow-color: rgba(0, 0, 0, .2),
40
+ shadow-soft-color: rgba(0, 0, 0, .18),
41
+ box-shadow: 0 8px 14px 5px rgba(0, 0, 0, .2),
42
+ backdrop-color: #000000,
43
+ backdrop-subtle-color: rgba(0, 0, 0, .25),
44
+ control-bg: #ffffff,
45
+ control-muted-bg: #f1f4f8,
46
+ control-border-color: #dddddd,
47
+ control-strong-color: #111827,
48
+ control-mark-color: #cbd5e1,
49
+ media-bg: #111111,
50
+ media-text-color: #ffffff,
51
+ media-border-color: rgba(255, 255, 255, .12),
52
+ media-subtle-bg: rgba(255, 255, 255, .06),
53
+ media-muted-bg: rgba(255, 255, 255, .08),
54
+ media-active-bg: rgba(255, 255, 255, .16),
55
+ media-link-color: #93c5fd,
56
+ success-color: #4fd90b,
57
+ success-text-color: #40be02,
58
+ success-border-color: #baf98a,
59
+ success-bg: #f6ffed,
60
+ success-close-color: rgb(12.8, 38, .4),
61
+ success-contrast-color: #ffffff,
62
+ warning-color: #ffc107,
63
+ warning-text-color: #ffc107,
64
+ warning-border-color: #ffde79,
65
+ warning-bg: #fff6da,
66
+ warning-close-color: rgb(51, 38.6, 1.4),
67
+ warning-contrast-color: #111827,
68
+ danger-color: #ff2a2c,
69
+ danger-text-color: #df0306,
70
+ danger-border-color: #ffccc7,
71
+ danger-bg: #fff2f0,
72
+ danger-close-color: rgb(44.6, .6, 1.2),
73
+ danger-contrast-color: #ffffff,
74
+ danger-subtle-bg: rgba(255, 42, 44, .06),
75
+ danger-outline-color: rgba(255, 42, 44, .5),
76
+ info-color: #1f8bff,
77
+ info-text-color: #0471e5,
78
+ info-border-color: #f0faff,
79
+ info-bg: #adddff,
80
+ info-close-color: rgb(.8, 22.6, 45.8),
81
+ info-contrast-color: #ffffff,
82
+ ) !default;
83
+
84
+ $theme-dark: (
85
+ body-bg: #121212,
86
+ body-bg-rgb: 18 18 18,
87
+ surface-bg: #1f1f1f,
88
+ surface-bg-rgb: 31 31 31,
89
+ surface-transparent: rgba(31, 31, 31, 0),
90
+ surface-raised-bg: #292929,
91
+ surface-muted-bg: #272727,
92
+ surface-hover-bg: #333333,
93
+ surface-active-bg: #173f73,
94
+ surface-inverse-bg: rgba(245, 245, 245, .95),
95
+ surface-subtle-bg: rgba(255, 255, 255, .04),
96
+ surface-subtle-hover-bg: rgba(255, 255, 255, .1),
97
+ text-color: #f5f5f5,
98
+ text-emphasis-color: #ffffff,
99
+ text-muted-color: #a7a7a7,
100
+ text-disabled-color: rgba(255, 255, 255, .5),
101
+ text-placeholder-color: rgba(255, 255, 255, .45),
102
+ text-inverse-color: #111827,
103
+ border-color: rgba(255, 255, 255, .2),
104
+ border-strong-color: rgba(255, 255, 255, .32),
105
+ border-disabled-color: rgba(255, 255, 255, .12),
106
+ primary-color: #6ea8fe,
107
+ primary-hover-color: #8abbff,
108
+ primary-active-color: #9ec5fe,
109
+ primary-contrast-color: #08111f,
110
+ primary-subtle-bg: rgba(110, 168, 254, .08),
111
+ primary-muted-bg: rgba(110, 168, 254, .14),
112
+ primary-outline-color: rgba(110, 168, 254, .62),
113
+ primary-strong-border-color: rgba(110, 168, 254, .78),
114
+ secondary-color: #a7a7a7,
115
+ secondary-rgb: 167 167 167,
116
+ secondary-bg: #272727,
117
+ secondary-bg-rgb: 39 39 39,
118
+ shadow-color: rgba(0, 0, 0, .45),
119
+ shadow-soft-color: rgba(0, 0, 0, .35),
120
+ box-shadow: 0 8px 14px 5px rgba(0, 0, 0, .45),
121
+ backdrop-color: #000000,
122
+ backdrop-subtle-color: rgba(0, 0, 0, .55),
123
+ control-bg: #292929,
124
+ control-muted-bg: #333a45,
125
+ control-border-color: rgba(255, 255, 255, .22),
126
+ control-strong-color: #f5f5f5,
127
+ control-mark-color: #64748b,
128
+ media-bg: #111111,
129
+ media-text-color: #ffffff,
130
+ media-border-color: rgba(255, 255, 255, .12),
131
+ media-subtle-bg: rgba(255, 255, 255, .06),
132
+ media-muted-bg: rgba(255, 255, 255, .08),
133
+ media-active-bg: rgba(255, 255, 255, .16),
134
+ media-link-color: #93c5fd,
135
+ success-color: #75d944,
136
+ success-text-color: #8ee85f,
137
+ success-border-color: #3f6f2c,
138
+ success-bg: #182d12,
139
+ success-close-color: #8ee85f,
140
+ success-contrast-color: #111827,
141
+ warning-color: #ffd24d,
142
+ warning-text-color: #ffda66,
143
+ warning-border-color: #806b29,
144
+ warning-bg: #30280e,
145
+ warning-close-color: #ffda66,
146
+ warning-contrast-color: #111827,
147
+ danger-color: #ff6b6d,
148
+ danger-text-color: #ff8587,
149
+ danger-border-color: #7d3638,
150
+ danger-bg: #321719,
151
+ danger-close-color: #ff8587,
152
+ danger-contrast-color: #111827,
153
+ danger-subtle-bg: rgba(255, 107, 109, .1),
154
+ danger-outline-color: rgba(255, 107, 109, .62),
155
+ info-color: #6eb6ff,
156
+ info-text-color: #8fc7ff,
157
+ info-border-color: #315d86,
158
+ info-bg: #12283c,
159
+ info-close-color: #8fc7ff,
160
+ info-contrast-color: #111827,
161
+ ) !default;
162
+
163
+ $themes: (
164
+ light: $theme-light,
165
+ dark: $theme-dark,
166
+ ) !default;
167
+
168
+ @function theme-token($theme, $token) {
169
+ @return map.get($theme, $token);
170
+ }
@@ -1,78 +1,11 @@
1
- @import "../../utils/scss/functions";
2
- @import "../../utils/scss/variables";
3
- @import "../../utils/scss/mixin";
4
- @import "../../utils/scss/animation";
5
- @import "../../utils/scss/placement";
6
-
7
- .vg-backdrop {
8
- @include mix-vars('backdrop', $backdrop-map);
9
- position: fixed;
10
- top: 0;
11
- left: 0;
12
- width: 100vw;
13
- height: 100vh;
14
- background: var(--vg-backdrop-bg);
15
- transition: var(--vg-backdrop-transition);
16
- opacity: 0;
17
- z-index: var(--vg-backdrop-z-index);
18
-
19
- &.fade.show {
20
- opacity: var(--vg-backdrop-opacity);
21
- }
22
- }
23
-
24
- .vg-btn-close {
25
- position: absolute;
26
- width: 30px;
27
- height: 30px;
28
- right: 15px;
29
- top: 15px;
30
- border: none;
31
- background: transparent;
32
- border-radius: 50%;
33
- padding: 0;
34
- display: flex;
35
- align-items: center;
36
- justify-content: center;
37
-
38
- svg {
39
- width: 20px;
40
- height: 20px;
41
- fill: $color;
42
- }
43
- }
44
-
45
- .vg-collapse {
46
- &:not(.show) {
47
- display: none;
48
- }
49
- }
50
-
51
- .vg-collapsing {
52
- height: 0;
53
- overflow: hidden;
54
- transition: $transition-base;
55
- }
56
-
57
- /**
58
- * Loader
59
- */
60
- .vg-loader, .vg.loader:after {
61
- border-radius: 50%;
62
- width: 7em;
63
- height: 7em;
64
- }
65
-
66
- .vg-loader {
67
- @include mix-vars('loader', $loader-map);
68
- margin: var(--vg-loader-margin);
69
- font-size: var(--vg-loader-font-size);
70
- position: relative;
71
- text-indent: -9999em;
72
- border-top: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-border-color);
73
- border-right: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-border-color);
74
- border-bottom: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-border-color);
75
- border-left: var(--vg-loader-border-width) var(--vg-loader-border-style) var(--vg-loader-color);
76
- transform: var(--vg-loader-transform);
77
- animation: var(--vg-loader-animation);
78
- }
1
+ @forward "index";
2
+
3
+ @forward "index";
4
+
5
+ @use "animation";
6
+ @use "placement";
7
+ @use "theme-default";
8
+ @use "backdrop";
9
+ @use "closable";
10
+ @use "collapsable";
11
+ @use "loaders";
@@ -1,44 +1,26 @@
1
- @function is-map($var){
2
- @return type-of($var) == 'map';
3
- }
1
+ @use "sass:color";
2
+ @use "sass:map";
3
+ @use "sass:meta";
4
+
5
+ @function is-map($var){
6
+ @return meta.type-of($var) == 'map';
7
+ }
4
8
 
5
9
  // Merge multiple maps
6
10
  @function map-merge-multiple($maps...) {
7
- $merged-maps: ();
8
-
9
- @each $map in $maps {
10
- $merged-maps: map-merge($merged-maps, $map);
11
- }
12
- @return $merged-maps;
13
- }
11
+ $merged-maps: ();
12
+
13
+ @each $map in $maps {
14
+ $merged-maps: map.merge($merged-maps, $map);
15
+ }
16
+ @return $merged-maps;
17
+ }
14
18
 
15
19
  // mix colors
16
- @function shade-color($color, $weight) {
17
- @return mix(black, $color, $weight);
18
- }
19
-
20
- @function tint-color($color, $weight) {
21
- @return mix(white, $color, $weight);
22
- }
23
-
24
- @function get-alert-color($type) {
25
- @if $type == success {
26
- @return $success-map;
27
- }
28
-
29
- @if $type == danger {
30
- @return $danger-map;
31
- }
32
-
33
- @if $type == warning {
34
- @return $warning-map;
35
- }
36
-
37
- @if $type == info {
38
- @return $info-map;
39
- }
40
-
41
- @if $type == dark {
42
- @return $dark-map;
43
- }
44
- }
20
+ @function shade-color($color, $weight) {
21
+ @return color.mix(black, $color, $weight);
22
+ }
23
+
24
+ @function tint-color($color, $weight) {
25
+ @return color.mix(white, $color, $weight);
26
+ }
@@ -0,0 +1,4 @@
1
+ @forward "theme";
2
+ @forward "functions";
3
+ @forward "variables";
4
+ @forward "mixin";
@@ -1,23 +1,26 @@
1
- @mixin mix-vars($module, $properties) {
2
- @each $key, $value in $properties {
3
- @if (is-map($value)) {
4
- @each $k, $v in $value {
5
- --vg-#{$module}-#{$key}-#{$k}: #{$v}
6
- }
7
- } @else {
8
- --vg-#{$module}-#{$key}: #{$value}
9
- }
1
+ @use "sass:meta";
2
+ @use "variables" as vars;
3
+
4
+ @mixin mix-vars($module, $properties) {
5
+ @each $key, $value in $properties {
6
+ @if (meta.type-of($value) == 'map') {
7
+ @each $k, $v in $value {
8
+ --vg-#{$module}-#{$key}-#{$k}: #{$v};
9
+ }
10
+ } @else {
11
+ --vg-#{$module}-#{$key}: #{$value};
12
+ }
10
13
  }
11
14
  }
12
15
 
13
16
  @mixin mix-alert-color-mode($class) {
14
17
  $colors: ['success', 'info', 'warning', 'danger', 'dark'];
15
18
 
16
- @each $value in $colors {
17
- &.#{$class}-#{$value} {
18
- @each $property, $val in get-alert-color($value) {
19
+ @each $value in $colors {
20
+ &.#{$class}-#{$value} {
21
+ @each $property, $val in vars.get-alert-color($value) {
19
22
  --#{$class}-#{$property}: #{$val};
20
23
  }
21
24
  }
22
25
  }
23
- }
26
+ }