mis-crystal-design-system 18.1.2-signal → 18.1.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.
Files changed (86) hide show
  1. package/button/button.component.d.ts +0 -2
  2. package/datepicker_v2/tz-dp-container/tz-dp-container.component.d.ts +4 -0
  3. package/daterangepicker_v2/tz-drp-container/tz-drp-container.component.d.ts +9 -5
  4. package/esm2022/button/button.component.mjs +7 -15
  5. package/esm2022/checkbox/checkbox.component.mjs +4 -4
  6. package/esm2022/chip/chip.component.mjs +4 -4
  7. package/esm2022/datepicker_v2/tz-datepicker.directive.mjs +17 -10
  8. package/esm2022/datepicker_v2/tz-dp-container/tz-dp-container.component.mjs +87 -32
  9. package/esm2022/daterangepicker_v2/tz-daterangepicker.directive.mjs +6 -3
  10. package/esm2022/daterangepicker_v2/tz-drp-container/tz-drp-container.component.mjs +316 -141
  11. package/esm2022/drawer/drawer-body/drawer-body.component.mjs +4 -4
  12. package/esm2022/fab/fab.component.mjs +4 -4
  13. package/esm2022/filter/filter-panel/filter-panel.component.mjs +28 -27
  14. package/esm2022/input/directives/input/input.directive.mjs +28 -10
  15. package/esm2022/input/mis-input.component.mjs +19 -13
  16. package/esm2022/loader/loader.component.mjs +13 -7
  17. package/esm2022/modal/module-wrapper/module-wrapper.component.mjs +4 -4
  18. package/esm2022/multi-select-dropdown/multi-select-dropdown.component.mjs +10 -5
  19. package/esm2022/phone-input/phone-input.component.mjs +4 -4
  20. package/esm2022/radio-button/radio-button.component.mjs +4 -4
  21. package/esm2022/ske-loader/ske-loader.component.mjs +4 -4
  22. package/esm2022/slider/slider.component.mjs +4 -4
  23. package/esm2022/snackbar/snackbar/snackbar.component.mjs +4 -4
  24. package/esm2022/specificdatepicker/tz-sdp-container/tz-sdp-container.component.mjs +24 -20
  25. package/esm2022/switch/switch.component.mjs +2 -4
  26. package/esm2022/table/sub-table/sub-table.component.mjs +18 -5
  27. package/esm2022/table/table.component.mjs +184 -95
  28. package/esm2022/table/table.module.mjs +7 -5
  29. package/esm2022/toast/toast.component.mjs +4 -4
  30. package/esm2022/tooltip/tooltip-container/tooltip.component.mjs +4 -4
  31. package/esm2022/virtual-scroll/virtual-scroll.component.mjs +4 -4
  32. package/fesm2022/mis-crystal-design-system-button.mjs +6 -14
  33. package/fesm2022/mis-crystal-design-system-button.mjs.map +1 -1
  34. package/fesm2022/mis-crystal-design-system-checkbox.mjs +3 -3
  35. package/fesm2022/mis-crystal-design-system-checkbox.mjs.map +1 -1
  36. package/fesm2022/mis-crystal-design-system-chip.mjs +3 -3
  37. package/fesm2022/mis-crystal-design-system-chip.mjs.map +1 -1
  38. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs +101 -39
  39. package/fesm2022/mis-crystal-design-system-datepicker_v2.mjs.map +1 -1
  40. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs +320 -142
  41. package/fesm2022/mis-crystal-design-system-daterangepicker_v2.mjs.map +1 -1
  42. package/fesm2022/mis-crystal-design-system-drawer.mjs +3 -3
  43. package/fesm2022/mis-crystal-design-system-drawer.mjs.map +1 -1
  44. package/fesm2022/mis-crystal-design-system-fab.mjs +3 -3
  45. package/fesm2022/mis-crystal-design-system-fab.mjs.map +1 -1
  46. package/fesm2022/mis-crystal-design-system-filter.mjs +27 -26
  47. package/fesm2022/mis-crystal-design-system-filter.mjs.map +1 -1
  48. package/fesm2022/mis-crystal-design-system-input.mjs +45 -21
  49. package/fesm2022/mis-crystal-design-system-input.mjs.map +1 -1
  50. package/fesm2022/mis-crystal-design-system-loader.mjs +12 -6
  51. package/fesm2022/mis-crystal-design-system-loader.mjs.map +1 -1
  52. package/fesm2022/mis-crystal-design-system-modal.mjs +3 -3
  53. package/fesm2022/mis-crystal-design-system-modal.mjs.map +1 -1
  54. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs +9 -4
  55. package/fesm2022/mis-crystal-design-system-multi-select-dropdown.mjs.map +1 -1
  56. package/fesm2022/mis-crystal-design-system-phone-input.mjs +3 -3
  57. package/fesm2022/mis-crystal-design-system-phone-input.mjs.map +1 -1
  58. package/fesm2022/mis-crystal-design-system-radio-button.mjs +3 -3
  59. package/fesm2022/mis-crystal-design-system-radio-button.mjs.map +1 -1
  60. package/fesm2022/mis-crystal-design-system-ske-loader.mjs +3 -3
  61. package/fesm2022/mis-crystal-design-system-ske-loader.mjs.map +1 -1
  62. package/fesm2022/mis-crystal-design-system-slider.mjs +3 -3
  63. package/fesm2022/mis-crystal-design-system-slider.mjs.map +1 -1
  64. package/fesm2022/mis-crystal-design-system-snackbar.mjs +3 -3
  65. package/fesm2022/mis-crystal-design-system-snackbar.mjs.map +1 -1
  66. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs +23 -19
  67. package/fesm2022/mis-crystal-design-system-specificdatepicker.mjs.map +1 -1
  68. package/fesm2022/mis-crystal-design-system-switch.mjs +1 -3
  69. package/fesm2022/mis-crystal-design-system-switch.mjs.map +1 -1
  70. package/fesm2022/mis-crystal-design-system-table.mjs +205 -102
  71. package/fesm2022/mis-crystal-design-system-table.mjs.map +1 -1
  72. package/fesm2022/mis-crystal-design-system-toast.mjs +3 -3
  73. package/fesm2022/mis-crystal-design-system-toast.mjs.map +1 -1
  74. package/fesm2022/mis-crystal-design-system-tooltip.mjs +3 -3
  75. package/fesm2022/mis-crystal-design-system-tooltip.mjs.map +1 -1
  76. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs +3 -3
  77. package/fesm2022/mis-crystal-design-system-virtual-scroll.mjs.map +1 -1
  78. package/filter/filter-panel/filter-panel.component.d.ts +1 -1
  79. package/input/directives/input/input.directive.d.ts +3 -4
  80. package/input/mis-input.component.d.ts +3 -6
  81. package/input/mis-input.component.scss +11 -4
  82. package/loader/loader.component.d.ts +7 -1
  83. package/package.json +17 -17
  84. package/specificdatepicker/tz-sdp-container/tz-sdp-container.component.d.ts +2 -2
  85. package/table/table.component.d.ts +12 -1
  86. package/table/table.module.d.ts +2 -1
