@rakeyshgidwani/roger-ui-bank-theme-harvey 0.2.52 → 0.3.0

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 (125) hide show
  1. package/CHANGELOG.md +1 -1
  2. package/dist/components/ui/button.d.ts +3 -1
  3. package/dist/components/ui/button.d.ts.map +1 -1
  4. package/dist/components/ui/button.esm.js +3 -2
  5. package/dist/components/ui/button.js +3 -2
  6. package/dist/components/ui/layout/container.d.ts +57 -0
  7. package/dist/components/ui/layout/container.d.ts.map +1 -0
  8. package/dist/components/ui/layout/container.esm.js +173 -0
  9. package/dist/components/ui/layout/container.js +173 -0
  10. package/dist/components/ui/layout/index.d.ts +9 -0
  11. package/dist/components/ui/layout/index.d.ts.map +1 -0
  12. package/dist/components/ui/layout/index.esm.js +6 -0
  13. package/dist/components/ui/layout/index.js +6 -0
  14. package/dist/components/ui/layout/responsive-grid.d.ts +93 -0
  15. package/dist/components/ui/layout/responsive-grid.d.ts.map +1 -0
  16. package/dist/components/ui/layout/responsive-grid.esm.js +124 -0
  17. package/dist/components/ui/layout/responsive-grid.js +124 -0
  18. package/dist/components/ui/navigation/index.d.ts +2 -1
  19. package/dist/components/ui/navigation/index.d.ts.map +1 -1
  20. package/dist/components/ui/navigation/index.esm.js +1 -0
  21. package/dist/components/ui/navigation/index.js +1 -0
  22. package/dist/components/ui/navigation/progressive-navigation.d.ts +37 -0
  23. package/dist/components/ui/navigation/progressive-navigation.d.ts.map +1 -0
  24. package/dist/components/ui/navigation/progressive-navigation.esm.js +145 -0
  25. package/dist/components/ui/navigation/progressive-navigation.js +145 -0
  26. package/dist/components/ui/navigation/types.d.ts +21 -0
  27. package/dist/components/ui/navigation/types.d.ts.map +1 -1
  28. package/dist/hooks/use-adaptive-layout.d.ts +2 -1
  29. package/dist/hooks/use-adaptive-layout.d.ts.map +1 -1
  30. package/dist/hooks/use-adaptive-layout.esm.js +13 -8
  31. package/dist/hooks/use-adaptive-layout.js +13 -8
  32. package/dist/hooks/use-device.d.ts +3 -1
  33. package/dist/hooks/use-device.d.ts.map +1 -1
  34. package/dist/hooks/use-device.esm.js +14 -7
  35. package/dist/hooks/use-device.js +14 -7
  36. package/dist/index.d.ts +19 -4
  37. package/dist/index.d.ts.map +1 -1
  38. package/dist/index.esm.js +9 -4
  39. package/dist/index.js +9 -4
  40. package/dist/plugins/css-purge-optimizer.d.ts +25 -0
  41. package/dist/plugins/css-purge-optimizer.d.ts.map +1 -0
  42. package/dist/plugins/css-purge-optimizer.esm.js +414 -0
  43. package/dist/plugins/css-purge-optimizer.js +414 -0
  44. package/dist/plugins/performance-monitor.d.ts +29 -0
  45. package/dist/plugins/performance-monitor.d.ts.map +1 -0
  46. package/dist/plugins/performance-monitor.esm.js +221 -0
  47. package/dist/plugins/performance-monitor.js +221 -0
  48. package/dist/plugins/progressive-css-loader.d.ts +21 -0
  49. package/dist/plugins/progressive-css-loader.d.ts.map +1 -0
  50. package/dist/plugins/progressive-css-loader.esm.js +227 -0
  51. package/dist/plugins/progressive-css-loader.js +227 -0
  52. package/dist/plugins/theme-css-generator.d.ts.map +1 -1
  53. package/dist/plugins/theme-css-generator.esm.js +19 -6
  54. package/dist/plugins/theme-css-generator.js +19 -6
  55. package/dist/styles.css +1025 -110
  56. package/dist/theme.d.ts.map +1 -1
  57. package/dist/theme.esm.js +4 -1
  58. package/dist/theme.js +4 -1
  59. package/dist/themes/phase1-constants.d.ts +23 -0
  60. package/dist/themes/phase1-constants.d.ts.map +1 -0
  61. package/dist/themes/phase1-constants.esm.js +180 -0
  62. package/dist/themes/phase1-constants.js +180 -0
  63. package/dist/themes/themes/default.d.ts.map +1 -1
  64. package/dist/themes/themes/default.esm.js +4 -1
  65. package/dist/themes/themes/default.js +4 -1
  66. package/dist/themes/themes/harvey.d.ts.map +1 -1
  67. package/dist/themes/themes/harvey.esm.js +4 -1
  68. package/dist/themes/themes/harvey.js +4 -1
  69. package/dist/themes/types.d.ts +62 -0
  70. package/dist/themes/types.d.ts.map +1 -1
  71. package/dist/themes/validation.d.ts +17 -0
  72. package/dist/themes/validation.d.ts.map +1 -1
  73. package/dist/themes/validation.esm.js +218 -0
  74. package/dist/themes/validation.js +218 -0
  75. package/dist/types.d.ts +62 -0
  76. package/dist/types.d.ts.map +1 -1
  77. package/dist/utils/progressive-css-injector.d.ts +80 -0
  78. package/dist/utils/progressive-css-injector.d.ts.map +1 -0
  79. package/dist/utils/progressive-css-injector.esm.js +217 -0
  80. package/dist/utils/progressive-css-injector.js +217 -0
  81. package/package.json +1 -1
  82. package/src/components/ui/button.tsx +9 -6
  83. package/src/components/ui/layout/container.tsx +312 -0
  84. package/src/components/ui/layout/index.ts +10 -0
  85. package/src/components/ui/layout/responsive-grid.tsx +286 -0
  86. package/src/components/ui/navigation/index.ts +2 -0
  87. package/src/components/ui/navigation/progressive-navigation.tsx +453 -0
  88. package/src/components/ui/navigation/types.ts +41 -0
  89. package/src/hooks/use-adaptive-layout.ts +13 -9
  90. package/src/hooks/use-device.tsx +17 -10
  91. package/src/index.ts +19 -4
  92. package/src/plugins/css-purge-optimizer.ts +491 -0
  93. package/src/plugins/performance-monitor.ts +292 -0
  94. package/src/plugins/progressive-css-loader.ts +269 -0
  95. package/src/plugins/theme-css-generator.ts +22 -6
  96. package/src/styles/components/base/badge.css +2 -2
  97. package/src/styles/components/base/button.css +238 -35
  98. package/src/styles/components/base/card.css +2 -2
  99. package/src/styles/components/base/checkbox.css +3 -3
  100. package/src/styles/components/base/label.css +3 -3
  101. package/src/styles/components/feedback/skeleton.css +1 -1
  102. package/src/styles/components/feedback/toast.css +1 -1
  103. package/src/styles/components/index.css +3 -0
  104. package/src/styles/components/layout/container.css +466 -0
  105. package/src/styles/components/layout/index.css +5 -0
  106. package/src/styles/components/layout/responsive-grid.css +422 -0
  107. package/src/styles/components/navigation/breadcrumb.css +1 -1
  108. package/src/styles/components/navigation/index.css +1 -0
  109. package/src/styles/components/navigation/menu.css +2 -2
  110. package/src/styles/components/navigation/pagination.css +4 -4
  111. package/src/styles/components/navigation/progressive-navigation.css +633 -0
  112. package/src/styles/components/navigation/sidebar.css +4 -4
  113. package/src/styles/components/navigation/stepper.css +2 -2
  114. package/src/styles/components/navigation/tabs.css +1 -1
  115. package/src/styles/progressive.css +17 -0
  116. package/src/styles/themes/harvey.css +103 -19
  117. package/src/styles/utilities/semantic-input-system.css +7 -13
  118. package/src/theme.ts +5 -1
  119. package/src/themes/phase1-constants.ts +189 -0
  120. package/src/themes/themes/default.ts +5 -1
  121. package/src/themes/themes/harvey.ts +5 -1
  122. package/src/themes/types.ts +77 -1
  123. package/src/themes/validation.ts +249 -0
  124. package/src/types.ts +77 -1
  125. package/src/utils/progressive-css-injector.ts +254 -0
