mis-crystal-design-system 18.1.6-signal → 18.1.7-signal-2
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/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +4 -0
- package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +7 -5
- package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +2 -34
- package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +60 -18
- package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +255 -175
- package/esm2022/drawer/drawer-body/drawer-body.component.mjs +4 -4
- package/esm2022/input/mis-input.component.mjs +1 -9
- package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +4 -4
- package/esm2022/slider/slider.component.mjs +2 -2
- package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +23 -19
- package/esm2022/table/table.component.mjs +63 -47
- package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs +60 -50
- package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +254 -174
- package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-drawer.mjs +3 -3
- package/fesm2022/mis-crystal-design-system-drawer.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-input.mjs +0 -8
- package/fesm2022/mis-crystal-design-system-input.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-modal.mjs +3 -3
- package/fesm2022/mis-crystal-design-system-modal.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-slider.mjs +2 -2
- package/fesm2022/mis-crystal-design-system-slider.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs +22 -18
- package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -1
- package/fesm2022/mis-crystal-design-system-table.mjs +62 -47
- package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -1
- package/package.json +7 -7
- package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +2 -2
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { InjectionToken, signal, computed, Component, Inject, HostListener, input, output, Injector, Directive, Self, Optional, NgModule } from '@angular/core';
|
|
2
|
+
import { InjectionToken, signal, computed, effect, Component, Inject, HostListener, input, output, Injector, Directive, Self, Optional, NgModule } from '@angular/core';
|
|
3
3
|
import dayjs from 'dayjs';
|
|
4
4
|
import timezone from 'dayjs/plugin/timezone';
|
|
5
5
|
import utc from 'dayjs/plugin/utc';
|
|
@@ -102,7 +102,7 @@ function TzDrpContainerComponent_div_3_Template(rf, ctx) { if (rf & 1) {
|
|
|
102
102
|
let tmp_1_0;
|
|
103
103
|
const ctx_r3 = i0.ɵɵnextContext();
|
|
104
104
|
i0.ɵɵadvance();
|
|
105
|
-
i0.ɵɵproperty("ngForOf", (tmp_1_0 = ctx_r3.data == null ? null :
|
|
105
|
+
i0.ɵɵproperty("ngForOf", (tmp_1_0 = (tmp_1_0 = ctx_r3.data()) == null ? null : tmp_1_0.dpConfig == null ? null : tmp_1_0.dpConfig.ranges) !== null && tmp_1_0 !== undefined ? tmp_1_0 : i0.ɵɵpureFunction0(2, _c1));
|
|
106
106
|
i0.ɵɵadvance(2);
|
|
107
107
|
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(3, _c2, ctx_r3.selectedItemLabel() === "Custom Range"));
|
|
108
108
|
} }
|
|
@@ -252,9 +252,11 @@ dayjs.extend(customParseFormat);
|
|
|
252
252
|
dayjs.extend(isSameOrAfter);
|
|
253
253
|
dayjs.extend(isSameOrBefore);
|
|
254
254
|
class TzDrpContainerComponent {
|
|
255
|
-
constructor(
|
|
255
|
+
constructor(injectedData, toast) {
|
|
256
|
+
this.injectedData = injectedData;
|
|
256
257
|
this.toast = toast;
|
|
257
258
|
this.CUSTOM_RANGE_LABEL = "Custom Range";
|
|
259
|
+
this.data = signal(this.injectedData);
|
|
258
260
|
this.dayjsInstance = (...args) => {
|
|
259
261
|
return dayjs(...args);
|
|
260
262
|
};
|
|
@@ -289,17 +291,23 @@ class TzDrpContainerComponent {
|
|
|
289
291
|
this.currentMonthNumber = computed(() => this.currentMonthNumberSignal());
|
|
290
292
|
this.currentMonth = computed(() => this.currentMonthSignal());
|
|
291
293
|
this.currentYearNumber = computed(() => this.currentYearNumberSignal());
|
|
292
|
-
this.currentMonthDates = computed(() => this.currentMonthDatesSignal());
|
|
293
294
|
this.nextMonthNumber = computed(() => this.nextMonthNumberSignal());
|
|
294
295
|
this.nextMonth = computed(() => this.nextMonthSignal());
|
|
295
296
|
this.nextYearNumber = computed(() => this.nextYearNumberSignal());
|
|
296
|
-
this.nextMonthDates = computed(() => this.nextMonthDatesSignal());
|
|
297
297
|
this.isPreviousMonthDisabled = computed(() => this.isPreviousMonthDisabledSignal());
|
|
298
298
|
this.isNextMonthDisabled = computed(() => this.isNextMonthDisabledSignal());
|
|
299
299
|
this.selectionStarted = computed(() => this.selectionStartedSignal());
|
|
300
300
|
this.localSelectedDates = computed(() => this.localSelectedDatesSignal());
|
|
301
301
|
this.isDatesValid = computed(() => this.isDatesValidSignal());
|
|
302
302
|
this.selectedItemLabel = computed(() => this.selectedItemLabelSignal());
|
|
303
|
+
this.currentMonthDates = computed(() => {
|
|
304
|
+
// Dependencies: currentMonthNumberSignal, currentYearNumberSignal, localSelectedDatesSignal
|
|
305
|
+
return this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal());
|
|
306
|
+
});
|
|
307
|
+
this.nextMonthDates = computed(() => {
|
|
308
|
+
// Dependencies: nextMonthNumberSignal, nextYearNumberSignal, localSelectedDatesSignal
|
|
309
|
+
return this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal());
|
|
310
|
+
});
|
|
303
311
|
// Time functionality computed properties
|
|
304
312
|
this.startHour = computed(() => this.startHourSignal());
|
|
305
313
|
this.startMinute = computed(() => this.startMinuteSignal());
|
|
@@ -309,21 +317,21 @@ class TzDrpContainerComponent {
|
|
|
309
317
|
this.endAmPm = computed(() => this.endAmPmSignal());
|
|
310
318
|
this.startHour24 = computed(() => this.startHour24Signal());
|
|
311
319
|
this.endHour24 = computed(() => this.endHour24Signal());
|
|
312
|
-
this.data =
|
|
313
|
-
this.localSelectedDatesSignal.set(this.data.dates);
|
|
320
|
+
this.data = signal(this.injectedData);
|
|
321
|
+
this.localSelectedDatesSignal.set(this.data().dates);
|
|
314
322
|
this.isDatesValidSignal.set(false);
|
|
315
|
-
if (this.data.dates.startDate && this.data.dates.endDate) {
|
|
323
|
+
if (this.data().dates.startDate && this.data().dates.endDate) {
|
|
316
324
|
this.isDatesValidSignal.set(true);
|
|
317
325
|
}
|
|
318
326
|
// Initialize selectedItemLabel from data.selectedRangeLabel if available
|
|
319
|
-
if (this.data.selectedRangeLabel) {
|
|
320
|
-
this.selectedItemLabelSignal.set(this.data.selectedRangeLabel);
|
|
327
|
+
if (this.data().selectedRangeLabel) {
|
|
328
|
+
this.selectedItemLabelSignal.set(this.data().selectedRangeLabel);
|
|
321
329
|
}
|
|
322
330
|
// Initialize dayjsInstance with timezone handling
|
|
323
|
-
if (this.data?.dpConfig?.timezone) {
|
|
331
|
+
if (this.data()?.dpConfig?.timezone) {
|
|
324
332
|
this.dayjsInstance = (...args) => {
|
|
325
333
|
try {
|
|
326
|
-
return dayjs.tz(args[0], args[1] || 'DD/MM/YYYY', this.data.dpConfig.timezone);
|
|
334
|
+
return dayjs.tz(args[0], args[1] || 'DD/MM/YYYY', this.data().dpConfig.timezone);
|
|
327
335
|
}
|
|
328
336
|
catch (error) {
|
|
329
337
|
console.warn('Error parsing date with timezone:', error, 'args:', args);
|
|
@@ -342,18 +350,45 @@ class TzDrpContainerComponent {
|
|
|
342
350
|
label: `${day[0]}${day.slice(1).toLowerCase()}`,
|
|
343
351
|
isCurrentDay: this.dayjsInstance().day() === index
|
|
344
352
|
})));
|
|
345
|
-
if (!this.data?.dpConfig?.format) {
|
|
346
|
-
this.data.dpConfig = {
|
|
347
|
-
...this.data.dpConfig,
|
|
353
|
+
if (!this.data()?.dpConfig?.format) {
|
|
354
|
+
this.data().dpConfig = {
|
|
355
|
+
...this.data().dpConfig,
|
|
348
356
|
format: DATE_FORMAT
|
|
349
357
|
};
|
|
350
358
|
}
|
|
359
|
+
effect(() => {
|
|
360
|
+
const localSelectedDates = this.localSelectedDatesSignal();
|
|
361
|
+
let selectedStartDate;
|
|
362
|
+
if (localSelectedDates?.startDate) {
|
|
363
|
+
// Use the robust helper for parsing
|
|
364
|
+
selectedStartDate = this.parseDateWithMultipleFormats(localSelectedDates.startDate);
|
|
365
|
+
}
|
|
366
|
+
else {
|
|
367
|
+
selectedStartDate = dayjs('invalid');
|
|
368
|
+
}
|
|
369
|
+
if (selectedStartDate.isValid()) {
|
|
370
|
+
this.currentYearNumberSignal.set(selectedStartDate.year());
|
|
371
|
+
this.nextYearNumberSignal.set(selectedStartDate.add(1, "month").year());
|
|
372
|
+
this.currentMonthNumberSignal.set(selectedStartDate.get("month"));
|
|
373
|
+
this.nextMonthNumberSignal.set(selectedStartDate.add(1, "month").month());
|
|
374
|
+
const selectedEndDate = localSelectedDates?.endDate ? this.parseDateWithMultipleFormats(localSelectedDates.endDate) : null;
|
|
375
|
+
// Logic for next month being set by end date
|
|
376
|
+
if (selectedEndDate && selectedEndDate.isValid() && selectedEndDate.isAfter(selectedStartDate, 'month')) {
|
|
377
|
+
this.nextMonthNumberSignal.set(selectedEndDate.month());
|
|
378
|
+
this.nextYearNumberSignal.set(selectedEndDate.year());
|
|
379
|
+
}
|
|
380
|
+
// Note: The original had complex logic for currentMonthNumber === -1.
|
|
381
|
+
// Since dayjs.add/subtract handles rollovers, the separate check is usually unnecessary,
|
|
382
|
+
// but we kept it for the end of month logic (month() returns 0-11).
|
|
383
|
+
// The original logic is redundant now, but if required, it would be implemented here
|
|
384
|
+
// before setting currentMonthSignal and nextMonthSignal (which are now computed, so they react anyway).
|
|
385
|
+
}
|
|
386
|
+
}, { allowSignalWrites: true });
|
|
351
387
|
}
|
|
352
388
|
ngOnInit() {
|
|
353
|
-
this.currentDateInstance();
|
|
354
389
|
this.calculateMinMaxDays();
|
|
355
390
|
this.initializeTimeValues();
|
|
356
|
-
if (this.data?.showPrevMonth && !this.isPreviousMonthDisabled) {
|
|
391
|
+
if (this.data()?.showPrevMonth && !this.isPreviousMonthDisabled) {
|
|
357
392
|
this.navigateMonth('PREVIOUS');
|
|
358
393
|
}
|
|
359
394
|
}
|
|
@@ -363,53 +398,13 @@ class TzDrpContainerComponent {
|
|
|
363
398
|
closeOnEsc() {
|
|
364
399
|
this.cancelDatePicker();
|
|
365
400
|
}
|
|
366
|
-
currentDateInstance() {
|
|
367
|
-
if (!this.localSelectedDatesSignal()?.startDate) {
|
|
368
|
-
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal()));
|
|
369
|
-
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal()));
|
|
370
|
-
return;
|
|
371
|
-
}
|
|
372
|
-
// Extract date part for parsing (handle both date-only and datetime formats)
|
|
373
|
-
const startDateString = this.localSelectedDatesSignal()?.startDate?.split(' ')[0] || this.localSelectedDatesSignal()?.startDate;
|
|
374
|
-
const endDateString = this.localSelectedDatesSignal()?.endDate?.split(' ')[0] || this.localSelectedDatesSignal()?.endDate;
|
|
375
|
-
// Validate date strings before parsing
|
|
376
|
-
if (!startDateString || startDateString === 'Invalid Date' || startDateString === 'undefined' || startDateString === 'null') {
|
|
377
|
-
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal()));
|
|
378
|
-
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal()));
|
|
379
|
-
return;
|
|
380
|
-
}
|
|
381
|
-
const selectedStartDate = this.dayjsInstance(startDateString, 'DD/MM/YYYY');
|
|
382
|
-
const selectedEndDate = endDateString ? this.dayjsInstance(endDateString, 'DD/MM/YYYY') : null;
|
|
383
|
-
if (selectedStartDate.isValid()) {
|
|
384
|
-
this.currentYearNumberSignal.set(selectedStartDate.year());
|
|
385
|
-
this.nextYearNumberSignal.set(selectedStartDate.add(1, "month").year());
|
|
386
|
-
this.currentMonthNumberSignal.set(selectedStartDate.get("month"));
|
|
387
|
-
this.nextMonthNumberSignal.set(selectedStartDate.add(1, "month").month());
|
|
388
|
-
if (this.currentMonthNumberSignal() === -1) {
|
|
389
|
-
this.currentMonthNumberSignal.set(11);
|
|
390
|
-
}
|
|
391
|
-
if (this.nextMonthNumberSignal() === -1) {
|
|
392
|
-
this.nextMonthNumberSignal.set(11);
|
|
393
|
-
}
|
|
394
|
-
this.currentMonthSignal.set(getMonth(this.currentMonthNumberSignal()));
|
|
395
|
-
this.nextMonthSignal.set(getMonth(this.nextMonthNumberSignal()));
|
|
396
|
-
}
|
|
397
|
-
// If we have an end date, use it to determine the next month
|
|
398
|
-
if (selectedEndDate && selectedEndDate.isValid() && selectedEndDate.isAfter(selectedStartDate, 'month')) {
|
|
399
|
-
this.nextMonthNumberSignal.set(selectedEndDate.month());
|
|
400
|
-
this.nextYearNumberSignal.set(selectedEndDate.year());
|
|
401
|
-
this.nextMonthSignal.set(getMonth(this.nextMonthNumberSignal()));
|
|
402
|
-
}
|
|
403
|
-
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal()));
|
|
404
|
-
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal()));
|
|
405
|
-
}
|
|
406
401
|
calculateMinMaxDays() {
|
|
407
402
|
const currentInstance = this.dayjsInstance().year(this.currentYearNumberSignal()).month(this.currentMonthNumberSignal());
|
|
408
|
-
const minDate = !!this.data.dpConfig.minDate ? this.dayjsInstance(this.data.dpConfig.minDate, this.data.dpConfig.format) : dayjs('invalid');
|
|
403
|
+
const minDate = !!this.data().dpConfig.minDate ? this.dayjsInstance(this.data().dpConfig.minDate, this.data().dpConfig.format) : dayjs('invalid');
|
|
409
404
|
if (minDate.isValid()) {
|
|
410
405
|
this.isPreviousMonthDisabledSignal.set(minDate.isSameOrAfter(currentInstance, "month"));
|
|
411
406
|
}
|
|
412
|
-
const maxDate = !!this.data.dpConfig.maxDate ? this.dayjsInstance(this.data.dpConfig.maxDate, this.data.dpConfig.format) : dayjs('invalid');
|
|
407
|
+
const maxDate = !!this.data().dpConfig.maxDate ? this.dayjsInstance(this.data().dpConfig.maxDate, this.data().dpConfig.format) : dayjs('invalid');
|
|
413
408
|
if (maxDate.isValid()) {
|
|
414
409
|
this.isNextMonthDisabledSignal.set(maxDate.isSameOrBefore(currentInstance, "month"));
|
|
415
410
|
}
|
|
@@ -445,40 +440,64 @@ class TzDrpContainerComponent {
|
|
|
445
440
|
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
|
|
446
441
|
this.calculateMinMaxDays();
|
|
447
442
|
}
|
|
443
|
+
parseDateWithMultipleFormats(dateString) {
|
|
444
|
+
if (!dateString || dateString === 'Invalid Date' || dateString === 'undefined' || dateString === 'null') {
|
|
445
|
+
return dayjs('invalid');
|
|
446
|
+
}
|
|
447
|
+
const configuredFormat = this.data()?.dpConfig?.format;
|
|
448
|
+
if (configuredFormat) {
|
|
449
|
+
try {
|
|
450
|
+
const parsed = dayjs(dateString, configuredFormat);
|
|
451
|
+
if (parsed.isValid()) {
|
|
452
|
+
return parsed;
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
catch (error) {
|
|
456
|
+
// Continue to fallback formats
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
const fallbackFormats = [
|
|
460
|
+
'DD/MMM/YYYY', 'DD/MM/YYYY', 'DD-MMM-YYYY', 'DD-MM-YYYY', 'YYYY-MM-DD'
|
|
461
|
+
];
|
|
462
|
+
for (const format of fallbackFormats) {
|
|
463
|
+
try {
|
|
464
|
+
const parsed = dayjs(dateString, format);
|
|
465
|
+
if (parsed.isValid()) {
|
|
466
|
+
return parsed;
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
catch (error) {
|
|
470
|
+
// Continue to next format
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
try {
|
|
474
|
+
const parsed = dayjs(dateString);
|
|
475
|
+
if (parsed.isValid()) {
|
|
476
|
+
return parsed;
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
catch (error) {
|
|
480
|
+
console.warn('Failed to parse date with any format:', dateString, error);
|
|
481
|
+
}
|
|
482
|
+
return dayjs('invalid');
|
|
483
|
+
}
|
|
448
484
|
generateDates(month, currentYearNumber) {
|
|
449
485
|
let dates = [];
|
|
450
486
|
const daysInMonth = dayjs().year(currentYearNumber).month(month).daysInMonth();
|
|
451
487
|
for (let currentDate = 1; currentDate <= daysInMonth; currentDate++) {
|
|
452
488
|
const date = dayjs().year(currentYearNumber).month(month).date(currentDate);
|
|
453
|
-
const dateString = date.format(this.data.dpConfig.format);
|
|
454
|
-
let isDisabledDay = this.data.datesDisabled.some(d => d === dateString);
|
|
489
|
+
const dateString = date.format(this.data().dpConfig.format);
|
|
490
|
+
let isDisabledDay = this.data().datesDisabled.some(d => d === dateString);
|
|
455
491
|
// Parse min/max dates safely - try date-only format first, then full format
|
|
456
492
|
let minDate = null;
|
|
457
493
|
let maxDate = null;
|
|
458
|
-
if (this.data.dpConfig.minDate) {
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
const minDateStr = this.data.dpConfig.minDate.split(' ')[0];
|
|
462
|
-
minDate = dayjs(minDateStr, 'DD/MM/YYYY');
|
|
463
|
-
if (!minDate.isValid()) {
|
|
464
|
-
minDate = dayjs(this.data.dpConfig.minDate, this.data.dpConfig.format);
|
|
465
|
-
}
|
|
466
|
-
}
|
|
467
|
-
catch (error) {
|
|
468
|
-
console.warn('Error parsing min date:', error);
|
|
469
|
-
}
|
|
494
|
+
if (this.data().dpConfig.minDate) {
|
|
495
|
+
const minDateStr = this.data().dpConfig.minDate.split(' ')[0];
|
|
496
|
+
minDate = this.parseDateWithMultipleFormats(minDateStr);
|
|
470
497
|
}
|
|
471
|
-
if (this.data.dpConfig.maxDate) {
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
maxDate = dayjs(maxDateStr, 'DD/MM/YYYY');
|
|
475
|
-
if (!maxDate.isValid()) {
|
|
476
|
-
maxDate = dayjs(this.data.dpConfig.maxDate, this.data.dpConfig.format);
|
|
477
|
-
}
|
|
478
|
-
}
|
|
479
|
-
catch (error) {
|
|
480
|
-
console.warn('Error parsing max date:', error);
|
|
481
|
-
}
|
|
498
|
+
if (this.data().dpConfig.maxDate) {
|
|
499
|
+
const maxDateStr = this.data().dpConfig.maxDate.split(' ')[0];
|
|
500
|
+
maxDate = this.parseDateWithMultipleFormats(maxDateStr);
|
|
482
501
|
}
|
|
483
502
|
if (!isDisabledDay && minDate && minDate.isValid()) {
|
|
484
503
|
isDisabledDay = minDate.isAfter(date, "day");
|
|
@@ -486,32 +505,34 @@ class TzDrpContainerComponent {
|
|
|
486
505
|
if (!isDisabledDay && maxDate && maxDate.isValid()) {
|
|
487
506
|
isDisabledDay = maxDate.isBefore(date, "day");
|
|
488
507
|
}
|
|
489
|
-
if (this.data?.dpConfig?.maxAllowedRange > 0 &&
|
|
508
|
+
if (this.data()?.dpConfig?.maxAllowedRange > 0 &&
|
|
490
509
|
!isDisabledDay &&
|
|
491
510
|
(this.localSelectedDatesSignal()?.startDate ?? false) && (!(this.localSelectedDatesSignal().endDate ?? false))) {
|
|
492
|
-
const startDate =
|
|
493
|
-
const maxEndDate = startDate.clone().add(this.data.dpConfig.maxAllowedRange - 1, 'days');
|
|
511
|
+
const startDate = this.parseDateWithMultipleFormats(this.localSelectedDatesSignal()?.startDate).startOf('day');
|
|
512
|
+
const maxEndDate = startDate.clone().add(this.data().dpConfig.maxAllowedRange - 1, 'days');
|
|
494
513
|
isDisabledDay = date.isAfter(maxEndDate, 'day');
|
|
495
514
|
}
|
|
496
|
-
const isCurrentDay = this.dayjsInstance().year(currentYearNumber).month(month).date(currentDate).format(this.data.dpConfig.format) ===
|
|
497
|
-
this.dayjsInstance().format(this.data.dpConfig.format);
|
|
515
|
+
const isCurrentDay = this.dayjsInstance().year(currentYearNumber).month(month).date(currentDate).format(this.data().dpConfig.format) ===
|
|
516
|
+
this.dayjsInstance().format(this.data().dpConfig.format);
|
|
498
517
|
// Extract date part for comparison (handle both date-only and datetime formats)
|
|
499
518
|
const startDateString = this.localSelectedDatesSignal()?.startDate?.split(' ')[0] || this.localSelectedDatesSignal()?.startDate;
|
|
500
519
|
const endDateString = this.localSelectedDatesSignal()?.endDate?.split(' ')[0] || this.localSelectedDatesSignal()?.endDate;
|
|
501
520
|
// Use the custom format for comparison instead of hardcoded DD/MM/YYYY
|
|
502
|
-
const
|
|
521
|
+
const startDateParsed = startDateString ? this.parseDateWithMultipleFormats(startDateString) : null;
|
|
522
|
+
const endDateParsed = endDateString ? this.parseDateWithMultipleFormats(endDateString) : null;
|
|
503
523
|
const isSelectedStartDay = !isDisabledDay &&
|
|
504
|
-
|
|
505
|
-
|
|
524
|
+
startDateParsed &&
|
|
525
|
+
startDateParsed.isValid() &&
|
|
526
|
+
date.isSame(startDateParsed, 'day');
|
|
506
527
|
const isSelectedEndDay = !isDisabledDay &&
|
|
507
|
-
|
|
508
|
-
|
|
528
|
+
endDateParsed &&
|
|
529
|
+
endDateParsed.isValid() &&
|
|
530
|
+
date.isSame(endDateParsed, 'day');
|
|
509
531
|
// For range calculation, parse dates properly using custom format
|
|
510
|
-
const
|
|
511
|
-
const
|
|
512
|
-
const
|
|
513
|
-
|
|
514
|
-
const inRangeDay = startDate && endDate &&
|
|
532
|
+
const isAfterSelectedStartDate = startDateParsed ? this.dayjsInstance(date).isAfter(startDateParsed, "day") : false;
|
|
533
|
+
const isBeforeSelectedEndDate = endDateParsed ? this.dayjsInstance(date).isBefore(endDateParsed, "day") : false;
|
|
534
|
+
const inRangeDay = startDateParsed && endDateParsed &&
|
|
535
|
+
startDateParsed.isValid() && endDateParsed.isValid() &&
|
|
515
536
|
isAfterSelectedStartDate &&
|
|
516
537
|
isBeforeSelectedEndDate;
|
|
517
538
|
dates.push({
|
|
@@ -521,7 +542,7 @@ class TzDrpContainerComponent {
|
|
|
521
542
|
isSelectedStartDay,
|
|
522
543
|
isSelectedEndDay,
|
|
523
544
|
inRangeDay,
|
|
524
|
-
toastMessage: this.data.messages.find(q => date.format(this.data.dpConfig.format) === q.date)?.message || "",
|
|
545
|
+
toastMessage: this.data().messages.find(q => date.format(this.data().dpConfig.format) === q.date)?.message || "",
|
|
525
546
|
isDisabledDay
|
|
526
547
|
});
|
|
527
548
|
}
|
|
@@ -536,78 +557,100 @@ class TzDrpContainerComponent {
|
|
|
536
557
|
}
|
|
537
558
|
if (!day.isDisabledDay) {
|
|
538
559
|
this.selectedItemLabelSignal.set(this.CUSTOM_RANGE_LABEL);
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
//
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
560
|
+
// Calculate the day being selected
|
|
561
|
+
const dayjsDay = dayjs()
|
|
562
|
+
.year(from === "LEFT" ? this.currentYearNumberSignal() : this.nextYearNumberSignal())
|
|
563
|
+
.month(from === "LEFT" ? this.currentMonthNumberSignal() : this.nextMonthNumberSignal())
|
|
564
|
+
.date(day.date);
|
|
565
|
+
let formattedDate = dayjsDay.format(this.data().dpConfig.format);
|
|
566
|
+
this.localSelectedDatesSignal.update(current => {
|
|
567
|
+
let updatedDates = { ...current };
|
|
568
|
+
// Start Date for comparison (using helper for robust check)
|
|
569
|
+
const startDate = current.startDate ? this.parseDateWithMultipleFormats(current.startDate) : null;
|
|
570
|
+
// FIX 4: Append time if enabled
|
|
571
|
+
if (this.data().dpConfig.enableTime === true) {
|
|
572
|
+
// The time is set to NOW, as per original non-signal component's logic
|
|
573
|
+
formattedDate = this.appendCurrentTime(dayjsDay);
|
|
574
|
+
}
|
|
575
|
+
if (this.selectionStarted()) {
|
|
576
|
+
// If the selected date is the same as the start date (New in your previous signal code, but valid)
|
|
577
|
+
if (startDate && dayjsDay.isSame(startDate, "day")) {
|
|
578
|
+
this.selectionStartedSignal.set(false);
|
|
579
|
+
this.isDatesValidSignal.set(true); // Manually setting validity (can be computed later)
|
|
580
|
+
return {
|
|
581
|
+
startDate: formattedDate,
|
|
582
|
+
endDate: formattedDate,
|
|
583
|
+
selectedRangeLabel: this.CUSTOM_RANGE_LABEL
|
|
584
|
+
};
|
|
585
|
+
}
|
|
586
|
+
// If the selected date is before the start date, make it the new start date
|
|
587
|
+
if (startDate && dayjsDay.isBefore(startDate, "day")) {
|
|
588
|
+
// Start selection over
|
|
589
|
+
this.selectionStartedSignal.set(true);
|
|
590
|
+
this.isDatesValidSignal.set(false);
|
|
591
|
+
return {
|
|
592
|
+
startDate: formattedDate,
|
|
593
|
+
endDate: null,
|
|
594
|
+
selectedRangeLabel: this.CUSTOM_RANGE_LABEL
|
|
595
|
+
};
|
|
596
|
+
}
|
|
597
|
+
// End selection
|
|
554
598
|
this.selectionStartedSignal.set(false);
|
|
555
|
-
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
|
|
556
|
-
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
|
|
557
599
|
this.isDatesValidSignal.set(true);
|
|
558
|
-
return
|
|
600
|
+
return {
|
|
601
|
+
...current,
|
|
602
|
+
endDate: formattedDate,
|
|
603
|
+
selectedRangeLabel: this.CUSTOM_RANGE_LABEL
|
|
604
|
+
};
|
|
559
605
|
}
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
this.
|
|
563
|
-
|
|
606
|
+
else {
|
|
607
|
+
// Start selection
|
|
608
|
+
this.selectionStartedSignal.set(true);
|
|
609
|
+
this.isDatesValidSignal.set(false);
|
|
610
|
+
return {
|
|
611
|
+
startDate: formattedDate,
|
|
564
612
|
endDate: null,
|
|
565
613
|
selectedRangeLabel: this.CUSTOM_RANGE_LABEL
|
|
566
|
-
}
|
|
567
|
-
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
|
|
568
|
-
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
|
|
569
|
-
return;
|
|
614
|
+
};
|
|
570
615
|
}
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
endDate: dayjsDay.format(this.data.dpConfig.format),
|
|
575
|
-
selectedRangeLabel: this.CUSTOM_RANGE_LABEL
|
|
576
|
-
});
|
|
577
|
-
}
|
|
578
|
-
else {
|
|
579
|
-
this.selectionStartedSignal.set(true);
|
|
580
|
-
this.localSelectedDatesSignal.set({
|
|
581
|
-
startDate: dayjs()
|
|
582
|
-
.year(from === "LEFT" ? this.currentYearNumberSignal() : this.nextYearNumberSignal())
|
|
583
|
-
.month(from === "LEFT" ? this.currentMonthNumberSignal() : this.nextMonthNumberSignal())
|
|
584
|
-
.date(day.date)
|
|
585
|
-
.format(this.data.dpConfig.format),
|
|
586
|
-
endDate: null,
|
|
587
|
-
selectedRangeLabel: this.CUSTOM_RANGE_LABEL
|
|
588
|
-
});
|
|
589
|
-
}
|
|
590
|
-
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
|
|
591
|
-
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
|
|
592
|
-
this.isDatesValidSignal.set(false);
|
|
593
|
-
if (this.localSelectedDatesSignal().startDate && this.localSelectedDatesSignal().endDate) {
|
|
594
|
-
this.isDatesValidSignal.set(true);
|
|
595
|
-
}
|
|
616
|
+
});
|
|
617
|
+
// The date arrays are COMPUTED, so no need for manual set()
|
|
618
|
+
this.isDatesValidSignal.set(!!(this.localSelectedDatesSignal().startDate && this.localSelectedDatesSignal().endDate));
|
|
596
619
|
}
|
|
597
620
|
if (day.toastMessage) {
|
|
598
621
|
this.toast.displayMsg(day.toastMessage, 4000);
|
|
599
622
|
}
|
|
600
623
|
}
|
|
624
|
+
// Helper method to append current time (replicates original selectDay complex formatting logic)
|
|
625
|
+
appendCurrentTime(date) {
|
|
626
|
+
if (!this.data().dpConfig.enableTime)
|
|
627
|
+
return date.format(this.data().dpConfig.format);
|
|
628
|
+
// This complex formatting logic must be replicated exactly for backward compatibility
|
|
629
|
+
const now = dayjs();
|
|
630
|
+
const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
|
|
631
|
+
if (timeStartMatch) {
|
|
632
|
+
const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
|
|
633
|
+
const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
|
|
634
|
+
const timeOnlyFormat = this.data().dpConfig.format.substring(timeStartIndex + timeStartMatch[1].length);
|
|
635
|
+
const dateString = date.format(dateOnlyFormat);
|
|
636
|
+
const timeString = now.format(timeOnlyFormat);
|
|
637
|
+
return dateString + timeStartMatch[1] + timeString;
|
|
638
|
+
}
|
|
639
|
+
// Fallback if no time pattern found
|
|
640
|
+
return date.format(this.data().dpConfig.format);
|
|
641
|
+
}
|
|
601
642
|
selectRange(item) {
|
|
602
643
|
if (!item)
|
|
603
644
|
return;
|
|
604
645
|
let startDate = this.dayjsInstance(item.value[0]);
|
|
605
646
|
let endDate = this.dayjsInstance(item.value[1]);
|
|
606
|
-
const startDateStr = startDate.format(this.data.dpConfig.format);
|
|
607
|
-
const endDateStr = endDate.format(this.data.dpConfig.format);
|
|
608
|
-
|
|
609
|
-
const
|
|
610
|
-
|
|
647
|
+
const startDateStr = startDate.format(this.data().dpConfig.format);
|
|
648
|
+
const endDateStr = endDate.format(this.data().dpConfig.format);
|
|
649
|
+
// Note: The original datesDisabled check uses the custom dayjsInstance, which is good.
|
|
650
|
+
const isAnyDateDisabled = this.data().datesDisabled.some((date) => this.dayjsInstance(date, this.data().dpConfig.format).isBetween(startDateStr, endDateStr, null, '[]'));
|
|
651
|
+
// FIX 4: Use robust parsing for minDate/maxDate comparison
|
|
652
|
+
const minDate = !!this.data().dpConfig.minDate ? this.parseDateWithMultipleFormats(this.data().dpConfig.minDate) : dayjs('invalid');
|
|
653
|
+
const maxDate = !!this.data().dpConfig.maxDate ? this.parseDateWithMultipleFormats(this.data().dpConfig.maxDate) : dayjs('invalid');
|
|
611
654
|
const isWithinLimits = (!minDate.isValid() || !startDate.isBefore(minDate, "day")) &&
|
|
612
655
|
(!maxDate.isValid() || !endDate.isAfter(maxDate, "day"));
|
|
613
656
|
if (!isWithinLimits || isAnyDateDisabled) {
|
|
@@ -617,6 +660,7 @@ class TzDrpContainerComponent {
|
|
|
617
660
|
this.selectedItemLabelSignal.set(item.label);
|
|
618
661
|
this.currentMonthNumberSignal.set(startDate.month());
|
|
619
662
|
this.currentYearNumberSignal.set(startDate.year());
|
|
663
|
+
// Month/Year rollover logic is kept as is to match original functionality
|
|
620
664
|
if (this.currentMonthNumberSignal() === 11) {
|
|
621
665
|
this.nextMonthNumberSignal.set(0);
|
|
622
666
|
this.nextYearNumberSignal.set(this.currentYearNumberSignal() + 1);
|
|
@@ -630,10 +674,8 @@ class TzDrpContainerComponent {
|
|
|
630
674
|
endDate: endDateStr,
|
|
631
675
|
selectedRangeLabel: item.label
|
|
632
676
|
});
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
|
|
636
|
-
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
|
|
677
|
+
// The month/date computed properties (currentMonth, currentMonthDates, etc.)
|
|
678
|
+
// update automatically now.
|
|
637
679
|
this.isDatesValidSignal.set(!!(this.localSelectedDatesSignal().startDate && this.localSelectedDatesSignal().endDate));
|
|
638
680
|
}
|
|
639
681
|
resetRange() {
|
|
@@ -648,11 +690,13 @@ class TzDrpContainerComponent {
|
|
|
648
690
|
this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
|
|
649
691
|
this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
|
|
650
692
|
}
|
|
693
|
+
// TzDrpContainerComponent (Signal-Migrated)
|
|
651
694
|
applyDates() {
|
|
652
695
|
// If time is enabled, append time to the dates before applying
|
|
653
|
-
if (this.data.dpConfig.enableTime === true) {
|
|
696
|
+
if (this.data().dpConfig.enableTime === true) {
|
|
654
697
|
let startTime;
|
|
655
698
|
let endTime;
|
|
699
|
+
// Use signal accessors
|
|
656
700
|
if (this.is12HourFormat()) {
|
|
657
701
|
startTime = this.formatTime(this.startHour(), this.startMinute(), this.startAmPm());
|
|
658
702
|
endTime = this.formatTime(this.endHour(), this.endMinute(), this.endAmPm());
|
|
@@ -661,22 +705,57 @@ class TzDrpContainerComponent {
|
|
|
661
705
|
startTime = this.formatTime(this.startHour24(), this.startMinute(), '');
|
|
662
706
|
endTime = this.formatTime(this.endHour24(), this.endMinute(), '');
|
|
663
707
|
}
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
708
|
+
const localDates = this.localSelectedDatesSignal();
|
|
709
|
+
let startDateOnly = localDates.startDate;
|
|
710
|
+
let endDateOnly = localDates.endDate;
|
|
711
|
+
// FIX 4: Use robust parsing/formatting for date part extraction
|
|
712
|
+
if (startDateOnly) {
|
|
713
|
+
const parsedStart = this.parseDateWithMultipleFormats(startDateOnly);
|
|
714
|
+
// This is a complex date format extraction in the original, simplified here
|
|
715
|
+
// by taking the date part only (assuming time is always separated by space)
|
|
716
|
+
// For true fidelity, the original logic for date part extraction with time must be preserved.
|
|
717
|
+
if (parsedStart.isValid()) {
|
|
718
|
+
// Preserve original date formatting logic: extract only the date part
|
|
719
|
+
// using the configured format elements BEFORE the time components.
|
|
720
|
+
const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
|
|
721
|
+
if (timeStartMatch) {
|
|
722
|
+
const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
|
|
723
|
+
const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
|
|
724
|
+
startDateOnly = parsedStart.format(dateOnlyFormat);
|
|
725
|
+
}
|
|
726
|
+
else {
|
|
727
|
+
// Fallback to splitting if format is date-only
|
|
728
|
+
startDateOnly = startDateOnly.split(' ')[0];
|
|
729
|
+
}
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
if (endDateOnly) {
|
|
733
|
+
const parsedEnd = this.parseDateWithMultipleFormats(endDateOnly);
|
|
734
|
+
if (parsedEnd.isValid()) {
|
|
735
|
+
const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
|
|
736
|
+
if (timeStartMatch) {
|
|
737
|
+
const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
|
|
738
|
+
const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
|
|
739
|
+
endDateOnly = parsedEnd.format(dateOnlyFormat);
|
|
740
|
+
}
|
|
741
|
+
else {
|
|
742
|
+
endDateOnly = endDateOnly.split(' ')[0];
|
|
743
|
+
}
|
|
744
|
+
}
|
|
745
|
+
}
|
|
667
746
|
const startDateWithTime = startDateOnly + ' ' + startTime;
|
|
668
747
|
const endDateWithTime = endDateOnly + ' ' + endTime;
|
|
669
|
-
this.data.dateChange({
|
|
748
|
+
this.data().dateChange({
|
|
670
749
|
startDate: startDateWithTime,
|
|
671
750
|
endDate: endDateWithTime
|
|
672
751
|
});
|
|
673
752
|
}
|
|
674
753
|
else {
|
|
675
|
-
this.data.dateChange(this.localSelectedDatesSignal());
|
|
754
|
+
this.data().dateChange(this.localSelectedDatesSignal());
|
|
676
755
|
}
|
|
677
756
|
}
|
|
678
757
|
cancelDatePicker() {
|
|
679
|
-
this.data.close();
|
|
758
|
+
this.data().close();
|
|
680
759
|
}
|
|
681
760
|
// Time-related methods
|
|
682
761
|
onStartHourInput() {
|
|
@@ -735,7 +814,7 @@ class TzDrpContainerComponent {
|
|
|
735
814
|
return minute;
|
|
736
815
|
}
|
|
737
816
|
is12HourFormat() {
|
|
738
|
-
return this.data.dpConfig.format.includes('A') || this.data.dpConfig.format.includes('a');
|
|
817
|
+
return this.data().dpConfig.format.includes('A') || this.data().dpConfig.format.includes('a');
|
|
739
818
|
}
|
|
740
819
|
formatTime(hour, minute, amPm) {
|
|
741
820
|
if (this.is12HourFormat()) {
|
|
@@ -750,7 +829,7 @@ class TzDrpContainerComponent {
|
|
|
750
829
|
// Initialize time values from existing selected dates if they contain time
|
|
751
830
|
let startTimeInitialized = false;
|
|
752
831
|
let endTimeInitialized = false;
|
|
753
|
-
if (this.data.dpConfig.enableTime && this.localSelectedDatesSignal().startDate) {
|
|
832
|
+
if (this.data().dpConfig.enableTime && this.localSelectedDatesSignal().startDate) {
|
|
754
833
|
const startDateParts = this.localSelectedDatesSignal().startDate.split(' ');
|
|
755
834
|
if (startDateParts.length > 1) {
|
|
756
835
|
const timePart = startDateParts.slice(1).join(' '); // Handle multiple spaces
|
|
@@ -758,7 +837,7 @@ class TzDrpContainerComponent {
|
|
|
758
837
|
startTimeInitialized = true;
|
|
759
838
|
}
|
|
760
839
|
}
|
|
761
|
-
if (this.data.dpConfig.enableTime && this.localSelectedDatesSignal().endDate) {
|
|
840
|
+
if (this.data().dpConfig.enableTime && this.localSelectedDatesSignal().endDate) {
|
|
762
841
|
const endDateParts = this.localSelectedDatesSignal().endDate.split(' ');
|
|
763
842
|
if (endDateParts.length > 1) {
|
|
764
843
|
const timePart = endDateParts.slice(1).join(' '); // Handle multiple spaces
|
|
@@ -767,7 +846,7 @@ class TzDrpContainerComponent {
|
|
|
767
846
|
}
|
|
768
847
|
}
|
|
769
848
|
// If no existing time found, set current time as default
|
|
770
|
-
if (this.data.dpConfig.enableTime) {
|
|
849
|
+
if (this.data().dpConfig.enableTime) {
|
|
771
850
|
if (!startTimeInitialized) {
|
|
772
851
|
this.setCurrentTimeAsDefault(true);
|
|
773
852
|
}
|
|
@@ -994,9 +1073,10 @@ class TzDrpContainerComponent {
|
|
|
994
1073
|
i0.ɵɵtext(38, "Apply");
|
|
995
1074
|
i0.ɵɵelementEnd()()();
|
|
996
1075
|
} if (rf & 2) {
|
|
1076
|
+
let tmp_1_0;
|
|
997
1077
|
i0.ɵɵproperty("cdkTrapFocusAutoCapture", true);
|
|
998
1078
|
i0.ɵɵadvance(3);
|
|
999
|
-
i0.ɵɵproperty("ngIf", (ctx.data == null ? null :
|
|
1079
|
+
i0.ɵɵproperty("ngIf", ((tmp_1_0 = ctx.data()) == null ? null : tmp_1_0.dpConfig == null ? null : tmp_1_0.dpConfig.ranges == null ? null : tmp_1_0.dpConfig.ranges.length) > 0);
|
|
1000
1080
|
i0.ɵɵadvance(3);
|
|
1001
1081
|
i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(15, _c0, ctx.isPreviousMonthDisabled()));
|
|
1002
1082
|
i0.ɵɵadvance(4);
|
|
@@ -1016,14 +1096,14 @@ class TzDrpContainerComponent {
|
|
|
1016
1096
|
i0.ɵɵadvance(2);
|
|
1017
1097
|
i0.ɵɵproperty("ngForOf", ctx.nextMonthDates());
|
|
1018
1098
|
i0.ɵɵadvance();
|
|
1019
|
-
i0.ɵɵproperty("ngIf", ctx.data.dpConfig.enableTime === true);
|
|
1099
|
+
i0.ɵɵproperty("ngIf", ctx.data().dpConfig.enableTime === true);
|
|
1020
1100
|
i0.ɵɵadvance(4);
|
|
1021
1101
|
i0.ɵɵproperty("disabled", !ctx.isDatesValid());
|
|
1022
1102
|
} }, dependencies: [i2.NgClass, i2.NgForOf, i2.NgIf, i3.NgSelectOption, i3.ɵNgSelectMultipleOption, i3.DefaultValueAccessor, i3.NumberValueAccessor, i3.SelectControlValueAccessor, i3.NgControlStatus, i3.MinValidator, i3.MaxValidator, i3.NgModel, i4.ButtonDirective, i5.CdkTrapFocus], styles: ["[_ngcontent-%COMP%]:root{--pmry-200: #99BAF7;--pmry-100: #CBDDFB;--pmry-500: #0937B2;--pmry-400: #3C68D0;--pmry-600: #062A99;--pmry-700: #041F80;--pmry-300: #638FE7;--pmry-800: #021567;--pmry-900: #010F55;--sec-d-purple: #40447F;--sec-maroon: #6B034E;--sec-mud-red: #B23600;--sec-orange: #ED711C;--sec-purple: #815FD5;--sec-teal: #10ADAE;--sec-yellow: #D4900C;--sec-green: #547F40;--sec-bright-green: #27D22E;--sec-dark-teal: #035F6B;--sec-chocolate: #7C2F33;--sec-rube-pink: #C13D6D;--sec-cerulean: #0087B2;--sem-error: #B00020;--sem-info: #0091FF;--sem-warning: #FF9D00;--sem-success: #38AF49;--grey-bg-1: #FAFAFA;--grey-bg: #F5F5F5;--grey-seperators: #E0E0E0;--grey-disabled: #C8CDD3;--grey-hover: #F5F7FC;--grey-pressed: #E6EBF7;--grey-row: #F5F7FC;--dec-light-yellow: #F4E7C3;--dec-light-purple: #DACFF9;--dec-light-green: #E4F5E9;--dec-light-green2: #F1FFF3;--dec-light-pink: #FAE1EA;--dec-: #F4CBC1;--dec-lt-orange: #FAEFED;--dec-light-blue: #CFECF9;--dec-row-selection: #F1FDF8;--dec-row-selection2: #F2FBFF;--dec-row-lines: #D3E1E9;--text-white: #FFFFFF;--text-muted: #6A737D;--text-black: #181F33;--MR-solid-blue2:#C8D5F6;--MR-solid-purple:#C9C3FB;--MR-solid-orange:#EEAC9F;--MR-solid-green:#ACDADA;--MR-solid-brown:#E8C8AF;--MR-solid-yellow:#FFEFC7;--MR-solid-blue:#BBE6FF;--MR-solid-pink:#FFC6F2;--tr-hover:#F0F3FA;--tr-pressed:#DAE1F3;--brand-primary: #0937B2;--brand-primary-light: #3C68D0;--brand-primary-dark: #062A99;--brand-primary-darker: #041F80;--brand-primary-lighter: #638FE7;--brand-primary-lightest: #CBDDFB;--brand-primary-hover: #F0F3FA;--brand-primary-active: #DAE1F3;--brand-secondary: #ED711C;--brand-secondary-light: #F09E65;--brand-secondary-dark: #B23600;--brand-secondary-lighter: #FFC6F2;--brand-accent: #10ADAE;--brand-accent-light: #16CBBC;--brand-accent-dark: #035F6B;--brand-accent-lighter: #ACDADA;--brand-success: #38AF49;--brand-success-light: #4CAF50;--brand-success-dark: #216531;--brand-success-lighter: #E4F5E9;--brand-success-lightest: #F1FFF3;--brand-error: #B00020;--brand-error-light: #F04E4E;--brand-error-dark: #A60060;--brand-error-lighter: #FAE1EA;--brand-error-lightest: #FDF2F2;--brand-warning: #FF9D00;--brand-warning-light: #D4900C;--brand-warning-dark: #624000;--brand-warning-lighter: #F4E7C3;--brand-warning-lightest: #FAEFED;--brand-info: #0091FF;--brand-info-light: #35A1FF;--brand-info-dark: #0087B2;--brand-info-lighter: #CFECF9;--text-primary: #181F33;--text-secondary: #6A737D;--text-tertiary: #929DAB;--text-disabled: #929DAB;--text-primary-87: rgba(24, 31, 51, .87);--text-primary-60: rgba(24, 31, 51, .6);--text-primary-38: rgba(24, 31, 51, .38);--text-primary-12: rgba(24, 31, 51, .12);--bg-primary: #FFFFFF;--bg-secondary: #FAFAFA;--bg-tertiary: #F5F5F5;--bg-overlay: rgba(0, 0, 0, .32);--bg-overlay-light: rgba(0, 0, 0, .12);--bg-overlay-lighter: rgba(0, 0, 0, .08);--bg-overlay-lightest: rgba(0, 0, 0, .04);--border-primary: #E0E0E0;--border-secondary: #D6DCE2;--border-tertiary: #C8CDD3;--border-light: #F1F4F8;--border-primary-12: rgba(0, 0, 0, .12);--border-primary-08: rgba(0, 0, 0, .08);--border-primary-06: rgba(0, 0, 0, .06);--shadow-primary: rgba(0, 0, 0, .12);--shadow-secondary: rgba(0, 0, 0, .08);--shadow-tertiary: rgba(0, 0, 0, .04);--shadow-light: rgba(0, 0, 0, .06);--status-available: #929DAB;--status-unavailable: #CCD3DA;--status-hotseat: #857BFF;--status-multiteam: #10ADAE;--status-selected: #10ADAE;--status-upcoming: #D4900C;--status-room: #38AF49;--status-room-booked: #B23600;--status-room-unavailable: #181F33;--team-color-1: #F8C52E;--team-color-2: #FA8E20;--team-color-3: #987CDD;--team-color-4: #16CBBC;--team-color-5: #E65010;--team-color-6: #A60060;--team-color-7: #ED323B;--team-color-8: #35A1FF;--team-color-9: #80D348}.daterangepicker-container[_ngcontent-%COMP%]{background:var(--bg-primary, #FFFFFF);border:1px solid var(--border-primary, #E0E0E0);box-shadow:0 12px 24px #0000001f,0 4px 8px #0000001f;border-radius:12px;display:flex;flex-direction:column;font-family:Lato;overflow:hidden;-webkit-user-select:none;user-select:none}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%]{max-width:100vw;border:none}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%]{display:flex;gap:24px;padding:16px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__ranges[_ngcontent-%COMP%]{display:flex;flex-direction:column}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .mis-btn[_ngcontent-%COMP%]{background:none;outline:none;border:none;cursor:pointer;border-radius:4px;vertical-align:middle;text-align:center;box-sizing:border-box;display:flex;align-items:center;text-decoration:none;justify-content:center;padding:10px 16px;font-size:16px;line-height:24px;background-color:transparent;color:var(--brand-primary, #0937B2)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .active-range[_ngcontent-%COMP%]{background-color:var(--brand-primary-lightest, #CBDDFB)}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%]{flex-direction:column;align-items:center;position:fixed;bottom:0;left:0;background-color:#fff;width:100%;max-height:68vh;overflow-y:auto;border-radius:30px;gap:24px;padding:10% 0 30%;box-shadow:0 -4px 8px 10000px #0000001f;scrollbar-width:none;-ms-overflow-style:none}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__left[_ngcontent-%COMP%], .daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__right[_ngcontent-%COMP%]{display:flex;flex-direction:column}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__left[_ngcontent-%COMP%], .daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .datepicker__right[_ngcontent-%COMP%]{width:90%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%]{display:flex;height:32px;justify-content:space-between;align-items:center;width:100%;padding-bottom:10%}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:16px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.2px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{margin:0 auto;font-size:4vw}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]{height:20px;width:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:4px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon.disabled-month[_ngcontent-%COMP%]{opacity:.5;cursor:not-allowed}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]:not(.disabled-month):hover{cursor:pointer;background-color:var(--brand-primary-lightest, #CBDDFB)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]:nth-child(1){transform:rotate(180deg)}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .daterangepicker-container__arrow__icon[_ngcontent-%COMP%]{width:7%}}@media only screen and (min-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .mobile_view[_ngcontent-%COMP%]{display:none}}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__header__prabu[_ngcontent-%COMP%] .pc_view[_ngcontent-%COMP%]{display:none}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%]{height:100%;width:252px}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%]{width:100%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%]{width:100%;display:flex;padding-bottom:10px}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%]{width:36px;height:18px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%]{margin:0 auto}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:12px;font-style:normal;font-weight:400;line-height:18px;letter-spacing:.2px;text-align:center;color:var(--text-secondary, #6A737D)}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:3vw}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__weekdays[_ngcontent-%COMP%] .daterangepicker-container__weekday[_ngcontent-%COMP%] span.current-day[_ngcontent-%COMP%]{font-weight:700;letter-spacing:.25px;color:var(--text-primary, #181F33)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%]{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%]{width:36px;height:36px;display:flex;align-items:center;justify-content:center}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%]{flex:0 0 14.2857142857%;width:14.2857142857%;height:14.2857142857%;aspect-ratio:1}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%]:not(.in-range-day):not(.selected-start-day):not(.selected-end-day){border-radius:4px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.disabled-day[_ngcontent-%COMP%]{cursor:default}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.disabled-day[_ngcontent-%COMP%]:hover{background-color:transparent}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.disabled-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:var(--text-secondary, #6A737D)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.is-valid-date[_ngcontent-%COMP%]:not(.disabled-day):not(.selected-start-day):not(.selected-end-day) > span[_ngcontent-%COMP%]{color:var(--text-primary, #181F33)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day.is-valid-date[_ngcontent-%COMP%]:not(.disabled-day):not(.selected-start-day):not(.selected-end-day):hover{background-color:var(--brand-primary-lightest, #CBDDFB);cursor:pointer}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.2px;text-align:center;color:var(--text-primary, #181F33)}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:3.4vw}}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span.current-day[_ngcontent-%COMP%]{font-weight:700;letter-spacing:.25px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span.selected-day[_ngcontent-%COMP%]{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .daterangepicker-container__day[_ngcontent-%COMP%] span.disabled-day[_ngcontent-%COMP%]{color:var(--text-secondary, #6A737D)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-same-day[_ngcontent-%COMP%]{background-color:var(--brand-primary, #0937B2);border-radius:50%!important}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-same-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-start-day[_ngcontent-%COMP%]{background-color:var(--brand-primary, #0937B2);border-radius:20px 4px 4px 20px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-start-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-end-day[_ngcontent-%COMP%]{background-color:var(--brand-primary, #0937B2);border-radius:0 20px 20px 0}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .selected-end-day[_ngcontent-%COMP%] > span[_ngcontent-%COMP%]{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__view[_ngcontent-%COMP%] .daterangepicker-container__body[_ngcontent-%COMP%] .daterangepicker-container__days[_ngcontent-%COMP%] .in-range-day[_ngcontent-%COMP%]:not(.disabled-day){background-color:var(--brand-primary-lightest, #CBDDFB)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%]{border-top:1px solid var(--border-primary, #E0E0E0);padding:16px 24px;background-color:#f8f9fa;display:flex;gap:24px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%]{flex:1}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] h4[_ngcontent-%COMP%]{margin:0 0 8px;font-size:14px;font-weight:600;color:#333}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%] .time-input[_ngcontent-%COMP%]{width:60px;padding:8px;border:1px solid #ddd;border-radius:4px;text-align:center;font-size:14px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%] .time-input[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--brand-primary, #0937B2);box-shadow:0 0 0 2px #0937b233}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%] .time-input.hour-input[_ngcontent-%COMP%], .daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%] .time-input.minute-input[_ngcontent-%COMP%]{width:50px}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%] .time-separator[_ngcontent-%COMP%]{font-size:16px;font-weight:600;color:#666}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%] .am-pm-selector[_ngcontent-%COMP%]{padding:7.1px 12px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px;cursor:pointer}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker-container__time[_ngcontent-%COMP%] .time-section[_ngcontent-%COMP%] .time-inputs[_ngcontent-%COMP%] .am-pm-selector[_ngcontent-%COMP%]:focus{outline:none;border-color:var(--brand-primary, #0937B2)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;border-top:1px solid var(--border-primary, #E0E0E0);padding:16px 24px;gap:24px}@media only screen and (max-width: 900px){.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%]{justify-content:space-evenly;padding:2% 0;background-color:var(--bg-primary, #FFFFFF);position:fixed;bottom:0;left:0;width:100%;height:8vh;border-top:2px solid var(--text-disabled, #C8CDD3)}.daterangepicker-container[_ngcontent-%COMP%] .daterangepicker__footer[_ngcontent-%COMP%] #mobile-footer-btn[_ngcontent-%COMP%]{width:36%;font-size:3.8vw}}"] }); }
|
|
1023
1103
|
}
|
|
1024
1104
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TzDrpContainerComponent, [{
|
|
1025
1105
|
type: Component,
|
|
1026
|
-
args: [{ selector: "mis-tz-drp", template: "<div class=\"daterangepicker-container\" aria-label=\"date range picker\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\">\n <div class=\"daterangepicker-container__view\">\n <div tabindex=\"-1\" cdkFocusInitial></div>\n <div *ngIf=\"data?.dpConfig?.ranges?.length > 0\" class=\"daterangepicker-container__ranges\">\n <div *ngFor=\"let item of data?.dpConfig?.ranges ?? []\" >\n <button\n [ngClass]=\"{'active-range' : selectedItemLabel() === item.label}\"\n (click)=\"selectRange(item)\"\n class=\"mis-btn\"\n >\n {{ item.label }}\n </button>\n </div>\n <div> <button class=\"mis-btn\" [ngClass]=\"{'active-range' : selectedItemLabel() === 'Custom Range'}\" (click)=\"resetRange()\">Custom Range</button> </div>\n </div>\n <div class=\"datepicker__left\">\n <div class=\"daterangepicker-container__header__prabu\">\n <div\n class=\"daterangepicker-container__arrow__icon\"\n tabindex=\"0\"\n (click)=\"!isPreviousMonthDisabled() && navigateMonth('PREVIOUS')\"\n (keyup.enter)=\"!isPreviousMonthDisabled() && navigateMonth('PREVIOUS')\"\n aria-label=\"Previous Month\"\n [ngClass]=\"{\n 'disabled-month': isPreviousMonthDisabled()\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n <span> {{ currentMonth() }} {{ currentYearNumber() }} </span>\n <div></div>\n <!-- Button visible in mobile view -->\n <div\n class=\"daterangepicker-container__arrow__icon mobile_view\"\n tabindex=\"0\"\n (click)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n (keyup.enter)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n aria-label=\"Next Month\"\n [ngClass]=\"{\n 'disabled-month': isNextMonthDisabled()\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n </div>\n <div class=\"daterangepicker-container__body\">\n <div class=\"daterangepicker-container__weekdays\">\n <div class=\"daterangepicker-container__weekday\" *ngFor=\"let weekDay of weekDays()\">\n <span>{{ weekDay.label }}</span>\n </div>\n </div>\n <div class=\"daterangepicker-container__days\">\n <div\n class=\"daterangepicker-container__day\" \n [ngClass]=\"{\n 'selected-same-day': day.isSelectedStartDay && day.isSelectedEndDay,\n 'selected-start-day': day.isSelectedStartDay,\n 'selected-end-day': day.isSelectedEndDay,\n 'disabled-day': day.isDisabledDay,\n 'in-range-day': day.inRangeDay,\n 'is-valid-date': day.date > 0 && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n *ngFor=\"let day of currentMonthDates()\"\n (click)=\"selectDay('LEFT', day)\"\n (keyup.enter)=\"selectDay('LEFT', day)\"\n >\n <span *ngIf=\"day.date > 0\"\n [tabindex]=\"day.isDisabledDay ? -1 : 0\"\n [attr.aria-label]=\"retractDayMonth(day.date, currentMonth(), currentYearNumber())\">\n {{ day.date }}\n </span>\n </div>\n </div>\n </div>\n </div>\n <div class=\"datepicker__right\">\n <div class=\"daterangepicker-container__header__prabu\">\n <div></div>\n <span> {{ nextMonth() }} {{ nextYearNumber() }} </span>\n <div\n class=\"daterangepicker-container__arrow__icon pc_view\"\n tabindex=\"0\"\n (click)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n (keyup.enter)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n [ngClass]=\"{\n 'disabled-month': isNextMonthDisabled()\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n </div>\n <div class=\"daterangepicker-container__body\">\n <div class=\"daterangepicker-container__weekdays\">\n <div class=\"daterangepicker-container__weekday\" *ngFor=\"let weekDay of weekDays()\">\n <span>{{ weekDay.label }}</span>\n </div>\n </div>\n <div class=\"daterangepicker-container__days\">\n <div\n class=\"daterangepicker-container__day\"\n [ngClass]=\"{\n 'selected-same-day': day.isSelectedStartDay && day.isSelectedEndDay,\n 'selected-start-day': day.isSelectedStartDay,\n 'selected-end-day': day.isSelectedEndDay,\n 'disabled-day': day.isDisabledDay,\n 'in-range-day': day.inRangeDay,\n 'is-valid-date': day.date > 0 && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n *ngFor=\"let day of nextMonthDates()\"\n (click)=\"selectDay('RIGHT', day)\"\n (keyup.enter)=\"selectDay('RIGHT', day)\"\n >\n <span *ngIf=\"day.date > 0\"\n [tabindex]=\"day.isDisabledDay ? -1 : 0\"\n [attr.aria-label]=\"retractDayMonth(day.date, nextMonth(), nextYearNumber())\">\n {{ day.date }}\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <!-- Time Selection Section -->\n <div class=\"daterangepicker-container__time\" *ngIf=\"data.dpConfig.enableTime === true\">\n <div class=\"time-section\">\n <h4>From</h4>\n <div class=\"time-inputs\">\n <input \n type=\"number\" \n [ngModel]=\"is12HourFormat() ? startHour() : startHour24()\" \n (ngModelChange)=\"is12HourFormat() ? startHourSignal.set($event) : startHour24Signal.set($event); onStartHourInput()\"\n [min]=\"is12HourFormat() ? 1 : 0\" \n [max]=\"is12HourFormat() ? 12 : 23\" \n step=\"1\"\n class=\"time-input hour-input\"\n placeholder=\"HH\">\n <span class=\"time-separator\">:</span>\n <input \n type=\"number\" \n [ngModel]=\"startMinute()\" (ngModelChange)=\"startMinuteSignal.set($event)\" \n (input)=\"onStartMinuteInput()\"\n min=\"0\" \n max=\"59\" \n step=\"1\"\n class=\"time-input minute-input\"\n placeholder=\"MM\">\n <select \n [ngModel]=\"startAmPm()\" (ngModelChange)=\"startAmPmSignal.set($event)\" \n class=\"am-pm-selector\"\n *ngIf=\"is12HourFormat()\">\n <option value=\"AM\">AM</option>\n <option value=\"PM\">PM</option>\n </select>\n </div>\n </div>\n \n <div class=\"time-section\">\n <h4>To</h4>\n <div class=\"time-inputs\">\n <input \n type=\"number\" \n [ngModel]=\"is12HourFormat() ? endHour() : endHour24()\" \n (ngModelChange)=\"is12HourFormat() ? endHourSignal.set($event) : endHour24Signal.set($event); onEndHourInput()\"\n [min]=\"is12HourFormat() ? 1 : 0\" \n [max]=\"is12HourFormat() ? 12 : 23\" \n step=\"1\"\n class=\"time-input hour-input\"\n placeholder=\"HH\">\n <span class=\"time-separator\">:</span>\n <input \n type=\"number\" \n [ngModel]=\"endMinute()\" (ngModelChange)=\"endMinuteSignal.set($event)\" \n (input)=\"onEndMinuteInput()\"\n min=\"0\" \n max=\"59\" \n step=\"1\"\n class=\"time-input minute-input\"\n placeholder=\"MM\">\n <select \n [ngModel]=\"endAmPm()\" (ngModelChange)=\"endAmPmSignal.set($event)\" \n class=\"am-pm-selector\"\n *ngIf=\"is12HourFormat()\">\n <option value=\"AM\">AM</option>\n <option value=\"PM\">PM</option>\n </select>\n </div>\n </div>\n </div>\n \n <div class=\"daterangepicker__footer\">\n <button mis-button type=\"none\" id='mobile-footer-btn' (click)=\"cancelDatePicker()\">Cancel</button>\n <button mis-button type=\"primary\" id=\"mobile-footer-btn\" (click)=\"applyDates()\" [disabled]=\"!isDatesValid()\">Apply</button>\n </div>\n</div>", styles: [":root{--pmry-200: #99BAF7;--pmry-100: #CBDDFB;--pmry-500: #0937B2;--pmry-400: #3C68D0;--pmry-600: #062A99;--pmry-700: #041F80;--pmry-300: #638FE7;--pmry-800: #021567;--pmry-900: #010F55;--sec-d-purple: #40447F;--sec-maroon: #6B034E;--sec-mud-red: #B23600;--sec-orange: #ED711C;--sec-purple: #815FD5;--sec-teal: #10ADAE;--sec-yellow: #D4900C;--sec-green: #547F40;--sec-bright-green: #27D22E;--sec-dark-teal: #035F6B;--sec-chocolate: #7C2F33;--sec-rube-pink: #C13D6D;--sec-cerulean: #0087B2;--sem-error: #B00020;--sem-info: #0091FF;--sem-warning: #FF9D00;--sem-success: #38AF49;--grey-bg-1: #FAFAFA;--grey-bg: #F5F5F5;--grey-seperators: #E0E0E0;--grey-disabled: #C8CDD3;--grey-hover: #F5F7FC;--grey-pressed: #E6EBF7;--grey-row: #F5F7FC;--dec-light-yellow: #F4E7C3;--dec-light-purple: #DACFF9;--dec-light-green: #E4F5E9;--dec-light-green2: #F1FFF3;--dec-light-pink: #FAE1EA;--dec-: #F4CBC1;--dec-lt-orange: #FAEFED;--dec-light-blue: #CFECF9;--dec-row-selection: #F1FDF8;--dec-row-selection2: #F2FBFF;--dec-row-lines: #D3E1E9;--text-white: #FFFFFF;--text-muted: #6A737D;--text-black: #181F33;--MR-solid-blue2:#C8D5F6;--MR-solid-purple:#C9C3FB;--MR-solid-orange:#EEAC9F;--MR-solid-green:#ACDADA;--MR-solid-brown:#E8C8AF;--MR-solid-yellow:#FFEFC7;--MR-solid-blue:#BBE6FF;--MR-solid-pink:#FFC6F2;--tr-hover:#F0F3FA;--tr-pressed:#DAE1F3;--brand-primary: #0937B2;--brand-primary-light: #3C68D0;--brand-primary-dark: #062A99;--brand-primary-darker: #041F80;--brand-primary-lighter: #638FE7;--brand-primary-lightest: #CBDDFB;--brand-primary-hover: #F0F3FA;--brand-primary-active: #DAE1F3;--brand-secondary: #ED711C;--brand-secondary-light: #F09E65;--brand-secondary-dark: #B23600;--brand-secondary-lighter: #FFC6F2;--brand-accent: #10ADAE;--brand-accent-light: #16CBBC;--brand-accent-dark: #035F6B;--brand-accent-lighter: #ACDADA;--brand-success: #38AF49;--brand-success-light: #4CAF50;--brand-success-dark: #216531;--brand-success-lighter: #E4F5E9;--brand-success-lightest: #F1FFF3;--brand-error: #B00020;--brand-error-light: #F04E4E;--brand-error-dark: #A60060;--brand-error-lighter: #FAE1EA;--brand-error-lightest: #FDF2F2;--brand-warning: #FF9D00;--brand-warning-light: #D4900C;--brand-warning-dark: #624000;--brand-warning-lighter: #F4E7C3;--brand-warning-lightest: #FAEFED;--brand-info: #0091FF;--brand-info-light: #35A1FF;--brand-info-dark: #0087B2;--brand-info-lighter: #CFECF9;--text-primary: #181F33;--text-secondary: #6A737D;--text-tertiary: #929DAB;--text-disabled: #929DAB;--text-primary-87: rgba(24, 31, 51, .87);--text-primary-60: rgba(24, 31, 51, .6);--text-primary-38: rgba(24, 31, 51, .38);--text-primary-12: rgba(24, 31, 51, .12);--bg-primary: #FFFFFF;--bg-secondary: #FAFAFA;--bg-tertiary: #F5F5F5;--bg-overlay: rgba(0, 0, 0, .32);--bg-overlay-light: rgba(0, 0, 0, .12);--bg-overlay-lighter: rgba(0, 0, 0, .08);--bg-overlay-lightest: rgba(0, 0, 0, .04);--border-primary: #E0E0E0;--border-secondary: #D6DCE2;--border-tertiary: #C8CDD3;--border-light: #F1F4F8;--border-primary-12: rgba(0, 0, 0, .12);--border-primary-08: rgba(0, 0, 0, .08);--border-primary-06: rgba(0, 0, 0, .06);--shadow-primary: rgba(0, 0, 0, .12);--shadow-secondary: rgba(0, 0, 0, .08);--shadow-tertiary: rgba(0, 0, 0, .04);--shadow-light: rgba(0, 0, 0, .06);--status-available: #929DAB;--status-unavailable: #CCD3DA;--status-hotseat: #857BFF;--status-multiteam: #10ADAE;--status-selected: #10ADAE;--status-upcoming: #D4900C;--status-room: #38AF49;--status-room-booked: #B23600;--status-room-unavailable: #181F33;--team-color-1: #F8C52E;--team-color-2: #FA8E20;--team-color-3: #987CDD;--team-color-4: #16CBBC;--team-color-5: #E65010;--team-color-6: #A60060;--team-color-7: #ED323B;--team-color-8: #35A1FF;--team-color-9: #80D348}.daterangepicker-container{background:var(--bg-primary, #FFFFFF);border:1px solid var(--border-primary, #E0E0E0);box-shadow:0 12px 24px #0000001f,0 4px 8px #0000001f;border-radius:12px;display:flex;flex-direction:column;font-family:Lato;overflow:hidden;-webkit-user-select:none;user-select:none}@media only screen and (max-width: 900px){.daterangepicker-container{max-width:100vw;border:none}}.daterangepicker-container .daterangepicker-container__view{display:flex;gap:24px;padding:16px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__ranges{display:flex;flex-direction:column}.daterangepicker-container .daterangepicker-container__view .mis-btn{background:none;outline:none;border:none;cursor:pointer;border-radius:4px;vertical-align:middle;text-align:center;box-sizing:border-box;display:flex;align-items:center;text-decoration:none;justify-content:center;padding:10px 16px;font-size:16px;line-height:24px;background-color:transparent;color:var(--brand-primary, #0937B2)}.daterangepicker-container .daterangepicker-container__view .active-range{background-color:var(--brand-primary-lightest, #CBDDFB)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view{flex-direction:column;align-items:center;position:fixed;bottom:0;left:0;background-color:#fff;width:100%;max-height:68vh;overflow-y:auto;border-radius:30px;gap:24px;padding:10% 0 30%;box-shadow:0 -4px 8px 10000px #0000001f;scrollbar-width:none;-ms-overflow-style:none}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__view::-webkit-scrollbar{display:none}}.daterangepicker-container .daterangepicker-container__view .datepicker__left,.daterangepicker-container .daterangepicker-container__view .datepicker__right{display:flex;flex-direction:column}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .datepicker__left,.daterangepicker-container .daterangepicker-container__view .datepicker__right{width:90%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu{display:flex;height:32px;justify-content:space-between;align-items:center;width:100%;padding-bottom:10%}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu span{font-size:16px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.2px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu span{margin:0 auto;font-size:4vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon{height:20px;width:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:4px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon.disabled-month{opacity:.5;cursor:not-allowed}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon:not(.disabled-month):hover{cursor:pointer;background-color:var(--brand-primary-lightest, #CBDDFB)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon:nth-child(1){transform:rotate(180deg)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon{width:7%}}@media only screen and (min-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .mobile_view{display:none}}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .pc_view{display:none}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body{height:100%;width:252px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body{width:100%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays{width:100%;display:flex;padding-bottom:10px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday{width:36px;height:18px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday{margin:0 auto}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span{font-size:12px;font-style:normal;font-weight:400;line-height:18px;letter-spacing:.2px;text-align:center;color:var(--text-secondary, #6A737D)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span{font-size:3vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span.current-day{font-weight:700;letter-spacing:.25px;color:var(--text-primary, #181F33)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days{display:flex;flex-wrap:wrap}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day{width:36px;height:36px;display:flex;align-items:center;justify-content:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day{flex:0 0 14.2857142857%;width:14.2857142857%;height:14.2857142857%;aspect-ratio:1}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day:not(.in-range-day):not(.selected-start-day):not(.selected-end-day){border-radius:4px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day{cursor:default}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day:hover{background-color:transparent}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day>span{color:var(--text-secondary, #6A737D)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.is-valid-date:not(.disabled-day):not(.selected-start-day):not(.selected-end-day)>span{color:var(--text-primary, #181F33)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.is-valid-date:not(.disabled-day):not(.selected-start-day):not(.selected-end-day):hover{background-color:var(--brand-primary-lightest, #CBDDFB);cursor:pointer}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span{font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.2px;text-align:center;color:var(--text-primary, #181F33)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span{font-size:3.4vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.current-day{font-weight:700;letter-spacing:.25px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.selected-day{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.disabled-day{color:var(--text-secondary, #6A737D)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-same-day{background-color:var(--brand-primary, #0937B2);border-radius:50%!important}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-same-day>span{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-start-day{background-color:var(--brand-primary, #0937B2);border-radius:20px 4px 4px 20px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-start-day>span{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-end-day{background-color:var(--brand-primary, #0937B2);border-radius:0 20px 20px 0}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-end-day>span{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .in-range-day:not(.disabled-day){background-color:var(--brand-primary-lightest, #CBDDFB)}.daterangepicker-container .daterangepicker-container__time{border-top:1px solid var(--border-primary, #E0E0E0);padding:16px 24px;background-color:#f8f9fa;display:flex;gap:24px}.daterangepicker-container .daterangepicker-container__time .time-section{flex:1}.daterangepicker-container .daterangepicker-container__time .time-section h4{margin:0 0 8px;font-size:14px;font-weight:600;color:#333}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs{display:flex;align-items:center;gap:8px}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input{width:60px;padding:8px;border:1px solid #ddd;border-radius:4px;text-align:center;font-size:14px}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input:focus{outline:none;border-color:var(--brand-primary, #0937B2);box-shadow:0 0 0 2px #0937b233}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input.hour-input,.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input.minute-input{width:50px}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-separator{font-size:16px;font-weight:600;color:#666}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .am-pm-selector{padding:7.1px 12px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px;cursor:pointer}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .am-pm-selector:focus{outline:none;border-color:var(--brand-primary, #0937B2)}.daterangepicker-container .daterangepicker__footer{display:flex;justify-content:flex-end;border-top:1px solid var(--border-primary, #E0E0E0);padding:16px 24px;gap:24px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker__footer{justify-content:space-evenly;padding:2% 0;background-color:var(--bg-primary, #FFFFFF);position:fixed;bottom:0;left:0;width:100%;height:8vh;border-top:2px solid var(--text-disabled, #C8CDD3)}.daterangepicker-container .daterangepicker__footer #mobile-footer-btn{width:36%;font-size:3.8vw}}\n"] }]
|
|
1106
|
+
args: [{ selector: "mis-tz-drp", template: "<div class=\"daterangepicker-container\" aria-label=\"date range picker\" cdkTrapFocus [cdkTrapFocusAutoCapture]=\"true\">\n <div class=\"daterangepicker-container__view\">\n <div tabindex=\"-1\" cdkFocusInitial></div>\n <div *ngIf=\"data()?.dpConfig?.ranges?.length > 0\" class=\"daterangepicker-container__ranges\">\n <div *ngFor=\"let item of data()?.dpConfig?.ranges ?? []\" >\n <button\n [ngClass]=\"{'active-range' : selectedItemLabel() === item.label}\"\n (click)=\"selectRange(item)\"\n class=\"mis-btn\"\n >\n {{ item.label }}\n </button>\n </div>\n <div> <button class=\"mis-btn\" [ngClass]=\"{'active-range' : selectedItemLabel() === 'Custom Range'}\" (click)=\"resetRange()\">Custom Range</button> </div>\n </div>\n <div class=\"datepicker__left\">\n <div class=\"daterangepicker-container__header__prabu\">\n <div\n class=\"daterangepicker-container__arrow__icon\"\n tabindex=\"0\"\n (click)=\"!isPreviousMonthDisabled() && navigateMonth('PREVIOUS')\"\n (keyup.enter)=\"!isPreviousMonthDisabled() && navigateMonth('PREVIOUS')\"\n aria-label=\"Previous Month\"\n [ngClass]=\"{\n 'disabled-month': isPreviousMonthDisabled()\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n <span> {{ currentMonth() }} {{ currentYearNumber() }} </span>\n <div></div>\n <!-- Button visible in mobile view -->\n <div\n class=\"daterangepicker-container__arrow__icon mobile_view\"\n tabindex=\"0\"\n (click)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n (keyup.enter)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n aria-label=\"Next Month\"\n [ngClass]=\"{\n 'disabled-month': isNextMonthDisabled()\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n </div>\n <div class=\"daterangepicker-container__body\">\n <div class=\"daterangepicker-container__weekdays\">\n <div class=\"daterangepicker-container__weekday\" *ngFor=\"let weekDay of weekDays()\">\n <span>{{ weekDay.label }}</span>\n </div>\n </div>\n <div class=\"daterangepicker-container__days\">\n <div\n class=\"daterangepicker-container__day\" \n [ngClass]=\"{\n 'selected-same-day': day.isSelectedStartDay && day.isSelectedEndDay,\n 'selected-start-day': day.isSelectedStartDay,\n 'selected-end-day': day.isSelectedEndDay,\n 'disabled-day': day.isDisabledDay,\n 'in-range-day': day.inRangeDay,\n 'is-valid-date': day.date > 0 && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n *ngFor=\"let day of currentMonthDates()\"\n (click)=\"selectDay('LEFT', day)\"\n (keyup.enter)=\"selectDay('LEFT', day)\"\n >\n <span *ngIf=\"day.date > 0\"\n [tabindex]=\"day.isDisabledDay ? -1 : 0\"\n [attr.aria-label]=\"retractDayMonth(day.date, currentMonth(), currentYearNumber())\">\n {{ day.date }}\n </span>\n </div>\n </div>\n </div>\n </div>\n <div class=\"datepicker__right\">\n <div class=\"daterangepicker-container__header__prabu\">\n <div></div>\n <span> {{ nextMonth() }} {{ nextYearNumber() }} </span>\n <div\n class=\"daterangepicker-container__arrow__icon pc_view\"\n tabindex=\"0\"\n (click)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n (keyup.enter)=\"!isNextMonthDisabled() && navigateMonth('NEXT')\"\n [ngClass]=\"{\n 'disabled-month': isNextMonthDisabled()\n }\"\n >\n <svg width=\"20\" height=\"16\" viewBox=\"0 0 20 16\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M19.7071 8.70711C20.0976 8.31658 20.0976 7.68342 19.7071 7.29289L13.3431 0.928933C12.9526 0.538409 12.3195 0.538409 11.9289 0.928933C11.5384 1.31946 11.5384 1.95262 11.9289 2.34315L17.5858 8L11.9289 13.6569C11.5384 14.0474 11.5384 14.6805 11.9289 15.0711C12.3195 15.4616 12.9526 15.4616 13.3431 15.0711L19.7071 8.70711ZM-8.74228e-08 9L19 9L19 7L8.74228e-08 7L-8.74228e-08 9Z\"\n fill=\"#181F33\"\n ></path>\n </svg>\n </div>\n </div>\n <div class=\"daterangepicker-container__body\">\n <div class=\"daterangepicker-container__weekdays\">\n <div class=\"daterangepicker-container__weekday\" *ngFor=\"let weekDay of weekDays()\">\n <span>{{ weekDay.label }}</span>\n </div>\n </div>\n <div class=\"daterangepicker-container__days\">\n <div\n class=\"daterangepicker-container__day\"\n [ngClass]=\"{\n 'selected-same-day': day.isSelectedStartDay && day.isSelectedEndDay,\n 'selected-start-day': day.isSelectedStartDay,\n 'selected-end-day': day.isSelectedEndDay,\n 'disabled-day': day.isDisabledDay,\n 'in-range-day': day.inRangeDay,\n 'is-valid-date': day.date > 0 && !(day.isSelectedStartDay && day.isSelectedEndDay)\n }\"\n *ngFor=\"let day of nextMonthDates()\"\n (click)=\"selectDay('RIGHT', day)\"\n (keyup.enter)=\"selectDay('RIGHT', day)\"\n >\n <span *ngIf=\"day.date > 0\"\n [tabindex]=\"day.isDisabledDay ? -1 : 0\"\n [attr.aria-label]=\"retractDayMonth(day.date, nextMonth(), nextYearNumber())\">\n {{ day.date }}\n </span>\n </div>\n </div>\n </div>\n </div>\n </div>\n \n <!-- Time Selection Section -->\n <div class=\"daterangepicker-container__time\" *ngIf=\"data().dpConfig.enableTime === true\">\n <div class=\"time-section\">\n <h4>From</h4>\n <div class=\"time-inputs\">\n <input \n type=\"number\" \n [ngModel]=\"is12HourFormat() ? startHour() : startHour24()\" \n (ngModelChange)=\"is12HourFormat() ? startHourSignal.set($event) : startHour24Signal.set($event); onStartHourInput()\"\n [min]=\"is12HourFormat() ? 1 : 0\" \n [max]=\"is12HourFormat() ? 12 : 23\" \n step=\"1\"\n class=\"time-input hour-input\"\n placeholder=\"HH\">\n <span class=\"time-separator\">:</span>\n <input \n type=\"number\" \n [ngModel]=\"startMinute()\" (ngModelChange)=\"startMinuteSignal.set($event)\" \n (input)=\"onStartMinuteInput()\"\n min=\"0\" \n max=\"59\" \n step=\"1\"\n class=\"time-input minute-input\"\n placeholder=\"MM\">\n <select \n [ngModel]=\"startAmPm()\" (ngModelChange)=\"startAmPmSignal.set($event)\" \n class=\"am-pm-selector\"\n *ngIf=\"is12HourFormat()\">\n <option value=\"AM\">AM</option>\n <option value=\"PM\">PM</option>\n </select>\n </div>\n </div>\n \n <div class=\"time-section\">\n <h4>To</h4>\n <div class=\"time-inputs\">\n <input \n type=\"number\" \n [ngModel]=\"is12HourFormat() ? endHour() : endHour24()\" \n (ngModelChange)=\"is12HourFormat() ? endHourSignal.set($event) : endHour24Signal.set($event); onEndHourInput()\"\n [min]=\"is12HourFormat() ? 1 : 0\" \n [max]=\"is12HourFormat() ? 12 : 23\" \n step=\"1\"\n class=\"time-input hour-input\"\n placeholder=\"HH\">\n <span class=\"time-separator\">:</span>\n <input \n type=\"number\" \n [ngModel]=\"endMinute()\" (ngModelChange)=\"endMinuteSignal.set($event)\" \n (input)=\"onEndMinuteInput()\"\n min=\"0\" \n max=\"59\" \n step=\"1\"\n class=\"time-input minute-input\"\n placeholder=\"MM\">\n <select \n [ngModel]=\"endAmPm()\" (ngModelChange)=\"endAmPmSignal.set($event)\" \n class=\"am-pm-selector\"\n *ngIf=\"is12HourFormat()\">\n <option value=\"AM\">AM</option>\n <option value=\"PM\">PM</option>\n </select>\n </div>\n </div>\n </div>\n \n <div class=\"daterangepicker__footer\">\n <button mis-button type=\"none\" id='mobile-footer-btn' (click)=\"cancelDatePicker()\">Cancel</button>\n <button mis-button type=\"primary\" id=\"mobile-footer-btn\" (click)=\"applyDates()\" [disabled]=\"!isDatesValid()\">Apply</button>\n </div>\n</div>", styles: [":root{--pmry-200: #99BAF7;--pmry-100: #CBDDFB;--pmry-500: #0937B2;--pmry-400: #3C68D0;--pmry-600: #062A99;--pmry-700: #041F80;--pmry-300: #638FE7;--pmry-800: #021567;--pmry-900: #010F55;--sec-d-purple: #40447F;--sec-maroon: #6B034E;--sec-mud-red: #B23600;--sec-orange: #ED711C;--sec-purple: #815FD5;--sec-teal: #10ADAE;--sec-yellow: #D4900C;--sec-green: #547F40;--sec-bright-green: #27D22E;--sec-dark-teal: #035F6B;--sec-chocolate: #7C2F33;--sec-rube-pink: #C13D6D;--sec-cerulean: #0087B2;--sem-error: #B00020;--sem-info: #0091FF;--sem-warning: #FF9D00;--sem-success: #38AF49;--grey-bg-1: #FAFAFA;--grey-bg: #F5F5F5;--grey-seperators: #E0E0E0;--grey-disabled: #C8CDD3;--grey-hover: #F5F7FC;--grey-pressed: #E6EBF7;--grey-row: #F5F7FC;--dec-light-yellow: #F4E7C3;--dec-light-purple: #DACFF9;--dec-light-green: #E4F5E9;--dec-light-green2: #F1FFF3;--dec-light-pink: #FAE1EA;--dec-: #F4CBC1;--dec-lt-orange: #FAEFED;--dec-light-blue: #CFECF9;--dec-row-selection: #F1FDF8;--dec-row-selection2: #F2FBFF;--dec-row-lines: #D3E1E9;--text-white: #FFFFFF;--text-muted: #6A737D;--text-black: #181F33;--MR-solid-blue2:#C8D5F6;--MR-solid-purple:#C9C3FB;--MR-solid-orange:#EEAC9F;--MR-solid-green:#ACDADA;--MR-solid-brown:#E8C8AF;--MR-solid-yellow:#FFEFC7;--MR-solid-blue:#BBE6FF;--MR-solid-pink:#FFC6F2;--tr-hover:#F0F3FA;--tr-pressed:#DAE1F3;--brand-primary: #0937B2;--brand-primary-light: #3C68D0;--brand-primary-dark: #062A99;--brand-primary-darker: #041F80;--brand-primary-lighter: #638FE7;--brand-primary-lightest: #CBDDFB;--brand-primary-hover: #F0F3FA;--brand-primary-active: #DAE1F3;--brand-secondary: #ED711C;--brand-secondary-light: #F09E65;--brand-secondary-dark: #B23600;--brand-secondary-lighter: #FFC6F2;--brand-accent: #10ADAE;--brand-accent-light: #16CBBC;--brand-accent-dark: #035F6B;--brand-accent-lighter: #ACDADA;--brand-success: #38AF49;--brand-success-light: #4CAF50;--brand-success-dark: #216531;--brand-success-lighter: #E4F5E9;--brand-success-lightest: #F1FFF3;--brand-error: #B00020;--brand-error-light: #F04E4E;--brand-error-dark: #A60060;--brand-error-lighter: #FAE1EA;--brand-error-lightest: #FDF2F2;--brand-warning: #FF9D00;--brand-warning-light: #D4900C;--brand-warning-dark: #624000;--brand-warning-lighter: #F4E7C3;--brand-warning-lightest: #FAEFED;--brand-info: #0091FF;--brand-info-light: #35A1FF;--brand-info-dark: #0087B2;--brand-info-lighter: #CFECF9;--text-primary: #181F33;--text-secondary: #6A737D;--text-tertiary: #929DAB;--text-disabled: #929DAB;--text-primary-87: rgba(24, 31, 51, .87);--text-primary-60: rgba(24, 31, 51, .6);--text-primary-38: rgba(24, 31, 51, .38);--text-primary-12: rgba(24, 31, 51, .12);--bg-primary: #FFFFFF;--bg-secondary: #FAFAFA;--bg-tertiary: #F5F5F5;--bg-overlay: rgba(0, 0, 0, .32);--bg-overlay-light: rgba(0, 0, 0, .12);--bg-overlay-lighter: rgba(0, 0, 0, .08);--bg-overlay-lightest: rgba(0, 0, 0, .04);--border-primary: #E0E0E0;--border-secondary: #D6DCE2;--border-tertiary: #C8CDD3;--border-light: #F1F4F8;--border-primary-12: rgba(0, 0, 0, .12);--border-primary-08: rgba(0, 0, 0, .08);--border-primary-06: rgba(0, 0, 0, .06);--shadow-primary: rgba(0, 0, 0, .12);--shadow-secondary: rgba(0, 0, 0, .08);--shadow-tertiary: rgba(0, 0, 0, .04);--shadow-light: rgba(0, 0, 0, .06);--status-available: #929DAB;--status-unavailable: #CCD3DA;--status-hotseat: #857BFF;--status-multiteam: #10ADAE;--status-selected: #10ADAE;--status-upcoming: #D4900C;--status-room: #38AF49;--status-room-booked: #B23600;--status-room-unavailable: #181F33;--team-color-1: #F8C52E;--team-color-2: #FA8E20;--team-color-3: #987CDD;--team-color-4: #16CBBC;--team-color-5: #E65010;--team-color-6: #A60060;--team-color-7: #ED323B;--team-color-8: #35A1FF;--team-color-9: #80D348}.daterangepicker-container{background:var(--bg-primary, #FFFFFF);border:1px solid var(--border-primary, #E0E0E0);box-shadow:0 12px 24px #0000001f,0 4px 8px #0000001f;border-radius:12px;display:flex;flex-direction:column;font-family:Lato;overflow:hidden;-webkit-user-select:none;user-select:none}@media only screen and (max-width: 900px){.daterangepicker-container{max-width:100vw;border:none}}.daterangepicker-container .daterangepicker-container__view{display:flex;gap:24px;padding:16px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__ranges{display:flex;flex-direction:column}.daterangepicker-container .daterangepicker-container__view .mis-btn{background:none;outline:none;border:none;cursor:pointer;border-radius:4px;vertical-align:middle;text-align:center;box-sizing:border-box;display:flex;align-items:center;text-decoration:none;justify-content:center;padding:10px 16px;font-size:16px;line-height:24px;background-color:transparent;color:var(--brand-primary, #0937B2)}.daterangepicker-container .daterangepicker-container__view .active-range{background-color:var(--brand-primary-lightest, #CBDDFB)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view{flex-direction:column;align-items:center;position:fixed;bottom:0;left:0;background-color:#fff;width:100%;max-height:68vh;overflow-y:auto;border-radius:30px;gap:24px;padding:10% 0 30%;box-shadow:0 -4px 8px 10000px #0000001f;scrollbar-width:none;-ms-overflow-style:none}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__view::-webkit-scrollbar{display:none}}.daterangepicker-container .daterangepicker-container__view .datepicker__left,.daterangepicker-container .daterangepicker-container__view .datepicker__right{display:flex;flex-direction:column}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .datepicker__left,.daterangepicker-container .daterangepicker-container__view .datepicker__right{width:90%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu{display:flex;height:32px;justify-content:space-between;align-items:center;width:100%;padding-bottom:10%}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu span{font-size:16px;font-style:normal;font-weight:700;line-height:24px;letter-spacing:.2px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu span{margin:0 auto;font-size:4vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon{height:20px;width:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;padding:4px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon.disabled-month{opacity:.5;cursor:not-allowed}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon:not(.disabled-month):hover{cursor:pointer;background-color:var(--brand-primary-lightest, #CBDDFB)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon:nth-child(1){transform:rotate(180deg)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .daterangepicker-container__arrow__icon{width:7%}}@media only screen and (min-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .mobile_view{display:none}}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__header__prabu .pc_view{display:none}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body{height:100%;width:252px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body{width:100%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays{width:100%;display:flex;padding-bottom:10px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday{width:36px;height:18px;text-align:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday{margin:0 auto}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span{font-size:12px;font-style:normal;font-weight:400;line-height:18px;letter-spacing:.2px;text-align:center;color:var(--text-secondary, #6A737D)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span{font-size:3vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__weekdays .daterangepicker-container__weekday span.current-day{font-weight:700;letter-spacing:.25px;color:var(--text-primary, #181F33)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days{display:flex;flex-wrap:wrap}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days{display:flex;flex-direction:row;flex-wrap:wrap;flex:0 0 14.2857142857%}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day{width:36px;height:36px;display:flex;align-items:center;justify-content:center}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day{flex:0 0 14.2857142857%;width:14.2857142857%;height:14.2857142857%;aspect-ratio:1}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day:not(.in-range-day):not(.selected-start-day):not(.selected-end-day){border-radius:4px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day{cursor:default}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day:hover{background-color:transparent}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.disabled-day>span{color:var(--text-secondary, #6A737D)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.is-valid-date:not(.disabled-day):not(.selected-start-day):not(.selected-end-day)>span{color:var(--text-primary, #181F33)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day.is-valid-date:not(.disabled-day):not(.selected-start-day):not(.selected-end-day):hover{background-color:var(--brand-primary-lightest, #CBDDFB);cursor:pointer}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span{font-size:14px;font-style:normal;font-weight:400;line-height:20px;letter-spacing:.2px;text-align:center;color:var(--text-primary, #181F33)}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span{font-size:3.4vw}}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.current-day{font-weight:700;letter-spacing:.25px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.selected-day{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .daterangepicker-container__day span.disabled-day{color:var(--text-secondary, #6A737D)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-same-day{background-color:var(--brand-primary, #0937B2);border-radius:50%!important}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-same-day>span{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-start-day{background-color:var(--brand-primary, #0937B2);border-radius:20px 4px 4px 20px}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-start-day>span{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-end-day{background-color:var(--brand-primary, #0937B2);border-radius:0 20px 20px 0}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .selected-end-day>span{color:var(--bg-primary, #FFFFFF)}.daterangepicker-container .daterangepicker-container__view .daterangepicker-container__body .daterangepicker-container__days .in-range-day:not(.disabled-day){background-color:var(--brand-primary-lightest, #CBDDFB)}.daterangepicker-container .daterangepicker-container__time{border-top:1px solid var(--border-primary, #E0E0E0);padding:16px 24px;background-color:#f8f9fa;display:flex;gap:24px}.daterangepicker-container .daterangepicker-container__time .time-section{flex:1}.daterangepicker-container .daterangepicker-container__time .time-section h4{margin:0 0 8px;font-size:14px;font-weight:600;color:#333}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs{display:flex;align-items:center;gap:8px}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input{width:60px;padding:8px;border:1px solid #ddd;border-radius:4px;text-align:center;font-size:14px}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input:focus{outline:none;border-color:var(--brand-primary, #0937B2);box-shadow:0 0 0 2px #0937b233}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input.hour-input,.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-input.minute-input{width:50px}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .time-separator{font-size:16px;font-weight:600;color:#666}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .am-pm-selector{padding:7.1px 12px;border:1px solid #ddd;border-radius:4px;background-color:#fff;font-size:14px;cursor:pointer}.daterangepicker-container .daterangepicker-container__time .time-section .time-inputs .am-pm-selector:focus{outline:none;border-color:var(--brand-primary, #0937B2)}.daterangepicker-container .daterangepicker__footer{display:flex;justify-content:flex-end;border-top:1px solid var(--border-primary, #E0E0E0);padding:16px 24px;gap:24px}@media only screen and (max-width: 900px){.daterangepicker-container .daterangepicker__footer{justify-content:space-evenly;padding:2% 0;background-color:var(--bg-primary, #FFFFFF);position:fixed;bottom:0;left:0;width:100%;height:8vh;border-top:2px solid var(--text-disabled, #C8CDD3)}.daterangepicker-container .daterangepicker__footer #mobile-footer-btn{width:36%;font-size:3.8vw}}\n"] }]
|
|
1027
1107
|
}], () => [{ type: undefined, decorators: [{
|
|
1028
1108
|
type: Inject,
|
|
1029
1109
|
args: [CONTAINER_DATA]
|