@enterprise-ui-react/react 1.0.6

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.
@@ -0,0 +1,271 @@
1
+ /**
2
+ * Enterprise UI - SCSS Variables
3
+ * Design tokens as SCSS variables for preprocessor workflows
4
+ */
5
+
6
+ // ========================================
7
+ // COLOR TOKENS - LIGHT THEME
8
+ // ========================================
9
+
10
+ // Foundation Colors
11
+ $color-background: #F8FAFC;
12
+ $color-background-surface: #FFFFFF;
13
+ $color-background-elevated: #FFFFFF;
14
+ $color-background-hover: #F1F5F9;
15
+ $color-background-active: #E2E8F0;
16
+
17
+ // Border Colors
18
+ $color-border: #E2E8F0;
19
+ $color-border-strong: #CBD5E1;
20
+ $color-border-subtle: #F1F5F9;
21
+ $color-border-focus: #93C5FD;
22
+
23
+ // Text Colors
24
+ $color-text-primary: #0F172A;
25
+ $color-text-secondary: #475569;
26
+ $color-text-tertiary: #64748B;
27
+ $color-text-disabled: #94A3B8;
28
+ $color-text-inverse: #FFFFFF;
29
+ $color-text-link: #2563EB;
30
+ $color-text-link-hover: #1D4ED8;
31
+
32
+ // Primary Colors
33
+ $color-primary: #2563EB;
34
+ $color-primary-hover: #1D4ED8;
35
+ $color-primary-active: #1E40AF;
36
+ $color-primary-disabled: #93C5FD;
37
+ $color-primary-text: #FFFFFF;
38
+ $color-primary-light: #DBEAFE;
39
+ $color-primary-lighter: #EFF6FF;
40
+ $color-primary-dark: #1E3A8A;
41
+
42
+ // Success Colors
43
+ $color-success: #10B981;
44
+ $color-success-hover: #059669;
45
+ $color-success-light: #D1FAE5;
46
+ $color-success-dark: #065F46;
47
+
48
+ // Warning Colors
49
+ $color-warning: #F59E0B;
50
+ $color-warning-hover: #D97706;
51
+ $color-warning-light: #FEF3C7;
52
+ $color-warning-dark: #92400E;
53
+
54
+ // Error Colors
55
+ $color-error: #EF4444;
56
+ $color-error-hover: #DC2626;
57
+ $color-error-light: #FEE2E2;
58
+ $color-error-dark: #991B1B;
59
+
60
+ // Info Colors
61
+ $color-info: #3B82F6;
62
+ $color-info-hover: #2563EB;
63
+ $color-info-light: #DBEAFE;
64
+ $color-info-dark: #1E40AF;
65
+
66
+ // ========================================
67
+ // DARK THEME COLORS
68
+ // ========================================
69
+
70
+ $color-dark-background: #0B1220;
71
+ $color-dark-surface: #111827;
72
+ $color-dark-elevated: #1F2937;
73
+ $color-dark-border: #374151;
74
+ $color-dark-border-strong: #4B5563;
75
+
76
+ $color-dark-text-primary: #E5E7EB;
77
+ $color-dark-text-secondary: #9CA3AF;
78
+ $color-dark-text-tertiary: #6B7280;
79
+ $color-dark-text-disabled: #4B5563;
80
+
81
+ $color-dark-primary: #3B82F6;
82
+ $color-dark-primary-hover: #60A5FA;
83
+
84
+ // ========================================
85
+ // GRADIENT TOKENS
86
+ // ========================================
87
+
88
+ $gradient-primary: linear-gradient(135deg, #1E40AF 0%, #3B82F6 100%);
89
+ $gradient-premium: linear-gradient(135deg, #2563EB 0%, #7C3AED 100%);
90
+ $gradient-success: linear-gradient(135deg, #10B981 0%, #34D399 100%);
91
+ $gradient-warning: linear-gradient(135deg, #F59E0B 0%, #FBBF24 100%);
92
+ $gradient-error: linear-gradient(135deg, #DC2626 0%, #EF4444 100%);
93
+ $gradient-subtle: linear-gradient(180deg, #F8FAFC 0%, #F1F5F9 100%);
94
+ $gradient-depth: linear-gradient(180deg, #FFFFFF 0%, #F8FAFC 100%);
95
+
96
+ // ========================================
97
+ // TYPOGRAPHY TOKENS
98
+ // ========================================
99
+
100
+ // Font Families
101
+ $font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
102
+ $font-mono: 'JetBrains Mono', 'SF Mono', Monaco, Inconsolata, 'Fira Code', Consolas, monospace;
103
+
104
+ // Font Sizes
105
+ $font-size-xs: 0.75rem; // 12px
106
+ $font-size-sm: 0.875rem; // 14px
107
+ $font-size-base: 1rem; // 16px
108
+ $font-size-lg: 1.125rem; // 18px
109
+ $font-size-xl: 1.25rem; // 20px
110
+ $font-size-2xl: 1.5rem; // 24px
111
+ $font-size-3xl: 1.875rem; // 30px
112
+ $font-size-4xl: 2.25rem; // 36px
113
+ $font-size-5xl: 3rem; // 48px
114
+ $font-size-6xl: 3.75rem; // 60px
115
+
116
+ // Font Weights
117
+ $font-weight-normal: 400;
118
+ $font-weight-medium: 500;
119
+ $font-weight-semibold: 600;
120
+ $font-weight-bold: 700;
121
+
122
+ // Line Heights
123
+ $line-height-tight: 1.25;
124
+ $line-height-normal: 1.5;
125
+ $line-height-relaxed: 1.75;
126
+
127
+ // ========================================
128
+ // SPACING TOKENS
129
+ // ========================================
130
+
131
+ $spacing-0: 0;
132
+ $spacing-0-5: 0.125rem; // 2px
133
+ $spacing-1: 0.25rem; // 4px
134
+ $spacing-1-5: 0.375rem; // 6px
135
+ $spacing-2: 0.5rem; // 8px
136
+ $spacing-2-5: 0.625rem; // 10px
137
+ $spacing-3: 0.75rem; // 12px
138
+ $spacing-3-5: 0.875rem; // 14px
139
+ $spacing-4: 1rem; // 16px
140
+ $spacing-5: 1.25rem; // 20px
141
+ $spacing-6: 1.5rem; // 24px
142
+ $spacing-7: 1.75rem; // 28px
143
+ $spacing-8: 2rem; // 32px
144
+ $spacing-10: 2.5rem; // 40px
145
+ $spacing-12: 3rem; // 48px
146
+ $spacing-16: 4rem; // 64px
147
+ $spacing-20: 5rem; // 80px
148
+ $spacing-24: 6rem; // 96px
149
+
150
+ // Spacing Map
151
+ $spacing: (
152
+ 0: $spacing-0,
153
+ 0-5: $spacing-0-5,
154
+ 1: $spacing-1,
155
+ 1-5: $spacing-1-5,
156
+ 2: $spacing-2,
157
+ 2-5: $spacing-2-5,
158
+ 3: $spacing-3,
159
+ 3-5: $spacing-3-5,
160
+ 4: $spacing-4,
161
+ 5: $spacing-5,
162
+ 6: $spacing-6,
163
+ 7: $spacing-7,
164
+ 8: $spacing-8,
165
+ 10: $spacing-10,
166
+ 12: $spacing-12,
167
+ 16: $spacing-16,
168
+ 20: $spacing-20,
169
+ 24: $spacing-24
170
+ );
171
+
172
+ // ========================================
173
+ // BORDER TOKENS
174
+ // ========================================
175
+
176
+ $border-width-thin: 1px;
177
+ $border-width-medium: 2px;
178
+ $border-width-thick: 3px;
179
+
180
+ $border-radius-none: 0;
181
+ $border-radius-sm: 0.25rem; // 4px
182
+ $border-radius-base: 0.375rem; // 6px
183
+ $border-radius-md: 0.5rem; // 8px
184
+ $border-radius-lg: 0.75rem; // 12px
185
+ $border-radius-xl: 1rem; // 16px
186
+ $border-radius-2xl: 1.5rem; // 24px
187
+ $border-radius-full: 9999px;
188
+
189
+ // ========================================
190
+ // SHADOW TOKENS
191
+ // ========================================
192
+
193
+ $shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
194
+ $shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
195
+ $shadow-base: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
196
+ $shadow-md: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
197
+ $shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
198
+ $shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
199
+ $shadow-2xl: 0 30px 60px -15px rgba(0, 0, 0, 0.3);
200
+
201
+ // ========================================
202
+ // Z-INDEX TOKENS
203
+ // ========================================
204
+
205
+ $z-base: 0;
206
+ $z-dropdown: 1000;
207
+ $z-sticky: 1100;
208
+ $z-fixed: 1200;
209
+ $z-popover: 1300;
210
+ $z-tooltip: 1400;
211
+ $z-overlay: 1500;
212
+ $z-modal: 1600;
213
+ $z-toast: 1700;
214
+
215
+ // ========================================
216
+ // TRANSITION TOKENS
217
+ // ========================================
218
+
219
+ $transition-fast: 100ms;
220
+ $transition-base: 200ms;
221
+ $transition-moderate: 300ms;
222
+ $transition-slow: 400ms;
223
+
224
+ $ease-in: cubic-bezier(0.4, 0, 1, 1);
225
+ $ease-out: cubic-bezier(0, 0, 0.2, 1);
226
+ $ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
227
+
228
+ // ========================================
229
+ // BREAKPOINTS
230
+ // ========================================
231
+
232
+ $breakpoint-xs: 320px;
233
+ $breakpoint-sm: 640px;
234
+ $breakpoint-md: 768px;
235
+ $breakpoint-lg: 1024px;
236
+ $breakpoint-xl: 1280px;
237
+ $breakpoint-2xl: 1536px;
238
+
239
+ // Breakpoint Map
240
+ $breakpoints: (
241
+ xs: $breakpoint-xs,
242
+ sm: $breakpoint-sm,
243
+ md: $breakpoint-md,
244
+ lg: $breakpoint-lg,
245
+ xl: $breakpoint-xl,
246
+ 2xl: $breakpoint-2xl
247
+ );
248
+
249
+ // ========================================
250
+ // MIXINS
251
+ // ========================================
252
+
253
+ // Responsive breakpoint mixin
254
+ @mixin respond-to($breakpoint) {
255
+ @if map-has-key($breakpoints, $breakpoint) {
256
+ @media (min-width: map-get($breakpoints, $breakpoint)) {
257
+ @content;
258
+ }
259
+ } @else {
260
+ @warn "Unknown breakpoint: #{$breakpoint}.";
261
+ }
262
+ }
263
+
264
+ // Example usage:
265
+ // .element {
266
+ // padding: $spacing-4;
267
+ //
268
+ // @include respond-to(md) {
269
+ // padding: $spacing-6;
270
+ // }
271
+ // }