@rakeyshgidwani/roger-ui-bank-theme-stan-design 0.1.6 → 0.1.7

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 (82) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/dist/index.d.ts +7 -0
  3. package/dist/index.esm.js +18 -1
  4. package/dist/index.js +18 -1
  5. package/dist/setupTests.d.ts +124 -0
  6. package/dist/setupTests.esm.js +122 -0
  7. package/dist/setupTests.js +122 -0
  8. package/dist/styles.css +1 -1
  9. package/package.json +1 -1
  10. package/src/index.css +1046 -0
  11. package/src/index.ts +18 -0
  12. package/src/plugins/theme-css-generator.ts +354 -0
  13. package/src/setupTests.ts +124 -0
  14. package/src/stories/README.md +39 -0
  15. package/src/stories/components/ThemeDebugger.tsx +143 -0
  16. package/src/stories/index.ts +29 -0
  17. package/src/stories/storybook-theme-imports.css +51 -0
  18. package/src/styles/base/fonts.css +30 -0
  19. package/src/styles/base/generated-theme-variables.css +573 -0
  20. package/src/styles/base/index.css +7 -0
  21. package/src/styles/base/reset.css +48 -0
  22. package/src/styles/base/theme.css +1068 -0
  23. package/src/styles/base/typography.css +68 -0
  24. package/src/styles/base/variables.css +5 -0
  25. package/src/styles/components/CLAUDE.md +62 -0
  26. package/src/styles/components/base/badge.css +428 -0
  27. package/src/styles/components/base/button.css +774 -0
  28. package/src/styles/components/base/card.css +601 -0
  29. package/src/styles/components/base/checkbox.css +442 -0
  30. package/src/styles/components/base/index.css +9 -0
  31. package/src/styles/components/base/input.css +887 -0
  32. package/src/styles/components/base/label.css +296 -0
  33. package/src/styles/components/data-display/chart.css +353 -0
  34. package/src/styles/components/data-display/data-grid.css +619 -0
  35. package/src/styles/components/data-display/index.css +9 -0
  36. package/src/styles/components/data-display/list.css +560 -0
  37. package/src/styles/components/data-display/table.css +498 -0
  38. package/src/styles/components/data-display/timeline.css +764 -0
  39. package/src/styles/components/data-display/tree.css +881 -0
  40. package/src/styles/components/feedback/alert.css +358 -0
  41. package/src/styles/components/feedback/index.css +7 -0
  42. package/src/styles/components/feedback/progress.css +435 -0
  43. package/src/styles/components/feedback/skeleton.css +337 -0
  44. package/src/styles/components/feedback/toast.css +564 -0
  45. package/src/styles/components/index.css +17 -0
  46. package/src/styles/components/navigation/breadcrumb.css +465 -0
  47. package/src/styles/components/navigation/index.css +9 -0
  48. package/src/styles/components/navigation/menu.css +572 -0
  49. package/src/styles/components/navigation/pagination.css +635 -0
  50. package/src/styles/components/navigation/sidebar.css +807 -0
  51. package/src/styles/components/navigation/stepper.css +519 -0
  52. package/src/styles/components/navigation/tabs.css +404 -0
  53. package/src/styles/components/overlay/backdrop.css +243 -0
  54. package/src/styles/components/overlay/index.css +8 -0
  55. package/src/styles/components/overlay/modal.css +482 -0
  56. package/src/styles/components/overlay/popover.css +607 -0
  57. package/src/styles/components/overlay/portal.css +213 -0
  58. package/src/styles/components/overlay/tooltip.css +488 -0
  59. package/src/styles/generated-theme-variables.css +573 -0
  60. package/src/styles/index.css +5 -0
  61. package/src/styles/layers/index.css +54 -0
  62. package/src/styles/layers/overrides.css +108 -0
  63. package/src/styles/layers/validation.css +159 -0
  64. package/src/styles/layers/validation.js +310 -0
  65. package/src/styles/themes/default.css +450 -0
  66. package/src/styles/themes/enterprise.css +370 -0
  67. package/src/styles/themes/harvey.css +436 -0
  68. package/src/styles/themes/index.css +4 -0
  69. package/src/styles/themes/stan-design.css +572 -0
  70. package/src/styles/utilities/advanced-transition-system.css +467 -0
  71. package/src/styles/utilities/battery-conscious-animations.css +289 -0
  72. package/src/styles/utilities/enterprise-mobile-experience.css +817 -0
  73. package/src/styles/utilities/hardware-acceleration.css +121 -0
  74. package/src/styles/utilities/index.css +20 -0
  75. package/src/styles/utilities/mobile-skeleton-loading.css +596 -0
  76. package/src/styles/utilities/semantic-input-system.css +451 -0
  77. package/src/styles/utilities/touch-friendly-interface.css +247 -0
  78. package/src/styles/utilities/touch-optimization.css +165 -0
  79. package/src/test-utils/index.ts +7 -0
  80. package/src/test-utils/theme-testing.tsx +219 -0
  81. package/src/testing/test-automation.ts +627 -0
  82. package/src/testing/test-utils.tsx +367 -0
