@shival99/z-ui 2.1.32 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/fesm2022/shival99-z-ui-components-z-accordion.mjs +41 -25
  2. package/fesm2022/shival99-z-ui-components-z-accordion.mjs.map +1 -1
  3. package/fesm2022/shival99-z-ui-components-z-autocomplete.mjs +176 -97
  4. package/fesm2022/shival99-z-ui-components-z-autocomplete.mjs.map +1 -1
  5. package/fesm2022/shival99-z-ui-components-z-avatar.mjs +71 -40
  6. package/fesm2022/shival99-z-ui-components-z-avatar.mjs.map +1 -1
  7. package/fesm2022/shival99-z-ui-components-z-breadcrumb.mjs +26 -15
  8. package/fesm2022/shival99-z-ui-components-z-breadcrumb.mjs.map +1 -1
  9. package/fesm2022/shival99-z-ui-components-z-button-group.mjs +33 -21
  10. package/fesm2022/shival99-z-ui-components-z-button-group.mjs.map +1 -1
  11. package/fesm2022/shival99-z-ui-components-z-button.mjs +32 -19
  12. package/fesm2022/shival99-z-ui-components-z-button.mjs.map +1 -1
  13. package/fesm2022/shival99-z-ui-components-z-calendar.mjs +289 -172
  14. package/fesm2022/shival99-z-ui-components-z-calendar.mjs.map +1 -1
  15. package/fesm2022/shival99-z-ui-components-z-card.mjs +34 -24
  16. package/fesm2022/shival99-z-ui-components-z-card.mjs.map +1 -1
  17. package/fesm2022/shival99-z-ui-components-z-chat.mjs +85 -47
  18. package/fesm2022/shival99-z-ui-components-z-chat.mjs.map +1 -1
  19. package/fesm2022/shival99-z-ui-components-z-checkbox.mjs +56 -31
  20. package/fesm2022/shival99-z-ui-components-z-checkbox.mjs.map +1 -1
  21. package/fesm2022/shival99-z-ui-components-z-code.mjs +29 -16
  22. package/fesm2022/shival99-z-ui-components-z-code.mjs.map +1 -1
  23. package/fesm2022/shival99-z-ui-components-z-command.mjs +34 -19
  24. package/fesm2022/shival99-z-ui-components-z-command.mjs.map +1 -1
  25. package/fesm2022/shival99-z-ui-components-z-drawer.mjs +310 -88
  26. package/fesm2022/shival99-z-ui-components-z-drawer.mjs.map +1 -1
  27. package/fesm2022/shival99-z-ui-components-z-dropdown-menu.mjs +32 -18
  28. package/fesm2022/shival99-z-ui-components-z-dropdown-menu.mjs.map +1 -1
  29. package/fesm2022/shival99-z-ui-components-z-editor.mjs +118 -62
  30. package/fesm2022/shival99-z-ui-components-z-editor.mjs.map +1 -1
  31. package/fesm2022/shival99-z-ui-components-z-empty.mjs +31 -17
  32. package/fesm2022/shival99-z-ui-components-z-empty.mjs.map +1 -1
  33. package/fesm2022/shival99-z-ui-components-z-filter.mjs +81 -54
  34. package/fesm2022/shival99-z-ui-components-z-filter.mjs.map +1 -1
  35. package/fesm2022/shival99-z-ui-components-z-gallery.mjs +240 -132
  36. package/fesm2022/shival99-z-ui-components-z-gallery.mjs.map +1 -1
  37. package/fesm2022/shival99-z-ui-components-z-icon.mjs +39 -21
  38. package/fesm2022/shival99-z-ui-components-z-icon.mjs.map +1 -1
  39. package/fesm2022/shival99-z-ui-components-z-input.mjs +173 -95
  40. package/fesm2022/shival99-z-ui-components-z-input.mjs.map +1 -1
  41. package/fesm2022/shival99-z-ui-components-z-kanban.mjs +88 -47
  42. package/fesm2022/shival99-z-ui-components-z-kanban.mjs.map +1 -1
  43. package/fesm2022/shival99-z-ui-components-z-loading.mjs +31 -19
  44. package/fesm2022/shival99-z-ui-components-z-loading.mjs.map +1 -1
  45. package/fesm2022/shival99-z-ui-components-z-marquee.mjs +42 -23
  46. package/fesm2022/shival99-z-ui-components-z-marquee.mjs.map +1 -1
  47. package/fesm2022/shival99-z-ui-components-z-media-player.mjs +87 -45
  48. package/fesm2022/shival99-z-ui-components-z-media-player.mjs.map +1 -1
  49. package/fesm2022/shival99-z-ui-components-z-menu.mjs +126 -67
  50. package/fesm2022/shival99-z-ui-components-z-menu.mjs.map +1 -1
  51. package/fesm2022/shival99-z-ui-components-z-metric-card.mjs +42 -23
  52. package/fesm2022/shival99-z-ui-components-z-metric-card.mjs.map +1 -1
  53. package/fesm2022/shival99-z-ui-components-z-modal.mjs +144 -80
  54. package/fesm2022/shival99-z-ui-components-z-modal.mjs.map +1 -1
  55. package/fesm2022/shival99-z-ui-components-z-pagination.mjs +45 -24
  56. package/fesm2022/shival99-z-ui-components-z-pagination.mjs.map +1 -1
  57. package/fesm2022/shival99-z-ui-components-z-popover.mjs +90 -57
  58. package/fesm2022/shival99-z-ui-components-z-popover.mjs.map +1 -1
  59. package/fesm2022/shival99-z-ui-components-z-qrcode.mjs +51 -29
  60. package/fesm2022/shival99-z-ui-components-z-qrcode.mjs.map +1 -1
  61. package/fesm2022/shival99-z-ui-components-z-radio.mjs +36 -20
  62. package/fesm2022/shival99-z-ui-components-z-radio.mjs.map +1 -1
  63. package/fesm2022/shival99-z-ui-components-z-scrollarea.mjs +27 -15
  64. package/fesm2022/shival99-z-ui-components-z-scrollarea.mjs.map +1 -1
  65. package/fesm2022/shival99-z-ui-components-z-select.mjs +239 -138
  66. package/fesm2022/shival99-z-ui-components-z-select.mjs.map +1 -1
  67. package/fesm2022/shival99-z-ui-components-z-show-more.mjs +38 -21
  68. package/fesm2022/shival99-z-ui-components-z-show-more.mjs.map +1 -1
  69. package/fesm2022/shival99-z-ui-components-z-skeleton-auto.mjs +42 -23
  70. package/fesm2022/shival99-z-ui-components-z-skeleton-auto.mjs.map +1 -1
  71. package/fesm2022/shival99-z-ui-components-z-skeleton.mjs +35 -19
  72. package/fesm2022/shival99-z-ui-components-z-skeleton.mjs.map +1 -1
  73. package/fesm2022/shival99-z-ui-components-z-steps.mjs +55 -31
  74. package/fesm2022/shival99-z-ui-components-z-steps.mjs.map +1 -1
  75. package/fesm2022/shival99-z-ui-components-z-switch.mjs +60 -33
  76. package/fesm2022/shival99-z-ui-components-z-switch.mjs.map +1 -1
  77. package/fesm2022/shival99-z-ui-components-z-table.mjs +10875 -0
  78. package/fesm2022/shival99-z-ui-components-z-table.mjs.map +1 -0
  79. package/fesm2022/shival99-z-ui-components-z-tabs.mjs +534 -0
  80. package/fesm2022/shival99-z-ui-components-z-tabs.mjs.map +1 -0
  81. package/fesm2022/shival99-z-ui-components-z-tags.mjs +72 -46
  82. package/fesm2022/shival99-z-ui-components-z-tags.mjs.map +1 -1
  83. package/fesm2022/shival99-z-ui-components-z-timeline.mjs +254 -0
  84. package/fesm2022/shival99-z-ui-components-z-timeline.mjs.map +1 -0
  85. package/fesm2022/shival99-z-ui-components-z-toast.mjs +53 -31
  86. package/fesm2022/shival99-z-ui-components-z-toast.mjs.map +1 -1
  87. package/fesm2022/shival99-z-ui-components-z-tooltip.mjs +133 -56
  88. package/fesm2022/shival99-z-ui-components-z-tooltip.mjs.map +1 -1
  89. package/fesm2022/shival99-z-ui-components-z-upload.mjs +63 -36
  90. package/fesm2022/shival99-z-ui-components-z-upload.mjs.map +1 -1
  91. package/fesm2022/shival99-z-ui-i18n.mjs +2 -0
  92. package/fesm2022/shival99-z-ui-i18n.mjs.map +1 -1
  93. package/fesm2022/shival99-z-ui-pipes.mjs +18 -18
  94. package/fesm2022/shival99-z-ui-services.mjs +35 -31
  95. package/fesm2022/shival99-z-ui-services.mjs.map +1 -1
  96. package/package.json +16 -16
  97. package/types/shival99-z-ui-components-z-autocomplete.d.ts +2 -2
  98. package/types/shival99-z-ui-components-z-card.d.ts +1 -2
  99. package/types/shival99-z-ui-components-z-drawer.d.ts +20 -2
  100. package/types/shival99-z-ui-components-z-gallery.d.ts +1 -2
  101. package/types/shival99-z-ui-components-z-select.d.ts +2 -2
  102. package/types/shival99-z-ui-components-z-table.d.ts +2293 -0
  103. package/types/shival99-z-ui-components-z-tabs.d.ts +92 -0
  104. package/types/shival99-z-ui-components-z-timeline.d.ts +71 -0
@@ -715,10 +715,10 @@ class ZDayClassesPipe {
715
715
  const state = getDayState(day);
716
716
  return zCalendarDayVariants({ state });
717
717
  }
718
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZDayClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
719
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZDayClassesPipe, isStandalone: true, name: "zDayClasses" });
718
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZDayClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
719
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZDayClassesPipe, isStandalone: true, name: "zDayClasses" });
720
720
  }
721
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZDayClassesPipe, decorators: [{
721
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZDayClassesPipe, decorators: [{
722
722
  type: Pipe,
723
723
  args: [{
724
724
  name: 'zDayClasses',
@@ -747,10 +747,10 @@ class ZIsPresetDisabledPipe {
747
747
  }
748
748
  return false;
749
749
  }
750
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsPresetDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
751
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsPresetDisabledPipe, isStandalone: true, name: "zIsPresetDisabled" });
750
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsPresetDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
751
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsPresetDisabledPipe, isStandalone: true, name: "zIsPresetDisabled" });
752
752
  }
