vgapp 1.4.2 → 1.4.4

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 (66) 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/scss/_variables.scss +5 -3
  21. package/app/modules/vgformsender/scss/vgformsender.scss +8 -9
  22. package/app/modules/vglawcookie/scss/_variables.scss +13 -11
  23. package/app/modules/vglawcookie/scss/vglawcookie.scss +5 -6
  24. package/app/modules/vgmodal/scss/_variables.scss +17 -15
  25. package/app/modules/vgmodal/scss/vgmodal.scss +10 -11
  26. package/app/modules/vgnav/scss/_breakpoints.scss +36 -20
  27. package/app/modules/vgnav/scss/_hamburger.scss +5 -2
  28. package/app/modules/vgnav/scss/_placement.scss +5 -2
  29. package/app/modules/vgnav/scss/_toggle.scss +5 -2
  30. package/app/modules/vgnav/scss/_variables.scss +26 -23
  31. package/app/modules/vgnav/scss/vgnav.scss +20 -16
  32. package/app/modules/vgnestable/scss/_variables.scss +29 -27
  33. package/app/modules/vgnestable/scss/vgnestable.scss +4 -5
  34. package/app/modules/vgrangeslider/scss/_variables.scss +23 -21
  35. package/app/modules/vgrangeslider/scss/vgrangeslider.scss +4 -5
  36. package/app/modules/vgrollup/scss/_variables.scss +15 -8
  37. package/app/modules/vgrollup/scss/vgrollup.scss +6 -7
  38. package/app/modules/vgselect/scss/_variables.scss +50 -48
  39. package/app/modules/vgselect/scss/vgselect.scss +26 -27
  40. package/app/modules/vgsidebar/scss/_variables.scss +10 -8
  41. package/app/modules/vgsidebar/scss/vgsidebar.scss +5 -6
  42. package/app/modules/vgtabs/scss/_variables.scss +23 -20
  43. package/app/modules/vgtabs/scss/vgtabs.scss +5 -6
  44. package/app/modules/vgtoast/scss/_variables.scss +13 -11
  45. package/app/modules/vgtoast/scss/vgtoast.scss +5 -6
  46. package/app/modules/vgtooltip/scss/_variables.scss +10 -8
  47. package/app/modules/vgtooltip/scss/vgtooltip.scss +5 -6
  48. package/app/utils/scss/_backdrop.scss +19 -0
  49. package/app/utils/scss/_closable.scss +22 -0
  50. package/app/utils/scss/_collapsable.scss +13 -0
  51. package/app/utils/scss/_loaders.scss +22 -0
  52. package/app/utils/scss/_theme-default.scss +12 -0
  53. package/app/utils/scss/_theme.scss +7 -0
  54. package/app/utils/scss/_tokens.scss +170 -0
  55. package/app/utils/scss/default.scss +11 -78
  56. package/app/utils/scss/functions.scss +21 -39
  57. package/app/utils/scss/index.scss +4 -0
  58. package/app/utils/scss/mixin.scss +16 -13
  59. package/app/utils/scss/variables.scss +105 -77
  60. package/build/vgapp.css +2 -4492
  61. package/build/vgapp.css.map +1 -1
  62. package/build/vgapp.js +3 -32145
  63. package/index.scss +20 -23
  64. package/package.json +7 -1
  65. /package/app/utils/scss/{animation.scss → _animation.scss} +0 -0
  66. /package/app/utils/scss/{placement.scss → _placement.scss} +0 -0
