@nuralyui/datepicker 0.0.4 → 0.0.6

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/bundle.js +788 -0
  2. package/datepicker.component.d.ts +189 -0
  3. package/datepicker.component.js +668 -0
  4. package/datepicker.component.js.map +1 -0
  5. package/datepicker.constant.d.ts +60 -0
  6. package/datepicker.constant.js +60 -0
  7. package/datepicker.constant.js.map +1 -0
  8. package/datepicker.style.d.ts +17 -0
  9. package/datepicker.style.js +455 -0
  10. package/datepicker.style.js.map +1 -0
  11. package/datepicker.style.variables.d.ts +2 -0
  12. package/datepicker.style.variables.js +119 -0
  13. package/datepicker.style.variables.js.map +1 -0
  14. package/datepicker.types.d.ts +113 -10
  15. package/datepicker.types.js +67 -0
  16. package/datepicker.types.js.map +1 -1
  17. package/index.d.ts +3 -1
  18. package/index.js +3 -1
  19. package/index.js.map +1 -1
  20. package/package.json +16 -2
  21. package/react.d.ts +15 -2
  22. package/react.js +17 -4
  23. package/react.js.map +1 -1
  24. package/constants.d.ts +0 -2
  25. package/constants.d.ts.map +0 -1
  26. package/constants.js +0 -2
  27. package/constants.js.map +0 -1
  28. package/core/day.helper.d.ts +0 -5
  29. package/core/day.helper.d.ts.map +0 -1
  30. package/core/day.helper.js +0 -53
  31. package/core/day.helper.js.map +0 -1
  32. package/core/formatter.d.ts +0 -2
  33. package/core/formatter.d.ts.map +0 -1
  34. package/core/formatter.js +0 -9
  35. package/core/formatter.js.map +0 -1
  36. package/core/locale.helper.d.ts +0 -144
  37. package/core/locale.helper.d.ts.map +0 -1
  38. package/core/locale.helper.js +0 -151
  39. package/core/locale.helper.js.map +0 -1
  40. package/core/month.helper.d.ts +0 -3
  41. package/core/month.helper.d.ts.map +0 -1
  42. package/core/month.helper.js +0 -24
  43. package/core/month.helper.js.map +0 -1
  44. package/core/string.helper.d.ts +0 -2
  45. package/core/string.helper.d.ts.map +0 -1
  46. package/core/string.helper.js +0 -4
  47. package/core/string.helper.js.map +0 -1
  48. package/date-picker.component.d.ts +0 -80
  49. package/date-picker.component.d.ts.map +0 -1
  50. package/date-picker.component.js +0 -475
  51. package/date-picker.component.js.map +0 -1
  52. package/date-picker.style.d.ts +0 -2
  53. package/date-picker.style.d.ts.map +0 -1
  54. package/date-picker.style.js +0 -223
  55. package/date-picker.style.js.map +0 -1
  56. package/datepicker.types.d.ts.map +0 -1
  57. package/demo/date-picker-demo.d.ts +0 -18
  58. package/demo/date-picker-demo.d.ts.map +0 -1
  59. package/demo/date-picker-demo.js +0 -95
  60. package/demo/date-picker-demo.js.map +0 -1
  61. package/index.d.ts.map +0 -1
  62. package/react.d.ts.map +0 -1
  63. package/templates/days.template.d.ts +0 -4
  64. package/templates/days.template.d.ts.map +0 -1
  65. package/templates/days.template.js +0 -28
  66. package/templates/days.template.js.map +0 -1
  67. package/templates/headers.template.d.ts +0 -2
  68. package/templates/headers.template.d.ts.map +0 -1
  69. package/templates/headers.template.js +0 -5
  70. package/templates/headers.template.js.map +0 -1
  71. package/templates/months.template.d.ts +0 -6
  72. package/templates/months.template.d.ts.map +0 -1
  73. package/templates/months.template.js +0 -10
  74. package/templates/months.template.js.map +0 -1
  75. package/templates/years.template.d.ts +0 -6
  76. package/templates/years.template.d.ts.map +0 -1
  77. package/templates/years.template.js +0 -11
  78. package/templates/years.template.js.map +0 -1
  79. package/test/datepicker_test.d.ts +0 -2
  80. package/test/datepicker_test.d.ts.map +0 -1
  81. package/test/datepicker_test.js +0 -132
  82. package/test/datepicker_test.js.map +0 -1
