@justin_evo/evo-ui 1.2.0 → 1.2.1

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 (77) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +70 -70
  3. package/dist/declarations.d.ts +6 -6
  4. package/package.json +52 -52
  5. package/src/Alert/Alert.tsx +49 -49
  6. package/src/AutoComplete/AutoComplete.tsx +810 -810
  7. package/src/Badge/Badge.tsx +53 -53
  8. package/src/Breadcrumb/Breadcrumb.tsx +53 -53
  9. package/src/Button/Button.tsx +125 -125
  10. package/src/Card/Card.tsx +257 -257
  11. package/src/Checkbox/Checkbox.tsx +59 -59
  12. package/src/CommandPalette/CommandPalette.tsx +185 -185
  13. package/src/Container/Container.tsx +31 -31
  14. package/src/Divider/Divider.tsx +31 -31
  15. package/src/Form/Form.tsx +185 -185
  16. package/src/Grid/Grid.tsx +66 -66
  17. package/src/ImageCropper/ImageCropper.tsx +911 -911
  18. package/src/Input/Input.tsx +74 -74
  19. package/src/Modal/Modal.tsx +77 -77
  20. package/src/Nav/Nav.tsx +708 -708
  21. package/src/Notification/Notification.tsx +1503 -1503
  22. package/src/Pagination/Pagination.tsx +76 -76
  23. package/src/Radio/Radio.tsx +69 -69
  24. package/src/RichTextArea/RichTextArea.tsx +886 -886
  25. package/src/Select/Select.tsx +515 -515
  26. package/src/Skeleton/Skeleton.tsx +70 -70
  27. package/src/Stack/Stack.tsx +52 -52
  28. package/src/Table/Table.tsx +335 -335
  29. package/src/Tabs/Tabs.tsx +90 -90
  30. package/src/Theme/ThemeProvider.tsx +253 -253
  31. package/src/Theme/ThemeToggle.tsx +79 -79
  32. package/src/Toggle/Toggle.tsx +48 -48
  33. package/src/Tooltip/Tooltip.tsx +38 -38
  34. package/src/TopNav/TopNav.tsx +1163 -1163
  35. package/src/TreeSelect/TreeSelect.tsx +825 -825
  36. package/src/css/alert.module.scss +93 -93
  37. package/src/css/autocomplete.module.scss +416 -416
  38. package/src/css/badge.module.scss +82 -82
  39. package/src/css/base/_color.scss +159 -159
  40. package/src/css/base/_theme.scss +237 -237
  41. package/src/css/base/_variables.scss +161 -161
  42. package/src/css/breadcrumb.module.scss +50 -50
  43. package/src/css/button.module.scss +385 -385
  44. package/src/css/card.module.scss +217 -217
  45. package/src/css/checkbox.module.scss +123 -123
  46. package/src/css/commandpalette.module.scss +211 -211
  47. package/src/css/container.module.scss +18 -18
  48. package/src/css/divider.module.scss +41 -41
  49. package/src/css/form.module.scss +245 -245
  50. package/src/css/imagecropper.module.scss +397 -397
  51. package/src/css/input.module.scss +89 -89
  52. package/src/css/modal.module.scss +105 -105
  53. package/src/css/nav.module.scss +494 -494
  54. package/src/css/notification.module.scss +691 -691
  55. package/src/css/pagination.module.scss +63 -63
  56. package/src/css/radio.module.scss +89 -89
  57. package/src/css/richtextarea.module.scss +307 -307
  58. package/src/css/select.module.scss +525 -525
  59. package/src/css/skeleton.module.scss +30 -30
  60. package/src/css/table.module.scss +386 -386
  61. package/src/css/tabs.module.scss +63 -63
  62. package/src/css/theme-toggle.module.scss +83 -83
  63. package/src/css/toggle.module.scss +54 -54
  64. package/src/css/tooltip.module.scss +97 -97
  65. package/src/css/topnav.module.scss +568 -568
  66. package/src/css/treeselect.module.scss +558 -558
  67. package/src/css/utilities/_borders.scss +111 -111
  68. package/src/css/utilities/_colors.scss +66 -66
  69. package/src/css/utilities/_effects.scss +216 -216
  70. package/src/css/utilities/_layout.scss +181 -181
  71. package/src/css/utilities/_position.scss +75 -75
  72. package/src/css/utilities/_sizing.scss +138 -138
  73. package/src/css/utilities/_spacing.scss +99 -99
  74. package/src/css/utilities/_typography.scss +121 -121
  75. package/src/css/utilities/index.scss +24 -24
  76. package/src/declarations.d.ts +6 -6
  77. package/src/index.ts +60 -60
