@actabldesign/bellhop-styles 0.0.3 → 0.0.4

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 (73) hide show
  1. package/README.md +3 -3
  2. package/dist/index.css +1505 -0
  3. package/llms.txt +206 -0
  4. package/package.json +27 -23
  5. package/project.json +29 -0
  6. package/rollup.config.js +29 -0
  7. package/{base → src/base}/normalize.css +4 -0
  8. package/src/index.css +22 -0
  9. package/src/tokens/bellhop-animations.css +392 -0
  10. package/src/tokens/bellhop-global.css +175 -0
  11. package/src/tokens/bellhop-icons.css +77 -0
  12. package/src/tokens/bellhop-layout.css +216 -0
  13. package/src/tokens/bellhop-primary-colors.css +96 -0
  14. package/src/tokens/bellhop-radius.css +14 -0
  15. package/src/tokens/bellhop-secondary-colors.css +154 -0
  16. package/src/tokens/bellhop-shadows.css +55 -0
  17. package/src/tokens/bellhop-spacing.css +66 -0
  18. package/src/tokens/bellhop-styles.css +174 -0
  19. package/src/tokens/bellhop-typography.css +112 -0
  20. package/src/tokens/colors.json +737 -0
  21. package/src/tokens/colors.mdx +59 -0
  22. package/src/tokens/index.css +17 -0
  23. package/components/appbar.css +0 -167
  24. package/components/autocomplete-menu.css +0 -142
  25. package/components/avatar-add.css +0 -112
  26. package/components/avatar.css +0 -253
  27. package/components/badge-dot.css +0 -78
  28. package/components/badge.css +0 -337
  29. package/components/bar-chart-card.css +0 -261
  30. package/components/bar-chart.css +0 -149
  31. package/components/breadcrumbs.css +0 -136
  32. package/components/button.css +0 -266
  33. package/components/chart-tooltip.css +0 -96
  34. package/components/checkbox-label.css +0 -53
  35. package/components/checkbox.css +0 -127
  36. package/components/container-footer.css +0 -22
  37. package/components/container.css +0 -17
  38. package/components/date-picker-content.css +0 -337
  39. package/components/date-picker.css +0 -103
  40. package/components/date-range-picker-content.css +0 -85
  41. package/components/date-range-picker.css +0 -72
  42. package/components/dropdown-menu.css +0 -204
  43. package/components/dropdown.css +0 -126
  44. package/components/empty-state.css +0 -83
  45. package/components/featured-icon.css +0 -194
  46. package/components/illustrations.css +0 -120
  47. package/components/input-autocomplete.css +0 -158
  48. package/components/input-number.css +0 -2
  49. package/components/input-verification.css +0 -137
  50. package/components/input.css +0 -374
  51. package/components/loader-spinner.css +0 -421
  52. package/components/logo-box.css +0 -85
  53. package/components/month-picker-content.css +0 -190
  54. package/components/month-picker.css +0 -83
  55. package/components/nav-item.css +0 -110
  56. package/components/notification.css +0 -262
  57. package/components/page-navigation.css +0 -294
  58. package/components/picker-menu.css +0 -43
  59. package/components/pie-chart-card.css +0 -213
  60. package/components/pie-chart.css +0 -80
  61. package/components/product-switcher.css +0 -127
  62. package/components/property-switcher.css +0 -95
  63. package/components/radio-button-label.css +0 -53
  64. package/components/radio-button.css +0 -134
  65. package/components/sidebar.css +0 -178
  66. package/components/skeleton-loader.css +0 -47
  67. package/components/tag.css +0 -214
  68. package/components/textarea.css +0 -211
  69. package/components/toggle.css +0 -298
  70. package/components/tooltip.css +0 -85
  71. package/components/trend-chart-card.css +0 -189
  72. package/components/trend-chart.css +0 -94
  73. package/index.css +0 -8115
