@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,337 @@
1
+ /* Skeleton Component Styles */
2
+ /* Semantic CSS architecture following BEM methodology */
3
+
4
+ /* ============================================================================ */
5
+ /* SKELETON BASE */
6
+ /* ============================================================================ */
7
+
8
+ .skeleton {
9
+ --skeleton-color: var(--cs-colors-surface-border);
10
+ --skeleton-bg-light: var(--cs-colors-surface-surface);
11
+ --skeleton-bg-dark: var(--cs-colors-surface-border);
12
+ --skeleton-border-radius: var(--cs-border-radius-sm);
13
+ --skeleton-border-radius-rounded: var(--cs-border-radius-md);
14
+ --skeleton-border-radius-full: var(--cs-border-radius-full);
15
+ --skeleton-transition: var(--cs-transitions-all);
16
+ }
17
+
18
+ .skeleton__base {
19
+ background-color: var(--skeleton-color);
20
+ border-radius: var(--skeleton-border-radius);
21
+ display: block;
22
+ overflow: hidden;
23
+ position: relative;
24
+ }
25
+
26
+ /* Skeleton variants */
27
+ .skeleton__base--rectangular {
28
+ border-radius: var(--skeleton-border-radius);
29
+ }
30
+
31
+ .skeleton__base--rounded {
32
+ border-radius: var(--skeleton-border-radius-rounded);
33
+ }
34
+
35
+ .skeleton__base--circular {
36
+ border-radius: var(--skeleton-border-radius-full);
37
+ }
38
+
39
+ .skeleton__base--text {
40
+ border-radius: var(--skeleton-border-radius);
41
+ }
42
+
43
+ /* Skeleton sizes */
44
+ .skeleton__base--sm {
45
+ font-size: var(--cs-fonts-sizes-sm);
46
+ }
47
+
48
+ .skeleton__base--md {
49
+ font-size: var(--cs-fonts-sizes-base);
50
+ }
51
+
52
+ .skeleton__base--lg {
53
+ font-size: var(--cs-fonts-sizes-lg);
54
+ }
55
+
56
+ .skeleton__base--xl {
57
+ font-size: var(--cs-fonts-sizes-xl);
58
+ }
59
+
60
+ /* ============================================================================ */
61
+ /* SKELETON ANIMATIONS */
62
+ /* ============================================================================ */
63
+
64
+ .skeleton__base--pulse {
65
+ animation: skeleton-pulse var(--cs-transitions-duration-slow) ease-in-out infinite;
66
+ }
67
+
68
+ .skeleton__base--wave {
69
+ background: linear-gradient(
70
+ 90deg,
71
+ var(--skeleton-bg-light) 0%,
72
+ var(--skeleton-bg-dark) 50%,
73
+ var(--skeleton-bg-light) 100%
74
+ );
75
+ background-size: 200% 100%;
76
+ animation: skeleton-wave var(--cs-transitions-durations-slow) linear infinite;
77
+ }
78
+
79
+ .skeleton__base--shimmer {
80
+ background: linear-gradient(
81
+ 90deg,
82
+ var(--skeleton-bg-light) 25%,
83
+ var(--skeleton-bg-dark) 50%,
84
+ var(--skeleton-bg-light) 75%
85
+ );
86
+ background-size: 200% 100%;
87
+ animation: skeleton-shimmer var(--cs-transitions-duration-slow) ease-in-out infinite;
88
+ }
89
+
90
+ .skeleton__base--none {
91
+ animation: none;
92
+ }
93
+
94
+ /* ============================================================================ */
95
+ /* SKELETON TEXT */
96
+ /* ============================================================================ */
97
+
98
+ .skeleton__text {
99
+ display: flex;
100
+ flex-direction: column;
101
+ width: 100%;
102
+ }
103
+
104
+ .skeleton__text-line {
105
+ background-color: var(--skeleton-color);
106
+ border-radius: var(--skeleton-border-radius);
107
+ width: 100%;
108
+ }
109
+
110
+ .skeleton__text-line:not(:last-child) {
111
+ margin-bottom: var(--cs-spacing-scale-2);
112
+ }
113
+
114
+ .skeleton__text-line--last {
115
+ width: var(--cs-percentage-75);
116
+ }
117
+
118
+ /* Text line sizes */
119
+ .skeleton__text-line--sm {
120
+ height: var(--cs-spacing-scale-3-5);
121
+ }
122
+
123
+ .skeleton__text-line--md {
124
+ height: var(--cs-spacing-scale-4);
125
+ }
126
+
127
+ .skeleton__text-line--lg {
128
+ height: var(--cs-spacing-scale-5);
129
+ }
130
+
131
+ /* Text spacing */
132
+ .skeleton__text--spacing-1 .skeleton__text-line:not(:last-child) {
133
+ margin-bottom: var(--cs-spacing-scale-1);
134
+ }
135
+
136
+ .skeleton__text--spacing-2 .skeleton__text-line:not(:last-child) {
137
+ margin-bottom: var(--cs-spacing-scale-2);
138
+ }
139
+
140
+ .skeleton__text--spacing-3 .skeleton__text-line:not(:last-child) {
141
+ margin-bottom: var(--cs-spacing-scale-3);
142
+ }
143
+
144
+ .skeleton__text--spacing-4 .skeleton__text-line:not(:last-child) {
145
+ margin-bottom: var(--cs-spacing-scale-4);
146
+ }
147
+
148
+ /* ============================================================================ */
149
+ /* SKELETON AVATAR */
150
+ /* ============================================================================ */
151
+
152
+ .skeleton__avatar {
153
+ flex-shrink: 0;
154
+ background-color: var(--skeleton-color);
155
+ }
156
+
157
+ /* Avatar sizes */
158
+ .skeleton__avatar--sm {
159
+ width: var(--cs-spacing-scale-8);
160
+ height: var(--cs-spacing-scale-8);
161
+ }
162
+
163
+ .skeleton__avatar--md {
164
+ width: var(--cs-spacing-scale-10);
165
+ height: var(--cs-spacing-scale-10);
166
+ }
167
+
168
+ .skeleton__avatar--lg {
169
+ width: var(--cs-spacing-scale-12);
170
+ height: var(--cs-spacing-scale-12);
171
+ }
172
+
173
+ .skeleton__avatar--xl {
174
+ width: var(--cs-spacing-scale-16);
175
+ height: var(--cs-spacing-scale-16);
176
+ }
177
+
178
+ /* Avatar shapes */
179
+ .skeleton__avatar--circular {
180
+ border-radius: var(--skeleton-border-radius-full);
181
+ }
182
+
183
+ .skeleton__avatar--square {
184
+ border-radius: var(--skeleton-border-radius);
185
+ }
186
+
187
+ .skeleton__avatar--rounded {
188
+ border-radius: var(--skeleton-border-radius-rounded);
189
+ }
190
+
191
+ /* ============================================================================ */
192
+ /* SKELETON BUTTON */
193
+ /* ============================================================================ */
194
+
195
+ .skeleton__button {
196
+ background-color: var(--skeleton-color);
197
+ border-radius: var(--skeleton-border-radius);
198
+ display: inline-block;
199
+ }
200
+
201
+ /* Button sizes */
202
+ .skeleton__button--sm {
203
+ height: var(--cs-spacing-scale-8);
204
+ padding: 0 var(--cs-spacing-scale-3);
205
+ min-width: var(--cs-spacing-scale-16);
206
+ }
207
+
208
+ .skeleton__button--md {
209
+ height: var(--cs-spacing-scale-10);
210
+ padding: 0 var(--cs-spacing-scale-4);
211
+ min-width: var(--cs-spacing-scale-20);
212
+ }
213
+
214
+ .skeleton__button--lg {
215
+ height: var(--cs-spacing-scale-12);
216
+ padding: 0 var(--cs-spacing-scale-6);
217
+ min-width: var(--cs-spacing-scale-24);
218
+ }
219
+
220
+ /* Button variants */
221
+ .skeleton__button--contained {
222
+ border-radius: var(--skeleton-border-radius);
223
+ }
224
+
225
+ .skeleton__button--outlined {
226
+ border: var(--cs-border-width-normal) solid var(--skeleton-color);
227
+ background-color: transparent;
228
+ }
229
+
230
+ .skeleton__button--text {
231
+ background-color: var(--skeleton-bg-light);
232
+ border-radius: var(--skeleton-border-radius);
233
+ }
234
+
235
+ .skeleton__button--full-width {
236
+ width: var(--cs-percentage-full);
237
+ }
238
+
239
+ /* ============================================================================ */
240
+ /* SKELETON CONTAINER */
241
+ /* ============================================================================ */
242
+
243
+ .skeleton__container {
244
+ display: flex;
245
+ flex-direction: column;
246
+ width: 100%;
247
+ }
248
+
249
+ .skeleton__container--spacing-1 > *:not(:last-child) {
250
+ margin-bottom: var(--cs-spacing-scale-1);
251
+ }
252
+
253
+ .skeleton__container--spacing-2 > *:not(:last-child) {
254
+ margin-bottom: var(--cs-spacing-scale-2);
255
+ }
256
+
257
+ .skeleton__container--spacing-3 > *:not(:last-child) {
258
+ margin-bottom: var(--cs-spacing-scale-3);
259
+ }
260
+
261
+ .skeleton__container--spacing-4 > *:not(:last-child) {
262
+ margin-bottom: var(--cs-spacing-scale-4);
263
+ }
264
+
265
+ /* ============================================================================ */
266
+ /* KEYFRAME ANIMATIONS */
267
+ /* ============================================================================ */
268
+
269
+ @keyframes skeleton-pulse {
270
+ 0%, 100% {
271
+ opacity: 1;
272
+ }
273
+ 50% {
274
+ opacity: var(--cs-opacity-50);
275
+ }
276
+ }
277
+
278
+ @keyframes skeleton-wave {
279
+ 0% {
280
+ background-position: calc(-1 * var(--cs-percentage-200)) 0;
281
+ }
282
+ 100% {
283
+ background-position: var(--cs-percentage-200) 0;
284
+ }
285
+ }
286
+
287
+ @keyframes skeleton-shimmer {
288
+ 0% {
289
+ background-position: calc(-1 * var(--cs-percentage-200)) 0;
290
+ }
291
+ 100% {
292
+ background-position: var(--cs-percentage-200) 0;
293
+ }
294
+ }
295
+
296
+ /* ============================================================================ */
297
+ /* RESPONSIVE DESIGN */
298
+ /* ============================================================================ */
299
+
300
+ @media (max-width: var(--cs-breakpoints-mobile)) {
301
+ .skeleton__button--lg {
302
+ height: var(--cs-spacing-scale-10);
303
+ padding: 0 var(--cs-spacing-scale-4);
304
+ }
305
+
306
+ .skeleton__avatar--xl {
307
+ width: var(--cs-spacing-scale-12);
308
+ height: var(--cs-spacing-scale-12);
309
+ }
310
+ }
311
+
312
+ /* ============================================================================ */
313
+ /* ACCESSIBILITY */
314
+ /* ============================================================================ */
315
+
316
+ .skeleton__base[aria-busy="true"] {
317
+ pointer-events: none;
318
+ }
319
+
320
+ /* High contrast mode support */
321
+ @media (prefers-contrast: high) {
322
+ .skeleton__base,
323
+ .skeleton__text-line,
324
+ .skeleton__avatar,
325
+ .skeleton__button {
326
+ border: var(--cs-border-width-normal) solid;
327
+ }
328
+ }
329
+
330
+ /* Reduced motion support */
331
+ @media (prefers-reduced-motion: reduce) {
332
+ .skeleton__base--pulse,
333
+ .skeleton__base--wave,
334
+ .skeleton__base--shimmer {
335
+ animation: none;
336
+ }
337
+ }