753
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsPresetDisabledPipe, decorators: [{
753
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsPresetDisabledPipe, decorators: [{
754
754
  type: Pipe,
755
755
  args: [{
756
756
  name: 'zIsPresetDisabled',
@@ -768,10 +768,10 @@ class ZIsEndHourDisabledPipe {
768
768
  const actualStartHour = to24Hour(context.startHour, context.startPeriod, context.timeFormat);
769
769
  return actualHour < actualStartHour;
770
770
  }
771
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndHourDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
772
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndHourDisabledPipe, isStandalone: true, name: "zIsEndHourDisabled" });
771
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndHourDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
772
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndHourDisabledPipe, isStandalone: true, name: "zIsEndHourDisabled" });
773
773
  }
774
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndHourDisabledPipe, decorators: [{
774
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndHourDisabledPipe, decorators: [{
775
775
  type: Pipe,
776
776
  args: [{
777
777
  name: 'zIsEndHourDisabled',
@@ -791,10 +791,10 @@ class ZIsEndMinuteDisabledPipe {
791
791
  }
792
792
  return minute < context.startMinute;
793
793
  }
794
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndMinuteDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
795
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndMinuteDisabledPipe, isStandalone: true, name: "zIsEndMinuteDisabled" });
794
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndMinuteDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
795
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndMinuteDisabledPipe, isStandalone: true, name: "zIsEndMinuteDisabled" });
796
796
  }
797
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndMinuteDisabledPipe, decorators: [{
797
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndMinuteDisabledPipe, decorators: [{
798
798
  type: Pipe,
799
799
  args: [{
800
800
  name: 'zIsEndMinuteDisabled',
@@ -817,10 +817,10 @@ class ZIsEndSecondDisabledPipe {
817
817
  }
818
818
  return second <= context.startSecond;
819
819
  }
820
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndSecondDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
821
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndSecondDisabledPipe, isStandalone: true, name: "zIsEndSecondDisabled" });
820
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndSecondDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
821
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndSecondDisabledPipe, isStandalone: true, name: "zIsEndSecondDisabled" });
822
822
  }
823
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndSecondDisabledPipe, decorators: [{
823
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndSecondDisabledPipe, decorators: [{
824
824
  type: Pipe,
825
825
  args: [{
826
826
  name: 'zIsEndSecondDisabled',
@@ -834,10 +834,10 @@ class ZMonthClassesPipe {
834
834
  const state = getMonthState(monthIndex, selectedMonthIndex, todayMonthIndex);
835
835
  return zCalendarMonthVariants({ state });
836
836
  }
837
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZMonthClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
838
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZMonthClassesPipe, isStandalone: true, name: "zMonthClasses" });
837
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZMonthClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
838
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZMonthClassesPipe, isStandalone: true, name: "zMonthClasses" });
839
839
  }
840
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZMonthClassesPipe, decorators: [{
840
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZMonthClassesPipe, decorators: [{
841
841
  type: Pipe,
842
842
  args: [{
843
843
  name: 'zMonthClasses',
@@ -865,10 +865,10 @@ class ZIsStartMonthDisabledPipe {
865
865
  }
866
866
  return false;
867
867
  }
868
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsStartMonthDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
869
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsStartMonthDisabledPipe, isStandalone: true, name: "zIsStartMonthDisabled" });
868
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsStartMonthDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
869
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsStartMonthDisabledPipe, isStandalone: true, name: "zIsStartMonthDisabled" });
870
870
  }
871
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsStartMonthDisabledPipe, decorators: [{
871
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsStartMonthDisabledPipe, decorators: [{
872
872
  type: Pipe,
873
873
  args: [{
874
874
  name: 'zIsStartMonthDisabled',
@@ -895,10 +895,10 @@ class ZIsEndMonthDisabledPipe {
895
895
  }
896
896
  return false;
897
897
  }
898
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndMonthDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
899
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndMonthDisabledPipe, isStandalone: true, name: "zIsEndMonthDisabled" });
898
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndMonthDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
899
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndMonthDisabledPipe, isStandalone: true, name: "zIsEndMonthDisabled" });
900
900
  }
901
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndMonthDisabledPipe, decorators: [{
901
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndMonthDisabledPipe, decorators: [{
902
902
  type: Pipe,
903
903
  args: [{
904
904
  name: 'zIsEndMonthDisabled',
@@ -925,10 +925,10 @@ class ZIsStartYearDisabledPipe {
925
925
  }
926
926
  return false;
927
927
  }
928
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsStartYearDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
929
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsStartYearDisabledPipe, isStandalone: true, name: "zIsStartYearDisabled" });
928
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsStartYearDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
929
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsStartYearDisabledPipe, isStandalone: true, name: "zIsStartYearDisabled" });
930
930
  }
931
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsStartYearDisabledPipe, decorators: [{
931
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsStartYearDisabledPipe, decorators: [{
932
932
  type: Pipe,
933
933
  args: [{
934
934
  name: 'zIsStartYearDisabled',
@@ -955,10 +955,10 @@ class ZIsEndYearDisabledPipe {
955
955
  }
956
956
  return false;
957
957
  }
958
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndYearDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
959
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndYearDisabledPipe, isStandalone: true, name: "zIsEndYearDisabled" });
958
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndYearDisabledPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
959
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndYearDisabledPipe, isStandalone: true, name: "zIsEndYearDisabled" });
960
960
  }
961
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZIsEndYearDisabledPipe, decorators: [{
961
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZIsEndYearDisabledPipe, decorators: [{
962
962
  type: Pipe,
963
963
  args: [{
964
964
  name: 'zIsEndYearDisabled',
@@ -972,10 +972,10 @@ class ZQuarterClassesPipe {
972
972
  const state = getQuarterState(quarterIndex, selectedQuarterIndex, todayQuarterIndex);
973
973
  return zCalendarQuarterVariants({ state });
974
974
  }
975
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZQuarterClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
976
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZQuarterClassesPipe, isStandalone: true, name: "zQuarterClasses" });
975
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZQuarterClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
976
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZQuarterClassesPipe, isStandalone: true, name: "zQuarterClasses" });
977
977
  }
978
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZQuarterClassesPipe, decorators: [{
978
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZQuarterClassesPipe, decorators: [{
979
979
  type: Pipe,
980
980
  args: [{
981
981
  name: 'zQuarterClasses',
@@ -989,10 +989,10 @@ class ZYearClassesPipe {
989
989
  const state = getYearState(year, selectedYear, todayYear);
990
990
  return zCalendarYearVariants({ state });
991
991
  }
992
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZYearClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
993
- static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "21.0.9", ngImport: i0, type: ZYearClassesPipe, isStandalone: true, name: "zYearClasses" });
992
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZYearClassesPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
993
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "22.1.2", ngImport: i0, type: ZYearClassesPipe, isStandalone: true, name: "zYearClasses" });
994
994
  }
995
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZYearClassesPipe, decorators: [{
995
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZYearClassesPipe, decorators: [{
996
996
  type: Pipe,
997
997
  args: [{
998
998
  name: 'zYearClasses',
@@ -1002,58 +1002,82 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImpor
1002
1002
  }] });
1003
1003
 
1004
1004
  class ZCalendarComponent {
1005
- class = input('', ...(ngDevMode ? [{ debugName: "class" }] : []));
1006
- zMode = input('single', ...(ngDevMode ? [{ debugName: "zMode" }] : []));
1007
- zSize = input('default', ...(ngDevMode ? [{ debugName: "zSize" }] : []));
1008
- zLabel = input('', ...(ngDevMode ? [{ debugName: "zLabel" }] : []));
1009
- zLabelClass = input('', ...(ngDevMode ? [{ debugName: "zLabelClass" }] : []));
1010
- zPlaceholder = input(null, ...(ngDevMode ? [{ debugName: "zPlaceholder" }] : []));
1011
- zRequired = input(false, { ...(ngDevMode ? { debugName: "zRequired" } : {}), transform: zTransform });
1012
- zDisabled = input(false, { ...(ngDevMode ? { debugName: "zDisabled" } : {}), transform: zTransform });
1013
- zReadonly = input(false, { ...(ngDevMode ? { debugName: "zReadonly" } : {}), transform: zTransform });
1014
- zLoading = input(false, { ...(ngDevMode ? { debugName: "zLoading" } : {}), transform: zTransform });
1015
- zLoadingOutline = input(false, { ...(ngDevMode ? { debugName: "zLoadingOutline" } : {}), transform: zTransform });
1016
- zShowTime = input(false, { ...(ngDevMode ? { debugName: "zShowTime" } : {}), transform: zTransform });
1017
- zTimeFormat = input('24h', ...(ngDevMode ? [{ debugName: "zTimeFormat" }] : []));
1018
- zShowHour = input(true, { ...(ngDevMode ? { debugName: "zShowHour" } : {}), transform: zTransform });
1019
- zShowMinute = input(true, { ...(ngDevMode ? { debugName: "zShowMinute" } : {}), transform: zTransform });
1020
- zShowSecond = input(true, { ...(ngDevMode ? { debugName: "zShowSecond" } : {}), transform: zTransform });
1021
- zQuickSelect = input(false, { ...(ngDevMode ? { debugName: "zQuickSelect" } : {}), transform: zTransform });
1022
- zAllowEdit = input(true, { ...(ngDevMode ? { debugName: "zAllowEdit" } : {}), transform: zTransform });
1023
- zShortTime = input(false, { ...(ngDevMode ? { debugName: "zShortTime" } : {}), transform: zTransform });
1024
- zAllowClear = input(true, { ...(ngDevMode ? { debugName: "zAllowClear" } : {}), transform: zTransform });
1025
- zFormat = input('DD/MM/YYYY', ...(ngDevMode ? [{ debugName: "zFormat" }] : []));
1026
- zMinDate = input(null, ...(ngDevMode ? [{ debugName: "zMinDate" }] : []));
1027
- zMaxDate = input(null, ...(ngDevMode ? [{ debugName: "zMaxDate" }] : []));
1028
- zValueType = input('date', ...(ngDevMode ? [{ debugName: "zValueType" }] : []));
1029
- zValidators = input([], ...(ngDevMode ? [{ debugName: "zValidators" }] : []));
1030
- zShowOk = input(false, { ...(ngDevMode ? { debugName: "zShowOk" } : {}), transform: zTransform });
1031
- zOkText = input(null, ...(ngDevMode ? [{ debugName: "zOkText" }] : []));
1032
- zShowCancel = input(false, { ...(ngDevMode ? { debugName: "zShowCancel" } : {}), transform: zTransform });
1033
- zCancelText = input(null, ...(ngDevMode ? [{ debugName: "zCancelText" }] : []));
1034
- zDisabledDate = input(null, ...(ngDevMode ? [{ debugName: "zDisabledDate" }] : []));
1035
- zScrollClose = input(false, { ...(ngDevMode ? { debugName: "zScrollClose" } : {}), transform: zTransform });
1036
- zDefaultTime = input(null, ...(ngDevMode ? [{ debugName: "zDefaultTime" }] : []));
1037
- zRangeDefaultTime = input(null, ...(ngDevMode ? [{ debugName: "zRangeDefaultTime" }] : []));
1005
+ class = input('', /* @ts-ignore */
1006
+ ...(ngDevMode ? [{ debugName: "class" }] : /* istanbul ignore next */ []));
1007
+ zMode = input('single', /* @ts-ignore */
1008
+ ...(ngDevMode ? [{ debugName: "zMode" }] : /* istanbul ignore next */ []));
1009
+ zSize = input('default', /* @ts-ignore */
1010
+ ...(ngDevMode ? [{ debugName: "zSize" }] : /* istanbul ignore next */ []));
1011
+ zLabel = input('', /* @ts-ignore */
1012
+ ...(ngDevMode ? [{ debugName: "zLabel" }] : /* istanbul ignore next */ []));
1013
+ zLabelClass = input('', /* @ts-ignore */
1014
+ ...(ngDevMode ? [{ debugName: "zLabelClass" }] : /* istanbul ignore next */ []));
1015
+ zPlaceholder = input(null, /* @ts-ignore */
1016
+ ...(ngDevMode ? [{ debugName: "zPlaceholder" }] : /* istanbul ignore next */ []));
1017
+ zRequired = input(false, { ...(ngDevMode ? { debugName: "zRequired" } : /* istanbul ignore next */ {}), transform: zTransform });
1018
+ zDisabled = input(false, { ...(ngDevMode ? { debugName: "zDisabled" } : /* istanbul ignore next */ {}), transform: zTransform });
1019
+ zReadonly = input(false, { ...(ngDevMode ? { debugName: "zReadonly" } : /* istanbul ignore next */ {}), transform: zTransform });
1020
+ zLoading = input(false, { ...(ngDevMode ? { debugName: "zLoading" } : /* istanbul ignore next */ {}), transform: zTransform });
1021
+ zLoadingOutline = input(false, { ...(ngDevMode ? { debugName: "zLoadingOutline" } : /* istanbul ignore next */ {}), transform: zTransform });
1022
+ zShowTime = input(false, { ...(ngDevMode ? { debugName: "zShowTime" } : /* istanbul ignore next */ {}), transform: zTransform });
1023
+ zTimeFormat = input('24h', /* @ts-ignore */
1024
+ ...(ngDevMode ? [{ debugName: "zTimeFormat" }] : /* istanbul ignore next */ []));
1025
+ zShowHour = input(true, { ...(ngDevMode ? { debugName: "zShowHour" } : /* istanbul ignore next */ {}), transform: zTransform });
1026
+ zShowMinute = input(true, { ...(ngDevMode ? { debugName: "zShowMinute" } : /* istanbul ignore next */ {}), transform: zTransform });
1027
+ zShowSecond = input(true, { ...(ngDevMode ? { debugName: "zShowSecond" } : /* istanbul ignore next */ {}), transform: zTransform });
1028
+ zQuickSelect = input(false, { ...(ngDevMode ? { debugName: "zQuickSelect" } : /* istanbul ignore next */ {}), transform: zTransform });
1029
+ zAllowEdit = input(true, { ...(ngDevMode ? { debugName: "zAllowEdit" } : /* istanbul ignore next */ {}), transform: zTransform });
1030
+ zShortTime = input(false, { ...(ngDevMode ? { debugName: "zShortTime" } : /* istanbul ignore next */ {}), transform: zTransform });
1031
+ zAllowClear = input(true, { ...(ngDevMode ? { debugName: "zAllowClear" } : /* istanbul ignore next */ {}), transform: zTransform });
1032
+ zFormat = input('DD/MM/YYYY', /* @ts-ignore */
1033
+ ...(ngDevMode ? [{ debugName: "zFormat" }] : /* istanbul ignore next */ []));
1034
+ zMinDate = input(null, /* @ts-ignore */
1035
+ ...(ngDevMode ? [{ debugName: "zMinDate" }] : /* istanbul ignore next */ []));
1036
+ zMaxDate = input(null, /* @ts-ignore */
1037
+ ...(ngDevMode ? [{ debugName: "zMaxDate" }] : /* istanbul ignore next */ []));
1038
+ zValueType = input('date', /* @ts-ignore */
1039
+ ...(ngDevMode ? [{ debugName: "zValueType" }] : /* istanbul ignore next */ []));
1040
+ zValidators = input([], /* @ts-ignore */
1041
+ ...(ngDevMode ? [{ debugName: "zValidators" }] : /* istanbul ignore next */ []));
1042
+ zShowOk = input(false, { ...(ngDevMode ? { debugName: "zShowOk" } : /* istanbul ignore next */ {}), transform: zTransform });
1043
+ zOkText = input(null, /* @ts-ignore */
1044
+ ...(ngDevMode ? [{ debugName: "zOkText" }] : /* istanbul ignore next */ []));
1045
+ zShowCancel = input(false, { ...(ngDevMode ? { debugName: "zShowCancel" } : /* istanbul ignore next */ {}), transform: zTransform });
1046
+ zCancelText = input(null, /* @ts-ignore */
1047
+ ...(ngDevMode ? [{ debugName: "zCancelText" }] : /* istanbul ignore next */ []));
1048
+ zDisabledDate = input(null, /* @ts-ignore */
1049
+ ...(ngDevMode ? [{ debugName: "zDisabledDate" }] : /* istanbul ignore next */ []));
1050
+ zScrollClose = input(false, { ...(ngDevMode ? { debugName: "zScrollClose" } : /* istanbul ignore next */ {}), transform: zTransform });
1051
+ zDefaultTime = input(null, /* @ts-ignore */
1052
+ ...(ngDevMode ? [{ debugName: "zDefaultTime" }] : /* istanbul ignore next */ []));
1053
+ zRangeDefaultTime = input(null, /* @ts-ignore */
1054
+ ...(ngDevMode ? [{ debugName: "zRangeDefaultTime" }] : /* istanbul ignore next */ []));
1038
1055
  zControl = output();
1039
1056
  zChange = output();
1040
1057
  zOnBlur = output();
1041
1058
  zOnFocus = output();
1042
1059
  zEvent = output();
1043
- triggerRef = viewChild('triggerEl', ...(ngDevMode ? [{ debugName: "triggerRef" }] : []));
1044
- inputRef = viewChild('inputEl', ...(ngDevMode ? [{ debugName: "inputRef" }] : []));
1045
- startInputRef = viewChild('startInputEl', ...(ngDevMode ? [{ debugName: "startInputRef" }] : []));
1046
- endInputRef = viewChild('endInputEl', ...(ngDevMode ? [{ debugName: "endInputRef" }] : []));
1060
+ triggerRef = viewChild('triggerEl', /* @ts-ignore */
1061
+ ...(ngDevMode ? [{ debugName: "triggerRef" }] : /* istanbul ignore next */ []));
1062
+ inputRef = viewChild('inputEl', /* @ts-ignore */
1063
+ ...(ngDevMode ? [{ debugName: "inputRef" }] : /* istanbul ignore next */ []));
1064
+ startInputRef = viewChild('startInputEl', /* @ts-ignore */
1065
+ ...(ngDevMode ? [{ debugName: "startInputRef" }] : /* istanbul ignore next */ []));
1066
+ endInputRef = viewChild('endInputEl', /* @ts-ignore */
1067
+ ...(ngDevMode ? [{ debugName: "endInputRef" }] : /* istanbul ignore next */ []));
1047
1068
  pickerId = zUuid('z-calendar');
1048
- weekdayNames = computed(() => getWeekdayNames(this.zLocale()), ...(ngDevMode ? [{ debugName: "weekdayNames" }] : []));
1049
- monthNames = computed(() => getMonthNames(this.zLocale()), ...(ngDevMode ? [{ debugName: "monthNames" }] : []));
1069
+ weekdayNames = computed(() => getWeekdayNames(this.zLocale()), /* @ts-ignore */
1070
+ ...(ngDevMode ? [{ debugName: "weekdayNames" }] : /* istanbul ignore next */ []));
1071
+ monthNames = computed(() => getMonthNames(this.zLocale()), /* @ts-ignore */
1072
+ ...(ngDevMode ? [{ debugName: "monthNames" }] : /* istanbul ignore next */ []));
1050
1073
  quickSelectPresets = getQuickSelectPresets();
1051
1074
  hourOptions = computed(() => {
1052
1075
  if (this.zTimeFormat() === '12h') {
1053
1076
  return Array.from({ length: 12 }, (_, i) => i + 1);
1054
1077
  }
1055
1078
  return Array.from({ length: 24 }, (_, i) => i);
1056
- }, ...(ngDevMode ? [{ debugName: "hourOptions" }] : []));
1079
+ }, /* @ts-ignore */
1080
+ ...(ngDevMode ? [{ debugName: "hourOptions" }] : /* istanbul ignore next */ []));
1057
1081
  minuteOptions = Array.from({ length: 60 }, (_, i) => i);
1058
1082
  secondOptions = Array.from({ length: 60 }, (_, i) => i);
1059
1083
  formattedHour = computed(() => {
@@ -1063,45 +1087,72 @@ class ZCalendarComponent {
1063
1087
  return formatTimeValue(h12);
1064
1088
  }
1065
1089
  return formatTimeValue(h);
1066
- }, ...(ngDevMode ? [{ debugName: "formattedHour" }] : []));
1067
- formattedMinute = computed(() => formatTimeValue(this.minute()), ...(ngDevMode ? [{ debugName: "formattedMinute" }] : []));
1068
- formattedSecond = computed(() => formatTimeValue(this.second()), ...(ngDevMode ? [{ debugName: "formattedSecond" }] : []));
1090
+ }, /* @ts-ignore */
1091
+ ...(ngDevMode ? [{ debugName: "formattedHour" }] : /* istanbul ignore next */ []));
1092
+ formattedMinute = computed(() => formatTimeValue(this.minute()), /* @ts-ignore */
1093
+ ...(ngDevMode ? [{ debugName: "formattedMinute" }] : /* istanbul ignore next */ []));
1094
+ formattedSecond = computed(() => formatTimeValue(this.second()), /* @ts-ignore */
1095
+ ...(ngDevMode ? [{ debugName: "formattedSecond" }] : /* istanbul ignore next */ []));
1069
1096
  displayHour = computed(() => {
1070
1097
  const h = this.hour();
1071
1098
  if (this.zTimeFormat() === '12h') {
1072
1099
  return h % 12 || 12;
1073
1100
  }
1074
1101
  return h;
1075
- }, ...(ngDevMode ? [{ debugName: "displayHour" }] : []));
1102
+ }, /* @ts-ignore */
1103
+ ...(ngDevMode ? [{ debugName: "displayHour" }] : /* istanbul ignore next */ []));
1076
1104
  displayHourEnd = computed(() => {
1077
1105
  const h = this._hourEnd();
1078
1106
  if (this.zTimeFormat() === '12h') {
1079
1107
  return h % 12 || 12;
1080
1108
  }
1081
1109
  return h;
1082
- }, ...(ngDevMode ? [{ debugName: "displayHourEnd" }] : []));
1083
- _popoverControl = signal(null, ...(ngDevMode ? [{ debugName: "_popoverControl" }] : []));
1084
- _selectedDate = signal(null, ...(ngDevMode ? [{ debugName: "_selectedDate" }] : []));
1085
- _rangeStart = signal(null, ...(ngDevMode ? [{ debugName: "_rangeStart" }] : []));
1086
- _rangeEnd = signal(null, ...(ngDevMode ? [{ debugName: "_rangeEnd" }] : []));
1087
- _currentMonth = signal(getToday(), ...(ngDevMode ? [{ debugName: "_currentMonth" }] : []));
1088
- _endMonth = signal(addMonths(getToday(), 1), ...(ngDevMode ? [{ debugName: "_endMonth" }] : []));
1089
- _hourEnd = signal(0, ...(ngDevMode ? [{ debugName: "_hourEnd" }] : []));
1090
- _minuteEnd = signal(0, ...(ngDevMode ? [{ debugName: "_minuteEnd" }] : []));
1091
- _secondEnd = signal(0, ...(ngDevMode ? [{ debugName: "_secondEnd" }] : []));
1092
- _periodEnd = signal('AM', ...(ngDevMode ? [{ debugName: "_periodEnd" }] : []));
1093
- _disabled = signal(false, ...(ngDevMode ? [{ debugName: "_disabled" }] : []));
1094
- _formControl = signal(null, ...(ngDevMode ? [{ debugName: "_formControl" }] : []));
1095
- _formStateVersion = signal(0, ...(ngDevMode ? [{ debugName: "_formStateVersion" }] : []));
1096
- _customError = signal(null, ...(ngDevMode ? [{ debugName: "_customError" }] : []));
1097
- _backupSelectedDate = signal(null, ...(ngDevMode ? [{ debugName: "_backupSelectedDate" }] : []));
1098
- _backupRangeStart = signal(null, ...(ngDevMode ? [{ debugName: "_backupRangeStart" }] : []));
1099
- _backupRangeEnd = signal(null, ...(ngDevMode ? [{ debugName: "_backupRangeEnd" }] : []));
1100
- _backupActivePresetKey = signal(null, ...(ngDevMode ? [{ debugName: "_backupActivePresetKey" }] : []));
1101
- _backupShortDisplayPresetKey = signal(null, ...(ngDevMode ? [{ debugName: "_backupShortDisplayPresetKey" }] : []));
1102
- _appliedViaOk = signal(false, ...(ngDevMode ? [{ debugName: "_appliedViaOk" }] : []));
1103
- _hasTypedDraft = signal(false, ...(ngDevMode ? [{ debugName: "_hasTypedDraft" }] : []));
1104
- _skipBlurHandler = signal(false, ...(ngDevMode ? [{ debugName: "_skipBlurHandler" }] : []));
1110
+ }, /* @ts-ignore */
1111
+ ...(ngDevMode ? [{ debugName: "displayHourEnd" }] : /* istanbul ignore next */ []));
1112
+ _popoverControl = signal(null, /* @ts-ignore */
1113
+ ...(ngDevMode ? [{ debugName: "_popoverControl" }] : /* istanbul ignore next */ []));
1114
+ _selectedDate = signal(null, /* @ts-ignore */
1115
+ ...(ngDevMode ? [{ debugName: "_selectedDate" }] : /* istanbul ignore next */ []));
1116
+ _rangeStart = signal(null, /* @ts-ignore */
1117
+ ...(ngDevMode ? [{ debugName: "_rangeStart" }] : /* istanbul ignore next */ []));
1118
+ _rangeEnd = signal(null, /* @ts-ignore */
1119
+ ...(ngDevMode ? [{ debugName: "_rangeEnd" }] : /* istanbul ignore next */ []));
1120
+ _currentMonth = signal(getToday(), /* @ts-ignore */
1121
+ ...(ngDevMode ? [{ debugName: "_currentMonth" }] : /* istanbul ignore next */ []));
1122
+ _endMonth = signal(addMonths(getToday(), 1), /* @ts-ignore */
1123
+ ...(ngDevMode ? [{ debugName: "_endMonth" }] : /* istanbul ignore next */ []));
1124
+ _hourEnd = signal(0, /* @ts-ignore */
1125
+ ...(ngDevMode ? [{ debugName: "_hourEnd" }] : /* istanbul ignore next */ []));
1126
+ _minuteEnd = signal(0, /* @ts-ignore */
1127
+ ...(ngDevMode ? [{ debugName: "_minuteEnd" }] : /* istanbul ignore next */ []));
1128
+ _secondEnd = signal(0, /* @ts-ignore */
1129
+ ...(ngDevMode ? [{ debugName: "_secondEnd" }] : /* istanbul ignore next */ []));
1130
+ _periodEnd = signal('AM', /* @ts-ignore */
1131
+ ...(ngDevMode ? [{ debugName: "_periodEnd" }] : /* istanbul ignore next */ []));
1132
+ _disabled = signal(false, /* @ts-ignore */
1133
+ ...(ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []));
1134
+ _formControl = signal(null, /* @ts-ignore */
1135
+ ...(ngDevMode ? [{ debugName: "_formControl" }] : /* istanbul ignore next */ []));
1136
+ _formStateVersion = signal(0, /* @ts-ignore */
1137
+ ...(ngDevMode ? [{ debugName: "_formStateVersion" }] : /* istanbul ignore next */ []));
1138
+ _customError = signal(null, /* @ts-ignore */
1139
+ ...(ngDevMode ? [{ debugName: "_customError" }] : /* istanbul ignore next */ []));
1140
+ _backupSelectedDate = signal(null, /* @ts-ignore */
1141
+ ...(ngDevMode ? [{ debugName: "_backupSelectedDate" }] : /* istanbul ignore next */ []));
1142
+ _backupRangeStart = signal(null, /* @ts-ignore */
1143
+ ...(ngDevMode ? [{ debugName: "_backupRangeStart" }] : /* istanbul ignore next */ []));
1144
+ _backupRangeEnd = signal(null, /* @ts-ignore */
1145
+ ...(ngDevMode ? [{ debugName: "_backupRangeEnd" }] : /* istanbul ignore next */ []));
1146
+ _backupActivePresetKey = signal(null, /* @ts-ignore */
1147
+ ...(ngDevMode ? [{ debugName: "_backupActivePresetKey" }] : /* istanbul ignore next */ []));
1148
+ _backupShortDisplayPresetKey = signal(null, /* @ts-ignore */
1149
+ ...(ngDevMode ? [{ debugName: "_backupShortDisplayPresetKey" }] : /* istanbul ignore next */ []));
1150
+ _appliedViaOk = signal(false, /* @ts-ignore */
1151
+ ...(ngDevMode ? [{ debugName: "_appliedViaOk" }] : /* istanbul ignore next */ []));
1152
+ _hasTypedDraft = signal(false, /* @ts-ignore */
1153
+ ...(ngDevMode ? [{ debugName: "_hasTypedDraft" }] : /* istanbul ignore next */ []));
1154
+ _skipBlurHandler = signal(false, /* @ts-ignore */
1155
+ ...(ngDevMode ? [{ debugName: "_skipBlurHandler" }] : /* istanbul ignore next */ []));
1105
1156
  _injector = inject(Injector);
