@keenmate/web-daterangepicker 1.7.0-rc01 → 1.8.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.
- package/README.md +80 -51
- package/dist/style.css +1 -1
- package/dist/web-daterangepicker.js +1144 -1146
- package/dist/web-daterangepicker.umd.js +9 -9
- package/package.json +6 -7
- package/src/css/_badges.css +67 -0
- package/src/css/_base.css +232 -0
- package/src/css/_calendar-grid.css +240 -0
- package/src/css/_header-navigation.css +356 -0
- package/src/css/_loading.css +36 -0
- package/src/css/_modifiers.css +41 -0
- package/src/css/_summary-actions.css +99 -0
- package/src/css/_tooltips.css +37 -0
- package/src/css/_variables.css +331 -0
- package/src/css/main.css +29 -0
- package/src/scss/_badges.scss +0 -70
- package/src/scss/_base.scss +0 -465
- package/src/scss/_calendar-grid.scss +0 -236
- package/src/scss/_header-navigation.scss +0 -370
- package/src/scss/_loading.scss +0 -39
- package/src/scss/_modifiers.scss +0 -50
- package/src/scss/_summary-actions.scss +0 -100
- package/src/scss/_tooltips.scss +0 -39
- package/src/scss/_variables.scss +0 -342
- package/src/scss/main.scss +0 -30
|
@@ -0,0 +1,356 @@
|
|
|
1
|
+
/* ==============================================================================
|
|
2
|
+
DATE RANGE PICKER - HEADER & NAVIGATION
|
|
3
|
+
==============================================================================
|
|
4
|
+
Month/year header, navigation buttons, and rolling selector */
|
|
5
|
+
|
|
6
|
+
/* ==============================================================================
|
|
7
|
+
CALENDAR HEADER
|
|
8
|
+
============================================================================== */
|
|
9
|
+
|
|
10
|
+
.drp-date-picker__header {
|
|
11
|
+
display: flex;
|
|
12
|
+
align-items: center;
|
|
13
|
+
justify-content: space-between;
|
|
14
|
+
margin-bottom: var(--drp-spacing-md);
|
|
15
|
+
gap: var(--drp-spacing-sm);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
/* Static header (used in unified navigation mode) */
|
|
19
|
+
.drp-date-picker__header--static {
|
|
20
|
+
justify-content: center;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.drp-date-picker__header--static .drp-date-picker__month-year {
|
|
24
|
+
cursor: default;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.drp-date-picker__header--static .drp-date-picker__month-year:hover {
|
|
28
|
+
background-color: transparent;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/* ==============================================================================
|
|
32
|
+
MONTH/YEAR DISPLAY (CLICKABLE TO OPEN ROLLING SELECTOR)
|
|
33
|
+
============================================================================== */
|
|
34
|
+
|
|
35
|
+
.drp-date-picker__month-year {
|
|
36
|
+
flex: 1;
|
|
37
|
+
text-align: center;
|
|
38
|
+
font-weight: var(--drp-font-weight-semibold);
|
|
39
|
+
font-size: var(--drp-font-size-base);
|
|
40
|
+
color: var(--drp-header-text-color);
|
|
41
|
+
padding: var(--drp-spacing-sm) var(--drp-spacing-md);
|
|
42
|
+
border-radius: var(--drp-border-radius);
|
|
43
|
+
cursor: pointer;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
.drp-date-picker__month-year:hover {
|
|
47
|
+
background-color: var(--drp-header-bg-hover);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.drp-date-picker__month-year:active {
|
|
51
|
+
background-color: var(--drp-header-bg-active);
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/* ==============================================================================
|
|
55
|
+
NAVIGATION BUTTONS (PREVIOUS/NEXT MONTH)
|
|
56
|
+
============================================================================== */
|
|
57
|
+
|
|
58
|
+
.drp-date-picker__nav {
|
|
59
|
+
width: var(--drp-nav-size);
|
|
60
|
+
height: var(--drp-nav-size);
|
|
61
|
+
display: flex;
|
|
62
|
+
align-items: center;
|
|
63
|
+
justify-content: center;
|
|
64
|
+
border: var(--drp-border-width-base) solid var(--drp-nav-border-color);
|
|
65
|
+
border-radius: var(--drp-border-radius);
|
|
66
|
+
background: transparent;
|
|
67
|
+
cursor: pointer;
|
|
68
|
+
font-size: var(--drp-font-size-lg);
|
|
69
|
+
color: var(--drp-nav-text-color);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.drp-date-picker__nav:hover {
|
|
73
|
+
background-color: var(--drp-nav-bg-hover);
|
|
74
|
+
border-color: var(--drp-nav-border-hover);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
.drp-date-picker__nav:active {
|
|
78
|
+
background-color: var(--drp-nav-bg-active);
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/* Disabled state */
|
|
82
|
+
.drp-date-picker__nav--disabled,
|
|
83
|
+
.drp-date-picker__nav[disabled] {
|
|
84
|
+
opacity: var(--drp-opacity-disabled);
|
|
85
|
+
cursor: not-allowed;
|
|
86
|
+
pointer-events: none;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
.drp-date-picker__nav--disabled:hover,
|
|
90
|
+
.drp-date-picker__nav[disabled]:hover {
|
|
91
|
+
background-color: transparent;
|
|
92
|
+
border-color: var(--drp-nav-border-color);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
.drp-date-picker__nav--prev::before {
|
|
96
|
+
content: '‹';
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
.drp-date-picker__nav--next::before {
|
|
100
|
+
content: '›';
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
/* ==============================================================================
|
|
104
|
+
ROLLING SELECTOR VIEW (MONTH/YEAR SELECTION)
|
|
105
|
+
============================================================================== */
|
|
106
|
+
|
|
107
|
+
.drp-date-picker__rolling-selector {
|
|
108
|
+
/* Absolutely positioned to overlay calendar grid */
|
|
109
|
+
position: absolute;
|
|
110
|
+
inset: 0; /* Fill entire container from all edges */
|
|
111
|
+
display: none;
|
|
112
|
+
z-index: 10; /* Above calendar grid */
|
|
113
|
+
gap: var(--drp-spacing-xs);
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
.drp-date-picker__rolling-selector.drp-date-picker__rolling-selector--visible {
|
|
117
|
+
display: flex;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/* Hide calendar grid when rolling selector is visible */
|
|
121
|
+
.drp-date-picker__rolling-selector.drp-date-picker__rolling-selector--visible ~ .drp-date-picker__weekdays,
|
|
122
|
+
.drp-date-picker__rolling-selector.drp-date-picker__rolling-selector--visible ~ .drp-date-picker__days {
|
|
123
|
+
visibility: hidden; /* Keeps elements in layout flow (maintains container height) */
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
.drp-date-picker__rolling-list {
|
|
127
|
+
flex: 1;
|
|
128
|
+
min-width: 0; /* Allow flex child to shrink below content size (enables ellipsis on items) */
|
|
129
|
+
height: 100%; /* Fill parent height */
|
|
130
|
+
overflow-y: auto;
|
|
131
|
+
border: var(--drp-border-width-base) solid var(--drp-rolling-border-color);
|
|
132
|
+
border-radius: var(--drp-border-radius-lg);
|
|
133
|
+
/* Flex layout to control child item sizing */
|
|
134
|
+
display: flex;
|
|
135
|
+
flex-direction: column;
|
|
136
|
+
/* Smooth scrolling */
|
|
137
|
+
scroll-behavior: smooth;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/* Custom scrollbar */
|
|
141
|
+
.drp-date-picker__rolling-list::-webkit-scrollbar {
|
|
142
|
+
width: var(--drp-rolling-scrollbar-width);
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
.drp-date-picker__rolling-list::-webkit-scrollbar-track {
|
|
146
|
+
background: var(--drp-rolling-bg);
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
.drp-date-picker__rolling-list::-webkit-scrollbar-thumb {
|
|
150
|
+
background: var(--drp-rolling-scrollbar-thumb);
|
|
151
|
+
border-radius: 3px;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
.drp-date-picker__rolling-list::-webkit-scrollbar-thumb:hover {
|
|
155
|
+
background: var(--drp-rolling-scrollbar-thumb-hover);
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
.drp-date-picker__rolling-item {
|
|
159
|
+
padding: var(--drp-rolling-item-padding-v) var(--drp-rolling-item-padding-h);
|
|
160
|
+
cursor: pointer;
|
|
161
|
+
font-size: var(--drp-rolling-item-font-size);
|
|
162
|
+
min-height: var(--drp-rolling-item-min-height);
|
|
163
|
+
flex-shrink: 0;
|
|
164
|
+
/* Flexbox for vertical and horizontal centering */
|
|
165
|
+
display: flex;
|
|
166
|
+
align-items: center;
|
|
167
|
+
justify-content: var(--drp-rolling-item-justify-content);
|
|
168
|
+
}
|
|
169
|
+
|
|
170
|
+
.drp-date-picker__rolling-item:hover {
|
|
171
|
+
background-color: var(--drp-rolling-item-bg-hover);
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
.drp-date-picker__rolling-item--selected {
|
|
175
|
+
background-color: var(--drp-rolling-item-bg-selected);
|
|
176
|
+
color: var(--drp-rolling-item-color-selected);
|
|
177
|
+
font-weight: var(--drp-rolling-item-font-weight-selected);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
.drp-date-picker__rolling-item--selected:hover {
|
|
181
|
+
background-color: var(--drp-rolling-item-bg-selected-hover);
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
/* Text wrapper for ellipsis support */
|
|
185
|
+
.drp-date-picker__rolling-item-text {
|
|
186
|
+
/* Text overflow handling for long month names */
|
|
187
|
+
overflow: hidden;
|
|
188
|
+
text-overflow: ellipsis;
|
|
189
|
+
white-space: nowrap;
|
|
190
|
+
width: 100%;
|
|
191
|
+
min-width: 0; /* Allow flex child to shrink below content size */
|
|
192
|
+
}
|
|
193
|
+
|
|
194
|
+
/* ==============================================================================
|
|
195
|
+
UNIFIED NAVIGATION (MULTI-MONTH CALENDARS)
|
|
196
|
+
============================================================================== */
|
|
197
|
+
|
|
198
|
+
/* Unified header - appears above all months */
|
|
199
|
+
.drp-date-picker__unified-header {
|
|
200
|
+
display: flex;
|
|
201
|
+
align-items: center;
|
|
202
|
+
justify-content: space-between;
|
|
203
|
+
margin-bottom: var(--drp-spacing-lg);
|
|
204
|
+
gap: var(--drp-spacing-sm);
|
|
205
|
+
padding: 0 var(--drp-spacing-sm);
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
/* Date range display in unified header (e.g., "Jan 2025 - Jun 2025") */
|
|
209
|
+
.drp-date-picker__unified-range {
|
|
210
|
+
flex: 1;
|
|
211
|
+
text-align: center;
|
|
212
|
+
font-weight: var(--drp-font-weight-semibold);
|
|
213
|
+
font-size: var(--drp-font-size-lg);
|
|
214
|
+
color: var(--drp-unified-range-text-color);
|
|
215
|
+
padding: var(--drp-spacing-sm) var(--drp-spacing-md);
|
|
216
|
+
border-radius: var(--drp-border-radius);
|
|
217
|
+
cursor: pointer;
|
|
218
|
+
}
|
|
219
|
+
|
|
220
|
+
.drp-date-picker__unified-range:hover {
|
|
221
|
+
background-color: var(--drp-unified-range-bg-hover);
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
.drp-date-picker__unified-range:active {
|
|
225
|
+
background-color: var(--drp-unified-range-bg-active);
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
/* Non-interactive state (when unifiedHeaderInteractive is false) */
|
|
229
|
+
.drp-date-picker__unified-range--static {
|
|
230
|
+
cursor: default !important;
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
.drp-date-picker__unified-range--static:hover {
|
|
234
|
+
background-color: transparent;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
.drp-date-picker__unified-range--static:active {
|
|
238
|
+
background-color: transparent;
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
/* Unified rolling selector - overlay for all months */
|
|
242
|
+
.drp-date-picker__unified-rolling-selector {
|
|
243
|
+
position: absolute;
|
|
244
|
+
/* Position below unified header */
|
|
245
|
+
top: calc(var(--drp-spacing-lg) + var(--drp-spacing-lg) * 2);
|
|
246
|
+
/* Center horizontally */
|
|
247
|
+
left: 50%;
|
|
248
|
+
transform: translateX(-50%);
|
|
249
|
+
/* Size constraints (responsive but limited) */
|
|
250
|
+
width: min(90%, 450px); /* 90% of calendar width or 450px, whichever is smaller */
|
|
251
|
+
height: 350px;
|
|
252
|
+
max-height: 350px;
|
|
253
|
+
display: none;
|
|
254
|
+
z-index: 100; /* Above everything */
|
|
255
|
+
background: var(--drp-dropdown-background); /* White background to cover calendar below */
|
|
256
|
+
gap: var(--drp-spacing-xs); /* Match normal rolling selector gap */
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
.drp-date-picker__unified-rolling-selector--visible {
|
|
260
|
+
display: flex;
|
|
261
|
+
}
|
|
262
|
+
|
|
263
|
+
/* Apply rolling list styles to child lists in unified selector */
|
|
264
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-list {
|
|
265
|
+
flex: 1;
|
|
266
|
+
min-width: 0;
|
|
267
|
+
height: 100%;
|
|
268
|
+
overflow-y: auto;
|
|
269
|
+
border: var(--drp-border-width-base) solid var(--drp-rolling-border-color);
|
|
270
|
+
border-radius: var(--drp-border-radius-lg);
|
|
271
|
+
display: flex;
|
|
272
|
+
flex-direction: column;
|
|
273
|
+
scroll-behavior: smooth;
|
|
274
|
+
}
|
|
275
|
+
|
|
276
|
+
/* Custom scrollbar for unified selector */
|
|
277
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-list::-webkit-scrollbar {
|
|
278
|
+
width: var(--drp-rolling-scrollbar-width);
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-list::-webkit-scrollbar-track {
|
|
282
|
+
background: var(--drp-rolling-bg);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-list::-webkit-scrollbar-thumb {
|
|
286
|
+
background: var(--drp-rolling-scrollbar-thumb);
|
|
287
|
+
border-radius: 3px;
|
|
288
|
+
}
|
|
289
|
+
|
|
290
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-list::-webkit-scrollbar-thumb:hover {
|
|
291
|
+
background: var(--drp-rolling-scrollbar-thumb-hover);
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
/* Apply rolling item styles to child items in unified selector */
|
|
295
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-item {
|
|
296
|
+
padding: var(--drp-rolling-item-padding-v) var(--drp-rolling-item-padding-h);
|
|
297
|
+
cursor: pointer;
|
|
298
|
+
font-size: var(--drp-rolling-item-font-size);
|
|
299
|
+
min-height: var(--drp-rolling-item-min-height);
|
|
300
|
+
flex-shrink: 0;
|
|
301
|
+
display: flex;
|
|
302
|
+
align-items: center;
|
|
303
|
+
justify-content: var(--drp-rolling-item-justify-content);
|
|
304
|
+
}
|
|
305
|
+
|
|
306
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-item:hover {
|
|
307
|
+
background-color: var(--drp-rolling-item-bg-hover);
|
|
308
|
+
}
|
|
309
|
+
|
|
310
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-item--selected {
|
|
311
|
+
background-color: var(--drp-rolling-item-bg-selected);
|
|
312
|
+
color: var(--drp-rolling-item-color-selected);
|
|
313
|
+
font-weight: var(--drp-rolling-item-font-weight-selected);
|
|
314
|
+
}
|
|
315
|
+
|
|
316
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-item--selected:hover {
|
|
317
|
+
background-color: var(--drp-rolling-item-bg-selected-hover);
|
|
318
|
+
}
|
|
319
|
+
|
|
320
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-item--disabled {
|
|
321
|
+
color: var(--drp-unified-rolling-disabled-color);
|
|
322
|
+
opacity: 0.4;
|
|
323
|
+
cursor: not-allowed;
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
/* Text wrapper for ellipsis support in unified selector */
|
|
327
|
+
.drp-date-picker__unified-rolling-selector .drp-date-picker__rolling-item-text {
|
|
328
|
+
overflow: hidden;
|
|
329
|
+
text-overflow: ellipsis;
|
|
330
|
+
white-space: nowrap;
|
|
331
|
+
width: 100%;
|
|
332
|
+
min-width: 0;
|
|
333
|
+
}
|
|
334
|
+
|
|
335
|
+
/* When unified navigation is enabled, hide individual month headers nav buttons
|
|
336
|
+
but keep the month/year text visible (it becomes static display, not clickable) */
|
|
337
|
+
.drp-date-picker--unified-nav .drp-date-picker__month .drp-date-picker__header .drp-date-picker__nav {
|
|
338
|
+
display: none;
|
|
339
|
+
}
|
|
340
|
+
|
|
341
|
+
/* Make month/year display static (not clickable) */
|
|
342
|
+
.drp-date-picker--unified-nav .drp-date-picker__month .drp-date-picker__header .drp-date-picker__month-year {
|
|
343
|
+
cursor: default;
|
|
344
|
+
font-size: var(--drp-font-size-base);
|
|
345
|
+
font-weight: var(--drp-font-weight-normal);
|
|
346
|
+
color: var(--drp-unified-month-color);
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
.drp-date-picker--unified-nav .drp-date-picker__month .drp-date-picker__header .drp-date-picker__month-year:hover {
|
|
350
|
+
background-color: transparent;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
/* Hide individual month rolling selectors */
|
|
354
|
+
.drp-date-picker--unified-nav .drp-date-picker__month .drp-date-picker__rolling-selector {
|
|
355
|
+
display: none !important;
|
|
356
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/* ==============================================================================
|
|
2
|
+
DATE RANGE PICKER - LOADING
|
|
3
|
+
==============================================================================
|
|
4
|
+
Loading overlay and spinner for async validation */
|
|
5
|
+
|
|
6
|
+
.drp-date-picker__loading-overlay {
|
|
7
|
+
position: absolute;
|
|
8
|
+
top: 0;
|
|
9
|
+
left: 0;
|
|
10
|
+
right: 0;
|
|
11
|
+
bottom: 0;
|
|
12
|
+
background-color: var(--drp-loading-overlay-background);
|
|
13
|
+
display: flex;
|
|
14
|
+
align-items: center;
|
|
15
|
+
justify-content: center;
|
|
16
|
+
z-index: var(--drp-z-index-dropdown);
|
|
17
|
+
border-radius: var(--drp-border-radius-lg);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.drp-date-picker__loading-spinner {
|
|
21
|
+
width: 40px;
|
|
22
|
+
height: 40px;
|
|
23
|
+
border: 4px solid var(--drp-loading-spinner-color);
|
|
24
|
+
border-top-color: var(--drp-loading-spinner-accent);
|
|
25
|
+
border-radius: 50%;
|
|
26
|
+
animation: drp-spin 0.8s linear infinite;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
@keyframes drp-spin {
|
|
30
|
+
0% {
|
|
31
|
+
transform: rotate(0deg);
|
|
32
|
+
}
|
|
33
|
+
100% {
|
|
34
|
+
transform: rotate(360deg);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/* ==============================================================================
|
|
2
|
+
DATE RANGE PICKER - MODIFIERS
|
|
3
|
+
============================================================================== */
|
|
4
|
+
|
|
5
|
+
/* ==============================================================================
|
|
6
|
+
TRANSITIONS (OPT-IN FOR PERFORMANCE)
|
|
7
|
+
==============================================================================
|
|
8
|
+
By default, no transitions for maximum performance
|
|
9
|
+
Add enable-transitions attribute to enable smooth animations */
|
|
10
|
+
|
|
11
|
+
.drp-date-picker.drp-transitions-enabled .drp-date-picker__badge-cell {
|
|
12
|
+
transition: transform var(--drp-transition-fast) var(--drp-easing-snappy);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.drp-date-picker.drp-transitions-enabled .drp-date-picker__nav {
|
|
16
|
+
transition: background-color var(--drp-transition-fast) var(--drp-easing-snappy),
|
|
17
|
+
border-color var(--drp-transition-fast) var(--drp-easing-snappy);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
.drp-date-picker.drp-transitions-enabled .drp-date-picker__action-btn {
|
|
21
|
+
transition: background-color var(--drp-transition-fast) var(--drp-easing-snappy),
|
|
22
|
+
border-color var(--drp-transition-fast) var(--drp-easing-snappy);
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
.drp-date-picker.drp-transitions-enabled .drp-date-picker__month-year {
|
|
26
|
+
transition: background-color var(--drp-transition-fast) var(--drp-easing-snappy);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.drp-date-picker.drp-transitions-enabled .drp-date-picker__rolling-item {
|
|
30
|
+
transition: background-color var(--drp-transition-fast) var(--drp-easing-snappy);
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/* ==============================================================================
|
|
34
|
+
INLINE MODE MODIFIER
|
|
35
|
+
============================================================================== */
|
|
36
|
+
|
|
37
|
+
.drp-date-picker--inline {
|
|
38
|
+
position: static;
|
|
39
|
+
display: block;
|
|
40
|
+
box-shadow: none;
|
|
41
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
/* ==============================================================================
|
|
2
|
+
DATE RANGE PICKER - SUMMARY & ACTIONS
|
|
3
|
+
==============================================================================
|
|
4
|
+
Selection summary (days/nights count) and action buttons (Today, Clear, Apply) */
|
|
5
|
+
|
|
6
|
+
/* ==============================================================================
|
|
7
|
+
SELECTION SUMMARY (DAYS/NIGHTS COUNT)
|
|
8
|
+
============================================================================== */
|
|
9
|
+
|
|
10
|
+
.drp-date-picker__summary {
|
|
11
|
+
text-align: center;
|
|
12
|
+
padding: var(--drp-spacing-md);
|
|
13
|
+
border-top: var(--drp-border-width-base) solid var(--drp-summary-border-color);
|
|
14
|
+
font-size: var(--drp-font-size-sm);
|
|
15
|
+
color: var(--drp-summary-text-color);
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.drp-date-picker__summary--visible {
|
|
19
|
+
display: block;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.drp-date-picker__summary--hidden {
|
|
23
|
+
display: none;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.drp-date-picker__summary-count {
|
|
27
|
+
font-weight: var(--drp-font-weight-semibold);
|
|
28
|
+
color: var(--drp-summary-count-color);
|
|
29
|
+
font-size: var(--drp-font-size-base);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/* ==============================================================================
|
|
33
|
+
ACTION BUTTONS
|
|
34
|
+
============================================================================== */
|
|
35
|
+
|
|
36
|
+
.drp-date-picker__actions {
|
|
37
|
+
display: flex;
|
|
38
|
+
gap: var(--drp-spacing-sm);
|
|
39
|
+
justify-content: space-between;
|
|
40
|
+
padding-top: var(--drp-spacing-sm);
|
|
41
|
+
border-top: var(--drp-border-width-base) solid var(--drp-summary-border-color);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.drp-date-picker__button {
|
|
45
|
+
flex: 1;
|
|
46
|
+
padding: var(--drp-spacing-sm) var(--drp-spacing-md);
|
|
47
|
+
border: var(--drp-border-width-base) solid var(--drp-button-border-color);
|
|
48
|
+
border-radius: var(--drp-border-radius);
|
|
49
|
+
background: transparent;
|
|
50
|
+
cursor: pointer;
|
|
51
|
+
font-family: inherit;
|
|
52
|
+
font-size: var(--drp-font-size-sm);
|
|
53
|
+
font-weight: var(--drp-font-weight-medium);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.drp-date-picker__button:hover {
|
|
57
|
+
background-color: var(--drp-button-bg-hover);
|
|
58
|
+
border-color: var(--drp-button-border-hover);
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/* Disabled state */
|
|
62
|
+
.drp-date-picker__button:disabled,
|
|
63
|
+
.drp-date-picker__button[disabled] {
|
|
64
|
+
opacity: var(--drp-opacity-disabled);
|
|
65
|
+
cursor: not-allowed;
|
|
66
|
+
pointer-events: none; /* Critical - prevents all mouse interactions */
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
.drp-date-picker__button:disabled:hover,
|
|
70
|
+
.drp-date-picker__button[disabled]:hover {
|
|
71
|
+
background-color: transparent;
|
|
72
|
+
border-color: var(--drp-button-border-color);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/* Today Button */
|
|
76
|
+
.drp-date-picker__button--today {
|
|
77
|
+
color: var(--drp-button-today-color);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/* Clear Button */
|
|
81
|
+
.drp-date-picker__button--clear {
|
|
82
|
+
color: var(--drp-button-clear-color);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/* Apply Button (primary action) */
|
|
86
|
+
.drp-date-picker__button--apply {
|
|
87
|
+
background-color: var(--drp-button-apply-bg);
|
|
88
|
+
color: var(--drp-button-apply-color);
|
|
89
|
+
border-color: var(--drp-button-apply-border);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.drp-date-picker__button--apply:hover {
|
|
93
|
+
background-color: var(--drp-button-apply-bg-hover);
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/* Cancel Button */
|
|
97
|
+
.drp-date-picker__button--cancel {
|
|
98
|
+
color: var(--drp-button-cancel-color);
|
|
99
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/* ==============================================================================
|
|
2
|
+
DATE RANGE PICKER - TOOLTIPS
|
|
3
|
+
==============================================================================
|
|
4
|
+
Floating UI tooltips for badge hover information */
|
|
5
|
+
|
|
6
|
+
/* ==============================================================================
|
|
7
|
+
FLOATING UI TOOLTIPS
|
|
8
|
+
============================================================================== */
|
|
9
|
+
|
|
10
|
+
.drp-date-picker__tooltip {
|
|
11
|
+
position: absolute;
|
|
12
|
+
z-index: var(--drp-z-index-tooltip);
|
|
13
|
+
background-color: var(--drp-tooltip-background);
|
|
14
|
+
color: var(--drp-tooltip-text-color);
|
|
15
|
+
padding: var(--drp-spacing-xs) var(--drp-spacing-sm);
|
|
16
|
+
border-radius: var(--drp-border-radius-sm);
|
|
17
|
+
font-size: var(--drp-font-size-xs);
|
|
18
|
+
line-height: var(--drp-tooltip-line-height);
|
|
19
|
+
max-width: var(--drp-tooltip-max-width);
|
|
20
|
+
word-wrap: break-word;
|
|
21
|
+
pointer-events: none;
|
|
22
|
+
opacity: 0;
|
|
23
|
+
transition: opacity var(--drp-transition-fast) var(--drp-easing-snappy);
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.drp-date-picker__tooltip--visible {
|
|
27
|
+
opacity: 1;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/* Tooltip arrow */
|
|
31
|
+
.drp-date-picker__tooltip-arrow {
|
|
32
|
+
position: absolute;
|
|
33
|
+
background-color: var(--drp-tooltip-background);
|
|
34
|
+
width: var(--drp-tooltip-arrow-size);
|
|
35
|
+
height: var(--drp-tooltip-arrow-size);
|
|
36
|
+
transform: rotate(45deg);
|
|
37
|
+
}
|