@@ -0,0 +1,442 @@
1
+ /* Checkbox Component Styles */
2
+ /* Using semantic CSS architecture with CSS variables and BEM methodology */
3
+
4
+ /* Checkbox Component CSS Variables */
5
+ :root {
6
+ /* Checkbox Base Variables */
7
+ --checkbox-size-base: var(--cs-spacing-scale-md);
8
+ --checkbox-size-small: var(--cs-spacing-scale-sm);
9
+ --checkbox-size-large: var(--cs-spacing-scale-lg);
10
+ --checkbox-border-width: var(--cs-border-width-normal);
11
+ --checkbox-border-radius: var(--cs-border-radius-sm);
12
+ --checkbox-transition: var(--cs-transitions-properties-colors);
13
+
14
+ /* Checkbox Focus Variables */
15
+ --checkbox-focus-ring-width: var(--cs-accessibility-focus-ring-width);
16
+ --checkbox-focus-ring-offset: var(--cs-accessibility-focus-ring-offset);
17
+ --checkbox-focus-ring-color: var(--cs-accessibility-focus-ring-color);
18
+
19
+ /* Checkbox State Variables */
20
+ --checkbox-disabled-opacity: var(--cs-colors-interactive-disabled);
21
+ --checkbox-disabled-cursor: var(--cs-accessibility-disabled-cursor, not-allowed);
22
+ --checkbox-checked-color: var(--cs-colors-primary-500);
23
+ --checkbox-unchecked-color: var(--cs-colors-surface-border);
24
+ --checkbox-hover-color: var(--cs-colors-primary-400);
25
+ --checkbox-active-color: var(--cs-colors-primary-600);
26
+
27
+ /* Checkbox Animation Variables */
28
+ --checkbox-transform-check: var(--cs-animation-transforms-scale);
29
+ --checkbox-animation-duration: var(--cs-animation-duration-fast);
30
+ --checkbox-animation-easing: var(--cs-animation-easing-ease-out);
31
+
32
+ /* Checkbox Layout Variables */
33
+ --checkbox-label-spacing: var(--cs-spacing-scale-sm);
34
+ --checkbox-group-spacing: var(--cs-spacing-scale-md);
35
+ --checkbox-container-width: calc(var(--cs-spacing-scale-6xl) * 2.667);
36
+ --checkbox-container-max-width: 100%;
37
+ }
38
+
39
+ /* Checkbox Base Styles */
40
+ .checkbox {
41
+ position: relative;
42
+ display: inline-flex;
43
+ align-items: center;
44
+ justify-content: center;
45
+ width: var(--checkbox-size-base);
46
+ height: var(--checkbox-size-base);
47
+ border: var(--checkbox-border-width) solid var(--checkbox-unchecked-color);
48
+ border-radius: var(--checkbox-border-radius);
49
+ background-color: transparent;
50
+ cursor: pointer;
51
+ transition: var(--checkbox-transition);
52
+ appearance: none;
53
+ -webkit-appearance: none;
54
+ -moz-appearance: none;
55
+ }
56
+
57
+ .checkbox:hover {
58
+ border-color: var(--checkbox-hover-color);
59
+ background-color: var(--cs-colors-interactive-hover);
60
+ }
61
+
62
+ .checkbox:active {
63
+ border-color: var(--checkbox-active-color);
64
+ background-color: var(--cs-colors-interactive-active);
65
+ }
66
+
67
+ .checkbox:focus {
68
+ outline: none;
69
+ border-color: var(--checkbox-focus-ring-color);
70
+ box-shadow: 0 0 0 var(--checkbox-focus-ring-width) var(--checkbox-focus-ring-color);
71
+ }
72
+
73
+ .checkbox:checked {
74
+ background-color: var(--checkbox-checked-color);
75
+ border-color: var(--checkbox-checked-color);
76
+ }
77
+
78
+ .checkbox:checked::after {
79
+ content: '';
80
+ position: absolute;
81
+ top: 50%;
82
+ left: 50%;
83
+ width: var(--cs-spacing-scale-lg);
84
+ height: var(--cs-spacing-scale-lg);
85
+ background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e");
86
+ background-size: contain;
87
+ background-repeat: no-repeat;
88
+ background-position: center;
89
+ transform: translate(-50%, -50%) scale(1);
90
+ transition: transform var(--checkbox-animation-duration) var(--checkbox-animation-easing);
91
+ }
92
+
93
+ .checkbox:checked:hover::after {
94
+ transform: translate(-50%, -50%) var(--checkbox-transform-check);
95
+ }
96
+
97
+ .checkbox:disabled {
98
+ opacity: var(--cs-accessibility-disabled-opacity);
99
+ cursor: var(--checkbox-disabled-cursor);
100
+ background-color: var(--cs-colors-interactive-disabled);
101
+ border-color: var(--cs-colors-interactive-disabled);
102
+ }
103
+
104
+ .checkbox:disabled:hover {
105
+ border-color: var(--cs-colors-interactive-disabled);
106
+ background-color: var(--cs-colors-interactive-disabled);
107
+ }
108
+
109
+ .checkbox:disabled:checked {
110
+ background-color: var(--cs-colors-interactive-disabled);
111
+ border-color: var(--cs-colors-interactive-disabled);
112
+ }
113
+
114
+ /* Checkbox Sizes */
115
+ .checkbox--small {
116
+ width: var(--checkbox-size-small);
117
+ height: var(--checkbox-size-small);
118
+ }
119
+
120
+ .checkbox--large {
121
+ width: var(--checkbox-size-large);
122
+ height: var(--checkbox-size-large);
123
+ }
124
+
125
+ .checkbox--large::after {
126
+ width: calc(var(--cs-spacing-scale-lg) + var(--cs-spacing-scale-xs));
127
+ height: calc(var(--cs-spacing-scale-lg) + var(--cs-spacing-scale-xs));
128
+ }
129
+
130
+ /* Checkbox Label */
131
+ .checkbox__label {
132
+ margin-left: var(--checkbox-label-spacing);
133
+ font-size: var(--cs-fonts-primary-sizes-sm);
134
+ font-weight: var(--cs-fonts-primary-weights-normal);
135
+ line-height: var(--cs-fonts-primary-line-heights-normal);
136
+ color: var(--cs-colors-text-primary);
137
+ cursor: pointer;
138
+ user-select: none;
139
+ }
140
+
141
+ .checkbox__label--disabled {
142
+ color: var(--cs-colors-text-muted);
143
+ cursor: var(--checkbox-disabled-cursor);
144
+ }
145
+
146
+ /* Checkbox Group */
147
+ .checkbox-group {
148
+ display: flex;
149
+ flex-direction: row;
150
+ align-items: center;
151
+ gap: var(--checkbox-label-spacing);
152
+ }
153
+
154
+ .checkbox-group--vertical {
155
+ flex-direction: column;
156
+ align-items: flex-start;
157
+ gap: var(--checkbox-group-spacing);
158
+ }
159
+
160
+ /* Checkbox Container */
161
+ .checkbox-container {
162
+ width: var(--checkbox-container-width);
163
+ max-width: var(--checkbox-container-max-width);
164
+ padding: var(--cs-spacing-scale-md);
165
+ background-color: var(--cs-colors-surface-surface);
166
+ border: var(--cs-border-width-normal) solid var(--cs-colors-surface-border);
167
+ border-radius: var(--cs-border-radius-md);
168
+ }
169
+
170
+ /* Checkbox Row */
171
+ .checkbox-row {
172
+ display: flex;
173
+ align-items: center;
174
+ gap: var(--checkbox-label-spacing);
175
+ padding: var(--cs-spacing-scale-sm) 0;
176
+ }
177
+
178
+ .checkbox-row--disabled {
179
+ opacity: var(--cs-accessibility-disabled-opacity);
180
+ cursor: var(--checkbox-disabled-cursor);
181
+ }
182
+
183
+ /* Checkbox Description */
184
+ .checkbox__description {
185
+ margin-left: calc(var(--checkbox-size-base) + var(--checkbox-label-spacing));
186
+ margin-top: var(--cs-spacing-scale-xs);
187
+ font-size: var(--cs-fonts-primary-sizes-xs);
188
+ line-height: var(--cs-fonts-primary-line-heights-normal);
189
+ color: var(--cs-colors-text-muted);
190
+ }
191
+
192
+ /* Checkbox Error State */
193
+ .checkbox--error {
194
+ border-color: var(--cs-colors-semantic-error);
195
+ }
196
+
197
+ .checkbox--error:focus {
198
+ border-color: var(--cs-colors-semantic-error);
199
+ box-shadow: 0 0 0 var(--checkbox-focus-ring-width) var(--cs-colors-semantic-error);
200
+ }
201
+
202
+ .checkbox__error-message {
203
+ margin-left: calc(var(--checkbox-size-base) + var(--checkbox-label-spacing));
204
+ margin-top: var(--cs-spacing-scale-xs);
205
+ font-size: var(--cs-fonts-primary-sizes-xs);
206
+ line-height: var(--cs-fonts-primary-line-heights-normal);
207
+ color: var(--cs-colors-semantic-error);
208
+ }
209
+
210
+ /* Checkbox Success State */
211
+ .checkbox--success {
212
+ border-color: var(--cs-colors-semantic-success);
213
+ }
214
+
215
+ .checkbox--success:focus {
216
+ border-color: var(--cs-colors-semantic-success);
217
+ box-shadow: 0 0 0 var(--checkbox-focus-ring-width) var(--cs-colors-semantic-success);
218
+ }
219
+
220
+ /* Checkbox Animation Keyframes */
221
+ @keyframes checkbox-check {
222
+ 0% {
223
+ transform: translate(-50%, -50%) scale(0.8);
224
+ opacity: 0;
225
+ }
226
+ 50% {
227
+ transform: translate(-50%, -50%) scale(1.1);
228
+ opacity: 0.8;
229
+ }
230
+ 100% {
231
+ transform: translate(-50%, -50%) scale(1);
232
+ opacity: 1;
233
+ }
234
+ }
235
+
236
+ .checkbox:checked::after {
237
+ animation: checkbox-check var(--checkbox-animation-duration) var(--checkbox-animation-easing);
238
+ }
239
+
240
+ /* Checkbox Focus Ring Animation */
241
+ @keyframes checkbox-focus-ring {
242
+ 0% {
243
+ box-shadow: 0 0 0 0 var(--checkbox-focus-ring-color);
244
+ }
245
+ 100% {
246
+ box-shadow: 0 0 0 var(--checkbox-focus-ring-width) var(--checkbox-focus-ring-color);
247
+ }
248
+ }
249
+
250
+ .checkbox:focus {
251
+ animation: checkbox-focus-ring var(--cs-animation-duration-fast) var(--cs-animation-easing-ease-out);
252
+ }
253
+
254
+ /* Checkbox Hover Animation */
255
+ @keyframes checkbox-hover {
256
+ 0% {
257
+ transform: scale(1);
258
+ }
259
+ 100% {
260
+ transform: var(--checkbox-transform-check);
261
+ }
262
+ }
263
+
264
+ .checkbox:hover {
265
+ animation: checkbox-hover var(--cs-animation-duration-fast) var(--cs-animation-easing-ease-out);
266
+ }
267
+
268
+ /* Responsive Design */
269
+ @media (max-width: var(--cs-breakpoints-mobile)) {
270
+ .checkbox-container {
271
+ width: 100%;
272
+ padding: var(--cs-spacing-scale-sm);
273
+ }
274
+
275
+ .checkbox-group--horizontal {
276
+ flex-direction: column;
277
+ align-items: flex-start;
278
+ gap: var(--checkbox-group-spacing);
279
+ }
280
+ }
281
+
282
+ @media (min-width: var(--cs-breakpoints-tablet)) {
283
+ .checkbox-container {
284
+ width: calc(var(--cs-spacing-scale-6xl) * 3.2);
285
+ }
286
+ }
287
+
288
+ @media (min-width: var(--cs-breakpoints-desktop)) {
289
+ .checkbox-container {
290
+ width: calc(var(--cs-spacing-scale-6xl) * 3.733);
291
+ }
292
+ }
293
+
294
+ /* High Contrast Mode Support */
295
+ @media (prefers-contrast: high) {
296
+ .checkbox {
297
+ border-width: var(--cs-accessibility-high-contrast-border-width);
298
+ }
299
+
300
+ .checkbox:focus {
301
+ outline: var(--cs-accessibility-high-contrast-outline-width) solid var(--checkbox-focus-ring-color);
302
+ outline-offset: var(--cs-accessibility-outline-offset);
303
+ }
304
+ }
305
+
306
+ /* Reduced Motion Support */
307
+ @media (prefers-reduced-motion: reduce) {
308
+ .checkbox,
309
+ .checkbox::after {
310
+ transition: none;
311
+ animation: none;
312
+ }
313
+
314
+ .checkbox:hover {
315
+ animation: none;
316
+ }
317
+
318
+ .checkbox:focus {
319
+ animation: none;
320
+ }
321
+ }
322
+
323
+ /* Print Styles */
324
+ @media print {
325
+ .checkbox {
326
+ border-color: var(--cs-print-border-color);
327
+ background-color: transparent;
328
+ }
329
+
330
+ .checkbox:checked {
331
+ background-color: var(--cs-print-border-color);
332
+ }
333
+
334
+ .checkbox__label {
335
+ color: var(--cs-print-text-color);
336
+ }
337
+
338
+ .checkbox__description {
339
+ color: var(--cs-print-text-secondary-color);
340
+ }
341
+ }
342
+
343
+ /* Checkbox Stories Layout Classes */
344
+ .checkbox-stories {
345
+ display: flex;
346
+ flex-direction: column;
347
+ gap: var(--cs-spacing-scale-lg);
348
+ padding: var(--cs-spacing-scale-lg);
349
+ background-color: var(--cs-colors-surface-background);
350
+ border-radius: var(--cs-border-radius-lg);
351
+ box-shadow: var(--cs-shadows-lg);
352
+ }
353
+
354
+ .checkbox-stories__section {
355
+ display: flex;
356
+ flex-direction: column;
357
+ gap: var(--cs-spacing-scale-md);
358
+ padding: var(--cs-spacing-scale-md);
359
+ background-color: var(--cs-colors-surface-surface);
360
+ border: var(--cs-border-width-normal) solid var(--cs-colors-surface-border);
361
+ border-radius: var(--cs-border-radius-md);
362
+ }
363
+
364
+ .checkbox-stories__title {
365
+ font-size: var(--cs-fonts-primary-sizes-lg);
366
+ font-weight: var(--cs-fonts-primary-weights-semibold);
367
+ line-height: var(--cs-fonts-primary-line-heights-tight);
368
+ color: var(--cs-colors-text-primary);
369
+ margin: 0 0 var(--cs-spacing-scale-sm) 0;
370
+ }
371
+
372
+ .checkbox-stories__description {
373
+ font-size: var(--cs-fonts-primary-sizes-sm);
374
+ line-height: var(--cs-fonts-primary-line-heights-normal);
375
+ color: var(--cs-colors-text-muted);
376
+ margin: 0 0 var(--cs-spacing-scale-md) 0;
377
+ }
378
+
379
+ .checkbox-stories__grid {
380
+ display: grid;
381
+ grid-template-columns: repeat(auto-fit, minmax(calc(var(--cs-spacing-scale-6xl) * 1.667), 1fr));
382
+ gap: var(--cs-spacing-scale-md);
383
+ }
384
+
385
+ .checkbox-stories__item {
386
+ display: flex;
387
+ align-items: center;
388
+ gap: var(--checkbox-label-spacing);
389
+ padding: var(--cs-spacing-scale-sm);
390
+ background-color: var(--cs-colors-surface-background);
391
+ border: var(--cs-border-width-normal) solid var(--cs-colors-surface-border);
392
+ border-radius: var(--cs-border-radius-sm);
393
+ transition: var(--cs-transitions-properties-colors);
394
+ }
395
+
396
+ .checkbox-stories__item:hover {
397
+ background-color: var(--cs-colors-interactive-hover);
398
+ border-color: var(--cs-colors-primary-300);
399
+ }
400
+
401
+ .checkbox-stories__code {
402
+ font-family: var(--cs-fonts-mono-family);
403
+ font-size: var(--cs-fonts-mono-sizes-xs);
404
+ line-height: var(--cs-fonts-mono-line-heights-normal);
405
+ color: var(--cs-colors-text-muted);
406
+ background-color: var(--cs-colors-surface-surface);
407
+ padding: var(--cs-spacing-scale-xs) var(--cs-spacing-scale-sm);
408
+ border-radius: var(--cs-border-radius-sm);
409
+ border: var(--cs-border-width-normal) solid var(--cs-colors-surface-border);
410
+ margin-top: var(--cs-spacing-scale-sm);
411
+ }
412
+
413
+ .checkbox-stories__status {
414
+ display: inline-flex;
415
+ align-items: center;
416
+ gap: var(--cs-spacing-scale-xs);
417
+ font-size: var(--cs-fonts-primary-sizes-xs);
418
+ font-weight: var(--cs-fonts-primary-weights-medium);
419
+ padding: var(--cs-spacing-scale-xs) var(--cs-spacing-scale-sm);
420
+ border-radius: var(--cs-border-radius-sm);
421
+ margin-top: var(--cs-spacing-scale-sm);
422
+ }
423
+
424
+ .checkbox-stories__status--success {
425
+ background-color: var(--cs-colors-semantic-success);
426
+ color: var(--cs-colors-text-on-primary);
427
+ }
428
+
429
+ .checkbox-stories__status--warning {
430
+ background-color: var(--cs-colors-semantic-warning);
431
+ color: var(--cs-colors-text-on-primary);
432
+ }
433
+
434
+ .checkbox-stories__status--error {
435
+ background-color: var(--cs-colors-semantic-error);
436
+ color: var(--cs-colors-text-on-primary);
437
+ }
438
+
439
+ .checkbox-stories__status--info {
440
+ background-color: var(--cs-colors-semantic-info);
441
+ color: var(--cs-colors-text-on-primary);
442
+ }
@@ -0,0 +1,9 @@
1
+ /* Base Components */
2
+ /* Core UI components used throughout the application */
3
+
4
+ @import './badge.css';
5
+ @import './button.css';
6
+ @import './card.css';
7
+ @import './checkbox.css';
8
+ @import './input.css';
9
+ @import './label.css';