1106
1157
  _destroyRef = inject(DestroyRef);
1107
1158
  _zTranslate = inject(ZTranslateService);
@@ -1109,17 +1160,28 @@ class ZCalendarComponent {
1109
1160
  _onChange = () => void 0;
1110
1161
  _onTouched = () => void 0;
1111
1162
  _ngControl = null;
1112
- _isNgModel = signal(false, ...(ngDevMode ? [{ debugName: "_isNgModel" }] : []));
1113
- isOpen = computed(() => this._popoverControl()?.isVisible() ?? false, ...(ngDevMode ? [{ debugName: "isOpen" }] : []));
1114
- hoveredDate = signal(null, ...(ngDevMode ? [{ debugName: "hoveredDate" }] : []));
1115
- currentView = signal('day', ...(ngDevMode ? [{ debugName: "currentView" }] : []));
1116
- endView = signal('day', ...(ngDevMode ? [{ debugName: "endView" }] : []));
1117
- hour = signal(0, ...(ngDevMode ? [{ debugName: "hour" }] : []));
1118
- minute = signal(0, ...(ngDevMode ? [{ debugName: "minute" }] : []));
1119
- second = signal(0, ...(ngDevMode ? [{ debugName: "second" }] : []));
1120
- period = signal('AM', ...(ngDevMode ? [{ debugName: "period" }] : []));
1121
- inputDisplayValue = signal('', ...(ngDevMode ? [{ debugName: "inputDisplayValue" }] : []));
1122
- isInputFocused = signal(false, ...(ngDevMode ? [{ debugName: "isInputFocused" }] : []));
1163
+ _isNgModel = signal(false, /* @ts-ignore */
1164
+ ...(ngDevMode ? [{ debugName: "_isNgModel" }] : /* istanbul ignore next */ []));
1165
+ isOpen = computed(() => this._popoverControl()?.isVisible() ?? false, /* @ts-ignore */
1166
+ ...(ngDevMode ? [{ debugName: "isOpen" }] : /* istanbul ignore next */ []));
1167
+ hoveredDate = signal(null, /* @ts-ignore */
1168
+ ...(ngDevMode ? [{ debugName: "hoveredDate" }] : /* istanbul ignore next */ []));
1169
+ currentView = signal('day', /* @ts-ignore */
1170
+ ...(ngDevMode ? [{ debugName: "currentView" }] : /* istanbul ignore next */ []));
1171
+ endView = signal('day', /* @ts-ignore */
1172
+ ...(ngDevMode ? [{ debugName: "endView" }] : /* istanbul ignore next */ []));
1173
+ hour = signal(0, /* @ts-ignore */
1174
+ ...(ngDevMode ? [{ debugName: "hour" }] : /* istanbul ignore next */ []));
1175
+ minute = signal(0, /* @ts-ignore */
1176
+ ...(ngDevMode ? [{ debugName: "minute" }] : /* istanbul ignore next */ []));
1177
+ second = signal(0, /* @ts-ignore */
1178
+ ...(ngDevMode ? [{ debugName: "second" }] : /* istanbul ignore next */ []));
1179
+ period = signal('AM', /* @ts-ignore */
1180
+ ...(ngDevMode ? [{ debugName: "period" }] : /* istanbul ignore next */ []));
1181
+ inputDisplayValue = signal('', /* @ts-ignore */
1182
+ ...(ngDevMode ? [{ debugName: "inputDisplayValue" }] : /* istanbul ignore next */ []));
1183
+ isInputFocused = signal(false, /* @ts-ignore */
1184
+ ...(ngDevMode ? [{ debugName: "isInputFocused" }] : /* istanbul ignore next */ []));
1123
1185
  activePresetKey = linkedSignal(() => {
1124
1186
  const start = this._rangeStart();
1125
1187
  const end = this._rangeEnd();
@@ -1127,7 +1189,8 @@ class ZCalendarComponent {
1127
1189
  return this._detectMatchingPreset(start, end);
1128
1190
  }
1129
1191
  return null;
1130
- }, ...(ngDevMode ? [{ debugName: "activePresetKey" }] : []));
1192
+ }, /* @ts-ignore */
1193
+ ...(ngDevMode ? [{ debugName: "activePresetKey" }] : /* istanbul ignore next */ []));
1131
1194
  shortDisplayPresetKey = linkedSignal(() => {
1132
1195
  const start = this._rangeStart();
1133
1196
  const end = this._rangeEnd();
@@ -1138,12 +1201,14 @@ class ZCalendarComponent {
1138
1201
  }
1139
1202
  }
1140
1203
  return null;
1141
- }, ...(ngDevMode ? [{ debugName: "shortDisplayPresetKey" }] : []));
1204
+ }, /* @ts-ignore */
1205
+ ...(ngDevMode ? [{ debugName: "shortDisplayPresetKey" }] : /* istanbul ignore next */ []));
1142
1206
  quickSelectOptions = computed(() => this.quickSelectPresets.map(preset => ({
1143
1207
  label: preset.label,
1144
1208
  value: preset.key,
1145
1209
  disabled: this._isQuickSelectPresetDisabled(preset),
1146
- })), ...(ngDevMode ? [{ debugName: "quickSelectOptions" }] : []));
1210
+ })), /* @ts-ignore */
1211
+ ...(ngDevMode ? [{ debugName: "quickSelectOptions" }] : /* istanbul ignore next */ []));
1147
1212
  rangeShortDisplayValue = computed(() => {
1148
1213
  this._zTranslate.currentLang();
1149
1214
  if (!this.isRangeMode() || !this.zQuickSelect() || this.zAllowEdit() || !this.zShortTime()) {
@@ -1154,7 +1219,8 @@ class ZCalendarComponent {
1154
1219
  return this._zTranslate.instant(activePreset.label);
1155
1220
  }
1156
1221
  return '';
1157
- }, ...(ngDevMode ? [{ debugName: "rangeShortDisplayValue" }] : []));
1222
+ }, /* @ts-ignore */
1223
+ ...(ngDevMode ? [{ debugName: "rangeShortDisplayValue" }] : /* istanbul ignore next */ []));
1158
1224
  uiState = signal({
1159
1225
  hasViewChanged: false,
1160
1226
  hasEndViewChanged: false,
@@ -1163,16 +1229,19 @@ class ZCalendarComponent {
1163
1229
  isFocused: false,
1164
1230
  touched: false,
1165
1231
  dirty: false,
1166
- }, ...(ngDevMode ? [{ debugName: "uiState" }] : []));
1232
+ }, /* @ts-ignore */
1233
+ ...(ngDevMode ? [{ debugName: "uiState" }] : /* istanbul ignore next */ []));
1167
1234
  quarterNames = ['Q1', 'Q2', 'Q3', 'Q4'];