@@ -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 : ctx_r3.data.dpConfig == null ? null : ctx_r3.data.dpConfig.ranges) !== null && tmp_1_0 !== undefined ? tmp_1_0 : i0.ɵɵpureFunction0(2, _c1));
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,62 @@ dayjs.extend(customParseFormat);
252
252
  dayjs.extend(isSameOrAfter);
253
253
  dayjs.extend(isSameOrBefore);
254
254
  class TzDrpContainerComponent {
255
- constructor(data, toast) {
255
+ /**
256
+ * Parse date string using configured format with fallback
257
+ */
258
+ parseDateWithMultipleFormats(dateString) {
259
+ if (!dateString || dateString === 'Invalid Date' || dateString === 'undefined' || dateString === 'null') {
260
+ return dayjs('invalid');
261
+ }
262
+ // First try the configured format
263
+ const configuredFormat = this.data().dpConfig?.format;
264
+ if (configuredFormat) {
265
+ try {
266
+ const parsed = dayjs(dateString, configuredFormat);
267
+ if (parsed.isValid()) {
268
+ return parsed;
269
+ }
270
+ }
271
+ catch (error) {
272
+ // Continue to fallback formats
273
+ }
274
+ }
275
+ // Fallback to common formats if configured format fails
276
+ const fallbackFormats = [
277
+ 'DD/MMM/YYYY',
278
+ 'DD/MM/YYYY',
279
+ 'DD-MMM-YYYY',
280
+ 'DD-MM-YYYY',
281
+ 'YYYY-MM-DD'
282
+ ];
283
+ for (const format of fallbackFormats) {
284
+ try {
285
+ const parsed = dayjs(dateString, format);
286
+ if (parsed.isValid()) {
287
+ return parsed;
288
+ }
289
+ }
290
+ catch (error) {
291
+ // Continue to next format
292
+ }
293
+ }
294
+ // If all formats fail, try parsing without format (let dayjs guess)
295
+ try {
296
+ const parsed = dayjs(dateString);
297
+ if (parsed.isValid()) {
298
+ return parsed;
299
+ }
300
+ }
301
+ catch (error) {
302
+ console.warn('Failed to parse date with any format:', dateString, error);
303
+ }
304
+ return dayjs('invalid');
305
+ }
306
+ constructor(injectedData, toast) {
307
+ this.injectedData = injectedData;
256
308
  this.toast = toast;
257
309
  this.CUSTOM_RANGE_LABEL = "Custom Range";
310
+ this.data = signal(this.injectedData);
258
311
  this.dayjsInstance = (...args) => {
259
312
  return dayjs(...args);
260
313
  };
@@ -289,17 +342,23 @@ class TzDrpContainerComponent {
289
342
  this.currentMonthNumber = computed(() => this.currentMonthNumberSignal());
290
343
  this.currentMonth = computed(() => this.currentMonthSignal());
291
344
  this.currentYearNumber = computed(() => this.currentYearNumberSignal());
292
- this.currentMonthDates = computed(() => this.currentMonthDatesSignal());
293
345
  this.nextMonthNumber = computed(() => this.nextMonthNumberSignal());
294
346
  this.nextMonth = computed(() => this.nextMonthSignal());
295
347
  this.nextYearNumber = computed(() => this.nextYearNumberSignal());
296
- this.nextMonthDates = computed(() => this.nextMonthDatesSignal());
297
348
  this.isPreviousMonthDisabled = computed(() => this.isPreviousMonthDisabledSignal());
298
349
  this.isNextMonthDisabled = computed(() => this.isNextMonthDisabledSignal());
299
350
  this.selectionStarted = computed(() => this.selectionStartedSignal());
300
351
  this.localSelectedDates = computed(() => this.localSelectedDatesSignal());
301
352
  this.isDatesValid = computed(() => this.isDatesValidSignal());
302
353
  this.selectedItemLabel = computed(() => this.selectedItemLabelSignal());
354
+ this.currentMonthDates = computed(() => {
355
+ // Dependencies: currentMonthNumberSignal, currentYearNumberSignal, localSelectedDatesSignal
356
+ return this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal());
357
+ });
358
+ this.nextMonthDates = computed(() => {
359
+ // Dependencies: nextMonthNumberSignal, nextYearNumberSignal, localSelectedDatesSignal
360
+ return this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal());
361
+ });
303
362
  // Time functionality computed properties
304
363
  this.startHour = computed(() => this.startHourSignal());
305
364
  this.startMinute = computed(() => this.startMinuteSignal());
@@ -309,21 +368,21 @@ class TzDrpContainerComponent {
309
368
  this.endAmPm = computed(() => this.endAmPmSignal());
310
369
  this.startHour24 = computed(() => this.startHour24Signal());
311
370
  this.endHour24 = computed(() => this.endHour24Signal());
312
- this.data = data;
313
- this.localSelectedDatesSignal.set(this.data.dates);
371
+ this.data = signal(this.injectedData);
372
+ this.localSelectedDatesSignal.set(this.data().dates);
314
373
  this.isDatesValidSignal.set(false);
315
- if (this.data.dates.startDate && this.data.dates.endDate) {
374
+ if (this.data().dates.startDate && this.data().dates.endDate) {
316
375
  this.isDatesValidSignal.set(true);
317
376
  }
318
377
  // Initialize selectedItemLabel from data.selectedRangeLabel if available
319
- if (this.data.selectedRangeLabel) {
320
- this.selectedItemLabelSignal.set(this.data.selectedRangeLabel);
378
+ if (this.data().selectedRangeLabel) {
379
+ this.selectedItemLabelSignal.set(this.data().selectedRangeLabel);
321
380
  }
322
381
  // Initialize dayjsInstance with timezone handling
323
- if (this.data?.dpConfig?.timezone) {
382
+ if (this.data()?.dpConfig?.timezone) {
324
383
  this.dayjsInstance = (...args) => {
325
384
  try {
326
- return dayjs.tz(args[0], args[1] || 'DD/MM/YYYY', this.data.dpConfig.timezone);
385
+ return dayjs.tz(args[0], args[1] || 'DD/MM/YYYY', this.data().dpConfig.timezone);
327
386
  }
328
387
  catch (error) {
329
388
  console.warn('Error parsing date with timezone:', error, 'args:', args);
@@ -342,18 +401,42 @@ class TzDrpContainerComponent {
342
401
  label: `${day[0]}${day.slice(1).toLowerCase()}`,
343
402
  isCurrentDay: this.dayjsInstance().day() === index
344
403
  })));
345
- if (!this.data?.dpConfig?.format) {
346
- this.data.dpConfig = {
347
- ...this.data.dpConfig,
404
+ if (!this.data()?.dpConfig?.format) {
405
+ this.data().dpConfig = {
406
+ ...this.data().dpConfig,
348
407
  format: DATE_FORMAT
349
408
  };
350
409
  }
410
+ // Effect to update calendar when dates change - AFTER setting initial data
411
+ effect(() => {
412
+ const localSelectedDates = this.localSelectedDatesSignal();
413
+ let selectedStartDate;
414
+ if (localSelectedDates?.startDate) {
415
+ selectedStartDate = this.parseDateWithMultipleFormats(localSelectedDates.startDate);
416
+ }
417
+ else {
418
+ selectedStartDate = dayjs('invalid');
419
+ }
420
+ if (selectedStartDate.isValid()) {
421
+ this.currentYearNumberSignal.set(selectedStartDate.year());
422
+ this.nextYearNumberSignal.set(selectedStartDate.add(1, "month").year());
423
+ this.currentMonthNumberSignal.set(selectedStartDate.get("month"));
424
+ this.nextMonthNumberSignal.set(selectedStartDate.add(1, "month").month());
425
+ const selectedEndDate = localSelectedDates?.endDate ? this.parseDateWithMultipleFormats(localSelectedDates.endDate) : null;
426
+ if (selectedEndDate && selectedEndDate.isValid() && selectedEndDate.isAfter(selectedStartDate, 'month')) {
427
+ this.nextMonthNumberSignal.set(selectedEndDate.month());
428
+ this.nextYearNumberSignal.set(selectedEndDate.year());
429
+ }
430
+ // Update calendar dates to reflect the selected dates
431
+ this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal()));
432
+ this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal()));
433
+ }
434
+ }, { allowSignalWrites: true });
351
435
  }
352
436
  ngOnInit() {
353
- this.currentDateInstance();
354
437
  this.calculateMinMaxDays();
355
438
  this.initializeTimeValues();
356
- if (this.data?.showPrevMonth && !this.isPreviousMonthDisabled) {
439
+ if (this.data()?.showPrevMonth && !this.isPreviousMonthDisabled) {
357
440
  this.navigateMonth('PREVIOUS');
358
441
  }
359
442
  }
@@ -363,53 +446,13 @@ class TzDrpContainerComponent {
363
446
  closeOnEsc() {
364
447
  this.cancelDatePicker();
365
448
  }
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
449
  calculateMinMaxDays() {
407
450
  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');
451
+ const minDate = !!this.data().dpConfig.minDate ? this.dayjsInstance(this.data().dpConfig.minDate, this.data().dpConfig.format) : dayjs('invalid');
409
452
  if (minDate.isValid()) {
410
453
  this.isPreviousMonthDisabledSignal.set(minDate.isSameOrAfter(currentInstance, "month"));
411
454
  }
412
- const maxDate = !!this.data.dpConfig.maxDate ? this.dayjsInstance(this.data.dpConfig.maxDate, this.data.dpConfig.format) : dayjs('invalid');
455
+ const maxDate = !!this.data().dpConfig.maxDate ? this.dayjsInstance(this.data().dpConfig.maxDate, this.data().dpConfig.format) : dayjs('invalid');
413
456
  if (maxDate.isValid()) {
414
457
  this.isNextMonthDisabledSignal.set(maxDate.isSameOrBefore(currentInstance, "month"));
415
458
  }
@@ -450,30 +493,29 @@ class TzDrpContainerComponent {
450
493
  const daysInMonth = dayjs().year(currentYearNumber).month(month).daysInMonth();
451
494
  for (let currentDate = 1; currentDate <= daysInMonth; currentDate++) {
452
495
  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);
496
+ const dateString = date.format(this.data().dpConfig.format);
497
+ let isDisabledDay = this.data().datesDisabled.some(d => d === dateString);
455
498
  // Parse min/max dates safely - try date-only format first, then full format
456
499
  let minDate = null;
457
500
  let maxDate = null;
458
- if (this.data.dpConfig.minDate) {
501
+ if (this.data().dpConfig.minDate) {
459
502
  try {
460
- // Extract date part only for comparison
461
- const minDateStr = this.data.dpConfig.minDate.split(' ')[0];
462
- minDate = dayjs(minDateStr, 'DD/MM/YYYY');
503
+ const minDateStr = this.data().dpConfig.minDate.split(' ')[0];
504
+ minDate = this.parseDateWithMultipleFormats(minDateStr);
463
505
  if (!minDate.isValid()) {
464
- minDate = dayjs(this.data.dpConfig.minDate, this.data.dpConfig.format);
506
+ minDate = dayjs(this.data().dpConfig.minDate, this.data().dpConfig.format);
465
507
  }
466
508
  }
467
509
  catch (error) {
468
510
  console.warn('Error parsing min date:', error);
469
511
  }
470
512
  }
471
- if (this.data.dpConfig.maxDate) {
513
+ if (this.data().dpConfig.maxDate) {
472
514
  try {
473
- const maxDateStr = this.data.dpConfig.maxDate.split(' ')[0];
474
- maxDate = dayjs(maxDateStr, 'DD/MM/YYYY');
515
+ const maxDateStr = this.data().dpConfig.maxDate.split(' ')[0];
516
+ maxDate = this.parseDateWithMultipleFormats(maxDateStr);
475
517
  if (!maxDate.isValid()) {
476
- maxDate = dayjs(this.data.dpConfig.maxDate, this.data.dpConfig.format);
518
+ maxDate = dayjs(this.data().dpConfig.maxDate, this.data().dpConfig.format);
477
519
  }
478
520
  }
479
521
  catch (error) {
@@ -486,32 +528,63 @@ class TzDrpContainerComponent {
486
528
  if (!isDisabledDay && maxDate && maxDate.isValid()) {
487
529
  isDisabledDay = maxDate.isBefore(date, "day");
488
530
  }
489
- if (this.data?.dpConfig?.maxAllowedRange > 0 &&
531
+ if (this.data()?.dpConfig?.maxAllowedRange > 0 &&
490
532
  !isDisabledDay &&
491
533
  (this.localSelectedDatesSignal()?.startDate ?? false) && (!(this.localSelectedDatesSignal().endDate ?? false))) {
492
- const startDate = dayjs(this.localSelectedDatesSignal().startDate, this.data.dpConfig.format).startOf('day');
493
- const maxEndDate = startDate.clone().add(this.data.dpConfig.maxAllowedRange - 1, 'days');
534
+ const startDate = this.parseDateWithMultipleFormats(this.localSelectedDatesSignal()?.startDate).startOf('day');
535
+ const maxEndDate = startDate.clone().add(this.data().dpConfig.maxAllowedRange - 1, 'days');
494
536
  isDisabledDay = date.isAfter(maxEndDate, 'day');
495
537
  }
496
- const isCurrentDay = this.dayjsInstance().year(currentYearNumber).month(month).date(currentDate).format(this.data.dpConfig.format) ===
497
- this.dayjsInstance().format(this.data.dpConfig.format);
538
+ const isCurrentDay = this.dayjsInstance().year(currentYearNumber).month(month).date(currentDate).format(this.data().dpConfig.format) ===
539
+ this.dayjsInstance().format(this.data().dpConfig.format);
498
540
  // Extract date part for comparison (handle both date-only and datetime formats)
499
- const startDateString = this.localSelectedDatesSignal()?.startDate?.split(' ')[0] || this.localSelectedDatesSignal()?.startDate;
500
- const endDateString = this.localSelectedDatesSignal()?.endDate?.split(' ')[0] || this.localSelectedDatesSignal()?.endDate;
501
- // Use the custom format for comparison instead of hardcoded DD/MM/YYYY
502
- const dateFormatted = date.format(this.data.dpConfig.format);
541
+ let startDateString = this.localSelectedDatesSignal()?.startDate;
542
+ let endDateString = this.localSelectedDatesSignal()?.endDate;
543
+ // Only extract date part if the format contains time components
544
+ if (this.data().dpConfig.format.includes('HH') || this.data().dpConfig.format.includes('mm') || this.data().dpConfig.format.includes('A')) {
545
+ // For datetime formats, we need to extract just the date part
546
+ // Try to parse the full string and then format it as date-only for comparison
547
+ if (startDateString) {
548
+ const parsedStart = this.parseDateWithMultipleFormats(startDateString);
549
+ if (parsedStart.isValid()) {
550
+ // Extract date part by finding the time boundary - handle spaces in date part
551
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
552
+ if (timeStartMatch) {
553
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
554
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
555
+ startDateString = parsedStart.format(dateOnlyFormat);
556
+ }
557
+ }
558
+ }
559
+ if (endDateString) {
560
+ const parsedEnd = this.parseDateWithMultipleFormats(endDateString);
561
+ if (parsedEnd.isValid()) {
562
+ // Extract date part by finding the time boundary - handle spaces in date part
563
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
564
+ if (timeStartMatch) {
565
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
566
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
567
+ endDateString = parsedEnd.format(dateOnlyFormat);
568
+ }
569
+ }
570
+ }
571
+ }
572
+ // Parse the selected dates to get proper dayjs instances for comparison
573
+ const startDateParsed = startDateString ? this.parseDateWithMultipleFormats(startDateString) : null;
574
+ const endDateParsed = endDateString ? this.parseDateWithMultipleFormats(endDateString) : null;
503
575
  const isSelectedStartDay = !isDisabledDay &&
504
- (startDateString ?? false) &&
505
- dateFormatted === startDateString;
576
+ startDateParsed &&
577
+ startDateParsed.isValid() &&
578
+ date.isSame(startDateParsed, 'day');
506
579
  const isSelectedEndDay = !isDisabledDay &&
507
- (endDateString ?? false) &&
508
- dateFormatted === endDateString;
509
- // For range calculation, parse dates properly using custom format
510
- const startDate = startDateString ? dayjs(startDateString, this.data.dpConfig.format) : null;
511
- const endDate = endDateString ? dayjs(endDateString, this.data.dpConfig.format) : null;
512
- const isAfterSelectedStartDate = startDate ? this.dayjsInstance(date).isAfter(startDate, "day") : false;
513
- const isBeforeSelectedEndDate = endDate ? this.dayjsInstance(date).isBefore(endDate, "day") : false;
514
- const inRangeDay = startDate && endDate &&
580
+ endDateParsed &&
581
+ endDateParsed.isValid() &&
582
+ date.isSame(endDateParsed, 'day');
583
+ // For range calculation, use the already parsed dates
584
+ const isAfterSelectedStartDate = startDateParsed ? this.dayjsInstance(date).isAfter(startDateParsed, "day") : false;
585
+ const isBeforeSelectedEndDate = endDateParsed ? this.dayjsInstance(date).isBefore(endDateParsed, "day") : false;
586
+ const inRangeDay = startDateParsed && endDateParsed &&
587
+ startDateParsed.isValid() && endDateParsed.isValid() &&
515
588
  isAfterSelectedStartDate &&
516
589
  isBeforeSelectedEndDate;
517
590
  dates.push({
@@ -521,7 +594,7 @@ class TzDrpContainerComponent {
521
594
  isSelectedStartDay,
522
595
  isSelectedEndDay,
523
596
  inRangeDay,
524
- toastMessage: this.data.messages.find(q => date.format(this.data.dpConfig.format) === q.date)?.message || "",
597
+ toastMessage: this.data().messages.find(q => date.format(this.data().dpConfig.format) === q.date)?.message || "",
525
598
  isDisabledDay
526
599
  });
527
600
  }
@@ -531,64 +604,135 @@ class TzDrpContainerComponent {
531
604
  return dates;
532
605
  }
533
606
  selectDay(from, day) {
534
- if (day.date <= 0) {
607
+ if (day.date <= 0)
535
608
  return;
536
- }
537
609
  if (!day.isDisabledDay) {
538
610
  this.selectedItemLabelSignal.set(this.CUSTOM_RANGE_LABEL);
539
- if (this.selectionStarted()) {
611
+ if (this.selectionStartedSignal()) {
540
612
  const dayjsDay = dayjs()
541
613
  .year(from === "LEFT" ? this.currentYearNumberSignal() : this.nextYearNumberSignal())
542
614
  .month(from === "LEFT" ? this.currentMonthNumberSignal() : this.nextMonthNumberSignal())
543
615
  .date(day.date);
544
616
  // Extract date part from existing start date for comparison
545
- const startDateString = this.localSelectedDatesSignal().startDate?.split(' ')[0] || this.localSelectedDatesSignal().startDate;
546
- const startDate = startDateString ? dayjs(startDateString, this.data.dpConfig.format) : null;
547
- // If the selected date is the same as the start date, make it a single day selection
548
- if (startDate && dayjsDay.isSame(startDate, "day")) {
549
- this.localSelectedDatesSignal.set({
550
- startDate: dayjsDay.format(this.data.dpConfig.format),
551
- endDate: dayjsDay.format(this.data.dpConfig.format),
552
- selectedRangeLabel: this.CUSTOM_RANGE_LABEL
553
- });
554
- 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
- this.isDatesValidSignal.set(true);
558
- return;
617
+ let startDateString = this.localSelectedDatesSignal().startDate;
618
+ // Only extract date part if the format contains time components
619
+ if (this.data().dpConfig.format.includes('HH') || this.data().dpConfig.format.includes('mm') || this.data().dpConfig.format.includes('A')) {
620
+ // For datetime formats, we need to extract just the date part
621
+ // Try to parse the full string and then format it as date-only for comparison
622
+ if (startDateString) {
623
+ const parsedStart = this.parseDateWithMultipleFormats(startDateString);
624
+ if (parsedStart.isValid()) {
625
+ // Extract date part by finding the time boundary - handle spaces in date part
626
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
627
+ if (timeStartMatch) {
628
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
629
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
630
+ startDateString = parsedStart.format(dateOnlyFormat);
631
+ }
632
+ }
633
+ }
559
634
  }
635
+ const startDate = startDateString ? this.parseDateWithMultipleFormats(startDateString) : null;
560
636
  // If the selected date is before the start date, make it the new start date
561
637
  if (startDate && dayjsDay.isBefore(startDate, "day")) {
638
+ let formattedDate = dayjsDay.format(this.data().dpConfig.format);
639
+ // If time is enabled, append current time to the date
640
+ if (this.data().dpConfig.enableTime === true) {
641
+ const now = dayjs();
642
+ // Extract date part from the configured format - handle spaces in date part
643
+ // Look for the pattern where time starts (HH, mm, ss, A, a)
644
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
645
+ if (timeStartMatch) {
646
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
647
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
648
+ const timeOnlyFormat = this.data().dpConfig.format.substring(timeStartIndex + timeStartMatch[1].length);
649
+ const dateString = dayjsDay.format(dateOnlyFormat);
650
+ const timeString = now.format(timeOnlyFormat);
651
+ formattedDate = dateString + timeStartMatch[1] + timeString;
652
+ }
653
+ else {
654
+ // Fallback if no time pattern found
655
+ formattedDate = dayjsDay.format(this.data().dpConfig.format);
656
+ }
657
+ }
562
658
  this.localSelectedDatesSignal.set({
563
- startDate: dayjsDay.format(this.data.dpConfig.format),
659
+ startDate: formattedDate,
564
660
  endDate: null,
565
661
  selectedRangeLabel: this.CUSTOM_RANGE_LABEL
566
662
  });
567
- this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
568
- this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
663
+ this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal()));
664
+ this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal()));
569
665
  return;
570
666
  }
571
667
  this.selectionStartedSignal.set(false);
668
+ let formattedEndDate = dayjsDay.format(this.data().dpConfig.format);
669
+ // If time is enabled, append current time to the date
670
+ if (this.data().dpConfig.enableTime === true) {
671
+ const now = dayjs();
672
+ // Extract date part from the configured format - handle spaces in date part
673
+ // Look for the pattern where time starts (HH, mm, ss, A, a)
674
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
675
+ if (timeStartMatch) {
676
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
677
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
678
+ const timeOnlyFormat = this.data().dpConfig.format.substring(timeStartIndex + timeStartMatch[1].length);
679
+ const dateString = dayjsDay.format(dateOnlyFormat);
680
+ const timeString = now.format(timeOnlyFormat);
681
+ formattedEndDate = dateString + timeStartMatch[1] + timeString;
682
+ }
683
+ else {
684
+ // Fallback if no time pattern found
685
+ formattedEndDate = dayjsDay.format(this.data().dpConfig.format);
686
+ }
687
+ }
572
688
  this.localSelectedDatesSignal.set({
573
689
  ...this.localSelectedDatesSignal(),
574
- endDate: dayjsDay.format(this.data.dpConfig.format),
690
+ endDate: formattedEndDate,
575
691
  selectedRangeLabel: this.CUSTOM_RANGE_LABEL
576
692
  });
577
693
  }
578
694
  else {
579
695
  this.selectionStartedSignal.set(true);
696
+ let formattedStartDate = dayjs()
697
+ .year(from === "LEFT" ? this.currentYearNumberSignal() : this.nextYearNumberSignal())
698
+ .month(from === "LEFT" ? this.currentMonthNumberSignal() : this.nextMonthNumberSignal())
699
+ .date(day.date)
700
+ .format(this.data().dpConfig.format);
701
+ // If time is enabled, append current time to the date
702
+ if (this.data().dpConfig.enableTime === true) {
703
+ const now = dayjs();
704
+ // Extract date part from the configured format - handle spaces in date part
705
+ // Look for the pattern where time starts (HH, mm, ss, A, a)
706
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
707
+ if (timeStartMatch) {
708
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
709
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
710
+ const timeOnlyFormat = this.data().dpConfig.format.substring(timeStartIndex + timeStartMatch[1].length);
711
+ const dateString = dayjs()
712
+ .year(from === "LEFT" ? this.currentYearNumberSignal() : this.nextYearNumberSignal())
713
+ .month(from === "LEFT" ? this.currentMonthNumberSignal() : this.nextMonthNumberSignal())
714
+ .date(day.date)
715
+ .format(dateOnlyFormat);
716
+ const timeString = now.format(timeOnlyFormat);
717
+ formattedStartDate = dateString + timeStartMatch[1] + timeString;
718
+ }
719
+ else {
720
+ // Fallback if no time pattern found
721
+ formattedStartDate = dayjs()
722
+ .year(from === "LEFT" ? this.currentYearNumberSignal() : this.nextYearNumberSignal())
723
+ .month(from === "LEFT" ? this.currentMonthNumberSignal() : this.nextMonthNumberSignal())
724
+ .date(day.date)
725
+ .format(this.data().dpConfig.format);
726
+ }
727
+ }
580
728
  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),
729
+ startDate: formattedStartDate,
586
730
  endDate: null,
587
731
  selectedRangeLabel: this.CUSTOM_RANGE_LABEL
588
732
  });
589
733
  }
590
- this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
591
- this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
734
+ this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal()));
735
+ this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal()));
592
736
  this.isDatesValidSignal.set(false);
593
737
  if (this.localSelectedDatesSignal().startDate && this.localSelectedDatesSignal().endDate) {
594
738
  this.isDatesValidSignal.set(true);
@@ -603,11 +747,11 @@ class TzDrpContainerComponent {
603
747
  return;
604
748
  let startDate = this.dayjsInstance(item.value[0]);
605
749
  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
- const isAnyDateDisabled = this.data.datesDisabled.some((date) => this.dayjsInstance(date, this.data.dpConfig.format).isBetween(startDateStr, endDateStr, null, '[]'));
609
- const minDate = !!this.data.dpConfig.minDate ? this.dayjsInstance(this.data.dpConfig.minDate, this.data.dpConfig.format) : dayjs('invalid');
610
- const maxDate = !!this.data.dpConfig.maxDate ? this.dayjsInstance(this.data.dpConfig.maxDate, this.data.dpConfig.format) : dayjs('invalid');
750
+ const startDateStr = startDate.format(this.data().dpConfig.format);
751
+ const endDateStr = endDate.format(this.data().dpConfig.format);
752
+ const isAnyDateDisabled = this.data().datesDisabled.some((date) => this.dayjsInstance(date, this.data().dpConfig.format).isBetween(startDateStr, endDateStr, null, '[]'));
753
+ const minDate = !!this.data().dpConfig.minDate ? this.dayjsInstance(this.data().dpConfig.minDate, this.data().dpConfig.format) : dayjs('invalid');
754
+ const maxDate = !!this.data().dpConfig.maxDate ? this.dayjsInstance(this.data().dpConfig.maxDate, this.data().dpConfig.format) : dayjs('invalid');
611
755
  const isWithinLimits = (!minDate.isValid() || !startDate.isBefore(minDate, "day")) &&
612
756
  (!maxDate.isValid() || !endDate.isAfter(maxDate, "day"));
613
757
  if (!isWithinLimits || isAnyDateDisabled) {
@@ -630,10 +774,10 @@ class TzDrpContainerComponent {
630
774
  endDate: endDateStr,
631
775
  selectedRangeLabel: item.label
632
776
  });
633
- this.currentMonthSignal.set(getMonth(this.currentMonthNumber()));
634
- this.nextMonthSignal.set(getMonth(this.nextMonthNumber()));
635
- this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumber(), this.currentYearNumber()));
636
- this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumber(), this.nextYearNumber()));
777
+ this.currentMonthSignal.set(getMonth(this.currentMonthNumberSignal()));
778
+ this.nextMonthSignal.set(getMonth(this.nextMonthNumberSignal()));
779
+ this.currentMonthDatesSignal.set(this.generateDates(this.currentMonthNumberSignal(), this.currentYearNumberSignal()));
780
+ this.nextMonthDatesSignal.set(this.generateDates(this.nextMonthNumberSignal(), this.nextYearNumberSignal()));
637
781
  this.isDatesValidSignal.set(!!(this.localSelectedDatesSignal().startDate && this.localSelectedDatesSignal().endDate));
638
782
  }
639
783
  resetRange() {
@@ -650,7 +794,7 @@ class TzDrpContainerComponent {
650
794
  }
651
795
  applyDates() {
652
796
  // If time is enabled, append time to the dates before applying
653
- if (this.data.dpConfig.enableTime === true) {
797
+ if (this.data().dpConfig.enableTime === true) {
654
798
  let startTime;
655
799
  let endTime;
656
800
  if (this.is12HourFormat()) {
@@ -662,21 +806,51 @@ class TzDrpContainerComponent {
662
806
  endTime = this.formatTime(this.endHour24(), this.endMinute(), '');
663
807
  }
664
808
  // Extract only the date part (before any existing time) and append the selected time
665
- const startDateOnly = this.localSelectedDatesSignal().startDate?.split(' ')[0] || this.localSelectedDatesSignal().startDate;
666
- const endDateOnly = this.localSelectedDatesSignal().endDate?.split(' ')[0] || this.localSelectedDatesSignal().endDate;
809
+ const localDates = this.localSelectedDatesSignal();
810
+ let startDateOnly = localDates.startDate;
811
+ let endDateOnly = localDates.endDate;
812
+ // Only extract date part if the format contains time components
813
+ if (this.data().dpConfig.format.includes('HH') || this.data().dpConfig.format.includes('mm') || this.data().dpConfig.format.includes('A')) {
814
+ // For datetime formats, we need to extract just the date part
815
+ // Try to parse the full string and then format it as date-only for comparison
816
+ if (startDateOnly) {
817
+ const parsedStart = this.parseDateWithMultipleFormats(startDateOnly);
818
+ if (parsedStart.isValid()) {
819
+ // Extract date part by finding the time boundary - handle spaces in date part
820
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
821
+ if (timeStartMatch) {
822
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
823
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
824
+ startDateOnly = parsedStart.format(dateOnlyFormat);
825
+ }
826
+ }
827
+ }
828
+ if (endDateOnly) {
829
+ const parsedEnd = this.parseDateWithMultipleFormats(endDateOnly);
830
+ if (parsedEnd.isValid()) {
831
+ // Extract date part by finding the time boundary - handle spaces in date part
832
+ const timeStartMatch = this.data().dpConfig.format.match(/(\s+)(HH|mm|ss|A|a)/);
833
+ if (timeStartMatch) {
834
+ const timeStartIndex = this.data().dpConfig.format.indexOf(timeStartMatch[0]);
835
+ const dateOnlyFormat = this.data().dpConfig.format.substring(0, timeStartIndex);
836
+ endDateOnly = parsedEnd.format(dateOnlyFormat);
837
+ }
838
+ }
839
+ }
840
+ }
667
841
  const startDateWithTime = startDateOnly + ' ' + startTime;
668
842
  const endDateWithTime = endDateOnly + ' ' + endTime;
669
- this.data.dateChange({
843
+ this.data().dateChange({
670
844
  startDate: startDateWithTime,
671
845
  endDate: endDateWithTime
672
846
  });
673
847
  }
674
848
  else {
675
- this.data.dateChange(this.localSelectedDatesSignal());
849
+ this.data().dateChange(this.localSelectedDatesSignal());
676
850
  }
677
851
  }
678
852
  cancelDatePicker() {
679
- this.data.close();
853
+ this.data().close();
680
854
  }
681
855
  // Time-related methods
682
856
  onStartHourInput() {
@@ -735,7 +909,7 @@ class TzDrpContainerComponent {
735
909
  return minute;
736
910
  }
737
911
  is12HourFormat() {
738
- return this.data.dpConfig.format.includes('A') || this.data.dpConfig.format.includes('a');
912
+ return this.data().dpConfig.format.includes('A') || this.data().dpConfig.format.includes('a');
739
913
  }
740
914
  formatTime(hour, minute, amPm) {
741
915
  if (this.is12HourFormat()) {
@@ -750,7 +924,7 @@ class TzDrpContainerComponent {
750
924
  // Initialize time values from existing selected dates if they contain time
751
925
  let startTimeInitialized = false;
752
926
  let endTimeInitialized = false;
753
- if (this.data.dpConfig.enableTime && this.localSelectedDatesSignal().startDate) {
927
+ if (this.data().dpConfig.enableTime && this.localSelectedDatesSignal().startDate && typeof this.localSelectedDatesSignal().startDate === 'string') {
754
928
  const startDateParts = this.localSelectedDatesSignal().startDate.split(' ');
755
929
  if (startDateParts.length > 1) {
756
930
  const timePart = startDateParts.slice(1).join(' '); // Handle multiple spaces
@@ -758,7 +932,7 @@ class TzDrpContainerComponent {
758
932
  startTimeInitialized = true;
759
933
  }
760
934
  }
761
- if (this.data.dpConfig.enableTime && this.localSelectedDatesSignal().endDate) {
935
+ if (this.data().dpConfig.enableTime && this.localSelectedDatesSignal().endDate && typeof this.localSelectedDatesSignal().endDate === 'string') {
762
936
  const endDateParts = this.localSelectedDatesSignal().endDate.split(' ');
763
937
  if (endDateParts.length > 1) {
764
938
  const timePart = endDateParts.slice(1).join(' '); // Handle multiple spaces
@@ -767,7 +941,7 @@ class TzDrpContainerComponent {
767
941
  }
768
942
  }
769
943
  // If no existing time found, set current time as default
770
- if (this.data.dpConfig.enableTime) {
944
+ if (this.data().dpConfig.enableTime) {
771
945
  if (!startTimeInitialized) {
772
946
  this.setCurrentTimeAsDefault(true);
773
947
  }
@@ -994,9 +1168,10 @@ class TzDrpContainerComponent {
994
1168
  i0.ɵɵtext(38, "Apply");
995
1169
  i0.ɵɵelementEnd()()();
996
1170
  } if (rf & 2) {
1171
+ let tmp_1_0;
997
1172
  i0.ɵɵproperty("cdkTrapFocusAutoCapture", true);
998
1173
  i0.ɵɵadvance(3);
999
- i0.ɵɵproperty("ngIf", (ctx.data == null ? null : ctx.data.dpConfig == null ? null : ctx.data.dpConfig.ranges == null ? null : ctx.data.dpConfig.ranges.length) > 0);
1174
+ 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
1175
  i0.ɵɵadvance(3);
1001
1176
  i0.ɵɵproperty("ngClass", i0.ɵɵpureFunction1(15, _c0, ctx.isPreviousMonthDisabled()));
1002
1177
  i0.ɵɵadvance(4);
@@ -1016,14 +1191,14 @@ class TzDrpContainerComponent {
1016
1191
  i0.ɵɵadvance(2);
1017
1192
  i0.ɵɵproperty("ngForOf", ctx.nextMonthDates());
1018
1193
  i0.ɵɵadvance();
1019
- i0.ɵɵproperty("ngIf", ctx.data.dpConfig.enableTime === true);
1194
+ i0.ɵɵproperty("ngIf", ctx.data().dpConfig.enableTime === true);
1020
1195
  i0.ɵɵadvance(4);
1021
1196
  i0.ɵɵproperty("disabled", !ctx.isDatesValid());
1022
1197
  } }, 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
1198
  }
1024
1199
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(TzDrpContainerComponent, [{
1025
1200
  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"] }]
1201
+ 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
1202
  }], () => [{ type: undefined, decorators: [{
1028
1203
  type: Inject,
1029
1204
  args: [CONTAINER_DATA]
@@ -1099,16 +1274,19 @@ class TzDaterangepickerDirective {
1099
1274
  backdropClass: "cdk-overlay-transparent-backdrop"
1100
1275
  });
1101
1276
  this.overlayRef = this.overlay.create(config);
1277
+ // Get current values at the time of opening
1278
+ const currentSelectedDates = this.selectedDates();
1279
+ const currentSelectedRangeLabel = this.selectedRangeLabel();
1102
1280
  const tempRef = new ComponentPortal(TzDrpContainerComponent, this.viewContainerRef, Injector.create({
1103
1281
  providers: [
1104
1282
  {
1105
1283
  provide: CONTAINER_DATA,
1106
1284
  useValue: {
1107
1285
  messages: this.dateMessages(),
1108
- dates: this.control?.control.value || this.selectedDates(),
1286
+ dates: currentSelectedDates,
1109
1287
  dpConfig: this.dpConfig(),
1110
1288
  datesDisabled: this.datesDisabled(),
1111
- selectedRangeLabel: this.selectedRangeLabel(),
1289
+ selectedRangeLabel: currentSelectedRangeLabel,
1112
1290
  dateChange: this.applyDate.bind(this),
1113
1291
  close: this.close.bind(this)
1114
1292
  }