@brickclay-org/ui 0.1.87 → 0.1.89

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.
@@ -1,24 +1,24 @@
1
1
  /* Input container */
2
- .input-container {
2
+ .bk-input-container {
3
3
  @apply flex flex-col gap-1.5;
4
4
  }
5
5
 
6
6
  /* Label */
7
- .input-label {
7
+ .bk-input-label {
8
8
  @apply text-sm font-medium text-[#141414];
9
9
  }
10
10
 
11
- .input-label-required {
11
+ .bk-input-label-required {
12
12
  @apply text-[#E7000B] ml-0.5;
13
13
  }
14
14
 
15
15
  /* Input Wrapper */
16
- .input-wrapper {
16
+ .bk-input-wrapper {
17
17
  @apply relative;
18
18
  }
19
19
 
20
20
  /* Input field base styles */
21
- .input-field {
21
+ .bk-input-field {
22
22
  @apply w-full py-2.5 px-3 text-sm border rounded-[4px] outline-none transition-all duration-200 bg-white;
23
23
  height: 40px;
24
24
  box-sizing: border-box;
@@ -27,116 +27,116 @@
27
27
  }
28
28
 
29
29
  /* Default/Initial State */
30
- .input-field--default {
30
+ .bk-input-field--default {
31
31
  @apply border-[#E3E3E7] text-[#141414] placeholder:text-[#6B7080];
32
32
  }
33
33
 
34
34
  /* Focused/Active State */
35
- .input-field--focused {
35
+ .bk-input-field--focused {
36
36
  @apply border-[#6B7080] text-[#141414];
37
37
  }
38
38
 
39
39
  /* Filled State */
40
- .input-field--filled {
40
+ .bk-input-field--filled {
41
41
  @apply border-[#E3E3E7] text-[#141414] bg-white;
42
42
  }
43
43
 
44
44
  /* Error State */
45
- .input-field--error {
45
+ .bk-input-field--error {
46
46
  @apply border-[#E7000B] text-[#141414];
47
47
  }
48
48
 
49
49
  /* Disabled State */
50
- .input-field--disabled {
50
+ .bk-input-field--disabled {
51
51
  @apply border-[#E3E3E7] bg-[#F4F4F6] text-[#A1A3AE] cursor-not-allowed;
52
52
  }
53
53
 
54
54
  /* Icon Input Field - Add padding-left for icon space */
55
- .input-field--icon {
56
- @apply pl-[48px];
55
+ .bk-input-field--icon {
56
+ @apply !pl-[48px];
57
57
  }
58
58
 
59
59
  /* Phone Input Field - Add padding-left for selector space */
60
- .input-field--phone {
60
+ .bk-input-field--phone {
61
61
  @apply !pl-[80px];
62
62
  }
63
63
 
64
64
  /* URL Input Field - Add padding-left for prefix space */
65
- .input-field--url {
66
- @apply pl-[72px];
65
+ .bk-input-field--url {
66
+ @apply !pl-[72px];
67
67
  }
68
68
 
69
69
  /* Currency Input Field - Add padding-left for the dollar icon box */
70
- .input-field--currency {
71
- @apply pl-[3.5rem];
70
+ .bk-input-field--currency {
71
+ @apply !pl-[3.5rem];
72
72
  }
73
73
 
74
74
  /* Icon Left - Add padding-left for icon space */
75
- .input-field--icon-left {
76
- @apply pl-[48px];
75
+ .bk-input-field--icon-left {
76
+ @apply !pl-[48px];
77
77
  }
78
78
 
79
79
  /* Icon Right - Add padding-right for icon space */
80
- .input-field--icon-right {
81
- @apply pr-[48px];
80
+ .bk-input-field--icon-right {
81
+ @apply !pr-[48px];
82
82
  }
83
83
 
84
84
  /* Password - Add padding-right for password toggle icon space */
85
- .input-field--password {
86
- @apply pr-[48px];
85
+ .bk-input-field--password {
86
+ @apply !pr-[48px];
87
87
  }
88
88
 
89
89
  /* When both icon and URL are present, adjust padding */
90
- .input-field--icon.input-field--url {
91
- @apply pl-[120px];
90
+ .bk-input-field--icon.bk-input-field--url {
91
+ @apply !pl-[120px];
92
92
  }
93
93
 
94
94
  /* When phone and icon are present */
95
- .input-field--phone.input-field--icon {
96
- @apply pl-[128px];
95
+ .bk-input-field--phone.bk-input-field--icon {
96
+ @apply !pl-[128px];
97
97
  }
98
98
 
99
99
  /* Phone Country Selector - Absolute Positioned */
100
- .input-phone-selector {
100
+ .bk-input-phone-selector {
101
101
  @apply absolute left-0 top-0 bottom-0 px-3 flex items-center gap-2 cursor-pointer border transition-colors duration-200;
102
102
  border-top-left-radius: 4px;
103
103
  border-bottom-left-radius: 4px;
104
104
  }
105
105
 
106
- .input-phone-selector-text {
106
+ .bk-input-phone-selector-text {
107
107
  @apply text-xs leading-[18px] text-[#A1A3AE] font-normal;
108
108
  }
109
109
 
110
- .input-phone-selector-arrow {
110
+ .bk-input-phone-selector-arrow {
111
111
  @apply w-4 h-4 transition-transform duration-200;
112
112
  }
113
113
 
114
- .input-phone-selector-arrow--open {
114
+ .bk-input-phone-selector-arrow--open {
115
115
  @apply rotate-180;
116
116
  }
117
117
 
118
118
  /* Phone Selector - State Specific Border Colors */
119
- .input-phone-selector--default {
119
+ .bk-input-phone-selector--default {
120
120
  @apply bg-white border-[#E3E3E7];
121
121
  }
122
122
 
123
- .input-phone-selector--focused {
123
+ .bk-input-phone-selector--focused {
124
124
  @apply bg-white border-[#6B7080];
125
125
  }
126
126
 
127
- .input-phone-selector--filled {
127
+ .bk-input-phone-selector--filled {
128
128
  @apply bg-white border-[#E3E3E7];
129
129
  }
130
130
 
131
- .input-phone-selector--error {
131
+ .bk-input-phone-selector--error {
132
132
  @apply bg-white border-[#E7000B];
133
133
  }
134
134
 
135
- .input-phone-selector--disabled {
135
+ .bk-input-phone-selector--disabled {
136
136
  @apply bg-[#F4F4F6] border-[#E3E3E7] cursor-not-allowed;
137
137
  }
138
138
 
139
- .input-phone-selector--disabled .input-phone-selector-text {
139
+ .bk-input-phone-selector--disabled .bk-input-phone-selector-text {
140
140
  @apply text-[#A1A3AE];
141
141
  }
142
142
 
@@ -150,156 +150,156 @@
150
150
  *
151
151
  * `position: static` is declared explicitly rather than just omitted: CSS cascades per-property,
152
152
  * and a consumer with a stale cached copy of this package (or their own pre-CDK fork of this
153
- * class name) could still have `position: absolute; top-full; mt-1` on `.input-phone-dropdown`
153
+ * class name) could still have `position: absolute; top-full; mt-1` on `.bk-input-phone-dropdown`
154
154
  * loaded globally elsewhere — if this rule simply stopped mentioning `position` instead of
155
155
  * stating `static`, that stale declaration would be the only one left, and it would win by
156
156
  * default. This exact mechanism broke this dropdown in a downstream consumer before it was
157
157
  * fixed here at the source.
158
158
  */
159
- .input-phone-dropdown {
159
+ .bk-input-phone-dropdown {
160
160
  @apply static left-auto top-auto mt-0 w-[80px] bg-white border border-[#E3E3E7] rounded-[4px] shadow-lg max-h-48 overflow-y-auto;
161
161
  }
162
162
 
163
- .input-phone-dropdown-item {
163
+ .bk-input-phone-dropdown-item {
164
164
  @apply w-full px-5 py-2.5 text-center text-xs leading-[18px] text-[#6B7080] hover:bg-[#F9FAFA] transition-colors duration-200 border-none bg-transparent truncate;
165
165
  }
166
166
 
167
- .input-phone-dropdown-item--active {
167
+ .bk-input-phone-dropdown-item--active {
168
168
  @apply bg-[#F9FAFA] text-[#141414];
169
169
  }
170
170
 
171
171
  /* Icon - Absolute Positioned Inside Input */
172
- .input-icon {
172
+ .bk-input-icon {
173
173
  @apply absolute left-3 top-1/2 -translate-y-1/2 w-6 h-6 pointer-events-none size-6;
174
174
  }
175
175
 
176
176
  /* When phone selector is present, adjust icon position */
177
- .input-wrapper--phone .input-icon {
177
+ .bk-input-wrapper--phone .bk-input-icon {
178
178
  @apply left-[80px];
179
179
  }
180
180
 
181
181
  /* Search Icon - Absolute Positioned Inside Input */
182
- .input-search-icon {
182
+ .bk-input-search-icon {
183
183
  @apply absolute top-1/2 -translate-y-1/2 w-5 h-5;
184
184
  }
185
185
 
186
186
  /* Search Icon Left */
187
- .input-search-icon--left {
187
+ .bk-input-search-icon--left {
188
188
  @apply left-3;
189
189
  }
190
190
 
191
191
  /* Search Icon Right */
192
- .input-search-icon--right {
192
+ .bk-input-search-icon--right {
193
193
  @apply right-3;
194
194
  }
195
195
 
196
196
  /* Password Toggle Button */
197
- .input-password-toggle {
197
+ .bk-input-password-toggle {
198
198
  @apply absolute right-3 top-1/2 -translate-y-1/2 w-5 h-5 p-0 border-0 bg-transparent cursor-pointer outline-none flex items-center justify-center;
199
199
  }
200
200
 
201
- .input-password-toggle:disabled {
201
+ .bk-input-password-toggle:disabled {
202
202
  @apply cursor-not-allowed opacity-50;
203
203
  }
204
204
 
205
- .input-password-toggle:hover:not(:disabled) {
205
+ .bk-input-password-toggle:hover:not(:disabled) {
206
206
  @apply opacity-70;
207
207
  }
208
208
 
209
209
  /* Password Icon */
210
- .input-password-icon {
210
+ .bk-input-password-icon {
211
211
  @apply w-5 h-5 pointer-events-none;
212
212
  }
213
213
 
214
214
  /* URL Prefix - Absolute Positioned Inside Input */
215
- .input-url-prefix {
215
+ .bk-input-url-prefix {
216
216
  @apply absolute left-0 top-0 bottom-0 py-2.5 px-3 text-sm text-[#6B7080] bg-white border flex items-center transition-colors duration-200 pointer-events-none;
217
217
  border-top-left-radius: 4px;
218
218
  border-bottom-left-radius: 4px;
219
219
  }
220
220
 
221
221
  /* When icon is present, adjust URL prefix position */
222
- .input-wrapper--icon .input-url-prefix {
222
+ .bk-input-wrapper--icon .bk-input-url-prefix {
223
223
  @apply left-[48px];
224
224
  }
225
225
 
226
226
  /* URL Prefix - State Specific Border Colors (matches input border) */
227
- .input-url-prefix--default {
227
+ .bk-input-url-prefix--default {
228
228
  @apply border-[#E3E3E7];
229
229
  }
230
230
 
231
- .input-url-prefix--focused {
231
+ .bk-input-url-prefix--focused {
232
232
  @apply border-[#6B7080];
233
233
  }
234
234
 
235
- .input-url-prefix--filled {
235
+ .bk-input-url-prefix--filled {
236
236
  @apply border-[#E3E3E7];
237
237
  }
238
238
 
239
- .input-url-prefix--error {
239
+ .bk-input-url-prefix--error {
240
240
  @apply border-[#E7000B];
241
241
  }
242
242
 
243
- .input-url-prefix--disabled {
243
+ .bk-input-url-prefix--disabled {
244
244
  @apply bg-[#F4F4F6] text-[#A1A3AE] border-r-[#E3E3E7];
245
245
  }
246
246
 
247
247
  /* Currency Icon - Bordered box like the URL prefix, holds the dollar icon */
248
- .input-currency-icon {
248
+ .bk-input-currency-icon {
249
249
  @apply absolute left-0 top-0 bottom-0 w-11 flex items-center justify-center bg-white border transition-colors duration-200 pointer-events-none;
250
250
  border-top-left-radius: 4px;
251
251
  border-bottom-left-radius: 4px;
252
252
  }
253
253
 
254
- .input-currency-icon img {
254
+ .bk-input-currency-icon img {
255
255
  @apply w-5 h-5;
256
256
  }
257
257
 
258
258
  /* Currency Icon - State Specific Border Colors (matches input border) */
259
- .input-currency-icon--default {
259
+ .bk-input-currency-icon--default {
260
260
  @apply border-[#E3E3E7];
261
261
  }
262
262
 
263
- .input-currency-icon--focused {
263
+ .bk-input-currency-icon--focused {
264
264
  @apply border-[#6B7080];
265
265
  }
266
266
 
267
- .input-currency-icon--filled {
267
+ .bk-input-currency-icon--filled {
268
268
  @apply border-[#E3E3E7];
269
269
  }
270
270
 
271
- .input-currency-icon--error {
271
+ .bk-input-currency-icon--error {
272
272
  @apply border-[#E7000B];
273
273
  }
274
274
 
275
- .input-currency-icon--disabled {
275
+ .bk-input-currency-icon--disabled {
276
276
  @apply bg-[#F4F4F6] border-[#E3E3E7];
277
277
  }
278
278
 
279
279
  /* Hint text */
280
- .input-hint {
280
+ .bk-input-hint {
281
281
  @apply text-xs text-[#868997] font-normal;
282
282
  }
283
283
 
284
284
  /* Error message */
285
- .input-error {
285
+ .bk-input-error {
286
286
  @apply text-xs text-[#E7000B] font-normal;
287
287
  }
288
288
 
289
289
  /* width */
290
- .input-container ::-webkit-scrollbar {
290
+ .bk-input-container ::-webkit-scrollbar {
291
291
  width: 4px;
292
292
  }
293
293
 
294
294
  /* Track */
295
- .input-container ::-webkit-scrollbar-track {
295
+ .bk-input-container ::-webkit-scrollbar-track {
296
296
  background: transparent;
297
297
  border-radius: 8px;
298
298
  width: 8px;
299
299
  }
300
300
 
301
301
  /* Handle */
302
- .input-container ::-webkit-scrollbar-thumb {
302
+ .bk-input-container ::-webkit-scrollbar-thumb {
303
303
  background: #D6D7DC;
304
304
  border-radius: 8px;
305
305
  transition: 0.3s ease-in-out;
@@ -307,106 +307,106 @@
307
307
  }
308
308
 
309
309
  /* Handle on hover */
310
- .input-container ::-webkit-scrollbar-thumb:hover {
310
+ .bk-input-container ::-webkit-scrollbar-thumb:hover {
311
311
  background: #909090;
312
312
  }
313
313
 
314
314
  /* ============================== Compact / sm size ============================== */
315
- .input-container--sm .input-label {
315
+ .bk-input-container--sm .bk-input-label {
316
316
  @apply text-xs;
317
317
  }
318
318
 
319
- .input-container--sm .input-hint,
320
- .input-container--sm .input-error {
319
+ .bk-input-container--sm .bk-input-hint,
320
+ .bk-input-container--sm .bk-input-error {
321
321
  @apply text-[11px];
322
322
  }
323
323
 
324
- .input-container--sm .input-field {
324
+ .bk-input-container--sm .bk-input-field {
325
325
  @apply py-1.5 px-2.5 text-xs;
326
326
  height: 32px;
327
327
  }
328
328
 
329
- .input-container--sm .input-field--icon,
330
- .input-container--sm .input-field--icon-left {
331
- @apply pl-8;
329
+ .bk-input-container--sm .bk-input-field--icon,
330
+ .bk-input-container--sm .bk-input-field--icon-left {
331
+ @apply !pl-8;
332
332
  }
333
333
 
334
- .input-container--sm .input-field--icon-right {
335
- @apply pr-8;
334
+ .bk-input-container--sm .bk-input-field--icon-right {
335
+ @apply !pr-8;
336
336
  }
337
337
 
338
- .input-container--sm .input-field--password {
339
- @apply pr-8;
338
+ .bk-input-container--sm .bk-input-field--password {
339
+ @apply !pr-8;
340
340
  }
341
341
 
342
- .input-container--sm .input-field--phone {
343
- @apply pl-16;
342
+ .bk-input-container--sm .bk-input-field--phone {
343
+ @apply !pl-16;
344
344
  }
345
345
 
346
- .input-container--sm .input-field--url {
347
- @apply pl-16;
346
+ .bk-input-container--sm .bk-input-field--url {
347
+ @apply !pl-16;
348
348
  }
349
349
 
350
- .input-container--sm .input-field--currency {
351
- @apply pl-9;
350
+ .bk-input-container--sm .bk-input-field--currency {
351
+ @apply !pl-9;
352
352
  }
353
353
 
354
- .input-container--sm .input-currency-icon {
354
+ .bk-input-container--sm .bk-input-currency-icon {
355
355
  @apply w-8;
356
356
  }
357
357
 
358
- .input-container--sm .input-currency-icon img {
358
+ .bk-input-container--sm .bk-input-currency-icon img {
359
359
  @apply w-4 h-4;
360
360
  }
361
361
 
362
- .input-container--sm .input-field--icon.input-field--url {
363
- @apply pl-24;
362
+ .bk-input-container--sm .bk-input-field--icon.bk-input-field--url {
363
+ @apply !pl-24;
364
364
  }
365
365
 
366
- .input-container--sm .input-field--phone.input-field--icon {
367
- @apply pl-24;
366
+ .bk-input-container--sm .bk-input-field--phone.bk-input-field--icon {
367
+ @apply !pl-24;
368
368
  }
369
369
 
370
- .input-container--sm .input-search-icon {
370
+ .bk-input-container--sm .bk-input-search-icon {
371
371
  @apply w-4 h-4;
372
372
  }
373
373
 
374
- .input-container--sm .input-search-icon--left {
374
+ .bk-input-container--sm .bk-input-search-icon--left {
375
375
  @apply left-2;
376
376
  }
377
377
 
378
- .input-container--sm .input-search-icon--right {
378
+ .bk-input-container--sm .bk-input-search-icon--right {
379
379
  @apply right-2;
380
380
  }
381
381
 
382
- .input-container--sm .input-password-toggle {
382
+ .bk-input-container--sm .bk-input-password-toggle {
383
383
  @apply right-2 w-4 h-4;
384
384
  }
385
385
 
386
- .input-container--sm .input-password-icon {
386
+ .bk-input-container--sm .bk-input-password-icon {
387
387
  @apply w-4 h-4;
388
388
  }
389
389
 
390
- .input-container--sm .input-phone-selector {
390
+ .bk-input-container--sm .bk-input-phone-selector {
391
391
  @apply px-2;
392
392
  }
393
393
 
394
- .input-container--sm .input-phone-selector-text {
394
+ .bk-input-container--sm .bk-input-phone-selector-text {
395
395
  @apply text-[11px];
396
396
  }
397
397
 
398
- .input-container--sm .input-url-prefix {
398
+ .bk-input-container--sm .bk-input-url-prefix {
399
399
  @apply py-1.5 px-2.5 text-xs;
400
400
  }
401
401
 
402
- .input-container--sm .input-phone-dropdown {
402
+ .bk-input-container--sm .bk-input-phone-dropdown {
403
403
  @apply w-[68px] mt-0.5;
404
404
  }
405
405
 
406
- .input-container--sm .input-phone-dropdown-item {
406
+ .bk-input-container--sm .bk-input-phone-dropdown-item {
407
407
  @apply px-3 py-1.5 text-[11px];
408
408
  }
409
409
 
410
- .input-container--sm .input-phone-selector-arrow {
410
+ .bk-input-container--sm .bk-input-phone-selector-arrow {
411
411
  @apply w-3 h-3;
412
412
  }
package/src/styles.css CHANGED
@@ -44,3 +44,6 @@
44
44
  @import './lib/menu/menu.css';
45
45
  @import './lib/ui-avatar-group/ui-avatar-group.css';
46
46
  @import './lib/table/table.css';
47
+ @import './lib/calender/components/custom-calendar/custom-calendar.component.css';
48
+ @import './lib/calender/components/scheduled-date-picker/scheduled-date-picker.component.css';
49
+ @import './lib/calender/components/time-picker/time-picker.component.css';