1168
1235
  todayQuarterIndex = computed(() => {
1169
1236
  const today = new Date();
1170
1237
  return Math.floor(today.getMonth() / 3);
1171
- }, ...(ngDevMode ? [{ debugName: "todayQuarterIndex" }] : []));
1238
+ }, /* @ts-ignore */
1239
+ ...(ngDevMode ? [{ debugName: "todayQuarterIndex" }] : /* istanbul ignore next */ []));
1172
1240
  selectedQuarterIndex = computed(() => {
1173
1241
  const date = this._selectedDate();
1174
1242
  return date ? Math.floor(date.getMonth() / 3) : -1;
1175
- }, ...(ngDevMode ? [{ debugName: "selectedQuarterIndex" }] : []));
1243
+ }, /* @ts-ignore */
1244
+ ...(ngDevMode ? [{ debugName: "selectedQuarterIndex" }] : /* istanbul ignore next */ []));
1176
1245
  isSameDayRange = computed(() => {
1177
1246
  if (!this.isRangeMode()) {
1178
1247
  return false;
@@ -1183,9 +1252,12 @@ class ZCalendarComponent {
1183
1252
  return false;
1184
1253
  }
1185
1254
  return isSameDay(start, end);
1186
- }, ...(ngDevMode ? [{ debugName: "isSameDayRange" }] : []));
1187
- isDisabled = computed(() => this._disabled() || this.zDisabled() || this.zLoading(), ...(ngDevMode ? [{ debugName: "isDisabled" }] : []));
1188
- isRangeMode = computed(() => this.zMode() === 'range', ...(ngDevMode ? [{ debugName: "isRangeMode" }] : []));
1255
+ }, /* @ts-ignore */
1256
+ ...(ngDevMode ? [{ debugName: "isSameDayRange" }] : /* istanbul ignore next */ []));
1257
+ isDisabled = computed(() => this._disabled() || this.zDisabled() || this.zLoading(), /* @ts-ignore */
1258
+ ...(ngDevMode ? [{ debugName: "isDisabled" }] : /* istanbul ignore next */ []));
1259
+ isRangeMode = computed(() => this.zMode() === 'range', /* @ts-ignore */
1260
+ ...(ngDevMode ? [{ debugName: "isRangeMode" }] : /* istanbul ignore next */ []));
1189
1261
  canApply = computed(() => {
1190
1262
  if (this.isTimeMode()) {
1191
1263
  return true;
@@ -1194,13 +1266,20 @@ class ZCalendarComponent {
1194
1266
  return this._rangeStart() !== null && this._rangeEnd() !== null;
1195
1267
  }
1196
1268
  return this._selectedDate() !== null;
1197
- }, ...(ngDevMode ? [{ debugName: "canApply" }] : []));
1198
- showOkButton = computed(() => this.zShowOk() || this.zShowTime() || this.isTimeMode(), ...(ngDevMode ? [{ debugName: "showOkButton" }] : []));
1199
- showCancelButton = computed(() => this.zShowCancel() || this.zShowTime() || this.isTimeMode(), ...(ngDevMode ? [{ debugName: "showCancelButton" }] : []));
1200
- isTimeMode = computed(() => this.zMode() === 'time', ...(ngDevMode ? [{ debugName: "isTimeMode" }] : []));
1201
- isMonthMode = computed(() => this.zMode() === 'month', ...(ngDevMode ? [{ debugName: "isMonthMode" }] : []));
1202
- isYearMode = computed(() => this.zMode() === 'year', ...(ngDevMode ? [{ debugName: "isYearMode" }] : []));
1203
- isQuarterMode = computed(() => this.zMode() === 'quarter', ...(ngDevMode ? [{ debugName: "isQuarterMode" }] : []));
1269
+ }, /* @ts-ignore */
1270
+ ...(ngDevMode ? [{ debugName: "canApply" }] : /* istanbul ignore next */ []));
1271
+ showOkButton = computed(() => this.zShowOk() || this.zShowTime() || this.isTimeMode(), /* @ts-ignore */
1272
+ ...(ngDevMode ? [{ debugName: "showOkButton" }] : /* istanbul ignore next */ []));
1273
+ showCancelButton = computed(() => this.zShowCancel() || this.zShowTime() || this.isTimeMode(), /* @ts-ignore */
1274
+ ...(ngDevMode ? [{ debugName: "showCancelButton" }] : /* istanbul ignore next */ []));
1275
+ isTimeMode = computed(() => this.zMode() === 'time', /* @ts-ignore */
1276
+ ...(ngDevMode ? [{ debugName: "isTimeMode" }] : /* istanbul ignore next */ []));
1277
+ isMonthMode = computed(() => this.zMode() === 'month', /* @ts-ignore */
1278
+ ...(ngDevMode ? [{ debugName: "isMonthMode" }] : /* istanbul ignore next */ []));
1279
+ isYearMode = computed(() => this.zMode() === 'year', /* @ts-ignore */
1280
+ ...(ngDevMode ? [{ debugName: "isYearMode" }] : /* istanbul ignore next */ []));
1281
+ isQuarterMode = computed(() => this.zMode() === 'quarter', /* @ts-ignore */
1282
+ ...(ngDevMode ? [{ debugName: "isQuarterMode" }] : /* istanbul ignore next */ []));
1204
1283
  todayButtonText = computed(() => {
1205
1284
  this._zTranslate.currentLang();
1206
1285
  if (this.isQuarterMode()) {
@@ -1216,20 +1295,27 @@ class ZCalendarComponent {
1216
1295
  return this._zTranslate.instant('i18n_z_ui_calendar_now');
1217
1296
  }
1218
1297
  return this._zTranslate.instant('i18n_z_ui_calendar_today');
1219
- }, ...(ngDevMode ? [{ debugName: "todayButtonText" }] : []));
1298
+ }, /* @ts-ignore */
1299
+ ...(ngDevMode ? [{ debugName: "todayButtonText" }] : /* istanbul ignore next */ []));
1220
1300
  currentMonth = this._currentMonth.asReadonly();
1221
- currentYear = computed(() => this._currentMonth().getFullYear(), ...(ngDevMode ? [{ debugName: "currentYear" }] : []));
1222
- currentMonthIndex = computed(() => this._currentMonth().getMonth(), ...(ngDevMode ? [{ debugName: "currentMonthIndex" }] : []));
1223
- todayMonthIndex = computed(() => new Date().getMonth(), ...(ngDevMode ? [{ debugName: "todayMonthIndex" }] : []));
1224
- todayYear = computed(() => new Date().getFullYear(), ...(ngDevMode ? [{ debugName: "todayYear" }] : []));
1301
+ currentYear = computed(() => this._currentMonth().getFullYear(), /* @ts-ignore */
1302
+ ...(ngDevMode ? [{ debugName: "currentYear" }] : /* istanbul ignore next */ []));
1303
+ currentMonthIndex = computed(() => this._currentMonth().getMonth(), /* @ts-ignore */
1304
+ ...(ngDevMode ? [{ debugName: "currentMonthIndex" }] : /* istanbul ignore next */ []));
1305
+ todayMonthIndex = computed(() => new Date().getMonth(), /* @ts-ignore */
1306
+ ...(ngDevMode ? [{ debugName: "todayMonthIndex" }] : /* istanbul ignore next */ []));
1307
+ todayYear = computed(() => new Date().getFullYear(), /* @ts-ignore */
1308
+ ...(ngDevMode ? [{ debugName: "todayYear" }] : /* istanbul ignore next */ []));
1225
1309
  selectedMonthIndex = computed(() => {
1226
1310
  const date = this._selectedDate();
1227
1311
  return date ? date.getMonth() : -1;
1228
- }, ...(ngDevMode ? [{ debugName: "selectedMonthIndex" }] : []));
1312
+ }, /* @ts-ignore */
1313
+ ...(ngDevMode ? [{ debugName: "selectedMonthIndex" }] : /* istanbul ignore next */ []));
1229
1314
  selectedYear = computed(() => {
1230
1315
  const date = this._selectedDate();
1231
1316
  return date ? date.getFullYear() : -1;
1232
- }, ...(ngDevMode ? [{ debugName: "selectedYear" }] : []));
1317
+ }, /* @ts-ignore */
1318
+ ...(ngDevMode ? [{ debugName: "selectedYear" }] : /* istanbul ignore next */ []));
1233
1319
  endTimeContext = computed(() => ({
1234
1320
  isSameDay: this.isSameDayRange(),
1235
1321
  startHour: this.hour(),
@@ -1240,47 +1326,55 @@ class ZCalendarComponent {
1240
1326
  timeFormat: this.zTimeFormat(),
1241
1327
  startPeriod: this.period(),
1242
1328
  endPeriod: this._periodEnd(),
1243
- }), ...(ngDevMode ? [{ debugName: "endTimeContext" }] : []));
1329
+ }), /* @ts-ignore */
1330
+ ...(ngDevMode ? [{ debugName: "endTimeContext" }] : /* istanbul ignore next */ []));
1244
1331
  startMonthDisabledContext = computed(() => ({
1245
1332
  currentYear: this._currentMonth().getFullYear(),
1246
1333
  endYear: this._endMonth().getFullYear(),
1247
1334
  endMonthIndex: this._endMonth().getMonth(),
1248
1335
  isRangeMode: this.isRangeMode(),
1249
1336
  disabledDateFn: this.zDisabledDate(),
1250
- }), ...(ngDevMode ? [{ debugName: "startMonthDisabledContext" }] : []));
1337
+ }), /* @ts-ignore */
1338
+ ...(ngDevMode ? [{ debugName: "startMonthDisabledContext" }] : /* istanbul ignore next */ []));
1251
1339
  endMonthDisabledContext = computed(() => ({
1252
1340
  startYear: this._currentMonth().getFullYear(),
1253
1341
  startMonthIndex: this._currentMonth().getMonth(),
1254
1342
  endYear: this._endMonth().getFullYear(),
1255
1343
  isRangeMode: this.isRangeMode(),
1256
1344
  disabledDateFn: this.zDisabledDate(),
1257
- }), ...(ngDevMode ? [{ debugName: "endMonthDisabledContext" }] : []));
1345
+ }), /* @ts-ignore */
1346
+ ...(ngDevMode ? [{ debugName: "endMonthDisabledContext" }] : /* istanbul ignore next */ []));
1258
1347
  startYearDisabledContext = computed(() => ({
1259
1348
  endYear: this._endMonth().getFullYear(),
1260
1349
  startMonthIndex: this._currentMonth().getMonth(),
1261
1350
  endMonthIndex: this._endMonth().getMonth(),
1262
1351
  isRangeMode: this.isRangeMode(),
1263
1352
  disabledDateFn: this.zDisabledDate(),
1264
- }), ...(ngDevMode ? [{ debugName: "startYearDisabledContext" }] : []));
1353
+ }), /* @ts-ignore */
1354
+ ...(ngDevMode ? [{ debugName: "startYearDisabledContext" }] : /* istanbul ignore next */ []));
1265
1355
  endYearDisabledContext = computed(() => ({
1266
1356
  startYear: this._currentMonth().getFullYear(),
1267
1357
  startMonthIndex: this._currentMonth().getMonth(),
1268
1358
  endMonthIndex: this._endMonth().getMonth(),
1269
1359
  isRangeMode: this.isRangeMode(),
1270
1360
  disabledDateFn: this.zDisabledDate(),
1271
- }), ...(ngDevMode ? [{ debugName: "endYearDisabledContext" }] : []));
1361
+ }), /* @ts-ignore */
1362
+ ...(ngDevMode ? [{ debugName: "endYearDisabledContext" }] : /* istanbul ignore next */ []));
1272
1363
  currentMonthName = computed(() => {
1273
1364
  const month = this._currentMonth();
1274
1365
  return month.toLocaleDateString(this.zLocale(), { month: 'short' });
1275
- }, ...(ngDevMode ? [{ debugName: "currentMonthName" }] : []));
1366
+ }, /* @ts-ignore */
1367
+ ...(ngDevMode ? [{ debugName: "currentMonthName" }] : /* istanbul ignore next */ []));
1276
1368
  yearRange = computed(() => {
1277
1369
  const currentYear = this._currentMonth().getFullYear();
1278
1370
  return getYearRange(currentYear, 12);
1279
- }, ...(ngDevMode ? [{ debugName: "yearRange" }] : []));
1371
+ }, /* @ts-ignore */
1372
+ ...(ngDevMode ? [{ debugName: "yearRange" }] : /* istanbul ignore next */ []));
1280
1373
  yearRangeSmall = computed(() => {
1281
1374
  const currentYear = this._currentMonth().getFullYear();
1282
1375
  return getYearRange(currentYear, 9);
1283
- }, ...(ngDevMode ? [{ debugName: "yearRangeSmall" }] : []));
1376
+ }, /* @ts-ignore */
1377
+ ...(ngDevMode ? [{ debugName: "yearRangeSmall" }] : /* istanbul ignore next */ []));
1284
1378
  calendarDays = computed(() => {
1285
1379
  const month = this._currentMonth();
1286
1380
  const year = month.getFullYear();
@@ -1295,13 +1389,16 @@ class ZCalendarComponent {
1295
1389
  disabledDate: this.zDisabledDate(),
1296
1390
  suppressOtherMonthRangeState: this.isRangeMode(),
1297
1391
  });
1298
- }, ...(ngDevMode ? [{ debugName: "calendarDays" }] : []));
1392
+ }, /* @ts-ignore */
1393
+ ...(ngDevMode ? [{ debugName: "calendarDays" }] : /* istanbul ignore next */ []));
1299
1394
  endMonth = this._endMonth.asReadonly();
1300
1395
  endMonthName = computed(() => {
1301
1396
  const month = this._endMonth();
1302
1397
  return month.toLocaleDateString(this.zLocale(), { month: 'short' });
1303
- }, ...(ngDevMode ? [{ debugName: "endMonthName" }] : []));
1304
- endMonthYear = computed(() => this._endMonth().getFullYear(), ...(ngDevMode ? [{ debugName: "endMonthYear" }] : []));
1398
+ }, /* @ts-ignore */
1399
+ ...(ngDevMode ? [{ debugName: "endMonthName" }] : /* istanbul ignore next */ []));
1400
+ endMonthYear = computed(() => this._endMonth().getFullYear(), /* @ts-ignore */
1401
+ ...(ngDevMode ? [{ debugName: "endMonthYear" }] : /* istanbul ignore next */ []));
1305
1402
  calendarDaysEnd = computed(() => {
1306
1403
  const month = this._endMonth();
1307
1404
  const year = month.getFullYear();
@@ -1316,17 +1413,22 @@ class ZCalendarComponent {
1316
1413
  disabledDate: this.zDisabledDate(),
1317
1414
  suppressOtherMonthRangeState: this.isRangeMode(),
1318
1415
  });
1319
- }, ...(ngDevMode ? [{ debugName: "calendarDaysEnd" }] : []));
1320
- formattedHourEnd = computed(() => formatTimeValue(this.zTimeFormat() === '12h' ? this._hourEnd() % 12 || 12 : this._hourEnd()), ...(ngDevMode ? [{ debugName: "formattedHourEnd" }] : []));
1321
- formattedMinuteEnd = computed(() => formatTimeValue(this._minuteEnd()), ...(ngDevMode ? [{ debugName: "formattedMinuteEnd" }] : []));
1322
- formattedSecondEnd = computed(() => formatTimeValue(this._secondEnd()), ...(ngDevMode ? [{ debugName: "formattedSecondEnd" }] : []));
1416
+ }, /* @ts-ignore */
1417
+ ...(ngDevMode ? [{ debugName: "calendarDaysEnd" }] : /* istanbul ignore next */ []));
1418
+ formattedHourEnd = computed(() => formatTimeValue(this.zTimeFormat() === '12h' ? this._hourEnd() % 12 || 12 : this._hourEnd()), /* @ts-ignore */
1419
+ ...(ngDevMode ? [{ debugName: "formattedHourEnd" }] : /* istanbul ignore next */ []));
1420
+ formattedMinuteEnd = computed(() => formatTimeValue(this._minuteEnd()), /* @ts-ignore */
1421
+ ...(ngDevMode ? [{ debugName: "formattedMinuteEnd" }] : /* istanbul ignore next */ []));
1422
+ formattedSecondEnd = computed(() => formatTimeValue(this._secondEnd()), /* @ts-ignore */
1423
+ ...(ngDevMode ? [{ debugName: "formattedSecondEnd" }] : /* istanbul ignore next */ []));
1323
1424
  minuteEnd = this._minuteEnd.asReadonly();