@@ -0,0 +1,455 @@
1
+ import { css } from 'lit';
2
+ import { styleVariables } from './datepicker.style.variables.js';
3
+ /**
4
+ * Datepicker component styles for the Hybrid UI Library
5
+ *
6
+ * This file contains all the styling for the nr-datepicker component, including:
7
+ * - Base datepicker styles with CSS custom properties for theming
8
+ * - Multiple datepicker states (default, disabled, focused)
9
+ * - Size variations (small, medium, large)
10
+ * - Calendar styling and positioning
11
+ * - Date selection states and range highlighting
12
+ * - Focus, disabled, and validation states
13
+ * - Dark theme support
14
+ *
15
+ * The styling system uses CSS custom properties with fallbacks to allow
16
+ * for both global and local customization of datepicker appearance.
17
+ */
18
+ export const styles = css `
19
+ ${styleVariables}
20
+
21
+ :host {
22
+ width: fit-content;
23
+ display: block;
24
+ font-family: var(--nuraly-datepicker-font-family, var(--nuraly-datepicker-local-font-family));
25
+ }
26
+
27
+ /* Host attribute selectors for configuration */
28
+ :host([disabled]) {
29
+ opacity: var(--nuraly-datepicker-disabled-opacity, var(--nuraly-datepicker-local-disabled-opacity));
30
+ pointer-events: none;
31
+ }
32
+
33
+ :host([range]) {
34
+ --nuraly-datepicker-local-calendar-width: 600px;
35
+ }
36
+
37
+ /* Container styles */
38
+ .datepicker-container {
39
+ position: relative;
40
+ display: block;
41
+ width: var(--nuraly-datepicker-width, var(--nuraly-datepicker-local-width));
42
+ font-family: var(--nuraly-datepicker-font-family, var(--nuraly-datepicker-local-font-family));
43
+ /* Allow calendar to overflow container without causing scroll */
44
+ overflow: visible;
45
+ }
46
+
47
+ .datepicker-disabled {
48
+ opacity: var(--nuraly-datepicker-disabled-opacity, var(--nuraly-datepicker-local-disabled-opacity));
49
+ pointer-events: none;
50
+ }
51
+
52
+ /* Size variants */
53
+ .datepicker-size-small {
54
+ --nuraly-datepicker-local-day-size: var(--nuraly-datepicker-local-small-day-size);
55
+ --nuraly-datepicker-local-font-size: var(--nuraly-datepicker-local-small-font-size);
56
+ }
57
+
58
+ .datepicker-size-medium {
59
+ --nuraly-datepicker-local-day-size: var(--nuraly-datepicker-local-medium-day-size);
60
+ --nuraly-datepicker-local-font-size: var(--nuraly-datepicker-local-medium-font-size);
61
+ }
62
+
63
+ .datepicker-size-large {
64
+ --nuraly-datepicker-local-day-size: var(--nuraly-datepicker-local-large-day-size);
65
+ --nuraly-datepicker-local-font-size: var(--nuraly-datepicker-local-large-font-size);
66
+ }
67
+
68
+ /* Calendar container */
69
+ .calendar-container {
70
+ position: fixed;
71
+ z-index: var(--nuraly-datepicker-calendar-z-index, var(--nuraly-datepicker-local-calendar-z-index));
72
+ user-select: none;
73
+ padding: var(--nuraly-datepicker-calendar-padding, var(--nuraly-datepicker-local-calendar-padding));
74
+ width: var(--nuraly-datepicker-calendar-width, var(--nuraly-datepicker-local-calendar-width));
75
+ height: var(--nuraly-datepicker-calendar-height, var(--nuraly-datepicker-local-calendar-height));
76
+ background-color: var(--nuraly-datepicker-background-color, var(--nuraly-datepicker-local-background-color));
77
+ border: var(--nuraly-datepicker-border-width, var(--nuraly-datepicker-local-border-width)) solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));
78
+ border-radius: var(--nuraly-datepicker-border-radius, var(--nuraly-datepicker-local-border-radius));
79
+ box-shadow: var(--nuraly-datepicker-box-shadow, var(--nuraly-datepicker-local-box-shadow));
80
+ animation: calendar-slide-in var(--nuraly-datepicker-calendar-animation-duration, var(--nuraly-datepicker-local-calendar-animation-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));
81
+ }
82
+
83
+ .calendar-range {
84
+ width: calc(var(--nuraly-datepicker-calendar-width, var(--nuraly-datepicker-local-calendar-width)) * 2);
85
+ }
86
+
87
+ /* Calendar header */
88
+ .calendar-header {
89
+ display: flex;
90
+ align-items: center;
91
+ justify-content: space-between;
92
+ padding: var(--nuraly-datepicker-header-padding, var(--nuraly-datepicker-local-header-padding));
93
+ height: var(--nuraly-datepicker-header-height, var(--nuraly-datepicker-local-header-height));
94
+ border-bottom: var(--nuraly-datepicker-border-width, var(--nuraly-datepicker-local-border-width)) solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));
95
+ background: var(--nuraly-datepicker-header-background, var(--nuraly-datepicker-local-header-background));
96
+ }
97
+
98
+ .year-month-header {
99
+ display: flex;
100
+ align-items: center;
101
+ gap: 8px;
102
+ flex: 1;
103
+ justify-content: center;
104
+ }
105
+
106
+ .current-year-container {
107
+ display: inline-flex;
108
+ align-items: center;
109
+ gap: calc(var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap)) / 2);
110
+ }
111
+
112
+ .year-icons-toggler {
113
+ display: flex;
114
+ flex-direction: column;
115
+ gap: 2px;
116
+ }
117
+
118
+ /* Calendar content */
119
+ .calendar-content {
120
+ padding: var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap));
121
+ padding-bottom: calc(var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap)) / 2);
122
+ }
123
+
124
+ /* Button customizations */
125
+ nr-button {
126
+ --nuraly-button-border-color: transparent;
127
+ --nuraly-button-background-color: transparent;
128
+ --nuraly-button-text-color: var(--nuraly-datepicker-text-color, var(--nuraly-datepicker-local-text-color));
129
+ --nuraly-button-hover-background-color: var(--nuraly-datepicker-hover-color, var(--nuraly-datepicker-local-hover-color));
130
+ --nuraly-button-transition-duration: var(--nuraly-datepicker-transition-duration, var(--nuraly-datepicker-local-transition-duration));
131
+ }
132
+
133
+ .toggle-year-view,
134
+ .toggle-month-view {
135
+ --nuraly-button-font-weight: var(--nuraly-datepicker-header-font-weight, var(--nuraly-datepicker-local-header-font-weight));
136
+ --nuraly-button-font-size: var(--nuraly-datepicker-header-font-size, var(--nuraly-datepicker-local-header-font-size));
137
+ --nuraly-button-padding: 4px 20px 4px 8px;
138
+ --nuraly-button-border-radius: 6px;
139
+ --nuraly-button-border: 1px solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));
140
+ --nuraly-button-background-color: #ffffff;
141
+ --nuraly-button-hover-border-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));
142
+ --nuraly-button-hover-background-color: #ffffff;
143
+ --nuraly-button-active-background-color: var(--nuraly-datepicker-hover-background, var(--nuraly-datepicker-local-hover-background));
144
+ --nuraly-button-transition: all 0.2s;
145
+ position: relative;
146
+ min-width: 80px;
147
+ }
148
+
149
+ .toggle-month-view::after,
150
+ .toggle-year-view::after {
151
+ content: '';
152
+ position: absolute;
153
+ right: 6px;
154
+ top: 50%;
155
+ transform: translateY(-50%);
156
+ width: 0;
157
+ height: 0;
158
+ border-left: 3px solid transparent;
159
+ border-right: 3px solid transparent;
160
+ border-top: 3px solid rgba(0, 0, 0, 0.45);
161
+ transition: all 0.2s;
162
+ }
163
+
164
+ .toggle-month-view:hover::after,
165
+ .toggle-year-view:hover::after {
166
+ border-top-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));
167
+ }
168
+
169
+ .next-year,
170
+ .previous-year {
171
+ --nuraly-button-width: 16px;
172
+ --nuraly-button-height: 12px;
173
+ --nuraly-button-padding: 0;
174
+ --nuraly-button-min-width: auto;
175
+ --nuraly-button-border-radius: 2px;
176
+ --nuraly-button-text-color: rgba(0, 0, 0, 0.45);
177
+ --nuraly-button-hover-text-color: rgba(0, 0, 0, 0.85);
178
+ --nuraly-button-hover-background-color: rgba(0, 0, 0, 0.06);
179
+ }
180
+
181
+ .header-prev-button,
182
+ .header-next-button {
183
+ --nuraly-button-width: 24px;
184
+ --nuraly-button-height: 24px;
185
+ --nuraly-button-padding: 0;
186
+ --nuraly-button-min-width: auto;
187
+ --nuraly-button-border-radius: 2px;
188
+ --nuraly-button-text-color: rgba(0, 0, 0, 0.45);
189
+ --nuraly-button-hover-text-color: rgba(0, 0, 0, 0.85);
190
+ --nuraly-button-hover-background-color: rgba(0, 0, 0, 0.06);
191
+ --nuraly-button-transition: all 0.2s;
192
+ }
193
+
194
+ .header-prev-button:hover,
195
+ .header-next-button:hover {
196
+ --nuraly-button-background-color: rgba(0, 0, 0, 0.06);
197
+ }
198
+
199
+ /* Placement variants */
200
+ .placement-top {
201
+ animation: calendar-slide-down var(--nuraly-datepicker-calendar-animation-duration, var(--nuraly-datepicker-local-calendar-animation-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));
202
+ }
203
+
204
+ .placement-bottom {
205
+ animation: calendar-slide-up var(--nuraly-datepicker-calendar-animation-duration, var(--nuraly-datepicker-local-calendar-animation-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));
206
+ }
207
+
208
+ /* Animations */
209
+ @keyframes calendar-slide-in {
210
+ from {
211
+ opacity: 0;
212
+ transform: translateY(-10px);
213
+ }
214
+ to {
215
+ opacity: 1;
216
+ transform: translateY(0);
217
+ }
218
+ }
219
+
220
+ @keyframes calendar-slide-up {
221
+ from {
222
+ opacity: 0;
223
+ transform: translateY(10px);
224
+ }
225
+ to {
226
+ opacity: 1;
227
+ transform: translateY(0);
228
+ }
229
+ }
230
+
231
+ @keyframes calendar-slide-down {
232
+ from {
233
+ opacity: 0;
234
+ transform: translateY(-10px);
235
+ }
236
+ to {
237
+ opacity: 1;
238
+ transform: translateY(0);
239
+ }
240
+ }
241
+
242
+ /* Legacy compatibility styles */
243
+ .calendar-container-range {
244
+ width: 600px;
245
+ }
246
+
247
+ /* Accessibility improvements */
248
+ .calendar-container:focus-within {
249
+ outline: var(--nuraly-datepicker-focus-border-width, var(--nuraly-datepicker-local-focus-border-width)) solid var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));
250
+ outline-offset: 2px;
251
+ }
252
+
253
+ /* Focus management */
254
+ [tabindex="-1"]:focus {
255
+ outline: none;
256
+ }
257
+
258
+ /* Days grid layout */
259
+ .days-grid {
260
+ display: flex;
261
+ flex-direction: column;
262
+ width: 100%;
263
+ }
264
+
265
+ .weekdays-header {
266
+ display: grid;
267
+ grid-template-columns: repeat(7, 1fr);
268
+ gap: 1px;
269
+ margin-bottom: var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap));
270
+ }
271
+
272
+ .weekday-header {
273
+ display: flex;
274
+ align-items: center;
275
+ justify-content: center;
276
+ padding: 8px 4px;
277
+ font-size: 12px;
278
+ font-weight: 500;
279
+ color: var(--nuraly-datepicker-weekday-color, var(--nuraly-datepicker-local-weekday-color));
280
+ text-align: center;
281
+ }
282
+
283
+ .days-body {
284
+ display: grid;
285
+ grid-template-columns: repeat(7, 1fr);
286
+ gap: 1px;
287
+ }
288
+
289
+ /* Day cell base styles */
290
+ .day-cell {
291
+ width: var(--nuraly-datepicker-day-size, var(--nuraly-datepicker-local-day-size));
292
+ height: var(--nuraly-datepicker-day-size, var(--nuraly-datepicker-local-day-size));
293
+ display: flex;
294
+ align-items: center;
295
+ justify-content: center;
296
+ border-radius: 6px;
297
+ cursor: pointer;
298
+ transition: all var(--nuraly-datepicker-transition-duration, var(--nuraly-datepicker-local-transition-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));
299
+ font-size: var(--nuraly-datepicker-day-font-size, var(--nuraly-datepicker-local-day-font-size));
300
+ font-weight: 400;
301
+ color: var(--nuraly-datepicker-text-color, var(--nuraly-datepicker-local-text-color));
302
+ margin: 1px;
303
+ position: relative;
304
+ }
305
+
306
+ .day-cell:hover:not(.disabled):not(.selected) {
307
+ background-color: var(--nuraly-datepicker-hover-color, var(--nuraly-datepicker-local-hover-color));
308
+ scale: 1.05;
309
+ }
310
+
311
+ .day-cell.selected {
312
+ background-color: var(--nuraly-datepicker-selected-color, var(--nuraly-datepicker-local-selected-color)) !important;
313
+ color: var(--nuraly-datepicker-selected-text-color, var(--nuraly-datepicker-local-selected-text-color)) !important;
314
+ font-weight: 600;
315
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
316
+ }
317
+
318
+ .day-cell.today {
319
+ border: 2px solid var(--nuraly-datepicker-today-color, var(--nuraly-datepicker-local-today-color));
320
+ font-weight: 600;
321
+ }
322
+
323
+ .day-cell.today.selected {
324
+ border-color: var(--nuraly-datepicker-selected-text-color, var(--nuraly-datepicker-local-selected-text-color));
325
+ }
326
+
327
+ .day-cell.disabled {
328
+ background-color: var(--nuraly-datepicker-disabled-color, var(--nuraly-datepicker-local-disabled-color));
329
+ color: var(--nuraly-datepicker-disabled-text-color, var(--nuraly-datepicker-local-disabled-text-color));
330
+ cursor: not-allowed;
331
+ pointer-events: none;
332
+ opacity: 0.4;
333
+ }
334
+
335
+ .day-cell.in-range {
336
+ background-color: var(--nuraly-datepicker-range-color, var(--nuraly-datepicker-local-range-color));
337
+ border-radius: 0;
338
+ }
339
+
340
+ .day-cell.in-range:first-of-type {
341
+ border-radius: 6px 0 0 6px;
342
+ }
343
+
344
+ .day-cell.in-range:last-of-type {
345
+ border-radius: 0 6px 6px 0;
346
+ }
347
+
348
+ .day-cell.in-range.selected {
349
+ border-radius: 6px;
350
+ }
351
+
352
+ /* Error states */
353
+ :host([state="error"]) .datepicker-container {
354
+ --nuraly-datepicker-local-input-border-color: var(--nuraly-datepicker-error-color, var(--nuraly-datepicker-local-error-color));
355
+ }
356
+
357
+ :host([state="warning"]) .datepicker-container {
358
+ --nuraly-datepicker-local-input-border-color: var(--nuraly-datepicker-warning-color, var(--nuraly-datepicker-local-warning-color));
359
+ }
360
+
361
+ :host([state="success"]) .datepicker-container {
362
+ --nuraly-datepicker-local-input-border-color: var(--nuraly-datepicker-success-color, var(--nuraly-datepicker-local-success-color));
363
+ }
364
+
365
+ /* Month/Year Dropdown Styles */
366
+ .month-dropdown,
367
+ .year-dropdown {
368
+ position: absolute;
369
+ top: calc(100% + 4px);
370
+ left: 0;
371
+ right: 0;
372
+ width: 120px;
373
+ z-index: 1001;
374
+ background: var(--nuraly-datepicker-background-color, var(--nuraly-datepicker-local-background-color));
375
+ border: var(--nuraly-datepicker-border-width, var(--nuraly-datepicker-local-border-width)) solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));
376
+ border-radius: 6px;
377
+ box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);
378
+ max-height: 200px;
379
+ overflow-y: auto;
380
+ animation: dropdown-slide-in 0.15s ease-out;
381
+ }
382
+
383
+ .year-dropdown {
384
+ width: 80px;
385
+ }
386
+
387
+ .dropdown-content {
388
+ padding: 4px 0;
389
+ }
390
+
391
+ .dropdown-item {
392
+ padding: 8px 12px;
393
+ cursor: pointer;
394
+ color: var(--nuraly-datepicker-text-color, var(--nuraly-datepicker-local-text-color));
395
+ font-size: var(--nuraly-datepicker-font-size, var(--nuraly-datepicker-local-font-size));
396
+ transition: all 0.2s;
397
+ border-radius: 0;
398
+ }
399
+
400
+ .dropdown-item:hover {
401
+ background-color: var(--nuraly-datepicker-hover-background, var(--nuraly-datepicker-local-hover-background));
402
+ }
403
+
404
+ .dropdown-item.selected {
405
+ background-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));
406
+ color: #ffffff;
407
+ font-weight: 600;
408
+ }
409
+
410
+ .dropdown-item.selected:hover {
411
+ background-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));
412
+ opacity: 0.9;
413
+ }
414
+
415
+ /* Dropdown animation */
416
+ @keyframes dropdown-slide-in {
417
+ from {
418
+ opacity: 0;
419
+ transform: translateY(-8px);
420
+ }
421
+ to {
422
+ opacity: 1;
423
+ transform: translateY(0);
424
+ }
425
+ }
426
+
427
+ /* Year/Month button container positioning */
428
+ .current-year-container,
429
+ .month-selector {
430
+ position: relative;
431
+ z-index: 1000;
432
+ }
433
+
434
+ .toggle-month-view,
435
+ .toggle-year-view {
436
+ position: relative;
437
+ z-index: 1001;
438
+ }
439
+
440
+ /* Select component styling - Override the default 300px width */
441
+ .month-select {
442
+ --nuraly-select-width: 110px !important;
443
+ --nuraly-select-local-width: 110px !important;
444
+ width: 110px !important;
445
+ max-width: 110px !important;
446
+ }
447
+
448
+ .year-select {
449
+ --nuraly-select-width: 80px !important;
450
+ --nuraly-select-local-width: 80px !important;
451
+ width: 80px !important;
452
+ max-width: 80px !important;
453
+ }
454
+ `;
455
+ //# sourceMappingURL=datepicker.style.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datepicker.style.js","sourceRoot":"","sources":["../../../src/components/datepicker/datepicker.style.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEjE;;;;;;;;;;;;;;GAcG;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG,GAAG,CAAA;IACrB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmbjB,CAAC","sourcesContent":["import { css } from 'lit';\nimport { styleVariables } from './datepicker.style.variables.js';\n\n/**\n * Datepicker component styles for the Hybrid UI Library\n * \n * This file contains all the styling for the nr-datepicker component, including:\n * - Base datepicker styles with CSS custom properties for theming\n * - Multiple datepicker states (default, disabled, focused)\n * - Size variations (small, medium, large)\n * - Calendar styling and positioning\n * - Date selection states and range highlighting\n * - Focus, disabled, and validation states\n * - Dark theme support\n * \n * The styling system uses CSS custom properties with fallbacks to allow\n * for both global and local customization of datepicker appearance.\n */\n\nexport const styles = css`\n ${styleVariables}\n\n :host {\n width: fit-content;\n display: block;\n font-family: var(--nuraly-datepicker-font-family, var(--nuraly-datepicker-local-font-family));\n }\n\n /* Host attribute selectors for configuration */\n :host([disabled]) {\n opacity: var(--nuraly-datepicker-disabled-opacity, var(--nuraly-datepicker-local-disabled-opacity));\n pointer-events: none;\n }\n\n :host([range]) {\n --nuraly-datepicker-local-calendar-width: 600px;\n }\n\n /* Container styles */\n .datepicker-container {\n position: relative;\n display: block;\n width: var(--nuraly-datepicker-width, var(--nuraly-datepicker-local-width));\n font-family: var(--nuraly-datepicker-font-family, var(--nuraly-datepicker-local-font-family));\n /* Allow calendar to overflow container without causing scroll */\n overflow: visible;\n }\n\n .datepicker-disabled {\n opacity: var(--nuraly-datepicker-disabled-opacity, var(--nuraly-datepicker-local-disabled-opacity));\n pointer-events: none;\n }\n\n /* Size variants */\n .datepicker-size-small {\n --nuraly-datepicker-local-day-size: var(--nuraly-datepicker-local-small-day-size);\n --nuraly-datepicker-local-font-size: var(--nuraly-datepicker-local-small-font-size);\n }\n\n .datepicker-size-medium {\n --nuraly-datepicker-local-day-size: var(--nuraly-datepicker-local-medium-day-size);\n --nuraly-datepicker-local-font-size: var(--nuraly-datepicker-local-medium-font-size);\n }\n\n .datepicker-size-large {\n --nuraly-datepicker-local-day-size: var(--nuraly-datepicker-local-large-day-size);\n --nuraly-datepicker-local-font-size: var(--nuraly-datepicker-local-large-font-size);\n }\n\n /* Calendar container */\n .calendar-container {\n position: fixed;\n z-index: var(--nuraly-datepicker-calendar-z-index, var(--nuraly-datepicker-local-calendar-z-index));\n user-select: none;\n padding: var(--nuraly-datepicker-calendar-padding, var(--nuraly-datepicker-local-calendar-padding));\n width: var(--nuraly-datepicker-calendar-width, var(--nuraly-datepicker-local-calendar-width));\n height: var(--nuraly-datepicker-calendar-height, var(--nuraly-datepicker-local-calendar-height));\n background-color: var(--nuraly-datepicker-background-color, var(--nuraly-datepicker-local-background-color));\n border: var(--nuraly-datepicker-border-width, var(--nuraly-datepicker-local-border-width)) solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));\n border-radius: var(--nuraly-datepicker-border-radius, var(--nuraly-datepicker-local-border-radius));\n box-shadow: var(--nuraly-datepicker-box-shadow, var(--nuraly-datepicker-local-box-shadow));\n animation: calendar-slide-in var(--nuraly-datepicker-calendar-animation-duration, var(--nuraly-datepicker-local-calendar-animation-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));\n }\n\n .calendar-range {\n width: calc(var(--nuraly-datepicker-calendar-width, var(--nuraly-datepicker-local-calendar-width)) * 2);\n }\n\n /* Calendar header */\n .calendar-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: var(--nuraly-datepicker-header-padding, var(--nuraly-datepicker-local-header-padding));\n height: var(--nuraly-datepicker-header-height, var(--nuraly-datepicker-local-header-height));\n border-bottom: var(--nuraly-datepicker-border-width, var(--nuraly-datepicker-local-border-width)) solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));\n background: var(--nuraly-datepicker-header-background, var(--nuraly-datepicker-local-header-background));\n }\n\n .year-month-header {\n display: flex;\n align-items: center;\n gap: 8px;\n flex: 1;\n justify-content: center;\n }\n\n .current-year-container {\n display: inline-flex;\n align-items: center;\n gap: calc(var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap)) / 2);\n }\n\n .year-icons-toggler {\n display: flex;\n flex-direction: column;\n gap: 2px;\n }\n\n /* Calendar content */\n .calendar-content {\n padding: var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap));\n padding-bottom: calc(var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap)) / 2);\n }\n\n /* Button customizations */\n nr-button {\n --nuraly-button-border-color: transparent;\n --nuraly-button-background-color: transparent;\n --nuraly-button-text-color: var(--nuraly-datepicker-text-color, var(--nuraly-datepicker-local-text-color));\n --nuraly-button-hover-background-color: var(--nuraly-datepicker-hover-color, var(--nuraly-datepicker-local-hover-color));\n --nuraly-button-transition-duration: var(--nuraly-datepicker-transition-duration, var(--nuraly-datepicker-local-transition-duration));\n }\n\n .toggle-year-view,\n .toggle-month-view {\n --nuraly-button-font-weight: var(--nuraly-datepicker-header-font-weight, var(--nuraly-datepicker-local-header-font-weight));\n --nuraly-button-font-size: var(--nuraly-datepicker-header-font-size, var(--nuraly-datepicker-local-header-font-size));\n --nuraly-button-padding: 4px 20px 4px 8px;\n --nuraly-button-border-radius: 6px;\n --nuraly-button-border: 1px solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));\n --nuraly-button-background-color: #ffffff;\n --nuraly-button-hover-border-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));\n --nuraly-button-hover-background-color: #ffffff;\n --nuraly-button-active-background-color: var(--nuraly-datepicker-hover-background, var(--nuraly-datepicker-local-hover-background));\n --nuraly-button-transition: all 0.2s;\n position: relative;\n min-width: 80px;\n }\n\n .toggle-month-view::after,\n .toggle-year-view::after {\n content: '';\n position: absolute;\n right: 6px;\n top: 50%;\n transform: translateY(-50%);\n width: 0;\n height: 0;\n border-left: 3px solid transparent;\n border-right: 3px solid transparent;\n border-top: 3px solid rgba(0, 0, 0, 0.45);\n transition: all 0.2s;\n }\n\n .toggle-month-view:hover::after,\n .toggle-year-view:hover::after {\n border-top-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));\n }\n\n .next-year,\n .previous-year {\n --nuraly-button-width: 16px;\n --nuraly-button-height: 12px;\n --nuraly-button-padding: 0;\n --nuraly-button-min-width: auto;\n --nuraly-button-border-radius: 2px;\n --nuraly-button-text-color: rgba(0, 0, 0, 0.45);\n --nuraly-button-hover-text-color: rgba(0, 0, 0, 0.85);\n --nuraly-button-hover-background-color: rgba(0, 0, 0, 0.06);\n }\n\n .header-prev-button,\n .header-next-button {\n --nuraly-button-width: 24px;\n --nuraly-button-height: 24px;\n --nuraly-button-padding: 0;\n --nuraly-button-min-width: auto;\n --nuraly-button-border-radius: 2px;\n --nuraly-button-text-color: rgba(0, 0, 0, 0.45);\n --nuraly-button-hover-text-color: rgba(0, 0, 0, 0.85);\n --nuraly-button-hover-background-color: rgba(0, 0, 0, 0.06);\n --nuraly-button-transition: all 0.2s;\n }\n\n .header-prev-button:hover,\n .header-next-button:hover {\n --nuraly-button-background-color: rgba(0, 0, 0, 0.06);\n }\n\n /* Placement variants */\n .placement-top {\n animation: calendar-slide-down var(--nuraly-datepicker-calendar-animation-duration, var(--nuraly-datepicker-local-calendar-animation-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));\n }\n\n .placement-bottom {\n animation: calendar-slide-up var(--nuraly-datepicker-calendar-animation-duration, var(--nuraly-datepicker-local-calendar-animation-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));\n }\n\n /* Animations */\n @keyframes calendar-slide-in {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes calendar-slide-up {\n from {\n opacity: 0;\n transform: translateY(10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n @keyframes calendar-slide-down {\n from {\n opacity: 0;\n transform: translateY(-10px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n /* Legacy compatibility styles */\n .calendar-container-range {\n width: 600px;\n }\n\n /* Accessibility improvements */\n .calendar-container:focus-within {\n outline: var(--nuraly-datepicker-focus-border-width, var(--nuraly-datepicker-local-focus-border-width)) solid var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));\n outline-offset: 2px;\n }\n\n /* Focus management */\n [tabindex=\"-1\"]:focus {\n outline: none;\n }\n\n /* Days grid layout */\n .days-grid {\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n\n .weekdays-header {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: 1px;\n margin-bottom: var(--nuraly-datepicker-gap, var(--nuraly-datepicker-local-gap));\n }\n\n .weekday-header {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 8px 4px;\n font-size: 12px;\n font-weight: 500;\n color: var(--nuraly-datepicker-weekday-color, var(--nuraly-datepicker-local-weekday-color));\n text-align: center;\n }\n\n .days-body {\n display: grid;\n grid-template-columns: repeat(7, 1fr);\n gap: 1px;\n }\n\n /* Day cell base styles */\n .day-cell {\n width: var(--nuraly-datepicker-day-size, var(--nuraly-datepicker-local-day-size));\n height: var(--nuraly-datepicker-day-size, var(--nuraly-datepicker-local-day-size));\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 6px;\n cursor: pointer;\n transition: all var(--nuraly-datepicker-transition-duration, var(--nuraly-datepicker-local-transition-duration)) var(--nuraly-datepicker-transition-timing, var(--nuraly-datepicker-local-transition-timing));\n font-size: var(--nuraly-datepicker-day-font-size, var(--nuraly-datepicker-local-day-font-size));\n font-weight: 400;\n color: var(--nuraly-datepicker-text-color, var(--nuraly-datepicker-local-text-color));\n margin: 1px;\n position: relative;\n }\n\n .day-cell:hover:not(.disabled):not(.selected) {\n background-color: var(--nuraly-datepicker-hover-color, var(--nuraly-datepicker-local-hover-color));\n scale: 1.05;\n }\n\n .day-cell.selected {\n background-color: var(--nuraly-datepicker-selected-color, var(--nuraly-datepicker-local-selected-color)) !important;\n color: var(--nuraly-datepicker-selected-text-color, var(--nuraly-datepicker-local-selected-text-color)) !important;\n font-weight: 600;\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);\n }\n\n .day-cell.today {\n border: 2px solid var(--nuraly-datepicker-today-color, var(--nuraly-datepicker-local-today-color));\n font-weight: 600;\n }\n\n .day-cell.today.selected {\n border-color: var(--nuraly-datepicker-selected-text-color, var(--nuraly-datepicker-local-selected-text-color));\n }\n\n .day-cell.disabled {\n background-color: var(--nuraly-datepicker-disabled-color, var(--nuraly-datepicker-local-disabled-color));\n color: var(--nuraly-datepicker-disabled-text-color, var(--nuraly-datepicker-local-disabled-text-color));\n cursor: not-allowed;\n pointer-events: none;\n opacity: 0.4;\n }\n\n .day-cell.in-range {\n background-color: var(--nuraly-datepicker-range-color, var(--nuraly-datepicker-local-range-color));\n border-radius: 0;\n }\n\n .day-cell.in-range:first-of-type {\n border-radius: 6px 0 0 6px;\n }\n\n .day-cell.in-range:last-of-type {\n border-radius: 0 6px 6px 0;\n }\n\n .day-cell.in-range.selected {\n border-radius: 6px;\n }\n\n /* Error states */\n :host([state=\"error\"]) .datepicker-container {\n --nuraly-datepicker-local-input-border-color: var(--nuraly-datepicker-error-color, var(--nuraly-datepicker-local-error-color));\n }\n\n :host([state=\"warning\"]) .datepicker-container {\n --nuraly-datepicker-local-input-border-color: var(--nuraly-datepicker-warning-color, var(--nuraly-datepicker-local-warning-color));\n }\n\n :host([state=\"success\"]) .datepicker-container {\n --nuraly-datepicker-local-input-border-color: var(--nuraly-datepicker-success-color, var(--nuraly-datepicker-local-success-color));\n }\n\n /* Month/Year Dropdown Styles */\n .month-dropdown,\n .year-dropdown {\n position: absolute;\n top: calc(100% + 4px);\n left: 0;\n right: 0;\n width: 120px;\n z-index: 1001;\n background: var(--nuraly-datepicker-background-color, var(--nuraly-datepicker-local-background-color));\n border: var(--nuraly-datepicker-border-width, var(--nuraly-datepicker-local-border-width)) solid var(--nuraly-datepicker-border-color, var(--nuraly-datepicker-local-border-color));\n border-radius: 6px;\n box-shadow: 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 9px 28px 8px rgba(0, 0, 0, 0.05);\n max-height: 200px;\n overflow-y: auto;\n animation: dropdown-slide-in 0.15s ease-out;\n }\n\n .year-dropdown {\n width: 80px;\n }\n\n .dropdown-content {\n padding: 4px 0;\n }\n\n .dropdown-item {\n padding: 8px 12px;\n cursor: pointer;\n color: var(--nuraly-datepicker-text-color, var(--nuraly-datepicker-local-text-color));\n font-size: var(--nuraly-datepicker-font-size, var(--nuraly-datepicker-local-font-size));\n transition: all 0.2s;\n border-radius: 0;\n }\n\n .dropdown-item:hover {\n background-color: var(--nuraly-datepicker-hover-background, var(--nuraly-datepicker-local-hover-background));\n }\n\n .dropdown-item.selected {\n background-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));\n color: #ffffff;\n font-weight: 600;\n }\n\n .dropdown-item.selected:hover {\n background-color: var(--nuraly-datepicker-primary-color, var(--nuraly-datepicker-local-primary-color));\n opacity: 0.9;\n }\n\n /* Dropdown animation */\n @keyframes dropdown-slide-in {\n from {\n opacity: 0;\n transform: translateY(-8px);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n }\n\n /* Year/Month button container positioning */\n .current-year-container,\n .month-selector {\n position: relative;\n z-index: 1000;\n }\n\n .toggle-month-view,\n .toggle-year-view {\n position: relative;\n z-index: 1001;\n }\n\n /* Select component styling - Override the default 300px width */\n .month-select {\n --nuraly-select-width: 110px !important;\n --nuraly-select-local-width: 110px !important;\n width: 110px !important;\n max-width: 110px !important;\n }\n\n .year-select {\n --nuraly-select-width: 80px !important;\n --nuraly-select-local-width: 80px !important; \n width: 80px !important;\n max-width: 80px !important;\n }\n`;\n"]}
@@ -0,0 +1,2 @@
1
+ export declare const styleVariables: import("lit").CSSResult;
2
+ //# sourceMappingURL=datepicker.style.variables.d.ts.map
@@ -0,0 +1,119 @@
1
+ import { css } from 'lit';
2
+ export const styleVariables = css `
3
+ :host {
4
+ /* ========================================
5
+ * DATEPICKER THEME-AWARE VARIABLES
6
+ * Uses CSS custom properties from theme files
7
+ * ======================================== */
8
+
9
+ /* Base datepicker styling - uses theme variables with fallbacks */
10
+ --nuraly-datepicker-local-background-color: var(--nuraly-color-datepicker-background, #ffffff);
11
+ --nuraly-datepicker-local-text-color: var(--nuraly-color-datepicker-text, #000000);
12
+ --nuraly-datepicker-local-font-family: var(--nuraly-font-family-datepicker, Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Ubuntu, Cantarell, "Noto Sans", sans-serif);
13
+ --nuraly-datepicker-local-font-size: var(--nuraly-font-size-datepicker, 14px);
14
+
15
+ /* Datepicker borders - theme-aware */
16
+ --nuraly-datepicker-local-border-color: var(--nuraly-color-datepicker-border, #d9d9d9);
17
+ --nuraly-datepicker-local-border-width: var(--nuraly-border-width-datepicker, 1px);
18
+ --nuraly-datepicker-local-border-radius: var(--nuraly-border-radius-datepicker, 8px);
19
+
20
+ /* Primary and selection colors - theme-aware */
21
+ --nuraly-datepicker-local-primary-color: var(--nuraly-color-datepicker-primary, #1677ff);
22
+ --nuraly-datepicker-local-selected-color: var(--nuraly-color-datepicker-selected, #1677ff);
23
+ --nuraly-datepicker-local-selected-text-color: var(--nuraly-color-datepicker-selected-text, #ffffff);
24
+ --nuraly-datepicker-local-hover-color: var(--nuraly-color-datepicker-hover, #f5f5f5);
25
+ --nuraly-datepicker-local-today-color: var(--nuraly-color-datepicker-today, #1677ff);
26
+
27
+ /* Disabled states - theme-aware */
28
+ --nuraly-datepicker-local-disabled-color: var(--nuraly-color-datepicker-disabled, #f5f5f5);
29
+ --nuraly-datepicker-local-disabled-text-color: var(--nuraly-color-datepicker-disabled-text, #bfbfbf);
30
+ --nuraly-datepicker-local-disabled-opacity: var(--nuraly-opacity-datepicker-disabled, 0.5);
31
+
32
+ /* Input field colors - theme-aware */
33
+ --nuraly-datepicker-local-input-background: var(--nuraly-color-datepicker-input-background, #ffffff);
34
+ --nuraly-datepicker-local-input-border-color: var(--nuraly-color-datepicker-input-border, #d9d9d9);
35
+ --nuraly-datepicker-local-input-focus-border-color: var(--nuraly-color-datepicker-input-focus-border, #1677ff);
36
+ --nuraly-datepicker-local-input-text-color: var(--nuraly-color-datepicker-input-text, #000000);
37
+ --nuraly-datepicker-local-input-placeholder-color: var(--nuraly-color-datepicker-input-placeholder, #bfbfbf);
38
+
39
+ /* Special date colors - theme-aware */
40
+ --nuraly-datepicker-local-weekend-color: var(--nuraly-color-datepicker-weekend, #ff4d4f);
41
+ --nuraly-datepicker-local-weekday-color: var(--nuraly-color-datepicker-weekday, #8c8c8c);
42
+ --nuraly-datepicker-local-range-color: var(--nuraly-color-datepicker-range, rgba(22, 119, 255, 0.1));
43
+ --nuraly-datepicker-local-error-color: var(--nuraly-color-datepicker-error, #da1e28);
44
+ --nuraly-datepicker-local-warning-color: var(--nuraly-color-datepicker-warning, #f0c300);
45
+ --nuraly-datepicker-local-success-color: var(--nuraly-color-datepicker-success, #24a148);
46
+
47
+ /* Header specific colors - theme-aware */
48
+ --nuraly-datepicker-local-header-background: var(--nuraly-color-datepicker-header-background, #ffffff);
49
+ --nuraly-datepicker-local-hover-background: var(--nuraly-color-datepicker-hover-background, rgba(0, 0, 0, 0.04));
50
+ --nuraly-datepicker-local-active-background: var(--nuraly-color-datepicker-active-background, rgba(0, 0, 0, 0.06));
51
+
52
+ /* Layout and sizing - theme-aware */
53
+ --nuraly-datepicker-local-width: var(--nuraly-size-datepicker-width, 280px);
54
+ --nuraly-datepicker-local-height: var(--nuraly-size-datepicker-height, auto);
55
+ --nuraly-datepicker-local-calendar-width: var(--nuraly-size-datepicker-calendar-width, 320px);
56
+ --nuraly-datepicker-local-calendar-height: var(--nuraly-size-datepicker-calendar-height, auto);
57
+ --nuraly-datepicker-local-day-size: var(--nuraly-size-datepicker-day, 36px);
58
+ --nuraly-datepicker-local-header-height: var(--nuraly-size-datepicker-header-height, 56px);
59
+
60
+ /* Typography - theme-aware */
61
+ --nuraly-datepicker-local-font-weight: var(--nuraly-font-weight-datepicker, 400);
62
+ --nuraly-datepicker-local-header-font-size: var(--nuraly-font-size-datepicker-header, 16px);
63
+ --nuraly-datepicker-local-header-font-weight: var(--nuraly-font-weight-datepicker-header, 600);
64
+ --nuraly-datepicker-local-day-font-size: var(--nuraly-font-size-datepicker-day, 14px);
65
+ --nuraly-datepicker-local-input-font-size: var(--nuraly-font-size-datepicker-input, 14px);
66
+ --nuraly-datepicker-local-label-font-size: var(--nuraly-font-size-datepicker-label, 14px);
67
+ --nuraly-datepicker-local-helper-font-size: var(--nuraly-font-size-datepicker-helper, 12px);
68
+ --nuraly-datepicker-local-message-font-size: var(--nuraly-font-size-datepicker-message, 12px);
69
+
70
+ /* Spacing - theme-aware */
71
+ --nuraly-datepicker-local-gap: var(--nuraly-spacing-datepicker-gap, 6px);
72
+ --nuraly-datepicker-local-calendar-padding: var(--nuraly-spacing-datepicker-calendar-padding, 12px);
73
+ --nuraly-datepicker-local-day-padding: var(--nuraly-spacing-datepicker-day-padding, 6px);
74
+ --nuraly-datepicker-local-input-padding: var(--nuraly-spacing-datepicker-input-padding, 8px 12px);
75
+ --nuraly-datepicker-local-padding: var(--nuraly-spacing-datepicker-padding, 16px);
76
+ --nuraly-datepicker-local-margin: var(--nuraly-spacing-datepicker-margin, 0);
77
+
78
+ /* Borders - theme-aware */
79
+ --nuraly-datepicker-local-input-border-width: var(--nuraly-border-width-datepicker-input, 1px);
80
+ --nuraly-datepicker-local-focus-border-width: var(--nuraly-border-width-datepicker-focus, 2px);
81
+
82
+ /* Shadows - theme-aware */
83
+ --nuraly-datepicker-local-shadow-color: var(--nuraly-color-datepicker-shadow, rgba(0, 0, 0, 0.1));
84
+ --nuraly-datepicker-local-box-shadow: var(--nuraly-shadow-datepicker-box, 0 6px 16px 0 var(--nuraly-datepicker-local-shadow-color));
85
+ --nuraly-datepicker-local-input-focus-shadow: var(--nuraly-shadow-datepicker-input-focus, 0 0 0 2px rgba(22, 119, 255, 0.2));
86
+
87
+ /* States - theme-aware */
88
+ --nuraly-datepicker-local-hover-opacity: var(--nuraly-opacity-datepicker-hover, 0.8);
89
+
90
+ /* Animation and transitions - theme-aware */
91
+ --nuraly-datepicker-local-transition-duration: var(--nuraly-transition-duration-datepicker, 0.2s);
92
+ --nuraly-datepicker-local-transition-timing: var(--nuraly-transition-timing-datepicker, ease-in-out);
93
+ --nuraly-datepicker-local-calendar-animation-duration: var(--nuraly-transition-duration-datepicker-calendar, 0.15s);
94
+
95
+ /* Z-index - theme-aware */
96
+ --nuraly-datepicker-local-calendar-z-index: var(--nuraly-z-index-datepicker-calendar, 1000);
97
+
98
+ /* Icon sizes - theme-aware */
99
+ --nuraly-datepicker-local-icon-size: var(--nuraly-size-datepicker-icon, 16px);
100
+ --nuraly-datepicker-local-arrow-icon-size: var(--nuraly-size-datepicker-arrow-icon, 12px);
101
+
102
+ /* Size variants - theme-aware */
103
+ --nuraly-datepicker-local-small-font-size: var(--nuraly-font-size-datepicker-small, 12px);
104
+ --nuraly-datepicker-local-small-padding: var(--nuraly-spacing-datepicker-small-padding, 6px 8px);
105
+ --nuraly-datepicker-local-small-height: var(--nuraly-size-datepicker-small-height, 32px);
106
+ --nuraly-datepicker-local-small-day-size: var(--nuraly-size-datepicker-small-day, 28px);
107
+
108
+ --nuraly-datepicker-local-medium-font-size: var(--nuraly-font-size-datepicker-medium, 14px);
109
+ --nuraly-datepicker-local-medium-padding: var(--nuraly-spacing-datepicker-medium-padding, 8px 12px);
110
+ --nuraly-datepicker-local-medium-height: var(--nuraly-size-datepicker-medium-height, 36px);
111
+ --nuraly-datepicker-local-medium-day-size: var(--nuraly-size-datepicker-medium-day, 36px);
112
+
113
+ --nuraly-datepicker-local-large-font-size: var(--nuraly-font-size-datepicker-large, 16px);
114
+ --nuraly-datepicker-local-large-padding: var(--nuraly-spacing-datepicker-large-padding, 12px 16px);
115
+ --nuraly-datepicker-local-large-height: var(--nuraly-size-datepicker-large-height, 44px);
116
+ --nuraly-datepicker-local-large-day-size: var(--nuraly-size-datepicker-large-day, 44px);
117
+ }
118
+ `;
119
+ //# sourceMappingURL=datepicker.style.variables.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"datepicker.style.variables.js","sourceRoot":"","sources":["../../../src/components/datepicker/datepicker.style.variables.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoHhC,CAAC","sourcesContent":["import { css } from 'lit';\n\nexport const styleVariables = css`\n :host {\n /* ========================================\n * DATEPICKER THEME-AWARE VARIABLES\n * Uses CSS custom properties from theme files\n * ======================================== */\n\n /* Base datepicker styling - uses theme variables with fallbacks */\n --nuraly-datepicker-local-background-color: var(--nuraly-color-datepicker-background, #ffffff);\n --nuraly-datepicker-local-text-color: var(--nuraly-color-datepicker-text, #000000);\n --nuraly-datepicker-local-font-family: var(--nuraly-font-family-datepicker, Inter, ui-sans-serif, system-ui, -apple-system, \"Segoe UI\", Roboto, Ubuntu, Cantarell, \"Noto Sans\", sans-serif);\n --nuraly-datepicker-local-font-size: var(--nuraly-font-size-datepicker, 14px);\n \n /* Datepicker borders - theme-aware */\n --nuraly-datepicker-local-border-color: var(--nuraly-color-datepicker-border, #d9d9d9);\n --nuraly-datepicker-local-border-width: var(--nuraly-border-width-datepicker, 1px);\n --nuraly-datepicker-local-border-radius: var(--nuraly-border-radius-datepicker, 8px);\n \n /* Primary and selection colors - theme-aware */\n --nuraly-datepicker-local-primary-color: var(--nuraly-color-datepicker-primary, #1677ff);\n --nuraly-datepicker-local-selected-color: var(--nuraly-color-datepicker-selected, #1677ff);\n --nuraly-datepicker-local-selected-text-color: var(--nuraly-color-datepicker-selected-text, #ffffff);\n --nuraly-datepicker-local-hover-color: var(--nuraly-color-datepicker-hover, #f5f5f5);\n --nuraly-datepicker-local-today-color: var(--nuraly-color-datepicker-today, #1677ff);\n \n /* Disabled states - theme-aware */\n --nuraly-datepicker-local-disabled-color: var(--nuraly-color-datepicker-disabled, #f5f5f5);\n --nuraly-datepicker-local-disabled-text-color: var(--nuraly-color-datepicker-disabled-text, #bfbfbf);\n --nuraly-datepicker-local-disabled-opacity: var(--nuraly-opacity-datepicker-disabled, 0.5);\n \n /* Input field colors - theme-aware */\n --nuraly-datepicker-local-input-background: var(--nuraly-color-datepicker-input-background, #ffffff);\n --nuraly-datepicker-local-input-border-color: var(--nuraly-color-datepicker-input-border, #d9d9d9);\n --nuraly-datepicker-local-input-focus-border-color: var(--nuraly-color-datepicker-input-focus-border, #1677ff);\n --nuraly-datepicker-local-input-text-color: var(--nuraly-color-datepicker-input-text, #000000);\n --nuraly-datepicker-local-input-placeholder-color: var(--nuraly-color-datepicker-input-placeholder, #bfbfbf);\n \n /* Special date colors - theme-aware */\n --nuraly-datepicker-local-weekend-color: var(--nuraly-color-datepicker-weekend, #ff4d4f);\n --nuraly-datepicker-local-weekday-color: var(--nuraly-color-datepicker-weekday, #8c8c8c);\n --nuraly-datepicker-local-range-color: var(--nuraly-color-datepicker-range, rgba(22, 119, 255, 0.1));\n --nuraly-datepicker-local-error-color: var(--nuraly-color-datepicker-error, #da1e28);\n --nuraly-datepicker-local-warning-color: var(--nuraly-color-datepicker-warning, #f0c300);\n --nuraly-datepicker-local-success-color: var(--nuraly-color-datepicker-success, #24a148);\n \n /* Header specific colors - theme-aware */\n --nuraly-datepicker-local-header-background: var(--nuraly-color-datepicker-header-background, #ffffff);\n --nuraly-datepicker-local-hover-background: var(--nuraly-color-datepicker-hover-background, rgba(0, 0, 0, 0.04));\n --nuraly-datepicker-local-active-background: var(--nuraly-color-datepicker-active-background, rgba(0, 0, 0, 0.06));\n \n /* Layout and sizing - theme-aware */\n --nuraly-datepicker-local-width: var(--nuraly-size-datepicker-width, 280px);\n --nuraly-datepicker-local-height: var(--nuraly-size-datepicker-height, auto);\n --nuraly-datepicker-local-calendar-width: var(--nuraly-size-datepicker-calendar-width, 320px);\n --nuraly-datepicker-local-calendar-height: var(--nuraly-size-datepicker-calendar-height, auto);\n --nuraly-datepicker-local-day-size: var(--nuraly-size-datepicker-day, 36px);\n --nuraly-datepicker-local-header-height: var(--nuraly-size-datepicker-header-height, 56px);\n \n /* Typography - theme-aware */\n --nuraly-datepicker-local-font-weight: var(--nuraly-font-weight-datepicker, 400);\n --nuraly-datepicker-local-header-font-size: var(--nuraly-font-size-datepicker-header, 16px);\n --nuraly-datepicker-local-header-font-weight: var(--nuraly-font-weight-datepicker-header, 600);\n --nuraly-datepicker-local-day-font-size: var(--nuraly-font-size-datepicker-day, 14px);\n --nuraly-datepicker-local-input-font-size: var(--nuraly-font-size-datepicker-input, 14px);\n --nuraly-datepicker-local-label-font-size: var(--nuraly-font-size-datepicker-label, 14px);\n --nuraly-datepicker-local-helper-font-size: var(--nuraly-font-size-datepicker-helper, 12px);\n --nuraly-datepicker-local-message-font-size: var(--nuraly-font-size-datepicker-message, 12px);\n \n /* Spacing - theme-aware */\n --nuraly-datepicker-local-gap: var(--nuraly-spacing-datepicker-gap, 6px);\n --nuraly-datepicker-local-calendar-padding: var(--nuraly-spacing-datepicker-calendar-padding, 12px);\n --nuraly-datepicker-local-day-padding: var(--nuraly-spacing-datepicker-day-padding, 6px);\n --nuraly-datepicker-local-input-padding: var(--nuraly-spacing-datepicker-input-padding, 8px 12px);\n --nuraly-datepicker-local-padding: var(--nuraly-spacing-datepicker-padding, 16px);\n --nuraly-datepicker-local-margin: var(--nuraly-spacing-datepicker-margin, 0);\n \n /* Borders - theme-aware */\n --nuraly-datepicker-local-input-border-width: var(--nuraly-border-width-datepicker-input, 1px);\n --nuraly-datepicker-local-focus-border-width: var(--nuraly-border-width-datepicker-focus, 2px);\n \n /* Shadows - theme-aware */\n --nuraly-datepicker-local-shadow-color: var(--nuraly-color-datepicker-shadow, rgba(0, 0, 0, 0.1));\n --nuraly-datepicker-local-box-shadow: var(--nuraly-shadow-datepicker-box, 0 6px 16px 0 var(--nuraly-datepicker-local-shadow-color));\n --nuraly-datepicker-local-input-focus-shadow: var(--nuraly-shadow-datepicker-input-focus, 0 0 0 2px rgba(22, 119, 255, 0.2));\n \n /* States - theme-aware */\n --nuraly-datepicker-local-hover-opacity: var(--nuraly-opacity-datepicker-hover, 0.8);\n \n /* Animation and transitions - theme-aware */\n --nuraly-datepicker-local-transition-duration: var(--nuraly-transition-duration-datepicker, 0.2s);\n --nuraly-datepicker-local-transition-timing: var(--nuraly-transition-timing-datepicker, ease-in-out);\n --nuraly-datepicker-local-calendar-animation-duration: var(--nuraly-transition-duration-datepicker-calendar, 0.15s);\n \n /* Z-index - theme-aware */\n --nuraly-datepicker-local-calendar-z-index: var(--nuraly-z-index-datepicker-calendar, 1000);\n \n /* Icon sizes - theme-aware */\n --nuraly-datepicker-local-icon-size: var(--nuraly-size-datepicker-icon, 16px);\n --nuraly-datepicker-local-arrow-icon-size: var(--nuraly-size-datepicker-arrow-icon, 12px);\n \n /* Size variants - theme-aware */\n --nuraly-datepicker-local-small-font-size: var(--nuraly-font-size-datepicker-small, 12px);\n --nuraly-datepicker-local-small-padding: var(--nuraly-spacing-datepicker-small-padding, 6px 8px);\n --nuraly-datepicker-local-small-height: var(--nuraly-size-datepicker-small-height, 32px);\n --nuraly-datepicker-local-small-day-size: var(--nuraly-size-datepicker-small-day, 28px);\n \n --nuraly-datepicker-local-medium-font-size: var(--nuraly-font-size-datepicker-medium, 14px);\n --nuraly-datepicker-local-medium-padding: var(--nuraly-spacing-datepicker-medium-padding, 8px 12px);\n --nuraly-datepicker-local-medium-height: var(--nuraly-size-datepicker-medium-height, 36px);\n --nuraly-datepicker-local-medium-day-size: var(--nuraly-size-datepicker-medium-day, 36px);\n \n --nuraly-datepicker-local-large-font-size: var(--nuraly-font-size-datepicker-large, 16px);\n --nuraly-datepicker-local-large-padding: var(--nuraly-spacing-datepicker-large-padding, 12px 16px);\n --nuraly-datepicker-local-large-height: var(--nuraly-size-datepicker-large-height, 44px);\n --nuraly-datepicker-local-large-day-size: var(--nuraly-size-datepicker-large-day, 44px);\n }\n`;\n"]}