@@ -1,337 +0,0 @@
1
- /* ==========================================================================
2
- DATE PICKER CONTENT COMPONENT - REUSABLE CALENDAR CONTENT
3
- ========================================================================== */
4
-
5
- @import '../tokens/bellhop-animations.css';
6
-
7
- /* Content area - reusable calendar content */
8
- .date-picker-content {
9
- width: 100%;
10
- font-family: var(--font-inter);
11
- display: flex;
12
- flex-direction: column;
13
- }
14
-
15
- /* Month Navigation */
16
- .month-navigation {
17
- display: flex;
18
- justify-content: space-between;
19
- align-items: center;
20
- gap: var(--spacing-sm);
21
- padding: var(--spacing-md);
22
- }
23
-
24
- /* Apply chevron rotation to button icon */
25
- .month-button .btn-icon-trailing .material-symbols-outlined {
26
- transition: transform var(--animation-duration-fast)
27
- var(--animation-ease-smooth);
28
- display: inline-block;
29
- }
30
-
31
- .month-button.dropdown-open .btn-icon-trailing .material-symbols-outlined {
32
- transform: rotate(180deg);
33
- }
34
-
35
- /* Inline Month Picker - constrain to container */
36
- .month-picker-inline {
37
- /* padding: 0 var(--spacing-md) var(--spacing-md); */
38
- flex: 1;
39
- overflow: hidden;
40
- max-height: 270px;
41
- animation: fadeIn 150ms ease-out;
42
- }
43
-
44
- @keyframes fadeIn {
45
- from {
46
- opacity: 0;
47
- transform: translateY(-10px);
48
- }
49
- to {
50
- opacity: 1;
51
- transform: translateY(0);
52
- }
53
- }
54
-
55
- .month-picker-inline.animate-fade-out {
56
- animation: fadeOut 150ms ease-out;
57
- }
58
-
59
- @keyframes fadeOut {
60
- from {
61
- opacity: 1;
62
- transform: translateY(0);
63
- }
64
- to {
65
- opacity: 0;
66
- transform: translateY(-10px);
67
- }
68
- }
69
-
70
- .nav-button {
71
- width: 32px;
72
- height: 32px;
73
- flex-shrink: 0;
74
- }
75
-
76
- .today-button {
77
- width: 32px;
78
- height: 32px;
79
- flex-shrink: 0;
80
- }
81
-
82
- /* Calendar Grid */
83
- .calendar-grid {
84
- padding: 0 var(--spacing-md) var(--spacing-md);
85
- flex: 1;
86
- }
87
-
88
-
89
- .day-names {
90
- display: grid;
91
- grid-template-columns: repeat(7, 1fr);
92
- gap: 0;
93
- margin-bottom: var(--spacing-sm);
94
- }
95
-
96
- .day-name {
97
- width: 40px;
98
- height: 40px;
99
- display: flex;
100
- align-items: center;
101
- justify-content: center;
102
- font-family: var(--font-inter);
103
- font-weight: var(--weight-medium);
104
- font-size: var(--text-sm-size);
105
- line-height: var(--text-sm-line);
106
- color: var(--color-neutral-500);
107
- }
108
-
109
- .date-cells {
110
- display: grid;
111
- grid-template-columns: repeat(7, 1fr);
112
- gap: var(--spacing-xxs);
113
- justify-items: center;
114
- align-items: center;
115
- }
116
-
117
- /* Calendar Cell States */
118
- .calendar-cell {
119
- width: 40px;
120
- height: 40px;
121
- display: flex;
122
- align-items: center;
123
- justify-content: center;
124
- position: relative;
125
- border-radius: var(--radius-full);
126
- font-family: var(--font-inter);
127
- font-weight: var(--weight-medium);
128
- font-size: var(--text-sm-size);
129
- line-height: var(--text-sm-line);
130
- cursor: pointer;
131
- transition: all var(--animation-duration-fast) var(--animation-easing-ease);
132
- }
133
-
134
- .calendar-cell.other-month .date-number {
135
- color: var(--color-neutral-400);
136
- }
137
-
138
- .calendar-cell.other-month.disabled .date-number {
139
- color: var(--color-neutral-300);
140
- }
141
-
142
- .calendar-cell.selectable .date-number {
143
- color: var(--color-neutral-500);
144
- }
145
-
146
- .calendar-cell.selectable:hover {
147
- background: var(--color-neutral-50);
148
- }
149
-
150
- .calendar-cell.selectable:hover .date-number {
151
- color: var(--color-neutral-800);
152
- }
153
-
154
- .calendar-cell.today {
155
- border: 2px solid var(--color-brand-600);
156
- }
157
-
158
- .calendar-cell.today .date-number {
159
- color: var(--color-neutral-500);
160
- }
161
-
162
- .calendar-cell.today:hover {
163
- background: var(--color-brand-100);
164
- }
165
-
166
- .calendar-cell.today:hover .date-number {
167
- color: var(--color-brand-600);
168
- }
169
-
170
- .calendar-cell.selected {
171
- background: var(--color-brand-600);
172
- }
173
-
174
- .calendar-cell.selected .date-number {
175
- color: var(--color-white);
176
- font-weight: var(--weight-semibold);
177
- }
178
-
179
- .calendar-cell.selected:hover {
180
- background: var(--color-brand-800);
181
- }
182
-
183
- .calendar-cell.selected:hover .date-number {
184
- color: var(--color-white);
185
- font-weight: var(--weight-semibold);
186
- }
187
-
188
- .calendar-cell.range-start {
189
- background: var(--color-brand-600);
190
- }
191
-
192
- .calendar-cell.range-start .date-number {
193
- color: var(--color-white);
194
- font-weight: var(--weight-semibold);
195
- }
196
-
197
- .calendar-cell.range-start:hover {
198
- background: var(--color-brand-800);
199
- }
200
-
201
- .calendar-cell.range-start:hover .date-number {
202
- color: var(--color-white);
203
- font-weight: var(--weight-semibold);
204
- }
205
-
206
- .calendar-cell.range-end {
207
- background: var(--color-brand-600);
208
- }
209
-
210
- .calendar-cell.range-end .date-number {
211
- color: var(--color-white);
212
- font-weight: var(--weight-semibold);
213
- }
214
-
215
- .calendar-cell.range-end:hover {
216
- background: var(--color-brand-800);
217
- }
218
-
219
- .calendar-cell.range-end:hover .date-number {
220
- color: var(--color-white);
221
- font-weight: var(--weight-semibold);
222
- }
223
-
224
- .calendar-cell.in-range {
225
- background: var(--color-neutral-100);
226
- border-radius: 0;
227
- position: relative;
228
- }
229
-
230
- .calendar-cell.in-range .date-number {
231
- color: var(--color-neutral-800);
232
- font-weight: var(--weight-medium);
233
- }
234
-
235
- .calendar-cell.in-range:hover {
236
- background: var(--color-neutral-200);
237
- }
238
-
239
- /* Fill gaps before in-range cells (except first in week) */
240
- .calendar-cell.in-range:not(:nth-child(7n-6))::before {
241
- content: '';
242
- position: absolute;
243
- top: 0;
244
- left: -12px;
245
- width: 12px;
246
- height: 100%;
247
- background: var(--color-neutral-100);
248
- z-index: -1;
249
- }
250
-
251
- .calendar-cell.in-range:not(:nth-child(7n-6)):hover::before {
252
- background: var(--color-neutral-200);
253
- }
254
-
255
- /* Create continuous range effect */
256
- .calendar-cell.range-start {
257
- position: relative;
258
- }
259
- .calendar-cell.range-start::before {
260
- content: '';
261
- position: absolute;
262
- top: 0;
263
- left: 12px;
264
- width: 32px;
265
- height: 100%;
266
- background: var(--color-neutral-100);
267
- z-index: -1;
268
- }
269
- .calendar-cell.range-end {
270
- position: relative;
271
- }
272
- .calendar-cell.range-end::after {
273
- content: '';
274
- position: absolute;
275
- top: 0;
276
- left: -5px;
277
- width: 30px;
278
- height: 100%;
279
- background: var(--color-neutral-100);
280
- z-index: -1;
281
- }
282
-
283
- /* Range start at end of week (Sunday) should have right rounded corners */
284
- .calendar-cell.range-start:nth-child(7n) {
285
- border-top-right-radius: var(--radius-full);
286
- border-bottom-right-radius: var(--radius-full);
287
- }
288
-
289
- /* Range end at start of week (Monday) should have left rounded corners */
290
- .calendar-cell.range-end:nth-child(7n-6) {
291
- border-top-left-radius: var(--radius-full);
292
- border-bottom-left-radius: var(--radius-full);
293
- }
294
-
295
- /* In-range dates at start of week should have left rounded corners */
296
- .calendar-cell.in-range:nth-child(7n-6) {
297
- border-top-left-radius: var(--radius-full);
298
- border-bottom-left-radius: var(--radius-full);
299
- }
300
-
301
- /* In-range dates at end of week should have right rounded corners */
302
- .calendar-cell.in-range:nth-child(7n) {
303
- border-top-right-radius: var(--radius-full);
304
- border-bottom-right-radius: var(--radius-full);
305
- }
306
-
307
- /* Special case: when start and end are the same day */
308
- .calendar-cell.range-start.range-end {
309
- border-radius: var(--radius-full);
310
- }
311
-
312
- .calendar-cell.today.in-range {
313
- background: var(--color-brand-50);
314
- border: 2px solid var(--color-brand-600);
315
- }
316
-
317
- .calendar-cell.today.in-range .date-number {
318
- color: var(--color-brand-600);
319
- font-weight: var(--weight-medium);
320
- }
321
-
322
- .calendar-cell.today.in-range:hover {
323
- background: var(--color-brand-100);
324
- }
325
-
326
- .calendar-cell.disabled {
327
- cursor: not-allowed;
328
- }
329
-
330
- .calendar-cell.disabled .date-number {
331
- color: var(--color-neutral-300);
332
- }
333
-
334
- .date-number {
335
- position: relative;
336
- z-index: 1;
337
- }
@@ -1,103 +0,0 @@
1
- /* ==========================================================================
2
- DATE PICKER COMPONENT - MAIN PICKER WITH VARIANTS
3
- ========================================================================== */
4
-
5
- @import '../tokens/bellhop-animations.css';
6
-
7
- .date-picker-container {
8
- position: relative;
9
- display: inline-block;
10
- }
11
-
12
- /* Chevron rotation animation for date picker buttons */
13
- .date-picker-trigger .btn-icon-trailing .material-symbols-outlined {
14
- transition: transform var(--animation-duration-fast)
15
- var(--animation-ease-smooth);
16
- display: inline-block;
17
- }
18
-
19
- .date-picker-trigger .dropdown-open .btn-icon-trailing .material-symbols-outlined {
20
- transform: rotate(180deg);
21
- }
22
-
23
- /* Trigger styles */
24
- .date-picker-trigger {
25
- cursor: pointer;
26
- }
27
-
28
- .date-picker-trigger:disabled {
29
- cursor: not-allowed;
30
- }
31
-
32
- /* Menu positioning */
33
- .date-picker-menu-container {
34
- position: absolute;
35
- top: 100%;
36
- left: 50%;
37
- transform: translateX(-50%);
38
- z-index: 1000;
39
- margin-top: var(--spacing-xs);
40
- width: 350px; /* Fixed width to match date picker content */
41
- }
42
-
43
- /* Date picker menu styles */
44
- .date-picker-menu {
45
- width: 100%;
46
- position: relative;
47
- }
48
-
49
- /* Backdrop */
50
- .date-picker-backdrop {
51
- position: fixed;
52
- top: 0;
53
- left: 0;
54
- width: 100%;
55
- height: 100%;
56
- z-index: 999;
57
- background: transparent;
58
- }
59
-
60
- /* Input field container */
61
- .input-field-container {
62
- position: relative;
63
- }
64
-
65
- /* Input field specific styling */
66
- .date-picker-trigger .input-text {
67
- /* Allow input interaction */
68
- }
69
-
70
- .date-picker-trigger .input-text input {
71
- cursor: text;
72
- }
73
-
74
- /* Style calendar icon when input is focused */
75
- .date-picker-trigger .input-text.input-focused .leading-icon {
76
- color: var(--color-brand-600) !important;
77
- }
78
-
79
- /* Calendar icon overlay for reliable click detection */
80
- .calendar-icon-overlay {
81
- position: absolute;
82
- bottom: 8px; /* Position from bottom to account for label */
83
- left: 16px; /* Adjust based on input padding */
84
- width: 24px;
85
- height: 24px;
86
- cursor: pointer;
87
- z-index: 10;
88
- /* Invisible overlay positioned over calendar icon */
89
- }
90
-
91
- /* Footer - following dropdown menu pattern with divider */
92
- .date-picker-footer {
93
- border-top: 1px solid var(--color-neutral-200);
94
- padding: var(--spacing-xl) var(--spacing-xl);
95
- background: var(--color-white);
96
- }
97
-
98
- .date-picker-actions {
99
- display: flex;
100
- justify-content: flex-end;
101
- gap: var(--spacing-lg);
102
- }
103
-
@@ -1,85 +0,0 @@
1
- /* ==========================================================================
2
- DATE RANGE PICKER CONTENT COMPONENT - DUAL CALENDAR LAYOUT
3
- ========================================================================== */
4
-
5
- @import '../tokens/bellhop-animations.css';
6
-
7
- .month-picker-content.scrollable {
8
- padding: 0 !important;
9
- }
10
-
11
- /* Main container */
12
- .date-range-picker-content {
13
- display: flex;
14
- flex-direction: column;
15
- font-family: var(--font-inter);
16
- width: fit-content; /* Fixed width for dual calendars */
17
- }
18
-
19
- /* Date pickers container - side by side layout */
20
- .date-range-picker-content .date-pickers {
21
- display: flex;
22
- flex-direction: row;
23
- width: 100%;
24
- position: relative;
25
- gap: var(--spacing-2xl);
26
- }
27
-
28
- /* Left picker - 328px width */
29
- .date-range-picker-content .left-picker {
30
- display: flex;
31
- flex-direction: column;
32
- width: 345px;
33
- }
34
-
35
- /* Right picker - 328px width */
36
- .date-range-picker-content .right-picker {
37
- display: flex;
38
- flex-direction: column;
39
- width: 345px;
40
- }
41
-
42
- /* Vertical divider between calendars */
43
- .date-range-picker-content .date-pickers::after {
44
- content: '';
45
- position: absolute;
46
- left: 50%;
47
- top: 50%;
48
- transform: translateX(-50%) translateY(-50%);
49
- width: 1px;
50
- height: 100%;
51
- background: var(--color-neutral-200);
52
- pointer-events: none;
53
- z-index: 1;
54
- }
55
-
56
- /* Override date-picker-content for proper alignment in dual layout */
57
- .date-range-picker-content .date-picker-content {
58
- width: 100%;
59
-
60
- }
61
-
62
-
63
- /* Responsive adjustments */
64
- @media (max-width: 768px) {
65
- .date-range-picker-content {
66
- width: 350px;
67
- }
68
-
69
- .date-range-picker-content .date-pickers {
70
- flex-direction: column;
71
- }
72
-
73
- .date-range-picker-content .left-picker {
74
- width: 100%;
75
- }
76
-
77
- .date-range-picker-content .right-picker {
78
- width: 100%;
79
- }
80
-
81
- /* Hide vertical divider on mobile */
82
- .date-range-picker-content .date-pickers::after {
83
- display: none;
84
- }
85
- }
@@ -1,72 +0,0 @@
1
- /* ==========================================================================
2
- DATE RANGE PICKER COMPONENT
3
- ========================================================================== */
4
-
5
- @import '../tokens/bellhop-animations.css';
6
-
7
- .picker-menu {
8
- width: fit-content !important;
9
- }
10
-
11
- .date-range-picker-container {
12
- position: relative;
13
- display: inline-block;
14
- }
15
-
16
- /* Trigger styles */
17
- .date-range-picker-trigger {
18
- cursor: pointer;
19
- }
20
-
21
- .date-range-picker-trigger:disabled {
22
- cursor: not-allowed;
23
- }
24
-
25
- /* Date range inputs container */
26
- .date-range-inputs {
27
- display: flex;
28
- gap: var(--spacing-md);
29
- align-items: flex-start;
30
- cursor: pointer;
31
- }
32
-
33
- .date-range-inputs input {
34
- cursor: pointer;
35
- }
36
-
37
- /* Menu positioning */
38
- .date-range-picker-menu-container {
39
- position: absolute;
40
- top: 100%;
41
- left: 50%;
42
- transform: translateX(-50%);
43
- z-index: 1000;
44
- margin-top: var(--spacing-xs);
45
- width: auto;
46
- }
47
-
48
- /* Backdrop */
49
- .date-range-picker-backdrop {
50
- position: fixed;
51
- top: 0;
52
- left: 0;
53
- width: 100%;
54
- height: 100%;
55
- z-index: 999;
56
- background: transparent;
57
- }
58
-
59
- /* Responsive adjustments */
60
- @media (max-width: 768px) {
61
- .date-range-inputs {
62
- flex-direction: column;
63
- gap: var(--spacing-sm);
64
- }
65
-
66
- .date-range-picker-menu-container {
67
- left: 0;
68
- transform: none;
69
- width: 100vw;
70
- max-width: 100vw;
71
- }
72
- }