1324
1425
  secondEnd = this._secondEnd.asReadonly();
1325
1426
  periodEnd = this._periodEnd.asReadonly();
1326
1427
  endYearRange = computed(() => {
1327
1428
  const currentYear = this._endMonth().getFullYear();
1328
1429
  return getYearRange(currentYear);
1329
- }, ...(ngDevMode ? [{ debugName: "endYearRange" }] : []));
1430
+ }, /* @ts-ignore */
1431
+ ...(ngDevMode ? [{ debugName: "endYearRange" }] : /* istanbul ignore next */ []));
1330
1432
  canNavigateStartNext = computed(() => {
1331
1433
  if (!this.isRangeMode()) {
1332
1434
  return true;
@@ -1349,7 +1451,8 @@ class ZCalendarComponent {
1349
1451
  return lastYearInRange < end.getFullYear() - 1;
1350
1452
  }
1351
1453
  return true;
1352
- }, ...(ngDevMode ? [{ debugName: "canNavigateStartNext" }] : []));
1454
+ }, /* @ts-ignore */
1455
+ ...(ngDevMode ? [{ debugName: "canNavigateStartNext" }] : /* istanbul ignore next */ []));
1353
1456
  canNavigateEndPrev = computed(() => {
1354
1457
  if (!this.isRangeMode()) {
1355
1458
  return true;
@@ -1372,7 +1475,8 @@ class ZCalendarComponent {
1372
1475
  return firstYearInRange > start.getFullYear() + 1;
1373
1476
  }
1374
1477
  return true;
1375
- }, ...(ngDevMode ? [{ debugName: "canNavigateEndPrev" }] : []));
1478
+ }, /* @ts-ignore */
1479
+ ...(ngDevMode ? [{ debugName: "canNavigateEndPrev" }] : /* istanbul ignore next */ []));
1376
1480
  displayValue = computed(() => {
1377
1481
  const format = this.zFormat();
1378
1482
  const formatHasTime = hasTimeTokens(format);
@@ -1385,7 +1489,8 @@ class ZCalendarComponent {
1385
1489
  return this._formatDisplayValue(`${format} ${timeFormat}`);
1386
1490
  }
1387
1491
  return this._formatDisplayValue(format);
1388
- }, ...(ngDevMode ? [{ debugName: "displayValue" }] : []));
1492
+ }, /* @ts-ignore */
1493
+ ...(ngDevMode ? [{ debugName: "displayValue" }] : /* istanbul ignore next */ []));
1389
1494
  _formatDisplayValue(format) {
1390
1495
  if (this.isRangeMode()) {
1391
1496
  const start = this._rangeStart();
@@ -1411,21 +1516,26 @@ class ZCalendarComponent {
1411
1516
  }
1412
1517
  return formatDate(date, format, this.zLocale());
1413
1518
  }
1414
- _inputDisplayStart = signal('', ...(ngDevMode ? [{ debugName: "_inputDisplayStart" }] : []));
1415
- _inputDisplayEnd = signal('', ...(ngDevMode ? [{ debugName: "_inputDisplayEnd" }] : []));
1519
+ _inputDisplayStart = signal('', /* @ts-ignore */
1520
+ ...(ngDevMode ? [{ debugName: "_inputDisplayStart" }] : /* istanbul ignore next */ []));
1521
+ _inputDisplayEnd = signal('', /* @ts-ignore */
1522
+ ...(ngDevMode ? [{ debugName: "_inputDisplayEnd" }] : /* istanbul ignore next */ []));
1416
1523
  inputDisplayStart = this._inputDisplayStart.asReadonly();
1417
1524
  inputDisplayEnd = this._inputDisplayEnd.asReadonly();
1418
1525
  displayValueStart = computed(() => {
1419
1526
  const format = this._getDisplayFormatStart();
1420
1527
  const start = this._rangeStart();
1421
1528
  return start ? formatDate(start, format, this.zLocale()) : '';
1422
- }, ...(ngDevMode ? [{ debugName: "displayValueStart" }] : []));
1529
+ }, /* @ts-ignore */
1530
+ ...(ngDevMode ? [{ debugName: "displayValueStart" }] : /* istanbul ignore next */ []));
1423
1531
  displayValueEnd = computed(() => {
1424
1532
  const format = this._getDisplayFormatEnd();
1425
1533
  const end = this._rangeEnd();
1426
1534
  return end ? formatDate(end, format, this.zLocale()) : '';
1427
- }, ...(ngDevMode ? [{ debugName: "displayValueEnd" }] : []));
1428
- effectivePlaceholder = computed(() => this.zPlaceholder() ?? '', ...(ngDevMode ? [{ debugName: "effectivePlaceholder" }] : []));
1535
+ }, /* @ts-ignore */
1536
+ ...(ngDevMode ? [{ debugName: "displayValueEnd" }] : /* istanbul ignore next */ []));
1537
+ effectivePlaceholder = computed(() => this.zPlaceholder() ?? '', /* @ts-ignore */
1538
+ ...(ngDevMode ? [{ debugName: "effectivePlaceholder" }] : /* istanbul ignore next */ []));
1429
1539
  _getDisplayFormatStart() {
1430
1540
  const format = this.zFormat();
1431
1541
  const formatHasTime = hasTimeTokens(format);
@@ -1453,13 +1563,15 @@ class ZCalendarComponent {
1453
1563
  return false;
1454
1564
  }
1455
1565
  return this.displayValue() !== '';
1456
- }, ...(ngDevMode ? [{ debugName: "showClearButton" }] : []));
1566
+ }, /* @ts-ignore */
1567
+ ...(ngDevMode ? [{ debugName: "showClearButton" }] : /* istanbul ignore next */ []));
1457
1568
  hasValue = computed(() => {
1458
1569
  if (this.isRangeMode()) {
1459
1570
  return this._rangeStart() !== null && this._rangeEnd() !== null;
1460
1571
  }
1461
1572
  return this._selectedDate() !== null;
1462
- }, ...(ngDevMode ? [{ debugName: "hasValue" }] : []));
1573
+ }, /* @ts-ignore */
1574
+ ...(ngDevMode ? [{ debugName: "hasValue" }] : /* istanbul ignore next */ []));
1463
1575
  currentStatus = computed(() => {
1464
1576
  if (this.isDisabled()) {
1465
1577
  return 'disabled';
@@ -1474,13 +1586,15 @@ class ZCalendarComponent {
1474
1586
  return 'error';
1475
1587
  }
1476
1588
  return 'default';
1477
- }, ...(ngDevMode ? [{ debugName: "currentStatus" }] : []));
1589
+ }, /* @ts-ignore */
1590
+ ...(ngDevMode ? [{ debugName: "currentStatus" }] : /* istanbul ignore next */ []));
1478
1591
  triggerClasses = computed(() => zMergeClasses(zCalendarVariants({
1479
1592
  zSize: this.zSize(),
1480
1593
  zStatus: this.currentStatus(),
1481
1594
  }), this.zLoading() && this.zLoadingOutline() ? 'z-loading-outline-active !ring-ring/50 !ring-[3px]' : '', !this.zAllowEdit() && !this.isDisabled() && !this.zReadonly()
1482
1595
  ? 'cursor-pointer hover:bg-muted/30 [&_input]:cursor-pointer'
1483
- : '', this.class()), ...(ngDevMode ? [{ debugName: "triggerClasses" }] : []));
1596
+ : '', this.class()), /* @ts-ignore */
1597
+ ...(ngDevMode ? [{ debugName: "triggerClasses" }] : /* istanbul ignore next */ []));
1484
1598
  _shouldShowValidation = computed(() => {
1485
1599
  const control = this._formControl();
1486
1600
  this._formStateVersion();
@@ -1492,7 +1606,8 @@ class ZCalendarComponent {
1492
1606
  return control.dirty;
1493
1607
  }
1494
1608
  return this.uiState().dirty || this.uiState().touched;
1495
- }, ...(ngDevMode ? [{ debugName: "_shouldShowValidation" }] : []));
1609
+ }, /* @ts-ignore */
1610
+ ...(ngDevMode ? [{ debugName: "_shouldShowValidation" }] : /* istanbul ignore next */ []));
1496
1611
  hasError = computed(() => {
1497
1612
  // Check custom error first (from setErrorMessage)
1498
1613
  if (this._customError()) {
@@ -1508,7 +1623,8 @@ class ZCalendarComponent {
1508
1623
  return false;
1509
1624
  }
1510
1625
  return control.invalid && this._shouldShowValidation();
1511
- }, ...(ngDevMode ? [{ debugName: "hasError" }] : []));
1626
+ }, /* @ts-ignore */
1627
+ ...(ngDevMode ? [{ debugName: "hasError" }] : /* istanbul ignore next */ []));
1512
1628
  errorMessage = computed(() => {
1513
1629
  // Check custom error first (from setErrorMessage)
1514
1630
  const customError = this._customError();
@@ -1535,7 +1651,8 @@ class ZCalendarComponent {
1535
1651
  return this._zTranslate.instant('i18n_z_ui_calendar_required');
1536
1652
  }
1537
1653
  return '';
1538
- }, ...(ngDevMode ? [{ debugName: "errorMessage" }] : []));
1654
+ }, /* @ts-ignore */
1655
+ ...(ngDevMode ? [{ debugName: "errorMessage" }] : /* istanbul ignore next */ []));
1539
1656
  constructor() {
1540
1657
  effect(() => {
1541
1658
  const date = this._selectedDate();
@@ -3636,8 +3753,8 @@ class ZCalendarComponent {
3636
3753
  }
3637
3754
  });
3638
3755
  }