@@ -0,0 +1,466 @@
1
+ /* Container Component Styles */
2
+ /* Implements Phase 2 container max-widths and content width system */
3
+
4
+ /* Container CSS Variables */
5
+ :root {
6
+ /* Default Container Max-Widths */
7
+ --container-max-width-xs: 100%;
8
+ --container-max-width-sm: 640px;
9
+ --container-max-width-md: 768px;
10
+ --container-max-width-lg: 1024px;
11
+ --container-max-width-xl: 1280px;
12
+ --container-max-width-2xl: 1536px;
13
+ --container-max-width-3xl: 1792px;
14
+
15
+ /* Default Container Padding */
16
+ --container-padding-xs: var(--cs-spacing-scale-md);
17
+ --container-padding-sm: var(--cs-spacing-scale-lg);
18
+ --container-padding-md: var(--cs-spacing-scale-xl);
19
+ --container-padding-lg: var(--cs-spacing-scale-2xl);
20
+ --container-padding-xl: var(--cs-spacing-scale-2xl);
21
+ --container-padding-2xl: var(--cs-spacing-scale-3xl);
22
+ --container-padding-3xl: var(--cs-spacing-scale-3xl);
23
+
24
+ /* Character Width Constraints */
25
+ --container-character-width-min: 65ch;
26
+ --container-character-width-max: 75ch;
27
+ --container-character-width-optimal: 70ch;
28
+
29
+ /* Container Spacing */
30
+ --container-margin-x: auto;
31
+ --container-margin-y: 0;
32
+
33
+ /* Container Animation */
34
+ --container-transition: var(--cs-transitions-duration-normal) var(--cs-transitions-easing-ease);
35
+ }
36
+
37
+ /* Base Container */
38
+ .container {
39
+ width: 100%;
40
+ margin-left: var(--container-margin-x);
41
+ margin-right: var(--container-margin-x);
42
+ margin-top: var(--container-margin-y);
43
+ margin-bottom: var(--container-margin-y);
44
+ transition: var(--container-transition);
45
+ }
46
+
47
+ /* Centered Container */
48
+ .container--centered {
49
+ margin-left: auto;
50
+ margin-right: auto;
51
+ }
52
+
53
+ /* Container Types */
54
+
55
+ /* Standard Container - Uses breakpoint-based max-widths */
56
+ .container--container {
57
+ max-width: var(--container-max-width-xs);
58
+ padding-left: var(--container-padding-xs);
59
+ padding-right: var(--container-padding-xs);
60
+ }
61
+
62
+ /* Content Container - Optimized for reading */
63
+ .container--content {
64
+ max-width: var(--container-max-width-xs);
65
+ padding-left: var(--container-padding-xs);
66
+ padding-right: var(--container-padding-xs);
67
+ }
68
+
69
+ /* Fluid Container - No max-width constraints */
70
+ .container--fluid {
71
+ max-width: none;
72
+ padding-left: var(--container-padding-xs);
73
+ padding-right: var(--container-padding-xs);
74
+ }
75
+
76
+ /* Responsive Container Max-Widths */
77
+
78
+ /* xs breakpoint (475px): 100% width */
79
+ @media (max-width: 475px) {
80
+ .container--container,
81
+ .container--content {
82
+ max-width: var(--container-max-width-xs);
83
+ padding-left: var(--container-padding-xs);
84
+ padding-right: var(--container-padding-xs);
85
+ }
86
+ }
87
+
88
+ /* sm breakpoint (640px): 640px max-width */
89
+ @media (min-width: 640px) {
90
+ .container--container {
91
+ max-width: var(--container-max-width-sm);
92
+ padding-left: var(--container-padding-sm);
93
+ padding-right: var(--container-padding-sm);
94
+ }
95
+
96
+ .container--content {
97
+ max-width: var(--container-max-width-sm);
98
+ padding-left: var(--container-padding-sm);
99
+ padding-right: var(--container-padding-sm);
100
+ }
101
+
102
+ .container--fluid {
103
+ padding-left: var(--container-padding-sm);
104
+ padding-right: var(--container-padding-sm);
105
+ }
106
+ }
107
+
108
+ /* md breakpoint (768px): 768px max-width */
109
+ @media (min-width: 768px) {
110
+ .container--container {
111
+ max-width: var(--container-max-width-md);
112
+ padding-left: var(--container-padding-md);
113
+ padding-right: var(--container-padding-md);
114
+ }
115
+
116
+ .container--content {
117
+ max-width: var(--container-character-width-min);
118
+ padding-left: var(--container-padding-md);
119
+ padding-right: var(--container-padding-md);
120
+ }
121
+
122
+ .container--fluid {
123
+ padding-left: var(--container-padding-md);
124
+ padding-right: var(--container-padding-md);
125
+ }
126
+ }
127
+
128
+ /* lg breakpoint (1024px): 1024px max-width */
129
+ @media (min-width: 1024px) {
130
+ .container--container {
131
+ max-width: var(--container-max-width-lg);
132
+ padding-left: var(--container-padding-lg);
133
+ padding-right: var(--container-padding-lg);
134
+ }
135
+
136
+ .container--content {
137
+ max-width: var(--container-character-width-optimal);
138
+ padding-left: var(--container-padding-lg);
139
+ padding-right: var(--container-padding-lg);
140
+ }
141
+
142
+ .container--fluid {
143
+ padding-left: var(--container-padding-lg);
144
+ padding-right: var(--container-padding-lg);
145
+ }
146
+ }
147
+
148
+ /* xl breakpoint (1280px): 1280px max-width */
149
+ @media (min-width: 1280px) {
150
+ .container--container {
151
+ max-width: var(--container-max-width-xl);
152
+ padding-left: var(--container-padding-xl);
153
+ padding-right: var(--container-padding-xl);
154
+ }
155
+
156
+ .container--content {
157
+ max-width: var(--container-character-width-max);
158
+ padding-left: var(--container-padding-xl);
159
+ padding-right: var(--container-padding-xl);
160
+ }
161
+
162
+ .container--fluid {
163
+ padding-left: var(--container-padding-xl);
164
+ padding-right: var(--container-padding-xl);
165
+ }
166
+ }
167
+
168
+ /* 2xl breakpoint (1536px): 1536px max-width */
169
+ @media (min-width: 1536px) {
170
+ .container--container {
171
+ max-width: var(--container-max-width-2xl);
172
+ padding-left: var(--container-padding-2xl);
173
+ padding-right: var(--container-padding-2xl);
174
+ }
175
+
176
+ .container--content {
177
+ max-width: var(--container-character-width-max);
178
+ padding-left: var(--container-padding-2xl);
179
+ padding-right: var(--container-padding-2xl);
180
+ }
181
+
182
+ .container--fluid {
183
+ padding-left: var(--container-padding-2xl);
184
+ padding-right: var(--container-padding-2xl);
185
+ }
186
+ }
187
+
188
+ /* 3xl breakpoint (1920px): 1792px max-width */
189
+ @media (min-width: 1920px) {
190
+ .container--container {
191
+ max-width: var(--container-max-width-3xl);
192
+ padding-left: var(--container-padding-3xl);
193
+ padding-right: var(--container-padding-3xl);
194
+ }
195
+
196
+ .container--content {
197
+ max-width: var(--container-character-width-max);
198
+ padding-left: var(--container-padding-3xl);
199
+ padding-right: var(--container-padding-3xl);
200
+ }
201
+
202
+ .container--fluid {
203
+ padding-left: var(--container-padding-3xl);
204
+ padding-right: var(--container-padding-3xl);
205
+ }
206
+ }
207
+
208
+ /* Content Width Patterns */
209
+
210
+ /* Narrow Width - For reading content */
211
+ .container--width-narrow {
212
+ max-width: 100%;
213
+ }
214
+
215
+ @media (min-width: 768px) {
216
+ .container--width-narrow {
217
+ max-width: var(--container-character-width-min);
218
+ }
219
+ }
220
+
221
+ @media (min-width: 1024px) {
222
+ .container--width-narrow {
223
+ max-width: var(--container-character-width-optimal);
224
+ }
225
+ }
226
+
227
+ @media (min-width: 1280px) {
228
+ .container--width-narrow {
229
+ max-width: var(--container-character-width-max);
230
+ }
231
+ }
232
+
233
+ /* Standard Width - For general content */
234
+ .container--width-standard {
235
+ max-width: 100%;
236
+ }
237
+
238
+ @media (min-width: 768px) {
239
+ .container--width-standard {
240
+ max-width: 90%;
241
+ }
242
+ }
243
+
244
+ @media (min-width: 1024px) {
245
+ .container--width-standard {
246
+ max-width: 85%;
247
+ }
248
+ }
249
+
250
+ @media (min-width: 1280px) {
251
+ .container--width-standard {
252
+ max-width: 80%;
253
+ }
254
+ }
255
+
256
+ /* Wide Width - For data and dashboards */
257
+ .container--width-wide {
258
+ max-width: 100%;
259
+ }
260
+
261
+ @media (min-width: 1024px) {
262
+ .container--width-wide {
263
+ max-width: 95%;
264
+ }
265
+ }
266
+
267
+ @media (min-width: 1280px) {
268
+ .container--width-wide {
269
+ max-width: 90%;
270
+ }
271
+ }
272
+
273
+ /* Full Width - No constraints */
274
+ .container--width-full {
275
+ max-width: 100%;
276
+ }
277
+
278
+ /* Character Width Constraints */
279
+ .container--character-width {
280
+ max-width: var(--container-character-width-optimal);
281
+ }
282
+
283
+ @media (min-width: 768px) {
284
+ .container--character-width {
285
+ min-width: var(--container-character-width-min);
286
+ max-width: var(--container-character-width-max);
287
+ }
288
+ }
289
+
290
+ /* Breakout Container - Allows content to break out on small screens */
291
+ .container--breakout {
292
+ margin-left: calc(-1 * var(--container-padding-xs));
293
+ margin-right: calc(-1 * var(--container-padding-xs));
294
+ }
295
+
296
+ @media (min-width: 640px) {
297
+ .container--breakout {
298
+ margin-left: auto;
299
+ margin-right: auto;
300
+ }
301
+ }
302
+
303
+ /* Section Container Styles */
304
+ .section-container {
305
+ position: relative;
306
+ }
307
+
308
+ .section-container--full-width-bg {
309
+ position: relative;
310
+ }
311
+
312
+ .section-container--full-width-bg::before {
313
+ content: '';
314
+ position: absolute;
315
+ top: 0;
316
+ left: 50%;
317
+ right: 50%;
318
+ bottom: 0;
319
+ margin-left: -50vw;
320
+ margin-right: -50vw;
321
+ z-index: -1;
322
+ }
323
+
324
+ /* Section Background Variants */
325
+ .section-container--default::before {
326
+ background-color: var(--cs-colors-surface-background);
327
+ }
328
+
329
+ .section-container--muted::before {
330
+ background-color: var(--cs-colors-surface-muted);
331
+ }
332
+
333
+ .section-container--accent::before {
334
+ background-color: var(--cs-colors-surface-accent);
335
+ }
336
+
337
+ .section-container--inverse::before {
338
+ background-color: var(--cs-colors-surface-inverse);
339
+ }
340
+
341
+ /* Dark Mode Support */
342
+ .dark .section-container--default::before {
343
+ background-color: var(--cs-modes-dark-colors-surface-background);
344
+ }
345
+
346
+ .dark .section-container--muted::before {
347
+ background-color: var(--cs-modes-dark-colors-surface-muted);
348
+ }
349
+
350
+ .dark .section-container--accent::before {
351
+ background-color: var(--cs-modes-dark-colors-surface-accent);
352
+ }
353
+
354
+ .dark .section-container--inverse::before {
355
+ background-color: var(--cs-modes-dark-colors-surface-inverse);
356
+ }
357
+
358
+ /* High Contrast Mode Support */
359
+ @media (prefers-contrast: high) {
360
+ .container {
361
+ outline: 1px solid var(--cs-colors-border);
362
+ outline-offset: -1px;
363
+ }
364
+ }
365
+
366
+ /* Reduced Motion Support */
367
+ @media (prefers-reduced-motion: reduce) {
368
+ .container {
369
+ transition: none;
370
+ }
371
+ }
372
+
373
+ /* Print Styles */
374
+ @media print {
375
+ .container {
376
+ max-width: none;
377
+ padding: 0;
378
+ margin: 0;
379
+ }
380
+
381
+ .container--character-width {
382
+ max-width: none;
383
+ }
384
+
385
+ .section-container--full-width-bg::before {
386
+ display: none;
387
+ }
388
+ }
389
+
390
+ /* Container Utilities */
391
+
392
+ /* Padding utilities */
393
+ .container--no-padding {
394
+ padding-left: 0;
395
+ padding-right: 0;
396
+ }
397
+
398
+ .container--padding-sm {
399
+ --container-padding-xs: var(--cs-spacing-scale-sm);
400
+ --container-padding-sm: var(--cs-spacing-scale-md);
401
+ --container-padding-md: var(--cs-spacing-scale-lg);
402
+ --container-padding-lg: var(--cs-spacing-scale-xl);
403
+ --container-padding-xl: var(--cs-spacing-scale-xl);
404
+ --container-padding-2xl: var(--cs-spacing-scale-2xl);
405
+ --container-padding-3xl: var(--cs-spacing-scale-2xl);
406
+ }
407
+
408
+ .container--padding-lg {
409
+ --container-padding-xs: var(--cs-spacing-scale-lg);
410
+ --container-padding-sm: var(--cs-spacing-scale-xl);
411
+ --container-padding-md: var(--cs-spacing-scale-2xl);
412
+ --container-padding-lg: var(--cs-spacing-scale-3xl);
413
+ --container-padding-xl: var(--cs-spacing-scale-3xl);
414
+ --container-padding-2xl: var(--cs-spacing-scale-4xl);
415
+ --container-padding-3xl: var(--cs-spacing-scale-4xl);
416
+ }
417
+
418
+ /* Max-width utilities */
419
+ .container--max-width-sm {
420
+ max-width: var(--container-max-width-sm);
421
+ }
422
+
423
+ .container--max-width-md {
424
+ max-width: var(--container-max-width-md);
425
+ }
426
+
427
+ .container--max-width-lg {
428
+ max-width: var(--container-max-width-lg);
429
+ }
430
+
431
+ .container--max-width-xl {
432
+ max-width: var(--container-max-width-xl);
433
+ }
434
+
435
+ .container--max-width-2xl {
436
+ max-width: var(--container-max-width-2xl);
437
+ }
438
+
439
+ .container--max-width-3xl {
440
+ max-width: var(--container-max-width-3xl);
441
+ }
442
+
443
+ /* Focus Management */
444
+ .container:focus-within {
445
+ /* Enhanced focus visibility when container contains focused elements */
446
+ }
447
+
448
+ /* Container Queries for Adaptive Layouts */
449
+ @container (min-width: 768px) {
450
+ .container {
451
+ /* Adjust container behavior based on container size */
452
+ }
453
+ }
454
+
455
+ /* Accessibility Enhancements */
456
+ .container[role="main"] {
457
+ /* Main content container styles */
458
+ }
459
+
460
+ .container[role="article"] {
461
+ /* Article container styles */
462
+ }
463
+
464
+ .container[role="section"] {
465
+ /* Section container styles */
466
+ }
@@ -0,0 +1,5 @@
1
+ /* Layout Components */
2
+ /* Components for page layout, grid systems, and content organization */
3
+
4
+ @import './container.css';
5
+ @import './responsive-grid.css';