@@ -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
+ }
@@ -1,29 +1,45 @@
1
- // -- Backgrounds
2
- $bg-color: #fff !default;
3
- $bg-color-active: #c7dcf6 !default;
4
-
5
- // -- Colors
6
- $color: #000000 !default;
7
- $color-emphasis: #3c3c3c !default;
8
- $color-active: #0065ff !default;
9
- $color-disabled: rgba(#000000, .5) !default;
10
-
11
- // -- Shadows
12
- $box-shadow: 0 8px 14px 5px rgba(0, 0, 0, 0.2) !default;
13
-
14
- // -- Borders
15
- $border-color: rgba(0, 0, 0, .2) !default;
16
- $border-color-active: rgba(#0065ff, 1) !default;
17
- $border-color-disabled: rgba(0, 0, 0, .1) !default;
18
- $border-radius: .375rem !default;
19
- $border-width: 1px !default;
20
- $border-style: solid;
1
+ @use "sass:map";
2
+ @use "functions" as fn;
3
+ @use "tokens";
4
+
5
+ // Semantic base values for Sass consumers. Runtime theme-aware components
6
+ // should use the matching --vg-* custom properties.
7
+ $body-bg: tokens.theme-token(tokens.$theme-light, body-bg) !default;
8
+ $surface-bg: tokens.theme-token(tokens.$theme-light, surface-bg) !default;
9
+ $surface-raised-bg: tokens.theme-token(tokens.$theme-light, surface-raised-bg) !default;
10
+ $surface-muted-bg: tokens.theme-token(tokens.$theme-light, surface-muted-bg) !default;
11
+ $surface-hover-bg: tokens.theme-token(tokens.$theme-light, surface-hover-bg) !default;
12
+ $surface-active-bg: tokens.theme-token(tokens.$theme-light, surface-active-bg) !default;
13
+
14
+ // Legacy aliases. Keep these until every component has moved to semantic tokens.
15
+ $bg-color: $surface-bg !default;
16
+ $bg-color-active: $surface-active-bg !default;
17
+
18
+ // -- Colors
19
+ $color: tokens.theme-token(tokens.$theme-light, text-color) !default;
20
+ $color-emphasis: tokens.theme-token(tokens.$theme-light, text-emphasis-color) !default;
21
+ $color-muted: tokens.theme-token(tokens.$theme-light, text-muted-color) !default;
22
+ $color-active: tokens.theme-token(tokens.$theme-light, primary-color) !default;
23
+ $color-disabled: tokens.theme-token(tokens.$theme-light, text-disabled-color) !default;
24
+ $color-inverse: tokens.theme-token(tokens.$theme-light, text-inverse-color) !default;
25
+
26
+ // -- Shadows
27
+ $box-shadow: tokens.theme-token(tokens.$theme-light, box-shadow) !default;
28
+
29
+ // -- Borders
30
+ $border-color: tokens.theme-token(tokens.$theme-light, border-color) !default;
31
+ $border-color-strong: tokens.theme-token(tokens.$theme-light, border-strong-color) !default;
32
+ $border-color-active: tokens.theme-token(tokens.$theme-light, primary-color) !default;
33
+ $border-color-disabled: tokens.theme-token(tokens.$theme-light, border-disabled-color) !default;
34
+ $border-radius: .375rem !default;
35
+ $border-width: 1px !default;
36
+ $border-style: solid !default;
21
37
 
22
38
  // -- Transitions
23
39
  $transition-base: all .5s ease-in-out !default;
24
40
 
25
41
  // -- Backdrop
26
- $backdrop-bg: rgba(0, 0, 0, 1) !default;
42
+ $backdrop-bg: tokens.theme-token(tokens.$theme-light, backdrop-color) !default;
27
43
  $backdrop-opacity: .4 !default;
28
44
 
29
45
  // Z-indexes
@@ -54,66 +70,78 @@ $loader-map: (
54
70
  );
55
71
 
56
72
  // Colors Status
57
- $danger: #FF2A2C !default;
58
- $danger-border: #FFCCC7 !default;
59
- $danger-text: #DF0306 !default;
60
- $danger-bg: #FFF2F0 !default;
61
-
62
- $success: #4FD90B;
63
- $success-border: #BAF98A !default;
64
- $success-text: #40BE02 !default;
65
- $success-bg: #F6FFED !default;
66
-
67
- $warning: #FFC107;
68
- $warning-border: #FFDE79 !default;
69
- $warning-text: #FFC107 !default;
70
- $warning-bg: #FFF6DA !default;
71
-
72
- $info: #1F8BFF;
73
- $info-border: #F0FAFF !default;
74
- $info-text: #0471E5 !default;
75
- $info-bg: #ADDDFF !default;
73
+ $danger: tokens.theme-token(tokens.$theme-light, danger-color) !default;
74
+ $danger-border: tokens.theme-token(tokens.$theme-light, danger-border-color) !default;
75
+ $danger-text: tokens.theme-token(tokens.$theme-light, danger-text-color) !default;
76
+ $danger-bg: tokens.theme-token(tokens.$theme-light, danger-bg) !default;
77
+
78
+ $success: tokens.theme-token(tokens.$theme-light, success-color) !default;
79
+ $success-border: tokens.theme-token(tokens.$theme-light, success-border-color) !default;
80
+ $success-text: tokens.theme-token(tokens.$theme-light, success-text-color) !default;
81
+ $success-bg: tokens.theme-token(tokens.$theme-light, success-bg) !default;
82
+
83
+ $warning: tokens.theme-token(tokens.$theme-light, warning-color) !default;
84
+ $warning-border: tokens.theme-token(tokens.$theme-light, warning-border-color) !default;
85
+ $warning-text: tokens.theme-token(tokens.$theme-light, warning-text-color) !default;
86
+ $warning-bg: tokens.theme-token(tokens.$theme-light, warning-bg) !default;
87
+
88
+ $info: tokens.theme-token(tokens.$theme-light, info-color) !default;
89
+ $info-border: tokens.theme-token(tokens.$theme-light, info-border-color) !default;
90
+ $info-text: tokens.theme-token(tokens.$theme-light, info-text-color) !default;
91
+ $info-bg: tokens.theme-token(tokens.$theme-light, info-bg) !default;
76
92
 
77
93
  $dark: #232323;
78
- $dark-border: shade-color($dark, 60%) !default;
79
- $dark-text: tint-color($dark, 60%) !default;
80
- $dark-bg: shade-color($dark, 80%) !default;
81
-
82
- $success-map: (
83
- icon: $success,
84
- color: $success-text,
85
- border-color: $success-border,
86
- background-color: $success-bg,
87
- close: shade-color($success-text, 80%)
88
- );
89
-
90
- $danger-map: (
91
- icon: $danger,
92
- color: $danger-text,
93
- border-color: $danger-border,
94
- background-color: $danger-bg,
95
- close: shade-color($danger-text, 80%)
96
- );
97
-
98
- $warning-map: (
99
- icon: $warning,
100
- color: $warning-text,
101
- border-color: $warning-border,
102
- background-color: $warning-bg,
103
- close: shade-color($warning-text, 80%)
104
- );
105
-
106
- $info-map: (
107
- icon: $info,
108
- color: $info-text,
109
- border-color: $info-border,
110
- background-color: $info-bg,
111
- close: shade-color($info-text, 80%)
112
- );
94
+ $dark-border: fn.shade-color($dark, 60%) !default;
95
+ $dark-text: fn.tint-color($dark, 60%) !default;
96
+ $dark-bg: fn.shade-color($dark, 80%) !default;
97
+
98
+ $success-map: (
99
+ icon: var(--vg-success-color, #{$success}),
100
+ color: var(--vg-success-text-color, #{$success-text}),
101
+ border-color: var(--vg-success-border-color, #{$success-border}),
102
+ background-color: var(--vg-success-bg, #{$success-bg}),
103
+ close: var(--vg-success-close-color, #{fn.shade-color($success-text, 80%)})
104
+ );
105
+
106
+ $danger-map: (
107
+ icon: var(--vg-danger-color, #{$danger}),
108
+ color: var(--vg-danger-text-color, #{$danger-text}),
109
+ border-color: var(--vg-danger-border-color, #{$danger-border}),
110
+ background-color: var(--vg-danger-bg, #{$danger-bg}),
111
+ close: var(--vg-danger-close-color, #{fn.shade-color($danger-text, 80%)})
112
+ );
113
+
114
+ $warning-map: (
115
+ icon: var(--vg-warning-color, #{$warning}),
116
+ color: var(--vg-warning-text-color, #{$warning-text}),
117
+ border-color: var(--vg-warning-border-color, #{$warning-border}),
118
+ background-color: var(--vg-warning-bg, #{$warning-bg}),
119
+ close: var(--vg-warning-close-color, #{fn.shade-color($warning-text, 80%)})
120
+ );
121
+
122
+ $info-map: (
123
+ icon: var(--vg-info-color, #{$info}),
124
+ color: var(--vg-info-text-color, #{$info-text}),
125
+ border-color: var(--vg-info-border-color, #{$info-border}),
126
+ background-color: var(--vg-info-bg, #{$info-bg}),
127
+ close: var(--vg-info-close-color, #{fn.shade-color($info-text, 80%)})
128
+ );
113
129
 
114
130
  $dark-map: (
115
131
  color: $dark-text,
116
132
  border-color: $dark-border,
117
133
  background-color: $dark-bg,
118
- close: shade-color($dark-text, 80%)
119
- );
134
+ close: fn.shade-color($dark-text, 80%)
135
+ );
136
+
137
+ $alert-colors: (
138
+ success: $success-map,
139
+ info: $info-map,
140
+ warning: $warning-map,
141
+ danger: $danger-map,
142
+ dark: $dark-map,
143
+ ) !default;
144
+
145
+ @function get-alert-color($type) {
146
+ @return map.get($alert-colors, $type);
147
+ }