@@ -1,111 +1,111 @@
1
- @use '../base/variables' as *;
2
-
3
- // ==========================================
4
- // BORDER UTILITIES
5
- // border | rounded | outline | ring
6
- // ==========================================
7
-
8
- // Border width
9
- .border { border-width: 1px; border-style: solid; }
10
- .border-0 { border-width: 0; }
11
- .border-2 { border-width: 2px; border-style: solid; }
12
- .border-4 { border-width: 4px; border-style: solid; }
13
- .border-8 { border-width: 8px; border-style: solid; }
14
-
15
- .border-t { border-top-width: 1px; border-top-style: solid; }
16
- .border-t-0 { border-top-width: 0; }
17
- .border-t-2 { border-top-width: 2px; border-top-style: solid; }
18
- .border-t-4 { border-top-width: 4px; border-top-style: solid; }
19
-
20
- .border-r { border-right-width: 1px; border-right-style: solid; }
21
- .border-r-0 { border-right-width: 0; }
22
- .border-r-2 { border-right-width: 2px; border-right-style: solid; }
23
- .border-r-4 { border-right-width: 4px; border-right-style: solid; }
24
-
25
- .border-b { border-bottom-width: 1px; border-bottom-style: solid; }
26
- .border-b-0 { border-bottom-width: 0; }
27
- .border-b-2 { border-bottom-width: 2px; border-bottom-style: solid; }
28
- .border-b-4 { border-bottom-width: 4px; border-bottom-style: solid; }
29
-
30
- .border-l { border-left-width: 1px; border-left-style: solid; }
31
- .border-l-0 { border-left-width: 0; }
32
- .border-l-2 { border-left-width: 2px; border-left-style: solid; }
33
- .border-l-4 { border-left-width: 4px; border-left-style: solid; }
34
-
35
- .border-x { border-inline-width: 1px; border-inline-style: solid; }
36
- .border-y { border-block-width: 1px; border-block-style: solid; }
37
-
38
- // Border style
39
- .border-solid { border-style: solid; }
40
- .border-dashed { border-style: dashed; }
41
- .border-dotted { border-style: dotted; }
42
- .border-double { border-style: double; }
43
- .border-hidden { border-style: hidden; }
44
- .border-none { border-style: none; }
45
-
46
- // Border radius
47
- .rounded-none { border-radius: 0; }
48
- .rounded-sm { border-radius: $radius-sm; }
49
- .rounded { border-radius: $radius-md; }
50
- .rounded-md { border-radius: $radius-md; }
51
- .rounded-lg { border-radius: $radius-lg; }
52
- .rounded-xl { border-radius: $radius-xl; }
53
- .rounded-2xl { border-radius: 1.5rem; }
54
- .rounded-3xl { border-radius: 2rem; }
55
- .rounded-full { border-radius: $radius-full; }
56
-
57
- // Per-corner radius
58
- .rounded-t-none { border-top-left-radius: 0; border-top-right-radius: 0; }
59
- .rounded-t-sm { border-top-left-radius: $radius-sm; border-top-right-radius: $radius-sm; }
60
- .rounded-t { border-top-left-radius: $radius-md; border-top-right-radius: $radius-md; }
61
- .rounded-t-lg { border-top-left-radius: $radius-lg; border-top-right-radius: $radius-lg; }
62
- .rounded-t-full { border-top-left-radius: $radius-full; border-top-right-radius: $radius-full; }
63
-
64
- .rounded-b-none { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
65
- .rounded-b-sm { border-bottom-left-radius: $radius-sm; border-bottom-right-radius: $radius-sm; }
66
- .rounded-b { border-bottom-left-radius: $radius-md; border-bottom-right-radius: $radius-md; }
67
- .rounded-b-lg { border-bottom-left-radius: $radius-lg; border-bottom-right-radius: $radius-lg; }
68
- .rounded-b-full { border-bottom-left-radius: $radius-full; border-bottom-right-radius: $radius-full; }
69
-
70
- .rounded-l-none { border-top-left-radius: 0; border-bottom-left-radius: 0; }
71
- .rounded-l-sm { border-top-left-radius: $radius-sm; border-bottom-left-radius: $radius-sm; }
72
- .rounded-l { border-top-left-radius: $radius-md; border-bottom-left-radius: $radius-md; }
73
- .rounded-l-lg { border-top-left-radius: $radius-lg; border-bottom-left-radius: $radius-lg; }
74
- .rounded-l-full { border-top-left-radius: $radius-full; border-bottom-left-radius: $radius-full; }
75
-
76
- .rounded-r-none { border-top-right-radius: 0; border-bottom-right-radius: 0; }
77
- .rounded-r-sm { border-top-right-radius: $radius-sm; border-bottom-right-radius: $radius-sm; }
78
- .rounded-r { border-top-right-radius: $radius-md; border-bottom-right-radius: $radius-md; }
79
- .rounded-r-lg { border-top-right-radius: $radius-lg; border-bottom-right-radius: $radius-lg; }
80
- .rounded-r-full { border-top-right-radius: $radius-full; border-bottom-right-radius: $radius-full; }
81
-
82
- // Divide (border between children)
83
- .divide-x > * + * { border-left-width: 1px; border-left-style: solid; }
84
- .divide-x-2 > * + * { border-left-width: 2px; border-left-style: solid; }
85
- .divide-y > * + * { border-top-width: 1px; border-top-style: solid; }
86
- .divide-y-2 > * + * { border-top-width: 2px; border-top-style: solid; }
87
- .divide-none > * + * { border-width: 0; }
88
-
89
- // Outline
90
- .outline-none { outline: none; }
91
- .outline { outline-width: 1px; outline-style: solid; }
92
- .outline-2 { outline-width: 2px; outline-style: solid; }
93
- .outline-4 { outline-width: 4px; outline-style: solid; }
94
- .outline-dashed { outline-style: dashed; }
95
- .outline-dotted { outline-style: dotted; }
96
- .outline-offset-0 { outline-offset: 0; }
97
- .outline-offset-1 { outline-offset: 1px; }
98
- .outline-offset-2 { outline-offset: 2px; }
99
- .outline-offset-4 { outline-offset: 4px; }
100
- .outline-offset-8 { outline-offset: 8px; }
101
-
102
- // Ring (focus ring via box-shadow)
103
- $_ring-color: rgba(14, 116, 144, 0.5); // cyan-700 at 50% opacity
104
-
105
- .ring-0 { box-shadow: none; }
106
- .ring-1 { box-shadow: 0 0 0 1px $_ring-color; }
107
- .ring-2 { box-shadow: 0 0 0 2px $_ring-color; }
108
- .ring { box-shadow: 0 0 0 3px $_ring-color; }
109
- .ring-4 { box-shadow: 0 0 0 4px $_ring-color; }
110
- .ring-8 { box-shadow: 0 0 0 8px $_ring-color; }
111
- .ring-inset { box-shadow: inset 0 0 0 3px $_ring-color; }
1
+ @use '../base/variables' as *;
2
+
3
+ // ==========================================
4
+ // BORDER UTILITIES
5
+ // border | rounded | outline | ring
6
+ // ==========================================
7
+
8
+ // Border width
9
+ .border { border-width: 1px; border-style: solid; }
10
+ .border-0 { border-width: 0; }
11
+ .border-2 { border-width: 2px; border-style: solid; }
12
+ .border-4 { border-width: 4px; border-style: solid; }
13
+ .border-8 { border-width: 8px; border-style: solid; }
14
+
15
+ .border-t { border-top-width: 1px; border-top-style: solid; }
16
+ .border-t-0 { border-top-width: 0; }
17
+ .border-t-2 { border-top-width: 2px; border-top-style: solid; }
18
+ .border-t-4 { border-top-width: 4px; border-top-style: solid; }
19
+
20
+ .border-r { border-right-width: 1px; border-right-style: solid; }
21
+ .border-r-0 { border-right-width: 0; }
22
+ .border-r-2 { border-right-width: 2px; border-right-style: solid; }
23
+ .border-r-4 { border-right-width: 4px; border-right-style: solid; }
24
+
25
+ .border-b { border-bottom-width: 1px; border-bottom-style: solid; }
26
+ .border-b-0 { border-bottom-width: 0; }
27
+ .border-b-2 { border-bottom-width: 2px; border-bottom-style: solid; }
28
+ .border-b-4 { border-bottom-width: 4px; border-bottom-style: solid; }
29
+
30
+ .border-l { border-left-width: 1px; border-left-style: solid; }
31
+ .border-l-0 { border-left-width: 0; }
32
+ .border-l-2 { border-left-width: 2px; border-left-style: solid; }
33
+ .border-l-4 { border-left-width: 4px; border-left-style: solid; }
34
+
35
+ .border-x { border-inline-width: 1px; border-inline-style: solid; }
36
+ .border-y { border-block-width: 1px; border-block-style: solid; }
37
+
38
+ // Border style
39
+ .border-solid { border-style: solid; }
40
+ .border-dashed { border-style: dashed; }
41
+ .border-dotted { border-style: dotted; }
42
+ .border-double { border-style: double; }
43
+ .border-hidden { border-style: hidden; }
44
+ .border-none { border-style: none; }
45
+
46
+ // Border radius
47
+ .rounded-none { border-radius: 0; }
48
+ .rounded-sm { border-radius: $radius-sm; }
49
+ .rounded { border-radius: $radius-md; }
50
+ .rounded-md { border-radius: $radius-md; }
51
+ .rounded-lg { border-radius: $radius-lg; }
52
+ .rounded-xl { border-radius: $radius-xl; }
53
+ .rounded-2xl { border-radius: 1.5rem; }
54
+ .rounded-3xl { border-radius: 2rem; }
55
+ .rounded-full { border-radius: $radius-full; }
56
+
57
+ // Per-corner radius
58
+ .rounded-t-none { border-top-left-radius: 0; border-top-right-radius: 0; }
59
+ .rounded-t-sm { border-top-left-radius: $radius-sm; border-top-right-radius: $radius-sm; }
60
+ .rounded-t { border-top-left-radius: $radius-md; border-top-right-radius: $radius-md; }
61
+ .rounded-t-lg { border-top-left-radius: $radius-lg; border-top-right-radius: $radius-lg; }
62
+ .rounded-t-full { border-top-left-radius: $radius-full; border-top-right-radius: $radius-full; }
63
+
64
+ .rounded-b-none { border-bottom-left-radius: 0; border-bottom-right-radius: 0; }
65
+ .rounded-b-sm { border-bottom-left-radius: $radius-sm; border-bottom-right-radius: $radius-sm; }
66
+ .rounded-b { border-bottom-left-radius: $radius-md; border-bottom-right-radius: $radius-md; }
67
+ .rounded-b-lg { border-bottom-left-radius: $radius-lg; border-bottom-right-radius: $radius-lg; }
68
+ .rounded-b-full { border-bottom-left-radius: $radius-full; border-bottom-right-radius: $radius-full; }
69
+
70
+ .rounded-l-none { border-top-left-radius: 0; border-bottom-left-radius: 0; }
71
+ .rounded-l-sm { border-top-left-radius: $radius-sm; border-bottom-left-radius: $radius-sm; }
72
+ .rounded-l { border-top-left-radius: $radius-md; border-bottom-left-radius: $radius-md; }
73
+ .rounded-l-lg { border-top-left-radius: $radius-lg; border-bottom-left-radius: $radius-lg; }
74
+ .rounded-l-full { border-top-left-radius: $radius-full; border-bottom-left-radius: $radius-full; }
75
+
76
+ .rounded-r-none { border-top-right-radius: 0; border-bottom-right-radius: 0; }
77
+ .rounded-r-sm { border-top-right-radius: $radius-sm; border-bottom-right-radius: $radius-sm; }
78
+ .rounded-r { border-top-right-radius: $radius-md; border-bottom-right-radius: $radius-md; }
79
+ .rounded-r-lg { border-top-right-radius: $radius-lg; border-bottom-right-radius: $radius-lg; }
80
+ .rounded-r-full { border-top-right-radius: $radius-full; border-bottom-right-radius: $radius-full; }
81
+
82
+ // Divide (border between children)
83
+ .divide-x > * + * { border-left-width: 1px; border-left-style: solid; }
84
+ .divide-x-2 > * + * { border-left-width: 2px; border-left-style: solid; }
85
+ .divide-y > * + * { border-top-width: 1px; border-top-style: solid; }
86
+ .divide-y-2 > * + * { border-top-width: 2px; border-top-style: solid; }
87
+ .divide-none > * + * { border-width: 0; }
88
+
89
+ // Outline
90
+ .outline-none { outline: none; }
91
+ .outline { outline-width: 1px; outline-style: solid; }
92
+ .outline-2 { outline-width: 2px; outline-style: solid; }
93
+ .outline-4 { outline-width: 4px; outline-style: solid; }
94
+ .outline-dashed { outline-style: dashed; }
95
+ .outline-dotted { outline-style: dotted; }
96
+ .outline-offset-0 { outline-offset: 0; }
97
+ .outline-offset-1 { outline-offset: 1px; }
98
+ .outline-offset-2 { outline-offset: 2px; }
99
+ .outline-offset-4 { outline-offset: 4px; }
100
+ .outline-offset-8 { outline-offset: 8px; }
101
+
102
+ // Ring (focus ring via box-shadow)
103
+ $_ring-color: rgba(14, 116, 144, 0.5); // cyan-700 at 50% opacity
104
+
105
+ .ring-0 { box-shadow: none; }
106
+ .ring-1 { box-shadow: 0 0 0 1px $_ring-color; }
107
+ .ring-2 { box-shadow: 0 0 0 2px $_ring-color; }
108
+ .ring { box-shadow: 0 0 0 3px $_ring-color; }
109
+ .ring-4 { box-shadow: 0 0 0 4px $_ring-color; }
110
+ .ring-8 { box-shadow: 0 0 0 8px $_ring-color; }
111
+ .ring-inset { box-shadow: inset 0 0 0 3px $_ring-color; }
@@ -1,66 +1,66 @@
1
- @use '../base/color' as *;
2
- @use '../base/variables' as *;
3
-
4
- // ==========================================
5
- // COLOR UTILITIES
6
- // text-{color}-{shade} | bg-{color}-{shade} | border-{color}-{shade}
7
- // ==========================================
8
-
9
- $_palette: (
10
- 'blue': (100: $evo-blue-100, 200: $evo-blue-200, 300: $evo-blue-300, 400: $evo-blue-400, 500: $evo-blue-500, 600: $evo-blue-600, 700: $evo-blue-700, 800: $evo-blue-800, 900: $evo-blue-900),
11
- 'gray': (100: $evo-gray-100, 200: $evo-gray-200, 300: $evo-gray-300, 400: $evo-gray-400, 500: $evo-gray-500, 600: $evo-gray-600, 700: $evo-gray-700, 800: $evo-gray-800, 900: $evo-gray-900),
12
- 'red': (100: $evo-red-100, 200: $evo-red-200, 300: $evo-red-300, 400: $evo-red-400, 500: $evo-red-500, 600: $evo-red-600, 700: $evo-red-700, 800: $evo-red-800, 900: $evo-red-900),
13
- 'yellow': (100: $evo-yellow-100, 200: $evo-yellow-200, 300: $evo-yellow-300, 400: $evo-yellow-400, 500: $evo-yellow-500, 600: $evo-yellow-600, 700: $evo-yellow-700, 800: $evo-yellow-800, 900: $evo-yellow-900),
14
- 'green': (100: $evo-green-100, 200: $evo-green-200, 300: $evo-green-300, 400: $evo-green-400, 500: $evo-green-500, 600: $evo-green-600, 700: $evo-green-700, 800: $evo-green-800, 900: $evo-green-900),
15
- 'purple': (100: $evo-purple-100, 200: $evo-purple-200, 300: $evo-purple-300, 400: $evo-purple-400, 500: $evo-purple-500, 600: $evo-purple-600, 700: $evo-purple-700, 800: $evo-purple-800, 900: $evo-purple-900),
16
- 'white': (100: $evo-white-100, 200: $evo-white-200, 300: $evo-white-300, 400: $evo-white-400, 500: $evo-white-500, 600: $evo-white-600, 700: $evo-white-700, 800: $evo-white-800, 900: $evo-white-900),
17
- 'black': (100: $evo-black-100, 200: $evo-black-200, 300: $evo-black-300, 400: $evo-black-400, 500: $evo-black-500, 600: $evo-black-600, 700: $evo-black-700, 800: $evo-black-800, 900: $evo-black-900),
18
- 'cyan': (100: $evo-cyan-100, 200: $evo-cyan-200, 300: $evo-cyan-300, 400: $evo-cyan-400, 500: $evo-cyan-500, 600: $evo-cyan-600, 700: $evo-cyan-700, 800: $evo-cyan-800, 900: $evo-cyan-900),
19
- 'rose': (100: $evo-rose-100, 200: $evo-rose-200, 300: $evo-rose-300, 400: $evo-rose-400, 500: $evo-rose-500, 600: $evo-rose-600, 700: $evo-rose-700, 800: $evo-rose-800, 900: $evo-rose-900),
20
- 'emerald': (100: $evo-emerald-100, 200: $evo-emerald-200, 300: $evo-emerald-300, 400: $evo-emerald-400, 500: $evo-emerald-500, 600: $evo-emerald-600, 700: $evo-emerald-700, 800: $evo-emerald-800, 900: $evo-emerald-900),
21
- 'amber': (100: $evo-amber-100, 200: $evo-amber-200, 300: $evo-amber-300, 400: $evo-amber-400, 500: $evo-amber-500, 600: $evo-amber-600, 700: $evo-amber-700, 800: $evo-amber-800, 900: $evo-amber-900),
22
- 'violet': (100: $evo-violet-100, 200: $evo-violet-200, 300: $evo-violet-300, 400: $evo-violet-400, 500: $evo-violet-500, 600: $evo-violet-600, 700: $evo-violet-700, 800: $evo-violet-800, 900: $evo-violet-900),
23
- 'slate': (50: $evo-slate-50, 100: $evo-slate-100, 200: $evo-slate-200, 300: $evo-slate-300, 400: $evo-slate-400, 500: $evo-slate-500, 600: $evo-slate-600, 700: $evo-slate-700, 800: $evo-slate-800, 900: $evo-slate-900, 950: $evo-slate-950),
24
- );
25
-
26
- @each $name, $shades in $_palette {
27
- @each $shade, $value in $shades {
28
- .text-#{$name}-#{$shade} { color: $value; }
29
- .bg-#{$name}-#{$shade} { background-color: $value; }
30
- .border-#{$name}-#{$shade} { border-color: $value; }
31
- }
32
- }
33
-
34
- // Semantic shortcuts
35
- .text-primary { color: $evo-primary-color; }
36
- .text-danger { color: $evo-danger-color; }
37
- .text-warning { color: $evo-warning-color; }
38
- .text-success { color: $evo-success-color; }
39
- .text-info { color: $evo-info-color; }
40
- .text-muted { color: $color-text-muted; }
41
- .text-default { color: $color-text-primary; }
42
-
43
- .bg-primary { background-color: $evo-primary-color; }
44
- .bg-danger { background-color: $evo-danger-color; }
45
- .bg-warning { background-color: $evo-warning-color; }
46
- .bg-success { background-color: $evo-success-color; }
47
- .bg-info { background-color: $evo-info-color; }
48
- .bg-surface { background-color: $color-surface; }
49
- .bg-page { background-color: $color-background; }
50
-
51
- .border-primary { border-color: $evo-primary-color; }
52
- .border-danger { border-color: $evo-danger-color; }
53
- .border-success { border-color: $evo-success-color; }
54
- .border-warning { border-color: $evo-warning-color; }
55
- .border-default { border-color: $color-border; }
56
-
57
- // Special values
58
- .text-transparent { color: transparent; }
59
- .text-inherit { color: inherit; }
60
- .text-current { color: currentColor; }
61
- .bg-transparent { background-color: transparent; }
62
- .bg-inherit { background-color: inherit; }
63
- .bg-white { background-color: #fff; }
64
- .bg-black { background-color: #000; }
65
- .text-white { color: #fff; }
66
- .text-black { color: #000; }
1
+ @use '../base/color' as *;
2
+ @use '../base/variables' as *;
3
+
4
+ // ==========================================
5
+ // COLOR UTILITIES
6
+ // text-{color}-{shade} | bg-{color}-{shade} | border-{color}-{shade}
7
+ // ==========================================
8
+
9
+ $_palette: (
10
+ 'blue': (100: $evo-blue-100, 200: $evo-blue-200, 300: $evo-blue-300, 400: $evo-blue-400, 500: $evo-blue-500, 600: $evo-blue-600, 700: $evo-blue-700, 800: $evo-blue-800, 900: $evo-blue-900),
11
+ 'gray': (100: $evo-gray-100, 200: $evo-gray-200, 300: $evo-gray-300, 400: $evo-gray-400, 500: $evo-gray-500, 600: $evo-gray-600, 700: $evo-gray-700, 800: $evo-gray-800, 900: $evo-gray-900),
12
+ 'red': (100: $evo-red-100, 200: $evo-red-200, 300: $evo-red-300, 400: $evo-red-400, 500: $evo-red-500, 600: $evo-red-600, 700: $evo-red-700, 800: $evo-red-800, 900: $evo-red-900),
13
+ 'yellow': (100: $evo-yellow-100, 200: $evo-yellow-200, 300: $evo-yellow-300, 400: $evo-yellow-400, 500: $evo-yellow-500, 600: $evo-yellow-600, 700: $evo-yellow-700, 800: $evo-yellow-800, 900: $evo-yellow-900),
14
+ 'green': (100: $evo-green-100, 200: $evo-green-200, 300: $evo-green-300, 400: $evo-green-400, 500: $evo-green-500, 600: $evo-green-600, 700: $evo-green-700, 800: $evo-green-800, 900: $evo-green-900),
15
+ 'purple': (100: $evo-purple-100, 200: $evo-purple-200, 300: $evo-purple-300, 400: $evo-purple-400, 500: $evo-purple-500, 600: $evo-purple-600, 700: $evo-purple-700, 800: $evo-purple-800, 900: $evo-purple-900),
16
+ 'white': (100: $evo-white-100, 200: $evo-white-200, 300: $evo-white-300, 400: $evo-white-400, 500: $evo-white-500, 600: $evo-white-600, 700: $evo-white-700, 800: $evo-white-800, 900: $evo-white-900),
17
+ 'black': (100: $evo-black-100, 200: $evo-black-200, 300: $evo-black-300, 400: $evo-black-400, 500: $evo-black-500, 600: $evo-black-600, 700: $evo-black-700, 800: $evo-black-800, 900: $evo-black-900),
18
+ 'cyan': (100: $evo-cyan-100, 200: $evo-cyan-200, 300: $evo-cyan-300, 400: $evo-cyan-400, 500: $evo-cyan-500, 600: $evo-cyan-600, 700: $evo-cyan-700, 800: $evo-cyan-800, 900: $evo-cyan-900),
19
+ 'rose': (100: $evo-rose-100, 200: $evo-rose-200, 300: $evo-rose-300, 400: $evo-rose-400, 500: $evo-rose-500, 600: $evo-rose-600, 700: $evo-rose-700, 800: $evo-rose-800, 900: $evo-rose-900),
20
+ 'emerald': (100: $evo-emerald-100, 200: $evo-emerald-200, 300: $evo-emerald-300, 400: $evo-emerald-400, 500: $evo-emerald-500, 600: $evo-emerald-600, 700: $evo-emerald-700, 800: $evo-emerald-800, 900: $evo-emerald-900),
21
+ 'amber': (100: $evo-amber-100, 200: $evo-amber-200, 300: $evo-amber-300, 400: $evo-amber-400, 500: $evo-amber-500, 600: $evo-amber-600, 700: $evo-amber-700, 800: $evo-amber-800, 900: $evo-amber-900),
22
+ 'violet': (100: $evo-violet-100, 200: $evo-violet-200, 300: $evo-violet-300, 400: $evo-violet-400, 500: $evo-violet-500, 600: $evo-violet-600, 700: $evo-violet-700, 800: $evo-violet-800, 900: $evo-violet-900),
23
+ 'slate': (50: $evo-slate-50, 100: $evo-slate-100, 200: $evo-slate-200, 300: $evo-slate-300, 400: $evo-slate-400, 500: $evo-slate-500, 600: $evo-slate-600, 700: $evo-slate-700, 800: $evo-slate-800, 900: $evo-slate-900, 950: $evo-slate-950),
24
+ );
25
+
26
+ @each $name, $shades in $_palette {
27
+ @each $shade, $value in $shades {
28
+ .text-#{$name}-#{$shade} { color: $value; }
29
+ .bg-#{$name}-#{$shade} { background-color: $value; }
30
+ .border-#{$name}-#{$shade} { border-color: $value; }
31
+ }
32
+ }
33
+
34
+ // Semantic shortcuts
35
+ .text-primary { color: $evo-primary-color; }
36
+ .text-danger { color: $evo-danger-color; }
37
+ .text-warning { color: $evo-warning-color; }
38
+ .text-success { color: $evo-success-color; }
39
+ .text-info { color: $evo-info-color; }
40
+ .text-muted { color: $color-text-muted; }
41
+ .text-default { color: $color-text-primary; }
42
+
43
+ .bg-primary { background-color: $evo-primary-color; }
44
+ .bg-danger { background-color: $evo-danger-color; }
45
+ .bg-warning { background-color: $evo-warning-color; }
46
+ .bg-success { background-color: $evo-success-color; }
47
+ .bg-info { background-color: $evo-info-color; }
48
+ .bg-surface { background-color: $color-surface; }
49
+ .bg-page { background-color: $color-background; }
50
+
51
+ .border-primary { border-color: $evo-primary-color; }
52
+ .border-danger { border-color: $evo-danger-color; }
53
+ .border-success { border-color: $evo-success-color; }
54
+ .border-warning { border-color: $evo-warning-color; }
55
+ .border-default { border-color: $color-border; }
56
+
57
+ // Special values
58
+ .text-transparent { color: transparent; }
59
+ .text-inherit { color: inherit; }
60
+ .text-current { color: currentColor; }
61
+ .bg-transparent { background-color: transparent; }
62
+ .bg-inherit { background-color: inherit; }
63
+ .bg-white { background-color: #fff; }
64
+ .bg-black { background-color: #000; }
65
+ .text-white { color: #fff; }
66
+ .text-black { color: #000; }