3639
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3640
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: ZCalendarComponent, isStandalone: true, selector: "z-calendar", inputs: { class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, zMode: { classPropertyName: "zMode", publicName: "zMode", isSignal: true, isRequired: false, transformFunction: null }, zSize: { classPropertyName: "zSize", publicName: "zSize", isSignal: true, isRequired: false, transformFunction: null }, zLabel: { classPropertyName: "zLabel", publicName: "zLabel", isSignal: true, isRequired: false, transformFunction: null }, zLabelClass: { classPropertyName: "zLabelClass", publicName: "zLabelClass", isSignal: true, isRequired: false, transformFunction: null }, zPlaceholder: { classPropertyName: "zPlaceholder", publicName: "zPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, zRequired: { classPropertyName: "zRequired", publicName: "zRequired", isSignal: true, isRequired: false, transformFunction: null }, zDisabled: { classPropertyName: "zDisabled", publicName: "zDisabled", isSignal: true, isRequired: false, transformFunction: null }, zReadonly: { classPropertyName: "zReadonly", publicName: "zReadonly", isSignal: true, isRequired: false, transformFunction: null }, zLoading: { classPropertyName: "zLoading", publicName: "zLoading", isSignal: true, isRequired: false, transformFunction: null }, zLoadingOutline: { classPropertyName: "zLoadingOutline", publicName: "zLoadingOutline", isSignal: true, isRequired: false, transformFunction: null }, zShowTime: { classPropertyName: "zShowTime", publicName: "zShowTime", isSignal: true, isRequired: false, transformFunction: null }, zTimeFormat: { classPropertyName: "zTimeFormat", publicName: "zTimeFormat", isSignal: true, isRequired: false, transformFunction: null }, zShowHour: { classPropertyName: "zShowHour", publicName: "zShowHour", isSignal: true, isRequired: false, transformFunction: null }, zShowMinute: { classPropertyName: "zShowMinute", publicName: "zShowMinute", isSignal: true, isRequired: false, transformFunction: null }, zShowSecond: { classPropertyName: "zShowSecond", publicName: "zShowSecond", isSignal: true, isRequired: false, transformFunction: null }, zQuickSelect: { classPropertyName: "zQuickSelect", publicName: "zQuickSelect", isSignal: true, isRequired: false, transformFunction: null }, zAllowEdit: { classPropertyName: "zAllowEdit", publicName: "zAllowEdit", isSignal: true, isRequired: false, transformFunction: null }, zShortTime: { classPropertyName: "zShortTime", publicName: "zShortTime", isSignal: true, isRequired: false, transformFunction: null }, zAllowClear: { classPropertyName: "zAllowClear", publicName: "zAllowClear", isSignal: true, isRequired: false, transformFunction: null }, zFormat: { classPropertyName: "zFormat", publicName: "zFormat", isSignal: true, isRequired: false, transformFunction: null }, zMinDate: { classPropertyName: "zMinDate", publicName: "zMinDate", isSignal: true, isRequired: false, transformFunction: null }, zMaxDate: { classPropertyName: "zMaxDate", publicName: "zMaxDate", isSignal: true, isRequired: false, transformFunction: null }, zValueType: { classPropertyName: "zValueType", publicName: "zValueType", isSignal: true, isRequired: false, transformFunction: null }, zValidators: { classPropertyName: "zValidators", publicName: "zValidators", isSignal: true, isRequired: false, transformFunction: null }, zShowOk: { classPropertyName: "zShowOk", publicName: "zShowOk", isSignal: true, isRequired: false, transformFunction: null }, zOkText: { classPropertyName: "zOkText", publicName: "zOkText", isSignal: true, isRequired: false, transformFunction: null }, zShowCancel: { classPropertyName: "zShowCancel", publicName: "zShowCancel", isSignal: true, isRequired: false, transformFunction: null }, zCancelText: { classPropertyName: "zCancelText", publicName: "zCancelText", isSignal: true, isRequired: false, transformFunction: null }, zDisabledDate: { classPropertyName: "zDisabledDate", publicName: "zDisabledDate", isSignal: true, isRequired: false, transformFunction: null }, zScrollClose: { classPropertyName: "zScrollClose", publicName: "zScrollClose", isSignal: true, isRequired: false, transformFunction: null }, zDefaultTime: { classPropertyName: "zDefaultTime", publicName: "zDefaultTime", isSignal: true, isRequired: false, transformFunction: null }, zRangeDefaultTime: { classPropertyName: "zRangeDefaultTime", publicName: "zRangeDefaultTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { zControl: "zControl", zChange: "zChange", zOnBlur: "zOnBlur", zOnFocus: "zOnFocus", zEvent: "zEvent" }, host: { classAttribute: "block min-w-0" }, providers: [
3756
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZCalendarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
3757
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.2", type: ZCalendarComponent, isStandalone: true, selector: "z-calendar", inputs: { class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, zMode: { classPropertyName: "zMode", publicName: "zMode", isSignal: true, isRequired: false, transformFunction: null }, zSize: { classPropertyName: "zSize", publicName: "zSize", isSignal: true, isRequired: false, transformFunction: null }, zLabel: { classPropertyName: "zLabel", publicName: "zLabel", isSignal: true, isRequired: false, transformFunction: null }, zLabelClass: { classPropertyName: "zLabelClass", publicName: "zLabelClass", isSignal: true, isRequired: false, transformFunction: null }, zPlaceholder: { classPropertyName: "zPlaceholder", publicName: "zPlaceholder", isSignal: true, isRequired: false, transformFunction: null }, zRequired: { classPropertyName: "zRequired", publicName: "zRequired", isSignal: true, isRequired: false, transformFunction: null }, zDisabled: { classPropertyName: "zDisabled", publicName: "zDisabled", isSignal: true, isRequired: false, transformFunction: null }, zReadonly: { classPropertyName: "zReadonly", publicName: "zReadonly", isSignal: true, isRequired: false, transformFunction: null }, zLoading: { classPropertyName: "zLoading", publicName: "zLoading", isSignal: true, isRequired: false, transformFunction: null }, zLoadingOutline: { classPropertyName: "zLoadingOutline", publicName: "zLoadingOutline", isSignal: true, isRequired: false, transformFunction: null }, zShowTime: { classPropertyName: "zShowTime", publicName: "zShowTime", isSignal: true, isRequired: false, transformFunction: null }, zTimeFormat: { classPropertyName: "zTimeFormat", publicName: "zTimeFormat", isSignal: true, isRequired: false, transformFunction: null }, zShowHour: { classPropertyName: "zShowHour", publicName: "zShowHour", isSignal: true, isRequired: false, transformFunction: null }, zShowMinute: { classPropertyName: "zShowMinute", publicName: "zShowMinute", isSignal: true, isRequired: false, transformFunction: null }, zShowSecond: { classPropertyName: "zShowSecond", publicName: "zShowSecond", isSignal: true, isRequired: false, transformFunction: null }, zQuickSelect: { classPropertyName: "zQuickSelect", publicName: "zQuickSelect", isSignal: true, isRequired: false, transformFunction: null }, zAllowEdit: { classPropertyName: "zAllowEdit", publicName: "zAllowEdit", isSignal: true, isRequired: false, transformFunction: null }, zShortTime: { classPropertyName: "zShortTime", publicName: "zShortTime", isSignal: true, isRequired: false, transformFunction: null }, zAllowClear: { classPropertyName: "zAllowClear", publicName: "zAllowClear", isSignal: true, isRequired: false, transformFunction: null }, zFormat: { classPropertyName: "zFormat", publicName: "zFormat", isSignal: true, isRequired: false, transformFunction: null }, zMinDate: { classPropertyName: "zMinDate", publicName: "zMinDate", isSignal: true, isRequired: false, transformFunction: null }, zMaxDate: { classPropertyName: "zMaxDate", publicName: "zMaxDate", isSignal: true, isRequired: false, transformFunction: null }, zValueType: { classPropertyName: "zValueType", publicName: "zValueType", isSignal: true, isRequired: false, transformFunction: null }, zValidators: { classPropertyName: "zValidators", publicName: "zValidators", isSignal: true, isRequired: false, transformFunction: null }, zShowOk: { classPropertyName: "zShowOk", publicName: "zShowOk", isSignal: true, isRequired: false, transformFunction: null }, zOkText: { classPropertyName: "zOkText", publicName: "zOkText", isSignal: true, isRequired: false, transformFunction: null }, zShowCancel: { classPropertyName: "zShowCancel", publicName: "zShowCancel", isSignal: true, isRequired: false, transformFunction: null }, zCancelText: { classPropertyName: "zCancelText", publicName: "zCancelText", isSignal: true, isRequired: false, transformFunction: null }, zDisabledDate: { classPropertyName: "zDisabledDate", publicName: "zDisabledDate", isSignal: true, isRequired: false, transformFunction: null }, zScrollClose: { classPropertyName: "zScrollClose", publicName: "zScrollClose", isSignal: true, isRequired: false, transformFunction: null }, zDefaultTime: { classPropertyName: "zDefaultTime", publicName: "zDefaultTime", isSignal: true, isRequired: false, transformFunction: null }, zRangeDefaultTime: { classPropertyName: "zRangeDefaultTime", publicName: "zRangeDefaultTime", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { zControl: "zControl", zChange: "zChange", zOnBlur: "zOnBlur", zOnFocus: "zOnFocus", zEvent: "zEvent" }, host: { classAttribute: "block min-w-0" }, providers: [
3641
3758
  {
3642
3759
  provide: NG_VALUE_ACCESSOR,
3643
3760
  useExisting: forwardRef(() => ZCalendarComponent),
@@ -3646,7 +3763,7 @@ class ZCalendarComponent {
3646
3763
  TranslatePipe,
3647
3764
  ], viewQueries: [{ propertyName: "triggerRef", first: true, predicate: ["triggerEl"], descendants: true, isSignal: true }, { propertyName: "inputRef", first: true, predicate: ["inputEl"], descendants: true, isSignal: true }, { propertyName: "startInputRef", first: true, predicate: ["startInputEl"], descendants: true, isSignal: true }, { propertyName: "endInputRef", first: true, predicate: ["endInputEl"], descendants: true, isSignal: true }], exportAs: ["zCalendar"], ngImport: i0, template: "<div class=\"z-calendar-wrapper flex w-full flex-col gap-2\">\n @if (zLabel()) {\n <label [for]=\"pickerId\" class=\"text-xs leading-none font-medium\" [class]=\"zLabelClass()\">\n {{ zLabel() }}\n @if (zRequired()) {\n <span class=\"text-destructive! ml-0.5\">*</span>\n }\n </label>\n }\n\n <div class=\"relative\">\n <div\n #triggerEl\n z-popover\n [zPopoverContent]=\"calendarTpl\"\n zPosition=\"bottom-left\"\n zPopoverWidth=\"auto\"\n [zOffset]=\"6\"\n [zDisabled]=\"isDisabled() || zReadonly()\"\n [zManualClose]=\"showCancelButton()\"\n [zOutsideClickClose]=\"true\"\n [zScrollClose]=\"zScrollClose()\"\n zTrigger=\"click\"\n zClass=\"border-0 shadow-none p-0\"\n (zHideStart)=\"onPopoverHide()\"\n (zShow)=\"onPopoverShow()\"\n (zControl)=\"onPopoverControl($event)\"\n [id]=\"pickerId\"\n [class]=\"triggerClasses()\"\n z-tooltip\n [zContent]=\"displayValue()\"\n zTooltipTrigger=\"hover\"\n zTooltipPosition=\"top\"\n [zTooltipDisabled]=\"isInputFocused() || isOpen() || !hasValue()\"\n (keydown)=\"onTriggerKeydown($event)\">\n <z-icon\n [zType]=\"isRangeMode() ? 'lucideCalendarRange' : 'lucideCalendar'\"\n zSize=\"16\"\n class=\"text-muted-foreground shrink-0 cursor-pointer\"\n (click)=\"$event.stopPropagation(); toggle()\" />\n\n @if (isRangeMode()) {\n <input\n #startInputEl\n type=\"text\"\n data-range-type=\"start\"\n class=\"placeholder:text-muted-foreground w-0 min-w-0 flex-1 truncate bg-transparent text-sm outline-none disabled:opacity-100\"\n [class.cursor-pointer]=\"!zAllowEdit()\"\n [class.pointer-events-none]=\"!zAllowEdit()\"\n [class.text-center]=\"!rangeShortDisplayValue()\"\n [class.text-left]=\"rangeShortDisplayValue()\"\n [placeholder]=\"'i18n_z_ui_calendar_start_date' | translate\"\n [value]=\"inputDisplayStart()\"\n [disabled]=\"isDisabled()\"\n [readonly]=\"zReadonly() || !zAllowEdit()\"\n (click)=\"zAllowEdit() && isOpen() && $event.stopPropagation()\"\n (focus)=\"onInputFocus($event)\"\n (input)=\"onStartInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n (keydown.enter)=\"onStartInputEnter($event)\"\n (keydown.escape)=\"onStartInputEscape($event)\" />\n @if (!rangeShortDisplayValue()) {\n <span class=\"text-muted-foreground text-sm\">-</span>\n <input\n #endInputEl\n type=\"text\"\n data-range-type=\"end\"\n class=\"placeholder:text-muted-foreground w-0 min-w-0 flex-1 truncate bg-transparent text-center text-sm outline-none disabled:opacity-100\"\n [class.cursor-pointer]=\"!zAllowEdit()\"\n [class.pointer-events-none]=\"!zAllowEdit()\"\n [placeholder]=\"'i18n_z_ui_calendar_end_date' | translate\"\n [value]=\"inputDisplayEnd()\"\n [disabled]=\"isDisabled()\"\n [readonly]=\"zReadonly() || !zAllowEdit()\"\n (click)=\"zAllowEdit() && isOpen() && $event.stopPropagation()\"\n (focus)=\"onInputFocus($event)\"\n (input)=\"onEndInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n (keydown.enter)=\"onEndInputEnter($event)\"\n (keydown.escape)=\"onEndInputEscape($event)\" />\n }\n } @else {\n <input\n #inputEl\n type=\"text\"\n class=\"placeholder:text-muted-foreground w-0 min-w-0 flex-1 truncate bg-transparent text-sm outline-none disabled:opacity-100\"\n [class.cursor-pointer]=\"!zAllowEdit()\"\n [class.pointer-events-none]=\"!zAllowEdit()\"\n [placeholder]=\"effectivePlaceholder()\"\n [value]=\"inputDisplayValue()\"\n [disabled]=\"isDisabled()\"\n [readonly]=\"zReadonly() || !zAllowEdit()\"\n (click)=\"zAllowEdit() && isOpen() && $event.stopPropagation()\"\n (focus)=\"onInputFocus($event)\"\n (input)=\"onInputChange($event)\"\n (blur)=\"onInputBlur($event)\"\n (keydown.enter)=\"onInputEnter($event)\"\n (keydown.escape)=\"onInputEscape($event)\" />\n }\n\n @if (zLoading()) {\n <div class=\"text-muted-foreground flex size-5 shrink-0 items-center justify-center\">\n <z-icon zType=\"lucideLoader2\" zSize=\"16\" class=\"animate-spin\" />\n </div>\n }\n\n @if (zAllowClear() && !isDisabled() && !zReadonly()) {\n <button\n type=\"button\"\n tabindex=\"-1\"\n class=\"text-muted-foreground hover:text-foreground flex size-5 shrink-0 cursor-pointer items-center justify-center rounded-sm transition-all\"\n [class.opacity-0]=\"!hasValue()\"\n [class.pointer-events-none]=\"!hasValue()\"\n (click)=\"onClear($event)\">\n <z-icon zType=\"lucideX\" zSize=\"18\" />\n </button>\n }\n </div>\n </div>\n\n @if (hasError()) {\n <p class=\"text-destructive animate-in fade-in slide-in-from-top-1 m-0 text-xs duration-200\">\n {{ errorMessage() }}\n </p>\n }\n</div>\n\n<ng-template #calendarTpl>\n <div\n class=\"z-calendar-calendar bg-popover border-border flex max-h-[50dvh] max-w-[calc(100vw-1.5rem)] flex-col overflow-hidden rounded-sm border shadow-[var(--z-popover-shadow)] min-[480px]:max-h-[55dvh] sm:max-h-none sm:max-w-none sm:flex-row sm:overflow-visible\"\n (keydown)=\"onCalendarKeydown($event)\">\n @if (zQuickSelect() && zMode() === 'range') {\n <div class=\"border-border hidden shrink-0 flex-col gap-0 space-y-1 overflow-y-auto border-r p-2 sm:flex\">\n @for (preset of quickSelectPresets; track preset.key) {\n @let presetDisabled = preset | zIsPresetDisabled: zDisabledDate();\n <button\n type=\"button\"\n class=\"cursor-pointer rounded-sm px-3 py-1.5 text-left text-sm whitespace-nowrap transition-colors\"\n [class.hover:bg-muted]=\"activePresetKey() !== preset.key && !presetDisabled\"\n [class.bg-primary]=\"activePresetKey() === preset.key\"\n [class.text-primary-foreground]=\"activePresetKey() === preset.key\"\n [class.font-medium]=\"activePresetKey() === preset.key\"\n [class.opacity-40]=\"presetDisabled\"\n [class.cursor-not-allowed]=\"presetDisabled\"\n [disabled]=\"presetDisabled\"\n (click)=\"onQuickSelect(preset)\">\n {{ preset.label | translate }}\n </button>\n }\n </div>\n }\n <div\n class=\"flex min-h-0 flex-1 flex-col items-center overflow-hidden pb-0 sm:overflow-visible sm:py-2\"\n [class.sm:pt-0!]=\"isTimeMode()\"\n [class]=\"\n !isRangeMode()\n ? 'w-[17.75rem] max-w-[calc(100vw-1.5rem)]'\n : 'w-[17.75rem] max-w-[calc(100vw-1.5rem)] sm:w-auto sm:max-w-none'\n \">\n @if (zQuickSelect() && zMode() === 'range') {\n <div class=\"border-border w-full border-b px-2 pt-2 pb-2 sm:hidden\">\n <z-select\n class=\"w-full\"\n zSize=\"sm\"\n zPosition=\"bottom-left\"\n [zShowSearch]=\"false\"\n [zAllowClear]=\"false\"\n [zOptions]=\"quickSelectOptions()\"\n [ngModel]=\"activePresetKey()\"\n [ngModelOptions]=\"{ standalone: true }\"\n (ngModelChange)=\"onQuickSelectKeyChange($event)\" />\n </div>\n }\n <div class=\"min-h-0 w-full flex-1 overflow-x-hidden overflow-y-auto pt-2 sm:overflow-visible sm:pt-0\">\n @if (!isTimeMode()) {\n <div\n class=\"z-calendars-wrapper flex w-full flex-col items-center gap-0 sm:flex-row sm:items-stretch sm:justify-center\">\n <!-- First Calendar -->\n <div class=\"z-calendar-section flex w-[17.5rem] shrink-0 flex-col\">\n @if (!isTimeMode()) {\n <!-- Header -->\n <div class=\"border-border flex w-full items-center justify-between gap-0.5 px-2\">\n <!-- Double left arrow (always visible) -->\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zWave]=\"false\"\n (click)=\"navigatePreviousFast()\">\n <z-icon zType=\"lucideChevronsLeft\" zSize=\"18\" />\n </button>\n\n <!-- Single left arrow (hidden in month/year view) -->\n @if (currentView() === 'day') {\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zWave]=\"false\"\n (click)=\"navigatePrevious()\">\n <z-icon zType=\"lucideChevronLeft\" zSize=\"18\" />\n </button>\n }\n\n <!-- Header content -->\n <div class=\"flex flex-1 shrink-0 items-center justify-center gap-0\">\n @if (currentView() === 'day') {\n <!-- Day view: Month + Year -->\n @if (!isYearMode() && !isQuarterMode()) {\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"h-7 px-1.5 text-sm!\"\n [zWave]=\"false\"\n (click)=\"setView('month')\">\n {{ currentMonthName() }}\n </button>\n }\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"h-7 px-1.5 text-sm!\"\n [zWave]=\"false\"\n [zDisabled]=\"isYearMode()\"\n (click)=\"setView('year')\">\n {{ currentYear() }}\n </button>\n } @else if (currentView() === 'month') {\n <!-- Month view: Only Year -->\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"h-7 px-1.5 text-sm!\"\n [zWave]=\"false\"\n (click)=\"setView('year')\">\n {{ currentYear() }}\n </button>\n } @else if (currentView() === 'year') {\n <!-- Year view: Year Range -->\n <span class=\"text-sm font-medium\">\n {{ yearRange()[0] }} - {{ yearRange()[yearRange().length - 1] }}\n </span>\n } @else if (currentView() === 'quarter') {\n <!-- Quarter view: Only Year -->\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"h-7 px-1.5 text-sm!\"\n [zWave]=\"false\"\n (click)=\"setView('year')\">\n {{ currentYear() }}\n </button>\n }\n </div>\n\n <!-- Single right arrow (hidden in month/year view) -->\n @if (currentView() === 'day') {\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zDisabled]=\"!canNavigateStartNext()\"\n [zWave]=\"false\"\n (click)=\"navigateNext()\">\n <z-icon zType=\"lucideChevronRight\" zSize=\"18\" />\n </button>\n }\n\n <!-- Double right arrow (always visible) -->\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zDisabled]=\"!canNavigateStartNext()\"\n [zWave]=\"false\"\n (click)=\"navigateNextFast()\">\n <z-icon zType=\"lucideChevronsRight\" zSize=\"18\" />\n </button>\n </div>\n\n <!-- Body -->\n <div\n class=\"flex h-full w-full flex-col items-center justify-center p-2\"\n [class.min-h-[14rem]]=\"!isQuarterMode()\"\n [class.h-[14rem]]=\"\n !isYearMode() &&\n !isMonthMode() &&\n !isQuarterMode() &&\n (currentView() === 'month' || currentView() === 'year')\n \"\n [class.min-h-[6.25rem]]=\"isQuarterMode()\"\n [class.!min-h-auto]=\"isYearMode() || isMonthMode() || isQuarterMode()\"\n [class.!h-auto]=\"isYearMode() || isMonthMode() || isQuarterMode()\">\n @if (currentView() === 'day') {\n <div\n class=\"flex h-full w-full flex-1 flex-col gap-1\"\n [class.animate-calendar-enter]=\"uiState().hasViewChanged\">\n <!-- Weekday headers -->\n <div class=\"flex w-full flex-1 justify-center gap-1\">\n @for (weekday of weekdayNames(); track weekday) {\n <div\n class=\"text-muted-foreground flex h-[1.875rem] w-[2.0313rem] items-center justify-center text-xs font-medium\">\n {{ weekday }}\n </div>\n }\n </div>\n\n <!-- Date rows -->\n @for (week of calendarDays(); track $index) {\n <div class=\"flex w-full flex-1 justify-center gap-1\">\n @for (day of week; track day.date.getTime()) {\n <button\n type=\"button\"\n [class]=\"day | zDayClasses\"\n class=\"h-[1.875rem] !w-[2.0313rem] !text-sm\"\n [disabled]=\"day.isDisabled\"\n (click)=\"onDayClick(day)\"\n (mouseenter)=\"onDayHover(day)\"\n (mouseleave)=\"onDayLeave()\">\n {{ day.day }}\n </button>\n }\n </div>\n }\n </div>\n }\n @if (currentView() === 'month') {\n <div\n class=\"grid h-full w-full grid-cols-3 grid-rows-4 gap-2.5 gap-y-5!\"\n [class.animate-calendar-enter]=\"uiState().hasViewChanged\">\n @for (month of monthNames(); track month; let i = $index) {\n @let monthDisabled = i | zIsStartMonthDisabled: startMonthDisabledContext();\n <div class=\"flex flex-1 items-center justify-center\">\n <button\n type=\"button\"\n [class]=\"i | zMonthClasses: selectedMonthIndex() : todayMonthIndex()\"\n class=\"!h-7 !w-full !text-sm\"\n [disabled]=\"monthDisabled\"\n [class.opacity-30]=\"monthDisabled\"\n [class.cursor-not-allowed]=\"monthDisabled\"\n (click)=\"onMonthSelect(i)\">\n {{ month }}\n </button>\n </div>\n }\n </div>\n }\n\n @if (currentView() === 'year') {\n <div\n class=\"grid h-full w-full grid-cols-3 grid-rows-4 gap-2.5 gap-y-5!\"\n [class.animate-calendar-enter]=\"uiState().hasViewChanged\">\n @for (year of yearRange(); track year) {\n @let yearDisabled = year | zIsStartYearDisabled: startYearDisabledContext();\n <div class=\"flex flex-1 items-center justify-center\">\n <button\n type=\"button\"\n [class]=\"year | zYearClasses: selectedYear() : todayYear()\"\n class=\"!h-7 !w-full !text-sm\"\n [disabled]=\"yearDisabled\"\n [class.opacity-30]=\"yearDisabled\"\n [class.cursor-not-allowed]=\"yearDisabled\"\n (click)=\"onYearClick(year)\">\n {{ year }}\n </button>\n </div>\n }\n </div>\n }\n\n @if (currentView() === 'quarter') {\n <div\n class=\"grid h-full w-full grid-cols-2 grid-rows-2 gap-2 p-1\"\n [class.animate-calendar-enter]=\"uiState().hasViewChanged\">\n @for (quarter of quarterNames; track quarter; let i = $index) {\n <div class=\"flex flex-1 items-center justify-center\">\n <button\n type=\"button\"\n [class]=\"i | zQuarterClasses: selectedQuarterIndex() : todayQuarterIndex()\"\n class=\"!h-8 !w-full !text-sm\"\n (click)=\"onQuarterClick(i)\">\n {{ quarter }}\n </button>\n </div>\n }\n </div>\n }\n </div>\n }\n </div>\n\n <!-- Second Calendar (Range Mode Only) -->\n @if (isRangeMode()) {\n <!-- Divider -->\n <div\n class=\"border-border bg-border mb-2 hidden self-stretch sm:block sm:w-px\"\n [class.mb-2]=\"!zQuickSelect() || (zQuickSelect() && zShowOk())\"></div>\n <div class=\"border-border bg-border block h-px w-full sm:hidden\"></div>\n\n <div class=\"z-calendar-section flex w-[17.5rem] shrink-0 flex-col pt-2 sm:pt-0\">\n <!-- Header -->\n <div class=\"border-border flex w-full items-center justify-between gap-0.5 px-2\">\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zDisabled]=\"!canNavigateEndPrev()\"\n [zWave]=\"false\"\n (click)=\"navigateEndPreviousFast()\">\n <z-icon zType=\"lucideChevronsLeft\" zSize=\"18\" />\n </button>\n\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zDisabled]=\"!canNavigateEndPrev()\"\n [zWave]=\"false\"\n (click)=\"navigateEndPrevious()\">\n <z-icon zType=\"lucideChevronLeft\" zSize=\"18\" />\n </button>\n\n <div class=\"flex w-[7.5rem] shrink-0 items-center justify-center gap-0\">\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"h-7 px-1.5 text-sm!\"\n [zWave]=\"false\"\n (click)=\"setEndView('month')\">\n {{ endMonthName() }}\n </button>\n\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"h-7 px-1.5 text-sm!\"\n [zWave]=\"false\"\n (click)=\"setEndView('year')\">\n {{ endMonthYear() }}\n </button>\n </div>\n\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zWave]=\"false\"\n [zWave]=\"false\"\n (click)=\"navigateEndNext()\">\n <z-icon zType=\"lucideChevronRight\" zSize=\"18\" />\n </button>\n\n <button\n type=\"button\"\n z-button\n zType=\"ghost\"\n zSize=\"sm\"\n class=\"size-7 shrink-0 p-0!\"\n [zWave]=\"false\"\n [zWave]=\"false\"\n (click)=\"navigateEndNextFast()\">\n <z-icon zType=\"lucideChevronsRight\" zSize=\"18\" />\n </button>\n </div>\n\n <!-- Body -->\n <div\n class=\"flex h-full min-h-[14rem] w-full flex-col items-center justify-center p-2\"\n [class.h-[14rem]]=\"endView() === 'month' || endView() === 'year'\">\n @if (endView() === 'day') {\n <div\n class=\"flex h-full w-full flex-1 flex-col gap-1\"\n [class.animate-calendar-enter]=\"uiState().hasEndViewChanged\">\n <!-- Weekday headers -->\n <div class=\"flex w-full flex-1 justify-center gap-1\">\n @for (weekday of weekdayNames(); track weekday) {\n <div\n class=\"text-muted-foreground flex h-[1.875rem] w-[2.0313rem] items-center justify-center text-xs font-medium\">\n {{ weekday }}\n </div>\n }\n </div>\n\n <!-- Date rows -->\n @for (week of calendarDaysEnd(); track $index) {\n <div class=\"flex w-full flex-1 justify-center gap-1\">\n @for (day of week; track day.date.getTime()) {\n <button\n type=\"button\"\n [class]=\"day | zDayClasses\"\n class=\"h-[1.875rem] !w-[2.0313rem] !text-sm\"\n [disabled]=\"day.isDisabled\"\n (click)=\"onDayClick(day)\"\n (mouseenter)=\"onDayHover(day)\"\n (mouseleave)=\"onDayLeave()\">\n {{ day.day }}\n </button>\n }\n </div>\n }\n </div>\n }\n @if (endView() === 'month') {\n <div\n class=\"grid h-full w-full grid-cols-3 grid-rows-4 gap-2.5 gap-y-5!\"\n [class.animate-calendar-enter]=\"uiState().hasEndViewChanged\">\n @for (month of monthNames(); track month; let i = $index) {\n @let endMonthDisabled = i | zIsEndMonthDisabled: endMonthDisabledContext();\n <div class=\"flex flex-1 items-center justify-center\">\n <button\n type=\"button\"\n [class]=\"i | zMonthClasses: endMonth().getMonth() : -1\"\n class=\"!h-7 !w-full !text-sm\"\n [disabled]=\"endMonthDisabled\"\n [class.opacity-30]=\"endMonthDisabled\"\n [class.cursor-not-allowed]=\"endMonthDisabled\"\n (click)=\"onEndMonthClick(i)\">\n {{ month }}\n </button>\n </div>\n }\n </div>\n }\n\n @if (endView() === 'year') {\n <div\n class=\"grid h-full w-full grid-cols-3 grid-rows-4 gap-2.5 gap-y-5!\"\n [class.animate-calendar-enter]=\"uiState().hasEndViewChanged\">\n @for (year of endYearRange(); track year) {\n @let endYearDisabled = year | zIsEndYearDisabled: endYearDisabledContext();\n <div class=\"flex flex-1 items-center justify-center\">\n <button\n type=\"button\"\n [class]=\"year | zYearClasses: endMonth().getFullYear() : -1\"\n class=\"!h-7 !w-full !text-sm\"\n [disabled]=\"endYearDisabled\"\n [class.opacity-30]=\"endYearDisabled\"\n [class.cursor-not-allowed]=\"endYearDisabled\"\n (click)=\"onEndYearClick(year)\">\n {{ year }}\n </button>\n </div>\n }\n </div>\n }\n </div>\n </div>\n }\n </div>\n\n <!-- Compact Time Picker Below Calendar (Single Date) -->\n @if (!isRangeMode() && zShowTime()) {\n <div\n class=\"hover:bg-muted border-border flex w-full cursor-pointer items-center justify-center gap-1.5 border-t px-3 py-1.5 transition-colors\"\n z-popover\n [zPopoverContent]=\"timeDropdownTpl\"\n zPosition=\"bottom\"\n [zPopoverWidth]=\"240\"\n [zOffset]=\"4\"\n zTrigger=\"click\"\n zClass=\"border-border shadow-lg\"\n (zShow)=\"onTimeDropdownShow()\">\n <z-icon zType=\"lucideCalendarClock\" zSize=\"18\" class=\"text-muted-foreground mr-1 shrink-0\" />\n <span class=\"text-sm font-medium tabular-nums select-none\">\n @if (zShowHour()) {\n {{ formattedHour() }}\n }\n @if (zShowHour() && zShowMinute()) {\n <span class=\"text-muted-foreground\">:</span>\n }\n @if (zShowMinute()) {\n {{ formattedMinute() }}\n }\n @if (zShowMinute() && zShowSecond()) {\n <span class=\"text-muted-foreground\">:</span>\n }\n @if (zShowSecond()) {\n {{ formattedSecond() }}\n }\n @if (zTimeFormat() === '12h') {\n <span class=\"text-primary ml-0.5 font-semibold\">\n {{ period() }}\n </span>\n }\n </span>\n <z-icon zType=\"lucideChevronDown\" zSize=\"14\" class=\"text-muted-foreground shrink-0\" />\n </div>\n }\n\n <!-- Compact Time Pickers Below Calendars (Range Mode) -->\n @if (isRangeMode() && zShowTime()) {\n <div class=\"border-border flex w-full flex-col border-t sm:flex-row\">\n <!-- Start Time -->\n <div\n class=\"hover:bg-muted flex flex-1 cursor-pointer items-center justify-center gap-1.5 px-3 py-1.5 transition-colors\"\n z-popover\n [zPopoverContent]=\"timeDropdownTpl\"\n zPosition=\"bottom\"\n [zPopoverWidth]=\"240\"\n [zOffset]=\"4\"\n zTrigger=\"click\"\n zClass=\"border-border shadow-lg\"\n (zShow)=\"onTimeDropdownShow()\">\n <z-icon zType=\"lucideCalendarClock\" zSize=\"18\" class=\"text-muted-foreground mr-1 shrink-0\" />\n <span class=\"text-sm font-medium tabular-nums select-none\">\n @if (zShowHour()) {\n {{ formattedHour() }}\n }\n @if (zShowHour() && zShowMinute()) {\n <span class=\"text-muted-foreground\">:</span>\n }\n @if (zShowMinute()) {\n {{ formattedMinute() }}\n }\n @if (zShowMinute() && zShowSecond()) {\n <span class=\"text-muted-foreground\">:</span>\n }\n @if (zShowSecond()) {\n {{ formattedSecond() }}\n }\n @if (zTimeFormat() === '12h') {\n <span class=\"text-primary ml-0.5 font-semibold\">\n {{ period() }}\n </span>\n }\n </span>\n <z-icon zType=\"lucideChevronDown\" zSize=\"14\" class=\"text-muted-foreground shrink-0\" />\n </div>\n\n <!-- Divider -->\n <div class=\"border-border bg-border h-px self-stretch sm:block sm:h-full sm:w-px\"></div>\n\n <!-- End Time -->\n <div\n class=\"hover:bg-muted flex flex-1 cursor-pointer items-center justify-center gap-1.5 px-3 py-1.5 transition-colors\"\n z-popover\n [zPopoverContent]=\"timeDropdownEndTpl\"\n zPosition=\"bottom\"\n [zPopoverWidth]=\"240\"\n [zOffset]=\"4\"\n zTrigger=\"click\"\n zClass=\"border-border shadow-lg\"\n (zShow)=\"onTimeDropdownEndShow()\">\n <z-icon zType=\"lucideCalendarClock\" zSize=\"18\" class=\"text-muted-foreground mr-1 shrink-0\" />\n <span class=\"text-sm font-medium tabular-nums select-none\">\n @if (zShowHour()) {\n {{ formattedHourEnd() }}\n }\n @if (zShowHour() && zShowMinute()) {\n <span class=\"text-muted-foreground\">:</span>\n }\n @if (zShowMinute()) {\n {{ formattedMinuteEnd() }}\n }\n @if (zShowMinute() && zShowSecond()) {\n <span class=\"text-muted-foreground\">:</span>\n }\n @if (zShowSecond()) {\n {{ formattedSecondEnd() }}\n }\n @if (zTimeFormat() === '12h') {\n <span class=\"text-primary ml-0.5 font-semibold\">\n {{ periodEnd() }}\n </span>\n }\n </span>\n <z-icon zType=\"lucideChevronDown\" zSize=\"14\" class=\"text-muted-foreground shrink-0\" />\n </div>\n </div>\n }\n } @else {\n <!-- Time Only Mode -->\n <div class=\"flex w-full justify-center px-2 pt-2 pb-1\">\n <ng-container [ngTemplateOutlet]=\"timeDropdownTpl\" />\n </div>\n }\n </div>\n\n @if (!(zQuickSelect() && zMode() === 'range' && !showOkButton() && !showCancelButton())) {\n <div\n class=\"bg-popover border-border z-10 flex w-full shrink-0 items-center justify-between gap-2 border-t px-2 py-2 shadow-[0_-2px_8px_-2px_rgb(0_0_0_/_10%)] sm:pt-2 sm:pb-0 sm:shadow-none\">\n @if (!zQuickSelect() || zMode() !== 'range') {\n <button type=\"button\" z-button zType=\"secondary\" zSize=\"sm\" [zWave]=\"false\" (click)=\"onTodayClick()\">\n {{ todayButtonText() }}\n </button>\n } @else {\n <div></div>\n }\n\n @if (showOkButton() || showCancelButton()) {\n <div class=\"flex items-center gap-2\">\n @if (showCancelButton()) {\n <button type=\"button\" z-button zType=\"outline\" zSize=\"sm\" (click)=\"onCancelClick()\">\n {{ zCancelText() ?? ('i18n_z_ui_calendar_cancel' | translate) }}\n </button>\n }\n @if (showOkButton()) {\n <button type=\"button\" z-button zSize=\"sm\" [zDisabled]=\"!canApply()\" (click)=\"onOkClick()\">\n {{ zOkText() ?? ('i18n_z_ui_calendar_ok' | translate) }}\n </button>\n }\n </div>\n }\n </div>\n }\n </div>\n </div>\n</ng-template>\n\n<ng-template #timeDropdownTpl>\n <div class=\"bg-popover flex min-w-56 justify-center overflow-hidden rounded-sm\">\n @if (zShowHour()) {\n <div\n class=\"flex flex-col\"\n [class.border-r]=\"zShowMinute() || zShowSecond() || zTimeFormat() === '12h'\"\n [class.border-border]=\"zShowMinute() || zShowSecond() || zTimeFormat() === '12h'\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_hour' | translate }}\n </div>\n <ng-scrollbar\n class=\"z-time-scroll-hour h-[11rem] w-14\"\n [class.rounded-bl-sm]=\"!zShowMinute() && !zShowSecond() && zTimeFormat() !== '12h'\"\n [class.rounded-tl-sm]=\"zShowMinute() || zShowSecond() || zTimeFormat() === '12h'\"\n track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (hr of hourOptions(); track hr) {\n @let hrSelected = hr === displayHour();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 cursor-pointer items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!hrSelected\"\n [class.bg-primary]=\"hrSelected\"\n [class.text-primary-foreground]=\"hrSelected\"\n [class.font-medium]=\"hrSelected\"\n (click)=\"selectHour(hr)\">\n {{ hr | number: '2.0-0' }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n @if (zShowMinute()) {\n <div\n class=\"flex flex-col\"\n [class.border-r]=\"zShowSecond() || zTimeFormat() === '12h'\"\n [class.border-border]=\"zShowSecond() || zTimeFormat() === '12h'\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_minute' | translate }}\n </div>\n <ng-scrollbar\n class=\"z-time-scroll-minute h-[11rem] w-14\"\n [class.rounded-bl-sm]=\"!zShowHour() && !zShowSecond() && zTimeFormat() !== '12h'\"\n [class.rounded-tl-sm]=\"!zShowHour() && (zShowSecond() || zTimeFormat() === '12h')\"\n [class.rounded-br-sm]=\"(zShowHour() || !zShowHour()) && !zShowSecond() && zTimeFormat() !== '12h'\"\n track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (min of minuteOptions; track min) {\n @let minSelected = min === minute();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 cursor-pointer items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!minSelected\"\n [class.bg-primary]=\"minSelected\"\n [class.text-primary-foreground]=\"minSelected\"\n [class.font-medium]=\"minSelected\"\n (click)=\"selectMinute(min)\">\n {{ min | number: '2.0-0' }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n @if (zShowSecond()) {\n <div\n class=\"flex flex-col\"\n [class.border-r]=\"zTimeFormat() === '12h'\"\n [class.border-border]=\"zTimeFormat() === '12h'\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_second' | translate }}\n </div>\n <ng-scrollbar\n class=\"z-time-scroll-second h-[11rem] w-14\"\n [class.rounded-br-sm]=\"zTimeFormat() !== '12h'\"\n [class.rounded-bl-sm]=\"!zShowHour() && !zShowMinute() && zTimeFormat() !== '12h'\"\n track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (sec of secondOptions; track sec) {\n @let secSelected = sec === second();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 cursor-pointer items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!secSelected\"\n [class.bg-primary]=\"secSelected\"\n [class.text-primary-foreground]=\"secSelected\"\n [class.font-medium]=\"secSelected\"\n (click)=\"selectSecond(sec)\">\n {{ sec | number: '2.0-0' }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n @if (zTimeFormat() === '12h') {\n <div class=\"flex flex-col\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_period' | translate }}\n </div>\n <ng-scrollbar class=\"z-time-scroll-period h-[11rem] w-14\" [class.rounded-br-sm]=\"true\" track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (p of ['AM', 'PM']; track p) {\n @let pSelected = p === period();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 cursor-pointer items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!pSelected\"\n [class.bg-primary]=\"pSelected\"\n [class.text-primary-foreground]=\"pSelected\"\n [class.font-medium]=\"pSelected\"\n (click)=\"selectPeriod($any(p))\">\n {{ p }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n </div>\n</ng-template>\n\n<ng-template #timeDropdownEndTpl>\n <div class=\"bg-popover flex min-w-56 justify-center overflow-hidden rounded-sm\">\n @if (zShowHour()) {\n <div\n class=\"flex flex-col\"\n [class.border-r]=\"zShowMinute() || zShowSecond() || zTimeFormat() === '12h'\"\n [class.border-border]=\"zShowMinute() || zShowSecond() || zTimeFormat() === '12h'\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_hour' | translate }}\n </div>\n <ng-scrollbar\n class=\"z-time-scroll-hour-end h-[11rem] w-14\"\n [class.rounded-bl-sm]=\"!zShowMinute() && !zShowSecond() && zTimeFormat() !== '12h'\"\n [class.rounded-tl-sm]=\"zShowMinute() || zShowSecond() || zTimeFormat() === '12h'\"\n track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (hr of hourOptions(); track hr) {\n @let hrDisabled = hr | zIsEndHourDisabled: endTimeContext();\n @let hrEndSelected = hr === displayHourEnd();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!hrDisabled && !hrEndSelected\"\n [class.cursor-pointer]=\"!hrDisabled\"\n [class.bg-primary]=\"hrEndSelected\"\n [class.text-primary-foreground]=\"hrEndSelected\"\n [class.font-medium]=\"hrEndSelected\"\n [class.opacity-30]=\"hrDisabled\"\n [class.cursor-not-allowed]=\"hrDisabled\"\n [disabled]=\"hrDisabled\"\n (click)=\"selectHourEnd(hr)\">\n {{ hr | number: '2.0-0' }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n @if (zShowMinute()) {\n <div\n class=\"flex flex-col\"\n [class.border-r]=\"zShowSecond() || zTimeFormat() === '12h'\"\n [class.border-border]=\"zShowSecond() || zTimeFormat() === '12h'\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_minute' | translate }}\n </div>\n <ng-scrollbar\n class=\"z-time-scroll-minute-end h-[11rem] w-14\"\n [class.rounded-bl-sm]=\"!zShowHour() && !zShowSecond() && zTimeFormat() !== '12h'\"\n [class.rounded-tl-sm]=\"!zShowHour() && (zShowSecond() || zTimeFormat() === '12h')\"\n [class.rounded-br-sm]=\"(zShowHour() || !zShowHour()) && !zShowSecond() && zTimeFormat() !== '12h'\"\n track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (min of minuteOptions; track min) {\n @let minDisabled = min | zIsEndMinuteDisabled: endTimeContext();\n @let minEndSelected = min === minuteEnd();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!minDisabled && !minEndSelected\"\n [class.cursor-pointer]=\"!minDisabled\"\n [class.bg-primary]=\"minEndSelected\"\n [class.text-primary-foreground]=\"minEndSelected\"\n [class.font-medium]=\"minEndSelected\"\n [class.opacity-30]=\"minDisabled\"\n [class.cursor-not-allowed]=\"minDisabled\"\n [disabled]=\"minDisabled\"\n (click)=\"selectMinuteEnd(min)\">\n {{ min | number: '2.0-0' }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n @if (zShowSecond()) {\n <div\n class=\"flex flex-col\"\n [class.border-r]=\"zTimeFormat() === '12h'\"\n [class.border-border]=\"zTimeFormat() === '12h'\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_second' | translate }}\n </div>\n <ng-scrollbar\n class=\"z-time-scroll-second-end h-[11rem] w-14\"\n [class.rounded-br-sm]=\"zTimeFormat() !== '12h'\"\n [class.rounded-bl-sm]=\"!zShowHour() && !zShowMinute() && zTimeFormat() !== '12h'\"\n track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (sec of secondOptions; track sec) {\n @let secDisabled = sec | zIsEndSecondDisabled: endTimeContext();\n @let secEndSelected = sec === secondEnd();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!secDisabled && !secEndSelected\"\n [class.cursor-pointer]=\"!secDisabled\"\n [class.bg-primary]=\"secEndSelected\"\n [class.text-primary-foreground]=\"secEndSelected\"\n [class.font-medium]=\"secEndSelected\"\n [class.opacity-30]=\"secDisabled\"\n [class.cursor-not-allowed]=\"secDisabled\"\n [disabled]=\"secDisabled\"\n (click)=\"selectSecondEnd(sec)\">\n {{ sec | number: '2.0-0' }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n @if (zTimeFormat() === '12h') {\n <div class=\"flex flex-col\">\n <div\n class=\"text-muted-foreground border-b-border flex h-7 shrink-0 items-center justify-center border-b text-xs font-medium select-none\">\n {{ 'i18n_z_ui_calendar_period' | translate }}\n </div>\n <ng-scrollbar class=\"z-time-scroll-period-end h-[11rem] w-14\" [class.rounded-br-sm]=\"true\" track=\"vertical\">\n <div class=\"flex flex-col\">\n @for (p of ['AM', 'PM']; track p) {\n @let pSelected = p === periodEnd();\n <button\n type=\"button\"\n class=\"flex h-7 shrink-0 cursor-pointer items-center justify-center text-sm transition-colors\"\n [class.hover:bg-muted]=\"!pSelected\"\n [class.bg-primary]=\"pSelected\"\n [class.text-primary-foreground]=\"pSelected\"\n [class.font-medium]=\"pSelected\"\n (click)=\"selectPeriodEnd($any(p))\">\n {{ p }}\n </button>\n }\n </div>\n </ng-scrollbar>\n </div>\n }\n </div>\n</ng-template>\n", styles: [".animate-calendar-enter{animation:z-calendar-view-enter .2s ease-out}@keyframes z-calendar-view-enter{0%{opacity:0;transform:scale(.95) translateY(.25rem)}to{opacity:1;transform:scale(1) translateY(0)}}.z-calendar input{text-overflow:ellipsis;overflow:hidden}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: NgScrollbar, selector: "ng-scrollbar:not([externalViewport]), [ngScrollbar]", exportAs: ["ngScrollbar"] }, { kind: "component", type: ZIconComponent, selector: "z-icon, [z-icon]", inputs: ["class", "zType", "zAnimatedType", "zAnimate", "zAnimationTrigger", "zSize", "zStrokeWidth", "zSvg"] }, { kind: "component", type: ZSelectComponent, selector: "z-select", inputs: ["class", "zClassSelect", "zMode", "zSize", "zLabel", "zLabelClass", "zPlaceholder", "zRequired", "zDisabled", "zReadonly", "zLoading", "zLoadingOutline", "zPrefix", "zAllowClear", "zShowCheck", "zWrap", "zShowSearch", "zPlaceholderSearch", "zDebounce", "zNotFoundText", "zEmptyText", "zEmptyIcon", "zMaxTagCount", "zDropdownMaxHeight", "zOptionHeight", "zVirtualScroll", "zDynamicSize", "zShowAction", "zOptions", "zConfig", "zTranslateLabels", "zKey", "zSearchServer", "zLoadingMore", "zEnableLoadMore", "zScrollDistance", "zMaxVisible", "zScrollClose", "zSticky", "zPosition", "zSelectedTemplate", "zOptionTemplate", "zActionTemplate", "zAsyncValidators", "zAsyncDebounce", "zAsyncValidateOn", "zValidators"], outputs: ["zOnSearch", "zOnLoadMore", "zOnBlur", "zOnFocus", "zControl", "zEvent"], exportAs: ["zSelect"] }, { kind: "directive", type: ZTooltipDirective, selector: "[z-tooltip], [zTooltip]", inputs: ["zContent", "zPosition", "zTooltipPosition", "zTrigger", "zTooltipTrigger", "zTooltipType", "zTooltipSize", "zClass", "zTooltipClass", "zShowDelay", "zTooltipShowDelay", "zHideDelay", "zTooltipHideDelay", "zArrow", "zTooltipArrow", "zDisabled", "zTooltipDisabled", "zOffset", "zTooltipOffset", "zAutoDetect", "zTriggerElement", "zAlwaysShow", "zMaxWidth"], outputs: ["zShow", "zHide"], exportAs: ["zTooltip"] }, { kind: "directive", type: ZPopoverDirective, selector: "[z-popover]", inputs: ["zPopoverContent", "zPosition", "zTrigger", "zPopoverTrigger", "zClass", "zShowDelay", "zHideDelay", "zDisabled", "zOffset", "zPopoverWidth", "zTriggerRef", "zManualClose", "zOutsideClickClose", "zScrollClose", "zSticky", "zShowArrow", "zKeyboardSafe"], outputs: ["zShow", "zHide", "zHideStart", "zControl", "zPositionChange", "zOutsideClick"], exportAs: ["zPopover"] }, { kind: "component", type: ZButtonComponent, selector: "z-button, button[z-button], a[z-button]", inputs: ["class", "zType", "zSize", "zShape", "zLabel", "zLoading", "zDisabled", "zTypeIcon", "zAnimatedTypeIcon", "zAnimateIcon", "zAnimationTriggerIcon", "zSizeIcon", "zStrokeWidthIcon", "zWave"], exportAs: ["zButton"] }, { kind: "pipe", type: DecimalPipe, name: "number" }, { kind: "pipe", type: ZDayClassesPipe, name: "zDayClasses" }, { kind: "pipe", type: ZMonthClassesPipe, name: "zMonthClasses" }, { kind: "pipe", type: ZQuarterClassesPipe, name: "zQuarterClasses" }, { kind: "pipe", type: ZYearClassesPipe, name: "zYearClasses" }, { kind: "pipe", type: ZIsPresetDisabledPipe, name: "zIsPresetDisabled" }, { kind: "pipe", type: ZIsEndHourDisabledPipe, name: "zIsEndHourDisabled" }, { kind: "pipe", type: ZIsEndMinuteDisabledPipe, name: "zIsEndMinuteDisabled" }, { kind: "pipe", type: ZIsEndSecondDisabledPipe, name: "zIsEndSecondDisabled" }, { kind: "pipe", type: ZIsStartMonthDisabledPipe, name: "zIsStartMonthDisabled" }, { kind: "pipe", type: ZIsEndMonthDisabledPipe, name: "zIsEndMonthDisabled" }, { kind: "pipe", type: ZIsStartYearDisabledPipe, name: "zIsStartYearDisabled" }, { kind: "pipe", type: ZIsEndYearDisabledPipe, name: "zIsEndYearDisabled" }, { kind: "pipe", type: TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
3648
3765
  }
3649
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: ZCalendarComponent, decorators: [{
3766
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.2", ngImport: i0, type: ZCalendarComponent, decorators: [{
3650
3767
  type: Component,
3651
3768
  args: [{ selector: 'z-calendar', imports: [
3652
3769
  DecimalPipe,