@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,467 @@
1
+ /* Story 14: Advanced Transition System with Cubic Bezier Curves */
2
+
3
+ /* ===== Advanced Transition System ===== */
4
+ .advanced-transition {
5
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
6
+ will-change: transform, opacity;
7
+ transform: translateZ(0);
8
+ -webkit-transform: translateZ(0);
9
+ backface-visibility: hidden;
10
+ -webkit-backface-visibility: hidden;
11
+ }
12
+
13
+ .advanced-transition-fast {
14
+ transition: all 0.15s cubic-bezier(0.4, 0, 0.2, 1);
15
+ will-change: transform, opacity;
16
+ transform: translateZ(0);
17
+ }
18
+
19
+ .advanced-transition-slow {
20
+ transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
21
+ will-change: transform, opacity;
22
+ transform: translateZ(0);
23
+ }
24
+
25
+ /* ===== Cubic Bezier Curve Support ===== */
26
+ .transition-ease-out {
27
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
28
+ }
29
+
30
+ .transition-ease-in {
31
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
32
+ }
33
+
34
+ .transition-ease-in-out {
35
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
36
+ }
37
+
38
+ .transition-ease-out-quint {
39
+ transition-timing-function: cubic-bezier(0.23, 1, 0.32, 1);
40
+ }
41
+
42
+ .transition-ease-in-quint {
43
+ transition-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
44
+ }
45
+
46
+ .transition-ease-in-out-quint {
47
+ transition-timing-function: cubic-bezier(0.86, 0, 0.07, 1);
48
+ }
49
+
50
+ .transition-ease-out-expo {
51
+ transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
52
+ }
53
+
54
+ .transition-ease-in-expo {
55
+ transition-timing-function: cubic-bezier(0.95, 0.05, 0.795, 0.035);
56
+ }
57
+
58
+ .transition-ease-in-out-expo {
59
+ transition-timing-function: cubic-bezier(1, 0, 0, 1);
60
+ }
61
+
62
+ .transition-ease-out-circ {
63
+ transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
64
+ }
65
+
66
+ .transition-ease-in-circ {
67
+ transition-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
68
+ }
69
+
70
+ .transition-ease-in-out-circ {
71
+ transition-timing-function: cubic-bezier(0.785, 0.135, 0.15, 0.86);
72
+ }
73
+
74
+ /* ===== Performance Optimization ===== */
75
+ .transition-performance {
76
+ will-change: transform, opacity;
77
+ transform: translateZ(0);
78
+ -webkit-transform: translateZ(0);
79
+ backface-visibility: hidden;
80
+ -webkit-backface-visibility: hidden;
81
+ perspective: 1000px;
82
+ -webkit-perspective: 1000px;
83
+ }
84
+
85
+ .transition-hardware-accelerated {
86
+ will-change: transform;
87
+ transform: translateZ(0);
88
+ -webkit-transform: translateZ(0);
89
+ backface-visibility: hidden;
90
+ -webkit-backface-visibility: hidden;
91
+ }
92
+
93
+ .transition-memory-optimized {
94
+ will-change: auto;
95
+ transform: translateZ(0);
96
+ -webkit-transform: translateZ(0);
97
+ }
98
+
99
+ /* ===== Device-Specific Optimization ===== */
100
+ @media (max-width: 768px) {
101
+ .transition-mobile-optimized {
102
+ transition-duration: 0.2s;
103
+ will-change: transform, opacity;
104
+ transform: translateZ(0);
105
+ -webkit-transform: translateZ(0);
106
+ }
107
+
108
+ .transition-mobile-fast {
109
+ transition-duration: 0.1s;
110
+ }
111
+
112
+ .transition-mobile-slow {
113
+ transition-duration: 0.3s;
114
+ }
115
+ }
116
+
117
+ @media (max-width: 480px) {
118
+ .transition-mobile-optimized {
119
+ transition-duration: 0.15s;
120
+ }
121
+
122
+ .transition-mobile-fast {
123
+ transition-duration: 0.08s;
124
+ }
125
+
126
+ .transition-mobile-slow {
127
+ transition-duration: 0.25s;
128
+ }
129
+ }
130
+
131
+ @media (min-width: 1024px) {
132
+ .transition-desktop-optimized {
133
+ transition-duration: 0.4s;
134
+ will-change: transform, opacity;
135
+ transform: translateZ(0);
136
+ -webkit-transform: translateZ(0);
137
+ }
138
+
139
+ .transition-desktop-fast {
140
+ transition-duration: 0.2s;
141
+ }
142
+
143
+ .transition-desktop-slow {
144
+ transition-duration: 0.6s;
145
+ }
146
+ }
147
+
148
+ /* ===== Accessibility Support ===== */
149
+ @media (prefers-reduced-motion: reduce) {
150
+ .advanced-transition,
151
+ .advanced-transition-fast,
152
+ .advanced-transition-slow,
153
+ .transition-ease-out,
154
+ .transition-ease-in,
155
+ .transition-ease-in-out,
156
+ .transition-ease-out-quint,
157
+ .transition-ease-in-quint,
158
+ .transition-ease-in-out-quint,
159
+ .transition-ease-out-expo,
160
+ .transition-ease-in-expo,
161
+ .transition-ease-in-out-expo,
162
+ .transition-ease-out-circ,
163
+ .transition-ease-in-circ,
164
+ .transition-ease-in-out-circ {
165
+ transition: none !important;
166
+ animation: none !important;
167
+ }
168
+
169
+ .transition-performance,
170
+ .transition-hardware-accelerated,
171
+ .transition-memory-optimized {
172
+ will-change: auto !important;
173
+ transform: none !important;
174
+ -webkit-transform: none !important;
175
+ }
176
+ }
177
+
178
+ /* ===== Transition Variants ===== */
179
+ .transition-transform {
180
+ transition-property: transform;
181
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
182
+ }
183
+
184
+ .transition-opacity {
185
+ transition-property: opacity;
186
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
187
+ }
188
+
189
+ .transition-colors {
190
+ transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;
191
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
192
+ }
193
+
194
+ .transition-shadow {
195
+ transition-property: box-shadow;
196
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
197
+ }
198
+
199
+ .transition-all {
200
+ transition-property: all;
201
+ transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
202
+ }
203
+
204
+ /* ===== Custom Transition Durations ===== */
205
+ .transition-duration-75 {
206
+ transition-duration: 75ms;
207
+ }
208
+
209
+ .transition-duration-100 {
210
+ transition-duration: 100ms;
211
+ }
212
+
213
+ .transition-duration-150 {
214
+ transition-duration: 150ms;
215
+ }
216
+
217
+ .transition-duration-200 {
218
+ transition-duration: 200ms;
219
+ }
220
+
221
+ .transition-duration-300 {
222
+ transition-duration: 300ms;
223
+ }
224
+
225
+ .transition-duration-500 {
226
+ transition-duration: 500ms;
227
+ }
228
+
229
+ .transition-duration-700 {
230
+ transition-duration: 700ms;
231
+ }
232
+
233
+ .transition-duration-1000 {
234
+ transition-duration: 1000ms;
235
+ }
236
+
237
+ /* ===== Transition Delays ===== */
238
+ .transition-delay-75 {
239
+ transition-delay: 75ms;
240
+ }
241
+
242
+ .transition-delay-100 {
243
+ transition-delay: 100ms;
244
+ }
245
+
246
+ .transition-delay-150 {
247
+ transition-delay: 150ms;
248
+ }
249
+
250
+ .transition-delay-200 {
251
+ transition-delay: 200ms;
252
+ }
253
+
254
+ .transition-delay-300 {
255
+ transition-delay: 300ms;
256
+ }
257
+
258
+ .transition-delay-500 {
259
+ transition-delay: 500ms;
260
+ }
261
+
262
+ .transition-delay-700 {
263
+ transition-delay: 700ms;
264
+ }
265
+
266
+ .transition-delay-1000 {
267
+ transition-delay: 1000ms;
268
+ }
269
+
270
+ /* ===== Advanced Animation Classes ===== */
271
+ .animate-fade-in {
272
+ animation: fadeIn 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
273
+ }
274
+
275
+ .animate-fade-out {
276
+ animation: fadeOut 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
277
+ }
278
+
279
+ .animate-slide-in-up {
280
+ animation: slideInUp 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
281
+ }
282
+
283
+ .animate-slide-in-down {
284
+ animation: slideInDown 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
285
+ }
286
+
287
+ .animate-slide-in-left {
288
+ animation: slideInLeft 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
289
+ }
290
+
291
+ .animate-slide-in-right {
292
+ animation: slideInRight 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
293
+ }
294
+
295
+ .animate-scale-in {
296
+ animation: scaleIn 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
297
+ }
298
+
299
+ .animate-scale-out {
300
+ animation: scaleOut 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
301
+ }
302
+
303
+ /* ===== Keyframe Animations ===== */
304
+ @keyframes fadeIn {
305
+ from {
306
+ opacity: 0;
307
+ }
308
+ to {
309
+ opacity: 1;
310
+ }
311
+ }
312
+
313
+ @keyframes fadeOut {
314
+ from {
315
+ opacity: 1;
316
+ }
317
+ to {
318
+ opacity: 0;
319
+ }
320
+ }
321
+
322
+ @keyframes slideInUp {
323
+ from {
324
+ transform: translateY(100%);
325
+ opacity: 0;
326
+ }
327
+ to {
328
+ transform: translateY(0);
329
+ opacity: 1;
330
+ }
331
+ }
332
+
333
+ @keyframes slideInDown {
334
+ from {
335
+ transform: translateY(-100%);
336
+ opacity: 0;
337
+ }
338
+ to {
339
+ transform: translateY(0);
340
+ opacity: 1;
341
+ }
342
+ }
343
+
344
+ @keyframes slideInLeft {
345
+ from {
346
+ transform: translateX(-100%);
347
+ opacity: 0;
348
+ }
349
+ to {
350
+ transform: translateX(0);
351
+ opacity: 1;
352
+ }
353
+ }
354
+
355
+ @keyframes slideInRight {
356
+ from {
357
+ transform: translateX(100%);
358
+ opacity: 0;
359
+ }
360
+ to {
361
+ transform: translateX(0);
362
+ opacity: 1;
363
+ }
364
+ }
365
+
366
+ @keyframes scaleIn {
367
+ from {
368
+ transform: scale(0);
369
+ opacity: 0;
370
+ }
371
+ to {
372
+ transform: scale(1);
373
+ opacity: 1;
374
+ }
375
+ }
376
+
377
+ @keyframes scaleOut {
378
+ from {
379
+ transform: scale(1);
380
+ opacity: 1;
381
+ }
382
+ to {
383
+ transform: scale(0);
384
+ opacity: 0;
385
+ }
386
+ }
387
+
388
+ /* ===== Staggered Animations ===== */
389
+ .animate-stagger-1 {
390
+ animation-delay: 0ms;
391
+ }
392
+
393
+ .animate-stagger-2 {
394
+ animation-delay: 100ms;
395
+ }
396
+
397
+ .animate-stagger-3 {
398
+ animation-delay: 200ms;
399
+ }
400
+
401
+ .animate-stagger-4 {
402
+ animation-delay: 300ms;
403
+ }
404
+
405
+ .animate-stagger-5 {
406
+ animation-delay: 400ms;
407
+ }
408
+
409
+ /* ===== Performance Monitoring Classes ===== */
410
+ .transition-monitored {
411
+ position: relative;
412
+ }
413
+
414
+ .transition-monitored::before {
415
+ content: '';
416
+ position: absolute;
417
+ top: 0;
418
+ left: 0;
419
+ right: 0;
420
+ bottom: 0;
421
+ background: rgba(0, 255, 0, 0.1);
422
+ opacity: 0;
423
+ transition: opacity 0.2s ease;
424
+ pointer-events: none;
425
+ z-index: 1000;
426
+ }
427
+
428
+ .transition-monitored.transitioning::before {
429
+ opacity: 1;
430
+ }
431
+
432
+ /* ===== Battery-Aware Transitions ===== */
433
+ @media (prefers-reduced-motion: no-preference) {
434
+ .transition-battery-aware {
435
+ transition-duration: 0.25s;
436
+ }
437
+
438
+ .transition-battery-aware.low-battery {
439
+ transition-duration: 0.15s;
440
+ }
441
+
442
+ .transition-battery-aware.critical-battery {
443
+ transition-duration: 0.1s;
444
+ }
445
+ }
446
+
447
+ /* ===== High-Performance Transitions ===== */
448
+ .transition-high-performance {
449
+ will-change: transform, opacity;
450
+ transform: translateZ(0);
451
+ -webkit-transform: translateZ(0);
452
+ backface-visibility: hidden;
453
+ -webkit-backface-visibility: hidden;
454
+ perspective: 1000px;
455
+ -webkit-perspective: 1000px;
456
+ transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
457
+ }
458
+
459
+ /* ===== Reduced Motion Overrides ===== */
460
+ @media (prefers-reduced-motion: reduce) {
461
+ .transition-high-performance {
462
+ will-change: auto;
463
+ transform: none;
464
+ -webkit-transform: none;
465
+ transition: none;
466
+ }
467
+ }